summaryrefslogtreecommitdiff
path: root/ishtar_common
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common')
-rw-r--r--ishtar_common/forms.py25
1 files changed, 17 insertions, 8 deletions
diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py
index f992ace38..6cfef1595 100644
--- a/ishtar_common/forms.py
+++ b/ishtar_common/forms.py
@@ -137,18 +137,27 @@ JSON_VALUE_TYPES_FIELDS = {
class BSForm(object):
def _post_init(self):
for k in self.fields:
+ widget = self.fields[k].widget
# manage bs decoration
- if not hasattr(self.fields[k].widget, 'NO_FORM_CONTROL'):
+ if not hasattr(widget, 'NO_FORM_CONTROL'):
cls = 'form-control'
- if 'class' in self.fields[k].widget.attrs:
- if 'form-control' in self.fields[k].widget.attrs['class']:
- cls = self.fields[k].widget.attrs['class']
+ if 'class' in widget.attrs:
+ if 'form-control' in widget.attrs['class']:
+ cls = widget.attrs['class']
else:
- cls = self.fields[k].widget.attrs['class'] + " " + cls
- self.fields[k].widget.attrs['class'] = cls
-
+ cls = widget.attrs['class'] + " " + cls
+ widget.attrs['class'] = cls
+ # 32 bits max value
+ if isinstance(self.fields[k], forms.IntegerField):
+ has_max = False
+ for validator in self.fields[k].validators:
+ if isinstance(validator, validators.MaxValueValidator):
+ has_max = True
+ break
+ if not has_max:
+ self.fields[k].validators.append(
+ validators.MaxValueValidator(2147483647))
# manage datepicker
- widget = self.fields[k].widget
if not isinstance(widget, DatePicker):
continue
lang = translation.get_language()