Exemple #1
0
 public function createComponentForm()
 {
     $form = new MyForm();
     $form->renderStyle = MyForm::SEMANTIC;
     $form->setTranslator($this->translator);
     $form->addText('name', 'Name');
     $form->addText('surname', 'Surname');
     $form->addText('homepage', 'Homepage URL');
     $form->addText('telephone', 'Telephone');
     $form->addText('street', 'Street');
     $form->addText('city', 'City');
     $form->addSelect('country_id', 'Country', $this->context->createServiceCountries()->order('name')->fetchPairs('id', 'name'))->setDefaultValue(208);
     $form->addText('zip', 'Zip code');
     $form->addText('icq', 'ICQ');
     $form->addText('skype', 'Skype');
     $form->addText('aim', 'AIM');
     $form->addText('jabber', 'Jabber');
     $form->addDatepicker('birthday', 'Birthday');
     $form->addSelect('language_id', 'Language', $this->context->createServiceLangs()->fetchPairs('id', 'name'))->setDefaultValue(1);
     $form->addRadioList('sex', 'Sex', array('M' => 'male', 'F' => 'female'))->setDefaultValue('M');
     $form->addTextArea('description', 'Description');
     $form->addText('organization', 'Organization');
     $form->addSubmit('save', 'Save');
     $form->onSuccess[] = callback($this, 'saveProfile');
     $form->setDefaults($this->profile);
     return $form;
 }
Exemple #2
0
 protected function createComponentFileUploadForm()
 {
     $form = new \soundake\helpers\MyForm();
     $form->renderStyle = \soundake\helpers\MyForm::SEMANTIC;
     $form->getElementPrototype()->addAttributes(array('class' => ''));
     $form->addUpload("image", "Vyberte soubory", true)->setRequired()->addRule(Form::MAX_FILE_SIZE, 'File is too big! Please, choose smaller one. It could be 3 megs large.', 3 * 1024 * 1024)->getControlPrototype()->class('ui input');
     $form->addHidden('id');
     $form->addHidden('type');
     $form->addSubmit('send', 'Nahrát');
     $form->onSuccess[] = callback($this, 'fileUploadSuccess');
     return $form;
 }
Exemple #3
0
 public function createComponentSearch()
 {
     $comp = new MyForm();
     $comp->addSuggestInput('q', "DbSuggester (try eg. 'Milan', 'pet')")->setSuggestLink($this->link('suggestDb'));
     $comp->addSubmit('Hledej');
     $comp->onSuccess[] = callback($this, 'searchSubmitted');
     return $comp;
 }
