http://leandrovieira.com/projects/jquery/lightbox/
[euphorik.git] / js / euphorik.js
index e8311da..8892035 100755 (executable)
@@ -305,7 +305,8 @@ Formateur.prototype.traiterLiensConv = function(M)
 }
 \r
 /**\r
-  * FIXME : Cette méthode est attrocement lourde ! A optimiser.\r
+  * FIXME : Cette méthode est attrocement lourde ! A optimiser.
+  * moyenne su échantillon : 234ms\r
   */
 Formateur.prototype.traiterSmiles = function(M)
 {  
@@ -336,7 +337,7 @@ Formateur.prototype.traiterURL = function(M, pseudo)
       if (!thisFormateur.regexTestProtocoleExiste.test(url))\r
          url = "http://" + url
       var extension = thisFormateur.getShort(url)
-      return "<a " + (extension[1] ? "title=\"" + thisFormateur.traiterPourFenetreLightBox(pseudo, url) + ": " +  thisFormateur.traiterPourFenetreLightBox(M, url) + "\"" + " rel=\"lightbox[groupe]\"" : "") + " href=\"" + url + "\" >[" + extension[0] + "]</a>"
+      return "<a " + (extension[1] ? "title=\"" + thisFormateur.traiterPourFenetreLightBox(pseudo, url) + ": " +  thisFormateur.traiterPourFenetreLightBox(M, url) + "\"" + " rel=\"lightbox\"" : "") + " href=\"" + url + "\" >[" + extension[0] + "]</a>"
    }
    return M.replace(this.regexUrl, traitementUrl)
 }
@@ -426,6 +427,7 @@ Client.prototype.resetDonneesPersonnelles = function()
    this.nickFormat = "nick"
    
    this.pagePrincipale = 1
+   this.ekMaster = false
    
    // les conversations, une conversation est un objet possédant les attributs suivants :
    // - racine (entier)
@@ -671,10 +673,10 @@ Client.prototype.connexion = function(messageJson)
 \r
 Client.prototype.deconnexion = function()\r
 {
-   this.flush()\r
+   this.flush()
+   this.delCookie()\r
    this.setStatut(statutType.deconnected) // deconnexion\r
    this.resetDonneesPersonnelles()\r
-   this.delCookie ()\r
 }
 
 Client.prototype.chargerDonnees = function(data)
@@ -706,6 +708,7 @@ Client.prototype.chargerDonnees = function(data)
       // les conversations
       thisClient.conversations = data["conversations"]
       
+      thisClient.ekMaster = data["ek_master"]
    }
    this.dernierMessageErreur = data["error_message"]
 }
@@ -768,6 +771,39 @@ Client.prototype.majMenu = function()
    }
 }
 
+Client.prototype.ban = function(userId, minutes)
+{
+   var thisClient = this
+
+   // par défaut un ban correspond à 3 jours
+   if (typeof(minutes) == "undefined")
+      minutes = 60 * 24 * 3
+      
+   jQuery.ajax({
+      type: "POST",
+      url: "request",
+      dataType: "json",
+      data: this.util.jsonVersAction(
+         {
+            "action" : "ban",
+            "cookie" : thisClient.cookie,
+            "duration" : minutes,
+            "user_id" : userId
+         }),
+      success: 
+         function(data)
+         {
+            if (data["reply"] == "error")
+               thisClient.util.messageDialogue(data["error_message"])
+         }
+   })
+}
+
+Client.prototype.kick = function(userId)
+{
+   this.ban(userId, 15)
+}
+
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
 function initialiserListeStyles(client)
@@ -779,8 +815,6 @@ function initialiserListeStyles(client)
       }
    )
 }
-
-jQuery.noConflict()
             
 // charge dynamiquement le script de debug
 ;;; jQuery.ajax({async : false, url : "js/debug.js", dataType : "script"})