do_edit_kw.py
author fabien
Sat, 18 Oct 2003 00:56:42 -0400
branchxbelweb
changeset 45 c81d480c3224
parent 43 4d194fce51e1
child 47 2781ac85b807
permissions -rwxr-xr-x
[svn r1601] Add first try to get a folder's like view.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     1
#!/usr/bin/python
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     2
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     3
import sys
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     4
import traceback
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     5
sys.path.insert(0, "/home/fabien/lib/python")
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     6
sys.path.insert(0, "./lib")
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     7
sys.stderr = sys.stdout
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     8
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
     9
print "Content-type: text/html; charset=iso-8859-1;"
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    10
print
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    11
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    12
# import cgitb; cgitb.enable()
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    13
import cgi
43
4d194fce51e1 [svn r1594] Update to use user's preferences.
fabien
parents: 30
diff changeset
    14
from htmltmpl import TemplateManager
4d194fce51e1 [svn r1594] Update to use user's preferences.
fabien
parents: 30
diff changeset
    15
from webutils import get_template_processor
15
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    16
import my_db
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    17
from bkmark import Bookmark
30
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    18
from webutils import get_keywords
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 16
diff changeset
    19
import os
15
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    20
43
4d194fce51e1 [svn r1594] Update to use user's preferences.
fabien
parents: 30
diff changeset
    21
def main(action, sel_keywords, keywords, prefs):
15
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    22
    tmpl = TemplateManager().prepare("kw_confirm.tmpl")
43
4d194fce51e1 [svn r1594] Update to use user's preferences.
fabien
parents: 30
diff changeset
    23
    tproc = get_template_processor(prefs)
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 16
diff changeset
    24
    tproc.set("pagetitle", os.environ["REMOTE_USER"]+"'s XBELWeb Confirmation")
15
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    25
    tproc.set("confirm_delete", action == 'delete')
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    26
    tproc.set("confirm_merge", action == 'merge')
30
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    27
    tproc.set("confirm_rename", action == 'rename')
15
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    28
    tproc.set("action", action)
30
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    29
    tproc.set("Selected", sel_keywords)
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    30
    tproc.set("Keywords", keywords)
15
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    31
    print tproc.process(tmpl)
574631f841c3 [svn r1549] Add update/merge/delete keywords.
fabien
parents:
diff changeset
    32
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 16
diff changeset
    33
if (__name__ == "__main__"):
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 16
diff changeset
    34
    form = cgi.FieldStorage()
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 16
diff changeset
    35
    db = my_db.connect(os.environ["REMOTE_USER"])
30
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    36
    ids = get_keywords(form, 'kw')
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    37
    keywords = map(lambda e: { 'id': e[0], 'keyword': e[1]},
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    38
   	 db.get_all_keywords())
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    39
    keywords.sort(lambda x, y: cmp(x['keyword'],y['keyword']))
dbf4027d82fc [svn r1574] Keywords edition now in a separate page.
fabien
parents: 26
diff changeset
    40
    sel_keywords = filter(lambda e: e['id'] in ids, keywords)
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 16
diff changeset
    41
    action = form['action'].value
43
4d194fce51e1 [svn r1594] Update to use user's preferences.
fabien
parents: 30
diff changeset
    42
    main(action, sel_keywords, keywords, db.get_preferences())
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 16
diff changeset
    43