summaryrefslogtreecommitdiff
path: root/ishtar/ishtar_base/forms.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2011-07-08 00:01:50 +0200
committerÉtienne Loks <etienne.loks@peacefrogs.net>2011-07-08 00:01:50 +0200
commit3349d76a08dd164a412ca8846e9a17ab05df82d6 (patch)
treec9f996ff0c6556cfcf2a43a9854784ad4b0d838d /ishtar/ishtar_base/forms.py
parent2fc9a3feb4548e47a04c90f4ef76654d78a8396a (diff)
downloadIshtar-3349d76a08dd164a412ca8846e9a17ab05df82d6.tar.bz2
Ishtar-3349d76a08dd164a412ca8846e9a17ab05df82d6.zip
Better packaging management (closes #515)
Diffstat (limited to 'ishtar/ishtar_base/forms.py')
-rw-r--r--ishtar/ishtar_base/forms.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/ishtar/ishtar_base/forms.py b/ishtar/ishtar_base/forms.py
index f69b5dcd4..9d106aed0 100644
--- a/ishtar/ishtar_base/forms.py
+++ b/ishtar/ishtar_base/forms.py
@@ -733,7 +733,8 @@ class ClosingWizard(Wizard):
context_instance=RequestContext(request))
def get_form_selection(class_name, label, key, model, base_form, get_url,
- not_selected_error=_(u"You should select an item.")):
+ not_selected_error=_(u"You should select an item."), new=False,
+ new_message=_(u"Add a new item")):
"""
Generate a class selection form
class_name -- name of the class
@@ -742,6 +743,8 @@ def get_form_selection(class_name, label, key, model, base_form, get_url,
base_form -- base form to select
get_url -- url to get the item
not_selected_error -- message displayed when no item is selected
+ new -- can add new items
+ new_message -- message of link to add new items
"""
attrs = {'_main_key':key,
'_not_selected_error':not_selected_error,
@@ -749,12 +752,15 @@ def get_form_selection(class_name, label, key, model, base_form, get_url,
'associated_models':{key:model},
'currents':{key:model},}
attrs[key] = forms.IntegerField(label="", required=False,
- widget=widgets.JQueryJqGrid(reverse_lazy(get_url),
- base_form(), model), validators=[models.valid_id(model)])
+ validators=[models.valid_id(model)],
+ widget=widgets.JQueryJqGrid(reverse_lazy(get_url), base_form(), model,
+ new=new, new_message=new_message))
def clean(self):
cleaned_data = self.cleaned_data
if self._main_key not in cleaned_data \
or not cleaned_data[self._main_key]:
raise forms.ValidationError(self._not_selected_error)
return cleaned_data
+ attrs['clean'] = clean
return type(class_name, (forms.Form,), attrs)
+