Archives FluxBB.fr

Les archives de FluxBB.fr

Vous n'êtes pas identifié(e).

#1 24-08-2006 22:31:06

BN
Membre

Aide pour Easy Poll +

Bonjour, bonjour,

Je travaille actuellement sur la mod Easy Poll (qui permet de faire de créer des sondages) histoire de la rendre valide xhtml 1.0 strict, plus accessible (plus de <h2>, youpi !!) et... hum, disons : essayer de faire quelle soit un peu moins "à l'arrache".

Et dans tout ça, y a deux fichiers qui m'oripilent à un point... viewpoll.php et poll.php. Ce sont les mêmes fichiers que viewtopic.php et post.php mais avec quelques trucs rajouté pour le sondage.
Donc pour l'instant je m'attelle à faire rentrer viewpoll.php dans viewtopic.php. Ce qui est chose faites, cependant... Hum, j'ai une question auquel je ne sais répondre.

Voilà ce que je suis obligé de faire :

// Fetch some info about the topic
if (!$pun_user['is_guest'])
    $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, t.question, t.yes, t.no, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, s.user_id AS is_subscribed FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'subscriptions AS s ON (t.id=s.topic_id AND s.user_id='.$pun_user['id'].') LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.question!=\'\' AND t.moved_to IS NULL') or error('Impossible de retrouver les informations de la discussion', __FILE__, __LINE__, $db->error());
else
    $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, t.question, t.yes, t.no, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.question!=\'\' AND t.moved_to IS NULL') or error('Impossible de retrouver les informations de la discussion', __FILE__, __LINE__, $db->error());

if (!$db->num_rows($result))
{
    if (!$pun_user['is_guest'])
        $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, s.user_id AS is_subscribed FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'subscriptions AS s ON (t.id=s.topic_id AND s.user_id='.$pun_user['id'].') LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.moved_to IS NULL') or error('Impossible de retrouver les informations de la discussion', __FILE__, __LINE__, $db->error());
    else
        $result = $db->query('SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies FROM '.$db->prefix.'topics AS t INNER JOIN '.$db->prefix.'forums AS f ON f.id=t.forum_id LEFT JOIN '.$db->prefix.'forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id='.$pun_user['g_id'].') WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id='.$id.' AND t.moved_to IS NULL') or error('Impossible de retrouver les informations de la discussion', __FILE__, __LINE__, $db->error());
}

En gros, on commence par faire les calculs dans la BDD, comme si c'était un sondage.
Si c'est pas un sondage, bah on refait les calculs. (par dessus les autres)
Si c'est un sondage bah on continue.

Et donc je me demandais si ce n'était pas un peu... long et lourd de faire tout ces calculs. Disons que si quelqu'un a étudié la question^^
A la fois, pour l'instant, je ne vois pas comment faire autrement... disons sans trop tout chambouler^^

Voilà, merci à ceux qui pourront m'aider smile

Hors ligne

#2 25-08-2006 00:23:33

Lyconide
Membre

Re : Aide pour Easy Poll +

Dans la requête qui test si c'est un sondage, dans la clause Where, il y a :

AND t.question!=\'\'

Et donc, ce petit test supprime tout ce qui n'est pas sondage, d'ailleurs si tu l'enlèves tu te retrouves quasiment avec la requête qui regarde si la discution existe, à la différence près qu'il manque dans le select :

t.question, t.yes, t.no,

Qui sélectionnes le sondage.

Donc en faisant un mix des 2, suppresion du premier bout de code de la requête qui sélectionne les sondages (ou ajout du 2ème bout de code à la requête qui sélectionne la discution - ce qui revient au même)

Tu sélectionnes ainsi la discution, et pour savoir si c'est un sondage, dès que tu as le résultat dans : $result

Suffit de faire une condition (qui remplace la requête initial du sondage) :
if($result['question'] != '')
   <sondage>
else
   <pas sondage>

J'espère que je suis assez clair smile Pas testé, mais je pense que ca doit fonctionner si je dis pas de betise

Hors ligne

#3 25-08-2006 11:51:30

BN
Membre

Re : Aide pour Easy Poll +

ça marche impec !!
Je n'avais pas pensé à ça et c'est bien mieux ! smile

A priori, il n'y a pas de raisons que cela bug...
Enfin cela dit, si vous voulez béta-tester : C'est par ici !(c'est un forum de tests, les invités peuvent participer^^)

Bon, bah ce Easy Poll risque d'être un peu moins orripilant smile

Dernière modification par BN (25-08-2006 11:51:47)

Hors ligne

#4 25-08-2006 12:09:40

