mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-11-23 18:39:07 +01:00
Compare commits
4 commits
c31fe88371
...
9f65ef67f7
Author | SHA1 | Date | |
---|---|---|---|
|
9f65ef67f7 | ||
|
e29852639d | ||
|
989dd77b1e | ||
|
d781be02f8 |
19 changed files with 71 additions and 50 deletions
1
doc/.gitignore
vendored
1
doc/.gitignore
vendored
|
@ -1,2 +1,3 @@
|
|||
public_html
|
||||
LdapSaisie.html
|
||||
venv
|
||||
|
|
17
doc/Makefile
Normal file
17
doc/Makefile
Normal file
|
@ -0,0 +1,17 @@
|
|||
serve: venv
|
||||
venv/bin/mkdocs serve
|
||||
|
||||
build: venv public_html LdapSaisie.html
|
||||
|
||||
public_html:
|
||||
venv/bin/mkdocs build -s
|
||||
|
||||
LdapSaisie.html: public_html
|
||||
venv/bin/htmlark public_html/print_page/index.html -o LdapSaisie.html
|
||||
|
||||
venv:
|
||||
python3 -m venv venv
|
||||
venv/bin/python -m pip install -r requirements.txt
|
||||
|
||||
clean:
|
||||
rm -fr venv public_html LdapSaisie.html
|
|
@ -19,7 +19,6 @@ extra:
|
|||
plugins:
|
||||
- search:
|
||||
lang: fr # Set language for search
|
||||
- include-markdown
|
||||
- print-site
|
||||
|
||||
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
mkdocs
|
||||
mkdocs-material
|
||||
mdx_truly_sane_lists
|
||||
mkdocs-include-markdown-plugin
|
||||
mkdocs-print-site-plugin
|
||||
# For building all-in-one HTML file
|
||||
html5lib
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# LSaddon_mailquota
|
||||
|
||||
Cet [LSaddon](../conf/#configuration-des-lsaddons) fournie une fonction `mailquota_get_usage`
|
||||
Cet [LSaddon](index.md#configuration-des-lsaddons) fournie une fonction `mailquota_get_usage`
|
||||
pouvant être utilisée pour récupérer l'utilisation du quota d'une boîte mail IMAP. Pour cela,
|
||||
LdapSaisie se connecte au serveur IMAP en utilisant un compte maître.
|
||||
|
||||
|
|
|
@ -5,13 +5,13 @@ Typiquement, ce type attribut HTML est utile dans le cas de l'attribut *mailbox*
|
|||
maildrop pour stocker le chemin des boites mails. Ce type d'attribut offre la possibilité de gérér
|
||||
un niveau de l'attribut et à travers les déclencheurs gérés par LdapSaisie la création, la
|
||||
modification et ou la suppression de la boite mails.
|
||||
Le [LSaddon](../conf/#configuration-des-lsaddons)
|
||||
Le [LSaddon](../../../LSaddon/index.md#configuration-des-lsaddons)
|
||||
[maildir](../../../LSaddon/LSaddon_maildir.md#lsaddon_maildir) est utilisé pour manipuler la boite
|
||||
mail à distance.
|
||||
|
||||
!!! note
|
||||
|
||||
Actuellement, cet [LSaddon](../conf/#configuration-des-lsaddons) ne gérant que l'accès via FTP
|
||||
Actuellement, cet [LSaddon](../../../LSaddon/index.md#configuration-des-lsaddons) ne gérant que l'accès via FTP
|
||||
au serveur distant, l'API d'accès via FTP est attaquée directement.
|
||||
|
||||
```
|
||||
|
|
|
@ -15,7 +15,11 @@ Ce type est utilisé pour la gestion des attributs dont la valeur est une date.
|
|||
```
|
||||
'ldap_options' => array (
|
||||
'timestamp' => [Booléen], // Si la date est stockée au format timestamp
|
||||
'format' => '[Format de stockage]', // Default : "YmdHisO"
|
||||
'formats' => array(
|
||||
'[Format de stockage principal]', // Par défaut : "YmdHisO"
|
||||
'[Formats de stockage alternatifs]', // Par défaut : "YmdHis.vO" & "YmdHis.uO"
|
||||
[...]
|
||||
),
|
||||
'timezone' => '[Fuseau horaire]', // Default : "UTC"
|
||||
),
|
||||
...
|
||||
|
@ -28,27 +32,30 @@ Ce type est utilisé pour la gestion des attributs dont la valeur est une date.
|
|||
|
||||
Si `timestamp` est vrai, LdapSaisie ne tient pas compte du paramètre format.
|
||||
|
||||
- `format`
|
||||
- `formats`
|
||||
|
||||
Format de stockage de la date dans l'annuaire. Ce format est composé à partir des motifs clés
|
||||
Formats de stockage de la date dans l'annuaire. Ces formats sont composés à partir des motifs clés
|
||||
gérés par la fonction `date()` de PHP. Pour plus d'information, consulter
|
||||
[la documentation officielle](http://www.php.net/date).
|
||||
[la documentation officielle](http://www.php.net/date). Plusieurs formats peuvent être définis,
|
||||
mais en cas de stockage d'une nouvelle valeur, se sera le premier format défini qui sera utilisé.
|
||||
|
||||
!!! note
|
||||
|
||||
La valeur par défaut est *YmdHisO*, correspondant à la syntaxe `Generalized Time` (sans les
|
||||
micro-secondes) telle que définie dans la [RFC4517](https://tools.ietf.org/html/rfc4517).
|
||||
Exemples : `20091206230506Z` *(=2009/12/06 23:05:66 UTC)* ou `20190613143537+0200`
|
||||
*(=2019/06/13 14:35:37 UTC+0200)*.
|
||||
La valeur par défaut est *["YmdHisO", "YmdHis.vO", "YmdHis.uO"]*, correspondant à la syntaxe
|
||||
`Generalized Time` (sans et avec les milli-secondes ou micro-secondes) telle que définie dans
|
||||
la [RFC4517](https://tools.ietf.org/html/rfc4517).
|
||||
Exemples : `20091206230506Z` *(=2009/12/06 23:05:66 UTC)*, `20190613143537+0200`
|
||||
*(=2019/06/13 14:35:37 UTC+0200)* ou `20230818121005.307+0200`
|
||||
*(=2023/08/18 12:10:05.307 UTC+0200)*.
|
||||
|
||||
!!! warning
|
||||
|
||||
Si vous exploitez un attribut stockant une date incluant les micro-secondes, ce type
|
||||
d'attribut LDAP sera capable de gérer l'interpratation des valeurs stockées en configurant le
|
||||
format `YmdHis.uO`. En outre, le type d'attribut
|
||||
Si vous exploitez un attribut stockant une date incluant les milli-secondes ou les
|
||||
micro-secondes, ce type d'attribut LDAP sera capable de gérer l'interpratation des valeurs
|
||||
stockées, en outre le type d'attribut
|
||||
[LSattr_html_date](../LSattr_html/LSattr_html_date.md#lsattr_html_date), s'appuyant sur les
|
||||
méthodes standards `strftime()` et `strptime()`, ne permettra pas aujourd'hui la saisie et
|
||||
l'affichage des millisecondes.
|
||||
méthodes standards `strftime()` et `strptime()`, ne permettra pas aujourd'hui leur saisie et
|
||||
affichage.
|
||||
|
||||
- `timezone`
|
||||
|
||||
|
|
|
@ -413,4 +413,4 @@ personnalisée doit être exécutée et doit retourner soit `True` si tout s'est
|
|||
!!! note
|
||||
|
||||
Ces fonctions sont le plus couramment définies au sein
|
||||
d'[LSaddon](../conf/#configuration-des-lsaddons).
|
||||
d'[LSaddon](../LSaddon/index.md#configuration-des-lsaddons).
|
||||
|
|
|
@ -117,4 +117,4 @@ passé, soit `False` en cas de problème.
|
|||
!!! note
|
||||
|
||||
Ces fonctions sont le plus couramment définies au sein d'
|
||||
[LSaddon](../conf/#configuration-des-lsaddons).
|
||||
[LSaddon](../LSaddon/index.md#configuration-des-lsaddons).
|
||||
|
|
|
@ -221,7 +221,7 @@ $GLOBALS['LSconfig'] = array(
|
|||
- Le nom d'un [LSobject](../../LSobject/index.md#configuration-lsobject) pour afficher la liste de
|
||||
ce type d'objet
|
||||
|
||||
- Le nom d'une vue d'un [LSaddon](../conf/#configuration-des-lsaddons) au format
|
||||
- Le nom d'une vue d'un [LSaddon](../../LSaddon/index.md#configuration-des-lsaddons) au format
|
||||
`[addon]::[viewId]` pour afficher cette vue
|
||||
|
||||
- `emailSender`
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Les commandes *CLI* personnalisées
|
||||
|
||||
Les [LSaddons](../../conf/#configuration-des-lsaddons) peuvent fournir des commandes *CLI*
|
||||
Les [LSaddons](../../conf/index.md#configuration-des-lsaddons) peuvent fournir des commandes *CLI*
|
||||
personnalisées qui seront accessibles via la commande `ldapsaisie` fournie avec l'application. Cela
|
||||
peut, par exemple, vous permettre de rendre accessible en ligne de commandes une procédure
|
||||
implémentée dans le code d'LdapSaisie et vous permettre de mettre en place une tâche planifiée
|
||||
|
@ -61,7 +61,7 @@ Pour mettre en place une telle commande *CLI* personnalisée, il est nécessaire
|
|||
|
||||
- `LScli :: autocomplete_addon_name()`
|
||||
|
||||
Autocomplétion du nom d'un [LSaddon](../../conf/#configuration-des-lsaddons).
|
||||
Autocomplétion du nom d'un [LSaddon](../../conf/index.md#configuration-des-lsaddons).
|
||||
|
||||
- `LScli :: autocomplete_int()`
|
||||
|
||||
|
@ -69,11 +69,11 @@ Pour mettre en place une telle commande *CLI* personnalisée, il est nécessaire
|
|||
|
||||
- `LScli :: autocomplete_LSobject_types()`
|
||||
|
||||
Autocomplétion du nom d'un type d'[LSobject](../../conf/#configuration-lsobject).
|
||||
Autocomplétion du nom d'un type d'[LSobject](../../conf/index.md#configuration-lsobject).
|
||||
|
||||
- `LScli :: autocomplete_LSobject_dn()`
|
||||
|
||||
Autocomplétion du DN d'un type précis d'[LSobject](../../conf/#configuration-lsobject) de
|
||||
Autocomplétion du DN d'un type précis d'[LSobject](../../conf/index.md#configuration-lsobject) de
|
||||
l'annuaire.
|
||||
|
||||
Par ailleurs, la méthode `LScli :: autocomplete_opts()` vous facilitera la construction de la
|
||||
|
@ -84,7 +84,7 @@ Pour mettre en place une telle commande *CLI* personnalisée, il est nécessaire
|
|||
|
||||
Pour implémenter une telle commande *CLI* personnalisée, vous pouvez vous inspirer de l'exemple
|
||||
fourni ci-dessous ou encore des commandes *CLI* fournies par les autres
|
||||
[LSaddons](../../conf/#configuration-des-lsaddons) ou classes PHP de l'application.
|
||||
[LSaddons](../../conf/index.md#configuration-des-lsaddons) ou classes PHP de l'application.
|
||||
|
||||
**Structure du fichier includes/addons/LSaddons.[addon name].php :**
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Les vues personnalisées
|
||||
|
||||
Les [LSaddons](../../conf/#configuration-des-lsaddons) peuvent fournir des vues personnalisées qui
|
||||
Les [LSaddons](../../conf/index.md#configuration-des-lsaddons) peuvent fournir des vues personnalisées qui
|
||||
seront accessibles à tout ou parties des utilisateurs de l'application. Ce filtrage d'accès sera
|
||||
fait en utilisant les [LSprofiles](../../conf/global/ldap/LSprofile.md#profils-dutilisateurs) de
|
||||
l'utilisateur connecté sur la
|
||||
|
@ -17,7 +17,7 @@ Pour mettre en place une telle vue personnalisée, il est nécessaire de :
|
|||
|
||||
Pour implémenter une telle vue personnalisée, vous pouvez vous inspirer de l'exemple fourni
|
||||
ci-dessous ou encore des vues fournies par les autres
|
||||
[LSaddons](../../conf/#configuration-des-lsaddons) (par exemple, l'addon
|
||||
[LSaddons](../../conf/index.md#configuration-des-lsaddons) (par exemple, l'addon
|
||||
[exportSearchResultAsCSV](../../conf/LSaddon/LSaddon_exportSearchResultAsCSV.md#lsaddon_exportsearchresultascsv)).
|
||||
|
||||
**Structure du fichier includes/addons/LSaddons.[addon name].php :**
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# Les addons (LSaddon)
|
||||
|
||||
Les [LSaddons](../../conf/#configuration-des-lsaddons) sont utilisés pour implémenter dans LdapSaisie
|
||||
Les [LSaddons](../../conf/index.md#configuration-des-lsaddons) sont utilisés pour implémenter dans LdapSaisie
|
||||
des fonctionnalités spécifiques tel que :
|
||||
|
||||
- le support d'une famille d'attributs spécifiques (POSIX, Samba, SUPANN…) par le biais de méthodes
|
||||
|
@ -8,32 +8,32 @@ des fonctionnalités spécifiques tel que :
|
|||
|
||||
- des tâches communes et génériques (envoi de mails, connexion FTP/SSH…) ;
|
||||
|
||||
- l'implémentation de [déclencheurs](../../conf/#declencheurs_1) spécifiques à votre environnement :
|
||||
- l'implémentation de [déclencheurs](../../conf/index.md#declencheurs_1) spécifiques à votre environnement :
|
||||
création automatique du dossier client sur le serveur de fichiers de l'entreprise, création de la
|
||||
boite mail de l'utilisateur… ;
|
||||
|
||||
- l'implémentation de [vues personnalisées](#les-vues-personnalisees) proposées dans l'interface
|
||||
|
||||
- l'implémentation d'action personnalisée sur les [objets](../../conf/#customactions) (synchronisation,
|
||||
- l'implémentation d'action personnalisée sur les [objets](../../conf/index.md#customactions) (synchronisation,
|
||||
archivage…) ou sur les [résultats de recherches](../../conf/LSobject/LSsearch.md#customactions)
|
||||
(export, rapport personnalisé…) ;
|
||||
|
||||
## Structure d'écriture
|
||||
|
||||
L'écriture d'un [LSaddon](../../conf/#configuration-des-lsaddons) doit respecter une structure
|
||||
L'écriture d'un [LSaddon](../../conf/index.md#configuration-des-lsaddons) doit respecter une structure
|
||||
suffisamment souple afin de ne pas être un frein à vos contributions, tout en permettant d'assurer
|
||||
la bonne intégration de votre contribution au projet. Le code que vous écrirez sera réparti dans
|
||||
deux fichiers :
|
||||
|
||||
- `conf/LSaddons/config.LSaddons.[addon name].php`
|
||||
|
||||
Ce fichier contiendra la configuration de votre [LSaddon](../../conf/#configuration-des-lsaddons).
|
||||
Ce fichier contiendra la configuration de votre [LSaddon](../../conf/index.md#configuration-des-lsaddons).
|
||||
On y retrouvera la déclaration de constances et/ou variables de configuration permettant d'adapter
|
||||
votre [LSaddon](../../conf/#configuration-des-lsaddons) à une installation et à un environnement.
|
||||
votre [LSaddon](../../conf/index.md#configuration-des-lsaddons) à une installation et à un environnement.
|
||||
|
||||
- `includes/addons/LSaddons.[addon name].php`
|
||||
|
||||
Ce fichier contiendra le code à proprement dit de votre [LSaddon](../../conf/#configuration-des-lsaddons).
|
||||
Ce fichier contiendra le code à proprement dit de votre [LSaddon](../../conf/index.md#configuration-des-lsaddons).
|
||||
|
||||
**Structure du fichier includes/addons/LSaddons.[addon name].php :**
|
||||
|
||||
|
@ -160,13 +160,13 @@ deux fichiers :
|
|||
Par convention, la structure de ce fichier est toujours à peu près la même:
|
||||
|
||||
- On déclare tout d'abord les messages d'erreurs qui seront potentiellement émis par notre
|
||||
[LSaddon](../../conf/#configuration-des-lsaddons) en commençant par les messages d'erreurs liés au
|
||||
support de cet [LSaddon](../../conf/#configuration-des-lsaddons). On utilise pour cela la méthode
|
||||
[LSaddon](../../conf/index.md#configuration-des-lsaddons) en commençant par les messages d'erreurs liés au
|
||||
support de cet [LSaddon](../../conf/index.md#configuration-des-lsaddons). On utilise pour cela la méthode
|
||||
`LSerror :: defineError()` qui attends en premier argument, l'identifiant du message
|
||||
d'erreur et en tant que second argument, le
|
||||
[LSformat](../../conf/global/LSformat.md#format-parametrable) du message d'erreur. Par convention,
|
||||
les identifiants des messages d'erreurs seront en majuscule et préfixés du nom du
|
||||
[LSaddon](../../conf/#configuration-des-lsaddons).
|
||||
[LSaddon](../../conf/index.md#configuration-des-lsaddons).
|
||||
|
||||
- On déclare ensuite une fonction `LSaddon_[myaddon]_support` qui sera exécutée lors du chargement
|
||||
de l'addon et qui permettra de s'assurer du support de celui-ci. Cette fonction devra retourner
|
||||
|
@ -177,9 +177,9 @@ Par convention, la structure de ce fichier est toujours à peu près la même:
|
|||
- que les librairies dont l'addon dépends sont bien chargées et fonctionnelles ;
|
||||
- que ses variables et constantes de configuration sont bien définies ;
|
||||
- de déclarer [les vues personnalisées](#les-vues-personnalisees) fournies par cet
|
||||
[LSaddon](../../conf/#configuration-des-lsaddons) ;
|
||||
[LSaddon](../../conf/index.md#configuration-des-lsaddons) ;
|
||||
- de déclarer [les commandes *CLI* personnalisées](#les-commandes-cli-personnalisees) fournies par
|
||||
cet [LSaddon](../../conf/#configuration-des-lsaddons) ;
|
||||
cet [LSaddon](../../conf/index.md#configuration-des-lsaddons) ;
|
||||
|
||||
- On déclare ensuite les fonctions, classes et éléments fournis et manipulés par l'addon.
|
||||
- Si notre addon offre des [commandes *CLI* personnalisées](#les-commandes-cli-personnalisees), les
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
Les [LSformRules](#lsformrules) sont les règles syntaxiques applicables aux champs des formulaires.
|
||||
Ces règles serviront à s'assurer que les valeurs des champs récupérées des formulaires sont
|
||||
syntaxiquement correctes. Elles seront configurables via le paramètre `check_data` des attributs des
|
||||
[LSobjects](../conf/#configuration-lsobject).
|
||||
[LSobjects](../conf/index.md#configuration-lsobject).
|
||||
|
||||
Pour chaque type implémenté, on trouvera une classe PHP dérivée de la classe `LSformRule` et devant
|
||||
s'appeler `LSattr_rule_[nom du type]`. Dans celle-ci, il devra être défini la méthode statique
|
||||
|
|
|
@ -23,15 +23,15 @@
|
|||
|
||||
- `LSobjects/`
|
||||
|
||||
Configuration des [LSobjects](../conf/#configuration-lsobject).
|
||||
Configuration des [LSobjects](../conf/index.md#configuration-lsobject).
|
||||
|
||||
- `LSaddons/`
|
||||
|
||||
Configuration des [LSaddons](../conf/#configuration-des-lsaddons).
|
||||
Configuration des [LSaddons](../conf/index.md#configuration-des-lsaddons).
|
||||
|
||||
- `LSauth/`
|
||||
|
||||
Configuration des [LSauthMethod](../conf/#configuration-des-lsauthmethods).
|
||||
Configuration des [LSauthMethod](../conf/index.md#configuration-des-lsauthmethods).
|
||||
|
||||
- `includes/`
|
||||
|
||||
|
|
|
@ -34,5 +34,3 @@ Toutes les nuits, un snapshot de l'arbre Git est réalisé et est téléchargeab
|
|||
l'adresse suivante :
|
||||
|
||||
<http://ldapsaisie.org/download/ldapsaisie-snapshoot.tar.gz>
|
||||
|
||||
{% include-markdown "arbo.md" %}
|
||||
|
|
|
@ -118,7 +118,7 @@ LdapSaisie doit correspondre avec un type de LSobject.
|
|||
relations les plus simples (via un attribut de liaison) pourront être implémentées à l'aide d'un
|
||||
simple paramètrage. Pour des relations, plus complexes, il sera possible d'implémenter des
|
||||
méthodes personnalisées pour les gérer. Pour plus de détails, reportez-vous à
|
||||
[la section concernée](../conf/#lsrelation).
|
||||
[la section concernée](../conf/index.md#lsrelation).
|
||||
|
||||
!!! note
|
||||
|
||||
|
|
|
@ -37,10 +37,10 @@
|
|||
paquets `php-mail` et `php-mail-mime` dans Debian)
|
||||
|
||||
- La librairie [Net_FTP](https://pear.php.net/package/Net_FTP) (nécessaire pour le fonctionnement du
|
||||
[LSaddon](../conf/#configuration-des-lsaddons) FTP, paquet `php-console-table` dans Debian)
|
||||
[LSaddon](../conf/index.md#configuration-des-lsaddons) FTP, paquet `php-console-table` dans Debian)
|
||||
|
||||
- La librairie [PhpSecLib](https://github.com/phpseclib/phpseclib) (nécessaire pour le
|
||||
fonctionnement du [LSaddon](../conf/#configuration-des-lsaddons) SSH, paquet `php-console-table`
|
||||
fonctionnement du [LSaddon](../conf/index.md#configuration-des-lsaddons) SSH, paquet `php-console-table`
|
||||
dans Debian)
|
||||
|
||||
!!! warning
|
||||
|
|
|
@ -155,7 +155,7 @@ apporter sur votre configuration et votre code personnalisé.
|
|||
au travers un *logger* dédié (voir les méthodes `log_debug`, `log_info`, …). À défaut, il est
|
||||
possible d’utiliser la classe `LSlog_staticLoggerClass` qui facilite l’implémentation.
|
||||
|
||||
- Pour vos [LSaddons](../conf/#configuration-des-lsaddons) : il est conseillé d’utiliser un
|
||||
- Pour vos [LSaddons](../conf/index.md#configuration-des-lsaddons) : il est conseillé d’utiliser un
|
||||
*logger* `LSaddon_[addon]` dédié. Le *logger* peut facilement être récupéré de la manière
|
||||
suivante :
|
||||
|
||||
|
|
Loading…
Reference in a new issue