Bibliothèque Mgr
De ISPWiki.
Sommaire |
Introduction
La bibliothèque a été créée pour le fonctionnement sous nos produits des scripts d'utilisateur.
Utilisation dans Perl
Veuillez commencer à partir des lignes:
BEGIN { push @INC, '/usr/local/ispmgr/lib/perl' }
use Mgr;
Maintenant il peut utiliser les fonctions de la bibliothèque.
Requêtes au panneau d'administration (fonction query)
Pour réaliser une requête au panneau d'administration, veuillez utiliser la fonction query:
($xmldoc, $xmlroot) = Mgr::query (nom_de_fonction, liste_des_paramètres [, type_de_sortie]);
Où:
- nom_de_fonction
- le nom de fonction du panneau d'administration qui doit être appelée.
- liste_des_paramètres
- les paramètres qu'il faut transférer au panneau d'administration. C'est la liste des listes. Par exemple: [['elid', 'root'], ['su', 'admin']]
- type_de_sortie
- le type de XML qu'il faut obtenir. Il y a des variantes possibles: xml (par défaut), devel. Ce paramètre n'est pas obligatoire.
A titre des résultats, vous recevez les deux valeurs:
- XML::LibXML::Document (document XML)
- XML::LibXML::Node (élément racine XML)
Exemples d'utilisation
($xmldoc, $xmlroot) = Mgr::query ('user', []);
On obtient la liste des utilisateurs.
($xmldoc, $xmlroot) = Mgr::query ('user.edit', [ ['elid', 'someuser'] ]);
On obtient les données d'utilisateur someuser.
($xmldoc, $xmlroot) = Mgr::query ('user.edit', [ ['elid', 'someuser'] ], 'devel');
On obtient les données d'utilisateur someuser au format 'devel'.
Utilisation dans Python
Veuillez commencer à partir des lignes:
from sys import path
path.append('/usr/local/ispmgr/lib/python')
import mgr
Maintenant il peut utiliser les fonctions de la bibliothèque.
Requêtes au panneau d'administration (fonction query)
Pour réaliser une requête au panneau d'administration, veuillez utiliser la fonction query:
xmldoc, xmlroot = mgr.query(nom_de_fonction, liste_des_paramètres [, type_de_sortie] [, mgrname]);
où:
- nom_de_fonction
- le nom de fonction du panneau d'administration qui doit être appelée.
- liste_des_paramètres
- les paramètres qu'il faut transférer au panneau d'administration. C'est la liste des listes. Par exemple: [['elid', 'root'], ['su', 'admin']]
- type_de_sortie
- le type de XML qu'il faut obtenir. Il y a des variantes possibles: xml (par défaut), devel. Ce paramètre n'est pas obligatoire.
- mgrname
- quelle panneau de configuration. Il y a des variantes possibles: ispmgr (par défaut), billmgr et etc. Ce paramètre n'est pas obligatoire
A titre des résultats, vous recevez les deux valeurs:
- xml.dom.minidom.Document (document XML)
- xml.dom.minidom.Element (élément racine XML)
Exemples d'utilisation
xmldoc, xmlroot = mgr.query('user', [])
On obtient la liste des utilisateurs.
xmldoc, xmlroot = mgr.query('user.edit', [ ['elid', 'someuser'] ])
On obtient les données d'utilisateur someuser.
xmldoc, xmlroot = mgr.query('user.edit', [ ['elid', 'someuser'] ], out='devel')
On obtient les données d'utilisateur someuser au format 'devel'.
Comment obtenir les données d'utilisateur courant (fonction session)
Pour obtenir les données d'utilisateur courant (qui a réalisé la requête à votre extension), il faut utiliser la fonction session.
ses = mgr.session(nom_cookie, [, objet_CGI] [, mgrname]);
où:
- nom_cookie
- le nom de cookie du panneau d'administration. Par exemple, 'ispmgr4'.
- objet_CGI
- l'objet du module standart Perl CGI: $Q = new CGI.
- mgrname
- quelle panneau de configuration. Il y a des variantes possibles: ispmgr (par défaut), billmgr et etc. Ce paramètre n'est pas obligatoire
La fonction retourne none (l'utilisateur n'a pas été trouvé) ou le lien vers la hachage avec les clés::
- skin
- Thème graphique courant.
- lang
- la langue courante.
- sesid
- Id de session d'utilisateur.
- username
- Nom d'utilisateur.
- ip
- IP d'utilisateur.
- level
- Niveau d'accès de l'utilisateur.
Si la requête a été effectuée via mgrctl, username ne s'affiche que.
Exemples d'utilisation
ses = mgr.session('ispmgr4')
if ses is None or ses['username'] != 'root':
print "Authentication failed!\n"
Si l'utilisateur ne s'identifie pas ou si l'utilisateur n'est pas root — tapez la ligne de défaut dans le champ d'identification.
Utilisation dans Python
Veuillez commencer à partir des lignes:
from sys import path
path.append('/usr/local/ispmgr/lib/python')
import mgr
Maintenant il peut utiliser les fonctions de la bibliothèque.
Requêtes au panneau d'administration (fonction query)
Pour réaliser une requête au panneau d'administration, veuillez utiliser la fonction query:
xmldoc, xmlroot = mgr.query(nom_de_fonction, liste_des_paramètres [, type_de_sortie] [, mgrname]);
où:
- nom_de_fonction
- le nom de fonction du panneau d'administration qui doit être appelée.
- liste_des_paramètres
- les paramètres qu'il faut transférer au panneau d'administration. C'est la liste des listes. Par exemple: [['elid', 'root'], ['su', 'admin']]
- type_de_sortie
- le type de XML qu'il faut obtenir. Il y a des variantes possibles: xml (par défaut), devel. Ce paramètre n'est pas obligatoire.
- mgrname
- quelle panneau de configuration. Il y a des variantes possibles: ispmgr (par défaut), billmgr et etc. Ce paramètre n'est pas obligatoire
A titre des résultats, vous recevez les deux valeurs:
- xml.dom.minidom.Document (document XML)
- xml.dom.minidom.Element (élément racine XML)
Exemples d'utilisation
xmldoc, xmlroot = mgr.query('user', [])
On obtient la liste des utilisateurs.
xmldoc, xmlroot = mgr.query('user.edit', [ ['elid', 'someuser'] ])
On obtient les données d'utilisateur someuser.
xmldoc, xmlroot = mgr.query('user.edit', [ ['elid', 'someuser'] ], out='devel')
On obtient les données d'utilisateur someuser au format 'devel'.
Comment obtenir les données d'utilisateur courant (fonction session)
Pour obtenir les données d'utilisateur courant (qui a réalisé la requête à votre extension), il faut utiliser la fonction session.
ses = mgr.session(nom_cookie, [, objet_CGI] [, mgrname]);
où:
- nom_cookie
- le nom de cookie du panneau d'administration. Par exemple, 'ispmgr4'.
- objet_CGI
- l'objet qui sera utilisé pour obtenir le cookie. La variable par défaut est HTTP_COOKIE. Ce paramètre n'est pas obligatoire.
- mgrname
- quelle panneau de configuration. Il y a des variantes possibles: ispmgr (par défaut), billmgr et etc. Ce paramètre n'est pas obligatoire.
La fonction retourne none (l'utilisateur n'a pas été trouvé) ou le lien vers la hachage avec les clés::
- skin
- Thème graphique courant.
- lang
- la langue courante.
- sesid
- Id de session d'utilisateur.
- username
- Nom d'utilisateur.
- ip
- IP d'utilisateur.
- level
- Niveau d'accès de l'utilisateur.
Si la requête a été effectuée via mgrctl, username ne s'affiche que.
Exemples d'utilisation
ses = mgr.session('ispmgr4')
if ses is None or ses['username'] != 'root':
print "Authentication failed!\n"
Si l'utilisateur ne s'identifie pas ou si l'utilisateur n'est pas root — tapez la ligne de défaut dans le champ d'identification.
