3 +--------------------------------------------------------------------+
4 | CiviCRM version 4.4 |
5 +--------------------------------------------------------------------+
6 | Copyright CiviCRM LLC (c) 2004-2013 |
7 +--------------------------------------------------------------------+
8 | This file is a part of CiviCRM. |
10 | CiviCRM is free software; you can copy, modify, and distribute it |
11 | under the terms of the GNU Affero General Public License |
12 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
14 | CiviCRM is distributed in the hope that it will be useful, but |
15 | WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
17 | See the GNU Affero General Public License for more details. |
19 | You should have received a copy of the GNU Affero General Public |
20 | License and the CiviCRM Licensing Exception along |
21 | with this program; if not, contact CiviCRM LLC |
22 | at info[AT]civicrm[DOT]org. If you have questions about the |
23 | GNU Affero General Public License or the licensing of CiviCRM, |
24 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
25 +--------------------------------------------------------------------+
31 * @copyright CiviCRM LLC (c) 2004-2013
37 * This class contains all the function that are called using AJAX
39 class CRM_Event_Page_AJAX
{
42 * Function for building Event combo box
45 $name = trim(CRM_Utils_Type
::escape($_GET['s'], 'String'));
49 $whereClause = " title LIKE '$name%' AND ( civicrm_event.is_template IS NULL OR civicrm_event.is_template = 0 )";
50 $includeOld = CRM_Utils_Request
::retrieve('includeOld', 'Boolean', CRM_Core_DAO
::$_nullObject, FALSE, TRUE);
52 $whereClause .= " AND ( end_date IS NULL OR end_date >= NOW() )";
55 SELECT civicrm_event.title AS title,
56 civicrm_event.id AS id,
57 civicrm_address.city AS city,
58 civicrm_event.start_date
60 LEFT JOIN civicrm_loc_block ON
61 civicrm_event.loc_block_id = civicrm_loc_block.id
62 LEFT JOIN civicrm_address ON
63 civicrm_loc_block.address_id = civicrm_address.id
69 $dao = CRM_Core_DAO
::executeQuery($query);
71 while ($dao->fetch()) {
73 foreach (array('title', 'city') as $field) {
74 if (isset($dao->$field)) {
75 array_push($fields, $dao->$field);
78 if (isset($dao->start_date
)) {
79 array_push($fields, CRM_Utils_Date
::customFormat($dao->start_date
));
81 $results[$dao->id
] = implode(' - ', $fields);
83 CRM_Core_Page_AJAX
::autocompleteResults($results);
87 * Function for building Event Type combo box
89 function eventType() {
90 $name = trim(CRM_Utils_Type
::escape($_GET['s'], 'String'));
94 $whereClause = " v.label LIKE '$name%' ";
97 SELECT v.label ,v.value
98 FROM civicrm_option_value v,
99 civicrm_option_group g
100 WHERE v.option_group_id = g.id
101 AND g.name = 'event_type'
106 $dao = CRM_Core_DAO
::executeQuery($query);
108 while ($dao->fetch()) {
109 $results[$dao->value
] = $dao->label
;
111 CRM_Core_Page_AJAX
::autocompleteResults($results);
115 * Function for building EventFee combo box
117 function eventFee() {
118 $name = trim(CRM_Utils_Type
::escape($_GET['s'], 'String'));
124 $whereClause = "cv.label LIKE '$name%' ";
126 $query = "SELECT DISTINCT (
129 FROM civicrm_price_field_value cv
130 LEFT JOIN civicrm_price_field cf ON cv.price_field_id = cf.id
131 LEFT JOIN civicrm_price_set_entity ce ON ce.price_set_id = cf.price_set_id
132 WHERE ce.entity_table = 'civicrm_event' AND {$whereClause}
134 $dao = CRM_Core_DAO
::executeQuery($query);
136 while ($dao->fetch()) {
137 $results[$dao->id
] = $dao->label
;
139 CRM_Core_Page_AJAX
::autocompleteResults($results);
142 function eventList() {
143 $listparams = CRM_Utils_Array
::value('listall', $_REQUEST, 1);
144 $events = CRM_Event_BAO_Event
::getEvents($listparams);
146 $elements = array(array('name' => ts('- select -'),
149 foreach ($events as $id => $name) {
156 echo json_encode($elements);
157 CRM_Utils_System
::civiExit();
161 * Function to get default participant role
163 function participantRole() {
164 $eventID = $_GET['eventId'];
166 $defaultRoleId = CRM_Core_DAO
::getFieldValue('CRM_Event_DAO_Event',
171 $participantRole = array('role' => $defaultRoleId);
172 echo json_encode($participantRole);
173 CRM_Utils_System
::civiExit();