protected function createComponentItemForm() { $form = new UI\Form(); $form->addText('name', 'Název výrobku:')->setRequired(); $categories = $this->category->order('name')->fetchPairs('id', 'name'); $manufacturers = $this->manufacturer->order('name')->fetchPairs('id', 'name'); $manufacturers[null] = '--- Žádný výrobce ---'; $form->addCheckboxList('category_id', 'Kategorie', $categories); $form['category_id']->setAttribute('class', 'small'); $form->addSelect('manufacturer_id', 'Výrobce', $manufacturers)->setDefaultValue(''); $form->addCheckbox('showPrice', 'Zobrazovat cenu?')->addCondition($form::EQUAL, TRUE)->toggle('price'); $form->addText('price', 'Cena za ks včetně DPH')->setType('number')->setDefaultValue(0)->setOption('id', 'price')->addRule($form::RANGE, 'Cena nemůže být záp**ná.', array(0, 1000000000)); $form->addCheckbox('recommended', 'Je zboží doporučené?'); $form->addCheckbox('new', 'Je to novinka?'); $form->addCheckbox('clearance_sale', 'Doprodej?'); $form->addCheckbox('stock', 'Skladem?'); $form->addCheckbox('order', 'Na objednávku?'); $form->addUpload('photo', 'Přidat obrázek výrobku:'); $form->addTextArea('description', 'Popis:')->setAttribute('class', 'tinyMCE'); $form->addSubmit('save', 'Uložit')->setAttribute('class', 'btn btn-primary'); $form->onSuccess[] = array($this, 'itemFormSucceeded'); return $form; }