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;
 }
 /**
  * Create the query
  *
  * @param array $params
  *   An assoc array of name/value pairs.
  *
  * @return CRM_Queryrunner_DAO_Query
  */
 public static function create($params)
 {
     $query = new CRM_Queryrunner_DAO_Query();
     $query->copyValues($params);
     return $query->save();
 }
 /**
  * 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();
 }