10 Jul, 2020

1 commit


08 Jul, 2020

1 commit

  • - Affichage des matériels par tranche d'âge (0-5 ans, 5-10, ...)
    - Grosse refactorisation du javascript dans la page materiels/index pour
    utiliser le meme code pour les 2 filtres "age" et "nb lines"
    - Bugfix url rewriting dans la page materiels/index pour supprimer le
    paramètre "page" car ça n'est pas pertinent et ça provoque plantages
    - Nombreux petits bugfixes sur les css
    Etienne Pallier
     

07 Jul, 2020

2 commits


06 Jul, 2020

3 commits


02 Jul, 2020

1 commit


30 Jun, 2020

2 commits


29 Jun, 2020

1 commit


26 Jun, 2020

2 commits

  • - Test générique des vues index et view de Materiels (/materiels/index
    et /view) qui teste le CONTENU des vues pour TOUS les materiels de la BD
    de test (fixture), aussi bien dans la vue index globale que dans CHAQUE
    vue détaillée de chaque matériel (et surtout en vérifiant aussi la liste
    des entités associées (suivis,emprunts,documents)
    - bugfix autorisations d'affichage des boutons d'action sur documents
    dans materiels/view/
    - Nombreuses refactorisations
    - tous les tests passent
    - ...
    
    Je vais enfin pouvoir passer à AUTRE CHOSE QUE LES TESTS !!
    genre, des choses plus constructives !
    Etienne Pallier
     
  • (v3.7.9.48)
    
    Test générique des vues index et view de Materiels (/materiels/index et
    /view) qui teste le CONTENU des vues pour TOUS les materiels de la BD de
    test (fixture), aussi bien dans la vue index globale que dans CHAQUE vue
    détaillée de chaque matériel (et surtout en vérifiant aussi la liste des
    entités associées (suivis,emprunts,documents).
    Etienne Pallier
     

25 Jun, 2020

1 commit


24 Jun, 2020

2 commits


22 Jun, 2020

3 commits

  • - log level info, debug, et notice : disponible depuis la page Outils
    (tools)
    - Toules les actions importantes (add,edit,delete, changement statut...)
    sont désormais loggées et donc affichables via la page Outils ci-dessus
    - Accélération de la recherche du numéro de version dans le fichier
    README, affichée à CHAQUE page web du site !!!
    Etienne Pallier
     
  • Disponible depuis la page Outils (tools) seulement pour superadmin
    Etienne Pallier
     
  • - pour (presque) toutes les actions de (presque) tous les controleurs
    principaux (Materiels, Suivis, Emprunts, Users) mais aussi du controleur
    "quelconque" SurCategories (pour vérifier que ça marche aussi !!!)
    - (manque encore les tests de vues)
    - 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...)
    - Le nombre total de tests (en ajoutant ces tests automatiques) monte à
    220 !!
    - ...
    Etienne Pallier
     

19 Jun, 2020

1 commit

  • (Materiels, Suivis, et Emprunts) mais aussi le controleur "quelconque"
    SurCategories (pour vérifier que ça marche aussi !!!)
    
    - 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...)
    - Le nombre total de tests (en ajoutant ces tests automatiques) monte à
    200 (pile poil) !!!
    - ajout champ 'nom' à la table emprunts => ajout d'un fichier sql pour
    la mise à jour
    - ...
    Etienne Pallier
     

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
     

12 Jun, 2020

1 commit

  • - Tests génériques automatiques pour (presque) toutes les actions du
    controleur Materiels => OK
    
    - Amélioré l'action materiels/print_label_ruban (impression etiquette) :
    un peu plus conforme au standard, un peu moins bidouille qu'avant, et
    surtout plus besoin de la finir par un "sale" "exit" => donc on peut
    maintenant la tester, et c'est ce qui a été fait ! (elle est pas encore
    total nickel mais bon c'est mieux qu'avant)
    
    - modifié Fixtures pour supprimer les 'id' explicites
    
    - bugfix action materiels/statusToBeArchived (ou statusToBearchived) =>
    remplacé partout par statusTobearchived
    Etienne Pallier
     

10 Jun, 2020

1 commit


09 Jun, 2020

1 commit


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
     

03 Jun, 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
     

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
     

05 May, 2020

1 commit

  • - LOG : ajout de messages log sur actions importantes (add, edit,
    delete, ...)
    	- SIMPLIFICATION : Suppression des valeurs "N/A" (inutile et pose des
    problèmes) dans 4 tables : groupes_thematiques, groupes_metiers, sites,
    et type_documents => et remplacement des liens vers ces champs par NULL
    dans tables materiels, suivis, emprunts, et documents !!!
    	- Utilisation __toString() pour afficher une entité rapidement avec
    echo $entity
    	- bugfix ACLs isAuthorizedAction() de Materiels => début de
    généralisation de l'utilisation de cette fonction partout où on a besoin
    de connaitre les droits d'un user (view, index, ...)
    Etienne Pallier
     

29 Apr, 2020

2 commits

  • 	- factorisation d'une partie de add_or_edit() dans AppController
    (appelée par les add_or_edit() de chaque controleur spécifique)
    	- Utilisation de $this->action et $this->action_id (...) de
    AppController.beforeFilter() un peu partout
    	- Utilisation de $this->entity de AppController.beforeFilter() un peu
    partout pour si
    Etienne Pallier
     
  • 	- Ajout de $this->entity, $this->action et $this->action_id (...) dans
    beforeFilter() pour simplifier et optimiser la suite des traitements
    	- simplification du isAuthorizedAction() de Materiels
    	- Optimisations pour éviter trop de requetes en BD et simplification
    des tests acl
    	- Meilleure gestion des aspects authentification et authorization
    	- mon 1er View Helper dans src/View/Helper (MyButtonHelper) pour créer
    plus facilement des boutons !! :
    	- migration des fonctions getActionButton() et displayElement() dans
    MyButtonHelper et remplacement progressif dans les vues
    Etienne Pallier
     

24 Apr, 2020

1 commit

  • 	- Meilleure gestion des aspects authentification et authorization (car
    je comprends mieux maintenant)
    	- PagesController maintenant bien plus clean
    	- mon 1er View Helper dans src/View/Helper (MyButtonHelper) pour créer
    plus facilement des boutons !! :
    	- migration des fonctions getActionButton() et displayElement() dans
    MyButtonHelper et remplacement progressif dans les vues
    Etienne Pallier
     

20 Apr, 2020

1 commit


16 Apr, 2020

2 commits


09 Apr, 2020

1 commit

  • 	- ajout champ is_metro dans table type_suivis pour les types liés au
    module métrologie
    	- Nombreuses simplifications (et bugfix) des VUES en enrichissant le
    controleur de Suivis (et de Materiels)
    	- (les vues doivent toujours être le plus BETE, SIMPLE possibles, la
    complexité ne doit être QUE dans le controleur)
    	- commentaires et repagination pour que le code soit LISIBLE !!!!
    	- début d'utilisation des migrations de BD
    	- ...
    Etienne Pallier
     

07 Apr, 2020

1 commit

  • 	- amélioration du code javascript
    	- ajout champ "is_regular" dans table type_suivis pour déclarer les
    types des suivis réguliers (fréquence) ou irréguliers (date)
    	- mise à jour vues suivi et type_suivis pour le champ "is_regular"
    	- commentaires
    	- début d'utilisation des migrations de BD
    	- ...
    Etienne Pallier
     

01 Apr, 2020

1 commit


31 Mar, 2020

1 commit