/** * Get all mail approval status. * * The static array approvalStatus is returned * * @access public * @static * * @return array - array reference of all mail approval statuses * */ public static function &approvalStatus() { if (!self::$approvalStatus) { self::$approvalStatus = CRM_Core_OptionGroup::values('mail_approval_status'); } return self::$approvalStatus; }
public static function getMailingTokenReplacement($token, &$mailing, $escapeSmarty = false) { $value = ''; switch ($token) { case 'name': $value = $mailing ? $mailing->name : 'Mailing Name'; break; case 'group': $groups = $mailing ? $mailing->getGroupNames() : array('Mailing Groups'); $value = implode(', ', $groups); break; case 'subject': $value = $mailing->subject; break; case 'viewUrl': $value = CRM_Utils_System::url('civicrm/mailing/view', "reset=1&id={$mailing->id}", true, null, false, true); break; case 'editUrl': $value = CRM_Utils_System::url('civicrm/mailing/send', "reset=1&mid={$mailing->id}&continue=true", true, null, false, true); break; case 'scheduleUrl': $value = CRM_Utils_System::url('civicrm/mailing/schedule', "reset=1&mid={$mailing->id}", true, null, false, true); break; case 'html': require_once 'CRM/Mailing/Page/View.php'; $page = new CRM_Mailing_Page_View(); $value = $page->run($mailing->id, false); break; case 'approvalStatus': require_once 'CRM/Mailing/PseudoConstant.php'; $mailApprovalStatus = CRM_Mailing_PseudoConstant::approvalStatus(); $value = $mailApprovalStatus[$mailing->approval_status_id]; break; case 'approvalNote': $value = $mailing->approval_note; break; case 'approveUrl': $value = CRM_Utils_System::url('civicrm/mailing/approve', "reset=1&mid={$mailing->id}", true, null, false, true); break; case 'creator': $value = CRM_Contact_BAO_Contact::displayName($mailing->created_id); break; case 'creatorEmail': $value = CRM_Contact_BAO_Contact::getPrimaryEmail($mailing->created_id); break; default: $value = "{mailing.{$token}}"; break; } if ($escapeSmarty) { $value = self::tokenEscapeSmarty($value); } return $value; }
/** * Build the form for the approval/rejection mailing * * @param * * @return void * @access public */ public function buildQuickform() { $title = ts('Approve/Reject Mailing') . " - {$this->_mailing->name}"; CRM_Utils_System::setTitle($title); $this->addElement('textarea', 'approval_note', ts('Approve/Reject Note')); $mailApprovalStatus = CRM_Mailing_PseudoConstant::approvalStatus(); // eliminate the none option $noneOptionID = CRM_Core_OptionGroup::getValue('mail_approval_status', 'None', 'name'); if ($noneOptionID) { unset($mailApprovalStatus[$noneOptionID]); } $this->addRadio('approval_status_id', ts('Approval Status'), $mailApprovalStatus, TRUE, NULL, TRUE); $buttons = array(array('type' => 'next', 'name' => ts('Save'), 'spacing' => ' ', 'isDefault' => TRUE), array('type' => 'cancel', 'name' => ts('Cancel'))); $this->addButtons($buttons); // add the preview elements $preview = array(); $preview['subject'] = CRM_Core_DAO::getFieldValue('CRM_Mailing_DAO_Mailing', $this->_mailingID, 'subject'); $preview['viewURL'] = CRM_Utils_System::url('civicrm/mailing/view', "reset=1&id={$this->_mailingID}"); $preview['type'] = $this->_mailing->body_html ? 'html' : 'text'; $preview['attachment'] = CRM_Core_BAO_File::attachmentInfo('civicrm_mailing', $this->_mailingID); $this->assign_by_ref('preview', $preview); }
/** * Get all mail approval status. * * The static array approvalStatus is returned * * @access public * @static * * @return array - array reference of all mail approval statuses * */ public static function &approvalStatus() { if (!self::$approvalStatus) { require_once 'CRM/Core/OptionGroup.php'; self::$approvalStatus = CRM_Core_OptionGroup::values('mail_approval_status'); } return self::$approvalStatus; }