/** * Adds elements from the model to the bridge that creates the form. * * Overrule this function to add different elements to the browse table, without * having to recode the core table building code. * * @param \MUtil_Model_Bridge_FormBridgeInterface $bridge * @param \MUtil_Model_ModelAbstract $model */ protected function addFormElements(\MUtil_Model_Bridge_FormBridgeInterface $bridge, \MUtil_Model_ModelAbstract $model) { $bridge->addElement($this->createToElement()); $bridge->addElement($this->mailElements->createMethodElement()); parent::addFormElements($bridge, $model); $bridge->addHidden('to'); }
/** * Adds elements from the model to the bridge that creates the form. * * Overrule this function to add different elements to the browse table, without * having to recode the core table building code. * * @param \MUtil_Model_Bridge_FormBridgeInterface $bridge * @param \MUtil_Model_ModelAbstract $model */ protected function addFormElements(\MUtil_Model_Bridge_FormBridgeInterface $bridge, \MUtil_Model_ModelAbstract $model) { if (!$this->createData) { $bridge->addHidden('gtr_id_track'); } $bridge->addText('gtr_track_name'); // gtr_track_class if ($this->trackEngine) { $options = $model->get('gtr_track_class', 'multiOptions'); $alternatives = $this->trackEngine->getConversionTargets($options); if (count($alternatives) > 1) { $options = $alternatives; $bridge->addHidden($this->_oldClassName); if (!isset($this->formData[$this->_oldClassName])) { $this->formData[$this->_oldClassName] = $this->formData['gtr_track_class']; } $classEdit = true; } else { $classEdit = false; } } else { $tracker = $this->loader->getTracker(); $options = $tracker->getTrackEngineList(true, true); $classEdit = true; } $model->set('gtr_track_class', 'multiOptions', $options, 'escape', false); if ($classEdit) { $bridge->addRadio('gtr_track_class'); } else { $bridge->addExhibitor('gtr_track_class'); } $bridge->addDate('gtr_date_start'); $bridge->addDate('gtr_date_until'); if (!$this->createData) { $bridge->addCheckbox('gtr_active'); } if ($model->has('gtr_code')) { $bridge->addText('gtr_code'); } if ($model->has('gtr_calculation_event', 'label')) { $bridge->add('gtr_calculation_event'); } if ($model->has('gtr_completed_event', 'label')) { $bridge->add('gtr_completed_event'); } if ($model->has('gtr_beforefieldupdate_event', 'label')) { $bridge->add('gtr_beforefieldupdate_event'); } if ($model->has('gtr_fieldupdate_event', 'label')) { $bridge->add('gtr_fieldupdate_event'); } $bridge->add('gtr_organizations'); if (\MUtil_Bootstrap::enabled()) { $element = new \MUtil_Bootstrap_Form_Element_ToggleCheckboxes('toggleOrg', array('selector' => 'input[name^=gtr_organizations]')); } else { $element = new \Gems_JQuery_Form_Element_ToggleCheckboxes('toggleOrg', array('selector' => 'input[name^=gtr_organizations]')); } $element->setLabel($this->_('Toggle')); $bridge->addElement($element); }
/** * Display a header * * @param \MUtil_Model_Bridge_FormBridgeInterface $bridge * @param mixed $header Header content * @param string $tagName */ protected function displayHeader(\MUtil_Model_Bridge_FormBridgeInterface $bridge, $header, $tagName = 'h2') { static $count = 0; $count += 1; $element = $bridge->getForm()->createElement('html', 'step_header_' . $count); $element->{$tagName}($header); $bridge->addElement($element); }
/** * Adds elements from the model to the bridge that creates the form. * * Overrule this function to add different elements to the browse table, without * having to recode the core table building code. * * @param \MUtil_Model_Bridge_FormBridgeInterface $bridge * @param \MUtil_Model_ModelAbstract $model */ protected function addFormElements(\MUtil_Model_Bridge_FormBridgeInterface $bridge, \MUtil_Model_ModelAbstract $model) { $bridge->addHtml('to', 'label', $this->_('To')); $bridge->addHtml('prefered_language', 'label', $this->_('Prefered Language')); $bridge->addElement($this->mailElements->createTemplateSelectElement('select_template', $this->_('Template'), $this->mailTarget, $this->templateOnly, true)); if ($this->templateOnly) { $bridge->addHidden('subject'); } else { $bridge->addText('subject', 'label', $this->_('Subject'), 'size', 50); } $mailBody = $bridge->addElement($this->mailElements->createBodyElement('mailBody', $this->_('Message'), $model->get('gctt_body', 'required'), $this->templateOnly)); if ($mailBody instanceof \Gems_Form_Element_CKEditor) { $mailBody->config['availablefields'] = $this->mailer->getMailFields(); $mailBody->config['availablefieldsLabel'] = $this->_('Fields'); $mailBody->config['extraPlugins'] .= ',availablefields'; $mailBody->config['toolbar'][] = array('availablefields'); } if (!$this->templateOnly) { $bridge->addFakeSubmit('preview', array('label' => $this->_('Preview'))); } $bridge->addElement($this->createFromSelect('from', $this->_('From'))); $bridge->addElement($this->mailElements->createSubmitButton('send', $this->_('Send'))); $bridge->addElement($this->mailElements->createPreviewHtmlElement('Preview HTML')); $bridge->addElement($this->mailElements->createPreviewTextElement('Preview Text')); if (!$this->templateOnly) { $bridge->addHtml('available_fields', array('label' => $this->_('Available fields'))); } }