MOD french -> english (7)
authorGreg Burri <greg.burri@gmail.com>
Mon, 16 Mar 2009 10:09:53 +0000 (10:09 +0000)
committerGreg Burri <greg.burri@gmail.com>
Mon, 16 Mar 2009 10:09:53 +0000 (10:09 +0000)
js/chat/commandes.js
js/chat/conversation.js
js/chat/conversations.js
js/chat/message.js
js/formater.js
js/pageAdmin.js
js/pageMinichat.js
js/pageProfile.js
js/util.js
styles/1/pageMinichat.css
styles/2/pageMinichat.css

index 5aec5d5..0c3d23b 100644 (file)
@@ -40,7 +40,7 @@ euphorik.Commandes = function(client, pageMinichat, util, formater) {
    objectEach(
       euphorik.Commandes.liste,
       function(name, commande) {
    objectEach(
       euphorik.Commandes.liste,
       function(name, commande) {
-         thisCommandes.texteAide += "<li><span class=\"usage\">" + thisCommandes.formater.traitementComplet(commande.usage) + "</span> : " + thisCommandes.formater.traitementComplet(commande.description) + "</li>";
+         thisCommandes.texteAide += "<li><span class=\"usage\">" + thisCommandes.formater.completeProcessing(commande.usage) + "</span> : " + thisCommandes.formater.completeProcessing(commande.description) + "</li>";
       }
    );
    this.texteAide += "</ul></div>";
       }
    );
    this.texteAide += "</ul></div>";
index b3fb191..5321380 100644 (file)
@@ -319,7 +319,7 @@ euphorik.Conversation.prototype.attacherEventsSurMessage = function(element) {
    }\r
    \r
    var thisConversation = this;\r
    }\r
    \r
    var thisConversation = this;\r
