uawdijnntqw1x1x1
IP : 13.58.76.154
Hostname : axolotl
Kernel : Linux axolotl 4.9.0-13-amd64 #1 SMP Debian 4.9.228-1 (2020-07-05) x86_64
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
OS : Linux
PATH:
/
var
/
www
/
axolotl
/
data
/
www
/
kirov.axolotls.ru
/
bitrix
/
modules
/
rpa
/
lib
/
permission
/
processor.php
/
/
<?php namespace Bitrix\Rpa\Permission; class Processor { protected $currentPermissions; public function __construct(array $currentPermissions) { $this->currentPermissions = $currentPermissions; } public function process(array $permissions): Result { $result = new Result(); $currentPermissions = $this->currentPermissions; $deletePermissions = []; $addPermissions = []; $resultPermissions = []; foreach($currentPermissions as $key => $currentPermission) { $isFound = false; foreach($permissions as $permission) { if($this->isEqualPermissions($currentPermission, $permission)) { $isFound = true; break; } } if(!$isFound) { $deletePermissions[] = $currentPermission; } else { $resultPermissions[] = $currentPermission; } } foreach($permissions as $permission) { $isFound = false; foreach($resultPermissions as $skipPermission) { if($this->isEqualPermissions($permission, $skipPermission)) { $isFound = true; break; } } if(!$isFound) { $addPermissions[] = $permission; $resultPermissions[] = $permission; } } $result->setAddPermissions($addPermissions)->setDeletePermission($deletePermissions)->setResultPermissions($resultPermissions); return $result; } protected function isEqualPermissions(array $currentPermission, array $permission): bool { return ( isset($currentPermission['ACCESS_CODE']) && isset($permission['ACCESS_CODE']) && $currentPermission['ACCESS_CODE'] === $permission['ACCESS_CODE'] && isset($currentPermission['PERMISSION']) && isset($permission['PERMISSION']) && $currentPermission['PERMISSION'] === $permission['PERMISSION'] && isset($currentPermission['ACTION']) && isset($permission['ACTION']) && $currentPermission['ACTION'] === $permission['ACTION'] ); } }
/var/www/axolotl/data/www/kirov.axolotls.ru/bitrix/modules/rpa/lib/permission/processor.php