MOD begining of #100 (code broken)
[euphorik.git] / js / pageMinichat / message.js
diff --git a/js/pageMinichat/message.js b/js/pageMinichat/message.js
deleted file mode 100644 (file)
index c24be1d..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-// coding: utf-8\r
-// Copyright 2008 Grégory Burri\r
-//\r
-// This file is part of Euphorik.\r
-//\r
-// Euphorik is free software: you can redistribute it and/or modify\r
-// it under the terms of the GNU General Public License as published by\r
-// the Free Software Foundation, either version 3 of the License, or\r
-// (at your option) any later version.\r
-//\r
-// Euphorik is distributed in the hope that it will be useful,\r
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-// but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-// GNU General Public License for more details.\r
-//\r
-// You should have received a copy of the GNU General Public License\r
-// along with Euphorik.  If not, see <http://www.gnu.org/licenses/>.\r
\r
-euphorik.Reponse = function(id, pseudo, login) {\r
-   this.id = id;\r
-   this.pseudo = pseudo;\r
-   this.login = login;\r
-   this.pseudo = pseudo || "";\r
-   this.login = login || "";\r
-};\r
-\r
-/**\r
-  * Représente un message.\r
-  */\r
-euphorik.Message = function(client, formater, element) {\r
-   this.client = client;\r
-   this.formater = formater;\r
-   \r
-   this.id = element.id;\r
-   this.auteurId = element.user_id;\r
-   this.racineId = element.root;\r
-   this.date = element.date;\r
-   this.pseudo = element.nick;\r
-   this.login = element.login;\r
-   this.contenu = element.content;\r
-   \r
-   // l'ensemble des id des messages qui reponde à ce message, exemple : {45:true, 32:true} (le 'true' ne sert à rien ^_^)\r
-   // mis à jour au fur à mesure que des messages sont ajoutés aux conversations\r
-   this.estReponduPar = {};\r
-   \r
-   this.appartientAuClient = element.owner;\r
-   this.clientARepondu = element.answered;\r
-   this.estUneReponse = element.is_a_reply;\r
-   this.systeme = element.system; // est-ce un message 'système' ?\r
-   this.setRepondA(element.answer_to); // un ensemble de reponse (voir Reponse) indexé par l'id du message de la reponses\r
-   this.ekMaster = element.ek_master;\r
-   this.degreeOstentatoire = element.ostentatious_master;\r
-};\r
-\r
-/**\r
-  * @param pre est un prefix permettant de créer un Id différent pour deux mêmes messages.\r
-  *   Cela est utile pour afficher plusieurs mêmes messages au sein d'un document XHTML.\r
-  *   voir également la fonction 'XHTML()'.\r
-  */\r
-euphorik.Message.prototype.getId = function(pre) {\r
-   pre = pre || "";\r
-   return pre + "mess" + this.id.toString(36);\r
-};\r
-\r
-euphorik.Message.prototype.setRepondA = function(repondAJSON) {\r
-   var thisMessage = this;\r
-   this.repondA = {};\r
-   \r
-   repondAJSON.each(function(i, reponse) {\r
-      thisMessage.repondA[reponse.id] = new euphorik.Reponse(reponse.id, reponse.nick, reponse.login);\r
-   });\r
-};\r
-\r
-/**\r
-  * Renvoie les messages faisant partie d'une conversation.\r
-  * @param messages l'ensemble des messages de la conversation\r
-  * @return les id des messages qui ont été mis en evidence sous la forme\r
-  *   d'un hash (object) {id => 0 | 1 | 2 | 3}. 1 : proprietaire, 2 : reponse directe, 3 : message repondu\r
-  */\r
-euphorik.Message.prototype.getConversation = function(messages) {\r
-   var thisMessage = this;\r
-\r
-   // les messages faisant partie de la conversation\r
-   var messagesEnEvidence = {};\r
-   messagesEnEvidence[this.id] = 1;\r
-   \r
-   // parcours en profondeur\r
-   var f = function(ids, premierNiveau, ensemble, evidence) {\r
-      objectEach(ids, function(id) {\r
-         if (!messagesEnEvidence[id] || premierNiveau) {\r
-            var message = messages.messagesParId[id];\r
-            if (message) {\r
-               messagesEnEvidence[id] = premierNiveau ? evidence : (message.auteurId === thisMessage.auteurId ? 1 : 0);\r
-               f(message[ensemble], false, ensemble, evidence);\r
-            }\r
-         }\r
-      });\r
-   };\r
-   \r
-   // remonte le temps\r
-   f(this.estReponduPar, true, "estReponduPar", 2);\r
-   \r
-   // descent le temps\r
-   f(this.repondA, true, "repondA", 3);       \r
-   \r
-   return messagesEnEvidence;\r
-};\r
-\r
-/**\r
-  * Renvoie le message sous la forme de code XHTML (string) prêt à être inséré dans un document.\r
-  * Aucun callback n'est affecté.\r
-  */\r
-euphorik.Message.prototype.XHTML = function(messagePair, pre) {\r
-   if (messagePair === undefined) {\r
-      messagePair =  true;\r
-   }\r
-   pre = pre || "";\r
-   \r
-   thisMessage = this;\r
-      \r
-   // construit l'identifiant de la personne\r
-   var identifiant = \r
-      this.client.nickFormat === "nick" || this.login === "" ? this.formater.traitementComplet(this.pseudo) : \r
-      (this.client.nickFormat === "login" ? this.formater.traitementComplet(this.login) : \r
-      this.formater.traitementComplet(this.pseudo) + "<span class=\"login\">(" + this.formater.traitementComplet(this.login) +")</span>" );\r
-\r
-   var XHTMLrepondA = "";\r
-   var debut = true;\r
-   objectEach(this.repondA, function(id, rep) {\r
-      if (!debut) {\r
-         XHTMLrepondA += ", ";\r
-      }\r
-      XHTMLrepondA += thisMessage.formater.traitementComplet(rep.pseudo);\r
-      debut = false;\r
-   });\r
-   if (XHTMLrepondA) {\r
-      XHTMLrepondA = "<span class=\"repondA\">" + XHTMLrepondA + "</span><span class=\"delimitationRepondA\"></span>";\r
-   }\r
-   \r
-   return "<div id=\"" + this.getId(pre) + "\" class=\"" + (messagePair ? "messagePair" : "messageImpair") + " message" +\r
-         (this.appartientAuClient ? " proprietaire" : "")  +\r
-         (this.clientARepondu ? " repondu" : "") +\r
-         (this.estUneReponse ? " reponse" : "") +\r
-         (this.systeme ? " systeme" : "") +\r
-         (this.ekMaster ? " ekMaster" + this.degreeOstentatoire : "") +\r
-      "\">" +\r
-         "<span class=\"entete\">" +\r
-            "<span class=\"dateComplete\">[<span class=\"date\">" + this.date + "</span>]</span>" +\r
-            "<span class=\"pseudo\"><span class=\"id\" style=\"display: none\">" + this.auteurId + "</span><span class=\"ident\">" + identifiant + "</span></span>" +\r
-         "</span>" + \r
-         "<span class=\"delimitationEntete\"></span>" +\r
-         XHTMLrepondA +\r
-         "<span class=\"contenu\">" + this.formater.traitementComplet(this.contenu, this.pseudo) + "</span>" +\r
-      "</div>";\r
-};\r