Om een autorisatie te maken hoef je slechts de ondersteunende functies aan te maken.
function autoriser_documentation_troller_dist($faire, $type, $id, $qui, $opt) {
return false; // geen trollen toegelaten! en geen uitzonderingen!
}
Het declareren van deze functie maakt het mogelijk om de functie
autoriser('troller','documentation')
of het baken
#AUTORISER{troller, documentation}
te gebruiken.
{{{Nieuwe functies, maar niet overal!}}}
Wanneer de functie
autoriser()
voor het eerst wordt opgeroepen, laadt ze een pipeline met dezelfde naam. Dze oproep van de
"autoriser" pipeline wordt gebruikt om het autorisatiebestand voor een skelettenmap of een plug-in te laden.
Voorbeeld
{{In een skelet:}}
In het bestand
config/mes_options.php
voegen we de oproep naar een functie voor onze autorisaties toe:
<?php
$GLOBALS['spip_pipeline']['autoriser'] .= "|mijn_autorisaties";
function mijn_autorisaties(){
include_spip('inc/mijn_autorisaties');
}
?>
Dus wanneer de
autoriser
pipeline wordt aangeroepen, laadt het het bestand
inc/mijn_autorisaties.php
. We kunnen nu deze map en dit bestand aanmaken wat de bedoelde autorisatiefuncties bevat in de map
squelettes/
.
{{In een plug-in:}}
Voor een plug-in is het nagenoeg hetzelfde: je moet het gebruik van de pipeline declareren in het bestand
plugin.xml
:
<pipeline>
<nom>autoriser</nom>
<inclure>inc/prefixPlugin_autoriser.php</inclure>
</pipeline>
En je maakt het bestand in kwestie en zorgt ervoor dat de functie
pluginprefix_autoriser()
is opgenomen in het bestand dat de pipeline aanroept.
<?php
if (!defined("_ECRIRE_INC_VERSION")) return;
// functie voor de pipeline, niets te doen
function pluginprefix_autoriser(){}
// declaraties van de autorisaties
function autoriser_documentation_troller_dist($faire, $type, $id, $qui, $opt) {
return false; // geen trollen toegelaten! en geen uitzonderingen!
}
?>