02 Dec, 2021

1 commit

  • - de 3.7 (mal configuré) à v3.10 (proprement configuré) !!!
    - (i) Beaucoup de modifs pour adapter le logiciel à la nouvelle version
    du framework
    - (i) Mise à jour composer.phar (2.1.14 du 30/11/2021)
    - (b) bugfixed qrcode qui ne s'affichait pas dans la fiche matériel pdf
    (avec DomPdf), mais j'ai dû modifier DomPdf...
    (vendor/dompdf/dompdf/src/Image/Cache.php)
    
    v5.5.0-3.10.1
    Etienne Pallier
     

28 Oct, 2021

1 commit

  • (généralisation pour les docs attachés et champs recommandés)
    
    => on peut maintenant préciser, à chaque étape, TOUT type important de
    doc attaché (devis, BC, BL, facture) comme étant obligatoire ou non
    modifiable ni supprimable
    
    => on peut maintenant donner, à chaque étape, une liste de champs
    "recommandés" (mais non obligatoires)
    
    v5.2.21-3.7.9
    Etienne Pallier
     

22 Oct, 2021

1 commit

  • - refactorisation des champs readonly, bien plus compact et lisible
    (clean)
    		=> fonction $isReadOnlyField() moved to MyHelper (cleaner)
    		=> nouvelle fonction MyHelper->control() pour surcharger
    Form->control()
    
    - tous les champs peuvent désormais être readonly via config
    
    - refonte de config/app_labinvent_mandatory_fields.default.yml (plus
    exhaustif et cleaner)
    
    => v5.2.16-3.7.9
    Etienne Pallier
     

13 Sep, 2021

1 commit

  • - NEWSLETTER #5 envoyée
    - Mise à jour du diagramme workflow (E-T) pour introduire la nouvelle
    étape TOBEORDERED ("En Commande")
    - Bugfix : infos sur etiquettes affichées SEULEMENT si une étiqueteuse
    est configurée...
    - Message affiché sur l'écran de G après validation et à chaque
    consultation (view) de la fiche :
      - (1) Veuillez imprimer l'étiquette du matériel (et la coller sur le
    matériel) \n\
      - (2) Pensez à remplir le champ "Inventaire Tutelles' dès que service
    fait CNRS (GesLab) \n\
     => (Ce message reste affiché sur la fiche du matériel validé \n\
    		 jusqu'à ce que ces 2 champs soient complétés)
    
    -  On ne peut pas modifier ou supprimer le DEVIS d'un matos commandé
    (TOBEORDERED)
    -  On ne peut pas modifier ou supprimer les docs attachés d'un matos
    validé (VALIDATED)
    
    => v5.2.6-3.7.9
    Etienne Pallier
     

10 Sep, 2021

1 commit


09 Sep, 2021

2 commits


07 Sep, 2021

2 commits

  • BUGfixes :
    		- (b) type "devis" doit être reconnu même si pas en majuscule ou
    espaces en trop
    		- (b) Devis sous forme d'image doit être autorisé
    		- (b) suppression d'un doc attaché à un SUIVI devait buguer
    			=> code de DocumentsController.delete() complètement réécrit !!!
    		- (b) Devis ne doit pas être supprimable si matériel TOBEORDERED
    (commandé),
    			on doit seulement pouvoir ajouter un nouveau devis
    		- (b) On ne pouvait plus modifier un materiel commandé ou validé...
    (erreur sur Devis obligatoire)
    		- (b) Ne pas envoyer de mail (mais log oui) si l'action ne s'est pas
    effectuée (ex: commande, validation...)
    
    => v5.0.1-3.7.9
    Etienne Pallier
     
  • Amélioration : Nouveau workflow incluant la "commande d'un matériel" :
    		- nouveau bouton "Commander"
    		- nouveau statut "TOBEORDERED" (à commander)
    		- L'étape de commande est optionnelle
    
    Bugfixes :
    		- lier un doc à un matos (erreur sur doc qui n'est pas une photo)
    		- supprimer un doc attaché générait une erreur
    
    => v4.108.25-3.7.9
    Etienne Pallier
     

25 Sep, 2020

2 commits


24 Sep, 2020

2 commits


23 Sep, 2020

1 commit


21 Sep, 2020

1 commit


10 Sep, 2020

1 commit


07 Sep, 2020

2 commits


04 Sep, 2020

1 commit


30 Jun, 2020

2 commits


29 Jun, 2020

2 commits


17 Jun, 2020

1 commit

  • (Materiels, Suivis, Emprunts)
    
    - Dans ces tests génériques, on teste non seulement qu'une action
    s'exécute seulement quand elle y est autorisée, mais aussi qu'elle
    s'exécute correctement (au moins pour les actions CRUD :
    add,edit,delete...)
    - L'ajout d'un suivi, emprunt, ou document n'est plus autorisé SANS
    préciser l'id du matériel concerné, ce qui est logique
    - ajout champ 'nom' à la table emprunts
    - ...
    Etienne Pallier
     

05 Jun, 2020

1 commit

  • - bugfix : renommé groupe_thematique_id en groupes_thematique_id pour
    etre harmonisé partout et surtout avec "groupes_metier_id" !!!
    - bugfix : isSameGroup
    - tous les tests actuels ok
    - AUTORISATIONS DESORMAIS ADAPTABLES POUR CHAQUE LABO => pris en compte
    (testé) aussi dans les tests avec setAuthorizations_TEST()
    - Vues view (déjà fait avant) et index : les boutons d'action (éditer,
    valider, supprimer...) s'affichent désormais en fonction des
    autorisations centralisées
    Etienne Pallier
     

