public function saveLastRun($ts = 0, $scheduled = FALSE) { $dao = new CRM_Queryrunner_DAO_Query(); $dao->id = $this->id; $dao->last_run = $this->last_run = $ts ?: time(); if ($scheduled) { $dao->scheduled_run = 0; } $dao->save(); return $this->last_run; }
public function __construct() { $queries = array(); $dao = new CRM_Queryrunner_DAO_Query(); $dao->orderBy('name'); $dao->find(); while ($dao->fetch()) { $temp = array(); CRM_Core_DAO::storeValues($dao, $temp); $queries[$dao->id] = new CRM_Queryrunner_Query($temp); } $this->queries = $queries; }
/** * Function to delete the query * * @param $queryID * ID of the query to be deleted. * * @return bool|null */ public static function del($queryID) { if (!$queryID) { CRM_Core_Error::fatal(ts('Invalid value passed to delete function.')); } $dao = new CRM_Queryrunner_DAO_Query(); $dao->id = $queryID; if (!$dao->find(TRUE)) { return NULL; } if ($dao->delete()) { return TRUE; } }
/** * Process the form submission. * * * @return void */ public function postProcess() { CRM_Utils_System::flushCache('CRM_Queryrunner_DAO_Query'); if ($this->_action & CRM_Core_Action::DELETE) { CRM_Queryrunner_BAO_Query::del($this->_id); CRM_Core_Session::setStatus("", ts('Query Deleted.'), "success"); return; } $values = $this->controller->exportValues($this->_name); $ts = strtotime(trim("{$values['scheduled_run_date']} {$values['scheduled_run_date_time']}")); $dao = new CRM_Queryrunner_DAO_Query(); $dao->id = $this->_id; $dao->name = $values['name']; $dao->machine_name = strtolower(CRM_Utils_String::munge($dao->name, '_', null)); $dao->description = $values['description']; $dao->query = $values['query']; $dao->run_frequency = $values['run_frequency']; $dao->is_active = CRM_Utils_Array::value('is_active', $values, 0); $dao->scheduled_run = $ts ?: 0; $dao->save(); }
/** * Returns an array containing, for each field, the arary key used for that * field in self::$_fields. * * @return array */ static function &fieldKeys() { if (!self::$_fieldKeys) { self::$_fieldKeys = array('id' => 'id', 'name' => 'name', 'machine_name' => 'machine_name', 'description' => 'description', 'query' => 'query', 'run_frequency' => 'run_frequency', 'last_run' => 'last_run', 'scheduled_run' => 'scheduled_run', 'is_active' => 'is_active'); } return self::$_fieldKeys; }