X-Git-Url: http://git.euphorik.ch/?a=blobdiff_plain;f=modules%2Ferl%2Feuphorik_protocole.erl;h=7e8030806b6aa0127f485aa6ad582fd371055ff1;hb=e04de9d41e7955b0092fc33b8619b4627af6b3f3;hp=dba48e2eafb5d11eccce9a5476656d39f03a8fc6;hpb=ffea71492c07cbf81430883c894b34e1c9408699;p=euphorik.git diff --git a/modules/erl/euphorik_protocole.erl b/modules/erl/euphorik_protocole.erl index dba48e2..7e80308 100755 --- a/modules/erl/euphorik_protocole.erl +++ b/modules/erl/euphorik_protocole.erl @@ -41,6 +41,10 @@ nouveau_user_login(Action) -> % Un utilisateur se logge. +login([{login, Login}, {password, Password}]) -> + {ok, User} = euphorik_minichat:user_by_login_password(Login, Password), + + login(Action) -> case xmerl_xpath:string("cookie", Action) of [#xmlElement{content = [#xmlText{value = Cookie}]}] -> @@ -83,7 +87,7 @@ profile(Action) -> Email = case xmerl_xpath:string("email", Action) of [#xmlElement{content = [#xmlText{value = E}]}] -> E; _ -> undefined end, Css = case xmerl_xpath:string("css", Action) of [#xmlElement{content = [#xmlText{value = C}]}] -> C; _ -> undefined end, Page_principale = case xmerl_xpath:string("pagePrincipale", Action) of [#xmlElement{content = [#xmlText{value = P3}]}] -> list_to_integer(P3); _ -> undefined end, - Conversations = lists:foldl( + Conversations = lists:foldr( fun(Conv, Acc) -> [#xmlElement{content = [#xmlText{value = Id_racine_str}]}] = xmerl_xpath:string("racine", Conv), [#xmlElement{content = [#xmlText{value = Page_conv_str}]}] = xmerl_xpath:string("page", Conv), @@ -130,17 +134,7 @@ refreshMessage(Action) -> _ -> inconnu end; _ -> inconnu - end, - % extraction des conversations en [{id, page}, ..] - % Obsolète : obtenu depuis la table 'user' - %~ Conversations = lists:map( - %~ fun(Conv) -> - %~ [#xmlElement{content = [#xmlText{value = Id_racine_str}]}] = xmerl_xpath:string("racine", Conv), - %~ [#xmlElement{content = [#xmlText{value = Page_conv_str}]}] = xmerl_xpath:string("page", Conv), - %~ {erlang:list_to_integer(Id_racine_str, 36), erlang:list_to_integer(Page_conv_str)} - %~ end, - %~ xmerl_xpath:string("conversation", Action) - %~ ), + end, % accrochez-vous ca va siouxer ;) [{reponse, [{name, "refreshMessages"}], lists:map( @@ -178,7 +172,12 @@ refreshMessage(Action) -> ] } end, - euphorik_minichat_conversation:conversations(User#user.conversations, Nb_message, Dernier_id, User#user.page_principale) + euphorik_minichat_conversation:conversations( + if User =/= inconnu -> User#user.conversations; true -> [] end, + Nb_message, + Dernier_id, + if User =/= inconnu -> User#user.page_principale; true -> 1 end + ) ) }]; _ ->