mailRe: [Galette-discussion] Future (proche ?) évolution majeure


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by Johan Cwiklinski on November 13, 2014 - 08:05:
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/417

Il 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


Related Messages


Powered by MHonArc, Updated Fri Nov 14 09:20:09 2014