Exemple #1
0
 public function init(Website $website, Request $request)
 {
     $menuId = $request->getParamInt(0, 0);
     $menuRepo = new MenuRepository($website->getDatabase());
     $linkRepo = new LinkRepository($website->getDatabase());
     $this->menu = $menuRepo->getMenu($menuId);
     $this->links = $linkRepo->getLinksByMenu($menuId);
 }
Exemple #2
0
 private function trySaveMenu(MenuRepository $menuRepo, Text $text)
 {
     if (!Validate::stringLength($this->menu->getName(), 1, MenuRepository::NAME_MAX_LENGTH)) {
         $text->addError($text->t("links.menu") . " " . Validate::getLastError($text));
         return;
     }
     $menuRepo->saveMenu($this->menu);
     $text->addMessage($text->t("links.menu") . " " . $text->t("editor.is_changed"), Link::of($text->getUrlPage("edit_menu", $this->menu->getId()), $text->t("links.menu.go_back")));
 }
Exemple #3
0
 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();
 }
Exemple #4
0
 private function handleSubmitedForm(Website $website, Request $request)
 {
     $text = $website->getText();
     if (Validate::stringLength($this->menuName, 1, MenuRepository::NAME_MAX_LENGTH)) {
         $menuRepo = new MenuRepository($website->getDatabase());
         $this->menu = Menu::createNew($this->menuName);
         $menuRepo->saveMenu($this->menu);
         $text->addMessage($text->t("links.menu.created"));
     } else {
         $text->addError($text->t("links.menu.name") . ' ' . Validate::getLastError($text));
     }
 }
Exemple #5
0
 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();
 }
Exemple #6
0
 public function init(Website $website, Request $request)
 {
     $menuId = $request->getParamInt(0, 0);
     $menuRepo = new MenuRepository($website->getDatabase());
     $this->menu = $menuRepo->getMenu($menuId);
     $this->linkName = $request->getRequestString("link_text", "");
     $this->linkUrl = $request->getRequestString("link_url", "");
     if (Validate::requestToken($request)) {
         $this->saveLink($website);
     }
     $this->requestToken = RequestToken::generateNew();
     $this->requestToken->saveToSession();
 }
Exemple #7
0
 private function respondToRequest(LinkRepository $linkRepo, MenuRepository $menuRepo, Text $text, Request $request)
 {
     if (!Validate::requestToken($request)) {
         return;
     }
     $moveLinksToMenuId = $request->getRequestInt("move_option", 0);
     if ($moveLinksToMenuId === 0) {
         $linkRepo->deleteLinksInMenu($this->menu);
     } else {
         $linkRepo->moveLinks($this->menu, $this->allMenus[$moveLinksToMenuId]);
     }
     $menuRepo->deleteMenu($this->menu->getId());
     $text->addMessage($text->t("links.menu") . " " . $text->t("editor.is_deleted"), Link::of($text->getUrlPage("links"), $text->t("links.overview")));
     $this->deleted = true;
 }
Exemple #8
0
 public function parseData(Website $website, $id)
 {
     $data = [];
     $data["title"] = isset($_REQUEST["title_" . $id]) ? trim($_REQUEST["title_" . $id]) : "";
     if (strLen($data["title"]) > self::TITLE_MAX_LENGTH) {
         $website->addError($website->t("widgets.title") . " " . $website->tReplaced("errors.too_long_num", self::TITLE_MAX_LENGTH));
         $data["valid"] = false;
     }
     $data["menu_id"] = isset($_REQUEST["menu_id_" . $id]) ? (int) $_REQUEST["menu_id_" . $id] : 0;
     $oMenu = new MenuRepository($website->getDatabase());
     try {
         $oMenu->getMenu($data["menu_id"]);
     } catch (NotFoundException $e) {
         $website->addError($website->t("widgets.menu") . " " . $website->t("errors.not_found"));
         $data["valid"] = false;
     }
     return $data;
 }