diff -r c763c420cbfc -r 896b7c6de627 add_result.py --- a/add_result.py Wed Sep 24 14:29:18 2003 -0400 +++ b/add_result.py Wed Sep 24 15:48:47 2003 -0400 @@ -18,6 +18,7 @@ def get_bk_from_form(form): bk = Bookmark() + bk.id = int(form['id'].value) bk.url = form['url'].value bk.name = form['name'].value bk.desc = form['desc'].value @@ -56,13 +57,18 @@ bk = get_bk_from_form(form) kw = get_kw_from_form(form) newkw = get_new_kw_from_form(form) + (ids, kws) = map(list,apply(zip, db.get_all_keywords())) for elem in newkw: -# try: - id = db.add_keyword(elem) - kw.append(id) -# except: -# print '

Error inserting keyword "'+elem+'".

' - id = db.add_bookmark(bk) + if elem in kws: + kw.append(ids[kws.index(elem)]) + else: + id = db.add_keyword(elem) + kw.append(id) + 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)