lib/actions/add.py
changeset 72 34fcc8b2c1f5
parent 62 56193b37f666
child 73 c078d8a04d76
equal deleted inserted replaced
71:591ffdca8041 72:34fcc8b2c1f5
     1 from templates import Template
     1 from templates import Template
     2 from bkmark import Bookmark
     2 from bkmark import Bookmark
     3 from webutils import load_index
     3 from webutils import load_index
     4 from templates import Template
     4 from templates import Template
     5 from utils import unique
       
     6 import os
     5 import os
     7 
     6 
     8 def get_bk_from_form(form):
     7 def get_bk_from_form(form):
     9         bk = Bookmark()
     8         bk = Bookmark()
    10         bk.id = int(form['id'].value)
     9         bk.id = int(form['id'].value)
    33         else:
    32         else:
    34                 return []
    33                 return []
    35 
    34 
    36 def get_unique_keywords(form, db):
    35 def get_unique_keywords(form, db):
    37       kw = get_kw_from_form(form)
    36       kw = get_kw_from_form(form)
    38       kw = map(db.get_keyword, kw)
    37       kw = set(map(db.get_keyword, kw))
    39       kw = kw + get_new_kw_from_form(form)
    38       return list(kw.union(get_new_kw_from_form(form))
    40       kw = unique(kw) 
       
    41       return kw
       
    42 
    39 
    43 def edit(db, prefs, form, id):
    40 def edit(db, prefs, form, id):
    44     name = url = ""
    41     name = url = ""
    45     if form.has_key("ctitle"):
    42     if form.has_key("ctitle"):
    46         name = form["ctitle"].value
    43         name = form["ctitle"].value
    84 	id = bk.id
    81 	id = bk.id
    85 	if (bk.id == -1):
    82 	if (bk.id == -1):
    86 		id = db.add_bookmark(bk)
    83 		id = db.add_bookmark(bk)
    87 	else:
    84 	else:
    88 		db.update_bookmark(bk)
    85 		db.update_bookmark(bk)
    89 	kw = map(db.add_keyword, get_new_kw_from_form(form))
    86 	kw = add_unique_keywords(db, get_unique_keywords(form, db))
    90       	kw += map(db.get_keyword, get_kw_from_form(form))
    87 	db.update_keywords(id, kw.values())
    91 	db.update_keywords(id, kw)
       
    92 
    88 
    93 def do_it(action, db, prefs, form):
    89 def do_it(action, db, prefs, form):
    94         if form.has_key('id'):
    90         if form.has_key('id'):
    95                 id = int(form['id'].value)
    91                 id = int(form['id'].value)
    96         else:
    92         else: