index.py
branchxbelweb
changeset 4 20c995f13f63
parent 3 9e7e8b678819
child 6 da757ef67c69
equal deleted inserted replaced
3:9e7e8b678819 4:20c995f13f63
    11 
    11 
    12 # import cgitb; cgitb.enable()
    12 # import cgitb; cgitb.enable()
    13 import cgi
    13 import cgi
    14 from htmltmpl import TemplateManager, TemplateProcessor
    14 from htmltmpl import TemplateManager, TemplateProcessor
    15 import my_db
    15 import my_db
       
    16 from os import environ
       
    17 from urlparse import urljoin
    16 
    18 
    17 def get_selection(form):
    19 def get_selection(form):
    18 	kw = form.getvalue("kw")
    20 	kw = form.getvalue("kw")
    19 	if not isinstance(kw, type([])):
    21 	if not isinstance(kw, type([])):
    20 		if kw:
    22 		if kw:
    30 		res.append({'id':key[0],
    32 		res.append({'id':key[0],
    31 			'keyword': key[1],
    33 			'keyword': key[1],
    32 			'checked' : chk})
    34 			'checked' : chk})
    33 	return res
    35 	return res
    34 
    36 
    35 def main(bk, kw):
    37 def get_curl():
       
    38 	return urljoin( 'http://' + environ["HTTP_HOST"] + environ["REQUEST_URI"], 'add.py')
       
    39 
       
    40 def main(bk, kw, curl):
    36     tmpl = TemplateManager().prepare("index.tmpl")
    41     tmpl = TemplateManager().prepare("index.tmpl")
    37     tproc = TemplateProcessor()
    42     tproc = TemplateProcessor()
    38     tproc.set("Bookmarks", bk)
    43     tproc.set("Bookmarks", bk)
    39     tproc.set("Keywords", kw)
    44     tproc.set("Keywords", kw)
       
    45     tproc.set("curl", curl)
    40     print tproc.process(tmpl)
    46     print tproc.process(tmpl)
    41 
    47 
    42 if (__name__ == "__main__"):
    48 if (__name__ == "__main__"):
    43     form = cgi.FieldStorage()
    49     form = cgi.FieldStorage()
    44     db = my_db.connect()
    50     db = my_db.connect()
    50     else:
    56     else:
    51     	bookmarks = db.select_bookmarks(selection)
    57     	bookmarks = db.select_bookmarks(selection)
    52     keywords = set_selection(keywords, selection)
    58     keywords = set_selection(keywords, selection)
    53     bookmarks = db.get_bookmarks(map(lambda x: x[0], bookmarks))
    59     bookmarks = db.get_bookmarks(map(lambda x: x[0], bookmarks))
    54     bookmarks = map(lambda bk: bk.dict(), bookmarks)
    60     bookmarks = map(lambda bk: bk.dict(), bookmarks)
    55     main(bookmarks, keywords)
    61     curl = get_curl();
       
    62     main(bookmarks, keywords, curl)