tvcircus
Membre

Re : Aide pour Easy Poll +

Dans la version de base, il y a des viewtopic.php qui s'affichent là où ça devrait etre des viewpoll.php (derniers messages, lien de redirection en cas de déplacement du sondage). Fusionner les 2 fichiers c'est sans doute la meilleure solution. J'aurais dû penser y penser yikes

Le html produit par easypoll est pas génial donc ce n'est pas du luxe de le corriger.

BN, tu as prévu de publier tes modifs ?

Hors ligne

#5 25-08-2006 13:35:14

BN
Membre

Re : Aide pour Easy Poll +

Oui, oui, j'ai prévu de les publier^^ Mais avant j'aimerais finir de faire rentrer poll.php dans post.php. (et voir s'il n'est pas possible de ne faire fonctionner cette mod que sur certain forum, paramétrable via l'interface d'administration. Mais c'est pas sûr ça^^)

Sinon, je n'ai pas compris le début de ton message...

Hors ligne

#6 25-08-2006 14:22:43

tvcircus
Membre

Re : Aide pour Easy Poll +

je voulais simplement dire que les principaux bugs de easypoll sont liés au fait que les sondages sont affichés par viewpoll.php et les topics "normaux" par viewtopic.php.
Plutot de mettre des "if (sondage){....} else {}" un peu partout pour savoir quel est le lien vers le topic/sondage, ta solution de faire disparaitre le fichier viewpoll.php me semble plus sûre.

Ce qu'il manque à easypoll également, c'est la possibilité d'éditer les sondages.

Dernière modification par tvcircus (25-08-2006 14:24:23)

Hors ligne

#7 25-08-2006 14:25:52

BN
Membre

Re : Aide pour Easy Poll +

Ah d'accord.

Oui, c'est vrai pour l'édition des sondages. (à la fois... je ne crois pas avoir vu un système de sondage sur d'autre forum qui permet de les éditer. Me trompe-je huh) Je regarderai ça aussi alors...

Hors ligne

#8 25-08-2006 16:40:46

vin100
Membre

Re : Aide pour Easy Poll +

une bonne chose cette (future) mise à jour, cette mod en as vraiment besoin, bonne initiative smile

Hors ligne

#9 25-08-2006 17:07:12

romain9441
Admin locker

Re : Aide pour Easy Poll +

Tu va sortir une nouvelle version ou ce sera une mod avec un nouveau nom ?

Par contre, perso, je prefère poll.php pour poster un sondage, comme ça sur un Forum, il y a les deux liens (nouvelle discussion et nouveau sondage), c'est plus simple je trouve smile

Il faudrait peut-être aussi prévoir, dans l'administration, d'autoriser les membres de poster un sondage dans un forum ou non... roll

Tu penses terminer quand ? siffle

Bonne initiative en tout cas ! wink

Dernière modification par romain9441 (25-08-2006 17:07:32)


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

#10 25-08-2006 18:14:01

BN
Membre

Re : Aide pour Easy Poll +

Uhuh... Bon si vous pouviez éviter de rajouter des trucs à modifier tongue

Tu va sortir une nouvelle version ou ce sera une mod avec un nouveau nom ?

Heu, bah s'y a pas de copyright (chai pas comment ça marche) je me disais que ça pourrait être une nouvelle version : Easy Poll + ^^

Tu penses terminer quand ?

La bonne blague c'est que je rentre en prépa l'année prochaine. Donc en gros, si je finis pas avant le 4 septembre, bah... roll Et vu que je ne fais pas que ça de mes journées, uhuh !

Par contre, perso, je prefère poll.php pour poster un sondage, comme ça sur un Forum, il y a les deux liens (nouvelle discussion et nouveau sondage), c'est plus simple je trouve smile

Comme je le conçois, y aura toujours les 2 liens. Mais celui du sondage sera de type : [c]post.php?id=chaipasquoi&type=poll[/c] C'est pas trop à la sauce PunBB, mais je préfère ça à 2 fichiers... Mais reste à voir si c'est possible sans tout chambouler. (ce qui, à première vue, n'est pas le cas tongue)

Il faudrait peut-être aussi prévoir, dans l'administration, d'autoriser les membres de poster un sondage dans un forum ou non...

C'est déjà le cas à l'origine, il me semble. Si un membre n'est pas autorisé à écrire dans un forum, il ne peut pas non plus voter. (cela dit, ça n'affiche pas les résultats du vote mais le formulaire. Ce qui est débile, vu qu'une page plus loin ça marque "Vous ne pouvez pas voter") Donc à améliorer.
Mais tu entends pas la que tu voudrais que dans le panneau d'administration où on choisit ce qu'on le droit de faire les membres y ait :
- Lire le forum     
- Écrire des réponses     
- Lancer des discussions
- Participer aux sondages
? C'est ça ?
Perso, je pars du principe que si on autorise un groupe à "écrire des réponses", on l'autorise à "participer aux sondages". Et si on l'autorise pas...

Mais peut-être n'était-ce pas cela que tu voulais dire...

Merci aux béta-testeurs ! (qui n'ont à priori pas détecter de nouveaux bugs...)

Hors ligne

#11 25-08-2006 18:27:36

romain9441
Admin locker

Re : Aide pour Easy Poll +

Mais tu entends pas la que tu voudrais que dans le panneau d'administration où on choisit ce qu'on le droit de faire les membres y ait :
- Lire le forum     
- Écrire des réponses     
- Lancer des discussions
- Participer aux sondages
? C'est ça ?

Oui, je ne pensais pas vraiment ça mais c'est pas mal cette idée, je pensais mettre lancer des sondages. wink

Mais participer aux sondages, c'est pas mal non plus ! tongue

Aller, je t'embète plus pour que tu puisses terminer tranquille mdr


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

#12 26-08-2006 12:47:19

BN
Membre

Re : Aide pour Easy Poll +

Lancer des sondages et y participer, c'est différent en fait hmm
Parce qu'on peut participer à un forum sans avoir le droit d'en lancer... (par contre, il semble peu logique qu'on est le droit d'en lancer, sans avoir le droit d'y participer, uhuh tongue) En fait je pense que "Lancer" c'est mieux... Parce que "participer" il est déjà compris dans "écrire des réponses". (enfin, je trouve^^)

Donc, si un groupe n'a pas le droit de lancer de sondage, il n'a tout simplement pas le lien "Nouveau sondage" sur le forum en question.
ça me semble correct ainsi... on va tester ça^^

Dernière modification par BN (26-08-2006 12:47:40)

Hors ligne

#13 26-08-2006 13:14:06

romain9441
Admin locker

Re : Aide pour Easy Poll +

Participer aussi, je pense ça pas mal mais bon ... siffle

Car d'origine les invités ne peuvent pas y participer tongue

Il y a aussi un truc qui m'intrigue, un personne qui n'a pas voté ne peux voir les résultats, ce qui, je trouve est dommage ! neutral


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

#14 26-08-2006 14:12:29

BN
Membre

Re : Aide pour Easy Poll +

Participer aussi, je pense ça pas mal mais bon ... siffle

Car d'origine les invités ne peuvent pas y participer tongue

ça fait rajouter 1 entrée dans 2 tables, c'est pas top... Surtout que bon, voter c'est chouette, mais si on peut pas dire pourquoi on a voté ça... disons que ça sert pas à grand chose, non ? smile

J'ai finit les trucs des droits en tout cas. ça rajoute une partie "Lancer un sondage" dans l'administration des forums. (et comme ça, si des personnes veulent que leur forum ne soit fait qu'en sondage, éh bien ils peuvent !!! tongue)

Il y a aussi un truc qui m'intrigue, un personne qui n'a pas voté ne peux voir les résultats, ce qui, je trouve est dommage !

Bah y a le vote blanc... mais on peut plus voter après. On triche si on regarde les résultats avant de voter, non ? (si on veut vraiment, y suffit de se déconnecter... Mais est-ce vraiment utile ?)

Je vais essayer de voir pour éditer les sondages maintenant... (quoi que la flemme attitude me prend un peu là tongue)

Dernière modification par BN (26-08-2006 14:12:47)

Hors ligne

#15 26-08-2006 14:20:36

romain9441
Admin locker

Re : Aide pour Easy Poll +

BN a écrit :

ça fait rajouter 1 entrée dans 2 tables, c'est pas top... Surtout que bon, voter c'est chouette, mais si on peut pas dire pourquoi on a voté ça... disons que ça sert pas à grand chose, non ? smile

Mouais ... hmm

Bah y a le vote blanc... mais on peut plus voter après. On triche si on regarde les résultats avant de voter, non ? (si on veut vraiment, y suffit de se déconnecter... Mais est-ce vraiment utile ?)

Moi, j'trouve ça pas mal, surtout que cette fonction existe sur IPB et PhpBB wink

Je vais essayer de voir pour éditer les sondages maintenant... (quoi que la flemme attitude me prend un peu là tongue)

Cool tongue


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

#16 27-08-2006 13:17:53

falconflyz
Membre

Re : Aide pour Easy Poll +

Salut
Désolé d'apporter une demande supplémentaire, mais elle me semble intéressante et doit être toute simple à mettre en œuvre. ^^
Serait-il possible de prévoir une entrée supplémentaire dans les résultats, pour permettre au créateur du sondage d'un placer un commentaire qui ne serait vu qu'avec les résultats. Ce serait utile pour les sondages type quiz où il est impératif de donner la réponse après le vote.
Merci… smile
@+

Hors ligne

#17 27-08-2006 13:33:45

tvcircus
Membre

Re : Aide pour Easy Poll +

Salut falconflyz,
dans un sondage, il n'y a pas de bonnes et de mauvaises réponses, il n'y a que des opinions.
Pour ce que tu souhaites faire, à mon avis il faudrait une mod "quizz" qui sera assez différente de easypoll (il faut calculer un score, ajouter un champ pour stocker la bonne réponse à chaque question, permettre aux membre de refaire le même quizz s'ils le souhaitent, etc...)
Je ne pense donc pas que ce soit une bonne idée d'intégrer ça à easypoll.

Hors ligne

#18 27-08-2006 14:05:36

falconflyz
Membre

Re : Aide pour Easy Poll +

Salut tvcircus
Entièrement d'accord avec ton analyse. J'ignore si une mod "quizz" peut intéresser quelqu'un. Perso je n'ai pas du tout les connaissances suffisantes pour la créer, en fait au départ je ne suis qu'un utilisateur lambda d'une série de forums, qui a pris goût à punBB et qui essaye d'y contribuer en apportant mes remarques et suggestions.
C'est donc bien conscient de la différence entre sondage et quizz que j'ai fait ma proposition,  sachant qu'elle ne permettrait pas de transformer idéalement cette mod pour des quizz, mais qu'elle en permettrait quand même son utilisation à l'occasion, voire que pour un sondage, elle donnerait la possibilité à son créateur de placer un commentaire (toujours modifiable)  lisible uniquement quand un membre a voté. C'est une fonctionnalité que je souhaiterais avoir sur certains forums.
Cordialement. smile

Hors ligne

#19 29-08-2006 19:27:13

BN
Membre

Re : Aide pour Easy Poll +

EDIT : Probs résolu

Dernière modification par BN (29-08-2006 21:33:42)

Hors ligne

#20 01-09-2006 21:56:23

BlackJack
Membre

Re : Aide pour Easy Poll +

falconflyz a écrit :

elle donnerait la possibilité à son créateur de placer un commentaire (toujours modifiable)  lisible uniquement quand un membre a voté. C'est une fonctionnalité que je souhaiterais avoir sur certains forums.

Salut à tous
La faculté que la créateur du sondage puisse mettre une ligne de commentaire qui ne soit visible que par les membres ayant voté me semble bien intéressante. Perso je souhaiterais qu'elle soit prévue dans la prochaine mod si toutefois son créateur le veut bien... smile

@+++

Hors ligne

#21 01-09-2006 23:47:22

romain9441
Admin locker

Re : Aide pour Easy Poll +

Cette option n'est normalement pas prévu pour la version qui va sortir, peut-être dans la prochaine... smile


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

#22 05-09-2006 14:28:17

Birdyman
Membre

Re : Aide pour Easy Poll +

Bonjour, tu as une idéee de la date prévue pour la sortie de la nouvelle version ?

smile * impatient *

Hors ligne

#23 05-09-2006 18:26:56

romain9441
Admin locker

Re : Aide pour Easy Poll +

La version est fini, enfin presque, si tu veux un exemple, elle est installée sur mon forum :
http://boardfun.free.fr

Mais comme BN à repris ses études, je ne peux pas d'indiquer la date de sortie, et je ne peux pas me permettre de la distribuer même si j'ai les backups chez moi car je n'en suis pas l'auteur wink

Cordialement,

Romain

Dernière modification par romain9441 (05-09-2006 18:27:16)


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

#24 05-09-2006 19:01:41

romain9441
Admin locker

Re : Aide pour Easy Poll +

Je ne la distribuerais pas car je n'en suis pas l'auteur, j'ai juste contribuer à quelques petits trucs... smile


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

#25 05-09-2006 19:22:01

romain9441
Admin locker

Re : Aide pour Easy Poll +

Installe l'autre version, mais tu auras des problèmes sur les derniers messages et ton forum ne sera plus valide neutral


Avant de poser une question, avez-vous consulté la FAQ ou fait une recherche ?

Pas de support si pas d'adresse de forum !

Hors ligne

Pied de page des forums