I have a role to view contacts in a particular group granted through CiviCRM view ACL permissions (/civicrm/acl?reset=1) but even though the role can see all contacts in that group, when trying to view an activity of a contact in that group, user gets an error message "you do not have permissions to access this page".
- CiviCRM: view all activities is enabled for this role
- CiviCRM: view all contacts is disabled for this role
- CiviCRM: edit all contacts is disabled for this role

I have one activity type which i want to exclude users with that role from seeing the same activities of other contacts in another group.

any suggestion for a possible soultion will be much appreciated, I'm on CiviCRM 4.6.35, Drupal 7

If i enable CiviCRM: view all contacts, the role will be able to view all activities of other groups as well.

  • There could be a CMS side solution if you are on Drupal, but it may seem an odd way to do it. happy to expand if you are on Drupal and are open to creative solution – petednz - fuzion Nov 30 at 20:49
  • I'm on Drupal, please expand thanks – Kboy Dec 1 at 15:10

There is an extension ACL for Activity Types that provides ACL for activities based on activity type. This extension allows one to define permission for CRUD operations for each CMS role.

  • Thank you Pradeep, i know about this extension and as in my question, i have only one activity type which i need to exclude one role from not seeing activities of other contacts. It also seems the extension is not compatible on CiviCRM 4.6.35 – Kboy Dec 2 at 10:47

If you give that role access to No Activities, and then build a Drupal View that has the required filters then those users would be able to 'see' the restricted Activities but no others.

There is no reason you can't then deliver this view as a Tab for those folk to use (though i don't have the extension link to hand for that part of the suggestion)

EDIT: I think this one will offer a good starting point: fuzion.co.nz/blogs/view-show-current-users-activities

ps 4.6.35 is not secure

  • Hi Pete, thanks, this might not work for me because the users will have a different work flow. At the moment, users just go to their contact and see the activities assigned to them, if i follow this approach the workflow will be different which i think they will resist the change. I already have 4.6.38 on stage, just to put in production soonest. – Kboy Dec 2 at 22:06
  • if the view is showing as another tab then i am not sure it changes their workflow much. – petednz - fuzion Dec 3 at 0:09
  • it seems to be a big change because at the moment they just need to go to their own contact and see all assigned activities. If it a new tab it means they have to look up for activities assigned to them and they may be hundreds of activities. Between i have created another activity type and use ACL custom fields to hide the fields for this role for new activities but now i'm looking for a way to hide the already entered activities from this role. – Kboy Dec 3 at 8:14
  • I think this is new info "it means they have to look up for activities assigned to them". If you are wanting them to only see Activities that are assigned to them then that is super easy to do via Views, and you can either have a Tab on their Summary page, or a block on (or above) the Dashboard – petednz - fuzion Dec 3 at 16:57
  • Thanks, i get your idea, let me try this on my dev site and get back with more info on this approach. thanks again, the only problem i foresee is that there are many custom fields in this activity type which may be quite difficult to have a nice display of the data in a table view. – Kboy Dec 3 at 18:15

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.