2 * @author vincent voyer
\r
3 * vincent.voyer@gmail.com
\r
6 $.fn.chat = function(params){
\r
8 var params = $.extend({
\r
12 function chat(jElt) {
\r
13 //jElt correspond à <div id="container-principal">
\r
14 var chat=jElt.find('.chat div'); // div qui contiendra le texte du chat
\r
16 // gestion de l'entrée au clavier
\r
17 jElt.find('form').submit(function() {
\r
18 var input=$(this).find(':input');
\r
19 var message=input.val();
\r
21 if ($.trim(message).length > 0) { // il faut au moins avoir écrit quelque chose pour l'afficher
\r
22 jElt.find('.ajaxStatus').show();
\r
24 input.val(''); /* on vide l'input */
\r
26 input.attr("disabled", "disabled");
\r
28 $.post("/lab/chat/ecrire", {
\r
31 input.removeAttr("disabled");
\r
34 chat.append('<p>' + data.pseudo + ' > <strong>' + data.msg + '</strong></p>');
\r
35 jElt.find('.ajaxStatus').hide();
\r
41 /* gestion de la récupération des nouveaux messages */
\r
42 var lireMessages = function(){
\r
43 $.getJSON("/lab/chat/lire", function(data){
\r
44 $.each(data, function(i,msg){
\r
45 chat.append('<p>'+msg.pseudo+' > <strong>'+msg.msg+'</strong></p>');
\r
47 setTimeout(lireMessages,params.refresh*1000);
\r
50 lireMessages(); //on lance la récupération des messages
\r
53 return this.each(function(){
\r