Merge pull request #15778 from agh1/reminder-do-not-email-test
[civicrm-core.git] / CRM / Event / Controller / Search.php
1 <?php
2 /*
3 +--------------------------------------------------------------------+
4 | Copyright CiviCRM LLC. All rights reserved. |
5 | |
6 | This work is published under the GNU AGPLv3 license with some |
7 | permitted exceptions and without any warranty. For full license |
8 | and copyright information, see https://civicrm.org/licensing |
9 +--------------------------------------------------------------------+
10 */
11
12 /**
13 *
14 * @package CRM
15 * @copyright CiviCRM LLC https://civicrm.org/licensing
16 * $Id$
17 *
18 */
19
20 /**
21 * This class is used by the Search functionality.
22 *
23 * - the search controller is used for building/processing multiform
24 * searches.
25 *
26 * Typically the first form will display the search criteria and its results
27 *
28 * The second form is used to process search results with the associated actions
29 *
30 */
31 class CRM_Event_Controller_Search extends CRM_Core_Controller {
32
33 /**
34 * Class constructor.
35 *
36 * @param string $title
37 * @param bool|int $action
38 * @param bool $modal
39 */
40 public function __construct($title = NULL, $action = CRM_Core_Action::NONE, $modal = TRUE) {
41
42 parent::__construct($title, $modal);
43
44 $this->_stateMachine = new CRM_Event_StateMachine_Search($this, $action);
45
46 // create and instantiate the pages
47 $this->addPages($this->_stateMachine, $action);
48
49 $session = CRM_Core_Session::singleton();
50 $uploadNames = $session->get('uploadNames');
51 if (!empty($uploadNames)) {
52 $uploadNames = array_merge($uploadNames,
53 CRM_Core_BAO_File::uploadNames()
54 );
55 }
56 else {
57 $uploadNames = CRM_Core_BAO_File::uploadNames();
58 }
59
60 $config = CRM_Core_Config::singleton();
61 $uploadDir = $config->uploadDir;
62
63 // add all the actions
64 $this->addActions($uploadDir, $uploadNames);
65 }
66
67 }