add_confirm.py
branchxbelweb
changeset 21 345ee7421989
parent 17 14bec94bbe89
child 33 db91081e5a78
equal deleted inserted replaced
20:8c201fa3bdc7 21:345ee7421989
    17 import my_db
    17 import my_db
    18 import time
    18 import time
    19 from bkmark import Bookmark
    19 from bkmark import Bookmark
    20 from index import load_index
    20 from index import load_index
    21 from utils import unique
    21 from utils import unique
       
    22 import os
    22 
    23 
    23 def get_bk_from_form(form):
    24 def get_bk_from_form(form):
    24 	bk = Bookmark()
    25 	bk = Bookmark()
    25 	bk.id = int(form['id'].value)
    26 	bk.id = int(form['id'].value)
    26 	bk.url = form['url'].value
    27 	bk.url = form['url'].value
    50 
    51 
    51 def get_unique_keywords(form, db):
    52 def get_unique_keywords(form, db):
    52       kw = get_kw_from_form(form)
    53       kw = get_kw_from_form(form)
    53       kw = map(db.get_keyword, kw)
    54       kw = map(db.get_keyword, kw)
    54       kw = kw + get_new_kw_from_form(form)
    55       kw = kw + get_new_kw_from_form(form)
    55       return unique(kw)
    56       kw = unique(kw) 
       
    57       return kw
    56 
    58 
    57 def main(action, bk, kw):
    59 def main(action, bk, kw):
    58     tmpl = TemplateManager().prepare("add_confirm.tmpl")
    60     tmpl = TemplateManager().prepare("add_confirm.tmpl")
    59     tproc = TemplateProcessor()
    61     tproc = TemplateProcessor()
       
    62     tproc.set("pagetitle", os.environ["REMOTE_USER"]+"'s XBELWeb Confirmation")
    60     tproc.set("confirm_delete", action == 'delete')
    63     tproc.set("confirm_delete", action == 'delete')
    61     tproc.set("confirm_update", action == 'update')
    64     tproc.set("confirm_update", action == 'update')
    62     tproc.set("action", action)
    65     tproc.set("action", action)
    63     tproc.set("id", bk.id)
    66     tproc.set("id", bk.id)
    64     tproc.set("name", bk.name)
    67     tproc.set("name", bk.name)
    66     tproc.set("Keywords", map(lambda x: {'keyword': x }, kw))
    69     tproc.set("Keywords", map(lambda x: {'keyword': x }, kw))
    67     print tproc.process(tmpl)
    70     print tproc.process(tmpl)
    68 
    71 
    69 if (__name__ == "__main__"):
    72 if (__name__ == "__main__"):
    70     form = cgi.FieldStorage()
    73     form = cgi.FieldStorage()
    71     db = my_db.connect()
    74     db = my_db.connect(os.environ["REMOTE_USER"])
    72     id = int(form['id'].value)
    75     id = int(form['id'].value)
    73     action = form['action'].value
    76     action = form['action'].value
    74     if action == 'cancel' or (action == 'delete' and id == -1):
    77     if action == 'cancel' or (action == 'delete' and id == -1):
    75         load_index(db)
    78         load_index(db)
    76     else:
    79     else:
    78 	  bk = get_bk_from_form(form)
    81 	  bk = get_bk_from_form(form)
    79 	  kw = get_unique_keywords(form, db)
    82 	  kw = get_unique_keywords(form, db)
    80 	else:
    83 	else:
    81 	  bk = db.get_bookmarks([id])[0]
    84 	  bk = db.get_bookmarks([id])[0]
    82 	  (ids, kw) = apply(zip,db.get_keywords(id))
    85 	  (ids, kw) = apply(zip,db.get_keywords(id))
    83 	main(action, bk, kw[1:])
    86 	  kw = kw[1:]
       
    87 	main(action, bk, kw)
    84 
    88