コード例 #1
0
 function browse()
 {
     CRM_Core_Resources::singleton()->addScriptFile('civicrm', 'js/crm.livePage.js');
     $campaigns = CRM_Campaign_BAO_Campaign::getCampaignSummary();
     if (!empty($campaigns)) {
         $campaignType = CRM_Core_PseudoConstant::campaignType();
         $campaignStatus = CRM_Core_PseudoConstant::campaignStatus();
         foreach ($campaigns as $cmpid => $campaign) {
             $campaigns[$cmpid]['campaign_id'] = $campaign['id'];
             $campaigns[$cmpid]['title'] = $campaign['title'];
             $campaigns[$cmpid]['name'] = $campaign['name'];
             $campaigns[$cmpid]['description'] = $campaign['description'];
             $campaigns[$cmpid]['campaign_type_id'] = $campaignType[$campaign['campaign_type_id']];
             $campaigns[$cmpid]['status_id'] = $campaignStatus[$campaign['status_id']];
             $action = array_sum(array_keys($this->actionLinks()));
             if ($campaign['is_active']) {
                 $action -= CRM_Core_Action::ENABLE;
             } else {
                 $action -= CRM_Core_Action::DISABLE;
             }
             $campaigns[$cmpid]['action'] = CRM_Core_Action::formLink(self::actionLinks(), $action, array('id' => $campaign['id']), ts('more'), FALSE, 'campaign.selector.row', 'Campaign', $campaign['id']);
         }
     }
     $this->assign('campaigns', $campaigns);
     $this->assign('addCampaignUrl', CRM_Utils_System::url('civicrm/campaign/add', 'reset=1&action=add'));
 }
コード例 #2
0
ファイル: Campaign.php プロジェクト: hguru/224Civi
 function browse()
 {
     $campaigns = CRM_Campaign_BAO_Campaign::getCampaignSummary();
     if (!empty($campaigns)) {
         $campaignType = CRM_Core_PseudoConstant::campaignType();
         $campaignStatus = CRM_Core_PseudoConstant::campaignStatus();
         foreach ($campaigns as $cmpid => $campaign) {
             $campaigns[$cmpid]['campaign_id'] = $campaign['id'];
             $campaigns[$cmpid]['title'] = $campaign['title'];
             $campaigns[$cmpid]['name'] = $campaign['name'];
             $campaigns[$cmpid]['description'] = $campaign['description'];
             $campaigns[$cmpid]['campaign_type_id'] = $campaignType[$campaign['campaign_type_id']];
             $campaigns[$cmpid]['status_id'] = $campaignStatus[$campaign['status_id']];
             $action = array_sum(array_keys($this->actionLinks()));
             if ($campaign['is_active']) {
                 $action -= CRM_Core_Action::ENABLE;
             } else {
                 $action -= CRM_Core_Action::DISABLE;
             }
             $campaigns[$cmpid]['action'] = CRM_Core_Action::formLink(self::actionLinks(), $action, array('id' => $campaign['id']));
         }
     }
     $this->assign('campaigns', $campaigns);
     $this->assign('addCampaignUrl', CRM_Utils_System::url('civicrm/campaign/add', 'reset=1&action=add'));
 }
