"action" : "wait_event",
"page" : "admin",
"last_troll" : 5
- ]
}
s -> c
var thisPage = this
+ this.trolls = new Trolls(this.util)
+ this.trolls.rafraichirTrolls()
+
$("#page form#nouveauTroll button.return").click(
function()
{
-
}
)
}
///////////////////////////////////////////////////////////////////////////////////////////////////
-function Trolls()
+function Trolls(util)
{
+ this.util = util
+ this.dernierTroll = 0
+ this.pageEvent = new PageEvent("admin", this.util)
+}
+Trolls.prototype.rafraichirTrolls = function()
+{
+ var thisTrolls = this
+
+ this.pageEvent.waitEvent(
+ function() { return { "last_troll" : thisTrolls.dernierTroll }},
+ function(data)
+ {
+ switch (data["reply"]) {
+ case "troll_added" :
+ var XHTML = ""
+ for (var i = 0; i < data["trolls"].length; i++)
+ {
+ thisTrolls.dernierTroll = data["trolls"][i]["troll_id"]
+ XHTML += '<p id="troll' + data["trolls"][i]["troll_id"] + '">' + data["trolls"][i]["content"] + '</p>'
+ }
+ $("#trolls").append(XHTML)
+ break
+ case "troll_modified" :
+ $("#trolls #troll"+data["troll_id"]).html(data["content"])
+ break
+ }
+ }
+ )
}
\ No newline at end of file
$(rep_ebin)/euphorik_protocole.beam \
\r
# Module pour la gestion des données persistante la BD\r
-$(rep_ebin)/euphorik_bd.beam: $(rep_erl)/euphorik_bd.erl $(rep_include)/euphorik_bd.hrl\r
+$(rep_ebin)/euphorik_bd.beam: $(rep_erl)/euphorik_bd.erl $(rep_include)/euphorik_bd.hrl $(rep_include)/euphorik_defines.hrl\r
erlc $(erlc_params)\r
# Module permettant l'extraction des conversations du minichat
erlc $(erlc_params)\r
\r
# Module interpretant les messages XML du client\r
-$(rep_ebin)/euphorik_protocole.beam: $(rep_erl)/euphorik_protocole.erl\r
+$(rep_ebin)/euphorik_protocole.beam: $(rep_erl)/euphorik_protocole.erl $(rep_include)/euphorik_defines.hrl\r
erlc $(erlc_params)
# Module pour la génération du captcha\r
trolls() ->
resultat_transaction(mnesia:transaction(
fun() ->
- qlc:e(qlc:q([T || T <- mnesia:table(troll)]))
+ qlc:e(qlc:q([T || T <- qlc:keysort(2, mnesia:table(troll))]))
end
)).
_ ->
case resultat_transaction(mnesia:transaction(
fun() ->
- qlc:e(qlc:q([T || T <- mnesia:table(troll), T#troll.id > Last_id, T#troll.date_post =:= undefined]))
+ qlc:e(qlc:q([T || T <- qlc:keysort(2, mnesia:table(troll)), T#troll.id > Last_id, T#troll.date_post =:= undefined]))
end
)) of
[] -> % pas de trolls
% le nombre max de troll qui peuvent être en attente d'être posté (tous les utilisateurs réunis)
-define(NB_MAX_TROLL_WAITING, 10).
% chaque admin peut proposer 1 seul troll à la fois
--define(NB_MAX_TROLL_WAITING_BY_USER, 1).
+-define(NB_MAX_TROLL_WAITING_BY_USER, 2).