- Timestamp:
- 05/01/08 12:24:21 (23 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
trunk/pylucid/PyLucid/plugins_internal/preferences/preferences.py
r1544 r1548 26 26 from django.utils.translation import ugettext as _ 27 27 28 from PyLucid.db.preferences import get_all_prefs, Preferences29 28 from PyLucid.system.BasePlugin import PyLucidBasePlugin 30 from PyLucid. tools.data_eval import data_eval, DataEvalError29 from PyLucid.models import Plugin 31 30 32 31 … … 44 43 45 44 items = [] 46 for pref in get_all_prefs(): 47 edit_link = self.URLs.methodLink("edit", args=pref.id) 45 plugins = Plugin.objects.all() 46 for plugin in plugins: 47 if plugin.pref_data_string == None: 48 continue 49 50 edit_link = self.URLs.methodLink("edit", args=plugin.id) 48 51 49 52 items.append({ 50 "plugin_name": self._vebose_plugin_name(pref),51 "plugin_description": p ref.plugin.description,53 "plugin_name": unicode(plugin), 54 "plugin_description": plugin.description, 52 55 "edit_link": edit_link, 53 56 }) … … 62 65 try: 63 66 url_args = url_args.strip("/") 64 p ref_id = int(url_args)67 plugin_id = int(url_args) 65 68 except Exception, e: 66 69 self.page_msg.red("url error:", e) 67 70 return 68 71 69 p = Preferences() 70 p.init_via_id(pref_id) 71 data_dict = p.data_dict 72 73 p.load_form(self.request) 74 unbound_form = p.form 72 plugin = Plugin.objects.get(id = plugin_id) 73 unbound_form = plugin.get_pref_form(self.request.debug) 75 74 76 75 if self.request.method == 'POST': … … 78 77 if form.is_valid(): 79 78 new_data_dict = form.cleaned_data 80 p.update_and_save(new_data_dict) 79 80 plugin.set_pref_data_string(new_data_dict) 81 plugin.save() 81 82 self.page_msg("New preferences saved.") 82 83 return self.select() # Display the menu 83 84 else: 85 data_dict = plugin.get_preferences() 84 86 form = unbound_form(data_dict) 85 87 86 88 context = { 87 "plugin_name": self._vebose_plugin_name(p),89 "plugin_name": unicode(plugin), 88 90 "form": form, 89 91 "url_abort": self.URLs.methodLink("select"),