From 17bf0840671737e915b180bdf168a11533651cc1 Mon Sep 17 00:00:00 2001 From: Web Access Date: Thu, 2 Jul 2015 21:20:39 +0530 Subject: [PATCH] Fix for CRM-16777 --- CRM/Core/xml/Menu/Admin.xml | 2 ++ CRM/Event/BAO/Event.php | 4 ++-- CRM/Event/Form/ManageEvent/TabHeader.php | 2 +- CRM/Event/Page/ManageEvent.php | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CRM/Core/xml/Menu/Admin.xml b/CRM/Core/xml/Menu/Admin.xml index 632d87913e..79c115eecc 100644 --- a/CRM/Core/xml/Menu/Admin.xml +++ b/CRM/Core/xml/Menu/Admin.xml @@ -293,6 +293,8 @@ Schedule Reminders[A Schedule Reminders. CRM_Admin_Page_ScheduleReminders + 1 + administer CiviCRM;edit all events Communications admin/small/template.png 40 diff --git a/CRM/Event/BAO/Event.php b/CRM/Event/BAO/Event.php index 64c04071de..9a4f3d2aaf 100644 --- a/CRM/Event/BAO/Event.php +++ b/CRM/Event/BAO/Event.php @@ -2030,7 +2030,7 @@ WHERE ce.loc_block_id = $locBlockId"; $permissions[CRM_Core_Permission::EDIT] = array_keys($allEvents); } else { - $permissions[CRM_Core_Permission::EDIT] = &CRM_ACL_API::group(CRM_Core_Permission::EDIT, NULL, 'civicrm_event', $allEvents, $createdEvents); + $permissions[CRM_Core_Permission::EDIT] = CRM_ACL_API::group(CRM_Core_Permission::EDIT, NULL, 'civicrm_event', $allEvents, $createdEvents); } if (CRM_Core_Permission::check('edit all events')) { @@ -2045,7 +2045,7 @@ WHERE ce.loc_block_id = $locBlockId"; // at the same time also allow any hook to override if needed. $createdEvents = array_keys($allEvents); } - $permissions[CRM_Core_Permission::VIEW] = &CRM_ACL_API::group(CRM_Core_Permission::VIEW, NULL, 'civicrm_event', $allEvents, $createdEvents); + $permissions[CRM_Core_Permission::VIEW] = CRM_ACL_API::group(CRM_Core_Permission::VIEW, NULL, 'civicrm_event', $allEvents, $createdEvents); } $permissions[CRM_Core_Permission::DELETE] = array(); diff --git a/CRM/Event/Form/ManageEvent/TabHeader.php b/CRM/Event/Form/ManageEvent/TabHeader.php index aac6f7ca7b..a5e7ac4cc5 100644 --- a/CRM/Event/Form/ManageEvent/TabHeader.php +++ b/CRM/Event/Form/ManageEvent/TabHeader.php @@ -85,7 +85,7 @@ class CRM_Event_Form_ManageEvent_TabHeader { $tabs['location'] = array('title' => ts('Event Location')) + $default; $tabs['fee'] = array('title' => ts('Fees')) + $default; $tabs['registration'] = array('title' => ts('Online Registration')) + $default; - if (CRM_Core_Permission::check('administer CiviCRM')) { + if (CRM_Core_Permission::check('administer CiviCRM') || CRM_Event_BAO_Event::checkPermission(NULL, CRM_Core_Permission::EDIT)) { $tabs['reminder'] = array('title' => ts('Schedule Reminders'), 'class' => 'livePage') + $default; } $tabs['conference'] = array('title' => ts('Conference Slots')) + $default; diff --git a/CRM/Event/Page/ManageEvent.php b/CRM/Event/Page/ManageEvent.php index 2df6673df2..385d0564c1 100644 --- a/CRM/Event/Page/ManageEvent.php +++ b/CRM/Event/Page/ManageEvent.php @@ -137,7 +137,7 @@ class CRM_Event_Page_ManageEvent extends CRM_Core_Page { 'field' => 'is_online_registration', ); - if (CRM_Core_Permission::check('administer CiviCRM')) { + if (CRM_Core_Permission::check('administer CiviCRM') || CRM_Event_BAO_Event::checkPermission(NULL, CRM_Core_Permission::EDIT)) { self::$_tabLinks[$cacheKey]['reminder'] = array( 'title' => ts('Schedule Reminders'), -- 2.25.1