public function deleteAjaxAction(\Difra\Param\AnyInt $id, \Difra\Param\AjaxCheckbox $confirm = null) { if (!$confirm or !$confirm->val()) { $cat = \Difra\Plugins\Catalog\Category::get($id->val()); $this->ajax->display('<span>' . $this->locale->getXPath('catalog/adm/category-delete-confirm-1') . htmlspecialchars($cat->getName()) . $this->locale->getXPath('catalog/adm/category-delete-confirm-2') . '</span>' . '<form action="/adm/catalog/categories/delete/' . $id . '" method="post" class="ajaxer">' . '<input type="hidden" name="confirm" value="1"/>' . '<input type="submit" value="Да"/>' . '<a href="#" onclick="ajaxer.close(this)" class="button">Нет</a>' . '</form>'); } else { \Difra\Plugins\Catalog::getInstance()->deleteCategory($id->val()); $this->ajax->refresh(); } }
public function indexAction() { $catId = 0; $nextCat = null; $linkParts = self::$parameters; $title = []; while (!empty(self::$parameters)) { $next = rawurldecode(self::$parameters[0]); if ($nextCat = \Difra\Plugins\Catalog\Category::getByLink($next, $catId)) { array_shift(self::$parameters); $catId = $nextCat->getId(); $title[] = $nextCat->getName(); continue; } break; } \Difra\Plugins\Catalog::getInstance()->setSelectedCategory($catId); // get page if (sizeof(self::$parameters) >= 2 and self::$parameters[sizeof(self::$parameters) - 2] == 'page' and is_numeric(self::$parameters[sizeof(self::$parameters) - 1])) { $page = array_pop(self::$parameters); array_pop(self::$parameters); array_pop($linkParts); array_pop($linkParts); } else { $page = 1; } $action = 'view'; switch (sizeof(self::$parameters)) { case 0: \Difra\Plugins\Catalog\View::getInstance()->viewCategory($this, $catId, $page, $linkParts, $title); break; /** @noinspection PhpMissingBreakStatementInspection */ /** @noinspection PhpMissingBreakStatementInspection */ case 2: $action = array_pop(self::$parameters); // no break // no break case 1: \Difra\Plugins\Catalog\View::getInstance()->viewItem($this, self::$parameters[0], $action, $title); self::$parameters = []; break; } }
/** * Возвращает полный URI к элементу * @return string */ public function getFullLink() { return Category::get($this->category)->getFullLink() . '/' . $this->id . '-' . $this->link; }
/** * Переместить категорию «ниже» * @param int $id */ public function moveCategoryDown($id) { \Difra\Plugins\Catalog\Category::get($id)->moveDown(); }