edit.py
author fabien
Tue, 07 Oct 2003 00:20:01 -0400
branchxbelweb
changeset 35 df0cc976f762
parent 33 db91081e5a78
child 42 6d31ed0f6ad3
permissions -rwxr-xr-x
[svn r1579] Use of select in edit bookmark page too.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     1
#!/usr/bin/python
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     2
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     3
import sys
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     4
import traceback
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     5
sys.path.insert(0, "/home/fabien/lib/python")
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     6
sys.path.insert(0, "./lib")
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     7
sys.stderr = sys.stdout
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     8
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
     9
print "Content-type: text/html; charset=iso-8859-1;"
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    10
print
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    11
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    12
# import cgitb; cgitb.enable()
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    13
import cgi
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    14
from htmltmpl import TemplateManager, TemplateProcessor
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    15
import my_db
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    16
import time
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    17
from bkmark import Bookmark
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 9
diff changeset
    18
import os
9
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    19
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    20
def main(keywords, bk):
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    21
    tmpl = TemplateManager().prepare("add_bk.tmpl")
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    22
    tproc = TemplateProcessor()
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 9
diff changeset
    23
    tproc.set("pagetitle", os.environ["REMOTE_USER"]+"'s XBELWeb Confirmation")
9
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    24
    tproc.set('ctitle', bk.name)
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    25
    tproc.set('curl', bk.url)
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    26
    tproc.set('desc', bk.desc)
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    27
    tproc.set('bkid', bk.id)
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    28
    tproc.set('Keywords', keywords)
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    29
    print tproc.process(tmpl)
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    30
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    31
if (__name__ == "__main__"):
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    32
    form = cgi.FieldStorage()
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    33
    id = int(form["id"].value)
21
345ee7421989 [svn r1555] Add multiuser support and more templating.
fabien
parents: 9
diff changeset
    34
    db = my_db.connect(os.environ["REMOTE_USER"])
9
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    35
    bk = db.get_bookmarks([id])[0]
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    36
    kw = db.get_all_keywords()[1:]
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    37
    kw.sort(lambda l,r: cmp(l[1],r[1]))
33
db91081e5a78 [svn r1577] Various change to the new interface.
fabien
parents: 21
diff changeset
    38
    (ids, kws) = apply(zip,db.get_keywords([id]))
9
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    39
    kw = map(lambda elem: {
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    40
   	 'id' : elem[0],
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    41
   	 'keyword' : elem[1],
35
df0cc976f762 [svn r1579] Use of select in edit bookmark page too.
fabien
parents: 33
diff changeset
    42
	 'selected' : elem[0] in ids }, kw)
9
896b7c6de627 [svn r1543] Ajout des fonctions d'�ditions.
fabien
parents:
diff changeset
    43
    main(kw, bk)