X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=modules%2Ferl%2Feuphorik_protocole.erl;h=c0090a599f239539d788ece76c777d4c6c2ffb88;hp=dba48e2eafb5d11eccce9a5476656d39f03a8fc6;hb=c39e55c505a27e30209fcfb6d837d6ec8a82b990;hpb=fb1166f6fcf86e40a94f5d88aaed398603615f28 diff --git a/modules/erl/euphorik_protocole.erl b/modules/erl/euphorik_protocole.erl index dba48e2..c0090a5 100755 --- a/modules/erl/euphorik_protocole.erl +++ b/modules/erl/euphorik_protocole.erl @@ -83,7 +83,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 +130,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 +168,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 + ) ) }]; _ ->