Page 1 sur 4

Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 01:00
par igotoy
edit (17/03/2010) : Voilà ! Merci à GOS et à GOSWF, le forum est désormais équipé de deux lecteurs SGF. Les détails par là : aide-et-tutoriels-f18/afficher-un-fichier-sgf-t55.html
Je laisse ce sujet ouvert, n'hésitez pas à apporter vos suggestions, remarques et commentaires.[/b]

Salut,

Ca serait vraiment génial de pouvoir intégrer un lecteur/viewer SGF dans le forum. Idéalement, ce serait sous forme d'un BB Code. Quelqu'un aurait quelque chose à proposer ?

Un paquet de fraise tagada à celui qui nous apporte une belle solution !

++

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 01:04
par LDL
.


Ben je peux t'aider,
je t'envoie un mp....
;)


.

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 02:47
par fanfan
Éventuellement, j'ai ça : http://gooo.free.fr/_gos4/documentation.php
J'ai amélioré sensiblement la version que tu utilises déjà sur le site de Grenoble. En particulier, on peut maintenant mettre plusieurs diagrammes par page. Je ne sais pas si c'est adaptable pour ce forum, mais c'est probable que oui.
Je suis en train de finir la 4.1 qui sera prête ce we.

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 13:05
par igotoy
fanfan a écrit :Éventuellement, j'ai ça : http://gooo.free.fr/_gos4/documentation.php
J'ai amélioré sensiblement la version que tu utilises déjà sur le site de Grenoble. En particulier, on peut maintenant mettre plusieurs diagrammes par page. Je ne sais pas si c'est adaptable pour ce forum, mais c'est probable que oui.
Je suis en train de finir la 4.1 qui sera prête ce we.
Merci fanfan ! Je n'avais pas oublié ton appli ;) Et c'est une piste que j'étudierai sauf si quelqu'un arrive avec un BBCode (et fichiers joints) tout prêt. Une chose me gêne pour intégrer ton appli c'est qu'il faut ajouter du code dans le header : ça implique plus de modifications qu'un simple BBCode.

Pour le forum, l'idéal c'est que le viewer se compose d'un dossier contenant un fichier à appeler, par exemple : sgfViewer.phpn et qu'on appelle le viewer par un simple sgfViewer.php?sgf=<url>&option=<option>.

De ctte manière, on ne touche pas au code du squelette du site et on peut continuer à faire les mises à jour en toute siimplicité.

Exemple de BBCode (celui pour insérer les vidéos), le fichier video.php est fourni :
Image 1.png
(97.44Kio)Téléchargé 4508 fois

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 14:21
par fanfan
Je pense que c'est jouable. Ce que je mets dans la partie head, c'est aujourd'hui :
1) l'inclusion d'un script php commun à tout le monde, indépendant du contenu des fichiers sgf (ce script contient des bibliothèques de fonctions php utiles au reste, inclut des script javascript communs dans la partie head, et une feuille de style minimale qu'on ne modifie pas quelque soit le site sur lequel on utilise ce viewer),
2) l'appel à une feuille de style qui peut être spécifique à chaque fichier sgf en particulier, mais pas forcément (j'ai donné cette souplesse pour ceux qui en auraient besoin), dont le but est d'adapter le look des diagrammes au site dans lequel on les insert. Ici, on peut très bien mettre une feuille de style commune à tous les fichiers sgf (c'est à dire qu'on n'aurait dans la feuille de style que des instructions se rapportant aux classes css utilisées pour l'affichage des diagrammes, et aucune à des id),
3) un script php qui génère un script javascript spécifique pour chaque fichier sgf (qui en gros traduit le fichier sgf en instruction javascript). C'est le point le plus gênant, mais je suis en train de le régler (à savoir mettre l'appel à ce script dans la partie body, et le joindre au script qui affiche le diagramme dans la partie body), et du coup, on n'aurait pour chaque diagramme qu'une ligne de code à ajouter dans la partie body. Ceci se fait au détriment de la perte de quelques fonctionnalités secondaires et en particulier la non prise en compte du charset des fichiers sgf. Mais de toute façon, ici, le charset est imposé par le squelette (et par nature est unique). Donc il faudra juste imposer un charset identique pour tous les fichiers sgf, ou bien traduire à la volée les fichiers sgf ayant un charset différent (même si on utilise un autre viewer, ce problème de charset des fichiers sgf demeure).

Note : historiquement (la première version de ce truc a maintenant 10 ans), j'avais mis des scripts dans la partie head car les navigateurs style Netscape 4 et ie4 digéraient mal autrement. Mais on n'est plus au XXème siècle :). Néanmoins, les mettre dans la partie head rend l'ensemble plus robuste (car suivant ce que font les web-designers, ça pourrait ne pas marcher dans la partie body). Mais ici, on connait le contexte et on peut faire en sorte que ça marche dans la partie body.

Bref, en résumé, on pourrait avoir :
1) l'inclusion de 2 feuilles de style (la minimale tel quel, et une deuxième pour s'adapter au look du forum), communes à tous (à voir comment tu fais aujourd'hui pour les autres feuilles de style spécifiques du site, car j'imagine qu'il y en a). Il suffit de la mettre avec les autres.
2) pour chaque diagramme, une ligne de php dans la partie body qui serait l'appel au viewer qui ferait 3 opérations :
- l'inclusion du script php commun si celui-ci n'a pas déjà été inclus via un diagramme précédent,
- la génération du code javascript traduisant le contenu du fichier sgf,
- l'affichage du diagramme lui-même qui est du javascript lui-aussi.

