Example #1
0
	/**
	 * DatePickerForm factory.
	 *
	 * @author   Jan Tvrdík
	 * @return   Form
	 */
	protected function createComponentDatePickerForm()
	{
		$form = new Form();
		$form->addDatePicker('datePicker1');
		$form->addDatePicker('datePicker2')
			->addRule(Form::FILLED, 'Date is required')
			->addRule(Form::VALID, 'Entered date is not valid!');
		$form->addDatePicker('datePicker3')
			->addRule(Form::VALID, 'Entered date is not valid!')
			->addCondition(Form::FILLED)
				->addRule(Form::RANGE, 'Entered date is not within allowed range.', array(new DateTime('-14 days 00:00'), new DateTime('+14 days 00:00')));
		$form->addSubmit('submit');
		$form->onSuccess[] = callback($this, 'datePickerFormSubmitted');
		return $form;
	}
  public function __construct(DbTable\Oznam $oznam, DbTable\Registracia $registracia, DbTable\Ikonka $ikonka, User $user)
  {
      $this->oznam = $oznam;
      $this->ikonka = $ikonka;
      $this->urovneReg = $registracia->hladaj_urovne(0, $user->isLoggedIn() ? $user->getIdentity()->id_registracia : 0)->fetchPairs('id', 'nazov');
  }
  /**
 * Formular pre editaciu oznamu
 * @param int $oznam_ucast Povolenie potvrdenia ucasti
 * @param boolean $send_e_mail_news Povolenie zasielania info e-mailov
 * @param boolean $oznam_title_image_en Povolenie titulneho obrazka
 * @param string $nazov_stranky Nazov stranky
 * @return Form
 */
  public function create($oznam_ucast, $send_e_mail_news, $oznam_title_image_en, $nazov_stranky)
  {
      $form = new Form();
      $form->addProtection();
      $form->addHidden("id");
      $form->addHidden("id_user_profiles");
      $form->addHidden("datum_zadania");
      $form->addDatePicker('datum_platnosti', 'Dátum platnosti')->addRule(Form::FILLED, 'Dátum platnosti musí byť zadaný!');
      $form->addText('nazov', 'Nadpis:', 50, 80)->addRule(Form::MIN_LENGTH, 'Nadpis musí mať spoň %d znakov!', 3)->setRequired('Názov musí byť zadaný!');
      $form->addSelect('id_registracia', 'Povolené prezeranie pre min. úroveň:', $this->urovneReg);
      if ($oznam_ucast) {
          $form->addCheckbox('potvrdenie', ' Potvrdenie účasti');
      } else {
          $form->addHidden('potvrdenie');
      }
      if ($send_e_mail_news) {
          $form->addCheckbox('posli_news', ' Posielatie NEWS o tejto aktualite');
      } else {
          $form->addHidden("posli_news", FALSE);
      }
      if (!$oznam_title_image_en) {
          //$this->oznam_title_image_en
 /**
  * @return \Nette\Forms\Form
  */
 public function createComponentDateForm()
 {
     $form = new Form();
     $form->getElementPrototype()->style = 'margin: 0;';
     $form->addDatePicker('paginatorDate')->addRule(Form::VALID, 'Entered date is not valid!')->addCondition(Form::FILLED)->addRule(Form::RANGE, 'Entered date is not within allowed range.', array($this->getPaginator()->getOldestDate(), $this->getPaginator()->getNewestDate()));
     $form['paginatorDate']->setDefaultValue($this->getPaginator()->getDate());
     $form->onSuccess[] = callback($this, 'formSubmitted');
     return $form;
 }
 protected function createComponentVydani()
 {
     $form = new Form();
     $form->addHidden("id");
     $form->addDatePicker("datum_vydani", "Datum vydání")->setDefaultValue(date("d.m.Y"));
     $form->addText("cas_vydani", "Čas vydání")->addRule(Form::PATTERN, "Zadejte prosím platný čas vydání.", "^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]\$")->setDefaultValue(date("H:i"));
     $form->addSubmit("save", "Uložit");
     $form->onSuccess[] = $this->publishClanek;
     return $form;
 }
Example #5
0
  /**
 * @param User $user
 * @param DbTable\Registracia $registracia
 * @param DbTable\Lang $lang
 * @param DbTable\Hlavicka $hlavicka
 * @param DbTable\Dlzka_novinky $dlzka_novinky
 */
  public function __construct(User $user, DbTable\Registracia $registracia, DbTable\Lang $lang, DbTable\Hlavicka $hlavicka, DbTable\Dlzka_novinky $dlzka_novinky)
  {
      $this->user = $user;
      $this->urovneReg = $registracia->urovneReg($this->user->isLoggedIn() ? $this->user->getIdentity()->id_registracia : 0);
      $this->lang = $lang;
      $this->hlavickaForm = $hlavicka->hlavickaForm();
      $this->dlzkaNovinkyForm = $dlzka_novinky->dlzkaNovinkyForm();
  }
  /**
 * Edit hlavne menu form component factory.
 * @param int $uroven Uroven polozky v menu
 * @param string $uloz Text tlacitka uloz
 * @param boolean $vlastnik Vlastnictvo editovanej polozky
 * @param boolean $edit Pre skrytie poloziek pri editacii
 * @param boolean $opravnenia Opravnenia pre nevlastnikov
 * @return Form
 */
  public function form($uroven, $uloz, $vlastnik, $edit, $opravnenia)
  {
      $form = new Form();
      $form->addProtection();
      $form->addGroup();
      $form->addHidden("id");
      $form->addHidden("id_druh");
      $form->addHidden("id_user_profiles");
      $form->addHidden("spec_nazov");
      $form->addHidden("langtxt");
      $form->addHidden("id_hlavne_menu_cast");
      $form->addHidden("uroven");
      $form->addHidden("id_nadradenej");
      $form->addHidden("modified");
      if (!$edit) {
          $form->addSelect('id_registracia', 'Povolené prezeranie pre min. úroveň:', $this->urovneReg);
      }
      if ($this->user->isInRole("admin")) {
          $form->addText('nazov_ul_sub', 'Názov alternatívneho vzhľadu:', 20, 20);
          $form->addText('ikonka', 'Názov class ikonky pre FontAwesome:', 90, 30);
          if ($uroven) {
              $form->addHidden('id_hlavicka');
          } else {
              $form->addSelect('id_hlavicka', 'Druh priradenej hlavičky:', $this->hlavickaForm)->addRule(Form::FILLED, 'Je nutné vybrať hlavičku.');
          }
          //      $form->addCheckbox('zvyrazni', ' Zvýraznenie položky pri pridaní obsahu');
      }
Example #6
0
 protected function createComponentPolozkaForm($name)
 {
     $identifikatory = array('1' => 'prijem', '-1' => 'vydaj');
     $typTransakcie = $this->ciselniktyptransakcie->findAll()->fetchPairs('id', 'nazov');
     $form = new Form();
     $form->addRadioList('identifikator', 'transakcia', $identifikatory)->setRequired();
     $form->addText('popis', 'Popis')->setRequired();
     $form->addDatePicker('datum', 'Datum:', 10, 10)->setRequired();
     $form->addText('suma', 'Suma')->addRule(\Nette\Application\UI\Form::FLOAT, 'Prosim vlozte cislo')->setRequired();
     $form->addSelect('idCiselnikTypTransakcie', 'Typ transakcie', $typTransakcie)->setPrompt('- Zvoľte typ transakcie -')->setRequired();
     $form->addSubmit('save', 'Save')->setAttribute('class', 'default')->onClick[] = $this->vlozitTransakciuFormSucceeded;
     $form->addSubmit('cancel', 'Cancel')->setValidationScope(array())->onClick[] = $this->formCancelled;
     return $form;
 }
class ZmenDatumPlatnostiFormFactory
{
    /** @var DbTable\Hlavne_menu */
    private $hlavne_menu;
    /**
   * @param DbTable\Hlavne_menu $hlavne_menu */
    public function __construct(DbTable\Hlavne_menu $hlavne_menu)
    {
        $this->hlavne_menu = $hlavne_menu;
    }
    /**
   * Formular pre zmenu datumu platnosti polozky.
   * @param int $id Id polozky v hlavnom menu
   * @param Nette\Utils\DateTime $datum_platnosti Datum platnosti polozky
   * @return Nette\Application\UI\Form */
 public function createComponentOrderDateForm()
 {
     $orderDateService = $this->context->createOrderDate();
     $this->orderDate = $orderDateService->getOrderDates()->where('active', 1)->order('orderdate')->limit(1)->fetch();
     if ($this->orderDate == false) {
         $id = NULL;
         $orderdate = NULL;
     } else {
         $id = $this->orderDate->id;
         $orderdate = $this->orderDate->orderdate;
     }
     $form = new Form();
     $form->addHidden('id')->setDefaultValue($id);
     $form->addDatePicker('orderdate', 'Datum uzavírky:')->addRule(Form::FILLED, 'Datum musí být vyplněno!')->addRule(Form::VALID, 'Zadané datum není platné!')->setDefaultValue($orderdate);
     $form->addSubmit('send', 'Uložit datum uzavírky');
     $form->onSuccess[] = callback($this, 'orderDateFormSubmitted');
     return $form;
 }
Example #9
0
 protected function createComponentUlForm($name)
 {
     //$identifikatory = array('1'=>'prijem','-1'=>'vydaj');
     $typUla = $this->ciselnikTypUla->findAll()->fetchPairs('id', 'nazov');
     $vcelnica = $this->vcelnica->findAll()->fetchPairs('id', 'nazov');
     $form = new Form();
     $form->addText('nazov', 'Nazov ula');
     $form->addSelect('idCiselnikTypUla', 'Typ ula', $typUla)->setPrompt('- Zvoľte typ ula -')->setRequired();
     $form->addSelect('idVcelnica', 'Vcelnica', $vcelnica)->setPrompt('- Zvoľte vcelnicu -')->setRequired();
     $form->addText('matkaRokLiahnutia', 'Matka rok vyliahnutia');
     $form->addText('matkaLinia', 'Matka linia');
     $form->addText('matkaOplodnenost', 'Matka oplodnenost');
     $form->addText('matkaFarba', 'Matka Farba');
     $form->addDatePicker('matkaDatumVlozenia', 'Matka datum vlozenia do vcelstva', 10, 10);
     $form->addSubmit('save', 'Save')->setAttribute('class', 'default')->onClick[] = $this->vlozitTransakciuFormSucceeded;
     $form->addSubmit('cancel', 'Cancel')->setValidationScope(array())->onClick[] = $this->formCancelled;
     return $form;
 }
 public function create($defaults, $values)
 {
     $form = new Form();
     $form->addText('firstName', 'Jméno: ')->setRequired();
     $form->addText('surName', 'Příjmení: ')->setRequired();
     $form->addText('mail', 'Email: ')->addRule(Form::EMAIL)->setRequired();
     $form->addText('telNumber', 'Tel: ')->setRequired();
     $form->addSelect('carMakes', 'Značka auta:', $this->carsModel->getCarsMakes())->setRequired();
     $form->addText('carModel', 'Model:')->setRequired();
     $form->addText('spz', 'Spz: ')->setRequired();
     $form->addDatePicker('date', 'Datum:');
     $form->addSelect('type', 'Typ služby:', $this->reservationManager->getReservationTypesForSelect());
     $form->addSelect('time', 'Čas:', $values);
     $form->addTextArea('additionalInfo', 'Doplňující informace:');
     $form->addSubmit('send', 'Odeslat');
     if ($defaults != NULL) {
         $form->setDefaults($defaults);
     }
     $form->onSuccess[] = array($this, 'formSucceeded');
     return $form;
 }
 /**
  * @return Form
  */
 public function create()
 {
     $boolean = array(0 => 'ne', 1 => 'ano');
     $form = new Form();
     $form->addHidden('id');
     $form->addDatePicker('date', 'datum: ')->setAttribute('class', 'datepicker');
     $form->addText('name', 'nadpis: ', 100)->addRule(Form::FILLED, 'Zadejte prosím nadpis.');
     $form->addTextArea('description', 'krátký popis: ', 105);
     $form->addSelect('active', 'zobrazit: ', $boolean)->setDefaultValue(1);
     $form->addSubmit('submit', 'uložit');
     $form->addProtection('Vypršel časový limit, odešlete formulář znovu');
     //bootstrap vzhled
     $renderer = $form->getRenderer();
     $renderer->wrappers['controls']['container'] = NULL;
     $renderer->wrappers['pair']['container'] = 'div class=form-group';
     $renderer->wrappers['pair']['.error'] = 'has-error';
     $renderer->wrappers['control']['container'] = '';
     $renderer->wrappers['label']['container'] = 'div class=custom-label';
     $renderer->wrappers['control']['description'] = 'span class=help-block';
     $renderer->wrappers['control']['errorcontainer'] = 'span class=help-block';
     $form->getElementPrototype()->class('form-horizontal col-sm-12');
     return $form;
 }
Example #12
0
 /** form for editing item 
  * 
  * @return \Nette\Application\UI\Form
  */
 protected function createComponentEditItemForm()
 {
     $form = new Form();
     //$userPairs = $this->userRepository->findAll()->fetchPairs('id', 'name');
     if ($this->pageConfig) {
         /** for each item from configuration for this page create form item
          * 
          */
         foreach ($this->pageConfig["form"] as $item => $params) {
             $formItem = NULL;
             switch ($params["type"]) {
                 case "calendar":
                     //$formItem = $form->addDate($item, $params['text'], Vodacek\Forms\Controls\DateInput::TYPE_DATE);
                     //$formItem = $form->addText($item, $params['text'], 40, 100);
                     $formItem = $form->addDatePicker($item, $params['text']);
                     /** check for minimal date */
                     $min = new DateTime('-100 years 00:00');
                     $max = new DateTime('+100 years 00:00');
                     if (isset($params["min"])) {
                         switch ($params["min"]) {
                             case 'today':
                                 $min = new DateTime('-0 days 00:00');
                                 break;
                             default:
                                 $min = new DateTime($params["min"] . ' 00:00');
                                 break;
                         }
                     }
                     /** check for maximal date */
                     if (isset($params["max"])) {
                         switch ($params["max"]) {
                             case 'today':
                                 $max = new DateTime('+0 days 00:00');
                                 break;
                             default:
                                 $max = new DateTime($params["max"] . ' 00:00');
                                 break;
                         }
                     }
                     $formItem->setAttribute('min', $min->format('Y-m-d'))->setAttribute('max', $max->format('Y-m-d'));
                     break;
                 case "shortText":
                     $formItem = $form->addText($item, $params['text'], 40, 100);
                     break;
                 case "longText":
                     $formItem = $form->addTextArea($item, $params['text'], 40, 5);
                     break;
                 case "location":
                     $formItem = $form->addTextArea($item, $params['text'], 40, 3);
                     break;
                 case "select":
                     $formItem = $form->addSelect($item, $params['text'])->setItems($params["options"])->setPrompt('Vyberte');
                     /** set default value for select if any */
                     if (isset($params["defaultValue"])) {
                         $formItem->setDefaultValue($params["defaultValue"]);
                     }
                     break;
             }
             /** if it is mandatory set rule */
             if (isset($params["mandatory"]) && $params["mandatory"]) {
                 $formItem->addRule(Form::FILLED, 'Je nutné vyplnit "' . $params['text'] . '".');
             }
             /** if it has a hint, show it */
             if (isset($params["hint"])) {
                 $formItem->setOption('description', $params["hint"]);
             }
             /** set actual value if any */
             if (isset($this->editingItem->{$item})) {
                 if ($params["type"] == 'calendar') {
                     //$formItem->setDefaultValue();
                     if (gettype($this->editingItem->{$item}) == 'object') {
                         $this->editingItem->{$item} = $this->editingItem->{$item}->date;
                     }
                 }
                 $formItem->setDefaultValue($this->unescapeTags($this->editingItem->{$item}));
             }
         }
     }
     if (!empty($this->pageConfig['settings']['sendEmail'])) {
         $text = $this->adminEdit ? 'Email' : 'Váš email';
         $form->addText('email', $text, 40, 100)->setDefaultValue($this->editingRow->authorEmail)->setDisabled(TRUE);
     }
     $form->addSelect('delete', 'Chcete tento záznam smazat?')->setItems(array('Ne', 'ANO'));
     $form->addAntispam('kontrolni', 'Následující políčko vymažte!', 'Jsi spamovací robot?!');
     $form->addSubmit('save', 'Uložit');
     $renderer = $form->getRenderer();
     $renderer->wrappers['controls']['container'] = 'div';
     $renderer->wrappers['pair']['container'] = 'dl';
     $renderer->wrappers['label']['container'] = 'dt';
     $renderer->wrappers['control']['container'] = 'dd';
     $form->getElementPrototype()->class('ajax');
     $form->onSuccess[] = $this->editItemFormSubmitted;
     return $form;
 }
Example #13
0
 public function createComponentAdvancedSearchForm()
 {
     $form = new Form();
     $form->addAntispam();
     $form->addText('query', 'URL:*')->addRule(Form::FILLED, 'Zadejte prosím platné URL.');
     $form->addCheckbox('star');
     $form->addDatePicker('dateFrom', 'Od:', 10, 10)->setAttribute('class', 'text');
     $form->addDatePicker('dateTill', 'Do:', 10, 10)->setAttribute('class', 'text');
     $form->addSubmit('submit', 'Vyhledat');
     $form->onSuccess[] = callback($this, 'processAdvancedSearchForm');
     return $form;
 }
Example #14
0
 /** form for adding new item 
  * 
  * @return \Nette\Application\UI\Form
  */
 protected function createComponentNewItemForm()
 {
     $form = new Form();
     //$userPairs = $this->userRepository->findAll()->fetchPairs('id', 'name');
     if ($this->pageConfig) {
         /** for each item from configuration for this page create form item
          * 
          */
         foreach ($this->pageConfig["form"] as $item => $params) {
             $formItem = NULL;
             switch ($params["type"]) {
                 case "calendar":
                     //$formItem = $form->addDate($item, $params['text'], Vodacek\Forms\Controls\DateInput::TYPE_DATE);
                     //$formItem = $form->addText($item, $params['text'], 40, 100);
                     $formItem = $form->addDatePicker($item, $params['text']);
                     //$formItem->addRule(Form::VALID, 'Zadané datum není platné!');
                     /** check for minimal date */
                     $min = new DateTime('-100 years 00:00');
                     $max = new DateTime('+100 years 00:00');
                     if (isset($params["min"])) {
                         switch ($params["min"]) {
                             case 'today':
                                 $min = new DateTime('-0 days 00:00');
                                 break;
                             default:
                                 $min = new DateTime($params["min"] . ' 00:00');
                                 break;
                         }
                     }
                     /** check for maximal date */
                     if (isset($params["max"])) {
                         switch ($params["max"]) {
                             case 'today':
                                 $max = new DateTime('+0 days 00:00');
                                 break;
                             default:
                                 $max = new DateTime($params["max"] . ' 00:00');
                                 break;
                         }
                     }
                     $formItem->setAttribute('min', $min->format('Y-m-d'))->setAttribute('max', $max->format('Y-m-d'));
                     break;
                 case "shortText":
                     $formItem = $form->addText($item, $params['text'], 40, 100);
                     break;
                 case "longText":
                     $formItem = $form->addTextArea($item, $params['text'], 40, 5);
                     break;
                 case "location":
                     $formItem = $form->addTextArea($item, $params['text'], 40, 3);
                     break;
                 case "select":
                     $formItem = $form->addSelect($item, $params['text'])->setItems($params["options"])->setPrompt('Vyberte');
                     /** set default value for select if any */
                     if (isset($params["defaultValue"])) {
                         $formItem->setDefaultValue($params["defaultValue"]);
                     }
                     break;
             }
             /** if it is mandatory set rule */
             if (isset($params["mandatory"]) && $params["mandatory"]) {
                 $formItem->addRule(Form::FILLED, 'Je nutné vyplnit "' . $params['text'] . '".');
             }
             /** if it has a hint, show it */
             if (isset($params["hint"])) {
                 $formItem->setOption('description', $params["hint"]);
                 if (gettype($params["hint"]) == 'string') {
                     $formItem->setAttribute('title', $params["hint"])->setOption('description', $params["hint"]);
                 }
             }
             /** add placeholder, if any */
             if (isset($params["placeholder"])) {
                 $formItem->setAttribute('placeholder', $params["placeholder"]);
             }
             /** set default value if any */
             if (isset($params["defaultValue"])) {
                 $formItem->setDefaultValue($params["defaultValue"]);
             }
         }
     }
     if (!empty($this->pageConfig['settings']['sendEmail'])) {
         $hintText = 'Tento email nebude zveřejněn; bude vám na něj zaslán odkaz na stránku, na které můžete zde zadané hodnoty zpětně upravit.';
         $session = $this->getSession('agility');
         $defaultVal = '@';
         //$session->email == NULL ? '@' : $session->email;
         $form->addText('email', 'Váš email:', 40, 100)->setDefaultValue($defaultVal)->setType('e-mail')->addRule(Form::FILLED, 'Je nutné zadat email.')->addRule(Form::EMAIL, 'Nezadali jste platnou emailovou adresu.')->setAttribute('title', $hintText)->setOption('description', $hintText);
     }
     $form->addAntispam('kontrolni');
     $form->addSubmit('create', 'Vytvořit');
     $renderer = $form->getRenderer();
     $renderer->wrappers['controls']['container'] = 'div';
     $renderer->wrappers['pair']['container'] = 'dl';
     $renderer->wrappers['label']['container'] = 'dt';
     $renderer->wrappers['control']['container'] = 'dd';
     $form->getElementPrototype()->class('ajax');
     $form->onSuccess[] = $this->newItemFormSubmitted;
     return $form;
 }
 /**
  * Form for organization member editation
  *
  * @Action("edit", "create")
  * @Privilege("edit", "create")
  */
 protected function createComponentOrganizationForm()
 {
     $form = new Form();
     $form->addProtection('Vypršel časový limit, odešlete formulář znovu');
     $users = $this->users->getUnconnectedUsers()->fetchPairs('id', 'username');
     $form->addSelect('user_id', 'Uživatel:', $users)->setPrompt('Propojit s uživatelem');
     $form->addText('nickname', 'Přezdívka:')->setRequired('Musíte zadat přezdívku');
     $form->addText('title', 'Titul:')->setOption('description', \Nette\Utils\Html::el('td')->setText('Titul před jménem'));
     $form->addText('name', 'Křestní jméno:')->setRequired('Musíte zadat jméno');
     $form->addText('surname', 'Příjmení:')->setRequired('Musíte zadat příjmení');
     $form->addUpload('file', 'Profilová fotka:')->addCondition(Form::FILLED)->addRule(Form::IMAGE, 'Foto musí být JPEG, PNG nebo GIF.');
     $form->addText('group', 'Pozice:');
     $form->addSelect('stripe', 'Frčky:', ['vedouci.gif' => 'Vedoucí oddílu', 'zastupce.gif' => 'Zástupce vedoucího', 'radce_oddilu.gif' => 'Rádce oddílové družiny', 'rover.gif' => 'Rover', 'radce.gif' => 'Rádce', 'podradce.gif' => 'Podrádce'])->setPrompt('--Bez frček--')->setOption('description', \Nette\Utils\Html::el('td')->setText('Možnosti: Vedoucí oddílu, Zástupce vedoucího oddílu, Rover, Mlok, Tučňák, Nováček, Oldskaut, Rádce, Podrádce. Lze přidat více jak jednu možnost.'));
     $form->addDatePicker('entered', 'Vstup do oddílu:')->setRequired('Musíte vyplnit vstup do oddílu');
     $form->addTextarea('note', 'Osobní poznámka:')->setAttribute('rows', 4);
     $form->addSubmit('send', 'Přidat/Upravit');
     $form->onSuccess[] = $this->organizationFormSucceded;
     return $form;
 }