lib/actions/edit_prefs.py
author fabien@tzone.org
Wed, 31 Dec 2008 00:07:25 -0500
changeset 69 d79722064d8d
parent 61 a1bcf5e4b8a4
child 74 6784c4350b41
permissions -rwxr-xr-x
Merge previous changeset and ensure everything seems to work.

from templates import Template
from webutils import load_index

def edit_prefs(db, prefs, form):
    if form.has_key('kw_size'):
    	prefs['keywords_box'] = int(form['kw_size'].value)
    if form.has_key('kw_sort'):
    	prefs['keywords_sort'] = form['kw_sort'].value
    if form.has_key('default_view'):
    	prefs['default_view'] = int(form['default_view'].value)
    prefs['keywords_reverse'] = form.has_key('kw_reverse')
    if form.has_key('fullname'):
    	prefs['fullname'] = form['fullname'].value
    db.set_preferences(prefs)
    load_index(db, db.get_preferences(), form, "result", "Preferences saved.")

def view_prefs(prefs):
    tmpl = Template("prefs.tmpl", prefs)
    sortfields = []
    for field in ['keyword', 'count']:
      sortfields.append({'field': field,
                     'selected' : prefs['keywords_sort'] == field })
    tmpl.set('Sortfields', sortfields)
    views = []
    for view in [(0, 'dynamic'), (1, 'folder')]:
    	views.append({ 'view': view[0],
	        'name': view[1],
		'selected': prefs['default_view'] == view[0]} )
    tmpl.set('Views', views)
    print tmpl.process()

def do_it(action, db, prefs, form):
	if form.has_key('step'):
		step = form['step'].value
	else:
		step = 'view'
	if step == 'view':
		view_prefs(prefs)
	elif step == 'edit':
		edit_prefs(db, prefs, form)
	else:	
		load_index(db, prefs, form, "error", "Operation cancel.")