Merge pull request #10615 from mepps/CRM-20828
[civicrm-core.git] / CRM / Core / Permission.php
index 826d70a2847dbbefc8258a674e6ea943fd9cbce3..1e28ab6fdb0ae0bcc6e034592ee4dd1ec765ad50 100644 (file)
@@ -127,7 +127,7 @@ class CRM_Core_Permission {
         foreach ($permission as $orPerm) {
           if (self::check($orPerm)) {
             //one of our 'or' permissions has succeeded - stop checking this permission
-            return TRUE;;
+            return TRUE;
           }
         }
         //none of our our conditions was met
@@ -1016,6 +1016,12 @@ class CRM_Core_Permission {
         'access CiviCRM',
         'delete in CiviCase',
       ),
+      'restore' => array(
+        'administer CiviCase',
+      ),
+      'merge' => array(
+        'administer CiviCase',
+      ),
       'default' => array(
         // At minimum the user needs one of the following. Finer-grained access is controlled by CRM_Case_BAO_Case::addSelectWhereClause
         array('access my cases and activities', 'access all cases and activities'),
@@ -1090,6 +1096,7 @@ class CRM_Core_Permission {
         'edit contributions',
       ),
     );
+    $permissions['contribution_recur'] = $permissions['payment'];
 
     // Custom field permissions
     $permissions['custom_field'] = array(
@@ -1126,6 +1133,12 @@ class CRM_Core_Permission {
     // Loc block is only used for events
     $permissions['loc_block'] = $permissions['event'];
 
+    $permissions['state_province'] = array(
+      'get' => array(
+        'access CiviCRM',
+      ),
+    );
+
     // Price sets are shared by several components, user needs access to at least one of them
     $permissions['price_set'] = array(
       'default' => array(