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
     

30 Apr, 2020

1 commit

  • 	- ajout de l'option globale $this->SUPERADMIN_CAN_DO_EVERYTHING dans
    AppController (false par défaut) pour donner rapidement TOUS les droits
    à superadmin (juste passer à true)
    	- regroupement des conditions d'accès des 3 actions ADD, EDIT, et
    DELETE car très semblables => remplacé 60 lignes par 10 !!!
    	- Grosse simplification (et bugfixes !!) des conditions d'accès à la
    plupart des actions de MaterielsController => c'est bien plus clair à
    lire
    	- Nouvelles règles ACL (conditions d'accès) sous forme de tableau $acl
    => en cours...
    		=> ce changement offre plusieurs avantages, et devrait notamment
    permettre de :
    		- clarifier les conditions d'accès,
    		- les rendre plus facilement modifiables
    		- les rendre copiables d'une action à l'autre (et donc facilement
    réutilisables sans avoir à réécrire de code)
    		- afficher une page web présentant automatiquement (dynamiquement) une
    synthèse claire de toutes les ACL, action par action, et profil par
    profil
    			(ce qui permettra de se rendre compte plus facilement de l'état
    actuel des conditions d'accès)
    	- 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 simplifier et surtout éviter (bcp) les accès BD redondants
    	- Optimisations pour éviter trop de requetes en BD et simplification
    des tests acl
    Etienne Pallier
     

16 Apr, 2020

1 commit


02 Apr, 2020

1 commit


01 Apr, 2020

1 commit


07 Jun, 2019

1 commit

  • 	- Bugfixed materiels/find/puis tri /puis export CSV (ne marchait pas)
    	- Amélioration materiels/index Export CSV => trié par numéro labo
    (desc)
    	- Bugfix materiels/add catégorie (et sous-categ) perdue après erreur
    saisie
    Etienne Pallier
     

03 Jun, 2019

1 commit


16 May, 2019

1 commit


26 Mar, 2019

1 commit

  • DESCRIPTION :
    - Refactorisation des actions add() et edit() de MaterielsController en
    une seule fonction add_or_edit() car elles étaient très semblables
    - Gestionnaire de reference : maintenant bien sauvegardé (avant il était
    perdu...)
    
    IMPORTANT :
    - Pour connaitre la version actuelle, taper "./VERSION"
    - Pour mettre à jour le code, utiliser ./UPDATE depuis la racine du
    projet (ne plus se contenter de faire "git pull")
    (UPDATE fait "git pull" mais il met aussi à jour la BD, seulement si
    nécessaire)
    - Pour s'assurer que la version récupérée est stable, taper "./TESTS.sh"
    (tout doit passer ok)
    - En cas de problème, taper ./SHOW_LOGS pour voir si les logs d'erreur
    peuvent aider
    - Pour que "./TESTS.sh" s'exécute sans "deprecated error",
    			il faut ajouter cette ligne dans la clé 'Error' de votre fichier
    config/app.php
    			    'Error' => [
    			    		...
    			        'errorLevel' => E_ALL & ~E_USER_DEPRECATED,
    			       	...
    			    ],
    Etienne Pallier
     

01 Feb, 2019

1 commit

  • - bugfix update domaine quand categorie sélectionnée (fonction getFromCategorie() de SurCategoriesController.php, utilisée par materiels/add et materiels/edit) => ne fonctionnait plus depuis des années !!!!
    - refactorisation du code beforeSave() dans src/Model/Table/MaterielsTable.php
    - nouveau script TEST_WEB pour lancer le serveur web de développement (pratique, pas besoin de Apache)
    - nouveau script SHOW_LOGS pour voir facilement le contenu des logs
    
    IMPORTANT:
    			- Pour connaitre la version actuelle, taper "./VERSION"
    			- Pour mettre à jour le code, utiliser ./UPDATE depuis la racine du projet (ne plus se contenter de faire "git pull")
    			(UPDATE fait "git pull" mais il met aussi à jour la BD, seulement si nécessaire)
    			- Pour s'assurer que la version récupérée est stable, taper "./TESTS.sh" (tout doit passer ok)
    			- En cas de problème, taper ./SHOW_LOGS pour voir si les logs d'erreur peuvent aider
    			- Pour que "./TESTS.sh" s'exécute sans "deprecated error",
    			il faut ajouter cette ligne dans la clé 'Error' de votre fichier config/app.php
    			    'Error' => [
    			    		...
    			        'errorLevel' => E_ALL & ~E_USER_DEPRECATED,
    			       	...
    			    ],
    Etienne Pallier
     

17 Jan, 2019

1 commit


15 Jan, 2019

1 commit


22 Jan, 2018

1 commit


30 Jun, 2017

1 commit


22 Jun, 2017

1 commit


19 Jun, 2017

1 commit


14 Jun, 2017

1 commit


12 Jun, 2017

2 commits


09 Jun, 2017

3 commits


08 Jun, 2017

1 commit


02 Jun, 2017

1 commit


01 Jun, 2017

1 commit


30 May, 2017

1 commit


12 May, 2017

1 commit


09 May, 2017

1 commit


04 May, 2017

1 commit


21 Apr, 2017

1 commit


29 Jun, 2016

1 commit

  • ajout "administrer" form materiels + index "mes materiels"
    
    Demande (terminé) : https://projects.irap.omp.eu/issues/3906
    					https://projects.irap.omp.eu/issues/3916
    	   
    Version majeure en cours (2.5): https://projects.irap.omp.eu/versions/99
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     

28 Jun, 2016

1 commit

  • !!! Se placer dans database/update et exécuter le script
    ./db-update-2016-06-28.sh !!!
    
    Confirmation suppression doc + organisation configuration/form + taille
    doc config + photo materiel + liste type document défaut + acl documents
    + bugfixes
    
    Demande (terminé) : https://projects.irap.omp.eu/issues/3905
    					https://projects.irap.omp.eu/issues/3790
    					https://projects.irap.omp.eu/issues/3904
    
    Demande (en cours) : https://projects.irap.omp.eu/issues/3716
    	   
    Version majeure en cours (2.5): https://projects.irap.omp.eu/versions/99
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     

27 Jun, 2016

1 commit

  • !!! Se placer dans database/update et exécuter le script
    ./db-update-2016-06-27.sh !!!
    
    Documents + Type documents + Réorganisation configuration générale
    (view) + Bugfixes (numero de labo, ... )
    
    Demande (terminé) : https://projects.irap.omp.eu/issues/3789
    					https://projects.irap.omp.eu/issues/3762
    					https://projects.irap.omp.eu/issues/3791
    
    Demande (en cours) : https://projects.irap.omp.eu/issues/3790
    					 https://projects.irap.omp.eu/issues/3716
    	   
    Version majeure en cours (2.5): https://projects.irap.omp.eu/versions/99
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     

24 Jun, 2016

2 commits

  • !!! Se placer dans database/update et exécuter le script
    ./db-update-2016-06-24-2.sh !!!
    
    Correction demandé par l'IAS
    	   
    Version majeure en cours (2.4):
    https://projects.irap.omp.eu/versions/107
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     
  • !!! Se placer dans database/update et exécuter le script
    ./db-update-2016-06-24.sh !!!
    
    gérer panne matériel + validation si champ rempli + menu home profil
    responsable
    
    Demande (terminé) : https://projects.irap.omp.eu/issues/3897
    					https://projects.irap.omp.eu/issues/3807
    					https://projects.irap.omp.eu/issues/3781
    	   
    Version majeure en cours (2.4):
    https://projects.irap.omp.eu/versions/107
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     

23 Jun, 2016

1 commit

  • Problème message erreur validation (configurations/form)
    
    Demande (terminé) : https://projects.irap.omp.eu/issues/3883
    	   
    Version majeure en cours (2.4):
    https://projects.irap.omp.eu/versions/107
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     

14 Jun, 2016

1 commit

  • Utilisation attribut configuration --> prix_inventaire_administratif
    
    Demande (terminé) : https://projects.irap.omp.eu/issues/3795
    			
    Version majeure en cours (2.5): https://projects.irap.omp.eu/versions/99
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     

13 Jun, 2016

1 commit

  • !!! Modification BD !!! 
    
    Ajout de tous les attributs faisant partie des demandes de la version
    2.04 dans la base de données
    + Ajout de ces attributs dans les modèles et les fixtures.
    
    
    Demande (terminé) : https://projects.irap.omp.eu/issues/3799
    
    			
    Version majeure en cours (2.5): https://projects.irap.omp.eu/versions/99
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre
     

06 Jun, 2016

1 commit

  • Demande (terminée):	https://projects.irap.omp.eu/issues/3775
    					https://projects.irap.omp.eu/issues/3774
    									
    Version majeure en cours (2.4):
    https://projects.irap.omp.eu/versions/107
    
    ROADMAP: https://projects.irap.omp.eu/projects/labinvent/roadmap
    Alexandre