Alternative : on inclut le script commun php dans la partie head : ça simplifie les choses et les rend plus robustes.

Je regarde pour faire un BBCode (dont je ne me doutais même pas de l'existence hier encore). Réponse ce we.

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 14:35
par igotoy
Dans un premier temps, la solution avec le script commun dans le header serait suffisante. Si on retient la solution, on pourra chercher à optimiser ensuite.

Merci pour les explications en tout cas :)

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 17:02
par fanfan
Bon, ça marche (testé sur firefox,safari,opera sur Mac et ie8 sur pc)! J'appelle une seule ligne dans la partie body du type sgfPlayer.php?sgf=<xxx>&...

Les diagrammes peuvent avoir cette allure là : http://gooo.free.fr/_gos4/_sample/gos_forum.php

On peut constater en regardant le code qu'il ne reste pas grand chose dans la partie head.

Il conviendra qu'on se mette d'accord sur ce qu'on met dans les options (le viewer a des tas d'options et l'utilisateur risque de s'y perdre). Pour l'instant, pour commencer, je proposerais bien "affichage avec numérotation/sans numérotation", "affichage avec les marques et labels/sans les marques et labels", et "affichage du diagramme dans la position au premier coup/au dernier coup" (on a évidemment des boutons de navigation pour aller du premier au dernier coup). La syntaxe reste à définir. Éventuellement, on peut faire une liste d'options du genre :
sgfPlayer.php?sgf=<url>&numerotation=oui/non&marques=oui/non&position=initiale/finale

Je n'ai pas encore codé le traitement automatique de ces options.

Je suppose que le charset des fichiers sgf soit UTF-8 comme pour le forum (en attendant d'avoir un module de transformation automatique, il faudra donc imposer que les fichiers sgf fournis par les utilisateurs soient enregistrés en UTF-8, pour être compatible avec le charset du forum).

Y a que la question des css qui n'est pas clair. Si je fais l'inclusion dans la partie body, ça marche, mais c'est contraire me semble-t-il aux spécifications du html.

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 18:48
par igotoy
Il n'y a plus rien dans le header ?! C'est bueno bueno ça :) (t'es rapide dis donc)

Pour la question du CSS, je n'y connais pas grand chose donc en ce qui me concerne si ça marche comme ça tant mieux et tant pis pour les specs :p Plus sérieusement, tu fréquentes peut-être le forum d'alsacreations, on peut y lire http://forum.alsacreations.com/topic-2- ... odule.html Donc bon, j'aurais tendance à suivre le même raisonnement dans la mesure ou l'outil d'ajout de BBCode de phpBB ne permet pas l'ajout de feuille de style.

Les présentations que tu proposes sont claires et simples, tip-top pour un forum. Il faudra trouver l'alchimie des paramètres par défaut, pour que l'usage du BBCode, avec seulement le chemin du sgf renseigné, renvoie un bon compromis à l'affichage. Je pense qu'il faut pouvoir avoir le numéro du coup et les indices de lignes/colonnes affichés, et aussi les commentaires. Mais ça se discute.

Quelques modes définis dans le PHP devraient suffire, par exemple :
sgfPlayer.php?sgf=<url>&mode=partie == sgfPlayer.php?sgf=<url> (mode par défaut)
sgfPlayer.php?sgf=<url>&mode=probleme
etc.

A mon avis, il ne faut pas laisser les paramètres (même en nombre limité) sous le contrôle de l'utilisateur.

Bon bref, je crois qu'on l'a notre lecteur sgf :) Dis-moi quand je peux récupérer les billes et on teste ça sur le forum (on va pas faire de chichi hein).

Tu aimes ça les fraises tagada au fait ?

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 21:21
par fanfan
Attends, c'est pas encore encapsulé dans du BBCode! :-)

C'est assez différent d'écrire dans une page html quelque chose du genre <?php include(sgfplayer.php); ?>, ce que j'ai fait pour l'instant, et le <script type="text/javascript" src="sgfplayer.php"></script> qu'il faut faire pour un BBCode si j'ai bien compris. Ça pose quelques problèmes : la feuille de style n'aime pas, et je perds des variables globales au passage (en particulier celle qui me permet de nommer les diagrammes de manière unique). Je travaille à résoudre tout ça. Je ne pense pas que ce soit insurmontable.

Je suis d'accord avec toi pour que l'utilisateur n'ait pas trop d'options.

Pour la feuille de style, une alternative envisageable est de mettre les styles directement dans les tags html genre <div style="..."> au lieu d'utiliser des classes. Ca m'obligera à faire une version spécifique pour le forum, mais c'est pas si énorme à première vue et ça aura l'avantage ici de pouvoir se passer de l'appel à un css externe.

Re: Un lecteur SGF sur le forum

Posté : ven. 19 févr. 2010 21:47
par The Pilgrim
Bon ce n'est pas pour faire de la pub a la concurrence (le forum connais d'énormes soucis techniques de ttes façons) et je ne suis pas sur que cela se rapproche de tes attentes mais qque chose comme sur godiscussions.com ce n'est pas bon ?
Si cela correspond et t'intéresse, je peux toujours leur demander des infos par mp :)