X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FMailing%2FBAO%2FMailing.php;h=18c7fd3f077a5ba80f3fd767e5bdc71022f5b469;hb=0bc483648ce59a68bb752827b218f6976689660e;hp=c715da7865e357ac7ee462aed7352dc05516960d;hpb=01cfa0fdb7ff05c39e18bac68fbf0fd11dcb8e0f;p=civicrm-core.git diff --git a/CRM/Mailing/BAO/Mailing.php b/CRM/Mailing/BAO/Mailing.php index c715da7865..18c7fd3f07 100644 --- a/CRM/Mailing/BAO/Mailing.php +++ b/CRM/Mailing/BAO/Mailing.php @@ -2637,19 +2637,10 @@ LEFT JOIN civicrm_mailing_group g ON g.mailing_id = m.id */ public static function commonCompose(&$form) { //get the tokens. - $tokens = CRM_Core_SelectValues::contactTokens(); + $tokens = array(); - $className = CRM_Utils_System::getClassName($form); - if ($className == 'CRM_Mailing_Form_Upload') { - $tokens = array_merge(CRM_Core_SelectValues::mailingTokens(), $tokens); - } - elseif ($className == 'CRM_Admin_Form_ScheduleReminders') { - $tokens = array_merge(CRM_Core_SelectValues::activityTokens(), $tokens); - $tokens = array_merge(CRM_Core_SelectValues::eventTokens(), $tokens); - $tokens = array_merge(CRM_Core_SelectValues::membershipTokens(), $tokens); - } - elseif ($className == 'CRM_Event_Form_ManageEvent_ScheduleReminders') { - $tokens = array_merge(CRM_Core_SelectValues::eventTokens(), $tokens); + if (method_exists($form, 'listTokens')) { + $tokens = array_merge($form->listTokens(), $tokens); } //sorted in ascending order tokens by ignoring word case @@ -2660,6 +2651,8 @@ LEFT JOIN civicrm_mailing_group g ON g.mailing_id = m.id $textFields = array('text_message' => ts('HTML Format'), 'sms_text_message' => ts('SMS Message')); $modePrefixes = array('Mail' => NULL, 'SMS' => 'SMS'); + $className = CRM_Utils_System::getClassName($form); + if ($className != 'CRM_SMS_Form_Upload' && $className != 'CRM_Contact_Form_Task_SMS' && $className != 'CRM_Contact_Form_Task_SMS' ) { @@ -2704,7 +2697,6 @@ LEFT JOIN civicrm_mailing_group g ON g.mailing_id = m.id else { $templates[$prefix] = CRM_Core_BAO_MessageTemplate::getMessageTemplates(FALSE); } - if (!empty($templates[$prefix])) { $form->assign('templates', TRUE); @@ -2720,60 +2712,11 @@ LEFT JOIN civicrm_mailing_group g ON g.mailing_id = m.id ); $form->add('text', "{$prefix}saveTemplateName", ts('Template Title')); } - } - /** - * 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)", - ) - ); + // I'm not sure this is ever called. $action = CRM_Utils_Request::retrieve('action', 'String', $form, FALSE); if ((CRM_Utils_System::getClassName($form) == 'CRM_Contact_Form_Task_PDF') && - $action == CRM_Core_Action::VIEW + $action == CRM_Core_Action::VIEW ) { $form->freeze('html_message'); } @@ -2906,17 +2849,13 @@ WHERE civicrm_mailing_job.id = %1 // CRM-8460 $gotCronLock = FALSE; - if (property_exists($config, 'mailerJobsMax') && $config->mailerJobsMax && $config->mailerJobsMax > 1) { + if (property_exists($config, 'mailerJobsMax') && $config->mailerJobsMax && $config->mailerJobsMax > 0) { $lockArray = range(1, $config->mailerJobsMax); shuffle($lockArray); // check if we are using global locks - $serverWideLock = CRM_Core_BAO_Setting::getItem( - CRM_Core_BAO_Setting::MAILING_PREFERENCES_NAME, - 'civimail_server_wide_lock' - ); foreach ($lockArray as $lockID) { - $cronLock = new CRM_Core_Lock("civimail.cronjob.{$lockID}", NULL, $serverWideLock); + $cronLock = Civi\Core\Container::singleton()->get('lockManager')->acquire("worker.mailing.send.{$lockID}"); if ($cronLock->isAcquired()) { $gotCronLock = TRUE; break; @@ -2928,6 +2867,11 @@ WHERE civicrm_mailing_job.id = %1 CRM_Core_Error::debug_log_message('Returning early, since max number of cronjobs running'); return TRUE; } + + if (getenv('CIVICRM_CRON_HOLD')) { + // In testing, we may need to simulate some slow activities. + sleep(getenv('CIVICRM_CRON_HOLD')); + } } // load bootstrap to call hooks