kw_result.py
changeset 58 004a32370ba5
parent 57 31271426f879
child 59 2c5e38748004
equal deleted inserted replaced
57:31271426f879 58:004a32370ba5
     1 #!/usr/bin/python
       
     2 
       
     3 import sys
       
     4 import traceback
       
     5 sys.path.insert(0, "/home/fabien/lib/python")
       
     6 sys.path.insert(0, "./lib")
       
     7 sys.stderr = sys.stdout
       
     8 
       
     9 print "Content-type: text/html; charset=iso-8859-1;"
       
    10 print
       
    11 
       
    12 # import cgitb; cgitb.enable()
       
    13 import cgi
       
    14 import my_db
       
    15 from os import environ
       
    16 from webutils import load_index
       
    17 from keywords import get_keywords
       
    18 
       
    19 def do_merge(form, db):
       
    20 	fromids = get_keywords(form, 'id')
       
    21 	toids = get_keywords(form, 'kw')
       
    22 	remove_them = form.has_key('remove')
       
    23 	if remove_them:
       
    24 		lastid = toids.pop()
       
    25 	for id in fromids:
       
    26 		fromkw = db.get_keyword(id)
       
    27 		for dest in toids:
       
    28 			tokw = db.get_keyword(dest)
       
    29 			print "<em>Adding '%s' into '%s'.</em><br/>" % (fromkw, tokw)
       
    30 			db.add_keywords(id, dest) 
       
    31 		if remove_them:
       
    32 			tokw = db.get_keyword(lastid)
       
    33 			print "<em>Merging '%s' into '%s'.</em><br/>" % (fromkw, tokw)
       
    34 			db.merge_keywords(id, lastid)
       
    35 
       
    36 def do_rename(form, db):
       
    37 	ids = get_keywords(form, 'id')
       
    38 	for id in ids:
       
    39 		oldname = db.get_keyword(id)
       
    40 		newname = form['name%d' % id].value
       
    41 		print "<em>Renaming '%s' into '%s'.</em><br/>" % (oldname, newname)
       
    42 		db.update_keyword(id, newname)
       
    43  
       
    44 def do_delete(form, db):
       
    45 	ids = get_keywords(form, 'id')
       
    46 	for id in ids:
       
    47 		kw = db.get_keyword(id)
       
    48 		print "<em>Removing '%s'.</em><br/>" % kw
       
    49 		db.remove_keyword(id)
       
    50 
       
    51 if (__name__ == "__main__"):
       
    52     form = cgi.FieldStorage()
       
    53     db = my_db.connect(environ["REMOTE_USER"])
       
    54     prefs = db.get_preferences()
       
    55     action = form['action'].value
       
    56     if action == 'merge':
       
    57 	do_merge(form, db)
       
    58     elif action == 'rename':
       
    59 	do_rename(form, db)
       
    60     elif action == 'delete':
       
    61     	do_delete(form, db)
       
    62     load_index(db, prefs)