PermissionModel::stripPermissions PHP Méthode

stripPermissions() public méthode

Take a permission row and strip the global/local permissions from it.
public stripPermissions ( $Row, $DefaultRow, string $LimitToSuffix = '' ) : mixed
$Row
$DefaultRow
$LimitToSuffix string
Résultat mixed
    public function stripPermissions($Row, $DefaultRow, $LimitToSuffix = '')
    {
        static $Namespaces;
        if (!isset($Namespaces)) {
            $Namespaces = $this->GetAllowedPermissionNamespaces();
        }
        foreach ($DefaultRow as $PermissionName => $Value) {
            if (in_array($PermissionName, array('PermissionID', 'RoleID', 'JunctionTable', 'JunctionColumn', 'JunctionID'))) {
                continue;
            }
            if (!$this->IsGlobalPermission($Value, $PermissionName, $LimitToSuffix, $Namespaces)) {
                unset($Row[$PermissionName]);
                continue;
            }
            switch ($DefaultRow[$PermissionName]) {
                case 3:
                    $Row[$PermissionName] = 1;
                    break;
                case 2:
                    $Row[$PermissionName] = 0;
                    break;
            }
        }
        return $Row;
    }