kw_result.py
author fabien
Sun, 26 Oct 2003 22:26:03 -0500
branchxbelweb
changeset 51 7015d65beb3d
parent 50 5275135955c0
child 53 e80160a19653
permissions -rwxr-xr-x
[svn r1608] Correct the keywords bugs and some other in folder view, plus mutual exclusion of selected keywords in dynamic view.

#!/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
import my_db
from os import environ
from webutils import load_index
from keywords import get_keywords

def do_merge(form, db):
	fromids = get_keywords(form, 'id')
	toid = int(form['kw'].value)	
	tokw = db.get_keyword(toid)
	remove_them = form.has_key('remove')
	for id in fromids:
		fromkw = db.get_keyword(id)
		if remove_them:
			print "<em>Merging '%s' into '%s'.</em><br/>" % (fromkw, tokw)
			db.merge_keywords(id, toid)
		else:
			print "<em>Adding '%s' into '%s'.</em><br/>" % (fromkw, tokw)
			db.merge_keywords(id, toid) 

def do_rename(form, db):
	ids = get_keywords(form, 'id')
	for id in ids:
		oldname = db.get_keyword(id)
		newname = form['name%d' % id].value
		print "<em>Renaming '%s' into '%s'.</em><br/>" % (oldname, newname)
		db.update_keyword(id, newname)
 
def do_delete(form, db):
	ids = get_keywords(form, 'id')
	for id in ids:
		kw = db.get_keyword(id)
		print "<em>Removing '%s'.</em><br/>" % kw
		db.remove_keyword(id)

if (__name__ == "__main__"):
    form = cgi.FieldStorage()
    db = my_db.connect(environ["REMOTE_USER"])
    prefs = db.get_preferences()
    action = form['action'].value
    if action == 'merge':
	do_merge(form, db)
    elif action == 'rename':
	do_rename(form, db)
    elif action == 'delete':
    	do_delete(form, db)
    load_index(db, prefs)