%\r
% You should have received a copy of the GNU General Public License\r
% along with Euphorik. If not, see <http://www.gnu.org/licenses/>.\r
-% \r
+%\r
% Ce module est fait pour répondre à des requêtes JSON via 'AJAX'.\r
% Il est définit comme 'appmods' pour l'url "request" dans Yaws.\r
% Par exemple http://www.euphorik.ch/request abouti sur la fonction out/1 de ce module.\r
\r
-module(euphorik_requests).\r
-export([out/1]).\r
--include_lib("yaws/include/yaws_api.hrl").\r
+-include_lib("yaws_api.hrl").\r
-include("../include/euphorik_defines.hrl").\r
\r
\r
% Point d'entrée pour les requêtes AJAX sur http://www.euphorik.ch/request.\r
-out(A) -> \r
+out(A) ->\r
IP = case inet:peername(A#arg.clisock) of\r
{ok, {Adresse, _Port}} -> Adresse;\r
_ -> inconnue\r
% Décode le message JSON.\r
traiter_message(Contenu, IP) ->\r
% extrait l'entête obligatoire des messages JSON\r
- {ok, {struct, [{header, {struct, [{action, Action}, {version, Version_client}]}} | Reste]}} = json:decode_string(Contenu),\r
- json:encode(\r
+ {ok, {struct, [{"header", {struct, [{"action", Action}, {"version", Version_client}]}} | Reste]}} = json2:decode_string(Contenu),\r
+\r
+ json2:encode(\r
if Version_client =:= ?VERSION_PROTOCOLE ->\r
traiter_action(Action, Reste, IP);\r
true ->\r
)))\r
end\r
).\r
- \r
+\r
\r
% Authentification d'un client.\r
traiter_action("authentification", JSON, IP) ->\r
% Un ekMaster débannie une ip.\r
traiter_action("unban", JSON, _) ->\r
euphorik_protocole:unban_ip(JSON).\r
-
\ No newline at end of file