Salut, Le 13/11/2014 00:43, François-Régis a écrit :
Bonsoir, Le 11/11/2014 06:45, Johan Cwiklinski a écrit :Voilà quelque temps que je souhaite apporter une modification assez importante dans Galette : http://redmine.ulysses.fr/issues/417Il me semble que la 8.0 utilise la V2 de zend pour la base de donnée non ?
Oui, tout à fait (la v1 n'est plus supportée désormais).
En effet, la nature même de la modification implique de ré-écrire et de supprimer l'ensemble des fichiers PHP présents directement à la racine de de galette, les templates doivent changer aussi, de même que les chemins vers les fichiers javascript, css, images, etc... Concrètement, que signifie cette évolution ?Si je comprends bien cela consiste entre autre à se passer de smarty non ?
Non, non ; la vue, ça continue d'être le boulot de Smarty (j'y reviens plus bas) ;)
Plusieurs choses : 1- l'application ne devra plus forcément être intégralement servie par le serveur web,La, je ne comprends pas bien, elle serait servie de façon autonome par slim ?
J'entends juste par là que l'ensemble des dossiers ne doivent pas forcément être accessibles depuis le serveur web (seul le dossier webroot, qui contient principalement les fichiers JS, CSS et les images le sera).
2- on met en commun différents fichiers PHP actuellement épars,Banco !3- les URL deviennent abstraites, alors qu'elles sont aujourd'hui basées sur des noms de fichiers,Très bien, mais est-ce dépendant d'une configuration du serveur web (rewrite url ou autre) ?
Non, absolument pas. Vu que pas mal d'utilisateurs dépendent d'hébergements mutualisés, il faut impérativement que Galette puisse fonctionner out-of-the-box, comme c'est le cas actuellement. Les URL vont par défaut être de la forme galette/webroot/index.php/dashboard ; Slim se charge de matcher la route "/dashboard". On peut éventuellement envisager de supprimer le index.php via une rewrite rule (un .htaccess est fourni en ce sens : https://github.com/galette/galette/blob/feature/slim/galette/webroot/.htaccess), mais c'est totalement optionnel. Ceux qui en revanche tournent sur du dédié *peuvent* par exemple envisager la création d'un VirtualHost du type : <VirtualHost *:80> ServerName galette.myhost DocumentRoot /path/to/galette/webroot/ RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [QSA,L] </VirtualHost> Et ainsi accéder à galette avec http://galette.myhost/dashboard
4- Une application plus « moderne ».Je suis pour la modernité !
^_^
Sur le plan technique, j'ai décidé de tester Slim (http://www.slimframework.com/), que je trouve vraiment pas mal : c'est simple, souple, et suffisamment puissant pour faire tout ce dont j'ai eu besoin jusque maintenant. Mon choix est arrêté sur cette bibliothèque.Je ne connaissais pas slim mais ça a l'air sympa et léger, il n'est pas packagé dans debian mais si tu confirmes cette orientation, je le ferai (je n'ai pas vu d'obstacle majeur).
Je l'ai packagé pour Fedora il y a quelque temps, je n'ai pas eu de surprises particulières. Quant à confirmer cette orientation, j'attendais un peu de voir les retours ; qui me semblent plutôt positifs jusque maintenant :)
- Les plugins seront tous à revoir (mais on y accèdera potentiellement avec de de jolis liens du genre http://monsite.fr/carte plutôt que http://monsite.fr/plugins/plugin-maps/maps.php :p)...Les jolis liens c'est toujours mieux et ça supporte mieux les évolutions donc si tu as besoin d'aide sur les plugins je peux essayer de t'aider.
Merci, mais les modifications sur les plugins vont devoir être effectuées de front avec celles de Galette ; je n'ai pas encore vraiment réfléchi à cette partie là à dire vrai.
Avis et remarques : Galette est très bien fait, la 7.8 remplit déjà les aspirations de nombreuses associations et la 8.0 encore plus. J'en induit que la communauté des utilisateurs de galette doit pouvoir patienter avant une release stable d'une nouvelle refonte. (il reste quelques problèmes mineurs tels que la migration de 7.8 vers 8.0 dans certaines configurations de serveurs mysql, mais ceci est bien traité dans la liste et la 8.0 y pose un point final).
J'envisage de plus en plus d'essayer d'adapter la conversion présente via le plugin admintools (qui en l'état ne sert plus à rien) ; mais il faudrait que je reproduise le problème ; et je dois avouer que ce n'est pas ce qui me botte le plus pour le moment :p
Ensuite, si j'ai bien compris, l'idée serait de se passer des templates de smarty pour passer à un framework plus complet (slim). J'ai beaucoup utilisé smarty (il y à longtemps) pour son coté "bas niveau" où je pouvais faire ce que je voulais. J'imagine que tu dois pouvoir conserver smarty et slim mais de ce j'ai vu rapidement slim sera plus façile à maintenir. Je vais tester un oeu slim et je te suis totalement dans ton orientation (sous réserve que j'ai bien compris)
Le cas de Smarty est la seule chose que tu n'aies pas vraiment compris à priori ;) Slim ne fait rien d'autre pour les vues que de passer la main ; il ne permet d'ailleurs par défaut que de se baser sur des « templates PHP », l'utilisation de moteurs de rendu tels que Smarty ou Twig passent par Slim-Views (anciennement Slim-Extras), qui font en gros office de simples wrappers. En espérant avoir pu éclairer les zones d'ombre... :) ++ -- Johan
Attachment:
signature.asc
Description: OpenPGP digital signature