JMAConsulting / biz.jmaconsulting.activitytypeacl

This extension provides the ability to restrict activities on CiviCRM by roles with permissions to various activity types.
GNU Affero General Public License v3.0
4 stars 3 forks source link

Permissions not always saving #11

Closed clarkac1 closed 4 years ago

clarkac1 commented 4 years ago

A client has many activity types - they've added quite a few. Each new activity type has 4 permissions so the list in Drupal permissions is very long. Both the client and I have noticed that if you update a lot of permissions - e.g. after adding several activity types - and click 'Save permissions' then they don't all get saved. Sometimes those at the top of the list get saved and the rest don't, or none get saved. Retrying fixes it, although it might take 3/4 tries. This is a Drupal 7 install, and PHP has 512MB of memory. We use the 'filter permissions' module in Drupal. This was mentioned to https://github.com/Edzelopez in an email on 21/4/20. Thanks! Andy Clark

Edzelopez commented 4 years ago

Yes, I've noticed there are significant performance issues when there are a lot of activity types. I think, what is needed here, is a rework of how the permissions can be granted to activity types. Perhaps, we need a single page that would allow you to select multiple activity types for each action, and then select the role these permissions will be granted to. However, this is quite a bit of work, and I will need to discuss this further with @JoeMurray

JoeMurray commented 4 years ago

Heh Andy, That's a Drupal page with lots of complexity. I think your suspicions about memory, if I'm understanding correctly, might be right...see if a larger PHP memory limit would make a difference.

clarkac1 commented 4 years ago

Thanks for the advice - I had memory limit at 768MB so upped it to 1024MB

JoeMurray commented 4 years ago

And did 1024MB allow the page to be processed properly?

clarkac1 commented 4 years ago

This is on a live production site, so I did this as a precaution, and didn't like to test! But will comment here if it doesn't help, although I'm hopeful as this does seem an obvious fix.