diff -r 31271426f879 -r 004a32370ba5 add_result.py --- a/add_result.py Sat Dec 27 20:23:39 2008 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,64 +0,0 @@ -#!/usr/bin/python - -import sys -import traceback -sys.path.insert(0, "/home/fabien/lib/python") -sys.path.insert(0, "./lib") -sys.stderr = sys.stdout - -print "Content-type: text/html; charset=iso-8859-1;" -print - -# import cgitb; cgitb.enable() -import cgi -from templates import Template -import time -from utils import unique -import my_db -from add_confirm import get_bk_from_form, get_new_kw_from_form -from webutils import load_index -import os - -def add_new_keywords(db, newkw): - kw = [0] # Default keyword, so that every bookmarks appears in - # the bookmarks_keywords db. - (ids, kws) = map(list,apply(zip, db.get_all_keywords())) - for elem in unique(newkw): - if elem in kws: - kw.append(ids[kws.index(elem)]) - else: - id = db.add_keyword(elem) - kw.append(id) - return kw - -def main(bk, kw, prefs): - tmpl = Template("add_result.tmpl", prefs) - tmpl.set("url", bk.url) - tmpl.set("name", bk.name) - tmpl.set("added", bk.added) - tmpl.set("desc", bk.desc) - tmpl.set("Keywords", kw) - print tmpl.process() - -if (__name__ == "__main__"): - form = cgi.FieldStorage() - db = my_db.connect(os.environ["REMOTE_USER"]) - prefs = db.get_preferences() - action = form['action'].value - if action == 'cancel': - load_index(db, prefs) - elif action == 'delete': - db.remove_bookmark(int(form['id'].value)) - load_index(db, prefs) - else: - bk = get_bk_from_form(form) - newkw = get_new_kw_from_form(form) - kw = add_new_keywords(db, newkw) - if bk.id == -1: - id = db.add_bookmark(bk) - else: - db.update_bookmark(bk) - id = bk.id - db.update_keywords(id, kw) - kw = map(lambda e: { 'keyword': e[1] }, db.get_keywords([id])[1:]) - main(bk, kw, prefs)