function createComponentForm($name) { $form = new MyForm($this, $name); $form->addText('name', 'Meno:')->addRule(NForm::FILLED, 'Meno a priezvisko musia byť vyplnené.'); $form->addText('surname', 'Priezvisko:')->addRule(NForm::FILLED, 'Meno a priezvisko musia byť vyplnené.'); $form->addText('company', 'Firma:'); $form->addText('email', 'Email:'); $form->addText('tel', 'Telefón:'); $form->addTextarea('text', 'Textová správa:')->addRule(NForm::FILLED, 'Správa musí byť vyplnená.'); $form->addSubmit('btn_form', 'Odoslať správu'); $form->addHidden('id_node'); $form->onSuccess[] = callback($this, 'handleSend'); return $form; }
function createComponentWidgetForm($name) { $f = new MyForm(); $f->addText('identifier', 'Identifikátor')->addRule(NForm::FILLED, 'Identifikátor musí byť vyplnený'); $f->addText('name', 'Názov'); $f->addTextarea('template', 'Šablóna')->getControlPrototype()->class = 'long'; $f->addHidden('id_widget'); $f->addContainer('params'); $f->addSubmit('save', 'Uložiť'); $f->addSubmit('addNewParam', 'Pridať parameter')->onClick[] = callback($this, 'handleAddNewParam'); $f->onSuccess[] = array($this, 'handleSaveForm'); $values = (array) $this->getService('Widget')->get($this->getParam('id')); foreach ($values['params'] as $k => $p) { $container = $f['params']->addContainer($k); $container->addText('name', 'Názov'); $container->addText('value', 'Hodnota'); //->setDefaultValue(array($p['value'])); $container->setDefaults((array) $p); } // unset($values['params']); return $f; }
protected function createComponent($name) { switch ($name) { case 'EshopProduct': $p = new EshopProductControl(); $p->invalidateControl(); return $p; break; case 'referenceForm': $params = NEnvironment::getApplication()->getPresenter()->getParam(); $form = new MyForm(); $form->addText('name', 'Meno:'); $form->addProtection(); $form->addText('email', 'Email:'); $form->addTextarea('text', 'Text:'); if (class_exists('reCAPTCHA')) { $form->addRecaptcha('recaptcha_input', 'Overenie:')->addRule('reCAPTCHA::validate', 'Prosím prepíšte správne text z obrázku.'); } $form->addSubmit('submit', 'Odoslať'); $form->onSuccess[] = array($this, 'handleSendReference'); $form->addHidden('id_product'); $form->setDefaults(array('id_product' => ProductModel::getIdProductByUrl($params['url_identifier'], 1))); return $form; break; default: return parent::createComponent($name); break; } }