X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=js%2FpageAdmin.js;h=ddde6906d5afb362ea4c4b7797633d0c39f4614c;hp=97c024367005a9d1f98b682ade66e9517a91c68d;hb=bb56b61b6b93b3fd69f2b3bfabf3fcb2e31e6ee7;hpb=8521936203f103f6066806e51b5f4e97f79079a1 diff --git a/js/pageAdmin.js b/js/pageAdmin.js index 97c0243..ddde690 100644 --- a/js/pageAdmin.js +++ b/js/pageAdmin.js @@ -14,7 +14,9 @@ // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License -// along with Euphorik. If not, see . +// along with Euphorik. If not, see . +// +// La page d'administation, ne peut être accédée que par les ekMaster (admins) function PageAdmin(client, formateur, util) { @@ -25,13 +27,18 @@ function PageAdmin(client, formateur, util) this.util = util this.pageEvent = new PageEvent("admin", this.util) - + + // le timer qui rappelle periodiquement le rafraichissement des IP bannies this.timeoutIDmajIPs = null } - + +/** + * Interface des pages. + */ PageAdmin.prototype.contenu = function() { - return '

Trolls

\ + return '\ +

Trolls

\

Un troll est un sujet à débat, en général une question, affiché sur la page principale.

\

Chaque semaine un troll est choisi au hasard parmis les trolls proposés et devient le troll de la semaine.

\
\ @@ -44,14 +51,19 @@ PageAdmin.prototype.contenu = function()

IPs bannies

\
' } - + +/** + * Interface des pages. + */ PageAdmin.prototype.charger = function() { $("#page form#nouveauTroll").submit(function(){return false}) var thisPage = this + + // la liste des trolls proposés par les ekMasters + this.trolls = new Trolls(this.client, this.util, this.formateur) - this.trolls = new Trolls(this.client, this.util, this.formateur) this.waitEvent() this.majIPs() @@ -65,12 +77,22 @@ PageAdmin.prototype.charger = function() } ) } - + +/** + * Interface des pages. + */ PageAdmin.prototype.decharger = function() { - this.pageEvent.stopAttenteCourante() + this.pageEvent.stopAttenteCourante() + + // supprime le rafraichissement période des ips + if (this.timeoutIDmajIPs) + clearTimeout(this.timeoutIDmajIPs) } - + +/** + * Post un troll, le contenu est lu à partir de "input.troll". + */ PageAdmin.prototype.posterTroll = function() { var thisPageAdmin = this @@ -195,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) } } ) } - + +/** + * Débannie une ip donnée. + */ PageAdmin.prototype.deban = function(ip) { var thisPageAdmin = this @@ -224,21 +249,18 @@ PageAdmin.prototype.deban = function(ip) function(data) { ;; dumpObj(data) - switch(data["reply"]) + 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"]) } } } ) } - + +/** + * Attente d'événement de la part du serveur. + */ PageAdmin.prototype.waitEvent = function() { var thisPageAdmin = this @@ -271,7 +293,9 @@ PageAdmin.prototype.waitEvent = function() /////////////////////////////////////////////////////////////////////////////////////////////////// - +/** + * Représente un troll, pas grand chose finalement. + */ function Troll(content, author) { this.content = content