Files
core/docs/classes/LotGD-Core-PermissionManager.html
2021-09-08 22:36:12 +02:00

1093 lines
51 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Documentation</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">Documentation</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/lotgd.html">LotGD</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/lotgd-core.html">Core</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/Application.html">Application</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/lotgd.html">LotGD</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/lotgd-core.html">Core</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
PermissionManager
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/Application.html">Application</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">33</span>
</aside>
<p class="phpdocumentor-summary">The PermissionManager manages (checks and manipulates) permissions of actors.</p>
<section class="phpdocumentor-description"><p>The PermissionManager class provides methods to work with permissions and is
the only way to check and manipulate permissions. It can be used to create or
delete permissions, to remove, allow or deny permissions to actors and to
check whether an actor has a certain permission or if it is explicitly
denied to him.</p>
<p>The wording used in this class is:</p>
<ul>
<li>allowed, the actor has a certain permission in the allowed state.</li>
<li>denied, the actor has a certain permission in the denied state.</li>
</ul>
<p>To make this more clear, the following table summarizes how different methods
react.</p>
<p>Method
State: | Unset | Allowed | Denied
-------------------+-------+---------+---------
isAllowed | False | True | False
isDenied | False | False | True
hasPermissionSet | False | True | True</p>
</section>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_AddCharacters">AddCharacters</a>
<span>
&nbsp;= &quot;lotgd/core/characters/add&quot; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_AddScenes">AddScenes</a>
<span>
&nbsp;= &quot;lotgd/core/scene/add&quot; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_Allowed">Allowed</a>
<span>
&nbsp;= 1 </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_DeleteCharacters">DeleteCharacters</a>
<span>
&nbsp;= &quot;lotgd/core/characters/delete&quot; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_DeleteScenes">DeleteScenes</a>
<span>
&nbsp;= &quot;lotgd/core/scene/delete&quot; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_Denied">Denied</a>
<span>
&nbsp;= -1 </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_EditCharacters">EditCharacters</a>
<span>
&nbsp;= &quot;lotgd/core/characters/edit&quot; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_EditScenes">EditScenes</a>
<span>
&nbsp;= &quot;lotgd/core/scene/edit&quot; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -constant -public">
<a href="classes/LotGD-Core-PermissionManager.html#constant_Superuser">Superuser</a>
<span>
&nbsp;= &quot;lotgd/core/superuser&quot; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -private">
<a href="classes/LotGD-Core-PermissionManager.html#property_game">$game</a>
<span>
&nbsp;: <a href="classes/LotGD-Core-Game.html"><abbr title="\LotGD\Core\Game">Game</abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LotGD-Core-PermissionManager.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>Construct a permission manager.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LotGD-Core-PermissionManager.html#method_allow">allow()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>Allows an actor a permission given by the permission id.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LotGD-Core-PermissionManager.html#method_deny">deny()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>Denies an actor a permission given by the permission id.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LotGD-Core-PermissionManager.html#method_hasPermissionSet">hasPermissionSet()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Checks if an actor has a permission set. No assumption can be made if it&#039;s allowed or denied.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LotGD-Core-PermissionManager.html#method_isAllowed">isAllowed()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Checks if an actor is allowed a given permission.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LotGD-Core-PermissionManager.html#method_isDenied">isDenied()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Checks if an actor is denied a given permission.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LotGD-Core-PermissionManager.html#method_remove">remove()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>Removes a permission from an actor.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -private">
<a href="classes/LotGD-Core-PermissionManager.html#method_findPermission">findPermission()</a>
<span>
&nbsp;: <a href="classes/LotGD-Core-Models-Permission.html"><abbr title="\LotGD\Core\Models\Permission">Permission</abbr></a> </span>
</dt>
<dd>Retrieves a permission entity from the database by a permission id.</dd>
</dl>
<section class="phpdocumentor-constants">
<h3 class="phpdocumentor-elements__header" id="constants">
Constants
<a href="classes/LotGD-Core-PermissionManager.html#constants" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_AddCharacters">
AddCharacters
<a href="classes/LotGD-Core-PermissionManager.html#constant_AddCharacters" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">42</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">AddCharacters</span>
= <span class="phpdocumentor-signature__default-value">&quot;lotgd/core/characters/add&quot;</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_AddScenes">
AddScenes
<a href="classes/LotGD-Core-PermissionManager.html#constant_AddScenes" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">39</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">AddScenes</span>
= <span class="phpdocumentor-signature__default-value">&quot;lotgd/core/scene/add&quot;</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_Allowed">
Allowed
<a href="classes/LotGD-Core-PermissionManager.html#constant_Allowed" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">35</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">Allowed</span>
= <span class="phpdocumentor-signature__default-value">1</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_DeleteCharacters">
DeleteCharacters
<a href="classes/LotGD-Core-PermissionManager.html#constant_DeleteCharacters" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">44</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">DeleteCharacters</span>
= <span class="phpdocumentor-signature__default-value">&quot;lotgd/core/characters/delete&quot;</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_DeleteScenes">
DeleteScenes
<a href="classes/LotGD-Core-PermissionManager.html#constant_DeleteScenes" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">41</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">DeleteScenes</span>
= <span class="phpdocumentor-signature__default-value">&quot;lotgd/core/scene/delete&quot;</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_Denied">
Denied
<a href="classes/LotGD-Core-PermissionManager.html#constant_Denied" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">36</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">Denied</span>
= <span class="phpdocumentor-signature__default-value">-1</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_EditCharacters">
EditCharacters
<a href="classes/LotGD-Core-PermissionManager.html#constant_EditCharacters" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">43</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">EditCharacters</span>
= <span class="phpdocumentor-signature__default-value">&quot;lotgd/core/characters/edit&quot;</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_EditScenes">
EditScenes
<a href="classes/LotGD-Core-PermissionManager.html#constant_EditScenes" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">40</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">EditScenes</span>
= <span class="phpdocumentor-signature__default-value">&quot;lotgd/core/scene/edit&quot;</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
<article class="phpdocumentor-element -constant -public ">
<h4 class="phpdocumentor-element__name" id="constant_Superuser">
Superuser
<a href="classes/LotGD-Core-PermissionManager.html#constant_Superuser" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">38</span>
</aside>
<code class="phpdocumentor-signature phpdocumentor-code ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">mixed</span>
<span class="phpdocumentor-signature__name">Superuser</span>
= <span class="phpdocumentor-signature__default-value">&quot;lotgd/core/superuser&quot;</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
</section>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/LotGD-Core-PermissionManager.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-private
"
>
<h4 class="phpdocumentor-element__name" id="property_game">
$game
<a href="classes/LotGD-Core-PermissionManager.html#property_game" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">50</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__type"><a href="classes/LotGD-Core-Game.html"><abbr title="\LotGD\Core\Game">Game</abbr></a></span>
<span class="phpdocumentor-signature__name">$game</span>
</code>
<section class="phpdocumentor-description"></section>
<section class="phpdocumentor-description"></section>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LotGD-Core-PermissionManager.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/LotGD-Core-PermissionManager.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">50</span>
</aside>
<p class="phpdocumentor-summary">Construct a permission manager.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Game.html"><abbr title="\LotGD\Core\Game">Game</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$game</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$game</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Game.html"><abbr title="\LotGD\Core\Game">Game</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The game.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_allow">
allow()
<a href="classes/LotGD-Core-PermissionManager.html#method_allow" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">123</span>
</aside>
<p class="phpdocumentor-summary">Allows an actor a permission given by the permission id.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">allow</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$actor</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$permissionId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$actor</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$permissionId</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_deny">
deny()
<a href="classes/LotGD-Core-PermissionManager.html#method_deny" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">149</span>
</aside>
<p class="phpdocumentor-summary">Denies an actor a permission given by the permission id.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">deny</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$actor</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$permissionId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$actor</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$permissionId</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_hasPermissionSet">
hasPermissionSet()
<a href="classes/LotGD-Core-PermissionManager.html#method_hasPermissionSet" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">58</span>
</aside>
<p class="phpdocumentor-summary">Checks if an actor has a permission set. No assumption can be made if it&#039;s allowed or denied.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">hasPermissionSet</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$actor</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$permissionId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$actor</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$permissionId</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
<section class="phpdocumentor-description"><p>True if the permission has been set, be it allowed or denied.</p>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_isAllowed">
isAllowed()
<a href="classes/LotGD-Core-PermissionManager.html#method_isAllowed" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">74</span>
</aside>
<p class="phpdocumentor-summary">Checks if an actor is allowed a given permission.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">isAllowed</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$actor</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$permissionId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$actor</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$permissionId</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
<section class="phpdocumentor-description"><p>True if the actor has the permission set and it's state is allowed.</p>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_isDenied">
isDenied()
<a href="classes/LotGD-Core-PermissionManager.html#method_isDenied" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">90</span>
</aside>
<p class="phpdocumentor-summary">Checks if an actor is denied a given permission.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">isDenied</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$actor</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$permissionId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$actor</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$permissionId</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
<section class="phpdocumentor-description"><p>True if the actor has the permission set and it's state is denied.</p>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_remove">
remove()
<a href="classes/LotGD-Core-PermissionManager.html#method_remove" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">175</span>
</aside>
<p class="phpdocumentor-summary">Removes a permission from an actor.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">remove</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$actor</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$permissionId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$actor</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LotGD-Core-Models-Actor.html"><abbr title="\LotGD\Core\Models\Actor">Actor</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$permissionId</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-private
"
>
<h4 class="phpdocumentor-element__name" id="method_findPermission">
findPermission()
<a href="classes/LotGD-Core-PermissionManager.html#method_findPermission" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/PermissionManager.php"><a href="files/src-permissionmanager.html"><abbr title="src/PermissionManager.php">PermissionManager.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">106</span>
</aside>
<p class="phpdocumentor-summary">Retrieves a permission entity from the database by a permission id.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__name">findPermission</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$permissionId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href="classes/LotGD-Core-Models-Permission.html"><abbr title="\LotGD\Core\Models\Permission">Permission</abbr></a></span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$permissionId</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LotGD-Core-Exceptions-PermissionIdNotFoundException.html"><abbr title="\LotGD\Core\Exceptions\PermissionIdNotFoundException">PermissionIdNotFoundException</abbr></a></span>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href="classes/LotGD-Core-Models-Permission.html"><abbr title="\LotGD\Core\Models\Permission">Permission</abbr></a></span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LotGD-Core-PermissionManager.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>