copyright and version fixes
[civicrm-core.git] / CRM / Case / Form / Task / SearchTaskHookSample.php
CommitLineData
6a488035
TO
1<?php
2/*
3 +--------------------------------------------------------------------+
06b69b18 4 | CiviCRM version 4.5 |
6a488035 5 +--------------------------------------------------------------------+
06b69b18 6 | Copyright CiviCRM LLC (c) 2004-2014 |
6a488035
TO
7 +--------------------------------------------------------------------+
8 | This file is a part of CiviCRM. |
9 | |
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. |
13 | |
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. |
18 | |
19 | You should have received a copy of the GNU Affero General Public |
20 | License along with this program; if not, contact CiviCRM LLC |
21 | at info[AT]civicrm[DOT]org. If you have questions about the |
22 | GNU Affero General Public License or the licensing of CiviCRM, |
23 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
24 +--------------------------------------------------------------------+
25*/
26
27/**
28 *
29 * @package CRM
06b69b18 30 * @copyright CiviCRM LLC (c) 2004-2014
6a488035
TO
31 * $Id$
32 *
33 */
34
35/**
36 * This class provides the functionality to save a search
37 * Saved Searches are used for saving frequently used queries
38 */
39class CRM_Case_Form_Task_SearchTaskHookSample extends CRM_Case_Form_Task {
40
41 /**
42 * build all the data structures needed to build the form
43 *
44 * @return void
45 * @access public
46 */
47 function preProcess() {
48 parent::preProcess();
49 $rows = array();
50 // display name and email of all contact ids
51 $caseIDs = implode(',', $this->_caseIds);
52 $statusId = CRM_Core_DAO::getFieldValue('CRM_Core_DAO_OptionGroup', 'case_status', 'id', 'name');
53 $query = "
54SELECT ct.display_name as display_name,
55 cs.start_date as start_date,
56 ov.label as status
8ef12e64 57
6a488035
TO
58FROM civicrm_case cs
59INNER JOIN civicrm_case_contact cc ON ( cs.id = cc.case_id)
60INNER JOIN civicrm_contact ct ON ( cc.contact_id = ct.id)
61LEFT JOIN civicrm_option_value ov ON (cs.status_id = ov.value AND ov.option_group_id = {$statusId} )
62WHERE cs.id IN ( {$caseIDs} )";
63
64 $dao = CRM_Core_DAO::executeQuery($query, CRM_Core_DAO::$_nullArray);
65 while ($dao->fetch()) {
66 $rows[] = array(
67 'display_name' => $dao->display_name,
68 'start_date' => CRM_Utils_Date::customFormat($dao->start_date),
69 'status' => $dao->status,
70 );
71 }
72 $this->assign('rows', $rows);
73 }
74
75 /**
76 * Function to actually build the form
77 *
355ba699 78 * @return void
6a488035
TO
79 * @access public
80 */
81 public function buildQuickForm() {
82 $this->addButtons(array(
83 array(
84 'type' => 'done',
85 'name' => ts('Done'),
86 'isDefault' => TRUE,
87 ),
88 )
89 );
90 }
91}
92