X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=js%2FpageMinichat%2Fconversation.js;h=5a10c5a56b8603e62eb005092504d72ce1465948;hp=77ee3a25b61176d5ee0b5dd271b0ae4ca08f010a;hb=7203835bce6f94b6afcc7403694145c829a4f833;hpb=6dd1bccff42c25fd646f2538cafa1cb19e45f88c diff --git a/js/pageMinichat/conversation.js b/js/pageMinichat/conversation.js index 77ee3a2..5a10c5a 100644 --- a/js/pageMinichat/conversation.js +++ b/js/pageMinichat/conversation.js @@ -191,14 +191,25 @@ euphorik.Conversation.prototype.getId = function() { return "conv" + this.id; }; +/** + * Après avoir créé un message celui ci est ajouté à une conversation via cette méthode. + */ euphorik.Conversation.prototype.ajouterMessage = function(message) { this.messages.push(message); this.messagesParId[message.id] = message; - // enlève les messages exedentaires + // enlève le message exedentaire si nécessaire if (this.messages.length > this.nbMessageMax) { delete this.messagesParId[this.messages.shift().id]; } + + // met à jour le membre 'estReponduPar' des messages de la conversation + for (var i = 0; i < this.messages.length - 1; i++) { + var autreMess = this.messages[i]; + if (autreMess.id in message.repondA) { + autreMess.estReponduPar[message.id] = true; + } + } }; /** @@ -227,7 +238,6 @@ euphorik.Conversation.prototype.flush = function() { var thisConversation = this; var reverse = this.client.chatOrder === "reverse"; - // est-ce que le prochain message est pair ? (permet d'alterner le style des messages) var messagePair = (this.idDernierMessageAffiche === 0 ? true : ($("#" + this.getId() + " .messages div:" + (reverse ? "first" : "last")).attr("class").search("messagePair") === -1) ); @@ -240,7 +250,7 @@ euphorik.Conversation.prototype.flush = function() { messagePair = !messagePair; } }); - + var DOM = $(XHTML); // pour chaque nouveau message au niveau du document on lui assigne ses événements @@ -286,7 +296,7 @@ euphorik.Conversation.prototype.attacherEventsSurMessage = function(element) { function(event) { // FIXME : ya pas mieux ? var racine = $(event.target).text(); - thisConversation.conversations.ouvrirConversation(parseInt(idString.substring(1, racine.length - 1), 36)); + thisConversation.conversations.ouvrirConversation(parseInt(racine.substring(1, racine.length - 1), 36)); return false; } ); @@ -399,7 +409,7 @@ euphorik.Conversation.prototype.afficherConversation = function(id) { function() { var jq = $(this); var statut = mess[thisConversation.idMessageFromString(jq.attr("id"))]; - if (!statut) { + if (statut === undefined) { jq.addClass("cache"); } else { jq.removeClass("cache");