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 JAccessRules
+ Graphe d'héritage de JAccessRules:

Liste de tous les membres

Fonctions membres publiques

 __construct ($input= '')
 getData ()
 mergeCollection ($input)
 merge ($actions)
 mergeAction ($action, $identities)
 allow ($action, $identity)
 getAllowed ($identity)
 __toString ()

Attributs protégés

 $data = array()

Description détaillée

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


Documentation des constructeurs et destructeur

JAccessRules::__construct (   $input = '')

Constructor.

The input array must be in the form: array('action' => array(-42 => true, 3 => true, 4 => false)) or an equivalent JSON encoded string, or an object where properties are arrays.

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

Réimplémentée dans JRules.

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

{
// Convert in input to an array.
if (is_string($input))
{
$input = json_decode($input, true);
}
elseif (is_object($input))
{
$input = (array) $input;
}
if (is_array($input))
{
// Top level keys represent the actions.
foreach ($input as $action => $identities)
{
$this->mergeAction($action, $identities);
}
}
}

Documentation des fonctions membres

JAccessRules::__toString ( )

Magic method to convert the object to JSON string representation.

Renvoie:
string JSON representation of the actions array
Depuis:
11.1

Définition à la ligne 207 du fichier rules.php.

{
$temp = array();
foreach ($this->data as $name => $rule)
{
// Convert the action to JSON, then back into an array otherwise
// re-encoding will quote the JSON for the identities in the action.
$temp[$name] = json_decode((string) $rule);
}
return json_encode($temp);
}
JAccessRules::allow (   $action,
  $identity 
)

Checks that an 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:
string$actionThe name of the action.
mixed$identityAn integer representing the identity, or an array of identities
Renvoie:
mixed Object or null if there is no information about the action.
Depuis:
11.1

Définition à la ligne 165 du fichier rules.php.

{
// Check we have information about this action.
if (isset($this->data[$action]))
{
return $this->data[$action]->allow($identity);
}
return null;
}
JAccessRules::getAllowed (   $identity)

Get the allowed actions for an identity.

Paramètres:
mixed$identityAn integer representing the identity or an array of identities
Renvoie:
JObject Allowed actions for the identity or identities
Depuis:
11.1

Définition à la ligne 185 du fichier rules.php.

Références JObject\set().

{
// Sweep for the allowed actions.
$allowed = new JObject;
foreach ($this->data as $name => &$action)
{
if ($action->allow($identity))
{
$allowed->set($name, true);
}
}
return $allowed;
}

+ Voici le graphe d'appel pour cette fonction :

JAccessRules::getData ( )

Get the data for the action.

Renvoie:
array A named array of JAccessRule objects.
Depuis:
11.1

Définition à la ligne 68 du fichier rules.php.

{
return $this->data;
}
JAccessRules::merge (   $actions)

Method to merge actions with this object.

Paramètres:
mixed$actionsJAccessRule object, an array of actions or a JSON string array of actions.
Renvoie:
void
Depuis:
11.1

Définition à la ligne 103 du fichier rules.php.

{
if (is_string($actions))
{
$actions = json_decode($actions, true);
}
if (is_array($actions))
{
foreach ($actions as $action => $identities)
{
$this->mergeAction($action, $identities);
}
}
elseif ($actions instanceof JAccessRules)
{
$data = $actions->getData();
foreach ($data as $name => $identities)
{
$this->mergeAction($name, $identities);
}
}
}
JAccessRules::mergeAction (   $action,
  $identities 
)

Merges an array of identities for an action.

Paramètres:
string$actionThe name of the action.
array$identitiesAn array of identities
Renvoie:
void
Depuis:
11.1

Définition à la ligne 138 du fichier rules.php.

{
if (isset($this->data[$action]))
{
// If exists, merge the action.
$this->data[$action]->mergeIdentities($identities);
}
else
{
// If new, add the action.
$this->data[$action] = new JAccessRule($identities);
}
}
JAccessRules::mergeCollection (   $input)

Method to merge a collection of JAccessRules.

Paramètres:
mixed$inputJAccessRule or array of JAccessRules
Renvoie:
void
Depuis:
11.1

Définition à la ligne 82 du fichier rules.php.

Référencé par JAccess\getAssetRules().

{
// Check if the input is an array.
if (is_array($input))
{
foreach ($input as $actions)
{
$this->merge($actions);
}
}
}

+ Voici le graphe des appelants de cette fonction :


Documentation des données membres

JAccessRules::$data = array()
protected

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


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