|
1 from templates import Template |
|
2 from webutils import load_index |
|
3 |
|
4 def edit_prefs(db, prefs, form): |
|
5 if form.has_key('kw_size'): |
|
6 prefs['keywords_box'] = int(form['kw_size'].value) |
|
7 if form.has_key('kw_sort'): |
|
8 prefs['keywords_sort'] = form['kw_sort'].value |
|
9 if form.has_key('default_view'): |
|
10 prefs['default_view'] = int(form['default_view'].value) |
|
11 prefs['keywords_reverse'] = form.has_key('kw_reverse') |
|
12 if form.has_key('fullname'): |
|
13 prefs['fullname'] = form['fullname'].value |
|
14 db.set_preferences(prefs) |
|
15 load_index(db, prefs, form, "result", "Preferences saved.") |
|
16 |
|
17 def view_prefs(prefs): |
|
18 tmpl = Template("prefs.tmpl", prefs) |
|
19 sortfields = [] |
|
20 for field in ['keyword', 'count']: |
|
21 sortfields.append({'field': field, |
|
22 'selected' : prefs['keywords_sort'] == field }) |
|
23 tmpl.set('Sortfields', sortfields) |
|
24 views = [] |
|
25 for view in [(0, 'dynamic'), (1, 'folder')]: |
|
26 views.append({ 'view': view[0], |
|
27 'name': view[1], |
|
28 'selected': prefs['default_view'] == view[0]} ) |
|
29 tmpl.set('Views', views) |
|
30 print tmpl.process() |
|
31 |
|
32 def do_it(action, db, prefs, form): |
|
33 if form.has_key('step'): |
|
34 step = form['step'] |
|
35 else: |
|
36 step = 'view' |
|
37 if step == 'view': |
|
38 view_prefs(prefs) |
|
39 elif step == 'edit': |
|
40 edit_prefs(prefs) |
|
41 else: |
|
42 load_index(db, prefs, form, "error", "Operation cancel.") |