+/**
+ * Met à jour la racine, décide de l'afficher ou non.
+ * On l'affiche uniquement si le message racine n'est pas déjà affiché sur la liste des messages.
+ */
+Conversation.prototype.majRacine = function()
+{
+ if (this.racine == undefined)
+ return
+
+ if (!(this.racine.id in this.messagesParId))
+ {
+ this.messagesParId[this.racine.id] = this.racine
+ var element = $(this.racine.XHTML(true, this.getId()))
+ this.attacherEventsSurMessage(element)
+ $("#" + this.getId() + " .titre .messageRacine").html(element)
+ }
+ else // si le message fait déjà parti de la conversation on n'affiche pas la racine
+ $("#" + this.getId() + " .titre .messageRacine").empty()
+}
+
+Conversation.prototype.enleverMiseEnEvidence = function()
+{
+ $("#" + this.getId() + " .message").removeClass("cache")
+}
+
+Conversation.prototype.colorerEntetes = function()
+{
+ var messagesReponse = ""
+ var messagesRepondu = ""
+ var messagesProprietaire = ""
+ for (var i = 0; i < this.messages.length; i++)
+ {
+ if (this.messages[i].appartientAuClient)
+ messagesProprietaire += "#" + this.messages[i].getId(this.getId()) + ","
+ else if (this.messages[i].clientARepondu)
+ messagesRepondu += "#" + this.messages[i].getId(this.getId()) + ","
+ else if (this.messages[i].estUneReponse)
+ messagesReponse += "#" + this.messages[i].getId(this.getId()) + ","
+ }
+ $(messagesReponse).addClass("reponse")
+ $(messagesRepondu).addClass("repondu")
+ $(messagesProprietaire).addClass("proprietaire")
+}
+
+Conversation.prototype.decolorerEntetes = function()
+{
+ $("#" + this.getId() + " .messages .message")
+ .removeClass("reponse")
+ .removeClass("repondu")
+ .removeClass("proprietaire")
+}
+
+/**
+ * Défini la page courante et s'il l'on se trouve sur la dernière page.
+ * @pageCourante la page courante
+ * @dernierePage true si c'est la dernière page sinon false
+ */
+Conversation.prototype.setPage = function(pageCourante, dernierePage)
+{
+ $("#" + this.getId() + " .numPage").text(pageCourante)
+ $("#" + this.getId() + " .next").css("display", pageCourante == 1 ? "none" : "inline")
+ $("#" + this.getId() + " .prev").css("display", dernierePage ? "none" : "inline")
+}
+
+/**
+ * Evenement déclanché lors de l'insertion du lien de la conversation dans le message courant.
+ */
+Conversation.prototype.eventLien = function(fun)
+{
+ var thisConversation = this
+
+ $("#" + this.getId() + " .titre .lien").click(
+ function()
+ {
+ fun(thisConversation.num)
+ }