|
1 #!/usr/bin/python |
|
2 |
|
3 import sys |
|
4 import traceback |
|
5 sys.path.insert(0, "/home/fabien/lib/python") |
|
6 sys.path.insert(0, "./lib") |
|
7 sys.stderr = sys.stdout |
|
8 |
|
9 print "Content-type: text/html; charset=iso-8859-1;" |
|
10 print |
|
11 |
|
12 # import cgitb; cgitb.enable() |
|
13 import cgi |
|
14 from htmltmpl import TemplateManager, TemplateProcessor |
|
15 import my_db |
|
16 import time |
|
17 from bkmark import Bookmark |
|
18 |
|
19 def get_bk_from_form(form): |
|
20 bk = Bookmark() |
|
21 bk.url = form['url'].value |
|
22 bk.name = form['name'].value |
|
23 bk.desc = form['desc'].value |
|
24 return bk |
|
25 |
|
26 def get_kw_from_form(form): |
|
27 kw = form.getvalue("kw") |
|
28 if not isinstance(kw, type([])): |
|
29 if kw: |
|
30 kw = [kw] |
|
31 else: |
|
32 kw = [] |
|
33 kw = map(int, kw) |
|
34 return kw |
|
35 |
|
36 def main(bk, kw): |
|
37 tmpl = TemplateManager().prepare("add_result.tmpl") |
|
38 tproc = TemplateProcessor() |
|
39 tproc.set("url", bk.url) |
|
40 tproc.set("name", bk.name) |
|
41 tproc.set("added", bk.added) |
|
42 tproc.set("desc", bk.desc) |
|
43 tproc.set("Keywords", kw) |
|
44 print tproc.process(tmpl) |
|
45 |
|
46 if (__name__ == "__main__"): |
|
47 form = cgi.FieldStorage() |
|
48 db = my_db.connect() |
|
49 bk = get_bk_from_form(form) |
|
50 kw = get_kw_from_form(form) |
|
51 id = db.add_bookmark(bk) |
|
52 db.update_keywords(id, kw) |
|
53 kw = map(lambda e: { 'keyword': e[1] }, db.get_keywords(id)[1:]) |
|
54 main(bk, kw) |