public function createComponentStaticPagesGrid($name) { try { // $users = [null=>null] + $this->userService->getSelectUsers(); // $pages = [null=>null] + $this->staticPageService->getSelectStaticPages(); $states = [null => null] + StaticPageStatus::getOptions(); $commModes = [null => null] + CommentMode::getOptions(); } catch (Exceptions\DataErrorException $ex) { $this->handleDataLoad(null, ":System:Default:adminRoot", $ex); } $grid = new Grid($this, $name); $grid->setTranslator($this->getTranslator()); $grid->setModel($this->staticPageService->getPagesDataSource()); $grid->setPrimaryKey('id'); $grid->addColumnNumber('id', '#')->cellPrototype->class[] = 'center'; $headerId = $grid->getColumn('id')->headerPrototype; $headerId->class[] = 'center'; $headerId->rowspan = "2"; $headerId->style['width'] = '0.1%'; $grid->addColumnText('title', $this->tt("systemModule.admin.grid.title"))->setSortable(); $headerTt = $grid->getColumn('title')->headerPrototype; $headerTt->class[] = 'center'; $grid->addColumnText('abbr', $this->tt("systemModule.admin.grid.abbr"))->setSortable()->setFilterText(); $headerAb = $grid->getColumn('abbr')->headerPrototype; $headerAb->class[] = 'center'; // $grid->addColumnText('parent', $this->tt("systemModule.admin.grid.parent")) // ->setSortable() // ->setFilterSelect($pages); // $headerParent = $grid->getColumn('parent')->headerPrototype; // $headerParent->class[] = 'center'; $grid->addColumnText('group', $this->tt("systemModule.admin.grid.group"))->setSortable()->setFilterSelect([null => null] + $this->getSelectSportGroups()); $headerParent = $grid->getColumn('group')->headerPrototype; $headerParent->class[] = 'center'; $grid->addColumnText('commentMode', $this->tt("systemModule.admin.grid.commMode"))->setSortable()->setCustomRender($this->spCommModeRender)->setFilterSelect($commModes); $headerCm = $grid->getColumn('commentMode')->headerPrototype; $headerCm->class[] = 'center'; $grid->addColumnText('status', $this->tt("systemModule.admin.grid.status"))->setSortable()->setCustomRender($this->spStatusRender)->setFilterSelect($states); $headerSt = $grid->getColumn('status')->headerPrototype; $headerSt->class[] = 'center'; $grid->addActionHref('delete', '', 'deleteStaticPage!')->setIcon('trash')->setElementPrototype(\Nette\Utils\Html::el("a")->addAttributes(["title" => $this->tt("systemModule.admin.grid.delete")]))->setConfirm(function ($u) { return $this->tt("systemModule.admin.grid.messages.rlyDelPage", null, ["id" => $u->getId()]); }); $grid->addActionHref('edit', '', 'updateStaticPage')->setIcon('pencil')->setElementPrototype(\Nette\Utils\Html::el("a")->addAttributes(["title" => $this->tt("systemModule.admin.grid.update")])); $grid->setOperation(["delete" => $this->tt("systemModule.admin.grid.delete")], $this->staticPagesOpHandler)->setConfirm("delete", $this->tt("systemModule.admin.grid.messages.rlyDelPageItems")); $grid->setFilterRenderType($this->filterRenderType); $grid->setExport("admin-types " . date("Y-m-d H:i:s", time())); }