From 59f2feb30c87dee3cd7c98ef7cf8796c9e9ab3e9 Mon Sep 17 00:00:00 2001 From: berckoff Date: Tue, 10 Jan 2012 16:31:39 +0000 Subject: [PATCH] menumanager_class.php: fixed path for menu config action (it included '.php' and leaded to '.php.php' anding); signup.php: added default empty values for user_class, user_perms, user_prefs, user_realm as they were leading to DB Insert error; --- e107_handlers/menumanager_class.php | 293 ++++++++++++++-------------- signup.php | 10 +- 2 files changed, 151 insertions(+), 152 deletions(-) diff --git a/e107_handlers/menumanager_class.php b/e107_handlers/menumanager_class.php index 79ab61987..0a420fe69 100644 --- a/e107_handlers/menumanager_class.php +++ b/e107_handlers/menumanager_class.php @@ -869,46 +869,46 @@ class e_menuManager { $text .= " "; return $text; - } - + } + //------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------// - function parseheader($LAYOUT, $check = FALSE) - { + function parseheader($LAYOUT, $check = FALSE) + { // $tmp = explode("\n", $LAYOUT); // Split up using the same function as the shortcode handler $tmp = preg_split('#(\{\S[^\x02]*?\S\})#', $LAYOUT, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); - $str = array(); - for($c = 0; $c < count($tmp); $c++) - { - if(preg_match("/[\{|\}]/", $tmp[$c])) - { - if($check) - { - if(strstr($tmp[$c], "{MENU=")) - { - $matches = array(); + $str = array(); + for($c = 0; $c < count($tmp); $c++) + { + if(preg_match("/[\{|\}]/", $tmp[$c])) + { + if($check) + { + if(strstr($tmp[$c], "{MENU=")) + { + $matches = array(); // Match all menu areas, menu number is limited to tinyint(3) - preg_match_all("/\{MENU=([\d]{1,3})(:[\w\d]*)?\}/", $tmp[$c], $matches); - $this->menuSetCode($matches, $str); - } - } - else - { - $this->checklayout($tmp[$c]); - } - } - else - { - if(!$check) - { - echo $tmp[$c]; - } - } - } - if($check) - { - return $str; - } + preg_match_all("/\{MENU=([\d]{1,3})(:[\w\d]*)?\}/", $tmp[$c], $matches); + $this->menuSetCode($matches, $str); + } + } + else + { + $this->checklayout($tmp[$c]); + } + } + else + { + if(!$check) + { + echo $tmp[$c]; + } + } + } + if($check) + { + return $str; + } } function menuSetCode($matches, &$ret) @@ -922,121 +922,121 @@ class e_menuManager { { $ret[] = $match; } - } - - function checklayout($str) + } + + function checklayout($str) { // Displays a basic representation of the theme - global $pref, $ns, $PLUGINS_DIRECTORY, $rs, $sc_style, $tp, $menu_order; - - $menuLayout = ($this->curLayout != $pref['sitetheme_deflayout']) ? $this->curLayout : ""; - - if(strstr($str, "LOGO")) - { - echo $tp->parseTemplate("{LOGO}"); - } - else if(strstr($str, "SITENAME")) - { - echo "
[SiteName]
"; - } - else if(strstr($str, "SITETAG")) - { - echo "
[SiteTag]
"; - } - else if(strstr($str, "SITELINKS")) - { - echo "
[SiteLinks]
"; - } - else if(strstr($str, "LANGUAGELINKS")) - { - echo "
[Language]
"; - } - else if(strstr($str, "CUSTOM")) - { - $cust = preg_replace("/\W*\{CUSTOM=(.*?)(\+.*)?\}\W*/si", "\\1", $str); - echo "
[" . $cust . "]
"; - } + global $pref, $ns, $PLUGINS_DIRECTORY, $rs, $sc_style, $tp, $menu_order; + + $menuLayout = ($this->curLayout != $pref['sitetheme_deflayout']) ? $this->curLayout : ""; + + if(strstr($str, "LOGO")) + { + echo $tp->parseTemplate("{LOGO}"); + } + else if(strstr($str, "SITENAME")) + { + echo "
[SiteName]
"; + } + else if(strstr($str, "SITETAG")) + { + echo "
[SiteTag]
"; + } + else if(strstr($str, "SITELINKS")) + { + echo "
[SiteLinks]
"; + } + else if(strstr($str, "LANGUAGELINKS")) + { + echo "
[Language]
"; + } + else if(strstr($str, "CUSTOM")) + { + $cust = preg_replace("/\W*\{CUSTOM=(.*?)(\+.*)?\}\W*/si", "\\1", $str); + echo "
[" . $cust . "]
"; + } // Display embedded Plugin information. - else if(strstr($str, "PLUGIN")) - { - $plug = preg_replace("/\{PLUGIN=(.*?)\}/si", "\\1", $str); - $plug = trim($plug); - if(file_exists((e_PLUGIN . "{$plug}/{$plug}_config.php"))) - { - $link = e_PLUGIN . "{$plug}/{$plug}_config.php"; - } - - if(file_exists((e_PLUGIN . $plug . "/config.php"))) - { - $link = e_PLUGIN . $plug . "/config.php"; - } - - $plugtext = ($link) ? "(" . MENLAN_34 . ":" . LAN_CONFIGURE . ")" : "(" . MENLAN_34 . ")"; - echo "
"; - $ns->tablerender($plug, $plugtext); - } - else if(strstr($str, "MENU")) - { - $matches = array(); - if(preg_match_all("/\{MENU=([\d]{1,3})(:[\w\d]*)?\}/", $str, $matches)) - { - foreach($matches[1] as $menu) - { - $menu = preg_replace("/\{MENU=(.*?)(:.*?)?\}/si", "\\1", $str); - if(isset($sc_style['MENU']['pre']) && strpos($str, 'ret') !== false) - { - echo $sc_style['MENU']['pre']; - } + else if(strstr($str, "PLUGIN")) + { + $plug = preg_replace("/\{PLUGIN=(.*?)\}/si", "\\1", $str); + $plug = trim($plug); + if(file_exists((e_PLUGIN . "{$plug}/{$plug}_config.php"))) + { + $link = e_PLUGIN . "{$plug}/{$plug}_config.php"; + } + + if(file_exists((e_PLUGIN . $plug . "/config.php"))) + { + $link = e_PLUGIN . $plug . "/config.php"; + } + + $plugtext = ($link) ? "(" . MENLAN_34 . ":" . LAN_CONFIGURE . ")" : "(" . MENLAN_34 . ")"; + echo "
"; + $ns->tablerender($plug, $plugtext); + } + else if(strstr($str, "MENU")) + { + $matches = array(); + if(preg_match_all("/\{MENU=([\d]{1,3})(:[\w\d]*)?\}/", $str, $matches)) + { + foreach($matches[1] as $menu) + { + $menu = preg_replace("/\{MENU=(.*?)(:.*?)?\}/si", "\\1", $str); + if(isset($sc_style['MENU']['pre']) && strpos($str, 'ret') !== false) + { + echo $sc_style['MENU']['pre']; + } echo "
-
" . MENLAN_14 . " " . $menu . "

