ACL's based on a condition
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-27-2023 01:29 PM - edited ‎10-27-2023 01:30 PM
I want everyone to be able to write to the table if status != Pending, but only a certain amount of people to be able to write if status = Pending.
My ACLs so far (which works)
table write status!=pending and role = role_a
table write status=pending and role = role_a and supervisor is me (a reference field on the form)
BUT if a record is in status=pending, I only want the "supervisor is me" to only update a few fields, so I added:
table.* write status=pending and role = admin
table.field write status=pending and supervisor is me and role = role_a
Now the other folks are not able to write to any fields to any record no matter what the status (I only want them not be able to write if status=pending). It works great for "supervisor is me"
Am I missing something? Do table.* acl's not take into consideration the conditions?
Lisa
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-27-2023 01:52 PM
Hi Kemmy1 ,
Try Following the below approach
ACL 1 : table Level when status is not pending to allow all roles to have write access
ACL 2 : table level ACL with condition status= pending and define the required roles
ACL 3/4/5 : table.field level ACL with required condition and role to give specific access
as per your post you have mentioned you also included table.* write status=pending and role = admin : which is restricting the access for other roles . try to deactivate this ACL and check.
Please feel free to mark correct/helpful. If I answered your query.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎10-30-2023 08:04 AM
Unfortunately, this does nothing. (table.* = false, everything is the same).