Plan of work

Version 9 (Etienne Pallier, 04/15/2016 06:18 pm) → Version 10/15 (Etienne Pallier, 04/15/2016 06:28 pm)

h1. Plan de travail

=> *LIRE le document HOWTO.txt*

Faire une VM1 pour labinvent1.3 (cakephp2+php5) et labinvent2 (cakephp3+php5)

Faire une VM2 pour labinvent2 seulement (cakephp3+php7)

VM1 (php5):

* Créer une instance labinvent1.3 (via svn): Instance labinvent1.3: Recupérer et installer le projet actuel depuis svn dans eclipse (labinvent 1.3, cakephp2.1, php5)

* Créer une instance labinvent2.0 (via git): Instance labinvent2.0: Récupérer le nouveau projet depuis git dans eclipse (labinvent 2.0, cakephp3, php5)

* Faire une installation "vierge" avec cakephp3 en partant de la BD labinvent : générer les modèles, controleurs, et vues avec l'outil "bake" (attention, cakephp3 ne doit pas faire partie du projet)
*
*
Tester qu'on a accès à toutes les tables, que les liens entre les tables (1-N, N-M, 1-1) sont bien gérés, et que les actions de base "CRUD" sont opérationnelles
* Copier et adapter progressivement les fonctionnalités de labinvent1.3, une labinvent1.3

* Copier l'ancien projet dans le nouveau
* Remplacer cakephp2
par une, en commençant par celles concernant cakephp3 (exclure cakephp3 de git)
* Migrer
le "matériel" (éventuellement sans gérer les ACL) code vers cakephp3 (avec l'outil de migration)
* Debugger pour que ça marche
* Sortir cakephp3 du projet, en tant que dépendance externe
*
Mettre à jour le script installation (il devra aussi installer cakephp3..., ainsi peut-être pour qu'il installe cakephp3 (ainsi que les autres dépendances javascript...)
* Ecrire un maximum de tests pour tous les modèles et actions importants

Se renseigner sur la gestion des fichiers de config en cakephp3: fichiers php (comme cakephp2) ou texte ?


Se renseigner sur la gestion des acl (droits selon les profils) proposée par cakephp3 (via base de données ou via fichier config)

Autoriser la connexion en mode LDAP ou sans LDAP

VM2 (php7):

* Récupérer le projet labinvent2 et faire en sorte que ça marche en php7 (tout en restant compatible avec php5)
* Adapter les tests

* Ajouter la fonctionnalité "joindre un fichier"
* Ajouter la fonctionnalité "joindre une photo"
* Ajouter autres fonctionnalités

(Etudier virtphp : http://virtphp.org)