21 Oct, 2020
1 commit
-
=> maintient pour chaque utilisateur son nb de connexions et sa durée de connexion par année v4.106.0-3.7.9
20 Oct, 2020
1 commit
16 Oct, 2020
1 commit
-
- GROSSE requete sql très compliquée de suppression des doublons (et des espaces en trop) - Suppression de la règle technique/inventoriable - prix_ht désormais obligatoire v4.105.24-3.7.9
13 Oct, 2020
1 commit
-
Dans certains cas, les tests utilisaient la BD de prod au lieu de la BD de test, c'est maintenant terminé, non mais ! v4.105.19-3.7.9
12 Oct, 2020
1 commit
-
NOTICE v4.105.18-3.7.9
09 Oct, 2020
1 commit
-
- (b) bugfix requete sql db-update-2020-06-10.sql - (i) requete sql corrective - (b) bugfix tri colonnes des listes materiels et utilisateurs - (e) amélioration vue des responsables v4.105.13-3.7.9
08 Oct, 2020
3 commits
-
v4.105.9-3.7.9
-
v4.105.7-3.7.9
-
v4.105.6-3.7.9
07 Oct, 2020
2 commits
-
(étape 3 sur 3, terminé) - Gestion automatique des entités "parentes" et "enfants" et de bcp d'autres choses encore... - Très générique (meta-programmation) => dans AppController:view_generic() => utilisation de mon helper src/View/Helper/MyHelperHelper/displayAssociatedEntitiesAsSectionShowHide() => un seul template unique utilisé /src/Template/Common/view.ctp, évite toutes ces trop nombreuses redondances, => plus efficace, on modifie tout en un seul endroit ! (au lieu d'une dizaine de pages web différentes avant !) v4.105.1-3.7.9
05 Oct, 2020
1 commit
-
=> dans AppController:view_generic()
01 Oct, 2020
1 commit
-
v4.103.22-3.7.9
30 Sep, 2020
1 commit
-
On était obligé de choisir un groupe métier et thématique et un domaine => désormais facultatif ('N/A') ! + divers petits bugfixes v4.103.19-3.7.9
29 Sep, 2020
1 commit
-
Mais aussi : - bugfix suppression d'un materiel : on peut désormais supprimer, après confirmation, même avec des docs, emprunts, ou/et suivis liés (ils sont supprimés aussi) - Ajout confirmation lors de la suppression d'un materiel !!! - pleins de petits bugfixes - Ajout notification sur changement de config v4.103.18-3.7.9
25 Sep, 2020
1 commit
-
(VERSION FINALE) Aussi : - Bugfix action /materiels/mailDevis - Divers bugfixes v4.103.8-3.7.9
24 Sep, 2020
1 commit
-
log et/ou email (étapes 4 et 5) Sauvegarde de l'entité courante dans $current_entity (dans AppTable), disponible pour tous les controleurs (sur save() et delete()) v4.103.6-3.7.9
17 Sep, 2020
1 commit
-
v4.101.12-3.7.9
16 Sep, 2020
1 commit
-
v4.101.7-3.7.9
15 Sep, 2020
1 commit
-
car bug sur fixtures v4.101.6-3.7.9
11 Sep, 2020
1 commit
-
=> le moins souvent possible => Uniquement si la date d'achat change ET avec une année différente v3.7.9.99
10 Sep, 2020
2 commits
-
qui se régénérait à chaque modif du matériel !!! v3.7.9.98
-
Aussi : Changement de quelques règles d'accès (ACL) par défaut v3.7.9.97
31 Jul, 2020
2 commits
-
v3.7.9.91 - perdait le nombre de lignes par page (aff)
-
(en cas d'erreur de validation sur un autre champ)
30 Jul, 2020
1 commit
25 Jul, 2020
1 commit
-
Depuis le menu Outils : nombre de matériels créés, validés, archivés, en moyenne, au total, et par année
21 Jul, 2020
1 commit
20 Jul, 2020
1 commit
-
(dates achat, livraison, fin garantie)
17 Jul, 2020
2 commits
-
(date reception doit maintenant etre >= date achat, et test sur message flash était insuffisant et laissait passer des cas...)
-
(v3.7.9.6) - Renforcement important controles sur les dates d'un matériel (achat, livraison, fin garantie) - Le numero d'inventaire généré automatiquement en fonction de l'année d'achat est désormais MIS À JOUR à chaque fois qu'on change la date d'achat !!!
16 Jul, 2020
1 commit
-
Dans le détail : - /pages/changes - (b) Bugfix "sauf ARCHIVED" dans materiels/index/ (pour profils user et resp) - (b) bugfix tests car maintenant materiels/index/ ne renvoit que les materiels de - 5 ans !! - (i) Grosse amelioration tests liés au numéro inventaire incrémenté de 1 et au nb de matériels trouvés dans vue index (bien + souple qu'avant) - (i) Grosse amelioration tests liés à la recherche de matériels testFind (bien + souple qu'avant)
07 Jul, 2020
1 commit
-
- Materiel : technique ou/et inventoriable => trop compliqué et inutile => en fait c’est un OUX (exclusif) => simplifier en ne gardant qu'UNE SEULE case à cocher qui s'appelle "materiel technique". => Si cette case n'est pas cochée, le prix doit alors être supérieur à 1000E => par contre, on garde quand même le champ ds la BD au cas où. - Colorisation selon statut du matériel : CREATED => bleu VALIDATED => vert TBA => orange ARCHIVED => rouge
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
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 !!!
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, ...)
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, ...)
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
29 Apr, 2020
1 commit
-
- 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
16 Apr, 2020
1 commit
-
- GROS bugfix check dates : uniformisation du format date partout (vues et DatePicker.js et code javascript) => dd/mm/aaaa (au lieu de dd-mm-aa) - nombreuses refactorisations, généralisations et améliorations du code javascript (bcp de refactorisation dans script.js)