% 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
-% 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
+% This module responds to JSON requests via 'AJAX'.\r
+% It's defined as an Yaws 'appmods' with the url '/request'.\r
+% For instance in debug mode 'http://localhost:8090/request' will call the out/1 function.\r
% @author G.Burri\r
\r
\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
+% Entry point for all AJAX requests on '/request'.\r
out(A) ->\r
IP = case inet:peername(A#arg.clisock) of\r
- {ok, {Adresse, _Port}} -> Adresse;\r
- _ -> inconnue\r
+ {ok, {Address, _Port}} -> Address;\r
+ _ -> unknown\r
end,\r
- % passive -> active, permet de recevoir {tcp_closed, _} lorsque le socket se ferme\r
- % keepalive -> true, evite que des firewalls coupe la connexion TCP sans prévenir\r
+ % active: to receive {tcp_closed, _} when the socket is closing.\r
+ % keepalive: avoid firewalls to cut the connection.\r
inet:setopts(A#arg.clisock, [{active, true}, {keepalive, true}]),\r
{value, {_, Contenu}} = lists:keysearch("action", 1, yaws_api:parse_post(A)),\r
Ret = traiter_message(Contenu, IP),\r