Joomla Platform  13.1
Documentation des API du framework Joomla Platform
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Pages
Référence de la classe JAccessRule
+ Graphe d'héritage de JAccessRule:

Liste de tous les membres

Fonctions membres publiques

 __construct ($identities)
 getData ()
 mergeIdentities ($identities)
 mergeIdentity ($identity, $allow)
 allow ($identities)
 __toString ()

Attributs protégés

 $data = array()

Description détaillée

Définition à la ligne 19 du fichier rule.php.


Documentation des constructeurs et destructeur

JAccessRule::__construct (   $identities)

Constructor.

The input array must be in the form: array(-42 => true, 3 => true, 4 => false) or an equivalent JSON encoded string.

Paramètres:
mixed$identitiesA JSON format string (probably from the database) or a named array.
Depuis:
11.1

Réimplémentée dans JRule.

Définition à la ligne 39 du fichier rule.php.

{
// Convert string input to an array.
if (is_string($identities))
{
$identities = json_decode($identities, true);
}
$this->mergeIdentities($identities);
}

Documentation des fonctions membres

JAccessRule::__toString ( )

Convert this object into a JSON encoded string.

Renvoie:
string JSON encoded string
Depuis:
11.1

Définition à la ligne 172 du fichier rule.php.

{
return json_encode($this->data);
}
JAccessRule::allow (   $identities)

Checks that this action can be performed by an identity.

The identity is an integer where +ve represents a user group, and -ve represents a user.

Paramètres:
mixed$identitiesAn integer or array of integers representing the identities to check.
Renvoie:
mixed True if allowed, false for an explicit deny, null for an implicit deny.
Depuis:
11.1

Définition à la ligne 129 du fichier rule.php.

{
// Implicit deny by default.
$result = null;
// Check that the inputs are valid.
if (!empty($identities))
{
if (!is_array($identities))
{
$identities = array($identities);
}
foreach ($identities as $identity)
{
// Technically the identity just needs to be unique.
$identity = (int) $identity;
// Check if the identity is known.
if (isset($this->data[$identity]))
{
$result = (boolean) $this->data[$identity];
// An explicit deny wins.
if ($result === false)
{
break;
}
}
}
}
return $result;
}
JAccessRule::getData ( )

Get the data for the action.

Renvoie:
array A named array
Depuis:
11.1

Définition à la ligne 57 du fichier rule.php.

{
return $this->data;
}
JAccessRule::mergeIdentities (   $identities)

Merges the identities

Paramètres:
mixed$identitiesAn integer or array of integers representing the identities to check.
Renvoie:
void
Depuis:
11.1

Définition à la ligne 71 du fichier rule.php.

{
if ($identities instanceof JAccessRule)
{
$identities = $identities->getData();
}
if (is_array($identities))
{
foreach ($identities as $identity => $allow)
{
$this->mergeIdentity($identity, $allow);
}
}
}
JAccessRule::mergeIdentity (   $identity,
  $allow 
)

Merges the values for an identity.

Paramètres:
integer$identityThe identity.
boolean$allowThe value for the identity (true == allow, false == deny).
Renvoie:
void
Depuis:
11.1

Définition à la ligne 97 du fichier rule.php.

{
$identity = (int) $identity;
$allow = (int) ((boolean) $allow);
// Check that the identity exists.
if (isset($this->data[$identity]))
{
// Explicit deny always wins a merge.
if ($this->data[$identity] !== 0)
{
$this->data[$identity] = $allow;
}
}
else
{
$this->data[$identity] = $allow;
}
}

Documentation des données membres

JAccessRule::$data = array()
protected

Définition à la ligne 27 du fichier rule.php.


La documentation de cette classe a été générée à partir du fichier suivant :