Note :


Le module authedit est utilisé pour la gestion des droits.

Ce module contient de nombreuses fonctions qui sont utilisées par l'interface de gestion des droits.

Fonction de manipulation d'utilisateur :

Fonction de manipulation des zones :

Fonction de gestion de validation des comptes :


Attention !
Les fonctions et les informations fournies dans cette partie de la documentation sont susceptibles de poser des problèmes de sécurité dans votre application si elles sont improprement utilisées.
En cas de doute posez vos questions sur la mailing list.


Interface utilisateur

Le principe de fonctionnement de l'authentification Templeet est expliqué dans le module auth.

L'interface utilisateur est accessible à cette adresse:
http://rootix.free.fr/auth/

Avant toute utilisation de l'authentification de Templeet il est nécessaire de :

Cette interface peut être utilisée par toute personne ayant des droits d'édition de privilèges, c'est à dire tous les administeurs ainsi que les personnes ayant un droit d'édition de zone ou un droit de délégation de zone.

La configuration de Templeet ne peut être effectuée que par un administrateur Templeet.

A l'installation de Templeet la méthode d'authentification par défaut est la méthode fichier (file). Un seul compte existe : ADMIN (le mot de passe est celui que vous indiquez juste après l'installation). Ce compte possède le privilège administrateur et permet de configurer Templeet.

La configuration de Templeet se fait ici:

Méthode d'authentification

Le choix de la méthode d'authentification se fait avec

La méthode actuelle d'authentification: file

Les méthodes actuellement disponibles sont:


Validation des comptes

Le choix du mode de validation des comptes se fait avec

Pour être utilisable un compte doit être validé. Le mode de validation des comptes permet de choisir l'état d'un compte à sa création. Les états possibles sont:

~auth_newuser

Cette fonction permet de créer un nouvel utilisateur.

Elle prend six paramètres minimum :

Si la valeur de retour de la fonction est supérieur à 0, celle-ci correspond au numéro d'index de l'utilisateur qui vient d'être créé.

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de ~auth_newuser :

~set("user", "newpseudo"")
~set("password", "password")
~set("email", "email@templeet.org")
~set("newuser", ~auth_newuser(~get("user"), ~get("password"),, ~get("email"),
"Création d'un compte",
'Bonjour,

Vous avez demandé la création d'un compte sur ~getconf("site_url")

Pour valider cette demande vous devez charger cette page :
  ~getconf("site_url")~absolute_templeet()my_account/validaccount,~get("user"),~get("auth_validkey").html
'))

~if(~get("newuser") >=0 ,'Un nouveau compte ayant ~get("user") comme login a bien été créé',
'Un problème est survenu lors de la création de l\'utilisateur')

~auth_deluser

Cette fonction permet de supprimer un utilisateur.

La fonction prend un seul paramètre :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_deluser :

~auth_deluser(8041247)

~auth_setprivuser

Cette fonction permet définir le niveau de privilège d'un utilisateur sur une ou plusieurs zones.

Elle prend deux paramètres :

Chaque clé du tableau privarea correspond à une zone, et la valeur de cette clé correspond au niveau de privilège. Une zone est identifiée comme ceci : "{numéro_uid_du_propriétaire_de_la_zone}nom_de_la_zone".

NOTE : la valeur uid du compte ADMIN est 0

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de ~auth_setprivuser :

~auth_setprivuser(1065486181,
	~array(
		'{413980100}zone1' => 4,
		'{413980100}zone2' => 0,
		'{0}zoneA' => 9
	)
)

~auth_listuser

~auth_listuser permet de lister les comptes utilisateurs de Templeet. Les informations relatives à ces utilisateurs sont renvoyées par la fonction ~auth_listuserfld.

La fonction prend au minimum quatre arguments :

Code d'erreur renvoyé par la fonction :

~auth_listuserfld

~auth_listuserfld renvoie la valeur d'un champ de l'utilisateur listé par la fonction ~auth_listuser.

La fonction prend un seul argument. Celui-ci peut être :

~auth_nbrows

Cette fonction renvoie le nombre de comptes utilisateur selectionnés par la fonction auth_listuser.

Attention : cette fonction doit être à l'intérieur de la commande ~auth_listuser.

Exemple d'utilisation des commandes ~auth_listuser, ~auth_listuserfld et ~auth_nbrows :

  <p>Liste des utilisateurs :</p>
  ~auth_listuser("", 0,,
  "LF", '<p>Nombre d'utilisateur : ~auth_nbrows()</p>',
  "LM", '~auth_listuserfld("user")<br />')

~authlist

~authlist permet de lister les propriétés d'un compte. Les informations relatives à ces propriétés sont renvoyées par la fonction ~authfld.

La fonction prend quatre arguments au minimum :

Code d'erreur renvoyé par la fonction :

~authfld

~authfld renvoie la valeur de la propriété d'un compte listé par la fonction ~authlist.

La fonction prend un seul argument. Celui-ci peut être :

Exemple d'utilisation des commandes ~authlist et ~authfld :

~authlist("ADMIN", 
"LF",'
	user : ~authfld("user"),<br />c
	email :~authfld("email"),<br />
	valid : ~authfld("valid"),<br />
	ipaddr :~authfld("ipaddr"),<br />
	creation : ~authfld("creation"),<br />
	uid : ~authfld("uid")',<br />
"LM",'
	Nom de la zone : ~authfld("area"),<br />
	Label de la zone : ~authfld("name"),<br />
	Niveau de droit de l\'utilisateur sur cette zone : ~authfld("val"),<br />
')

~auth_passwd

Cette fonction permet de modifier le mot de passe d'un utilisateur

La fonction prend trois arguments :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_passwd :

~auth_passw(1065486181, "ancienmotdepasse", "nouveaumotdepasse")

~auth_loginnick

Cette fonction permet de modifier l'identifiant de connexion (login) et le pseudo (nickname) d'un utilisateur.

La fonction prend trois arguments :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_loginnick :

~auth_loginnick(1065486181, "nouveaupseudo", "nouveaunickname")

~auth_newmail

Cette fonction permet d'effectuer une demande de modification de l'adresse électronique d'un utilisateur.

La fonction prend trois paramètres :

Dans le corps du message vous avez accès aux variables suivantes :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_newmail :

~auth_newmail("newmail@domain.org",
'Changement de votre adresse email',
'Bonjour,

Vous avez demandé le changement de votre adresse email.

Pour valider cette demande vous devez charger cette page :
 ~getconf('site_url')~absolute_templeet()my_account/setnewemail,~get("auth_uid"),~get("auth_email"),~get("auth_validkey").html
 
 --
 Ce site est géré par Templeet
 ')

~auth_setnewmail

Cette fonction permet de valider la demande de modification de l'adresse électronique d'un utilisateur.

La fonction prend trois paramètres :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_setnewmail :

Cet exemple utilise les paramètres transmis à la page my_account/setnewemail.html de l'exemple de la fonction ~auth_newmail

~auth_setnewmail(
	~get_filenamevar(1), --> ce paramètre contient la valeur de ~get("auth_uid")
	~get_filenamevar(2), --> ce paramètre contient la valeur de ~get("auth_email")
	~get_filenamevar(3)  --> ce paramètre contient la valeur de ~get("auth_validkey")
)

~auth_newarea

Cette fonction permet de créer une nouvelle zone.

La fonction prend trois paramètres :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_newarea :

~auth_newarea(4577458, "area_foo", "This is the foo area")

~auth_delarea

Cette fonction permet de supprimer une zone.

La fonction prend deux paramètres :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_delarea :

~auth_delarea(4577458, "area_foo")

~auth_setarea

Cette fonction permet de modifier le champ label d'une zone.

La fonction prend trois paramètres :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_setarea :

~auth_setarea(4577458, "area_foo", "newname")

~auth_listarea

~auth_list permet de lister les zones existantes. Les informations relatives à ces zones sont renvoyées par la fonction ~auth_listareafld.

La fonction prend trois arguments au minimum :

Code d'erreur renvoyé par la fonction :

~auth_listareafld

~auth_listareafld renvoie la valeur d'un champ de la zone listé par la fonction ~auth_listarea.

La fonction prend un seul argument. Celui-ci peut être :

Exemple d'utilisation des commandes ~auth_listarea et ~auth_listareafld :

~getauth('', -1)

~auth_listarea("ADMIN",
"LD", "pas de zone",
"LM", '~auth_listareafld("name"), ~auth_listareafld("label")<br />')

~auth_validmode

Cette fonction renvoie le mode de validation courant.

Exemple d'utilisation de la commandes ~auth_validmode :

  Mode de validation des comptes Templeet actuel : ~auth_validmode()

~auth_validaccount

~auth_validaccount permet de valider un compte précédemment créé.

La fonction prend 3 arguments au minimum :

Information : en mode de validation CONFADMIN, un mail est envoyé à l'administateur du site pour l'informer qu'un compte a été créé afin qu'il le valide.

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la commandes ~auth_validaccount :

~set("res", ~auth_validaccount(~get("user"), ~get("key"),, "Nouvel utilisateur : ~get("user")",
'L\'utilisateur ~get("user") a confirmé sont inscription.

Vous devez maintenant valider son compte pour qu'il soit actif.

'))

~if(~get("res")==0, 'Votre demande de compte a été confirmée',
'Une erreur s\'est produite lors de la validation de votre compte')

~auth_setconfvalid

Cette fonction permet de modifier le mode de validation courant des comptes

Cette fonction prend un seul paramètre :

Code d'erreur renvoyé par la fonction :

Exemple d'utilisation de la fonction ~auth_setconfvalid

~auth_setconfvalid("YES")