Merge pull request #3007 from GinkgoFJG/CRM-14283
[civicrm-core.git] / CRM / Event / Page / EventInfo.php
index 7c80266962b4c5fc5508015ec483b545b26edbf7..2c2eff783c02138d0fa8f2c31299a9900ce567c4 100644 (file)
@@ -1,9 +1,9 @@
 <?php
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.4                                                |
+ | CiviCRM version 4.5                                                |
  +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013                                |
+ | Copyright CiviCRM LLC (c) 2004-2014                                |
  +--------------------------------------------------------------------+
  | This file is a part of CiviCRM.                                    |
  |                                                                    |
@@ -28,7 +28,7 @@
 /**
  *
  * @package CRM
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
  * $Id$
  *
  */
@@ -119,10 +119,16 @@ class CRM_Event_Page_EventInfo extends CRM_Core_Page {
           $fieldCnt = 1;
           $visibility = CRM_Core_PseudoConstant::visibility('name');
 
+          // CRM-14492 Admin price fields should show up on event registration if user has 'administer CiviCRM' permissions
+          $adminFieldVisible = false;
+          if (CRM_Core_Permission::check('administer CiviCRM')) {
+            $adminFieldVisible = true; 
+          }
+
           foreach ($priceSetFields as $fid => $fieldValues) {
             if (!is_array($fieldValues['options']) ||
               empty($fieldValues['options']) ||
-              CRM_Utils_Array::value('visibility_id', $fieldValues) != array_search('public', $visibility)
+              (CRM_Utils_Array::value('visibility_id', $fieldValues) != array_search('public', $visibility) && $adminFieldVisible == false)
             ) {
               continue;
             }