/** * The form for selecting the patch level * * @return \Gems_Form */ protected function _getSelectForm() { $form = new \Gems_Form(array('name' => 'autosubmit', 'class' => 'form-inline', 'role' => 'form')); $form->setHtml('div'); $div = $form->getHtml(); $div->class = 'search'; $span = $div->div(array('class' => 'panel panel-default'))->div(array('class' => 'inputgroup panel-body')); $element = $form->createElement('select', 'gpa_level', array('multiOptions' => $this->patchLevels, 'onchange' => 'this.form.submit();', 'onkeyup' => 'this.form.submit();')); $element->setValue($this->getPatchLevel()); $span->input($element); $form->addElement($element); $submit = $form->createElement('submit', 'search', array('label' => $this->_('Search'), 'class' => 'button small')); $span->input($submit); $form->addElement($submit); return $form; }
/** * Add an element to the form, when a tab (subform) had been added, it will return * the subform instead of the form, keep this in mind when chaining methods * * @param string|\Zend_Form_Element $element * @param string $name * @param array|\Zend_Config $options * @throws \Zend_Form_Exception on invalid element * @return \Gems_TabForm|\Gems_Form_TabSubForm */ public function addElement($element, $name = null, $options = null) { if ($this->currentTab) { return $this->currentTab->addElement($element, $name, $options); } else { parent::addElement($element, $name, $options); if (is_string($element)) { $element = $this->getElement($name); } //$this->addToOtherGroup($element); // Causes duplicate links on old browse edit if ($element instanceof \Zend_Form_Element_Hidden) { //Remove decorators $element->removeDecorator('HtmlTag'); $element->removeDecorator('Label'); $element->removeDecorator('DtDdWrapper'); } elseif ($element instanceof \Zend_Form_Element) { $element->removeDecorator('DtDdWrapper'); if ($element instanceof \MUtil_Form_Element_Html) { $element->removeDecorator('HtmlTag'); $element->removeDecorator('Label'); } $error = $element->getDecorator('Errors'); if ($error instanceof \Zend_Form_Decorator_Errors) { $element->removeDecorator('Errors'); $element->addDecorator($error); } } return $this; } }
/** * Creates a fake form so that it is (slightly) easier to * copy and paste a token. * * @param string $value Gems token value * @return \Gems_Form */ public static function makeFakeForm($value) { $form = new \Gems_Form(); $form->removeDecorator('HtmlTag'); $element = new \Zend_Form_Element_Text('gto_id_token'); $element->class = 'token_copy'; $element->setDecorators(array('ViewHelper', array('HtmlTag', 'Div'))); $form->addElement($element); $form->isValid(array('gto_id_token' => \MUtil_Lazy::call('strtoupper', $value))); return $form; }
/** * Constructs the form * * @param boolean $hideGroup When true group checkbox is hidden * @return \Gems_Form_TableForm */ public function getForm($hideGroup = false) { $form = new \Gems_Form(); $form->setAttrib('target', '_blank'); if ($hideGroup) { $element = new \Zend_Form_Element_Hidden('group'); } else { $element = new \Zend_Form_Element_Checkbox('group'); $element->setLabel($this->_('Group surveys')); } $element->setValue(1); $form->addElement($element); $element = new \Zend_Form_Element_Select('format'); $element->setLabel($this->_('Output format')); $outputFormats = array('html' => 'HTML'); if ($this->_pdf->hasPdfExport()) { $outputFormats['pdf'] = 'PDF'; $element->setValue('pdf'); } $element->setMultiOptions($outputFormats); $form->addElement($element); $element = new \Zend_Form_Element_Submit('export'); $element->setLabel($this->_('Export'))->setAttrib('class', 'button'); $form->addElement($element); $links = $this->menu->getMenuList(); $links->addParameterSources($this->request, $this->menu->getParameterSource()); $links->addCurrentParent($this->_('Cancel')); if (count($links)) { $element = new \MUtil_Form_Element_Html('menuLinks'); $element->setValue($links); // $element->setOrder(999); $form->addElement($element); } return $form; }