public function init(Website $website, Request $request) { $linkRepo = new LinkRepository($website->getDatabase()); $menuRepo = new MenuRepository($website->getDatabase()); $this->allLinks = $linkRepo->getAllLinksByMenu(); $this->allMenus = $menuRepo->getAllMenus(); $this->requestToken = RequestToken::generateNew(); $this->requestToken->saveToSession(); }
public function init(Website $website, Request $request) { $menuId = (int) $website->getConfig()->get(Config::OPTION_MAIN_MENU_ID); $menuRepo = new MenuRepository($website->getDatabase()); $this->menus = $menuRepo->getAllMenus(); $this->menu = isset($this->menus[$menuId]) ? $this->menus[$menuId] : null; if (Validate::requestToken($request)) { $this->handleRequest($website, $request); } $this->requestToken = RequestToken::generateNew(); $this->requestToken->saveToSession(); }
public function init(Website $website, Request $request) { // Retrieve menus $menuRepo = new MenuRepository($website->getDatabase()); $this->allMenus = $menuRepo->getAllMenus(); // Retrieve the menu to be deleted $menuId = $request->getParamInt(0, 0); if (!isset($this->allMenus[$menuId])) { // Asking to delete non-existing menu throw new NotFoundException(); } $this->menu = $this->allMenus[$menuId]; // Retrieve links $linkRepo = new LinkRepository($website->getDatabase()); $this->linkCount = $linkRepo->getLinkCountByMenu($this->menu->getId()); $this->respondToRequest($linkRepo, $menuRepo, $website->getText(), $request); // Request token $this->requestToken = RequestToken::generateNew(); $this->requestToken->saveToSession(); }
public function getEditor(Website $website, $id, $data) { $title = isset($data["title"]) ? htmlSpecialChars($data["title"]) : ""; $menu_id = isset($data["menu_id"]) ? (int) $data["menu_id"] : 0; $returnValue = ""; $title_max_length = self::TITLE_MAX_LENGTH; // Herodoc doesn't support constants // Build menu options $oMenu = new MenuRepository($website->getDatabase()); $menus = $oMenu->getAllMenus(); $menu_options = ""; if (count($menus) > 0) { $menu_options .= "<select name=\"menu_id_{$id}\" id=\"menu_id_{$id}\">\n"; foreach ($menus as $menu) { $menu_options .= '<option value="' . $menu->getId() . '"'; if ($menu->getId() == $menu_id) { $menu_options .= ' selected="selected"'; } $menu_options .= '>' . htmlSpecialChars($menu->getName()) . "</option>\n"; } $menu_options .= "</select>\n"; } else { $menu_options .= "<p><em>" . $website->t("errors.nothing_found") . "</em> "; $menu_options .= '<a class="arrow" href="' . $website->getUrlPage("links") . '">' . $website->t("links.menu.add") . "</a></p>\n"; } unset($menus, $oMenu, $available_menu_id, $menu_name); // Return form $returnValue .= <<<EOT <p> <label for="title_{$id}">{$website->t("widgets.title")}:</label><br /> <input type="text" name="title_{$id}" id="title_{$id}" value="{$title}" maxlength="{$title_max_length}" /> </p> <p> <label for="menu_id_{$id}">{$website->t("links.menu")}:</label><span class="required">*</span><br /> {$menu_options} </p> EOT; return $returnValue; }