"; - $text = " "; - $sql9 = new db(); - if($sql9->db_Count("menus", "(*)", " WHERE menu_location='$menu' AND menu_layout = '" . $this->dbLayout . "' ")) - { - unset($text); - echo $rs->form_open("post", e_SELF . "?configure=" . $this->curLayout, "frm_menu_" . intval($menu)); - - $MODE = 1; - - $sql9->db_Select("menus", "*", "menu_location='$menu' AND menu_layout='" . $this->dbLayout . "' ORDER BY menu_order"); - $menu_count = $sql9->db_Rows(); - while($row = $sql9->db_Fetch(MYSQL_ASSOC)) - { +
" . MENLAN_14 . " " . $menu . "

"; + $text = " "; + $sql9 = new db(); + if($sql9->db_Count("menus", "(*)", " WHERE menu_location='$menu' AND menu_layout = '" . $this->dbLayout . "' ")) + { + unset($text); + echo $rs->form_open("post", e_SELF . "?configure=" . $this->curLayout, "frm_menu_" . intval($menu)); + + $MODE = 1; + + $sql9->db_Select("menus", "*", "menu_location='$menu' AND menu_layout='" . $this->dbLayout . "' ORDER BY menu_order"); + $menu_count = $sql9->db_Rows(); + while($row = $sql9->db_Fetch(MYSQL_ASSOC)) + { echo "\n\n\n \n\n
dbLayout . "'> -
"; - - echo $this->menuRenderMenu($row, $menu_count); - - echo "\n
"; - echo "\n\n\n\n\n\n"; - echo "

