ADD un README pour expliquer le projet et ses fichiers/dossiers
[euphorik.git] / modules / erl / old / captcha.erl
diff --git a/modules/erl/old/captcha.erl b/modules/erl/old/captcha.erl
new file mode 100755 (executable)
index 0000000..e885239
--- /dev/null
@@ -0,0 +1,31 @@
+% Module permettant la génération de captcha.\r
+% Dépend de la lib 'erlycairo', il faut que son c-node soit démarré.\r
+% Auteur : G.Burri\r
+% Date : 05.11.2007\r
+\r
+-module(captcha).
+-export([create/2]).
+\r
+-include("../include/euphorik_defines.hrl").\r
+\r
+
+% Crée un captcha de longueur L dans le dossier Dossier.\r
+% renvoie {Mot crypté:string(), Nom du fichier:string()}
+create(L, Dossier) ->\r
+   Mot = common:generer_mot(L),\r
+   Mot_crypt = common:crypt(Mot),\r
+   Nom_fichier = Mot_crypt ++ ".png",
+   erlycairo:new_image_blank(length(Mot) * 8, 14),
+   erlycairo:set_source_rgba(0, 0, 0, 1),
+   erlycairo:select_font_face("Courier", 0, 1),
+   erlycairo:set_font_size(12),
+   erlycairo:move_to(2, 10),
+   erlycairo:show_text(Mot),
+   erlycairo:move_to(2, 10),
+   erlycairo:line_to(length(Mot) * 8 - 2, 10),
+   erlycairo:set_line_width(1),
+   erlycairo:stroke(),
+   erlycairo:write_to_png(Dossier ++ "/" ++ Nom_fichier),
+   erlycairo:close_image(),\r
+   {Mot_crypt, Nom_fichier}.\r
+   
\ No newline at end of file