public function run() { $lock = Civi\Core\Container::singleton()->get('lockManager')->acquire('worker.report.CiviReportMail'); if ($lock->isAcquired()) { // try to unset any time limits if (!ini_get('safe_mode')) { set_time_limit(0); } // if there are named sets of settings, use them - otherwise use the default (null) require_once 'CRM/Report/Utils/Report.php'; $result = CRM_Report_Utils_Report::processReport(); echo $result['messages']; } else { throw new Exception('Could not acquire lock, another CiviReportMail process is running'); } $lock->release(); }
function run() { require_once 'CRM/Core/Lock.php'; $lock = new CRM_Core_Lock('CiviReportMail'); if ($lock->isAcquired()) { // try to unset any time limits if (!ini_get('safe_mode')) { set_time_limit(0); } // if there are named sets of settings, use them - otherwise use the default (null) require_once 'CRM/Report/Utils/Report.php'; $result = CRM_Report_Utils_Report::processReport(); echo $result['messages']; } else { throw new Exception('Could not acquire lock, another CiviReportMail process is running'); } $lock->release(); }
/** * Execute a specific report instance and send the output via email. * * @param array $params * (reference ) input parameters. * sendmail - Boolean - should email be sent?, required * instanceId - Integer - the report instance ID * resetVal - Integer - should we reset form state (always true)? * * @return array */ function civicrm_api3_job_mail_report($params) { $result = CRM_Report_Utils_Report::processReport($params); if ($result['is_error'] == 0) { // this should be handling by throwing exceptions but can't remove until we can test that. return civicrm_api3_create_success(); } else { return civicrm_api3_create_error($result['messages']); } }
/** * Execute a specific report instance and send the output via email * * @param array $params (reference ) input parameters * sendmail - Boolean - should email be sent?, required * instanceId - Integer - the report instance ID * resetVal - Integer - should we reset form state (always true)? * * @return boolean true if success, else false * @static void * @access public * */ function civicrm_api3_job_mail_report($params) { require_once 'CRM/Report/Utils/Report.php'; $result = CRM_Report_Utils_Report::processReport($params); if ($result['is_error'] == 0) { return civicrm_api3_create_success(); } else { return civicrm_api3_create_error($result['messages']); } }