-   $(".lienConv", element).click(\r
+   $(".conversationLink", element).click(\r
       function(event) {\r
          // FIXME : ya pas mieux ?\r
          var racine = $(event.target).text();\r
       function(event) {\r
          // FIXME : ya pas mieux ?\r
          var racine = $(event.target).text();\r
index c7be4e0..3f9fe2d 100644 (file)
@@ -380,7 +380,7 @@ euphorik.Conversations.prototype.rafraichirMessages = function(vider) {
          "new_troll" :\r
             function(data) {\r
                thisConversations.trollIdCourant = data.troll_id;\r
          "new_troll" :\r
             function(data) {\r
                thisConversations.trollIdCourant = data.troll_id;\r
-               $("#trollCourant .troll").html(thisConversations.formater.traitementComplet(data.content)).unbind("click").click(\r
+               $("#trollCourant .troll").html(thisConversations.formater.completeProcessing(data.content)).unbind("click").click(\r
                   function() {\r
                      thisConversations.ouvrirConversation(data.message_id);\r
                   }\r
                   function() {\r
                      thisConversations.ouvrirConversation(data.message_id);\r
                   }\r
index 2586dbb..51d84b9 100644 (file)
@@ -118,9 +118,9 @@ euphorik.Message.prototype.XHTML = function(messagePair, pre) {
       \r
    // construit l'identifiant de la personne\r
    var identifiant = \r
       \r
    // construit l'identifiant de la personne\r
    var identifiant = \r
-      this.client.nickFormat === "nick" || this.login === "" ? this.formater.traitementComplet(this.nick) : \r
-      (this.client.nickFormat === "login" ? this.formater.traitementComplet(this.login) : \r
-      this.formater.traitementComplet(this.nick) + "<span class=\"login\">(" + this.formater.traitementComplet(this.login) +")</span>" );\r
+      this.client.nickFormat === "nick" || this.login === "" ? this.formater.completeProcessing(this.nick) : \r
+      (this.client.nickFormat === "login" ? this.formater.completeProcessing(this.login) : \r
+      this.formater.completeProcessing(this.nick) + "<span class=\"login\">(" + this.formater.completeProcessing(this.login) +")</span>" );\r
 \r
    var XHTMLrepondA = "";\r
    var debut = true;\r
 \r
    var XHTMLrepondA = "";\r
    var debut = true;\r
@@ -128,7 +128,7 @@ euphorik.Message.prototype.XHTML = function(messagePair, pre) {
       if (!debut) {\r
          XHTMLrepondA += ", ";\r
       }\r
       if (!debut) {\r
          XHTMLrepondA += ", ";\r
       }\r
-      XHTMLrepondA += thisMessage.formater.traitementComplet(rep.nick);\r
+      XHTMLrepondA += thisMessage.formater.completeProcessing(rep.nick);\r
       debut = false;\r
    });\r
    if (XHTMLrepondA) {\r
       debut = false;\r
    });\r
    if (XHTMLrepondA) {\r
@@ -148,6 +148,6 @@ euphorik.Message.prototype.XHTML = function(messagePair, pre) {
          "</span>" + \r
          "<span class=\"delimitationEntete\"></span>" +\r
          XHTMLrepondA +\r
          "</span>" + \r
          "<span class=\"delimitationEntete\"></span>" +\r
          XHTMLrepondA +\r
-         "<span class=\"contenu\">" + this.formater.traitementComplet(this.contenu, this.nick) + "</span>" +\r
+         "<span class=\"contenu\">" + this.formater.completeProcessing(this.contenu, this.nick) + "</span>" +\r
       "</div>";\r
 };\r
       "</div>";\r
 };\r
index 78e2407..a4fbc23 100644 (file)
 // 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
 // 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
+/*jslint laxbreak:true */\r
 \r
 /**\r
 \r
 /**\r
-  * Objet permettant de formater du texte par exemple pour la substitution des liens dans les\r
-  * message par "[url]".\r
-  * TODO : améliorer l'efficacité des méthods notamment lié au smiles.\r
+  * An object for text formatting like Wiki syntax or smiles substitution.\r
+  * TODO : improve the performance of the smiles substitution\r
   */\r
 euphorik.Formater = function() {\r
    this.smiles = euphorik.conf.smiles;\r
   */\r
 euphorik.Formater = function() {\r
    this.smiles = euphorik.conf.smiles;\r
-   this.protocoles = "http|https|ed2k";\r
+   this.protocols = "http|https|ed2k";\r
    \r
    \r
-   this.regexUrl = new RegExp("(?:(?:" + this.protocoles + ")://|www\\.)[^ ]*", "gi");\r
+   this.regexUrl = new RegExp("(?:(?:" + this.protocols + ")://|www\\.)[^ ]*", "gi");\r
    this.regexImg = new RegExp("^.*?\\.(gif|jpg|png|jpeg|bmp|tiff)$", "i");\r
    this.regexImg = new RegExp("^.*?\\.(gif|jpg|png|jpeg|bmp|tiff)$", "i");\r
-   this.regexDomaine = new RegExp("^(?:(?:" + this.protocoles + ")://)(.*?)(?:$|/).*$", "i");\r
-   this.regexTestProtocoleExiste = new RegExp("^(?:" + this.protocoles + ")://.*$", "i");\r
+   this.regexDomain = new RegExp("^(?:(?:" + this.protocols + ")://)(.*?)(?:$|/).*$", "i");\r
+   this.regexTestIfProtocolExists = new RegExp("^(?:" + this.protocols + ")://.*$", "i");\r
    this.regexProtocolName = new RegExp("^(.*?)://");\r
 };\r
 \r
 /**\r
    this.regexProtocolName = new RegExp("^(.*?)://");\r
 };\r
 \r
 /**\r
-  * Formate un nick saise par l'utilisateur.\r
-  * @param nick le nick brut\r
-  * @return le nick filtré\r
+  * Formats a nick given by the user.\r
+  * Trim and remove "{..}".\r
+  * @param nick the given nick\r
+  * @return the cleaned nick\r
   */\r
   */\r
-euphorik.Formater.prototype.filtrerInputPseudo = function(nick) {\r
+euphorik.Formater.prototype.formatNick = function(nick) {\r
    return nick.replace(/\{|\}/g, "").trim();\r
 };\r
 \r
    return nick.replace(/\{|\}/g, "").trim();\r
 };\r
 \r
@@ -51,34 +52,40 @@ euphorik.Formater.prototype.getSmilesHTML = function() {
 };\r
 \r
 /**\r
 };\r
 \r
 /**\r
-  * Formatage complet d'un texte.\r
-  * @m le message\r
-  * @nick facultatif, permet de contruire le label des images sous la forme : "<Pseudo> : <Message>"\r
+  * Complete fomratting process applied to a text.\r
+  *  - Remove HTML markups\r
+  *  - Substitutes wiki syntax with HTML\r
+  *  - Replaces URL with 'a' tag\r
+  *  - Replaces smiles with HTML\r
+  *  - Replaces the link to a conversation with HTML\r
+  * @m the raw message\r
+  * @nick optional, attaches the nick and the message to each images like "<pseudo> : <message>"\r
   */\r
   */\r
-euphorik.Formater.prototype.traitementComplet = function(m, nick) {\r
-   return this.traiterLiensConv(this.traiterSmiles(this.traiterURL(this.traiterWikiSyntaxe(this.remplacerBalisesHTML(m)), nick)));\r
+euphorik.Formater.prototype.completeProcessing = function(m, nick) {\r
+   return this.processConversationLinks(this.processSmiles(this.traiterURL(this.traiterWikiSyntaxe(this.remplacerBalisesHTML(m)), nick)));\r
 };\r
 \r
 /**\r
 };\r
 \r
 /**\r
-  * Transforme les liens en entités clickables.\r
-  * Un lien vers une conversation permet d'ouvrire celle ci, elle se marque comme ceci dans un message :\r
-  * "{5F}" ou 5F est la racine de la conversation.\r
-  * Ce lien sera transformer en <span class="lienConv">{5F}</span> pouvant être clické pour créer la conv 5F.\r
+  * Processes all conversation links.\r
+  * The user can click on a conversation link to open it.\r
+  * A link is a number in between brackets like that : "{5F}" where '5F' is the id of the root message.\r
+  * This link will be turn in '<span class="conversationLink">{5F}</span>' which can be clicked to open the '5F' conversation.\r
   */\r
   */\r
-euphorik.Formater.prototype.traiterLiensConv = function(m) {\r
+euphorik.Formater.prototype.processConversationLinks = function(m) {\r
    return m.replace(\r
       /\{\w+\}/g,\r
       function(lien) {\r
    return m.replace(\r
       /\{\w+\}/g,\r
       function(lien) {\r
-         return "<span class=\"lienConv\">" + lien + "</span>";\r
+         return "<span class=\"conversationLink\">" + lien + "</span>";\r
       }\r
    );\r
 };\r
 \r
 /**\r
       }\r
    );\r
 };\r
 \r
 /**\r
-  * FIXME : Cette méthode est attrocement lourde ! A optimiser.\r
-  * moyenne sur échantillon : 234ms\r
+  * Substitute the smiles (':)', ':P', etc.) with HTML.\r
+  * FIXME : This function is very heavy, to optimize !\r
+  * Average : 234ms\r
   */\r
   */\r
-euphorik.Formater.prototype.traiterSmiles = function(m) {  \r
+euphorik.Formater.prototype.processSmiles = function(m) {  \r
    objectEach(this.smiles, function(name, smiles) {\r
       for (var i = 0; i < smiles.length; i++) {\r
          m = m.replace(smiles[i], "<img src=\"img/smileys/" + name + ".gif\" alt =\"" + name + "\"  />");\r
    objectEach(this.smiles, function(name, smiles) {\r
       for (var i = 0; i < smiles.length; i++) {\r
          m = m.replace(smiles[i], "<img src=\"img/smileys/" + name + ".gif\" alt =\"" + name + "\"  />");\r
@@ -95,7 +102,7 @@ euphorik.Formater.prototype.traiterURL = function(m, nick) {
    var thisFormater = this;\r
    var traitementUrl = function(url) {    \r
       // si ya pas de protocole on rajoute "http://"\r
    var thisFormater = this;\r
    var traitementUrl = function(url) {    \r
       // si ya pas de protocole on rajoute "http://"\r
-      if (!thisFormater.regexTestProtocoleExiste.test(url)) {\r
+      if (!thisFormater.regexTestIfProtocolExists.test(url)) {\r
          url = "http://" + url;\r
       }\r
       var extension = thisFormater.getShort(url);\r
          url = "http://" + url;\r
       }\r
       var extension = thisFormater.getShort(url);\r
@@ -138,7 +145,7 @@ euphorik.Formater.prototype.getShort = function(url) {
       }\r
       estUneImage = true;\r
    } else {\r
       }\r
       estUneImage = true;\r
    } else {\r
-      var rechercheDomaine = this.regexDomaine.exec(url);\r
+      var rechercheDomaine = this.regexDomain.exec(url);\r
       if (rechercheDomaine && rechercheDomaine.length >= 2) {\r
          versionShort = rechercheDomaine[1];\r
       } else {\r
       if (rechercheDomaine && rechercheDomaine.length >= 2) {\r
          versionShort = rechercheDomaine[1];\r
       } else {\r
@@ -163,7 +170,7 @@ euphorik.Formater.prototype.supprimerSmiles = function(m) {
 \r
 /**\r
   * Traite les nick et messages à être affiché dans le titre d'une image visualisé avec lightbox.\r
 \r
 /**\r
   * Traite les nick et messages à être affiché dans le titre d'une image visualisé avec lightbox.\r
-  * Supprime les smiles pour pas qu'ils puissent être remplacés par la fonction 'traiterSmiles'.\r
+  * Supprime les smiles pour pas qu'ils puissent être remplacés par la fonction 'processSmiles'.\r
   * TODO : trouver un moyen pour que les smiles puissent être conservés\r
   */\r
 euphorik.Formater.prototype.traiterPourFenetreLightBox = function(M, urlCourante) {\r
   * TODO : trouver un moyen pour que les smiles puissent être conservés\r
   */\r
 euphorik.Formater.prototype.traiterPourFenetreLightBox = function(M, urlCourante) {\r
index f94f9ab..608a7ec 100644 (file)
@@ -134,8 +134,8 @@ euphorik.PageAdmin.prototype.majIPs = function() {
                '</span>|';
             ip.users.each(function(j, user) {
                XHTML += (j > 0 ? ", " : "") +
                '</span>|';
             ip.users.each(function(j, user) {
                XHTML += (j > 0 ? ", " : "") +
-                  '<span class="nick">' + thisPageAdmin.formater.traitementComplet(user.nick) + '</span>' +
-                  (user.login === "" ? "" : '<span class="login">(' + thisPageAdmin.formater.traitementComplet(user.login) + ')</span>');
+                  '<span class="nick">' + thisPageAdmin.formater.completeProcessing(user.nick) + '</span>' +
+                  (user.login === "" ? "" : '<span class="login">(' + thisPageAdmin.formater.completeProcessing(user.login) + ')</span>');
             });
             XHTML += '<span class="deban">débannir</span></div>';
          });
             });
             XHTML += '<span class="deban">débannir</span></div>';
          });
@@ -234,8 +234,8 @@ euphorik.Trolls.prototype.ajouterTrollEvent = function(data) {
       
       XHTML +=
          '<div id="troll' + trollId + '" class="troll">' +
       
       XHTML +=
          '<div id="troll' + trollId + '" class="troll">' +
-         '<span class="content">' + thisTrolls.formater.traitementComplet(troll.content, troll.author) + '</span>' +
-         '<span class="author"> - ' + thisTrolls.formater.traitementComplet(troll.author) + '</span>' +
+         '<span class="content">' + thisTrolls.formater.completeProcessing(troll.content, troll.author) + '</span>' +
+         '<span class="author"> - ' + thisTrolls.formater.completeProcessing(troll.author) + '</span>' +
          (trollData.author_id === thisTrolls.client.id ? '<span class="editTroll">éditer</span><span class="delTroll">Supprimer</span>' : '') +
          '</div>';
    });
          (trollData.author_id === thisTrolls.client.id ? '<span class="editTroll">éditer</span><span class="delTroll">Supprimer</span>' : '') +
          '</div>';
    });
@@ -305,7 +305,7 @@ euphorik.Trolls.prototype.ajouterTrollEvent = function(data) {
 
 euphorik.Trolls.prototype.modifierTrollEvent = function(data) {
    var thisTrolls = this;
 
 euphorik.Trolls.prototype.modifierTrollEvent = function(data) {
    var thisTrolls = this;
-   $("#trolls #troll" + data.troll_id + " .content").html(thisTrolls.formater.traitementComplet(data.content, thisTrolls.trolls[data.troll_id].author));
+   $("#trolls #troll" + data.troll_id + " .content").html(thisTrolls.formater.completeProcessing(data.content, thisTrolls.trolls[data.troll_id].author));
    $("#trolls #troll" + data.troll_id + " a[@rel*=lightbox]").lightBox();
    thisTrolls.trolls[data.troll_id].content = data.content;
 };
    $("#trolls #troll" + data.troll_id + " a[@rel*=lightbox]").lightBox();
    thisTrolls.trolls[data.troll_id].content = data.content;
 };
index 0af78d0..abcb72b 100755 (executable)
@@ -229,7 +229,7 @@ euphorik.PageMinichat.prototype.envoyerMessage = function(message) {
    var nick = $("form#posterMessage input.nick").val();
 
    // (un nick vide est autorisé)
    var nick = $("form#posterMessage input.nick").val();
 
    // (un nick vide est autorisé)
-   nick = this.formater.filtrerInputPseudo(nick);
+   nick = this.formater.formatNick(nick);
    
    if (nick === euphorik.conf.defaultNick) {
       this.util.messageDialog("Le nick ne peut pas être " + euphorik.conf.defaultNick);
    
    if (nick === euphorik.conf.defaultNick) {
       this.util.messageDialog("Le nick ne peut pas être " + euphorik.conf.defaultNick);
index 99f2cfb..7bbe045 100755 (executable)
@@ -64,7 +64,7 @@ euphorik.PageProfile.prototype.chargerProfile = function() {
 \r
    $("form#profile button").click(\r
       function() {\r
 \r
    $("form#profile button").click(\r
       function() {\r
-         thisPage.client.nick = thisPage.formate.filtrerInputPseudo($("form#profile input.nick").val());\r
+         thisPage.client.nick = thisPage.formate.formatNick($("form#profile input.nick").val());\r
          thisPage.client.email = $("form#profile input.email").val();\r
          thisPage.client.chatOrder = $("form#profile select#chatOrder option:selected").attr("value");\r
          thisPage.client.nickFormat = $("form#profile select#affichagePseudo option:selected").attr("value");\r
          thisPage.client.email = $("form#profile input.email").val();\r
          thisPage.client.chatOrder = $("form#profile select#chatOrder option:selected").attr("value");\r
          thisPage.client.nickFormat = $("form#profile select#affichagePseudo option:selected").attr("value");\r
index 27fab59..7ca5760 100644 (file)
@@ -59,7 +59,7 @@ euphorik.Util.prototype.messageDialog = function(message, type, buttons, format,
    var close = function() { $("#info").slideUp(100); };\r
    close();\r
 \r
    var close = function() { $("#info").slideUp(100); };\r
    close();\r
 \r
-   $("#info .message").html(!thisUtil.formater || !format ? message : thisUtil.formater.traitementComplet(message));\r
+   $("#info .message").html(!thisUtil.formater || !format ? message : thisUtil.formater.completeProcessing(message));\r
    \r
    switch(type) {\r
       case euphorik.Util.messageType.informatif : $("#info #icone").attr("class", "information"); break;\r
    \r
    switch(type) {\r
       case euphorik.Util.messageType.informatif : $("#info #icone").attr("class", "information"); break;\r
index 03c5ee0..863d385 100755 (executable)
 #page.minichat div.message a {
        font-weight: bold;
 }
 #page.minichat div.message a {
        font-weight: bold;
 }
-#page.minichat div.message .lienConv {
+#page.minichat div.message .conversationLink {
        color: #c62929;
        font-weight: bold;
        cursor: pointer
 }
        color: #c62929;
        font-weight: bold;
        cursor: pointer
 }
-#page.minichat div.message .lienConv:hover {
+#page.minichat div.message .conversationLink:hover {
        color: #e84747
 }
 #page.minichat .entete {
        color: #e84747
 }
 #page.minichat .entete {
index 085568e..da30f73 100755 (executable)
 #page.minichat div.message a {
        font-weight: bold;
 }
 #page.minichat div.message a {
        font-weight: bold;
 }
-#page.minichat div.message .lienConv {
+#page.minichat div.message .conversationLink {
        color: #db960f;
        font-weight: bold;
        cursor: pointer
 }
        color: #db960f;
        font-weight: bold;
        cursor: pointer
 }
-#page.minichat div.message .lienConv:hover {
+#page.minichat div.message .conversationLink:hover {
        color: #f1c060
 }
 #page.minichat .date {
        color: #f1c060
 }
 #page.minichat .date {