public function load($id, LazyContainer $container)
 {
     $menu = $this->menuFilter->filterId($this->menuFacade->all(), $id)->select('html')->fetch();
     $defaults = $container->getValues(TRUE);
     if ($menu) {
         $defaults['html'] = $menu['html'];
     }
     $container->setDefaults($defaults);
 }
 /**
  * @param string $id
  * @param string|callable $callback [optional]
  * @return \Nette\Database\Table\ActiveRow
  * @throws InvalidArgumentException
  */
 public function get($id, $callback = NULL)
 {
     $selection = $this->menuFilter->filterId($this->menuProvider->all(), $id);
     $this->apply($selection, $callback);
     $item = $selection->fetch();
     if (!$item) {
         throw new InvalidArgumentException();
     }
     return $item;
 }
 public function validate(LazyContainer $container)
 {
     $symlinkId = $container['id_menu']->getValue();
     $menu = $this->menuFilter->filterId($this->menuFacade->all(), $symlinkId)->fetch();
     if (!$menu) {
         $container['id_menu']->addError("Položka neexistuje");
         return;
     }
     if ($menu['type'] == MenuTypeConst::SYMLINK) {
         $container['id_menu']->addError("Cílová položka nemůže být odkaz na další položku");
     }
 }
Пример #4
0
 public function load($id)
 {
     $context = $this->menuFacade->all()->select('menu.*, :menu_has_menu.parent.id AS id_menu');
     $this->sectionFilter->filterId($context, $this->sectionId);
     $this->menuFilter->filterId($context, $id);
     $section = $context->fetch();
     if (!$section) {
         throw new RecordNotFoundException("Menu with ID {$id} does not exists!");
     }
     $this->id = $id;
     $sectionData = $section->toArray();
     $form = $this['form'];
     $form['base']->setDefaults($sectionData);
     $form['parent']->setDefaults($sectionData);
     $this->lazyItemMap->get($section['type'])->load($id, $form['content']);
 }
 /**
  * @param string $id
  * @param string|callable $callback [optional]
  * @return \Nette\Database\Table\ActiveRow|false
  * @throws \Nette\InvalidArgumentException
  */
 public function get($id, $callback = NULL)
 {
     $selection = $this->menuFilter->filterId($this->menuFacade->all(), $id);
     $this->apply($selection, $callback);
     return $selection->fetch();
 }
Пример #6
0
 /**
  * @return \Nette\Database\Table\Selection
  */
 public function all()
 {
     return $this->menuFilter->filterShow($this->menuFacade->all(), true);
 }