Example #1
0
function check_for_schedule(&$focus, $workflow_id, $time_array)
{
    // Check to see if it exists
    $wflow_schedule = new WorkFlowSchedule();
    $is_update = $wflow_schedule->check_existing_trigger($focus->id, $workflow_id);
    if (isset($time_array['parameters'])) {
        $wflow_schedule->parameters = $time_array['parameters'];
    }
    // If new record, set the data
    if (!$is_update) {
        $wflow_schedule->bean_id = $focus->id;
        $wflow_schedule->workflow_id = $workflow_id;
        $wflow_schedule->target_module = $focus->module_dir;
    }
    $wflow_schedule->set_time_interval($focus, $time_array, $is_update);
    if (!empty($wflow_schedule->date_expired)) {
        $wflow_schedule->save();
    }
}
<?php

if (!defined('sugarEntry') || !sugarEntry) {
    die('Not A Valid Entry Point');
}
/*
 * Your installation or use of this SugarCRM file is subject to the applicable
 * terms available at
 * http://support.sugarcrm.com/06_Customer_Center/10_Master_Subscription_Agreements/.
 * If you do not agree to all of the applicable terms or do not have the
 * authority to bind the entity as an authorized representative, then do not
 * install or use this SugarCRM file.
 *
 * Copyright (C) SugarCRM Inc. All rights reserved.
 */
require_once 'modules/WorkFlow/WorkFlowSchedule.php';
global $app_list_strings, $app_strings, $current_language;
$mod_strings = return_module_language('en_us', 'WorkFlow');
//run as admin
global $current_user;
$current_user = Scheduler::initUser();
$process_object = new WorkFlowSchedule();
$process_object->process_scheduled();
unset($process_object);
//sugar_cleanup(); // moved to cron.php
Example #3
0
 /**
  * Delete all schedules for the workflow
  *
  * @return void
  */
 public function deleteSchedules()
 {
     $query = "SELECT id FROM workflow_schedules WHERE workflow_schedules.workflow_id = '" . $this->db->quote($this->id) . "'";
     $result = $this->db->query($query, true, "Error getting workflow_schedules for workflow_id: " . $this->id);
     // Remove each workflow schedule by id
     $removeExpired = array();
     $workflowSchedule = new WorkFlowSchedule();
     while ($row = $this->db->fetchByAssoc($result)) {
         $removeExpired[] = $row['id'];
     }
     $workflowSchedule->remove_expired($removeExpired);
 }