MOD début de la Grande Restructuration JavaScript (pas fini)
[euphorik.git] / js / pageMinichat.js
index 31c7e31..da534ed 100755 (executable)
@@ -38,7 +38,7 @@ PageMinichat.prototype.contenu = function()
    var formulaireXHTML = '<form method="post" action="" id ="posterMessage">\
 <p>\
 <input class="captcha" name="captcha" type="text" size="8" maxlength="8"></input>\
-<input class="pseudo" name="pseudo" type="text" maxlength="50" value="' + encodeURI(conf.nickDefaut) + '"></input>\
+<input class="pseudo" name="pseudo" type="text" maxlength="50" value="' + encodeURI(euphorik.conf.nickDefaut) + '"></input>\
 <span id="repondA"><span class="nb">0</span><span class="messages"></span></span>\
 <input class="message" name="message" type="text" maxlength="500" value=""></input>\
 <button class="smiles"></button>\
@@ -79,6 +79,7 @@ PageMinichat.prototype.charger = function()
    {    
       this.util.outilsBan = $(
          '<span id="outilsBan">' +
+         '<span class="spacer"></span>' +
          '<form action=""><p><input id="raison" name="raison" type="text" size="10" maxlength="200"></input></p></form>' +
          '<img id="ban" src="img/ban.gif" alt="Ban de 3 jours" />' +
          '<img id="kick" src="img/kick.gif" alt="Ban de 15min" />' +
@@ -87,8 +88,8 @@ PageMinichat.prototype.charger = function()
       )
       
       this.util.infoBulle("Slap", $("#slap", this.util.outilsBan))
-      this.util.infoBulle("Kick (" + conf.tempsKick + "min)", $("#kick", this.util.outilsBan))
-      this.util.infoBulle("Ban (" + conf.tempsBan / 24 / 60 + " jours)", $("#ban", this.util.outilsBan))
+      this.util.infoBulle("Kick (" + euphorik.conf.tempsKick + "min)", $("#kick", this.util.outilsBan))
+      this.util.infoBulle("Ban (" + euphorik.conf.tempsBan / 24 / 60 + " jours)", $("#ban", this.util.outilsBan))
       this.util.infoBulle("La raison", $("input", this.util.outilsBan))
    }
    
@@ -105,7 +106,7 @@ PageMinichat.prototype.charger = function()
                thisPage.conversations.enleverMessagesRepond()             
          }     
       ),
-      positionBulleType.droite
+      euphorik.Util.positionBulleType.droite
    )
 
    // <smiles>
@@ -172,7 +173,7 @@ PageMinichat.prototype.charger = function()
       function()
       {
          var input = $("input.pseudo")[0]
-         if (input.value == conf.pseudoDefaut)
+         if (input.value == euphorik.conf.pseudoDefaut)
             input.value = ""
       }
    )
@@ -192,7 +193,7 @@ PageMinichat.prototype.getJSONMessage = function(pseudo, message)
       repondA.push(parseInt(id)) // FIXME : une propriété ne peut pas être de type int ?
       
    return {
-      "header" : { "action" : "put_message", "version" : conf.versionProtocole },
+      "header" : { "action" : "put_message", "version" : euphorik.conf.versionProtocole },
       "cookie" : this.client.cookie,
       "nick" : pseudo,
       "content" : message,
@@ -207,9 +208,9 @@ PageMinichat.prototype.envoyerMessage = function(pseudo, message)
    // (un pseudo vide est autorisé)
    pseudo = this.formateur.filtrerInputPseudo(pseudo)
    
-   if (pseudo == conf.nickDefaut)
+   if (pseudo == euphorik.conf.nickDefaut)
    {
-      this.util.messageDialogue("Le pseudo ne peut pas être " + conf.nickDefaut)
+      this.util.messageDialogue("Le pseudo ne peut pas être " + euphorik.conf.nickDefaut)
       return
    }
    
@@ -465,7 +466,7 @@ function Conversation(conversations, num)
    this.messages = []
    this.messagesParId = {}
    
-   this.nbMessageMax = conf.nbMessageAffiche // Le nombre de message affiché par page
+   this.nbMessageMax = euphorik.conf.nbMessageAffiche // Le nombre de message affiché par page
 
    var messagesXHTML = '<div class="messages"></div>'
    var messageRacineXHTML = '<div class="messageRacine"></div>'
@@ -487,7 +488,7 @@ function Conversation(conversations, num)
     
    $("#conversations tr").append(XHTML)
    
-   this.util.infoBulle("Aller à la première page", $("#" + this.getId() + " .numPage"), positionBulleType.haut)
+   this.util.infoBulle("Aller à la première page", $("#" + this.getId() + " .numPage"), euphorik.Util.positionBulleType.haut)
    if (num != 0)
    {
       this.util.infoBulle("Créer un lien vers la conversation", $("#" + this.getId() + " .lien"))
@@ -519,8 +520,6 @@ Conversation.prototype.majRacine = function()
       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()
@@ -642,6 +641,9 @@ Conversation.prototype.viderMessages = function()
    this.messagesParId = {}
    this.idDernierMessageAffiche = 0
    $("#" + this.getId() + " .messages .message").remove()
+   
+   // enlève également la racine
+   $("#" + this.getId() + " .titre .messageRacine").empty()
 }
 
 Conversation.prototype.idMessageFromString = function(idString)
@@ -716,7 +718,7 @@ Conversation.prototype.attacherEventsSurMessage = function(element)
          thisConversation.conversations.ouvrirConversation(parseInt(idString.substring(1, racine.length - 1), 36))
          return false
       }
-   )  
+   )
        
    $(element).click(
       function(event)
@@ -763,20 +765,21 @@ Conversation.prototype.attacherEventsSurMessage = function(element)
  if (thisConversation.client.viewTimes)
     $(".dateComplete", element).show()
  else
-    $(".dateComplete", idMess).hide()
+    $(".dateComplete", element).hide()
 
- $("a[@rel*=lightbox]", idMess).lightBox()
+ $("a[@rel*=lightbox]", element).lightBox()
 
  // les outils de bannissement (uniquement pour les ekMaster)
  if (thisConversation.client.ekMaster)
-    $(".pseudo", idMess).hover(
+    $(".pseudo", element).hover(
        function(e)
        {     
           var userId = parseInt($(".id", this).text())
-          var element = $(this)
-          var h = element.height()
-          var offset = element.offset()
-          thisConversation.util.outilsBan.css("top", offset.top - 2).css("left", offset.left - 2).height(h < 16 ? 16 : h).width(element.width() + 16 * 3 + 4 + 64).prependTo(this).show()
+          var pseudo = $(this)
+          var h = pseudo.outerHeight()
+          var offset = pseudo.offset()
+          // TODO : calculer automatiquement la largeur plutôt que d'inscrire des valeurs en brut'
+          thisConversation.util.outilsBan.css("top", offset.top - 2).css("left", offset.left - 2).height(h < 16 ? 16 : h).width(pseudo.outerWidth() + 16 * 3 + 12 + 64).prependTo(this).show()
           $("img", thisConversation.util.outilsBan).unbind("click")
           $("#slap", thisConversation.util.outilsBan).click(
              function()
@@ -1016,7 +1019,7 @@ Conversations.prototype.afficherMessagesRepondConversations = function()
 Conversations.prototype.getJSONrafraichirMessages = function()
 {
    var mess =  {
-      "message_count" : conf.nbMessageAffiche,
+      "message_count" : euphorik.conf.nbMessageAffiche,
       "main_page" : this.client.pagePrincipale,
       "conversations" : this.getJSONConversations(),
       "troll_id" : this.trollIdCourant