debug = FALSE; $this->dragDrop = $dragdrop; if($this->dragDrop) { $this->debug = TRUE; } if ($NEWSHEADER) { $HEADER .= $NEWSHEADER; } if(isset($_POST['custom_select'])) { $this->curLayout = $_POST['custom_select']; } elseif(isset($_GET['lay'])) { $this->curLayout = $_GET['lay']; } else { $this->curLayout = vartrue($_GET['configure'], $pref['sitetheme_deflayout']); } $this->curLayout = $tp->filter($this->curLayout); $this->dbLayout = ($this->curLayout != $pref['sitetheme_deflayout']) ? $this->curLayout : ""; //menu_layout is left blank when it's default. if(isset($_POST['menu_id']) || vartrue($_GET['id'])) { $this->menuId = (isset($_POST['menu_id'])) ? intval($_POST['menu_id']) : intval($_GET['id']); } if (/*$menu_act == "sv" || */isset($_POST['class_submit'])) { $this->menuSaveVisibility(); } elseif(isset($_POST['parms_submit'])) { $this->menuSaveParameters(); } if (vartrue($_GET['mode']) == "deac") { $this->menuDeactivate(); } if ($_GET['mode'] == "conf") { $this->menuGoConfig(); } $this->menuGrabLayout(); $menu_array = $this->parseheader($HEADER.$FOOTER, 'check'); if($menu_array) { sort($menu_array, SORT_NUMERIC); $menu_check = 'set'; foreach ($menu_array as $menu_value) { if ($menu_value != $menu_check) { $this->menu_areas[] = $menu_value; } $menu_check = $menu_value; } } $this->menuModify(); if(!empty($_POST['menuActivate'])) { $menuActivate = $tp->filter($_POST['menuActivate']); $this->menuActivateLoc = key($menuActivate); $this->menuActivateIds = $tp->filter($_POST['menuselect']); $this->menuActivate(); } $this->loadMenuData(); if(vartrue($_POST['menuSetCustomPages'])) { $custompages = $tp->filter($_POST['custompages']); $this->menuSetCustomPages($custompages); } if(isset($_POST['menuUsePreset']) && $_POST['curLayout']) { $this->menuSetPreset(); } $this->menuSetConfigList(); // Update Active MenuConfig List. } /** * Load the Menu Table data for the current layout. */ private function loadMenuData() { $menu_qry = 'SELECT * FROM #menus WHERE menu_location > 0 AND menu_layout = "'.$this->dbLayout.'" ORDER BY menu_location,menu_order'; $sql = e107::getDb(); $eMenuArea = array(); if($rows = $sql->retrieve($menu_qry, true)) { $lastLoc = -1; $c = 0; foreach($rows as $row) { $loc = intval($row['menu_location']); if($lastLoc != $loc) { $c = 1; } if($c !== intval($row['menu_order'])) // fix the order if it is off.. { if($sql->update('menus', "menu_order= ".$c." WHERE menu_id = ".$row['menu_id']." LIMIT 1")) { $row['menu_order'] = $c; } } $eMenuArea[$loc][] = $row; $lastLoc = $loc; $c++; } } $this->menuData = $eMenuArea; } // ------------------------------------------------------------------------- function menuRenderIframe($url='') { $ns = e107::getRender(); $sql = e107::getDb(); if(!$url) { $url = e_SELF."?configure=".$this->curLayout; } // $cnt = $sql->select("menus", "*", "menu_location > 0 AND menu_layout = '$curLayout' ORDER BY menu_name "); // calculate height to remove vertical scroll-bar. // $text = ""; $text = ""; return $text; } function menuRenderMessage() { // return $this->menuMessage; // $text .= "ID = ".$this->menuId; return e107::getMessage()->render('menuUi'); } function menuAddMessage($message, $type = E_MESSAGE_INFO, $session = false) { e107::getMessage()->add(array($message, 'menuUi'), $type, $session); } // ------------------------------------------------------------------------- function menuGrabLayout() { global $HEADER,$FOOTER,$CUSTOMHEADER,$CUSTOMFOOTER,$LAYOUT; // new v2.3 if($tmp = e_theme::loadLayout($this->curLayout)) { $LAYOUT = $tmp; } if(isset($LAYOUT) && is_array($LAYOUT)) // $LAYOUT is a combined $HEADER,$FOOTER. { $HEADER = array(); $FOOTER = array(); foreach($LAYOUT as $key=>$template) { $tmp = explode("{---}",$template); $hd = varset($tmp[0]); $ft = varset($tmp[1]); $HEADER[$key] = isset($LAYOUT['_header_']) ? $LAYOUT['_header_'] . $hd : $hd; $FOOTER[$key] = isset($LAYOUT['_footer_']) ? $ft . $LAYOUT['_footer_'] : $ft ; } unset($hd,$ft); } if(($this->curLayout == 'legacyCustom' || $this->curLayout=='legacyDefault') && (isset($CUSTOMHEADER) || isset($CUSTOMFOOTER)) ) // 0.6 themes. { if($this->curLayout == 'legacyCustom') { $HEADER = ($CUSTOMHEADER) ? $CUSTOMHEADER : $HEADER; $FOOTER = ($CUSTOMFOOTER) ? $CUSTOMFOOTER : $FOOTER; } } elseif($this->curLayout && $this->curLayout !== "legacyCustom" && (isset($CUSTOMHEADER[$this->curLayout]) || (is_array($CUSTOMFOOTER) && isset($CUSTOMFOOTER[$this->curLayout])))) // 0.7 themes { // echo " MODE 0.7 ".$this->curLayout; $HEADER = isset($CUSTOMHEADER[$this->curLayout]) ? $CUSTOMHEADER[$this->curLayout] : $HEADER; $FOOTER = is_array($CUSTOMFOOTER) && isset($CUSTOMFOOTER[$this->curLayout]) ? $CUSTOMFOOTER[$this->curLayout] : $FOOTER; } elseif($this->curLayout && is_array($HEADER) && isset($HEADER[$this->curLayout]) && isset($FOOTER[$this->curLayout])) // 0.8 themes - we use only $HEADER and $FOOTER arrays. { // echo " MODE 0.8 ".$this->curLayout; $HEADER = $HEADER[$this->curLayout]; $FOOTER = $FOOTER[$this->curLayout]; } elseif($this->curLayout && ($this->curLayout !== 'legacyDefault') && (deftrue('e_MENUMANAGER_ACTIVE'))) { if(!empty($HEADER) && is_string($HEADER) && 'legacyDefault') { $msg = '$HEADER is a string. It should be an array with a key: '.$this->curLayout.''; // NO LAN } if(is_array($HEADER) && !isset($HEADER[$this->curLayout])) { $msg = '$HEADER is missing a key for this layout. ('.$this->curLayout.')'; } if(!empty($msg)) { echo '
".MENLAN_36."... | ...".MENLAN_37." | ||||
";
if(!$this->dragDrop)
{
$text .= " ";
$text .= " ";
$text .= "
| "; foreach ($this->menu_areas as $menu_act) { $text .= " \n"; } if($layout) { if(isset($pref['sitetheme_layouts'][$layout]['menuPresets'])) { $text .= "toAttribute($tp->toJSON(MENLAN_41)).")\" /> \n"; // Use Menu Presets $text .= ""; } $text .= ""; } $text .= ""; $text .= " | ";
$text .= "
".MENLAN_52."