Вход Регистрация
Файл: concrete5.7.5.6/concrete/src/Permission/Key/WorkflowKey.php
Строк: 34
<?php
namespace ConcreteCorePermissionKey;
use 
ConcreteCorePermissionDuration as PermissionDuration;
use 
ConcreteCoreWorkflowProgressProgress as WorkflowProgress;

abstract class 
WorkflowKey extends Key {

    public function 
getCurrentlyActiveUsers(WorkflowProgress $wp) {
        
$paa $this->getPermissionAccessObject();
        if (!
$paa) {
            return array();
        }
        
$paa->setWorkflowProgressObject($wp);
        
$included $this->getAccessListItems(self::ACCESS_TYPE_INCLUDE);
        
$excluded $this->getAccessListItems(self::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;
    }
}
Онлайн: 1
Реклама