コード例 #1
0
 /**
  * Browse all jobs.
  *
  * @param null $action
  *
  * @return void
  */
 public function browse($action = NULL)
 {
     $qm = new CRM_Queryrunner_QueryManager();
     // using Export action for Execute. Doh.
     if ($this->_action & CRM_Core_Action::EXPORT) {
         $qm->execute($this->_id, TRUE);
         $name = $qm->getNameFromId($this->_id);
         CRM_Core_Session::setStatus(ts("The {$name} query has been executed."), ts("Executed"), "success");
     }
     $freqs = CRM_Queryrunner_Query::getQueryFrequency();
     $rows = array();
     foreach ($qm->queries as $query) {
         $action = array_sum(array_keys($this->links()));
         if ($query->is_active) {
             $action -= CRM_Core_Action::ENABLE;
         } else {
             $action -= CRM_Core_Action::DISABLE;
         }
         $query->action = CRM_Core_Action::formLink(self::links(), $action, array('id' => $query->id), ts('more'), FALSE, 'query.manage.action', 'Query', $query->id);
         $query->last_run = $query->last_run ? date('M j, Y, g:ia', $query->last_run) : 'never';
         $query->scheduled_run = $query->scheduled_run ? date('M j, Y, g:ia', $query->scheduled_run) : '';
         $query->run_frequency = $freqs[$query->run_frequency];
         $query = get_object_vars($query);
         $rows[] = $query;
         if ($query['id'] == $this->_id) {
             $this->assign('query', $query);
         }
     }
     $this->assign('rows', $rows);
     if ($this->_action & CRM_Core_Action::PREVIEW) {
         $this->assign('server', isset($_SERVER['SERVER_NAME']) ? $_SERVER['SERVER_NAME'] : (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ''));
         $this->assign('doc_root', $_SERVER['DOCUMENT_ROOT']);
     }
 }
コード例 #2
0
function civicrm_api3_query_execute($params)
{
    $qm = new CRM_Queryrunner_QueryManager();
    return civicrm_api3_create_success($qm->execute($params));
}