-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Salut,
Je répond sur la liste -devel car mes remarques sont purement techniques ;) > Bonsoir à tous, > > Je travaille depuis quelques mois sur un plug-in pour gérer un aéroclub et j'en suis arrivé à quelque chose qui semble marcher. > > Je ne sais pas encore me connecter correctement à Gna! aussi je n'ai pas pu l'uploader dans un projet correctement. Cependant, il est disponible au moins quelques jours ici : Te connecter correctement à Gna! ? Plus précisément ? > > http://dl.free.fr/f9IfDd77p > > L'installation se fait en 2 étapes : > - dézipper le fichier dans le répertoire plugins > - se connecter en mode admin, puis aller sur la page "Gestion table SQL" dans la partie "Admin pilote" et lancer les 2 scripts SQL présents : "00 - install.sql" puis "05a - ajout parametres web.sql". Alors, première remarque : pas d'espaces ni de caractères accentués dans les noms des fichiers. Déjà que ça met le bazar sur un système de fichiers, sur le web c'est encore pire. Ensuite ; pourquoi ne pas avoir dit que tu travaillais sur un système de gestion des bases de données des plugins ; alors que c'était une tâche officiellement prévue dans Galette (https://gna.org/task/index.php?7421 depuis le 05/07/2011) ; que j'ai implémentée dans la semaine ? D'autant que ça ne sert qu'à ton plugin, pas aux autres... Les scripts SQL en eux-mêmes ne sont pas utilisables en dehors de l'appli ; il faut faire tout un tas de remplacements à la main, ce qui n'est pas conforme aux scripts SQL de galette et des autres plugins existants (on doit pouvoir lancer un script SQL depuis le moteur de bases de données directement). Autre chose, les standards de codage ne sont pas respectés dans tes différents fichiers (http://galette.tuxfamily.org/documentation/fr/development/codage.html#conventions-d-ecriture). > > Sur cette page, la liste des tables devrait indiquer qu'elles sont toutes créées correctement, avec leur version à 0.7 (comme Galette). > > [...] Je ne suis pas la bonne personne pour tester les fonctionnalités, je laisse ça à qui de droit (et je n'ai pas le temps en plus :p). De toutes façons, ma Galette de dév tourne sous Postgres actuellement, pas en MySQL. > > > Il n'y a par contre par de documentation, mais j'ai essayé de faire les écrans les plus simples possibles. Ça aussi c'est un petit « problème ». J'essaie de faire en sorte que tout soit documenté le mieux possible ; au moins un minimum (un petit fichier INSTALL et un un petit fichier README fournis de base, c'est plutôt standard)... > > Une page ne vous servira à rien : "Import Access 2" car elle est destinée à importer des données depuis une application Access 2 et est extrêmement spécifique. À mon avis, il aurait fallu au moins que ce soit activable par un paramètre quelconque et caché par défaut. Pourquoi en effet ajouter 2 entrées dans 2 menus différents pour un truc qui ne sert clairement pas (hormis à toi) ? > > Je reste ouverte à vos propositions d'amélioration et aux retours. > > Mélissa L'i18n, ne correspond pas non plus. Galette utilise gettext, avec tout un mécanisme de récupération automatique des chaînes et de traduction via des fichiers .po (http://galette.tuxfamily.org/documentation/fr/development/i18n.html). L'utilisation de gettext implique d'avoir les chaînes originales (en anglais) dans le code source, l'interface étant complètement utilisable sans les fichiers de langue. Si je désactive ton fichier de langue, je me retrouve avec des entrées de menu telles que "MENU.RESERVATION" ou "MENU.COMPTE" au lieu de "Reservations" et "Accounts". La création des fichiers de langue pour un plugin est documentée là : http://galette.tuxfamily.org/documentation/fr/development/plugins.html#internationalisation Dans ton code, tu utilises une syntaxe du genre $levercoucher[lever]. C'est incorrect. D'une part, ça produit une notice : PHP Notice: Use of undefined constant lever - assumed 'lever' in /var/www/html/private/galette.git/galette/plugins/Pilote/reservation.php on line 133, referer: http://odysseus.x-tnd.be/public/galette-svn/galette/plugins/Pilote/parametres.php Et d'autre part, c'est problématique pour différentes raisons ; les chaines de caractère en PHP sont toujours entre guillemets simples ou doubles ; il faut systématiquement quoter dans ce genre de cas et utiliser $levercoucher['lever']. Confer http://php.net/manual/fr/language.types.array.php#language.types.array.foo-bar L'inspection des logs de php en phase de dév permet de détecter et de corriger de suite ce genre de cas. Les notices produites ne sont par défaut pas affichées à l'écran, et Galette tente en plus de les masquer ; mais chez certains hébergeurs, il est possible qu'elles soient affichées sur la page ; et que la fonction utilisée par galette qui permette de les planquer soit désactivée. Dans ce cas là, l'utilisateur se gaufre des dizaines de lignes de warnings avant d'accéder au contenu (pour voir ce que ça donne : http://galette.tuxfamily.org/fr/doku.php?id=documentation:faq#afficher_les_erreurs_galette_07). Je ne suis pas en mesure d'afficher certaines pages (Mes vols, Réserver un avion, Planning réservations, ...) ; je suppose que c'est du à l'absence de la base. L'entrée « Mon mot de passe » m'interpelle... Ce n'est pas spécifique au plugin, ce type de fonctionnalité devrait être dans Galette, pas dans un plugin. Enfin (et ce sera tout pour le moment), il y a des requêtes SQL dans les fichiers PHP divers, qui devraient plutôt être dans les classes je pense. Merci, ++ Johan -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.18 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk7uzIYACgkQ7N2B+4uln5T1igCgiOEqdpUuInelBhejQrw3pBA9 LTYAoJUEJz9QL2wyjRcdTy1b4LnP2a88 =q7zG -----END PGP SIGNATURE----- _______________________________________________ Galette-devel mailing list Galette-devel@gna.org https://mail.gna.org/listinfo/galette-devel