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