CRM-16201 permissions - add permission descriptions to Joomla distmaker
authorAndrew Hunt <andrew@aghstrategies.com>
Mon, 30 Mar 2015 19:01:13 +0000 (15:01 -0400)
committerAndrew Hunt <andrew@aghstrategies.com>
Tue, 31 Mar 2015 16:04:17 +0000 (12:04 -0400)
distmaker/utils/joomlaxml.php
xml/templates/access.tpl

index 69838daa40047b10840be5f56c0708664ef50019..cbea7bc3703a898ef00b6d9493f4470fa22321a1 100644 (file)
@@ -80,14 +80,14 @@ function generateJoomlaConfig($version) {
 
   require_once 'CRM/Core/Permission.php';
   require_once 'CRM/Utils/String.php';
-  $permissions = CRM_Core_Permission::getCorePermissions();
+  $permissions = CRM_Core_Permission::getCorePermissions(TRUE);
 
   $crmFolderDir = $sourceCheckoutDir . DIRECTORY_SEPARATOR . 'CRM';
 
   require_once 'CRM/Core/Component.php';
   $components = CRM_Core_Component::getComponentsFromFile($crmFolderDir);
   foreach ($components as $comp) {
-    $perm = $comp->getPermissions();
+    $perm = $comp->getPermissions(FALSE, TRUE);
     if ($perm) {
       $info = $comp->getInfo();
       foreach ($perm as $p) {
@@ -97,9 +97,15 @@ function generateJoomlaConfig($version) {
   }
 
   $perms_array = array();
-  foreach ($permissions as $perm => $title) {
+  foreach ($permissions as $perm => $attr) {
+    // give an empty string as default description
+    $attr[] = '';
+    
     //order matters here, but we deal with that later
-    $perms_array[CRM_Utils_String::munge(strtolower($perm))] = $title;
+    $perms_array[CRM_Utils_String::munge(strtolower($perm))] = array(
+      'title' => array_shift($attr),
+      'description' => array_shift($attr),
+    );
   }
   $smarty->assign('permissions', $perms_array);
 
index 9f054f84a66c642b4337cb756190fa40fbd2bfc7..13a9593f17e4d87719eb12eb8e6a272ca211ca1c 100644 (file)
@@ -3,8 +3,8 @@
   <section name="component">
             <action name="core.admin" title="Configure Joomla! ACL" description="Manage CiviCRM Joomla! ACL." />
             <action name="core.manage" title="See CiviCRM is installed" description="CiviCRM will be shown in list of installed components." />
-{foreach from=$permissions item=title key=name}
-            <action name="civicrm.{$name}" title="{$title}" description="" />
+{foreach from=$permissions item=perm key=name}
+            <action name="civicrm.{$name}" title="{$perm.title}" description="{$perm.description}" />
 {/foreach}
   </section>
 </access>