コード例 #1
0
ファイル: CalendarPresenter.php プロジェクト: soundake/pd
 public function createComponentCategories()
 {
     $form = new \soundake\helpers\MyForm();
     $form->renderStyle = 'bootstrap';
     $form->getElementPrototype()->class('form-inline');
     $form->setTranslator($this->translator);
     $categories = $this->context->createServiceCategories()->select('category.*, COUNT(DISTINCT :event_x_category.event_id) AS catCount')->where('category.visible', '1')->group('category.id')->having('COUNT(:event_x_category.category_id) > 0')->order('category.shift, category.name');
     if ($this->shire != '') {
         $categories->where(':event_x_category.event.shire.code', $this->shire);
     }
     $cat = $form->addContainer('categories');
     //$cat->addCheckbox('all', 'all')->setAttribute('onchange', 'submit()');
     foreach ($categories as $category) {
         $cat->addCheckbox($category->id, $category->name)->setAttribute('onchange', 'submit()');
         //->setOption('description', \Nette\Utils\Html::el("span")->class('help-inline')->setHtml("(" . $category->catCount . ")"));
         if (isset($this->categories[$category->id])) {
             $form['categories'][$category->id]->setValue($this->categories[$category->id]);
         }
     }
     $form->addHidden('blabla')->setValue(1);
     $form->onSuccess[] = array($this, 'setCategory');
     return $form;
 }