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.
-> Correction du chargement de Net_LDAP2
-> Ajout de la possibilité d'avoir autre chose que le dn en valeur clef
dans la méthode loadLSrights() (type groupe)
LSformElement_select_object : Les valeurs des foreach key et item ne sont pas
réécrite lors d'un {foreachelse} et du coup les valeurs d'un élément au dessus
sont utilisées.
-> Les profils utilisateurs sont maintenant scalable. Il est possible
de créer autant de profil voulu avec autant de droits alloués spécifiques
-> LSsession :: whoami() et LSldapObject :: whoami() retourne la liste des profils
correspondants à l'utilisateur connecté
-> Les méthodes ont été modifiées pour prendre en compte cela en faisant la somme
des droits de chaque profils :
- LSsession :: canAccess()
- LSsession :: relationCanAccess()
- LSsession :: loadLSrights()
- LSattribute :: myRigths()
-> LSsession :: isAdmin() a été remplacé par isProfile() capable de redonner la meme
information mais pour tout profil dont le nom est passé en paramètre
-> LSsession :: loadLSrights() : gère la délagation de droits sur les objets répondant a un
filtre particulier ou dont un certain attribut possède une certaine valeur
-> LSexample :
-> Ajout d'un attribut lsGodfatherDn pour la délégation de droit objet par objet
-> Retravail des objets d'exemple pour faire en sorte de coller plus avec une réel
utilisation
-> LSsession : ajout de la méthode addHelpInfos()
-> LSdefault : ajout des méthodes addHelpInfo() et setHelpInfo()
-> LSform : ajout des méthodes addTip() et removeTip()
-> Ceci répond globalement à la feature request #1730
-> Envoie des données via une requête Ajax
- Correction des templates et des procédures modify et create pour l'utilisation
de l'envoie des données via Ajax.
-> Ajout de la méthode getErrors() : retourne les erreurs définies
-> Correction de la méthode definedError() : ajout de la possibilite
de savoir si globalement des erreurs sont définies.
-> Ajout de la méthode search() effectuant une recherche multi-niveau dans l'annuaire
et retournant un tableau array(dn => '', attrs => '') des objets correspondants.
Cette méthode est plus légère à utiliser quand on cherche simplement a obtenir une
liste d'objet avec quelques infos plutôt qu'une liste d'objet instancié.
-> Utilisation de la méthode search() dans les méthodes listObjects()
et listObjectsName() plutôt qu'une recherche autonome.
-> 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()
- LSformElement_select_object :
- Ajout d'un bouton d'ajout/recherche rapide (Feature Requests #1731)
- JS correction d'un bug lors du refresh (bouton Modifier)
-> Correction des templates (balise <a name>)
-> JS : Déselection des onglets lors du clique et tentative de focus sur le
premier champs du formulaire.
-> Ajout d'une notion de layout pour pouvoir définir l'affichage d'un
formulaire par onglet et définir l'ordre d'affichage des attributs
-> Création de templates LSform plutôt que de le redéfinir dans chaque
template l'affichage d'un formulaire :
- LSform.tpl : Template de formualaire
- LSform_view.tpl : Template d'affichage (vue)
-> Ajout du JS même lors d'une view
-> JS : ajout de méthode de gestion des onglets
- LSeepeople : Ajout de commentaire dans le fichier de configuration
- LSformElement_select_object && LSformElement_mail :
-> Utilisation des paramètres LSform plutôt que de consulter directement les
champs cachés.
- LSmail :
-> Le sujet n'était pas encore paramètrable d'avance : c'est fait.
-> Adpatation index_ajax.php
-> Ajout d'une méthode JS d'export des infos du mail saisie
- LSformElement_password : Ajout d'une possibilité d'envoie du mot de passe
par mail lors de sa modification
- LSattribute : Ajout d'un binding applicatif pour l'execution de fonction/
méthode lors d'évenement (a agrémenter)
- LSldapObject : Utilisation des evenements pour le binding onModify des
attributs
- LSaddons :: Mail : Ajout d'un header 'To:' systématiquement.
- LSform : Ajout de la méthode JS getValue()
-> Ajout de la méthode getParams()
- LSformElement_password :
-> Refonte en utilisant les templates
-> Refonte Javascript en utilisant les JSparams via LSdefault et creation d'un
LSformElement_password_field
-> Ajout d'une méthode addToForm() standardise utilisant le paramètre
$LSformElement_type
-> Utilisatation de cette méthode standardisée pour les types d'attributs
suivants :
- text
- textarea
- date
- mail
- url
- rss
- xmpp
- ssh_key
- boolean
-> Refonte avec l'utilisation de l'héritage de LSformElement_text
-> Utilisation d'un fieldTemplate commum : LSformElement_uri_field.tpl
- LSformElement_mail
-> Utilisation du fieldTemplate commum : LSformElement_uri_field.tpl
- LSformElement : Ajout du paramètre $fetchVariables qui contient les variables
ajouter au contexte de la méthode fetchTemplate()
-> Refonte complète pour coller au plus près de la réalité
-> Création des classes LSformElement et LSformElement_field
- LSsession :
-> Méthode fetchTemplate() : retourne un template compilé
- LSformElement :
-> Méthode fetchTemplate() : Utilisation des templates pour l'affichage des
LSformElement.
-> Méthode isMultiple()
-> getEmptyField() : méthode d'affichage par défaut d'un champs vide
- LSformElement_textarea :
-> Utilisation des templates pour l'affichage
-> Ajout d'un bouton clear()
- LSformElement_text :
-> Utilisation des templates pour l'affichage
-> Adpatation pour pouvoir faire des classes filles. Celles-ci hériteront
des fonctionnalités des champs textes classiques
-> La méthode de génération est maintenant appliqué à tout les champs et non
plus simplement au premier
- LSformElement_mail :
-> Refonte en utilisant l'héritage de LSformElement_text