TYPO3
7.6
Users
bogdan
Projects
Kapeli
Resources
Dash
Docsets
TYPO3
src
typo3
sysext
fluid
Classes
ViewHelpers
Be
Security
Be/Security/IfHasRoleViewHelper.php
Go to the documentation of this file.
1
<?php
2
namespace
TYPO3\CMS\Fluid\ViewHelpers\Be\Security;
3
4
/* *
5
* This script is backported from the TYPO3 Flow package "TYPO3.Fluid". *
6
* *
7
* It is free software; you can redistribute it and/or modify it under *
8
* the terms of the GNU Lesser General Public License, either version 3 *
9
* of the License, or (at your option) any later version. *
10
* *
11
* *
12
* This script is distributed in the hope that it will be useful, but *
13
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHAN- *
14
* TABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser *
15
* General Public License for more details. *
16
* *
17
* You should have received a copy of the GNU Lesser General Public *
18
* License along with the script. *
19
* If not, see http://www.gnu.org/licenses/lgpl.html *
20
* *
21
* The TYPO3 project - inspiring people to share! *
22
* */
63
class
IfHasRoleViewHelper
extends
\TYPO3\CMS\Fluid\Core\ViewHelper\AbstractConditionViewHelper
64
{
72
public
function
initializeArguments
()
73
{
74
$this->
registerArgument
(
'role'
,
'string'
,
'The usergroup (either the usergroup uid or its title).'
);
75
}
76
83
protected
static
function
evaluateCondition
(
$arguments
= null)
84
{
85
$role =
$arguments
[
'role'
];
86
if
(!is_array(
$GLOBALS
[
'BE_USER'
]->userGroups)) {
87
return
false
;
88
}
89
if
(is_numeric($role)) {
90
foreach
(
$GLOBALS
[
'BE_USER'
]->userGroups as $userGroup) {
91
if
((
int
)$userGroup[
'uid'
] === (
int
)$role) {
92
return
true
;
93
}
94
}
95
}
else
{
96
foreach
(
$GLOBALS
[
'BE_USER'
]->userGroups as $userGroup) {
97
if
($userGroup[
'title'
] === $role) {
98
return
true
;
99
}
100
}
101
}
102
return
false
;
103
}
104
}
Generated on Wed Nov 11 2015 01:51:57 for TYPO3 by
1.8.3