]> gitweb.factorcode.org Git - factor.git/blob - basis/furnace/recaptcha/example/example.factor
3650e2bcf999a5df9435ae4a4aea4df2b9be4768
[factor.git] / basis / furnace / recaptcha / example / example.factor
1 ! Copyright (C) 2009 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: accessors db.sqlite furnace.actions furnace.alloy
4 furnace.conversations furnace.recaptcha furnace.redirection
5 html.templates.chloe.compiler http.server
6 http.server.dispatchers http.server.responses io.streams.string
7 kernel urls xml.syntax ;
8 IN: furnace.recaptcha.example
9
10 TUPLE: recaptcha-app < dispatcher recaptcha ;
11
12 : recaptcha-db ( -- obj ) "resource:recaptcha-example" <sqlite-db> ;
13
14 : <recaptcha-challenge> ( -- obj )
15     <page-action>
16         [ validate-recaptcha ] >>validate
17         [ "?good" >url <redirect> ] >>submit
18         { recaptcha-app "example" } >>template ;
19
20 : <recaptcha-app> ( -- obj )
21     \ recaptcha-app new-dispatcher
22         <recaptcha-challenge> "" add-responder
23         <recaptcha>
24             "concatenative.org" >>domain
25             "6LeJWQgAAAAAAFlYV7SuBClE9uSpGtV_ZS-qVON7" >>public-key
26             "6LeJWQgAAAAAALh-XJgSSQ6xKygRgJ8-029Ip2Xv" >>private-key
27         recaptcha-db <alloy> ;