コード例 #3
0
ファイル: AJAX.php プロジェクト: konadave/civicrm-core
 /**
  * This function uses the deprecated v1 datatable api and needs updating. See CRM-16353.
  * @deprecated
  */
 public function campaignList()
 {
     //get the search criteria params.
     $searchCriteria = CRM_Utils_Request::retrieve('searchCriteria', 'String', CRM_Core_DAO::$_nullObject, FALSE, NULL, 'POST');
     $searchParams = explode(',', $searchCriteria);
     $params = $searchRows = array();
     foreach ($searchParams as $param) {
         if (isset($_POST[$param])) {
             $params[$param] = $_POST[$param];
         }
     }
     //this is sequence columns on datatable.
     $selectorCols = array('id', 'name', 'title', 'description', 'start_date', 'end_date', 'campaign_type_id', 'campaign_type', 'status_id', 'status', 'is_active', 'isActive', 'action');
     // get the data table params.
     $dataTableParams = array('sEcho' => array('name' => 'sEcho', 'type' => 'Integer', 'default' => 0), 'offset' => array('name' => 'iDisplayStart', 'type' => 'Integer', 'default' => 0), 'rowCount' => array('name' => 'iDisplayLength', 'type' => 'Integer', 'default' => 25), 'sort' => array('name' => 'iSortCol_0', 'type' => 'Integer', 'default' => 'start_date'), 'sortOrder' => array('name' => 'sSortDir_0', 'type' => 'String', 'default' => 'desc'));
     foreach ($dataTableParams as $pName => $pValues) {
         ${$pName} = $pValues['default'];
         if (!empty($_POST[$pValues['name']])) {
             ${$pName} = CRM_Utils_Type::escape($_POST[$pValues['name']], $pValues['type']);
             if ($pName == 'sort') {
                 ${$pName} = $selectorCols[${$pName}];
             }
         }
     }
     foreach (array('sort', 'offset', 'rowCount', 'sortOrder') as $sortParam) {
         $params[$sortParam] = ${$sortParam};
     }
     $searchCount = CRM_Campaign_BAO_Campaign::getCampaignSummary($params, TRUE);
     $campaigns = CRM_Campaign_Page_DashBoard::getCampaignSummary($params);
     $iTotal = $searchCount;
     if ($searchCount > 0) {
         if ($searchCount < $offset) {
             $offset = 0;
         }
         foreach ($campaigns as $campaignID => $values) {
             foreach ($selectorCols as $col) {
                 $searchRows[$campaignID][$col] = CRM_Utils_Array::value($col, $values);
             }
         }
     }
     $selectorElements = $selectorCols;
     $iFilteredTotal = $iTotal;
     CRM_Utils_System::setHttpHeader('Content-Type', 'application/json');
     echo CRM_Utils_JSON::encodeDataTableSelector($searchRows, $sEcho, $iTotal, $iFilteredTotal, $selectorElements);
     CRM_Utils_System::civiExit();
 }
コード例 #4
0
ファイル: DashBoard.php プロジェクト: nielosz/civicrm-core
 /**
  * @param array $params
  *
  * @return array
  */
 public static function getCampaignSummary($params = array())
 {
     $campaignsData = array();
     //get the campaigns.
     $campaigns = CRM_Campaign_BAO_Campaign::getCampaignSummary($params);
     if (!empty($campaigns)) {
         $config = CRM_Core_Config::singleton();
         $campaignType = CRM_Campaign_PseudoConstant::campaignType();
         $campaignStatus = CRM_Campaign_PseudoConstant::campaignStatus();
         $properties = array('id', 'name', 'title', 'status_id', 'description', 'campaign_type_id', 'is_active', 'start_date', 'end_date');
         foreach ($campaigns as $cmpid => $campaign) {
             foreach ($properties as $prop) {
                 $campaignsData[$cmpid][$prop] = CRM_Utils_Array::value($prop, $campaign);
             }
             $statusId = CRM_Utils_Array::value('status_id', $campaign);
             $campaignsData[$cmpid]['status'] = CRM_Utils_Array::value($statusId, $campaignStatus);
             $campaignsData[$cmpid]['campaign_id'] = $campaign['id'];
             $campaignsData[$cmpid]['campaign_type'] = $campaignType[$campaign['campaign_type_id']];
             $action = array_sum(array_keys(self::campaignActionLinks()));
             if ($campaign['is_active']) {
                 $action -= CRM_Core_Action::ENABLE;
             } else {
                 $action -= CRM_Core_Action::DISABLE;
             }
             $isActive = ts('No');
             if ($campaignsData[$cmpid]['is_active']) {
                 $isActive = ts('Yes');
             }
             $campaignsData[$cmpid]['isActive'] = $isActive;
             if (!empty($campaignsData[$cmpid]['start_date'])) {
                 $campaignsData[$cmpid]['start_date'] = CRM_Utils_Date::customFormat($campaignsData[$cmpid]['start_date'], $config->dateformatFull);
             }
             if (!empty($campaignsData[$cmpid]['end_date'])) {
                 $campaignsData[$cmpid]['end_date'] = CRM_Utils_Date::customFormat($campaignsData[$cmpid]['end_date'], $config->dateformatFull);
             }
             $campaignsData[$cmpid]['action'] = CRM_Core_Action::formLink(self::campaignActionLinks(), $action, array('id' => $campaign['id']), ts('more'), FALSE, 'campaign.dashboard.row', 'Campaign', $campaign['id']);
         }
     }
     return $campaignsData;
 }