示例#1
0
/**
 * Civirules.Cron API
 *
 * @param array $params
 * @return array API result descriptor
 * @see civicrm_api3_create_success
 * @see civicrm_api3_create_error
 * @throws API_Exception
 */
function civicrm_api3_civirules_cron($params)
{
    $returnValues = array();
    $rules = CRM_Civirules_BAO_Rule::findRulesForCron();
    foreach ($rules as $rule) {
        $return = $rule->process();
        $triggeredEntities = $return['count'];
        $triggeredActions = $return['is_valid_count'];
        $returnValues[$rule->getRuleId()] = array('rule' => CRM_Civirules_BAO_Rule::getRuleLabelWithId($rule->getRuleId()), 'triggered_entities' => $triggeredEntities, 'triggered_actions' => $triggeredActions);
    }
    return civicrm_api3_create_success($returnValues, $params, 'Civirules', 'cron');
}