projects
/
euphorik.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
MOD maj TODO
[euphorik.git]
/
js
/
pageAdmin.js
diff --git
a/js/pageAdmin.js
b/js/pageAdmin.js
index
faf5f8c
..
ddde690
100644
(file)
--- a/
js/pageAdmin.js
+++ b/
js/pageAdmin.js
@@
-14,7
+14,9
@@
// GNU General Public License for more details.
\r
//
\r
// You should have received a copy of the GNU General Public License
\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/>.
+// 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)
{
function PageAdmin(client, formateur, util)
{
@@
-25,15
+27,20
@@
function PageAdmin(client, formateur, util)
this.util = util
this.pageEvent = new PageEvent("admin", this.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
}
this.timeoutIDmajIPs = null
}
-
+
\r
+/**
\r
+ * Interface des pages.
\r
+ */
PageAdmin.prototype.contenu = function()
{
PageAdmin.prototype.contenu = function()
{
- return '<h1>Trolls</h1>\
+ 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>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
t
au hasard parmis les trolls proposés et devient le troll de la semaine.</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>\
<form action="" id="nouveauTroll">\
<p>\
<input class="troll" name="troll" type="text" maxlength="500" value=""></input>\
@@
-44,14
+51,19
@@
PageAdmin.prototype.contenu = function()
<h1>IPs bannies</h1>\
<div id="ips"></div>'
}
<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
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()
this.waitEvent()
this.majIPs()
@@
-65,12
+77,22
@@
PageAdmin.prototype.charger = function()
}
)
}
}
)
}
-
+
\r
+/**
\r
+ * Interface des pages.
\r
+ */
PageAdmin.prototype.decharger = function()
{
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
PageAdmin.prototype.posterTroll = function()
{
var thisPageAdmin = this
@@
-195,13
+217,16
@@
PageAdmin.prototype.majIPs = function()
}
// rafraichissement toutes les minutes (je sais c'est mal)
}
// rafraichissement toutes les minutes (je sais c'est mal)
- // le problème est le rafraichissement des temps restant de bannissement qui doit être
w
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)
}
}
)
}
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
PageAdmin.prototype.deban = function(ip)
{
var thisPageAdmin = this
@@
-224,21
+249,18
@@
PageAdmin.prototype.deban = function(ip)
function(data)
{
;; dumpObj(data)
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"])
}
}
}
)
}
}
}
}
)
}
-
+
\r
+/**
\r
+ * Attente d'événement de la part du serveur.
\r
+ */
PageAdmin.prototype.waitEvent = function()
{
var thisPageAdmin = this
PageAdmin.prototype.waitEvent = function()
{
var thisPageAdmin = this
@@
-271,7
+293,9
@@
PageAdmin.prototype.waitEvent = function()
///////////////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////////////
-
+/**
\r
+ * Représente un troll, pas grand chose finalement.
\r
+ */
function Troll(content, author)
{
this.content = content
function Troll(content, author)
{
this.content = content