--- a/folders.py Fri Oct 24 14:19:30 2003 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,64 +0,0 @@
-#!/usr/bin/python
-
-import sys
-import traceback
-if (__name__ == '__main__'):
- 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 htmltmpl import TemplateManager
-from webutils import get_template_processor, set_selection, sort_keywords
-
-def output(prefs, folder, parents, children, bookmarks, keywords):
- tmpl = TemplateManager().prepare("folders.tmpl")
- tproc = get_template_processor(prefs)
- tproc.set('Parents', parents)
- tproc.set('folder', folder['id'])
- tproc.set('name', folder['name'])
- tproc.set('total', len(bookmarks))
- bookmarks.sort(lambda l,r: cmp(l['name'],r['name']))
- tproc.set('Bookmarks', bookmarks)
- tproc.set('Subfolders', children)
- keywords = sort_keywords(keywords[1:], prefs)
- tproc.set('Keywords', keywords)
- print tproc.process(tmpl)
-
-if (__name__ == "__main__"):
- form = cgi.FieldStorage()
- db = my_db.connect(environ["REMOTE_USER"])
- if form.has_key('folder'):
- folder = int(form['folder'].value)
- else:
- folder = 0
- if form.has_key('action'):
- if form['action'].value == 'add':
- if form.has_key('sel'):
- keyword = int(form['sel'].value)
- db.add_folder(keyword, folder)
- print "<em>Folder successfully add.</em>"
- parents = db.get_folder_parents_and_self(folder)
- children = db.get_subfolders(folder)
- parents.reverse()
- selection = map(lambda e: e['keyword'], parents)
- exclusion = map(lambda e: e['keyword'], children)
- bookmarks = db.select_bookmarks(selection, exclusion)
- selected_keywords = set_selection(db,
- map(lambda e: e[0], bookmarks),
- selection, exclusion)
- keywords = []
- for keyword in selected_keywords:
- if not keyword['id'] in exclusion:
- keywords.append(keyword)
- for child in children:
- child['count'] = len(db.select_bookmarks(selection + [child['keyword']]))
- bookmarks = db.get_bookmarks(map(lambda bk: bk[0], bookmarks))
- bookmarks = map(lambda bk: bk.dict(), bookmarks)
- output(db.get_preferences(), parents.pop(), parents, children, bookmarks, keywords)