MOD maj TODO
[euphorik.git] / js / pageAdmin.js
index cb7f51e..ddde690 100644 (file)
@@ -1,4 +1,22 @@
-// coding: utf-8
+// coding: utf-8\r
+// Copyright 2008 Grégory Burri\r
+//\r
+// This file is part of Euphorik.\r
+//\r
+// Euphorik is free software: you can redistribute it and/or modify\r
+// it under the terms of the GNU General Public License as published by\r
+// the Free Software Foundation, either version 3 of the License, or\r
+// (at your option) any later version.\r
+//\r
+// Euphorik is distributed in the hope that it will be useful,\r
+// but WITHOUT ANY WARRANTY; without even the implied warranty of\r
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
+// GNU General Public License for more details.\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
+// La page d'administation, ne peut être accédée que par les ekMaster (admins)
 
 function PageAdmin(client, formateur, util)
 {
@@ -9,15 +27,20 @@ function PageAdmin(client, formateur, util)
    this.util = util
    
    this.pageEvent = new PageEvent("admin", this.util)
-   
+   \r
+   // le timer qui rappelle periodiquement le rafraichissement des IP bannies
    this.timeoutIDmajIPs = null
 }
-
+\r
+/**\r
+  * Interface des pages.\r
+  */
 PageAdmin.prototype.contenu = function()
 {
-   return '<h1>Trolls</h1>\
-   <p>Un troll est un sujet à débat, en général une question.</p>\
-   <p>Chaque semaine untrolls troll est choisit au hasard parmis les trolls proposés et devient le troll de la semaine.</p>\
+   return '\\r
+   <h1>Trolls</h1>\
+   <p>Un troll est un sujet à débat, en général une question, affiché sur la page principale.</p>\
+   <p>Chaque semaine un troll est choisi au hasard parmis les trolls proposés et devient le troll de la semaine.</p>\
    <form action="" id="nouveauTroll">\
       <p>\
          <input class="troll" name="troll" type="text" maxlength="500" value=""></input>\
@@ -28,14 +51,19 @@ PageAdmin.prototype.contenu = function()
    <h1>IPs bannies</h1>\
    <div id="ips"></div>'
 }
-
+\r
+/**\r
+  * Interface des pages.\r
+  */
 PageAdmin.prototype.charger = function()
 {      
    $("#page form#nouveauTroll").submit(function(){return false})
       
    var thisPage = this
+   \r
+   // la liste des trolls proposés par les ekMasters
+   this.trolls = new Trolls(this.client, this.util, this.formateur)\r
    
-   this.trolls = new Trolls(this.client, this.util, this.formateur)
    this.waitEvent()
    
    this.majIPs()
@@ -49,12 +77,22 @@ PageAdmin.prototype.charger = function()
       }
    )
 }
-
+\r
+/**\r
+  * Interface des pages.\r
+  */
 PageAdmin.prototype.decharger = function()
 {
-   this.pageEvent.stopAttenteCourante()
+   this.pageEvent.stopAttenteCourante()\r
+   \r
+   // supprime le rafraichissement période des ips\r
+   if (this.timeoutIDmajIPs)\r
+      clearTimeout(this.timeoutIDmajIPs)
 }
-
+\r
+/**\r
+  * Post un troll, le contenu est lu à partir de "input.troll".\r
+  */
 PageAdmin.prototype.posterTroll = function()
 {
    var thisPageAdmin = this
@@ -75,7 +113,7 @@ PageAdmin.prototype.posterTroll = function()
          "content" : content
       }
 
-   ;;; dumpObj(dataToSend)
+   ;; dumpObj(dataToSend)
    jQuery.ajax(
       {
          type: "POST",
@@ -85,7 +123,7 @@ PageAdmin.prototype.posterTroll = function()
          success:
             function(data)
             {
-               ;;; dumpObj(data)
+               ;; dumpObj(data)
                
                if (data["reply"] == "ok")
                {
@@ -116,7 +154,7 @@ PageAdmin.prototype.majIPs = function()
          "cookie" : this.client.cookie
       }
 
-   ;;; dumpObj(dataToSend)
+   ;; dumpObj(dataToSend)
    jQuery.ajax(
       {
          type: "POST",
@@ -126,7 +164,7 @@ PageAdmin.prototype.majIPs = function()
          success:
             function(data)
             {
-               ;;; dumpObj(data)
+               ;; dumpObj(data)
                
                if (data["reply"] == "list_banned_ips")
                {
@@ -179,13 +217,16 @@ PageAdmin.prototype.majIPs = function()
                }
                
                // rafraichissement toutes les minutes (je sais c'est mal)
-               // le problème est le rafraichissement des temps restant de bannissement qui doit êtrew fait du coté client
+               // le problème est le rafraichissement des temps restant de bannissement qui doit être fait du coté client
                thisPageAdmin.timeoutIDmajIPs = setTimeout(function(){ thisPageAdmin.majIPs() }, 60 * 1000)
             }
       }
    )
 }
-
+\r
+/**\r
+  * Débannie une ip donnée.\r
+  */
 PageAdmin.prototype.deban = function(ip)
 {
    var thisPageAdmin = this
@@ -197,7 +238,7 @@ PageAdmin.prototype.deban = function(ip)
          "ip" : ip
       }
 
-   ;;; dumpObj(dataToSend)
+   ;; dumpObj(dataToSend)
    jQuery.ajax(
       {
          type: "POST",
@@ -207,22 +248,19 @@ PageAdmin.prototype.deban = function(ip)
          success:
             function(data)
             {
-               ;;; dumpObj(data)
-               switch(data["reply"])
+               ;; dumpObj(data)
+               if(data["reply"] == "error")
                {
-                  case "error" :
-                     thisPageAdmin.util.messageDialogue(data["error_message"])
-                     break
-                  case "ok" :
-                     // obsolète : plus besoin
-                     /* thisPageAdmin.majIPs() */ 
-                     break 
+                  thisPageAdmin.util.messageDialogue(data["error_message"])
                }
             }
       }
    )
 }
-
+\r
+/**\r
+  * Attente d'événement de la part du serveur.\r
+  */
 PageAdmin.prototype.waitEvent = function()
 {
    var thisPageAdmin = this
@@ -255,7 +293,9 @@ PageAdmin.prototype.waitEvent = function()
 
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
-
+/**\r
+  * Représente un troll, pas grand chose finalement.\r
+  */
 function Troll(content, author)
 {
    this.content = content
@@ -386,7 +426,7 @@ Trolls.prototype.modifier = function(id, content)
          "content" : content
       }
 
-   ;;; dumpObj(dataToSend)
+   ;; dumpObj(dataToSend)
    jQuery.ajax(
       {
          type: "POST",
@@ -396,7 +436,7 @@ Trolls.prototype.modifier = function(id, content)
          success:
             function(data)
             {
-               ;;; dumpObj(data)
+               ;; dumpObj(data)
                if (data["reply"] == "error")
                {
                   thisTrolls.util.messageDialogue(data["error_message"])
@@ -420,7 +460,7 @@ Trolls.prototype.supprimer = function(id)
          "troll_id" : id
       }
 
-   ;;; dumpObj(dataToSend)
+   ;; dumpObj(dataToSend)
    jQuery.ajax(
       {
          type: "POST",
@@ -430,7 +470,7 @@ Trolls.prototype.supprimer = function(id)
          success:
             function(data)
             {
-               ;;; dumpObj(data)
+               ;; dumpObj(data)
                if (data["reply"] == "error")
                {
                   thisTrolls.util.messageDialogue(data["error_message"])