<?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. |
| |
/**
*
* @package CRM
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
* $Id$
*
*/
static $permissions = NULL;
if (!$permissions) {
+ $config = CRM_Core_Config::singleton();
$prefix = ts('CiviCRM') . ': ';
$permissions = self::getCorePermissions();
$permissions['administer Multiple Organizations'] = $prefix . ts('administer Multiple Organizations');
}
- $config = CRM_Core_Config::singleton();
-
if (!$all) {
$components = CRM_Core_Component::getEnabledComponents();
}
}
// Add any permissions defined in hook_civicrm_permission implementations.
- $config = CRM_Core_Config::singleton();
$module_permissions = $config->userPermissionClass->getAllModulePermissions();
$permissions = array_merge($permissions, $module_permissions);
}
return $permissions;
}
+ static function getAnonymousPermissionsWarnings() {
+ static $permissions = array();
+ if (empty($permissions)) {
+ $permissions = array(
+ 'administer CiviCRM'
+ );
+ $components = CRM_Core_Component::getComponents();
+ foreach ($components as $comp) {
+ if (!method_exists($comp, 'getAnonymousPermissionWarnings')) {
+ continue;
+ }
+ $permissions = array_merge($permissions, $comp->getAnonymousPermissionWarnings());
+ }
+ }
+ return $permissions;
+ }
+
+ static function validateForPermissionWarnings($anonymous_perms) {
+ return array_intersect($anonymous_perms, self::getAnonymousPermissionsWarnings());
+ }
+
static function getCorePermissions() {
$prefix = ts('CiviCRM') . ': ';
$permissions = array(
'delete all manual batches' => $prefix . ts('delete all manual batches'),
'export own manual batches' => $prefix . ts('export own manual batches'),
'export all manual batches' => $prefix . ts('export all manual batches'),
+ 'administer payment processors' => $prefix . ts('administer payment processors'),
);
return $permissions;