CRM-14106 - Regex targeting the first part of if statements
[civicrm-core.git] / CRM / Event / Info.php
CommitLineData
6a488035
TO
1<?php
2/*
3 +--------------------------------------------------------------------+
232624b1 4 | CiviCRM version 4.4 |
6a488035
TO
5 +--------------------------------------------------------------------+
6 | Copyright CiviCRM LLC (c) 2004-2013 |
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 and the CiviCRM Licensing Exception. |
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 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 +--------------------------------------------------------------------+
26*/
27
28/**
29 * This class introduces component to the system and provides all the
30 * information about it. It needs to extend CRM_Core_Component_Info
31 * abstract class.
32 *
33 * @package CRM
34 * @copyright CiviCRM LLC (c) 2004-2013
35 * $Id$
36 *
37 */
38class CRM_Event_Info extends CRM_Core_Component_Info {
39
40 // docs inherited from interface
41 protected $keyword = 'event';
42
43 // docs inherited from interface
44 public function getInfo() {
45 return array(
46 'name' => 'CiviEvent',
47 'translatedName' => ts('CiviEvent'),
48 'title' => ts('CiviCRM Event Engine'),
49 'search' => 1,
50 'showActivitiesInCore' => 1,
51 );
52 }
53
54 // docs inherited from interface
33777e4a 55 public function getPermissions($getAllUnconditionally = FALSE) {
6a488035
TO
56 return array(
57 'access CiviEvent',
58 'edit event participants',
59 'edit all events',
60 'register for events',
61 'view event info',
62 'view event participants',
63 'delete in CiviEvent',
64 );
65 }
66
67 // docs inherited from interface
68 public function getUserDashboardElement() {
69 return array('name' => ts('Events'),
70 'title' => ts('Your Event(s)'),
71 'perm' => array('register for events'),
72 'weight' => 20,
73 );
74 }
75
76 // docs inherited from interface
77 public function registerTab() {
78 return array('title' => ts('Events'),
79 'id' => 'participant',
80 'url' => 'participant',
81 'weight' => 40,
82 );
83 }
84
85 // docs inherited from interface
86 public function registerAdvancedSearchPane() {
87 return array('title' => ts('Events'),
88 'weight' => 40,
89 );
90 }
91
92 // docs inherited from interface
93 public function getActivityTypes() {
94 $types = array();
95 $types['Event'] = array('title' => ts('Event'),
96 'callback' => 'CRM_Event_Page_EventInfo::run()',
97 );
98 return $types;
99 }
100
101 // add shortcut to Create New
102 public function creatNewShortcut(&$shortCuts, $newCredit) {
103 if (CRM_Core_Permission::check('access CiviEvent') &&
104 CRM_Core_Permission::check('edit event participants')
105 ) {
106 $shortCuts = array_merge($shortCuts, array(
107 array('path' => 'civicrm/participant/add',
108 'query' => "reset=1&action=add&context=standalone",
109 'ref' => 'new-participant',
110 'title' => ts('Event Registration'),
111 )));
112 if ($newCredit) {
113 $title = ts('Event Registration') . '<br />&nbsp;&nbsp;(' . ts('credit card') . ')';
114 $shortCuts = array_merge($shortCuts, array(
115 array('path' => 'civicrm/participant/add',
116 'query' => "reset=1&action=add&context=standalone&mode=live",
117 'ref' => 'new-participant-cc',
118 'title' => $title,
2ede60ec 119 )));
6a488035
TO
120 }
121 }
122 }
123}
124