コード例 #1
0
ファイル: menuentry.php プロジェクト: srueegger/1zu12bB
 /**
  *
  * @param Actionlist $actions
  * @return string
  */
 public function getEditableCode(Actionlist $actions)
 {
     $template = new Template();
     $template->load("menuentry_editable");
     $template->assign_var("ID", $this->id);
     $template->assign_var("TITLE", $this->title);
     if ($this->type == 0) {
         $template->assign_var("SELECTEDINTERNAL", " selected=\"1\"");
         $selector = new PageSelector();
         $selector->name = $this->id . '_href';
         $selector->value = $this->href;
         $template->assign_var("VALUECONTROL", $selector->getCode());
         $template->assign_var("SELECTEDEXTERNAL", "");
         $template->assign_var("SELECTEDSUBMENU", "");
     } else {
         if ($this->type == 1) {
             $template->assign_var("SELECTEDEXTERNAL", " selected=\"1\"");
             $template->assign_var("SELECTEDINTERNAL", "");
             $template->assign_var("SELECTEDSUBMENU", "");
             $template->assign_var("VALUECONTROL", "<input name=\"" . $this->id . "_href\" value=\"" . $this->href . "\" />");
         } else {
             if ($this->type == 2) {
                 $template->assign_var("SELECTEDSUBMENU", " selected=\"1\"");
                 $template->assign_var("SELECTEDINTERNAL", "");
                 $template->assign_var("SELECTEDEXTERNAL", "");
                 $selector = new MenueSelector();
                 $selector->name = $this->id . '_href';
                 $selector->value = $this->href;
                 $template->assign_var("VALUECONTROL", $selector->getCode());
             }
         }
     }
     $params = array();
     $params['menu'] = $this->menu;
     $params['ID'] = $this->id;
     $template->assign_var("ACTIONS", $actions->getCode($params));
     return $template->getCode();
 }
コード例 #2
0
ファイル: menueditor.php プロジェクト: srueegger/1zu12bB
 public function display()
 {
     SessionCache::clear();
     $template = new Template();
     $template->load("menu_edit");
     if (isset($_POST['add'])) {
         if (trim($_POST['newtitle']) != "") {
             if (trim($_POST['newurl']) != "") {
                 $entry = new MenuEntry();
                 $entry->menu = $_GET['menu'];
                 $entry->title = $_POST['newtitle'];
                 $entry->type = $_POST['type'];
                 if ($entry->type == 0) {
                     $entry->href = $_POST['newPage'];
                 } else {
                     if ($entry->type == 1) {
                         $entry->href = $_POST['newurl'];
                     } else {
                         $entry->href = $_POST['newMenu'];
                     }
                 }
                 $res = $entry->save();
                 if ($res) {
                     $template->assign_var("MESSAGE", Language::DirectTranslate("ENTRY_ADDED"));
                 } else {
                     $template->assign_var("MESSAGE", Language::DirectTranslate("ENTRY_NOT_ADDED"));
                 }
                 Cache::clear("menu");
             } else {
                 $template->assign_var("MESSAGE", Language::DirectTranslate("ENTER_LINK_TARGET"));
             }
         } else {
             $template->assign_var("MESSAGE", Language::DirectTranslate("ENTER_LINK_TITLE"));
         }
     } else {
         if (isset($_POST['save'])) {
             foreach ($_POST as $param => $value) {
                 if (strlen($param) >= 6) {
                     if (substr($param, -5, 5) == "_href") {
                         $entries[substr($param, 0, -5)]['href'] = $value;
                     } else {
                         if (strlen($param) >= 7 && substr($param, -6, 6) == "_title") {
                             $entries[substr($param, 0, -6)]['title'] = $value;
                         } else {
                             if (substr($param, -5, 5) == "_type") {
                                 $entries[substr($param, 0, -5)]['type'] = $value;
                             }
                         }
                     }
                 }
             }
             foreach ($entries as $id => $params) {
                 $entry = new MenuEntry();
                 $entry->id = $id;
                 $entry->menu = $_GET['menu'];
                 $entry->title = $params['title'];
                 $entry->href = $params['href'];
                 $entry->type = $params['type'];
                 $entry->save();
             }
         } else {
             if (isset($_GET['delete'])) {
                 Menu::deleteEntry(DataBase::Current()->EscapeString($_GET['menu']), DataBase::Current()->EscapeString($_GET['delete']));
             } else {
                 if (isset($_GET['moveup'])) {
                     Menu::changePositions($_GET['menu'], $_GET['moveup'], $_GET['moveup'] - 1);
                 } else {
                     if (isset($_GET['movedown'])) {
                         Menu::changePositions($_GET['menu'], $_GET['movedown'], $_GET['movedown'] + 1);
                     }
                 }
             }
         }
     }
     if (isset($_GET['menu'])) {
         $template->assign_var("URL", $this->page->getUrl("menu=" . urlencode($_GET['menu'])));
         $template->assign_var("EDITABLEMENU", Menu::getEditableCode(DataBase::Current()->EscapeString($_GET['menu'])));
     } else {
         $template->assign_var("URL", "");
         $template->assign_var("EDITABLEMENU", "");
     }
     $selector = new MenueSelector();
     $selector->name = 'newMenu';
     $selector->value = -1;
     $selector->style = 'width:200px;position:relative;left:-210px;visibility:hidden';
     $template->assign_var("MENUSELECTOR", $selector->getCode());
     $selector = new PageSelector();
     $selector->name = 'newPage';
     $selector->value = -1;
     $selector->style = 'width:200px;position:relative;left:-415px;';
     $template->assign_var("PAGESELECTOR", $selector->getCode());
     $template->assign_var("MESSAGE", "");
     $template->output();
 }