Merge pull request #6822 from colemanw/editGroup
authorcolemanw <coleman@civicrm.org>
Mon, 28 Sep 2015 16:03:08 +0000 (12:03 -0400)
committercolemanw <coleman@civicrm.org>
Mon, 28 Sep 2015 16:03:08 +0000 (12:03 -0400)
Only allow group inline edit when appropriate

CRM/Contact/BAO/Group.php
CRM/Group/Form/Search.php
templates/CRM/Group/Form/Search.tpl

index 1b9a363822165a6b3691215d633262ff060e4729..093703eb0a33c7bb81e340f11c72725fa5684ba0 100644 (file)
@@ -872,7 +872,9 @@ class CRM_Contact_BAO_Group extends CRM_Contact_DAO_Group {
         );
         CRM_Core_DAO::storeValues($object, $values[$object->id]);
         // Wrap with crm-editable. Not an ideal solution.
-        $values[$object->id]['title'] = '<span class="crm-editable crmf-title">' . $values[$object->id]['title'] . '</span>';
+        if (in_array(CRM_Core_Permission::EDIT, $groupPermissions)) {
+          $values[$object->id]['title'] = '<span class="crm-editable crmf-title">' . $values[$object->id]['title'] . '</span>';
+        }
 
         if ($object->saved_search_id) {
           $values[$object->id]['title'] .= ' (' . ts('Smart Group') . ')';
index 619dd2af1ce0a8acfea921429ca90f0376b5e73c..89c3ff6fa14c3713edf19c6319a1e2aee1d73a12 100644 (file)
@@ -36,6 +36,8 @@ class CRM_Group_Form_Search extends CRM_Core_Form {
 
   public function preProcess() {
     parent::preProcess();
+
+    CRM_Core_Resources::singleton()->addPermissions('edit groups');
   }
 
   /**
index cbf55f3563474d0b0c4b53b054472103003f9c86..c2a71245960c9cced019b6fe14d6f19927774f6d 100644 (file)
@@ -177,8 +177,10 @@ CRM.$(function($) {
           $(nRow).addClass(cl).attr({id: 'row_' + id, 'data-id': id, 'data-entity': 'group'});
           //$('td:eq(0)', nRow).wrapInner('<span class="crm-editable crmf-title" />');
           $('td:eq(1)', nRow).addClass('right');
-          $('td:eq(3)', nRow).wrapInner('<div class="crm-editable crmf-description" data-type="textarea" />');
-          $('td:eq(5)', nRow).wrapInner('<div class="crm-editable crmf-visibility" data-type="select" />');
+          if (CRM.checkPerm('edit groups')) {
+            $('td:eq(3)', nRow).wrapInner('<div class="crm-editable crmf-description" data-type="textarea" />');
+            $('td:eq(5)', nRow).wrapInner('<div class="crm-editable crmf-visibility" data-type="select" />');
+          }
           if (parentsOnly) {
             if ($(nRow).hasClass('crm-group-parent')) {
               $(nRow).find('td:first').prepend('{/literal}<span class="collapsed show-children" title="{ts}show child groups{/ts}"/></span>{literal}');