FIX de plein de truc, j'ai plus la force de regarder toutes les modifs (vive les...
[euphorik.git] / js / euphorik.js
index 32b8758..901915a 100755 (executable)
@@ -158,12 +158,17 @@ Util.prototype.infoBulle = function(message, element)
       {
          if (!thisUtil.bulleActive)
             return
-         
+                  
          var m = $("#messageBulle")
          var f = $("#flecheBulle")
          
+         // remplie le paragraphe de la bulle avec le message
          $("p", m).html(message)
-      
+         
+         // réinitialise la position, évite le cas ou la boite est collé à droite et remplie avec un texte la faisant dépassé
+         // dans ce cas la hauteur n'est pas calculé correctement
+         m.css("top", 0).css("left", 0)
+         
          var positionFleche = {
             left : element.offset().left + element.width() / 2 - f.width() / 2,
             top : element.offset().top - f.height()
@@ -565,9 +570,7 @@ Client.prototype.setCss = function(css)
       return
 
    this.css = css
-   $("link#cssPrincipale").attr("href", this.css)
-   this.majMenu()\r
-   \r
+   $("link#cssPrincipale").attr("href", this.css)\r
    if (this.autoflush) this.flush(true)
 }
 
@@ -848,6 +851,7 @@ Client.prototype.chargerDonnees = function(data)
       this.conversations = data["conversations"]
       
       this.majBulle()
+      this.majCssSelectionee()
    }
 }
 
@@ -897,8 +901,6 @@ Client.prototype.flush = function(async)
 
 Client.prototype.majMenu = function()
 {
-   // TODO : à virer : ne plus changer de style de display ... spa beau .. ou trouver une autre méthode
-   // var displayType = this.css == "css/3/euphorik.css" ? "block" : "inline" //this.client
    displayType = "block"
 
    $("#menu .admin").css("display", this.ekMaster ? displayType : "none")
@@ -932,6 +934,20 @@ Client.prototype.majBulle = function()
    this.util.bulleActive = this.viewTooltips
 }
 
+/**
+  * Met à jour la css sélectionnée, lors du chargement des données.
+  */
+Client.prototype.majCssSelectionee = function()
+{
+   // extraction du numéro de la css courante
+   var numCssCourante = this.css.match(/^.*?\/(\d)\/.*$/)
+   if (numCssCourante[1] != undefined)
+   {
+      $("#menuCss option").removeAttr("selected")
+      $("#menuCss option[value=" + numCssCourante[1]+ "]").attr("selected", "selected")
+   }
+}
+
 Client.prototype.slap = function(userId, raison)
 {
    var thisClient = this