-> Déplacement des définitions des constantes de chemins et
de gettext dans ce fichier
-> Déplacement des ini_set() dans ce fichier
- LSdebug :
-> La variable d'activation devient la constante LSdebug
-> Le tableau de stockages des messages s'appel maintenant
LSdebug_fieds
- LSconfig : Ajout d'une classe gérant la configuration du
projet qui servira d'abstraction à la configuration
- LSsession :
-> Suppresion de la méthode loadConfig() et ajout de la
méthode startLSconfig()
-> Ajout de la méthode startLStemplate()
-> Ajout du commentaire à la méthode getTopDn()
-> La méthode vérifie l'existance de la classe portant le nom
du type d'objet avant de lancer le chargement
-> Utilisation LSconfig pour l'accès à la configuration
-> Ajout de la fonction __() : fonction de traduction utilisant à la fois le tableau globale LSlang
et gettext pour traduire les messages qu'on lui passe.
-> Ajout de la fonction tr() : fonction utilisable depuis les templates pour traduire une variable
smarty.
- LSexample :
-> Utilisation de la traduction via __() plutôt que gettext
- LSdefault :
-> Creation d'un template pour la gestion des outils apporté par LSdefaut (LSerror, LSdebug, ...)
-> Ajout de méthode de gestion de LSlang
- LSsession :
- Login/RecoverPassword : Utilisation du template LSdefault
- Gestion de la traduction :
-> Ajout de la méthode setLocale() définissant la langue de l'interface.
-> Ajout des méthodes getLangList() et localeExist()
-> Le session_start() se fait dans l'initialize désormais (pour gérer la langue même déconnecté)
-> Méthode setLdapServer() : rédifinition de la locale avec setLocale()
-> Ajout de LSlang : outil JS permetant dans l'interface de choisir sa langue
- Config :
-> De manière général, il ne doit plus y avoir d'appel de la fonction _() dans les fichiers de config, les
chaînes sont données non traduite, et la traduction se fera lors de leur utilisation.
-> Tout les labels et messages déclarer dans la config, est maintenant traduit du coté code PHP avec la
fonction __()
-> L'enconding et la langue sont désormais géré indépendament
- ViewList : Les noms des boutons (New,Refresh,...) ne sont plus traduit du côté PHP mais dans le template à
cause de leur mise en cache.
- Documentation :
-> Mise à jour relative en changement de paramètres de configuration
-> Ajout des informations sur les variables et constantes indépendantes du fichier de configuration config.inc.php
-> Mise à jour du fichier INSTALL avec les informations de la documentation
d'affichage et les requêtes Ajax.
- LSrelation :
- Création d'une classe PHP gérant les dépendances d'affichage et
les requêtes Ajax.
- Modification du JS pour faire appels à ces méthodes
- La méthode displayInLSview() remplace le bloc du fichier view.php
pour l'affichage des relations d'un objet.
- Internationalisation.
- LSselect : Création d'une classe PHP gérant les dépendances
d'affichage et les requêtes Ajax.
- LSformElement_password :
- Ajout de méthodes statiques gérant les appels Ajax.
- Modification du JS pour faire appels à ces méthodes
- LSformElement_select_object :
- Ajout de méthodes statiques gérant les appels Ajax.
- Modification du JS pour faire appels à ces méthodes
- LSformElement_mail : Utilisation des nouvelles fonctionnalités pour
gérer les dépendances.
- LSformElement_image : Utilisation des nouvelles fonctionnalités pour
gérer les dépendances.
- LSsession :
- Ajout de méthodes statiques gérant les appels Ajax des formulaires
de login et de recupération de mot de passe.
- Modification des JS pour faire appels à ces méthodes
- Ajout d'un mécanisme permettant de garder la session PHP active
- Modification de LSdefault.js pour gérer ce mécanisme
- LSform :
- Ajout de méthodes statiques gérant les appels Ajax des formulaires
- Ajout de la méthode loadDependenciesDisplayView() gérant les
dépendances d'affichage d'une LSview.
- Utilisation des nouvelles fonctionnalités pour gérer les
dépendances.
- view.php / modify.php /select.php : Utilisation des nouvelles
fonctionnalités pour gérer les dépendances et les LSrelations.
- LSview : Modification de l'internationnalisation.
-> Ajout de paramètres de configuration pour définir les attributs devant
être utilisés pour passer un pattern recherchés.
-> Ajout de la méthode getPatternFilter()
-> Utilisation de la méthode getPatternFilter() dans getSelectArray()
- view.php & select.php : Utilisation de getPatternFilter()
pour ne pas obliger sa recopie.
- LSlog : Début d'ecriture d'une possibilité de fichiers de logs
- Ajout d'une fonction de test validPas() retournant false
- LSformElement : Ajout d'un type de LSformElement gérant les attributs maildir.
Il fonctionne en frontend du LSaddon Maildir.
- LSsession :
-> Ajout de la méthode statique includeFile() utilisé à la place de la fonction
php include_once()
-> displayAjaxReturn() : Gestion du LSredirect
-> Ajout d'un require_once() sur functions.php
- LSaddon::FTP : Ajout de la fonction renameDirByFTP()
- LSaddon::Maildir :
-> Ajout de la fonction renameMaildirByFTP()
-> Modification des fonctions createMaildirByFTP() et removeMaildirByFTP() pour
pour pouvoir leur passé en deuxième paramètre le chemin de la maildir à utlisé
- LSdefault :
-> LSdebugHidde() devient hideLSdebug()
-> Ajout de la méthode hideLSerror() accroché sur l'événement double-clique de la
LSerrorsBox
-> displayErrorBox() : plus de timeout d'affichage des erreurs
-> checkAjaxReturn() : Gestion des LSredirect
- LSform :
-> plus de LSformRedirect : utilisation de LSdefault::LSredirect
- modify.php et create.php : Utilisation des LSdefault::LSredirect et affichages des
erreurs non-bloquant sur la page suivante.
- LSerror :
-> Utilisation d'une variable de session pour stocké les erreurs
-> Ajout de la méthode resetError() exécutée à chaque exécution de
LSerror::getErrors()
- LSldapObject :
-> Correction de la gestion des binding
-> Event before_modify : bloquant en cas d'échec
-> Event after_modify : non-bloquant en cas d'échec
j'espère pour voir bientôt ajouté au SVN. Cela me fait mettre le doit sur
quelques problèmes de nommages, d'organisation que j'ai corrigé sur le fait :
- Concepte de level était enfaite celui de subDn : seule le nom subDn doit
rester.
- Le concept de LSrights dans LSsession et config.inc.php était mal nommé.
Il correspond plus à la définition de LSprofile en réalité. Je l'ai renommé
ainsi.
- Les paramètres authobject et authobject_pwdattr n'étaient pas très représentatif.
Je les ai renommé en authObjectType et authObjectTypeAttrPwd.
- Templates :
-> Correction du template default dans le but de changer la couleur bleu dominante juger trop
flashy :). Au passage j'ai dégagé l'image de fond de #main utilisé pour colorer le menu :
cette méthode est moche et quitte a à faire du moche je préfère utiliser un vulgaire tableau
que des bidouille de ce genre.
-> Création d'un logo pour LdapSaisie qui vient remplacer le logo Easter-Eggs utilisé jusqu'alors.
-> Ajout d'un favicon.
- LSerror :
-> J'ai déplacé les definitions de code d'erreur dans le contexte concerné (càd dans
les fichiers de définition des classes) (Feature Request #1757)
-> J'en ai profité pour renommer les codes d'erreur avec un prefixe pour eviter les doublons
-> J'ai donc modifié une grande partie des fichiers pour changer les codes erreurs utilisés
-> Ajout d'une méthode getError() utilisé par getErrors()
-> Modification de la méthode stop()
- LSformElement_password :
- Correction d'un bug dans la génération des mots de passe dans un formulaire de création d'objet.
- Ajout d'une possiblité de choisir le type de hashage du mot de passe stocké dans l'annuaire
(Feature Request #1756)
- Traduction des commentaires
- LSattribute : Ajout des vérifications dans les méthodes de la classe lors de l'utilisation des objets
html et ldap.
- LSsession :
-> Renforcement des méthodes faisant des inclusions d'autres fichiers php.
-> listObjects() : Optimisation dans les requetes a l'annuaire
-> listObjectsName() : Ajout d'une methode specialise/optimise dans le
retour d'un couple dn -> name
- view.php : Utilisatation de LSldapObject :: listObjectsName() plutot que
LSldapObject :: listObjects()
-> Revue de la mise en forme
-> Revue de la structure de <li> (supression des <span>)
-> Mise en place d'un texte quand plus aucun objet est en relation
-> Création d'un LSformElement_select_object_field pour séparer le traitement
des champs entre eux.
-> Utilisation des LSjsConfig[] au lieu de balise HTML pour la configuration.
-> Ajout de la possibilité d'un attribut mono-valué et réaction à la variable
de configuration multiple. Attention par défaut multiple vaut 0 et donc
LSformElement_select_object passe en mono-valué.
- LSselect
-> Correction d'un bug : Utilisation de la constante NB_LSOBJECT_LIST_SELECT
plutôt que de NB_LSOBJECT_LIST
-> Ajout d'une possibilité de sélection multiple ou simple en reaction a la
variable GET multiple
- LSrelation : Modification pour activer la sélection multiple de LSselect
-> help_info ajouté dans la configuration des attributs
- LSeepeople : Ajout d'une bulle d'aide pour loginshell
- LSdebug : Renomage des fonctions attachées :
- debug() -> LSdebug()
- debug_pring() -> LSdebug_print()
-> Nétoyage des debug dans le code et renomage quand nécessaire.
-> Ajout d'une fonctionnalité de dump de variable à LSdebug()
- LSsession : Correction d'un problème de chemin pour les scripts JS
-> Les noms des objets sont maintenant cliquable et nous emmènent sur la
fiche de l'objet correspondant
- LSformElement_select_object :
-> Les noms des objets sont maintenant cliquable et nous emmènent sur la
fiche de l'objet correspondant
- LSformElement :
-> Ajout de deux types d'élements de formulaire :
-> LSformElement_mail : Adresse mail
-> LSformElement_xmpp : Adresse xmpp
- LSattribute :
-> uniformisation des données des attributs (tous des array())
-> modifications des méthodes loadData() & reloadData()
-> Correction des bugs induits par cette modification :
- trunk/includes/class/class.LSattr_html_select_list.php
- trunk/includes/class/class.LSldapObject.php
- trunk/includes/class/class.LSattr_html_select_object.php
- trunk/includes/class/class.LSattr_ldap_date.php
- trunk/includes/class/class.LSsession.php
- trunk/includes/addons/LSaddons.samba.php
-> Correction d'un bug concernant le refresh des formulaires (#1695)
-> modification de la méthode refreshForm()
- LSsession : Correction d'un bug d'affichage du nom de l'utilisateur connecté
rafraichissement.
- base.css : netoyage
- LSform.js :
-> initializeLSform_AddAndRemoveBtns() : Modularisation des ajouts
d'évenements
-> Ajout du concept de modules permettant l'initialisation JS à l'ajout d'un
field vide d'un type avancé
- Ajout de types de champs de formulaire :
-> LSformElement_url : Un liens web (URL)
-> LSformElement_rss : Un lien RSS
- class.LSformElement.php :
-> ajout de la méthode getTitle() : Texte descriptif du champ
- LSdefault.js : Correction de la déclaration de la variable LSdebug_active
- modify.php : Modification du titre des pages
-> config.inc.php :
- Deux fichiers js à include au lieu d'un seul
- Suppression du Debugger (Debugger.js incompatible)
- LSformElement_image : refonte de l'affichage
- Templates :
- LSview-action : Passage aux balises ul/li plutôt que p/a
- select.tpl : correction d'un bug concernant la sélection du subDn actif
- Création de LSconfirmBox : module de confirmation
- JS :
-> LSform.js : Modularisation du code :
- LSformElement_select_object.js
- LSformElement_image.js
- LSformElement_password.js
- CSS :
-> Modularisation :
- LSselect.css
- LSrelation.css
- LSrelation :
-> Refonte du mécanisme JS
-> Modification de l'affichage
-> Ajout d'une confirmation à la suppresion (LSconfirmBox)
- LSsmoothbox : Refonte profonde
- view.php :
- Correction d'un bug : la colone action était vide lors de la mise en cache
par LSselect.
- LSldapObject :
- getDisplayValue() : ajout d'une possibilité de l'affichage du subDn en plus
du nom
- LSsession : ajout d'un méthode haveSubDn()
- JS :
- Modularisation de la verification d'une requete Ajax
-> LSdefault : nouvelles méthodes :
-> checkAjaxReturn() : Pour les retours JSON
-> ajaxDisplayDebugAndError() : Pour les retours HTML (Type LSselect)
-> getSubDnValue()
-> getSubDnName()
- LSview/LSselect : utilisation de la méthode getSubDnName() plutôt que le
code en local
- config.inc.php :
-> Modification du paramètre ldapServer['subDn']
-> Ajout du paramètre LSaccess pour la composition du menu hors config subDn
-> Suppression ldapServer['LSobjets'] : suppression du pré-chargement
(cf.ci-dessous)
- LSsession :
-> Rédéfinition de la méthode de construction du menu de l'interface
(bug #1665)
-> Mise en cache de LSaccess
-> top.tpl : le bouton de rafraichissement subDn devient un bouton de
rafraichissement génerale de LSsession (config / LSaccess / subDn)
-> Suppression du pré-chargement des objets et donc de la méthode
loadLSobjects()
-> Ajout d'une méthode in_menu() utilisé entre par la méthode canAccess()
pour valider les accès aux objets
- create.php : Correction d'un bug de chargement d'objet.
- config.error_code.php : Correction bug encodage
- index_ajax.php :
-> Correction de bugs de chargement d'objets
-> Suppression du code de gestion des retours d'erreur multiplié et inutile
-> Ajout d'une fonctionnalité de trie par colonne
-> template/code : modification du principe de tr.bis
-> LSselect.js : correction d'un bug dans la méthode oncheckboxChange()
- LSsession :
-> Ajout d'une méthode isSubDnLSobject()
-> Correction d'un bug dans la méthode getSortSubDnLdapServer()
-> Le choix du niveau est maintenant dans le menu de gauche
-> Le logo est cliquable (retour à l'accueil)
- Mise en cache des subDnLdapServer (sous-niveaux)
- Modification majeur sur le module de recherche :
-> Refonte du mécanisme de la page
-> Ajout du cache de recherche (gain notable de rapidité)
-> Ajout d'un message quand la recherche ne retourne aucun résultat
-> Possibilité de faire une recherche récursive
- Personnalisation rendu possible du nom donné au concepte de niveau
- LSldapObject : Correction d'un bug dans la méthode listObjects() : Warning
lors de certains retours vides.
- LSsession :
-> Création de méthode pour centraliser les tests d'activation des caches
-> Proprité ajax_displate : permet l'affichage des debugs à travers les
requêtes ajax du type 'update'
- LSsmoothbox : Modification de l'affichage
- Ajout du principe de relations entre type d'objets (LSrelation)
Exemple : Utilisateur appartenant à un groupe
- Ajout du LSformElement_select_object :
Sélection d'un objet à travers une interface plus conviviale qu'une liste
déroulante.