Fixes for menu system (still SQL is broken)
[mailer.git] / inc / modules / admin / what-guest_add.php
index 7824b6b7693c5f5534ddcc7a97d42dbba10cc85d..8db69b86c711ad8452f8e7aff5d15d2368e86c99 100644 (file)
  * -------------------------------------------------------------------- *
  * Kurzbeschreibung  : Einen neuen Gastmenuepunkt einfuegen             *
  * -------------------------------------------------------------------- *
- * $Revision:: 856                                                    $ *
- * $Date:: 2009-03-06 20:24:32 +0100 (Fr, 06. March 2009)             $ *
+ * $Revision::                                                        $ *
+ * $Date::                                                            $ *
  * $Tag:: 0.2.1-FINAL                                                 $ *
- * $Author:: stelzi                                                   $ *
+ * $Author::                                                          $ *
  * Needs to be in all Files and every File needs "svn propset           *
  * svn:keywords Date Revision" (autoprobset!) at least!!!!!!            *
  * -------------------------------------------------------------------- *
- * Copyright (c) 2003 - 2008 by Roland Haeder                           *
+ * Copyright (c) 2003 - 2009 by Roland Haeder                           *
  * For more information visit: http://www.mxchange.org                  *
  *                                                                      *
  * This program is free software; you can redistribute it and/or modify *
  ************************************************************************/
 
 // Some security stuff...
