civicrm / org.civicrm.civicase

CiviCase Extension
Other
9 stars 35 forks source link

(WIP) CATL-955: Implement Locks to Restrict Access of Users to Specific Cases #99

Closed MiyaNoctem closed 4 years ago

MiyaNoctem commented 6 years ago

Overview

As case managers, we need to be able to lock users out of specific cases. If a case is locked from a user, they should only be able to see the basic details (clicking again on the case will NOT take them to the case detail page).

Before

Once a user has access to any or all cases there is no way to restrict access to specific cases.

After

Implemented a new action on case detail form. This new action will open a form in a popup dialog, where the user will be able to search and select one or more contacts that should be locked out of the case.

When a user tries to access a case that is locked for him, an padlock icon will be shown on mouseover, and clicking the case will do nothing, as if he had basic view access to that case only. Furthermore, activities' details will not be shown.

image

mickadoo commented 6 years ago

@MiyaNoctem it's fine for this one, but I think in future if we're doing PRs to core it might be good to fork the repo to compucorp and create the PR from there. I just know with experience that in a recent PR to civicrm_webform Kacper used his own fork but was then planning to leave soon afterwards. I'm not saying you're going anywhere :-D just that it's something to keep in mind.

Also I'm just wondering if permissions were discussed in this ticket. Who has permission to lock cases?

colemanw commented 6 years ago

I think the BAO and API ought to be named CaseContactLock rather than CiviCaseContactLock, for consistency with other entities.

MiyaNoctem commented 4 years ago

Stale banch, now has been handled on custom extension.