X-Git-Url: http://git.euphorik.ch/?a=blobdiff_plain;f=modules%2Ferl%2Feuphorik_bd.erl;h=28267f0ba0b9a110ca554acc79cc048292e38928;hb=3ea00589df90388456e8587b1bebdeab0f7e99fa;hp=7a9b582b15a846bea4c9637fc30163f5ae8d7ad7;hpb=81b3e94e62dd60087d71efc42004f8222d9e1e7a;p=euphorik.git diff --git a/modules/erl/euphorik_bd.erl b/modules/erl/euphorik_bd.erl index 7a9b582..28267f0 100755 --- a/modules/erl/euphorik_bd.erl +++ b/modules/erl/euphorik_bd.erl @@ -55,6 +55,7 @@ put_troll/2, mod_troll/2, del_troll/1, + troll_by_id/1, % versions : update_version/1, @@ -259,8 +260,7 @@ user_by_cookie(Cookie) -> user_by_id(ID) -> resultat_transaction(mnesia:transaction( fun() -> - Users = qlc:e(qlc:q([E || E <- mnesia:table(user), E#user.id =:= ID])), - case Users of + case qlc:e(qlc:q([E || E <- mnesia:table(user), E#user.id =:= ID])) of [User] -> {ok, User}; _ -> erreur end @@ -587,7 +587,7 @@ can_register(IP) -> 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 )). @@ -605,7 +605,7 @@ trolls(Last_id) -> _ -> 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 @@ -697,6 +697,18 @@ del_troll(Troll_id) -> end ). + +troll_by_id(Troll_id) -> + resultat_transaction(mnesia:transaction( + fun() -> + case qlc:e(qlc:q([T || T <- mnesia:table(troll), T#troll.id =:= Troll_id])) of + [T] -> {ok, T}; + _ -> + erreur + end + end + )). + update_version(1) -> mnesia:transform_table(