From: Greg Burri Date: Wed, 14 May 2008 22:27:07 +0000 (+0000) Subject: ADD avancement sur les trolls, partie d'administration terminé X-Git-Tag: 1.0.0^2~74 X-Git-Url: https://git.euphorik.ch/?a=commitdiff_plain;h=a2f6d159387e456847fb4e7607b4663ab8fa94fc;p=euphorik.git ADD avancement sur les trolls, partie d'administration terminé FIX il était possible d'enregistrer plusieurs fois le même login --- diff --git a/css/1/pageAdmin.css b/css/1/pageAdmin.css index 91a0961..2d656a2 100644 --- a/css/1/pageAdmin.css +++ b/css/1/pageAdmin.css @@ -9,7 +9,7 @@ margin-top: 10px } -#page.admin .troll .content { +#page.admin .troll span.content { padding: 2px; border: 1px solid; border-color: #253f18; @@ -20,16 +20,14 @@ margin-left: 10px } -#page.admin .troll .editTroll { +#page.admin .troll .editTroll, +#page.admin .troll .delTroll, +#page.admin .troll .modifier, +#page.admin .troll .annuler +{ margin-left: 10px; font-size: 9px; border: 1px solid; cursor: pointer } -#page.admin .troll .delTroll { - margin-left: 10px; - font-size: 9px; - border: 1px solid; - cursor: pointer -} diff --git a/doc/TODO.txt b/doc/TODO.txt index f6b6b16..da163ae 100755 --- a/doc/TODO.txt +++ b/doc/TODO.txt @@ -1,6 +1,8 @@ == TODO == -=== v1.0 === +=== v1.0 === + +* Est-ce que client.dernierMessageErreur est vraiment utile ?? [80%] Un statut "EK" avec plein de privilège à la con. (avoir une petite étoile à coté de son nick ou le nick d'une certaine couleur) * Une page "admin" avec : * Trolls : La liste des trolls proposés. L'admin peut éditer ses propres trolls. diff --git a/js/euphorik.js b/js/euphorik.js index d040dc3..4b56fa3 100755 --- a/js/euphorik.js +++ b/js/euphorik.js @@ -642,8 +642,11 @@ Client.prototype.enregistrement = function(login, password) this.login = login this.password = password if(this.flush()) + { this.setStatut(statutType.auth_registered) - return true + return true + } + return false } else { @@ -675,7 +678,7 @@ Client.prototype.connexion = function(messageJson) Client.prototype.deconnexion = function() { - this.flush() + this.flush(true) this.delCookie() this.setStatut(statutType.deconnected) // deconnexion this.resetDonneesPersonnelles() @@ -718,12 +721,14 @@ Client.prototype.chargerDonnees = function(data) Client.prototype.flush = function(async) { if (async == undefined) - async = true + async = false if (!this.authentifie()) return false thisClient = this + var ok = true + ;;; dumpObj(this.getJSONProfile()) jQuery.ajax( { @@ -735,12 +740,17 @@ Client.prototype.flush = function(async) success: function(data) { - //thisClient.util.log(thisClient.util.serializer.serializeToString(data)) + ;;; dumpObj(data) + if (data["reply"] == "error") + { + thisClient.dernierMessageErreur = data["error_message"] + ok = false + } } } ) - // TODO : retourner false si un problème est survenu lors de l'update du profile - return true + + return ok } Client.prototype.majMenu = function() @@ -930,7 +940,7 @@ $(document).ready( initialiserListeStyles(client) // TODO : pourquoi $(document).unload ne fonctionne pas ? - $(window).unload(function(){client.flush(false)}) + $(window).unload(function(){client.flush()}) $("#menu .minichat").click(function(){ pages.afficherPage("minichat") }) $("#menu .admin").click(function(){ pages.afficherPage("admin") }) diff --git a/js/pageAdmin.js b/js/pageAdmin.js index 9be3ca1..4c34f58 100644 --- a/js/pageAdmin.js +++ b/js/pageAdmin.js @@ -208,14 +208,14 @@ Trolls.prototype.rafraichirTrolls = function() { $("span", troll).css("display", "none") $(troll).append( - '

' + '

modifierannuler

' ) var virerLeFormulaire = function() { $("form", troll).remove() $("span", troll).css("display", "inline") } - $("button.modifier", troll).click( + $("span.modifier", troll).click( function() { var content = $("form input.content", troll).val() @@ -223,7 +223,7 @@ Trolls.prototype.rafraichirTrolls = function() thisTrolls.modifier(id, content) } ) - $("button.annuler", troll).click( virerLeFormulaire ) + $("span.annuler", troll).click( virerLeFormulaire ) $("form", troll).submit(function(){ return false}) } ) diff --git a/modules/erl/euphorik_bd.erl b/modules/erl/euphorik_bd.erl index 28267f0..e10ef2a 100755 --- a/modules/erl/euphorik_bd.erl +++ b/modules/erl/euphorik_bd.erl @@ -167,9 +167,9 @@ set_profile(Cookie, Login, Password, Pseudo, Email, Css, Nick_format, Page_princ case user_by_cookie(Cookie) of {ok, User} -> case user_by_login(Login) of - {ok, U} when User#user.login =/= [], U#user.id =/= User#user.id -> + {ok, U} when Login =/= [], U#user.id =/= User#user.id -> login_deja_pris; - _ -> + _ -> User_modifie = User#user{ % TODO : pourquoi ne pas tester avec la valeur "undefined" plutôt qu'avec "is_list" ? % TODO : validation plus strict des données (pas de page négative dans les conv par exemple) @@ -248,8 +248,7 @@ users() -> user_by_cookie(Cookie) -> resultat_transaction(mnesia:transaction( fun() -> - Users = qlc:e(qlc:q([E || E <- mnesia:table(user), E#user.cookie =:= Cookie])), - case Users of + case qlc:e(qlc:q([E || E <- mnesia:table(user), E#user.cookie =:= Cookie])) of [User] -> {ok, User}; _ -> erreur end @@ -296,9 +295,8 @@ toggle_ek_master(User_id) -> user_by_login_password(Login, Password) -> resultat_transaction(mnesia:transaction( fun() -> - Users = qlc:e(qlc:q([E || E <- mnesia:table(user), E#user.login =:= Login, E#user.password =:= Password])), - case Users of - [User] -> {ok, User}; + case qlc:e(qlc:q([E || E <- mnesia:table(user), E#user.login =:= Login, E#user.password =:= Password])) of + [User | _] -> {ok, User}; _ -> erreur end end @@ -310,7 +308,7 @@ user_by_mess(Id) -> resultat_transaction(mnesia:transaction( fun() -> case qlc:e(qlc:q([U || U <- mnesia:table(user), M <- mnesia:table(minichat), M#minichat.id =:= Id, M#minichat.auteur_id =:= U#user.id])) of - [User] -> {ok, User}; + [User | _] -> {ok, User}; _ -> erreur end end