Exemple #4
0
 public function createComponentGrabForm()
 {
     $comp = new MyForm();
     $comp->addText('url', 'WWW adresa stránky vašeho profilu na PeknyDen.cz')->setRequired('Zadejte WWW adresu vašeho profilu na PeknyDen.cz, jinak nebudeme vědět, které místo je vaše.');
     $comp->addSubmit('save', 'Požádat o správu místa');
     $comp->addText('email', 'E-mail pro odpověď')->setDefaultValue($this->profile->email);
     $comp->onSuccess[] = callback($this, 'saveGrab');
     return $comp;
 }
 protected function createComponentEventForm()
 {
     $form = new MyForm();
     $form->renderStyle = MyForm::SEMANTIC;
     $form->setTranslator($this->presenter->translator);
     $form->getElementPrototype()->addAttributes(array('class' => ''));
     $form->addText('name', 'Event name')->setAttribute('class', 'input-xxlarge')->setOption('description', 'Název vaší akce. Ideální je kompletní název. Nepřidávejte žádné další údaje. Prosím, vyhněte se použití velkých písmen. Akce psané velkými písmeny budou upraveny. Děkujeme za pochopení.')->setRequired('Prosím, vyplňte název akce.');
     if ($this->user->isInRole('administrator')) {
         $form->addText('code', 'URL')->setOption('description', 'Pokud chceš editovat jak vypadá URL.');
     }
     $form->addTextArea('description', 'Event description')->setRequired('Prosím, popište o čem vaše akce je.')->getControlPrototype()->style("height: 500px");
     $form->addMultiSelect('categories', 'Categories', $this->context->createService('categories')->where('event', '1')->order('name')->fetchPairs('id', 'name'))->setAttribute('class', 'chzn')->setAttribute('placeholder', 'Prosím, vyberte kategorii')->setAttribute('data-placeholder', 'Prosím, vyberte kategorii')->setOption('description', 'Kategorie pomáhá uživatelům ve vyhledání vaší akce. Vyberte minálně jednu. Doporučujeme max. 3.')->setRequired('Kategorie musí být vyplněna, prosím vyberte minimálně jednu kategorii.');
     $places = $this->places->order('name')->fetchPairs('id', 'name');
     if (!$this->user->isInRole('administrator')) {
         $places = array(1 => 'Bez místa na PeknyDen.cz') + $places;
     }
     $form->addSelect('subject_id', 'Pořadatel - navázání akce k místu na PeknyDen.cz', $places)->setAttribute('class', 'chzn')->setAttribute('placeholder', 'Prosím, vyberte pořadatele akce.')->setAttribute('data-placeholder', 'Prosím, vyberte pořadatele akce.')->setPrompt('Prosím, vyberte pořadatele akce.')->setDefaultValue(1)->setRequired('Kategorie musí být vyplněna, prosím vyberte pořadatele akce.')->controlPrototype->onChange("submit();");
     if ($this->user->isInRole('administrator')) {
         $form->addCheckbox('rewrite', 'Přepiš data')->setDefaultValue(1);
         //			$form['subject_id']->setDefaultValue(1);
     }
     $form->addText('subject_name', 'Event place')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: U Štěpánků')->setRequired('Prosím, doplňte místo konání akce');
     $form->addSelect('shire_id', 'Shire', $this->context->createService('shires')->fetchPairs('id', 'name'))->setPrompt('Vyber kraj')->setAttribute('class', 'chzn')->setRequired('Prosím, doplňte prosím kraj, kde se akce koná');
     $form->addText('subject_city', 'City or village')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: Praha 3');
     $form->addText('subject_street', 'Street')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: Na Maninách 14');
     $form->addText('subject_locality_nickname', 'Locality for web', null, 127)->setAttribute('placeholder', 'např.: Žižkov');
     $form->addText('subject_zip', 'Zip')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: 323 00');
     $form->addText('subject_gps', 'GPS')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: 50°3\'44.151"N, 14°26\'10.500"E')->setRequired('GPS souřadnice jsou povinné. Jinak by vás nikdo nenašel.');
     $form->addText('subject_www', 'Web')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: http://peknyden.cz/');
     $form->addText('subject_facebook', 'Facebook Page', null, 127)->setAttribute('placeholder', 'např.: http://facebook.cz/peknydencz')->addCondition(FORM::FILLED)->addRule(FORM::URL, 'Facebook Page je vyplněna v nesprávném formátu.');
     $form->addText('subject_email', 'E-mail')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: jan.novy@seznam.cz')->setType('email')->addCondition(Form::FILLED)->addRule(Form::EMAIL, 'E-mailová adresa nemá správný tvar. Zkontrolujte prosím její zadání.');
     $form->addText('subject_phone', 'Phone number')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: 777 888 999');
     if ($this->contactEmail || $this->user->isInRole('administrator')) {
         $form->addText('contact_email', 'Contact e-mail')->setAttribute('class', 'input-xxlarge')->setAttribute('placeholder', 'např.: jan.novy@seznam.cz')->setOption('description', 'Kontaktní e-mail pro případné doplnění informací a zaslání potvrzení o zveřejnění akce (nezveřejňuje se na PeknyDen.cz)')->addCondition(Form::FILLED)->addRule(Form::EMAIL, 'E-mailová adresa nemá správný tvar. Zkontrolujte prosím její zadání.');
     }
     if ($this->notes || $this->user->isInRole('administrator')) {
         $form->addTextArea('notes', 'Notes')->setAttribute('class', 'input-xxlarge')->setOption('description', 'Zde vložte další poznámky k akci.');
     }
     $form->addHidden('id');
     $form->addHidden('user_id')->setDefaultValue($this->user->id);
     //$form->addHidden('type');
     $form->onSubmit[] = callback($this, 'beforeSave');
     if ($this->new) {
         $form->addSubmit('saveNew', 'Save and move to terms')->setAttribute('class', 'large green')->onClick[] = $this->saveDescription;
     } else {
         $form->addSubmit('save', 'Uložit popis akce')->setAttribute('class', 'large green')->onClick[] = $this->saveDescription;
         $form->addSubmit('saveBack', 'Uložit a zpět na akci')->setAttribute('class', 'black')->onClick[] = $this->saveDescription;
     }
     return $form;
 }