/web/concrete/core/models/permission/keys/workflow.php
https://github.com/glockops/concrete5 · PHP · 30 lines · 28 code · 2 blank · 0 comment · 1 complexity · 185a6231c00ed33ed8be068562a89e12 MD5 · raw file
- <?
- defined('C5_EXECUTE') or die("Access Denied.");
- abstract class Concrete5_Model_WorkflowPermissionKey extends PermissionKey {
- public function getCurrentlyActiveUsers(WorkflowProgress $wp) {
- $paa = $this->getPermissionAccessObject();
- if (!$paa) {
- return array();
- }
- $paa->setWorkflowProgressObject($wp);
- $included = $this->getAccessListItems(PermissionKey::ACCESS_TYPE_INCLUDE);
- $excluded = $this->getAccessListItems(PermissionKey::ACCESS_TYPE_EXCLUDE);
- $included = PermissionDuration::filterByActive($included);
- $excluded = PermissionDuration::filterByActive($excluded);
- $users = array();
- $usersExcluded = array();
- foreach($included as $inc) {
- $pae = $inc->getAccessEntityObject();
- $users = array_merge($users, $pae->getAccessEntityUsers($paa));
- }
- $users = array_unique($users);
- foreach($excluded as $inc) {
- $pae = $inc->getAccessEntityObject();
- $usersExcluded = array_merge($usersExcluded, $pae->getAccessEntityUsers());
- }
- $users = array_diff($users, $usersExcluded);
- return $users;
- }
- }