"; - - } - - echo $rs->form_close(); - } - echo ""; - if(isset($sc_style['MENU']['post']) && strpos($str, 'ret') !== false) - { - echo $sc_style['MENU']['post']; - } - } - } - } - else if(strstr($str, "SETSTYLE")) - { - $tmp = explode("=", $str); - $style = preg_replace("/\{SETSTYLE=(.*?)\}/si", "\\1", $str); - } - else if(strstr($str, "SITEDISCLAIMER")) - { - echo "[Sitedisclaimer]"; - } +
"; + + echo $this->menuRenderMenu($row, $menu_count); + + echo "\n
"; + echo "\n\n\n\n\n\n"; + echo "

"; + + } + + echo $rs->form_close(); + } + echo ""; + if(isset($sc_style['MENU']['post']) && strpos($str, 'ret') !== false) + { + echo $sc_style['MENU']['post']; + } + } + } + } + else if(strstr($str, "SETSTYLE")) + { + $tmp = explode("=", $str); + $style = preg_replace("/\{SETSTYLE=(.*?)\}/si", "\\1", $str); + } + else if(strstr($str, "SITEDISCLAIMER")) + { + echo "[Sitedisclaimer]"; + } } //------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------// @@ -1060,7 +1060,7 @@ class e_menuManager { $conf = ''; if (file_exists(e_PLUGIN.$menu_path.$menu_name.'_menu_config.php')) { - $conf = $menu_path.$menu_name.'_menu_config.php'; + $conf = $menu_path.$menu_name.'_menu_config'; } if($conf == '' && file_exists(e_PLUGIN."{$menu_path}config.php")) @@ -1187,7 +1187,6 @@ class e_menuManager { } - function menuSetConfigList() { global $sql,$pref; @@ -1226,13 +1225,5 @@ class e_menuManager { $pref['menuconfig_list'] = $tmp; save_prefs(); - } - - - -} // end of Class. - - - -?> \ No newline at end of file +} // end of Class. \ No newline at end of file diff --git a/signup.php b/signup.php index 4dd7753ed..6c6f72891 100644 --- a/signup.php +++ b/signup.php @@ -513,7 +513,8 @@ if (isset($_POST['register'])) } // Work out data to be written to user audit trail $signup_data = array('user_name', 'user_loginname', 'user_email', 'user_ip'); - foreach (array() as $f) +// foreach (array() as $f) + foreach ($signup_data as $f) { $signup_data[$f] = $allData['data'][$f]; // Just copy across selected fields } @@ -525,6 +526,13 @@ if (isset($_POST['register'])) } $allData['data']['user_join'] = time(); + + // The user_class, user_perms, user_prefs, user_realm fields don't have default value, + // so we put apropriate ones, otherwise - broken DB Insert + $allData['data']['user_class'] = ''; + $allData['data']['user_perms'] = ''; + $allData['data']['user_prefs'] = ''; + $allData['data']['user_realm'] = ''; // Actually write data to DB validatorClass::addFieldTypes($userMethods->userVettingInfo,$allData);