コード例 #1
0
 public function init()
 {
     $this->setDecorators(array(array('ViewScript', array('viewScript' => 'form/add-show-when.phtml'))));
     $notEmptyValidator = Application_Form_Helper_ValidationTypes::overrideNotEmptyValidator();
     $dateValidator = Application_Form_Helper_ValidationTypes::overrrideDateValidator("YYYY-MM-DD");
     $regexValidator = Application_Form_Helper_ValidationTypes::overrideRegexValidator("/^[0-2]?[0-9]:[0-5][0-9]\$/", _("'%value%' does not fit the time format 'HH:mm'"));
     // Add start date element
     $startDate = new Zend_Form_Element_Text('add_show_start_date');
     $startDate->class = 'input_text';
     $startDate->setRequired(true)->setLabel(_('Date/Time Start:'))->setValue(date("Y-m-d"))->setFilters(array('StringTrim'))->setValidators(array($notEmptyValidator, $dateValidator))->setDecorators(array('ViewHelper'));
     $startDate->setAttrib('alt', 'date');
     $this->addElement($startDate);
     // Add start time element
     $startTime = new Zend_Form_Element_Text('add_show_start_time');
     $startTime->class = 'input_text';
     $startTime->setRequired(true)->setValue('00:00')->setFilters(array('StringTrim'))->setValidators(array($notEmptyValidator, $regexValidator))->setDecorators(array('ViewHelper'));
     $startTime->setAttrib('alt', 'time');
     $this->addElement($startTime);
     // Add end date element
     $endDate = new Zend_Form_Element_Text('add_show_end_date_no_repeat');
     $endDate->class = 'input_text';
     $endDate->setRequired(true)->setLabel(_('Date/Time End:'))->setValue(date("Y-m-d"))->setFilters(array('StringTrim'))->setValidators(array($notEmptyValidator, $dateValidator))->setDecorators(array('ViewHelper'));
     $endDate->setAttrib('alt', 'date');
     $this->addElement($endDate);
     // Add end time element
     $endTime = new Zend_Form_Element_Text('add_show_end_time');
     $endTime->class = 'input_text';
     $endTime->setRequired(true)->setValue('01:00')->setFilters(array('StringTrim'))->setValidators(array($notEmptyValidator, $regexValidator))->setDecorators(array('ViewHelper'));
     $endTime->setAttrib('alt', 'time');
     $this->addElement($endTime);
     // Add duration element
     $this->addElement('text', 'add_show_duration', array('label' => _('Duration:'), 'class' => 'input_text', 'value' => '01h 00m', 'readonly' => true, 'decorators' => array('ViewHelper')));
     $timezone = new Zend_Form_Element_Select('add_show_timezone');
     $timezone->setRequired(true)->setLabel(_("Timezone:"))->setMultiOptions(Application_Common_Timezone::getTimezones())->setValue(Application_Model_Preference::GetUserTimezone())->setAttrib('class', 'input_select add_show_input_select')->setDecorators(array('ViewHelper'));
     $this->addElement($timezone);
     // Add repeats element
     $this->addElement('checkbox', 'add_show_repeats', array('label' => _('Repeats?'), 'required' => false, 'decorators' => array('ViewHelper')));
 }