/** * Prepare the signature form with the default message. * * @param CRM_Campaign_Form_Petition_Signature $form * The petition form. */ public function buildSigForm($form) { $defaults = $form->getVar('_defaults'); $messageField = $this->findMessageField(); if ($messageField === FALSE) { return; } if (empty($this->petitionEmailVal[$this->fields['Default_Message']])) { return; } else { $defaultMessage = $this->petitionEmailVal[$this->fields['Default_Message']]; } foreach ($form->_elements as $element) { if ($element->_attributes['name'] == $messageField) { $element->_value = $defaultMessage; } } $defaults[$messageField] = $form->_defaultValues[$messageField] = $defaultMessage; $form->setVar('_defaults', $defaults); }
/** * Prepare the signature form with the default message. * * @param CRM_Campaign_Form_Petition_Signature $form * The petition form. */ public function buildSigForm($form) { $defaults = $form->getVar('_defaults'); $messageField = $this->findMessageField(); if ($messageField === FALSE) { return; } if (!empty($this->petitionEmailVal[$this->fields['Default_Message']])) { $defaults[$messageField] = $this->petitionEmailVal[$this->fields['Default_Message']]; $form->setDefaults($defaults); } // Display the option to send a CC. if (!empty($this->petitionEmailVal[$this->fields['CC_Staff_Address']]) && !empty($this->petitionEmailVal[$this->fields['CC_Staff_Text']])) { $form->addElement('checkbox', 'send_cc', $this->petitionEmailVal[$this->fields['CC_Staff_Text']]); $defaults['send_cc'] = TRUE; $form->setDefaults($defaults); CRM_Core_Region::instance('form-body')->add(array('template' => 'CRM/Statelegemail/Form/SendCC.tpl')); } $addressFields = $this->findAddressFields(); $jsVars = array_merge(array_fill_keys($this->addressFields, NULL), $addressFields); $jsVars['message'] = $messageField; $form->addElement('text', 'selected_leges', ts('Selected legislator IDs', array('domain' => 'com.aghstrategies.statelegemail'))); CRM_Core_Region::instance('form-body')->add(array('template' => 'CRM/Statelegemail/Form/SelectedLeges.tpl')); CRM_Core_Resources::singleton()->addScriptFile('com.aghstrategies.statelegemail', 'js/sigform.js')->addVars('statelegemail', $jsVars); $form->addButtons(array(array('type' => 'next', 'name' => ts('Send', array('domain' => 'com.aghstrategies.statelegemail')), 'isDefault' => TRUE))); }