} $form->addSubmit('uloz', 'Ulož')->setAttribute('class', 'btn btn-success')->onClick[] = [$this, 'editUdajeFormSubmitted']; $form->addSubmit('cancel', 'Cancel')->setAttribute('class', 'btn btn-default')->setValidationScope(FALSE); return $form; } /** Spracovanie vstupov z formulara * @param Nette\Forms\Controls\SubmitButton $button Data formulara */ public function editUdajeFormSubmitted($button)
$form->addSubmit('cancel', 'Cancel')->setAttribute('class', 'btn btn-default')->setValidationScope(FALSE); return $form; } /** Spracovanie vstupov z formulara * @param Nette\Forms\Controls\SubmitButton $button Data formulara */ public function editAdresaFormSubmitted($button) { try {
public function create() { $form = new Form(); $form->addProtection(); $form->addHidden('id'); $form->addText('nazov', 'Názov:', 30, 30)->addRule(Form::MIN_LENGTH, 'Názov musí mať spoň %d znaky!', 3)->setRequired('Názov musí byť zadaný!'); $form->addText('fa_class', 'Ikonka:', 30, 30); if ($this->id_reg > 2) { $form->addSelect('id_registracia', 'Úroveň registrácie člena:', $this->urovneReg); }
$ikonky = $this->ikonka->findAll()->fetchPairs('id', 'nazov'); $outDir = 'http://' . $nazov_stranky . '/www/ikonky/128/'; foreach ($ikonky as $key => $nazov) { $iko[$key] = Html::el('img', ['class' => 'ikonkySmall'])->src($outDir . $nazov . '128.png'); } $form->addRadiolist('id_ikonka', 'Ikonka pred článkom:', $iko)->setAttribute('class', 'ikons-set')->getSeparatorPrototype()->setName(NULL); } $form->addTextArea('text', 'Text:')->setAttribute('cols', 60)->setAttribute('class', 'jquery_ckeditor'); // $form->onValidate[] = [$this, 'validateEditOznamForm']; $form->addSubmit('uloz', 'Ulož')->setAttribute('class', 'btn btn-success')->onClick[] = [$this, 'editOznamFormSubmitted'];
/** * Formular pre zmenu urovne registracie polozky. * @param int $id Id polozky v hlavnom menu * @param int $id_registracia Sucasna uroven registracie polozky * @return Nette\Application\UI\Form */ public function create($id, $id_registracia) { $form = new Form(); $form->addProtection(); $form->addHidden("id", $id); $form->addRadioList('id_registracia', 'Nová úroveň:', $this->registracia)->setDefaultValue($id_registracia);
$form->addHidden("created"); $form->addText('suma', 'Suma:', 50, 80)->addRule(Form::FILLED, 'Suma musí byť zadaná!'); $form->addText('ucel', 'Účel:', 50, 80)->addRule(Form::FILLED, 'Účel musí byť zadaný!'); $form->addRadioList('vklad', 'Pohyb:', ['1' => 'vklad', '-1' => 'výber']); $form->addSubmit('uloz', 'Ulož')->setAttribute('class', 'btn btn-success')->onClick[] = [$this, 'pokladnickaFormSubmitted']; $form->addSubmit('cancel', 'Cancel')->setAttribute('class', 'btn btn-default')->setAttribute('data-dismiss', 'modal')->setAttribute('aria-label', 'Close')->setValidationScope(FALSE); if ($id) { $p = $this->pokladnicka->find($id); } else { $p = ['id' => 0, 'vklad' => 1, 'created' => StrFTime("%Y-%m-%d %H:%M:%S", Time())]; }
* @param array $texts * @return Nette\Application\UI\Form */ public function create($texts) { $form = new Form(); $form->addProtection(); $form->addText('username', $texts['base_SignInForm_username'], 40, 20)->setRequired($texts['base_SignInForm_username_req']); $form->addPassword('password', $texts['base_SignInForm_password'], 40)->setRequired($texts['base_SignInForm_password_req']); $form->addCheckbox('remember', $texts['base_SignInForm_remember']); $form->addSubmit('login', $texts['base_SignInForm_login'])->setAttribute('class', 'btn btn-success')->onClick[] = [$this, 'signInFormSubmitted']; return $form; } /** * Overenie po prihlaseni * @param Nette\Forms\Controls\SubmitButton $button Data formulara */
$form->addSubmit('cancel', 'Cancel')->setAttribute('class', 'btn btn-default')->setValidationScope(FALSE); return $form; } /** Spracovanie vstupov z formulara * @param Nette\Forms\Controls\SubmitButton $button Data formulara */ public function editSliderFormSubmitted($button) { $values = $button->getForm()->getValues(); $data = $this->slider->find($values->id); //Nacitanie editovanej polozky if ($values->zobrazenie_null) { $values->zobrazenie = NULL; } unset($values->zobrazenie_null); if ($this->slider_i['odkaz']) { $values->id_hlavne_menu = (int) $values->id_hlavne_menu > 0 ? (int) $values->id_hlavne_menu : NULL; if ($values->id_hlavne_menu !== NULL) { //Kontrola exzistencie id_hlavne_menu if ($this->hlavne_menu->find($values->id_hlavne_menu) == FALSE) { $button->addError('Zadali ste nesprávne číslo článku. Skúste znovu!'); return; } } } if ($values->subor && $values->subor->name != "") { if ($values->subor->isImage()) { $slider_dir = $this->wwwDir . "/www/files/slider/"; $finalFileName = $this->_imageFileName($slider_dir, $values->subor->getSanitizedName()); $image_name = $slider_dir . $finalFileName; $values->subor->move($image_name); $image = Image::fromFile($image_name); $image->resize($this->slider_i['x'], $this->slider_i['y'], Image::SHRINK_ONLY | Image::EXACT); $image->save($image_name, 80); if (is_file('www/files/slider/' . $data['subor'])) { unlink($slider_dir . $data['subor']); } $values->subor = $finalFileName; } else { $button->addError('Zadali ste nesprávne číslo článku. Skúste znovu!'); unset($values->subor); return; } } else { unset($values->subor); } try {
* @return Form */ public function create($upload_size, $prilohy_adresar, $prilohy_images) { $this->prilohy_adresar = $prilohy_adresar; $this->prilohy_images = $prilohy_images; $form = new Form(); $form->addProtection(); $form->addHidden("id"); $form->addHidden("id_hlavne_menu"); $form->addHidden("id_registracia"); $form->addUpload('priloha', 'Pridaj prílohu')->setOption('description', sprintf('Max veľkosť prílohy v bytoch %s kB', $upload_size / 1024))->addCondition(Form::FILLED)->addRule(Form::MAX_FILE_SIZE, 'Max veľkosť obrázka v bytoch %d B', $upload_size); $form->addText('nazov', 'Nadpis prílohy:', 55, 255)->setOption('description', sprintf('Nadpis by mal mať aspoň %s znakov. Inak nebude akceptovaný a bude použitý názov súboru!', 2)); $form->addText('popis', 'Podrobnejší popis prílohy:', 55, 255)->setOption('description', sprintf('Popis by mal mať aspoň %s znakov. Inak nebude akceptovaný!', 2)); $form->addSubmit('uloz', 'Ulož')->setAttribute('class', 'btn btn-success')->onClick[] = [$this, 'editPrilohaFormSubmitted']; $form->addSubmit('cancel', 'Cancel')->setAttribute('class', 'btn btn-default')->setAttribute('data-dismiss', 'modal')->setAttribute('aria-label', 'Close')->setValidationScope(FALSE); return $form; } /** * Spracovanie formulara pre pridanie a editaciu prilohy polozky. * @param Nette\Forms\Controls\SubmitButton $button Data formulara * @throws Database\DriverException */ public function editPrilohaFormSubmitted($button)
{ $this->avatar_path = $avatar_path; $this->www_dir = $www_dir; $form = new Form(); $form->addProtection(); $form->addHidden("id"); $form->addHidden("old_avatar"); $form->addUpload('avatar', 'Titulný obrázok')->setOption('description', sprintf('Max veľkosť obrázka v bytoch %d kB', 300 * 1024 / 1000))->setRequired(FALSE)->addRule(Form::MAX_FILE_SIZE, 'Max veľkosť obrázka v bytoch %d B', 300 * 1024)->addRule(Form::IMAGE, 'Titulný obrázok musí byť JPEG, PNG alebo GIF.'); $form->addSubmit('uloz', 'Zmeň')->setAttribute('class', 'btn btn-success')->onClick[] = [$this, 'editTitleImageFormSubmitted']; $form->addSubmit('cancel', 'Cancel')->setAttribute('class', 'btn btn-default')->setAttribute('data-dismiss', 'modal')->setAttribute('aria-label', 'Close')->setValidationScope(FALSE); return $form; } /** * Spracovanie formulara pre zmenu vlastnika clanku. * @param Nette\Forms\Controls\SubmitButton $button Data formulara * @throws Database\DriverException */ public function editTitleImageFormSubmitted($button) { $values = $button->getForm()->getValues(); //Nacitanie hodnot formulara try { if (!$values->avatar->error) { if ($values->avatar->isImage()) {
$this->setView('notFound'); } elseif ($id) { $this["editCategoriForm"]->setDefaults($categ); } } /** Formular pre pridanie uzivatela. * @return Nette\Application\UI\Form */ protected function createComponentAddUserForm() { $form = $this->addUserForm->create($this->users, $this->urovneReg, $this->user_view_fields["pohl"]); $form['uloz']->onClick[] = [$this, 'addUserFormSubmitted']; $form['cancel']->onClick[] = function () { $this->redirect('User:'); }; return $this->_vzhladForm($form); } /** Spracovanie formulara pre pridanie uzivatela * @param Nette\Forms\Controls\SubmitButton $button Data formulara */ public function addUserFormSubmitted($button) { // Inicializacia $values = $button->getForm()->getValues();
/** Spracovanie vstupov z formulara * @param Nette\Forms\Controls\SubmitButton $button Data formulara */ public function verzieEditFormSubmitted($button) { $values = $button->getForm()->getValues(); //Nacitanie hodnot formulara $posli_news = $values->posli_news; if ($this->verzie->ulozVerziu($values) !== FALSE) { //Ulozenie v poriadku if ($posli_news) { //Poslanie e-mailu $params = ["site_name" => $this->nazov_stranky, "cislo" => $values->cislo, "text" => $values->text, "odkaz" => $this->link("Verzie:default")]; $send = new PeterVojtech\Email\EmailControl(__DIR__ . '/templates/Verzie/verzie-html.latte', $this->user_profiles, 1, 4); try { $this->flashMessage('E-mail bol odoslany v poriadku na emaily: ' . $send->send($params, 'Nová verzia stránky ' . $this->nazov_stranky), 'success'); } catch (Exception $e) { $this->flashMessage($e->getMessage(), 'danger'); } } $this->flashRedirect('Verzie:', 'Verzia bola úspešne uložená!', 'success'); } else { //Ulozenie sa nepodarilo $this->flashMessage('Došlo k chybe a verzia sa neuložila. Skúste neskôr znovu...', 'danger'); } }
/** * Confirm NO clicked * @param Nette\Forms\Controls\SubmitButton $button */ public function cancelClicked($button) { $form = $button->getForm(TRUE); $values = $form->getValues(); if (isset($this->session->{$values['token']})) { unset($this->session->{$values['token']}); } $this->visible = FALSE; $this->invalidateControl(); if (!$this->presenter->isAjax()) { $this->presenter->redirect('this'); } }
/** Spracovanie formulara pre editaciu udajov menu(clanku). * @param Nette\Forms\Controls\SubmitButton $button Data formulara */ public function menuEditFormSubmitted($button) { $values = $button->getForm()->getValues(); //Nacitanie hodnot formulara $uloz_txt = []; $id_pol = (int) $values->id; // Ak je == 0 tak sa pridava if (strlen($values->langtxt)) { //Mam aj texty foreach (explode(" ", $values->langtxt) as $j) { $pom = []; foreach (["nazov", "h1part2", "description"] as $f) { $new = $values->{$j . "_" . $f}; if (isset($new)) { $pom[$f] = $new; unset($values->{$j . "_" . $f}); } } if (count($pom)) { $uloz_txt[$j] = $pom; } } unset($values->langtxt); } $values->modified = new \DateTime(date('Y-m-d H:i:s')); $values->absolutna = isset($values->absolutna) && strlen($values->absolutna) > 7 ? $values->absolutna : NULL; $values->id_nadradenej = isset($values->id_nadradenej) && (int) $values->id_nadradenej > 0 ? $values->id_nadradenej : NULL; $values->nazov_ul_sub = isset($values->nazov_ul_sub) && strlen($values->nazov_ul_sub) > 1 ? $values->nazov_ul_sub : NULL; if (!$this->menuformuloz["edit"] && !$values->platnost) { $values->datum_platnosti = NULL; } if ($id_pol == 0) { //Pridavam $values->spec_nazov = $this->_najdiSpecNazov($uloz_txt["sk"]["nazov"], "hlavne_menu"); } unset($values->platnost, $values->id); $ulozenie = 0; //Kontrola spravnosti ulozenia $uloz = $this->hlavne_menu->uloz($values, $id_pol); if (!empty($uloz['id'])) { //Ulozenie v poriadku $ulozenie = 1; if ($utc = count($uloz_txt)) { foreach ($uloz_txt as $ke => $ut) { if (($jid = $this->testDB($this->lang->findOneBy(["skratka" => $ke]))) !== FALSE) { $hlid = -1; if ($id_pol) { //editujem $hlh = $this->hlavne_menu_lang->findOneBy(["id_lang" => $jid->id, "id_hlavne_menu" => $uloz["id"]]); if ($hlh !== FALSE) { $hlid = $hlh->id; } else { //pridavam lebo to v DB neexzistuje $ut["id_lang"] = $jid->id; $ut["id_hlavne_menu"] = $uloz["id"]; $hlid = 0; } } else { //pridavam $ut["id_lang"] = $jid->id; $ut["id_hlavne_menu"] = $uloz["id"]; $hlid = 0; } if ($hlid > -1) { $uloz_t = $this->hlavne_menu_lang->uloz($ut, $hlid); if (isset($uloz_t['id']) && $uloz_t['id']) { //Ulozenie v poriadku $ulozenie++; } } else { die("Chyba v hlid = {$hlid}!"); } } else { die("Chyba v lang!"); } } if ($ulozenie != $utc + 1) { //Nieco sa neulozilo v poriadku //TODO!!! Zmazanie toho co sa uz ulozilo $ulozenie = 0; } } else { $ulozenie = $id_pol == 0 ? 0 : 1; } //Ak pri pridani nemam texty je to chyba! } if ($ulozenie) { $this->flashMessage('Položka menu bola uložená!', 'success'); if (strlen($this->menuformuloz["redirect"]) > 2) { $this->redirect($this->menuformuloz["redirect"], $uloz['id']); } else { $this->redirect('Menu:', $uloz['id']); } } else { //Ulozenie sa nepodarilo $this->flashMessage('Došlo k chybe a položka sa neuložila. Skúste neskôr znovu... - ' . $ulozenie . "==" . $utc + 1, 'danger'); } }
$uloz_users = $this->users->uloz(['username' => $values->username, 'password' => $hasser->HashPassword($values->heslo), 'email' => $values->email, 'activated' => 1]); if (!empty($uloz_users['id'])) { //Ulozenie v poriadku $uloz_user_profiles = $this->user_profiles->uloz(['id_users' => $uloz_users['id'], 'meno' => $values->meno, 'priezvisko' => $values->priezvisko, 'id_registracia' => $values->id_registracia, 'pohl' => isset($values->pohl) ? $values->pohl : 'Z', 'modified' => StrFTime("%Y-%m-%d %H:%M:%S", Time()), 'created' => StrFTime("%Y-%m-%d %H:%M:%S", Time())]); } if (!empty($uloz_user_profiles['id'])) { //Ulozenie v poriadku $this->flashRedirect('User:'******'Nový užívateľ uložený v poriadku!', 'success'); } else { $this->flashMessage('Uloženie sa nepodarilo!', 'danger'); } //Ulozenie sa nepodarilo } /** * Edit user form component factory. Tovarnicka na formular pre editaciu clena * @return \Nette\Application\UI\Form */ protected function createComponentEditUserForm() { $form = $this->editUserForm->create($this->users, $this->id_reg, $this->urovneReg, $this->user_view_fields); $form['uloz']->onClick[] = [$this, 'editUserFormSubmitted']; $form['cancel']->onClick[] = [$this, 'formCancelled'];
public function saveDescription(Nette\Forms\Controls\SubmitButton $button) { $form = $button->getForm(); try { $values = $form->getValues(TRUE); $categories = $values['categories']; if (count($categories) == 1 && $categories[0] == 1) { $form['categories']->addError('Vyberte prosím ještě jednu kategorii kromě Zdarma. Díky!'); throw new \Nette\InvalidArgumentException('Vyberte prosím ještě jednu kategorii kromě Zdarma. Díky!'); } unset($values['categories']); unset($values['rewrite']); //unset($values['type']); $this->id = $values['id']; if ($values['user_id'] == '') { $values['user_id'] = $this->user->id; } if (!$this->user->isInRole('administrator')) { $values['reviewed'] = 0; } $event = $this->context->createService('events')->wherePrimary($this->id); if ($event->count() == 1) { $event->update($values, true); } else { $pd = $this->context->createService('events')->insert($values); $this->id = $pd->id; } \dibi::begin(); \dibi::query('DELETE FROM [event_x_category] WHERE [event_id]=%i', $this->id); foreach ($categories as $n) { \dibi::query('INSERT INTO [event_x_category] SET [event_id]=%i', $this->id, ', [category_id]=%i', $n); } \dibi::commit(); } catch (Exception $e) { $form->addError($e->getMessage()); } if ($form->isSuccess()) { $session = $this->presenter->getSession(get_class($this)); unset($session['form']); $cache = new Cache($this->context->getService('cacheStorage')); $cache->clean(array(Cache::TAGS => array('events', 'event', 'term', 'terms', 'calendar'))); $this->presenter->flashMessage('Fantazie! Popis události luxusně uložen!', 'success'); if (isset($form['saveNew']) && $form['saveNew']->isSubmittedBy()) { $this->presenter->redirect('EventsWizard:w2', array('event_id' => $this->id)); } elseif ($form['save']->isSubmittedBy()) { $this->redirect('this'); } elseif ($form['saveBack']->isSubmittedBy()) { if (isset($this->backlink)) { $this->presenter->restoreRequest($this->backlink); } unset($this->backlink); $this->presenter->redirect('Events:event', array('event_id' => $this->id)); } } }
public function saveTerms(Nette\Forms\Controls\SubmitButton $button) { $form = $button->getForm(); $values = $form->getValues(); $forceRegenerate = isset($values['forceRegenerate']) ? $values['forceRegenerate'] : FALSE; unset($values['forceRegenerate']); try { $data = array(); $data['event_id'] = $values['event_id']; // projede vsechny kontejnery pro jednotlive terminy foreach ($values['terms'] as $value) { $value['id'] = $value['time_id']; unset($value['time_id']); if ($value['date_to'] == '') { unset($value['date_to']); } else { if ($value['date_to'] < $value['date_from']) { $this->flashMessage('Datum konce akce nesmí být starší než datum začátku akce.', 'error'); throw new \Nette\ArgumentOutOfRangeException('Datum konce akce nesmí být starší než datum začátku akce.'); } } if ($value['time_to'] == '') { unset($value['time_to']); } else { $value['time_to'] = is_object($value['time_to']) ? date('H:i', $value['time_to']->getTimestamp()) : $value['time_to']; if ($value['time_to'] == '00:00') { unset($value['time_to']); } } if ($value['time_from'] == '') { unset($value['time_from']); } else { $value['time_from'] = is_object($value['time_from']) ? date('H:i', $value['time_from']->getTimestamp()) : $value['time_from']; if ($value['time_from'] == '00:00') { unset($value['time_to']); } } // spoji spolecna data s hodnotami terminu $q[] = array_merge($data, (array) $value); } } catch (Exception $e) { $form->addError($e->getMessage()); } catch (\Nette\ArgumentOutOfRangeException $e) { $form->addError($e->getMessage()); } if ($form->isSuccess()) { //smaze vsechny existujici terminy $this->context->createServiceTerms()->where('event_id', $values['event_id'])->delete(); foreach ($q as $v) { // vlozi do databaze $this->context->createServiceTerms()->insert($v, $forceRegenerate); } if (!$this->user->isInRole('administrator')) { $this->context->createServiceEvents()->get($values['event_id'])->update(array('reviewed' => 0, 'changed' => new \Nette\DateTime()), $forceRegenerate); } else { $this->context->createServiceEvents()->get($values['event_id'])->update(array('changed' => new \Nette\DateTime()), $forceRegenerate); } $cache = new Cache($this->context->getService('cacheStorage')); $cache->clean(array(Cache::TAGS => array('events', 'event', 'term', 'terms'))); $this->presenter->flashMessage('Krásná práce! Termíny se podařilo bezvadně uložit.', 'success'); if ($form['save']->isSubmittedBy()) { $this->presenter->redirect('EventsWizard:w3', array('event_id' => $values['event_id'])); } elseif ($form['saveAndJump']->isSubmittedBy()) { $this->presenter->redirect('EventsWizard:w4', array('event_id' => $values['event_id'])); } elseif ($form['send']->isSubmittedBy()) { $this->redirect('this'); } elseif ($form['sendBack']->isSubmittedBy()) { if (isset($this->backlink)) { $this->presenter->restoreRequest($this->backlink); } unset($this->backlink); $this->presenter->redirect('Events:event', array('event_id' => $values['event_id'])); } } }