- /**
- * Build the compose PDF letter form.
- *
- * @param CRM_Core_Form $form
- *
- * @return void
- */
- public static function commonLetterCompose(&$form) {
- //get the tokens.
- $tokens = CRM_Core_SelectValues::contactTokens();
- if (CRM_Utils_System::getClassName($form) == 'CRM_Mailing_Form_Upload') {
- $tokens = array_merge(CRM_Core_SelectValues::mailingTokens(), $tokens);
- }
- //@todo move this fn onto the form
- if (CRM_Utils_System::getClassName($form) == 'CRM_Contribute_Form_Task_PDFLetter') {
- $tokens = array_merge(CRM_Core_SelectValues::contributionTokens(), $tokens);
- }
-
- if (method_exists($form, 'listTokens')) {
- $tokens = array_merge($form->listTokens(), $tokens);
- }
-
- $form->assign('tokens', CRM_Utils_Token::formatTokensForDisplay($tokens));
-
- $form->_templates = CRM_Core_BAO_MessageTemplate::getMessageTemplates(FALSE);
- if (!empty($form->_templates)) {
- $form->assign('templates', TRUE);
- $form->add('select', 'template', ts('Select Template'),
- array(
- '' => ts('- select -'),
- ) + $form->_templates, FALSE,
- array('onChange' => "selectValue( this.value,'' );")
- );
- $form->add('checkbox', 'updateTemplate', ts('Update Template'), NULL);
- }
-
- $form->add('checkbox', 'saveTemplate', ts('Save As New Template'), NULL, FALSE,
- array('onclick' => "showSaveDetails(this);")
- );
- $form->add('text', 'saveTemplateName', ts('Template Title'));
-
- $form->add('wysiwyg', 'html_message',
- ts('Your Letter'),
- array(
- 'cols' => '80',
- 'rows' => '8',
- 'onkeyup' => "return verify(this)",
- )
- );