-if ((!defined('__SECURITY')) || (!IS_ADMIN())) {
-       $INC = substr(dirname(__FILE__), 0, strpos(dirname(__FILE__), "/inc") + 4) . "/security.php";
-       require($INC);
+if ((!defined('__SECURITY')) || (!isAdmin())) {
+       die();
 }
 
 // Add description as navigation point
-ADD_DESCR("admin", __FILE__);
+addMenuDescription('admin', __FILE__);
 
 // Check if the admin has entered title and what-php file name...
-if (((!REQUEST_ISSET_POST(('title'))) || (!REQUEST_ISSET_POST(('menu')))) && (IS_FORM_SENT())) {
+if (((!isPostRequestElementSet('title')) || (!isPostRequestElementSet('menu'))) && (isFormSent())) {
        // Abort adding the menu entry
-       REQUEST_UNSET_POST('ok');
-}
+       unsetPostRequestElement('ok');
+} // END - if
 
-if (!IS_FORM_SENT()) {
+if (!isFormSent()) {
        // Create arrays
        $menus = array(); $titles = array(); $below = array();
 
        // Get all available main menus
-       $result = SQL_QUERY("SELECT action, title, sort FROM `{!_MYSQL_PREFIX!}_guest_menu` WHERE (what='' OR `what` IS NULL) ORDER BY `sort`", __FILE__, __LINE__);
+       $result = SQL_QUERY("SELECT
+       `action`, `title`, `sort`
+FROM
+       `{?_MYSQL_PREFIX?}_guest_menu`
+WHERE
+       (`what`='' OR `what` IS NULL)
+ORDER BY
+       `sort` ASC", __FILE__, __LINE__);
        if (SQL_NUMROWS($result) > 0) {
                // Read menu structure
+               // @TODO Cant this be rewritten?
                while ($content = SQL_FETCHARRAY($result)) {
                        // Menu actions
                        $menus[] = $content['action'];
@@ -68,14 +75,14 @@ if (!IS_FORM_SENT()) {
 
                        // Below this menu point should the new be added so we simply increase the sort value by 1 :-)
                        $below[] = $content['sort'] + 1;
-               }
+               } // END - while
 
                // Free memory
                SQL_FREERESULT($result);
 
                // Remove double eintries
                // @TODO This can be somehow rewritten to a function
-               $prev = ""; $dmy = $menus; $dmy2 = $titles; $dmy3 = $below;
+               $prev = ''; $dmy = $menus; $dmy2 = $titles; $dmy3 = $below;
                foreach ($menus as $key => $value) {
                        if ($value == $prev) {
                                unset($dmy[$key]);
@@ -93,9 +100,16 @@ if (!IS_FORM_SENT()) {
 
                // Load sub menus :)
                foreach ($menus as $key_main => $value_main) {
-                       $result = SQL_QUERY_ESC("SELECT what, title, sort
-FROM `{!_MYSQL_PREFIX!}_guest_menu`
-WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort`",
+                       // Query for sub menus
+                       $result = SQL_QUERY_ESC("SELECT
+       `what`, `title`, `sort`
+FROM
+       `{?_MYSQL_PREFIX?}_guest_menu`
+WHERE
+       `action`='%s' AND
+       `what` != '' AND
+       `what` IS NOT NULL
+ORDER BY `sort` ASC",
                                array($value_main), __FILE__, __LINE__);
                        if (SQL_NUMROWS($result) > 0) {
                                // Initialize arrays
@@ -106,7 +120,7 @@ WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort`",
                                // Read menu structure
                                while ($content = SQL_FETCHARRAY($result)) {
                                        // Menu actions
-                                       $menus[$value_main][] = $content['action'];
+                                       $menus[$value_main][] = $content['what'];
 
                                        // Menu titles
                                        $titles[$value_main][] = $content['title'];
@@ -120,7 +134,7 @@ WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort`",
 
                                // Remove double eintries
                                // @TODO This can be somehow rewritten to a function
-                               $prev = ""; $dmy = $menus[$value_main]; $dmy2 = $titles[$value_main]; $dmy3 = $below[$value_main];
+                               $prev = ''; $dmy = $menus[$value_main]; $dmy2 = $titles[$value_main]; $dmy3 = $below[$value_main];
                                foreach ($menus[$value_main] as $key => $value) {
                                        if ($value == $prev) {
                                                unset($dmy[$key]);
@@ -140,19 +154,14 @@ WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort`",
        }
 
        $OUT = "    <select class=\"admin_select\" name=\"sort\" size=\"1\">
-      <option value=\"0\">".IS_FIRST_MENU."</option>";
-       foreach ($below as $key => $m)
-       {
-               if (is_array($m))
-               {
-                       foreach ($m as $key2 => $m2)
-                       {
+      <option value=\"0\">{--IS_FIRST_MENU--}</option>";
+       foreach ($below as $key => $m) {
+               if (is_array($m)) {
+                       foreach ($m as $key2 => $m2) {
                                $OUT .= "      <option value=\"".$m2."\">".$titles[$key][$key2];
-                               foreach ($menus as $k => $v)
-                               {
-                                       if (($v == $key) && (!is_array($v)))
-                                       {
-                                               $OUT .= " (".$titles[$k].")";
+                               foreach ($menus as $k => $v) {
+                                       if (($v == $key) && (!is_array($v))) {
+                                               $OUT .= " (" . $titles[$k] . ')';
                                        }
                                }
                                $OUT .= "</option>\n";
@@ -163,39 +172,40 @@ WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort`",
        }
        $OUT .= "</select>";
 
-       define('__BELOW_SELECTION' , $OUT);
-       define('__WHAT_SELECTION'  , ADMIN_MAKE_MENU_SELECTION("guest", "what", "name"));
-       define('__ACTION_SELECTION', ADMIN_MAKE_MENU_SELECTION("guest", "action", "menu"));
+       // Prepare selections for template
+       $content['below_selection']  = $OUT;
+       $content['what_selection']   = adminAddMenuSelectionBox('member', 'what'  , 'name');
+       $content['action_selection'] = adminAddMenuSelectionBox('member', 'action', 'menu');
 
        // Display form
-       LOAD_TEMPLATE("admin_guest_add");
-} elseif (!IS_DEMO()) {
+       loadTemplate('admin_guest_add', false, $content);
+} elseif (!isDemoModeActive()) {
        // Insert new menu entry
-       if (REQUEST_ISSET_POST(('menu'))) {
-               SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (`action`,`what`,`title`,`sort`,`visible`,`locked`) VALUES ('%s','%s','%s','%s','%s','%s')",
- array(
-       REQUEST_POST('menu'),
-       REQUEST_POST('name'),
-       REQUEST_POST('title'),
-       bigintval(REQUEST_POST('sort')),
-       REQUEST_POST('visible'),
-       REQUEST_POST('active'),
-), __FILE__, __LINE__);
+       if (isPostRequestElementSet('menu')) {
+               SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_guest_menu` (`action`,`what`,`title`,`sort`,`visible`,`locked`) VALUES ('%s','%s','%s','%s','%s','%s')",
                      array(
+                               postRequestElement('menu'),
+                               postRequestElement('name'),
+                               postRequestElement('title'),
+                               bigintval(postRequestElement('sort')),
+                               postRequestElement('visible'),
+                               postRequestElement('active'),
+                       ), __FILE__, __LINE__);
        } else {
-               SQL_QUERY_ESC("INSERT INTO `{!_MYSQL_PREFIX!}_guest_menu` (action, title, sort, visible, locked) VALUES ('%s','%s','%s','%s','%s')",
- array(
-       REQUEST_POST('name'),
-       REQUEST_POST('title'),
-       bigintval(REQUEST_POST('sort')),
-       REQUEST_POST('visible'),
-       REQUEST_POST('active'),
-), __FILE__, __LINE__);
+               SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_guest_menu` (`action`, `title`, `sort`, `visible`, `locked`) VALUES ('%s','%s','%s','%s','%s')",
                      array(
+                               postRequestElement('name'),
+                               postRequestElement('title'),
+                               bigintval(postRequestElement('sort')),
+                               postRequestElement('visible'),
+                               postRequestElement('active'),
+                       ), __FILE__, __LINE__);
        }
-       LOAD_TEMPLATE("admin_settings_saved", false, getMessage('SETTINGS_SAVED'));
+       loadTemplate('admin_settings_saved', false, getMessage('SETTINGS_SAVED'));
 } else {
        // Demo mode!
-       LOAD_TEMPLATE("admin_settings_saved", false, getMessage('SETTINGS_NOT_SAVED'));
+       loadTemplate('admin_settings_saved', false, getMessage('SETTINGS_NOT_SAVED'));
 }
 
-//
+// [EOF]
 ?>