Forum CMS Made Simple FR
Nouveau projet : un système de notation rapide : j'aime/j'aime pas - Version imprimable

+- Forum CMS Made Simple FR (https://forum.cmsmadesimple.fr)
+-- Forum : Annonces (https://forum.cmsmadesimple.fr/forum-5.html)
+--- Forum : Annonces (https://forum.cmsmadesimple.fr/forum-17.html)
+--- Sujet : Nouveau projet : un système de notation rapide : j'aime/j'aime pas (/thread-726.html)



Nouveau projet : un système de notation rapide : j'aime/j'aime pas - bess - 12/10/2010

Bon il y en a qui doivent se dire que je fout rien de mes journées en ce moment pour me permettre de monter sur pieds ce 5ème projets de module en moins d'un mois...

et ils ont (presque) tord, et le tort tue ninja c'est bien connu...

Bon cette fois ce n'est pas une nouvelle fonctionnalité phare comme les deux modules de statistiques ou le showroom. Mais il s'agit d'un besoin transverse : Pouvoir noter très rapidement un objet "à la mode facebook."

J'aime / J'aime pas

Alors j'ai commencé les recherches il y a plusieurs mois et ce que j'en ai retiré :

le module AJAX Star Rating Bar est une merde infâme qui ne fonctionne pas dès que vous le couplez en mode ajax avec un autre module utilisant lui même JQuery : Gallery, Osc, Showroom (tiens donc...) Et croyez moi sur parole j'ai perdu des heures en test, y compris en utilisant Jquery en mode noConflit... je ne comprend pas ou ca pêche...

le module like se rapproche plus de mon besoin mais nécessite au visiteur une connexion à un compte utilisateur avant toute opération, hors je veux que les visiteurs puissent voter (on gèrera par IP)

les autres modules n'ont pas l'air de coller aux besoins, c'est bien souvent des systèmes de jauges et compagnies...

Non ce que l'on aurait besoin ici c'est au plus basique un ou deux liens ajax présentés selon le cas de figure ainsi

Citation :<div id=note>J'aime (8) - Je n'aime pas (3)</div>
<div id=note>J'aime (9) - Je n'aime plus (3)</div>
<div id=note>En fait J'aime ! (8) - Je n'aime pas (4)</div>

Un clic sur un lien provoque :
-la suppression du/des deux liens et texte associé dans la div
-un ping sur une url du serveur comme ./modules/NomDuModule/save.php?action=(un)like&group=xx&id=yy
-traitement selon l'adresse IP utilisée : insertion du vote ou update du vote.
-renvoi côté client du code HTML qui représente l'une des 3 étapes logiques citées au dessus.
-affichage dans la div du résultat HTML

l'affichage par défaut du module génère une div avec l'une des 3 étape logique citées au dessus

Voilà pour la partie "simple"

Mais pourquoi en rester là ? après tout, on à déjà dans cet algo le code du click qui est déjà full-JS, supposons qu'on transforme l'appel {nomDeMonModule goup='photo' id=3} dans nos gabarits en un appel full-JS également, savez vous ce que ca nous permettrais ?

Ca permettrait de TOUT noter, que ce soit sur CMSMS ou pas. Sujets de discussions du forum, Profils de forum, Articles dans le blog, fiche de modules dans les pages de stats, pages de cmsms, articles de cmsms, photos d'une galerie ou du showroom...

A l'inverse, dans CM Made Simple il sera aisé de retrouver la liste des TOP10 d'un groupe donné : par exemple les 10 meilleurs articles du blog, simplement en faisant {nomDeMonModule action='top' goup='blog' number=10} ou les 5 pires modules à éviter sur Cmsms : {nomDeMonModule action='bottom' goup='modules' number=5}


Bref de belles tranches de fou rire en perspective pour celui qui va coder ça. Et justement j'aimerais ne pas me le coltiner tout seul cette fois. D'où ce message d'appel : Seriez vous motivés à travailler un peu avec moi sur ce projet de module de notation full-JS écrit bien évidement en PHP.

Si vous ne savez pas coder mais que vous souhaitez aider il y aura également besoin de testeurs, on en reparlera plus tard.