tantetoni2
29.12.2010, 19:13
hier mal ein kleiner Auszug meiner ACL Klasse, es eine Berechtigung die mit einer Bedingung verknüpft ist.
einfach mal die echo´s lesen :D:D
Testen kann manchmal lustig sein
class Term_Furz extends ACL_Rule_Term_abstract
{
protected $privilege;
public function __construct( $privilege = true )
{
$this->privilege = $privilege === true ? true : false;
}
public function term( ACL $ACL = null,
ACL_Role $role = null,
ACL_Resource $resource = null
)
{
if ( date( 'H', time() ) == 22 ) {
return $this->privilege === true ? true : false;
}
else {
return $this->privilege === true ? false : true;
}
}
}
$acl->allow( 'gast', 'forum', array('furz'), new Term_Furz(true) );
$furz = $acl->hasPermission( 'gast', 'forum', 'furz' );
echo '<h3>Wenn es zwichen 22 und 23 Uhr ist darf der Gast im Forum furzen</h3>';
echo '<br />Ist es zwichen 22 und 23 Uhr? <b>' . ( $furz === true ? 'ja' : 'nein' );
echo '</b> ist es ' . ( $furz === true ? '' : 'nicht' ) . ' ist. Der Gast darft';
echo '<b>' . ( $furz === false ? ' also nicht ' : '' ) . '</b> im Forum furzen :D';
einfach mal die echo´s lesen :D:D
Testen kann manchmal lustig sein
class Term_Furz extends ACL_Rule_Term_abstract
{
protected $privilege;
public function __construct( $privilege = true )
{
$this->privilege = $privilege === true ? true : false;
}
public function term( ACL $ACL = null,
ACL_Role $role = null,
ACL_Resource $resource = null
)
{
if ( date( 'H', time() ) == 22 ) {
return $this->privilege === true ? true : false;
}
else {
return $this->privilege === true ? false : true;
}
}
}
$acl->allow( 'gast', 'forum', array('furz'), new Term_Furz(true) );
$furz = $acl->hasPermission( 'gast', 'forum', 'furz' );
echo '<h3>Wenn es zwichen 22 und 23 Uhr ist darf der Gast im Forum furzen</h3>';
echo '<br />Ist es zwichen 22 und 23 Uhr? <b>' . ( $furz === true ? 'ja' : 'nein' );
echo '</b> ist es ' . ( $furz === true ? '' : 'nicht' ) . ' ist. Der Gast darft';
echo '<b>' . ( $furz === false ? ' also nicht ' : '' ) . '</b> im Forum furzen :D';