getLanguage); $error = ""; // voor we iets afdrukken kijken we of deze user deze pagina mag zien if ($page->isAdmin() and (!$user->isAuthenticated())) { // het is een admin-pagina maar de gebruiker is geen admin header( 'Location: '.SYS_BASE_URL ) ; } // some dirty hacks; certain pages don't have any content; put a redirect here if ($page->pageid == 117) //keramiek Header( 'Location:'.SYS_BASE.'?'.PAGE_ID.'=118'); elseif ($page->pageid == 101) //meubels Header( 'Location:'.SYS_BASE.'?'.PAGE_ID.'=103'); elseif ($page->pageid == 9) //kranen Header( 'Location:'.SYS_BASE.'?'.PAGE_ID.'=77'); // hebben we iets via een POST gekregen? if (isset($_POST["submit"])) { // we hebben een submit; nu kijken dewelke $action = $page->getAction(); switch ($action) { case 'login': { $login = safe_db(safe_form($_POST["login"],200),200); $password = safe_db(safe_form($_POST["password"],200),200); if ((strlen($login) > MIN_LOGIN_LENGTH) and (strlen($password) > MIN_PASSWORD_LENGTH)) { if ($user->authenticate($login,$password)) { // we zijn nu aangemeld; ga nu naar de beheerpagina $page->setNewID(PAGE_ID_BEHEER); } else { $error = $translate->get("Ongeldige gebruikersnaam of paswoord"); } } else { $error = $translate->get("Ongeldige gebruikersnaam of paswoord"); } break; } case 'zoeken': { // in feite kunnen we hier niets doen; alles in't content scherm // enkel controleren of er een post is $_SESSION[SYS_SESSION_ZOEKEN] = 1; break; } case 'feedback': { $naam = safe_db(safe_form($page->post["naam"],200),200); //$naam = ""; $email = safe_db(safe_form($page->post["email"],200),200); $message = safe_db(safe_form($page->post["message"],32000),32000); $session = safe_db(safe_form($page->post[SYS_SESSION_CHECK],200),200); if ((strlen($session) > 0) and ($session == $_SESSION[SYS_SESSION_CHECK])) { if ((strlen($naam) > 0) and (check_email_address($email))) { $msg = response_check_captcha("captcha_check",1); if(empty($msg)) { $_SESSION[SYS_SESSION_FEEDBACKOK] = 1; $error = ""; $page->post["naam"] = ""; $page->post["email"] = ""; $page->post["message"] = ""; } else { if (strlen($error) > 0) { $error .= "
"; } $error .= $translate->get("U heeft een verkeerde beveiligingscode ingegeven"); } } else { if (strlen($error) > 0) { $error .= "
"; } $error .= $translate->get("U moet minstens een naam en een geldig e-mailadres invullen"); } } else { $msg = response_check_captcha("captcha_check",1); if(empty($msg)) { if ((strlen($naam) > 0) and (check_email_address($email))) { $_SESSION[SYS_SESSION_FEEDBACKOK] = 1; $error = ""; $page->post["naam"] = ""; $page->post["email"] = ""; $page->post["message"] = ""; } else { if (strlen($error) > 0) { $error .= "
"; } $error .= $translate->get("U moet minstens een naam en een geldig e-mailadres invullen"); } } else { if (strlen($error) > 0) { $error .= "
"; } $error .= $translate->get("U heeft een verkeerde beveiligingscode ingegeven"); } } $_SESSION[SYS_SESSION_ERROR] = $error; break; } case 'logout': { unset($_SESSION[AUTH_AUTHENTICATED]); unset($_SESSION[AUTH_USER]); break; } case ADMIN_ACTION_ARTIKEL: { if ($user->isAuthenticated()) { $subaction = $page->getAction("subaction"); switch ($subaction) { case 'updatesortorder': { // dit geeft een array bestaande uit andere arrays $data = getArtikelSortData($_POST); foreach ($data as $d) { foreach($d as $key=>$value) { $sql = "UPDATE catalogus SET sortorder = $value WHERE id = $key"; $result = mysql_query($sql); } } break; } case 'edit': { $data = getArtikelData($_POST); if ($data["type"] == 1) { // het is een afbeelding; enkel in catalogus $sql = "UPDATE catalogus SET sortorder = ".$data["sortorder"].", ". "image = '".$data["image"]."', ". "imagewidth = ".$data["imagewidth"]. " WHERE id = ".$data["id"]; $result = mysql_query($sql); $error = $translate->get("Afbeeldinggegevens aangepast"); } else { // eerst moeten we het artikel aanpassen $sql = "UPDATE artikel SET label = '".$data["label"]."', sublabel = '".$data["sublabel"]."', artikelnummer = '".$data["artikelnummer"]."' WHERE id = ".$data["artikelid"]; $result = mysql_query($sql); // nu de catalogus aanpassen $sql = "UPDATE catalogus SET sortorder = ".$data["sortorder"].", ". "type = ".$data["type"]. " WHERE id = ".$data["id"]; $result = mysql_query($sql); $error = $translate->get("Artikelgegevens aangepast"); } break; } case 'insert': { $data = getArtikelData($_POST); if ($data["artikeltype"] == "bestaand") { // enkel iets in catalogus invullen $sql = "INSERT INTO catalogus (navigation, sortorder, type, artikel) VALUES ( ".$data["navigation"].", ". $data["sortorder"].", ". $data["type"].", ". $data["artikelid"].")"; $result = mysql_query($sql); $error = $translate->get("Artikel verbonden met menu"); } else { // zowel in catalogus als artikel // bij een afbeelding moeten we toch niets in artikel steken if ($data["type"] == 1) { // afbeelding $sql = "INSERT INTO catalogus (navigation, sortorder, type, image, imagewidth) VALUES ( ".$data["navigation"].", ". $data["sortorder"].", ". $data["type"].", ". "'".$data["image"]."', ". $data["imagewidth"].")"; $result = mysql_query($sql); $error = $translate->get("Afbeelding bijgevoegd"); } else { // we moeten eerst iets invoegen in de artikeltabel $sql = "INSERT INTO artikel (artikelnummer, label, sublabel) VALUES ('".$data["artikelnummer"]."', '".$data["label"]."', '".$data["sublabel"]."')"; $result = mysql_query($sql); // nu deze id opzoeken $sql = "SELECT id FROM artikel WHERE artikelnummer = '".$data["artikelnummer"]."' ". " AND label = '".$data["label"]."' ". " AND sublabel = '".$data["sublabel"]."'"; $result = mysql_query($sql); if (mysql_num_rows($result) > 0) { $res = mysql_fetch_array($result); $id = $res["id"]; // nu iets in de catalogus invoegen $sql = "INSERT INTO catalogus (navigation, sortorder, type, artikel) VALUES ( ".$data["navigation"].", ". $data["sortorder"].", ". $data["type"].", ". $id.")"; $result = mysql_query($sql); $error = $translate->get("Artikel bijgevoegd en verbonden met menu"); } } } break; } } } break; } case ADMIN_ACTION_TRANSLATIONS: { if ($user->isAuthenticated()) { $subaction = $page->getAction("subaction"); switch ($subaction) { case 'edit': { $data = getNavigationData($_POST); $sql = "UPDATE translations SET value_fr = '".$data["value_fr"]."' WHERE id = ".$data["id"]; $result = mysql_query($sql); $error = $translate->get("Vertaling aangepast"); break; } } } break; } case ADMIN_ACTION_NAVIGATION: { if ($user->isAuthenticated()) { $subaction = $page->getAction("subaction"); switch ($subaction) { case 'updatesortorder': { // dit geeft een array bestaande uit andere arrays $data = getNavigationSortData($_POST); foreach ($data as $d) { foreach($d as $key=>$value) { $sql = "UPDATE navigation SET sortorder = $value WHERE id = $key"; $result = mysql_query($sql); } } break; } case 'insert': { $data = getNavigationData($_POST); $sql = "INSERT INTO navigation (title,label,description,keywords,slug,feedback,parent,leftmenu,extra,sortorder,seperator) VALUES ( ". "'".$data["label"]."' , ". "'".$data["label"]."' , ". "'".$data["description"]."' , ". "'".$data["keywords"]."' , ". "'".$data["slug"]."' , ". "'".$data["feedback"]."' , ". "".$data["parent"]." , ". "".$data["leftmenu"]." , ". "'".$data["extra"]."' , ". "".$data["sortorder"]." , ". "".$data["seperator"]." ". ")"; $result = mysql_query($sql); $error = $translate->get("Menu bijgevoegd"); break; } case 'edit': { $data = getNavigationData($_POST); $sql = "UPDATE navigation SET title = '".$data["label"]."', label= '".$data["label"]."', description = '".$data["description"]."', keywords = '".$data["keywords"]."', slug = '".$data["slug"]."', feedback = '".$data["feedback"]."', extra = '".$data["extra"]."', parent = ".$data["parent"]." , leftmenu = ".$data["leftmenu"]." , sortorder = ".$data["sortorder"]." , seperator = ".$data["seperator"]." WHERE id = ".$data["id"]; $result = mysql_query($sql); $error = $translate->get("Menu aangepast"); break; } } } break; } } } $page->printHead(); $page->printContent($error); $page->printFooter(); function getArtikelData($post) { $data = array(); $type = nul_or_value(safe_form($post["type"],20)); $catalogus = nul_or_value(safe_form($post["catalogus"],20)); // zitten we in edit-modus of niet? if ($catalogus > 0) { // het is een bestaand ding dat we aanpassen if ($type == 1) { $data["image"] = safe_form($post["image"],100); $data["imagewidth"] = nul_or_value(safe_form($post["imagewidth"],5)); } else { $data["label"] = safe_form($post["label"],100); $data["sublabel"] = safe_form($post["sublabel"],100); $data["artikelnummer"] = safe_form($post["artikelnummer"],100); } $data["artikelid"] = safe_form($post["artikelid"],20); } else { // is het een bestaande artikel dat we toewijzen? $bestaandartikel = nul_or_value(safe_form($post["bestaandartikel"],20)); if ($bestaandartikel == 0) { // het is een nieuw artikel $data["artikeltype"] = "nieuw"; if ($type == 1) { $data["image"] = safe_form($post["image"],100); $data["imagewidth"] = nul_or_value(safe_form($post["imagewidth"],5)); } else { $data["label"] = safe_form($post["label"],100); $data["sublabel"] = safe_form($post["sublabel"],100); $data["artikelnummer"] = safe_form($post["artikelnummer"],100); } $data["artikelid"] = safe_form($post["artikelid"],20); } else { // bestaand artikel $data["artikeltype"] = "bestaand"; $data["artikelid"] = $bestaandartikel; } } $data["id"] = safe_form($post["id"],20); $data["type"] = $type; $data["sortorder"] = safe_form($post["sortorder"],20); $data["navigation"] = safe_form($post["navigation"],20); return $data; } function getArtikelSortData($post) { $data = array(); foreach ($post as $key=>$value) { if (substr($key,0,strlen("sortorder")) == "sortorder") { // we hebben een key $id = substr($key,strlen("sortorder")); array_push( $data, array( $id => $value)); } } return $data; } function getNavigationSortData($post) { $data = array(); foreach ($post as $key=>$value) { if (substr($key,0,strlen("sortorder")) == "sortorder") { // we hebben een key $id = substr($key,strlen("sortorder")); array_push( $data, array( $id => $value)); } } return $data; } function getNavigationData($post) { $data = array ( "id" => safe_form($post["id"],20), "label" => safe_form($post["label"],200), "description" => safe_form($post["description"],200), "keywords" => safe_form($post["keywords"],200), "feedback" => safe_form($post["feedback"],200), "slug" => safe_form($post["slug"],20), "sortorder" => safe_form($post["sortorder"],5), "parent" => safe_form($post["parent"],20), "leftmenu" => safe_form($post["leftmenu"],20), "seperator" => safe_form($post["seperator"],20), "extra" => $post["extra"], "value_fr" => $post["value_fr"] ); if ($data["leftmenu"] == "on") { $data["leftmenu"] = 1; } else { $data["leftmenu"] = 0; } if ($data["seperator"] == "on") { $data["seperator"] = 1; } else { $data["seperator"] = 0; } return $data; } ?>