/**
  * Adds elements from the model to the bridge that creates the form.
  *
  * @param \MUtil_Model_Bridge_FormBridgeInterface $bridge
  * @param \MUtil_Model_ModelAbstract $model
  */
 protected function addFormElements(\MUtil_Model_Bridge_FormBridgeInterface $bridge, \MUtil_Model_ModelAbstract $model)
 {
     $this->mailElements->setForm($bridge->getForm());
     $this->initItems();
     $this->addItems($bridge, 'gct_name');
     $this->addItems($bridge, 'gct_id_template', 'gct_target');
     $this->addItems($bridge, 'gct_code');
     $bridge->getForm()->getElement('gct_target')->setAttrib('onchange', 'this.form.submit()');
     $defaultTab = $this->project->getLocaleDefault();
     $this->mailElements->addFormTabs($bridge, 'gctt', 'active', $defaultTab, 'tabcolumn', 'gctt_lang', 'selectedTabElement', 'send_language');
     $config = array('extraPlugins' => 'bbcode,availablefields', 'toolbar' => array(array('Source', '-', 'Undo', 'Redo'), array('Find', 'Replace', '-', 'SelectAll', 'RemoveFormat'), array('Link', 'Unlink', 'Image', 'SpecialChar'), '/', array('Bold', 'Italic', 'Underline'), array('NumberedList', 'BulletedList', '-', 'Blockquote'), array('Maximize'), array('availablefields')));
     $mailfields = $this->mailer->getMailFields();
     foreach ($mailfields as $field => $value) {
         $mailfields[$field] = utf8_encode($value);
     }
     $config['availablefields'] = $mailfields;
     $config['availablefieldsLabel'] = $this->_('Fields');
     $this->view->inlineScript()->prependScript("\n            CKEditorConfig = " . \Zend_Json::encode($config) . ";\n            ");
     $bridge->addFakeSubmit('preview', array('label' => $this->_('Preview')));
     $bridge->addElement($this->mailElements->createEmailElement('to', $this->_('To (test)'), false));
     $bridge->addElement($this->mailElements->createEmailElement('from', $this->_('From'), false));
     //$bridge->addRadio('send_language', array('label' => $this->_('Test language'), 'multiOptions' => ))
     $bridge->addHidden('send_language');
     $bridge->addFakeSubmit('sendtest', array('label' => $this->_('Send (test)')));
     $bridge->addElement($this->getSaveButton($bridge->getForm()));
     $bridge->addElement($this->mailElements->createPreviewHtmlElement('Preview HTML'));
     $bridge->addElement($this->mailElements->createPreviewTextElement('Preview Text'));
     $bridge->addHtml('available_fields', array('label' => $this->_('Available fields')));
 }