/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.3 |
+ | CiviCRM version 4.5 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013 |
+ | Copyright CiviCRM LLC (c) 2004-2014 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
*
* @package CiviCRM_APIv3
* @subpackage API_Job
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
* $Id: Contact.php 30879 2010-11-22 15:45:55Z shot $
*
*/
* {@schema Core/Job.xml}
*/
function civicrm_api3_job_create($params) {
- require_once 'CRM/Utils/Rule.php';
-
- if (isset($params['id']) && !CRM_Utils_Rule::integer($params['id'])) {
- return civicrm_api3_create_error('Invalid value for job ID');
- }
-
- $dao = CRM_Core_BAO_Job::create($params);
-
- $result = array();
- _civicrm_api3_object_to_array($dao, $result[$dao->id]);
- return civicrm_api3_create_success($result, $params, 'job', 'create', $dao);
+ return _civicrm_api3_basic_create(_civicrm_api3_get_BAO(__FUNCTION__), $params);
}
/**
* @access public
*/
function civicrm_api3_job_delete($params) {
- require_once 'CRM/Utils/Rule.php';
if ($params['id'] != NULL && !CRM_Utils_Rule::integer($params['id'])) {
return civicrm_api3_create_error('Invalid value for job ID');
}
*
*/
function civicrm_api3_job_execute($params) {
- require_once 'CRM/Core/JobManager.php';
$facility = new CRM_Core_JobManager();
$facility->execute(FALSE);
*
*/
function civicrm_api3_job_geocode($params) {
-
- require_once 'CRM/Utils/Address/BatchUpdate.php';
$gc = new CRM_Utils_Address_BatchUpdate($params);
function _civicrm_api3_job_geocode_spec(&$params) {
$params['start'] = array('title' => 'Start Date');
$params['end'] = array('title' => 'End Date');
- $params['geocoding'] = array('title' => 'Is this for GeoCoding? (I think this is a 1,0 field?)');
- $params['parse'] = array('title' => 'Is this for parsing? (I think this is a 1,0 field?)');
- $params['throttle'] = array('title' => 'Throttle? (no idea what you enter in this field)');
+ $params['geocoding'] = array('title' => 'Geocode address?');
+ $params['parse'] = array('title' => 'Parse street address?');
+ $params['throttle'] = array('title' => 'Throttle? if enabled, geocodes at a slow rate');
}
/**
*
*/
function civicrm_api3_job_send_reminder($params) {
- require_once 'CRM/Core/Lock.php';
$lock = new CRM_Core_Lock('civimail.job.EmailProcessor');
if (!$lock->isAcquired()) {
return civicrm_api3_create_error('Could not acquire lock, another EmailProcessor process is running');
}
- require_once 'CRM/Core/BAO/ActionSchedule.php';
- $result = CRM_Core_BAO_ActionSchedule::processQueue(CRM_Utils_Array::value('now', $params));
+ $result = CRM_Core_BAO_ActionSchedule::processQueue(CRM_Utils_Array::value('now', $params), $params);
$lock->release();
if ($result['is_error'] == 0) {
return civicrm_api3_create_error($result['messages']);
}
}
-
+/**
+ * Adjust metadata for "send_reminder" action
+ *
+ * The metadata is used for setting defaults, documentation & validation
+ * @param array $params array or parameters determined by getfields
+ */
+function _civicrm_api3_job_send_reminder(&$params) {
+ //@todo this function will now take all fields in action_schedule as params
+ // as it is calling the api fn to set the filters - update getfields to reflect
+ $params['id'] = array(
+ 'type' => CRM_Utils_Type::T_INT,
+ 'title' => 'Action Schedule ID'
+ );
+}
/**
* Execute a specific report instance and send the output via email
*
* Job to get mail responses from civimailing
*/
function civicrm_api3_job_fetch_bounces($params) {
- require_once 'CRM/Utils/Mail/EmailProcessor.php';
- require_once 'CRM/Core/Lock.php';
$lock = new CRM_Core_Lock('civimail.job.EmailProcessor');
if (!$lock->isAcquired()) {
return civicrm_api3_create_error('Could not acquire lock, another EmailProcessor process is running');
* Job to get mail and create activities
*/
function civicrm_api3_job_fetch_activities($params) {
- require_once 'CRM/Utils/Mail/EmailProcessor.php';
- require_once 'CRM/Core/Lock.php';
$lock = new CRM_Core_Lock('civimail.job.EmailProcessor');
if (!$lock->isAcquired()) {
return civicrm_api3_create_error('Could not acquire lock, another EmailProcessor process is running');
* @access public
*/
function civicrm_api3_job_process_participant($params) {
- require_once 'CRM/Event/BAO/ParticipantStatusType.php';
$result = CRM_Event_BAO_ParticipantStatusType::process($params);
if (!$result['is_error']) {
* @access public
*/
function civicrm_api3_job_process_membership($params) {
- require_once 'CRM/Core/Lock.php';
$lock = new CRM_Core_Lock('civimail.job.updateMembership');
if (!$lock->isAcquired()) {
- return civicrm_api3_create_error('Could not acquire lock, another EmailProcessor process is running');
+ return civicrm_api3_create_error('Could not acquire lock, another Membership Processing process is running');
}
- require_once 'CRM/Member/BAO/Membership.php';
$result = CRM_Member_BAO_Membership::updateAllMembershipStatus();
$lock->release();
* @access public
*/
function civicrm_api3_job_process_respondent($params) {
- require_once 'CRM/Campaign/BAO/Survey.php';
$result = CRM_Campaign_BAO_Survey::releaseRespondent($params);
if ($result['is_error'] == 0) {
$mode = CRM_Utils_Array::value('mode', $params, 'safe');
$autoFlip = CRM_Utils_Array::value('auto_flip', $params, TRUE);
- require_once 'CRM/Dedupe/Merger.php';
$result = CRM_Dedupe_Merger::batchMerge($rgid, $gid, $mode, $autoFlip);
if ($result['is_error'] == 0) {
*/
function civicrm_api3_job_run_payment_cron($params) {
- require_once 'CRM/Core/Payment.php';
-
// live mode
CRM_Core_Payment::handlePaymentMethod(
'PaymentCron',
* @access public
*/
function civicrm_api3_job_cleanup( $params ) {
- require_once 'CRM/Utils/Array.php';
-
$session = CRM_Utils_Array::value( 'session' , $params, true );
$tempTable = CRM_Utils_Array::value( 'tempTables', $params, true );
$jobLog = CRM_Utils_Array::value( 'jobLog' , $params, true );
$memCache = CRM_Utils_Array::value( 'memCache' , $params, false );
if ( $session || $tempTable || $prevNext ) {
- require_once 'CRM/Core/BAO/Cache.php';
CRM_Core_BAO_Cache::cleanup( $session, $tempTable, $prevNext );
}
* and use the cache
*/
function civicrm_api3_job_group_rebuild( $params ) {
- require_once 'CRM/Core/Lock.php';
$lock = new CRM_Core_Lock('civimail.job.groupRebuild');
if (!$lock->isAcquired()) {
return civicrm_api3_create_error('Could not acquire lock, another EmailProcessor process is running');