04 Jun, 2020

1 commit

  • (v 3.7.9.31)
    
    	- SIMPLIFICATION DES AUTORISATIONS POUR LA PLUPART DES CONTROLEURS
    SIMPLES
    	- AUTORISATIONS PAR DÉFAUT POUR TOUT NOUVEAU CONTROLEUR BASIQUE
    	- AMELIORATIONS DE LA PAGE AFFICHANT LES AUTORISATIONS DYNAMIQUEMENT
    (/pages/acls ou /pages/acls/#nom_du_controleur) => On peut ainsi
    vérifier ce qui est appliqué à l'instant T (juste après la modif d'une
    règle par exemple)
    Etienne Pallier
     

30 May, 2020

1 commit


15 May, 2020

1 commit

  • 	- Renforcement tests suivis et emprunts (materiel validated only) et
    refactorisations
    	- ajout de 2 très gros tests qui tuent des vues matos/index et
    matos/view en cours... (ce qui m'évitera plein de tests à la main)
    	- Ajout de la méthode complexe isManageableByUser() dans
    MaterielsController.php et dans Materiel.php
    	- Ajout de la méthode getRelatedMateriel() dans AppController, très
    optimisée
    	- Vers une unicité toujours plus grande des tests d'autorisation
    d'action (uniquement dans isAuthorized())
    	- Utilisation systématique et UNIQUE de la méthode isAuthorized() de
    CHAQUE controleur pour savoir si une action est autorisée ou pas
    	- Utilisation systématique de variables "$CAN_xxx" dans les VUES pour
    tester si un affichage est autorisé ou pas
    		=> bcp plus centralisé qu'avant, et bcp plus clean et lisible
     		=> désormais TOUS les droits sont définis dans la SEULE méthode
    isAuthorized() de CHAQUE controleur et NULLE PART AILLEURS
     		=> si on veut changer un droit d'accès quelconque, on ne le change
    QUE là. Ouf, on respire, c'est bien plus cohérent et maintenable
    qu'avant
     		=> FIN de la galère de la gestion des droits (acl) enfin, il aura
    fallu quelques années pour y parvenir !!!
    Etienne Pallier
     

11 May, 2020

1 commit

  • - Ajout d'un LOG applicatif dans le fichier /logs/debug.log pour toutes
    les actions importantes (add, edit, delete, ...) qui permet de savoir
    kiafekoi
    	- Suppression des méthodes isAuthorizedAction() et
    isAuthorizedActionFor() car plus simple de ne garder QUE
    isAuthorizedAction() en la modifiant un peu... => du coup, c'est
    désormais cette SEULE méthode (dans CHAQUE controleur) qui décide de
    l'accès ou non à une action selon le profil utilisateur
    Etienne Pallier
     

07 May, 2020

1 commit

  • 	- shortcuts dans AppController (donc disponible pour TOUS les
    controleurs) :
    		- $this->u = user courant
    		- $this->e = entité courante
    		- $this->e_id = id de l'entité courante
    		- $this->a = action en cours
    		- $this->c = controleur en cours (?)
    		- $this->getEntity($id=null) // id=null si matos courant
    	- harmonisation des noms de méthodes pour MaterielsController :
    		- $this->isCreated($id=null) // id=null si matos courant
    		- $this->belongsToUser($username, $id=null) // id=null si matos
    courant
    		 	et $this->belongsToCurrentUser($id=null) // id=null si matos courant
    		- $this->isSameGroupAsUser($userlogin, $id=null) // id=null si matos
    courant
    		 	et $this->isSameGroupAsCurrentUser($id=null) // // id=null si matos
    courant
    	- harmonisation des méthodes dans entité Materiel (Entity) :
    		- is_created, is_validated, is_tobearchived, is_archived
    		- belongsToUser($username) // owned or declared by user
    		- isSameGroupAsUser($usergroup1, $usergroup2) // is same group as user
    groups
    		- ...
    	- poursuite généralisation utilisation de la fonction
    isAuthorizedAction() partout où on a besoin de connaitre les droits d'un
    user (view, index, ...)
    Etienne Pallier
     

27 Mar, 2020

1 commit


26 Mar, 2020

1 commit


25 Mar, 2020

1 commit


24 Mar, 2020

1 commit


23 Mar, 2020

1 commit


20 Mar, 2020

1 commit


16 Mar, 2020

1 commit


11 Jun, 2019

1 commit


22 May, 2019

1 commit


10 May, 2019

1 commit