* -------------------------------------------------------------------- *
* Kurzbeschreibung : Mehr Menueeintraege zum Admin-Bereich einfuegen *
* -------------------------------------------------------------------- *
- * *
+ * $Revision:: $ *
+ * $Date:: $ *
+ * $Tag:: 0.2.1-FINAL $ *
+ * $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 (((empty($_POST['title'])) || (empty($_POST['menu'])) || (empty($_POST['descr']))) && (isset($_POST['ok']))) {
- unset($_POST['ok']);
-}
+if (((!isPostRequestElementSet('title')) || (!isPostRequestElementSet(('menu'))) || (!isPostRequestElementSet(('descr')))) && (isFormSent())) {
+ unsetPostRequestElement('ok');
+} // END - if
-if (!isset($_POST['ok']))
-{
+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."_admin_menu` WHERE (what='' OR what IS NULL) ORDER BY sort", __FILE__, __LINE__);
- if (SQL_NUMROWS($result) > 0)
- {
+ $result = SQL_QUERY("SELECT action, title, sort FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE (`what`='' OR `what` IS NULL) ORDER BY `sort`", __FILE__, __LINE__);
+ if (SQL_NUMROWS($result) > 0) {
// Read menu structure
- while (list($act, $title, $sort) = SQL_FETCHROW($result))
- {
+ // @TODO Cant this be rewritten?
+ while ($content = SQL_FETCHARRAY($result)) {
// Menu actions
- $menus[] = $act;
+ $menus[] = $content['action'];
// Menu titles
- $titles[] = $title;
+ $titles[] = $content['title'];
// Below this menu point should the new be added so we simply increase the sort value by 1 :-)
- $below[] = $sort + 1;
- }
+ $below[] = $content['sort'] + 1;
+ } // END - while
// Free memory
SQL_FREERESULT($result);
// Remove double eintries
- $prev = ""; $dmy = $menus; $dmy2 = $titles; $dmy3 = $below;
- foreach ($menus as $key => $value)
- {
- if ($value == $prev)
- {
+ // @TODO This can be somehow rewritten to a function
+ $prev = ''; $dmy = $menus; $dmy2 = $titles; $dmy3 = $below;
+ foreach ($menus as $key => $value) {
+ if ($value == $prev) {
unset($dmy[$key]);
unset($dmy2[$key]);
unset($dmy3[$key]);
- }
- else
- {
+ } else {
$prev = $value;
}
- }
- $menus = $dmy; $titles = $dmy2; $below = $dmy3;
+ } // END - foreach
+
+ // Write dummys back to our array
+ $menus = $dmy; unset($dmy);
+ $titles = $dmy2; unset($dmy2);
+ $below = $dmy3; unset($dmy3);
+
// Load sub menus :)
- foreach ($menus as $key_main => $value_main)
- {
- $result = SQL_QUERY_ESC("SELECT what, title, sort FROM `"._MYSQL_PREFIX."_admin_menu` WHERE action='%s' AND what != '' AND what IS NOT NULL ORDER BY sort",
- array($value_main), __FILE__, __LINE__);
- if (SQL_NUMROWS($result) > 0)
- {
+ foreach ($menus as $key_main => $value_main) {
+ $result = SQL_QUERY_ESC("SELECT what, title, sort FROM `{?_MYSQL_PREFIX?}_admin_menu` WHERE `action`='%s' AND `what` != '' AND `what` IS NOT NULL ORDER BY `sort`",
+ array($value_main), __FILE__, __LINE__);
+ if (SQL_NUMROWS($result) > 0) {
+ // Init arrays
$menus[$value_main] = array();
$titles[$value_main] = array();
$below[$value_main] = array();
+
// Read menu structure
- while (list($act, $title, $sort) = SQL_FETCHROW($result))
- {
+ while ($content = SQL_FETCHARRAY($result)) {
// Menu actions
- $menus[$value_main][] = $act;
+ $menus[$value_main][] = $content['what'];
// Menu titles
- $titles[$value_main][] = $title;
+ $titles[$value_main][] = $content['title'];
// Below this menu point should the new be added so we simply increase the sort value by 1 :-)
- $below[$value_main][] = $sort + 1;
- }
+ $below[$value_main][] = $content['sort'] + 1;
+ } // END - while
// Free memory
SQL_FREERESULT($result);
// Remove double eintries
- $prev = ""; $dmy = $menus[$value_main]; $dmy2 = $titles[$value_main]; $dmy3 = $below[$value_main];
- foreach ($menus[$value_main] as $key => $value)
- {
- if ($value == $prev)
- {
+ // @TODO This can be somehow rewritten to a function
+ $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]);
unset($dmy2[$key]);
unset($dmy3[$key]);
- }
- else
- {
+ } else {
$prev = $value;
}
}
- $menus[$value_main] = $dmy; $titles[$value_main] = $dmy2; $below[$value_main] = $dmy3;
+ $menus[$value_main] = $dmy;
+ $titles[$value_main] = $dmy2;
+ $below[$value_main] = $dmy3;
}
}
}
- $OUT = " <SELECT class=\"admin_select\" name=\"sort\" size=\"1\">
- <OPTION value=\"0\">".IS_FIRST_MENU."</OPTION>\n";
- 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].")";
+ $OUT = " <select class=\"admin_select\" name=\"sort\" size=\"1\">
+ <option value=\"0\">".IS_FIRST_MENU."</option>\n";
+ 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] . ')';
}
}
- $OUT .= "</OPTION>\n";
+ $OUT .= "</option>\n";
}
}
- else
+ else
{
- $OUT .= " <OPTION value=\"".$m."\">".$titles[$key]."</OPTION>\n";
+ $OUT .= " <option value=\"".$m."\">".$titles[$key]."</option>\n";
}
}
- $OUT .= "</SELECT>";
+ $OUT .= "</select>";
- define('__BELOW_SELECTION' , $OUT);
- define('__WHAT_SELECTION' , ADMIN_MAKE_MENU_SELECTION("admin", "what", "name"));
- define('__ACTION_SELECTION', ADMIN_MAKE_MENU_SELECTION("admin", "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_admin_add");
-}
- elseif (!IS_DEMO())
-{
+ loadTemplate('admin_admin_add', false, $content);
+} elseif (!isDemoModeActive()) {
// Insert new menu entry
- if (!empty($_POST['menu']))
- {
+ if (isPostRequestElementSet(('menu'))) {
// Add sub menu
- SQL_QUERY_ESC("INSERT INTO `"._MYSQL_PREFIX."_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('%s','%s','%s','%s','%s')",
+ SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_admin_menu` (`action`,`what`,`title`,`descr`,`sort`) VALUES ('%s','%s','%s','%s','%s')",
array(
- $_POST['menu'],
- $_POST['name'],
- $_POST['title'],
- $_POST['descr'],
- bigintval($_POST['sort']),
+ postRequestElement('menu'),
+ postRequestElement('name'),
+ postRequestElement('title'),
+ postRequestElement('descr'),
+ bigintval(postRequestElement('sort')),
), __FILE__, __LINE__
);
- CACHE_PURGE_ADMIN_MENU(0, $_POST['menu'], $_POST['name']);
- }
- else
- {
+ } else {
// Add main menu
- SQL_QUERY_ESC("INSERT INTO `"._MYSQL_PREFIX."_admin_menu` (action, title, descr, sort) VALUES ('%s','%s','%s','%s')",
+ SQL_QUERY_ESC("INSERT INTO `{?_MYSQL_PREFIX?}_admin_menu` (action, title, descr, sort) VALUES ('%s','%s','%s','%s')",
array(
- $_POST['name'],
- $_POST['title'],
- $_POST['descr'],
- bigintval($_POST['sort']),
+ postRequestElement('name'),
+ postRequestElement('title'),
+ postRequestElement('descr'),
+ bigintval(postRequestElement('sort')),
), __FILE__, __LINE__
);
- CACHE_PURGE_ADMIN_MENU(0, $_POST['name']);
}
- LOAD_TEMPLATE("admin_settings_saved", false, SAVING_DONE);
-}
- else
-{
+ loadTemplate('admin_settings_saved', false, getMessage('SETTINGS_SAVED'));
+} else {
// Is demo login!
- LOAD_TEMPLATE("admin_settings_saved", false, SETTINGS_NOT_SAVED);
+ loadTemplate('admin_settings_saved', false, getMessage('SETTINGS_NOT_SAVED'));
}
-//
+// [EOF]
?>