From 6e4f7a0390b7f49ce79f0e15e07e1d6df309f3ce Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Fri, 12 Feb 2021 15:43:15 +0100 Subject: Refactor - clean --- ishtar_common/forms.py | 77 +++++++++++++++++++++----------------------------- 1 file changed, 32 insertions(+), 45 deletions(-) (limited to 'ishtar_common/forms.py') diff --git a/ishtar_common/forms.py b/ishtar_common/forms.py index f1e5b34ca..74590c240 100644 --- a/ishtar_common/forms.py +++ b/ishtar_common/forms.py @@ -81,7 +81,7 @@ reverse_lazy = lazy(my_reverse, str) regexp_name = re.compile(r"^[\.,:/\w\-'\"() \&\[\]@]+$", re.UNICODE) name_validator = validators.RegexValidator( regexp_name, - _(u"Enter a valid name consisting of letters, spaces and hyphens."), + _("Enter a valid name consisting of letters, spaces and hyphens."), 'invalid') @@ -100,19 +100,19 @@ class FloatField(forms.FloatField): Allow the use of comma for separating float fields """ def clean(self, value): - if value and (isinstance(value, str) or isinstance(value, str)): + if value and isinstance(value, str): value = value.replace(',', '.').replace('%', '') return super(FloatField, self).clean(value) class FinalForm(forms.Form): final = True - form_label = _(u"Confirm") + form_label = _("Confirm") class FinalDeleteForm(FinalForm): confirm_msg = " " - confirm_end_msg = _(u"Are you sure you want to delete?") + confirm_end_msg = _("Are you sure you want to delete?") def get_readonly_clean(key): @@ -151,11 +151,11 @@ class BSForm(object): 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 + has_max = any( + isinstance(validator, validators.MaxValueValidator) + for validator in self.fields[k].validators + ) + if not has_max: self.fields[k].validators.append( validators.MaxValueValidator(2147483647)) @@ -249,10 +249,7 @@ class CustomForm(BSForm): self._post_init() def are_available(self, keys): - for k in keys: - if k not in self.fields: - return False - return True + return all(k in self.fields for k in keys) def remove_field(self, key): if key in self.fields: @@ -404,13 +401,10 @@ class LockForm(object): if not pk_key: raise NotImplementedError("pk_key must be set") if pk_key not in cleaned_data or not cleaned_data[pk_key]: - raise forms.ValidationError(_(u"You should select an item.")) + raise forms.ValidationError(_("You should select an item.")) model = self.associated_models[pk_key] pks = self.cleaned_data[pk_key] - if isinstance(pks, int): - pks = [pks] - else: - pks = pks.split(",") + pks = [pks] if isinstance(pks, int) else pks.split(",") for pk in pks: try: item = model.objects.get(pk=pk) @@ -464,10 +458,10 @@ class MultiSearchForm(CustomFormSearch): except (current_model.DoesNotExist, ValueError): continue return [ - (u"", + ("", mark_safe( - u"" + "" )) ] @@ -497,7 +491,7 @@ class FormSet(CustomForm, BaseFormSet): if not error_msg: error_msg = _("There are identical items.") items = [] - for i in range(0, self.total_form_count()): + for i in range(self.total_form_count()): form = self.forms[i] if not form.is_valid(): continue @@ -586,7 +580,7 @@ class FormHeader(object): "{label}{help_message}".format( label=self.label, level=self.level, help_message=help_message)) - html = u"""
+ html = """
@@ -612,7 +606,7 @@ class FormHeader(object): def render_end(self): if not self.collapse: return "" - return mark_safe(u""" + return mark_safe("""
@@ -865,10 +859,8 @@ class TableSelect(IshtarForm): if k == 'search_vector': cls += " search-vector" self.fields[k].widget.attrs['class'] = cls - if k in alt_names: - self.fields[k].alt_name = alt_names[k].search_key - else: - self.fields[k].alt_name = k + self.fields[k].alt_name = alt_names[k].search_key \ + if k in alt_names else k key = list(self.fields.keys())[0] self.fields[key].widget.attrs['autofocus'] = 'autofocus' @@ -878,13 +870,13 @@ class TableSelect(IshtarForm): class HistorySelect(CustomForm, TableSelect): history_creator = forms.IntegerField( - label=_(u"Created by"), + label=_("Created by"), widget=widgets.JQueryAutoComplete( reverse_lazy('autocomplete-user'), associated_model=User), required=False ) history_modifier = forms.IntegerField( - label=_(u"Last modified by"), + label=_("Last modified by"), widget=widgets.JQueryAutoComplete( reverse_lazy('autocomplete-user'), associated_model=User), required=False @@ -931,13 +923,12 @@ class DocumentItemSelect(HistorySelect): def get_now(): format = formats.get_format('DATE_INPUT_FORMATS')[0] - value = datetime.datetime.now().strftime(format) - return value + return datetime.datetime.now().strftime(format) class ClosingDateFormSelection(IshtarForm): form_label = _("Closing date") - end_date = DateField(label=_(u"Closing date")) + end_date = DateField(label=_("Closing date")) def __init__(self, *args, **kwargs): if 'initial' not in kwargs: @@ -953,8 +944,8 @@ def has_map(): def get_form_selection( class_name, label, key, model, base_form, get_url, - not_selected_error=_(u"You should select an item."), new=False, - new_message=_(u"Add a new item"), get_full_url=None, + not_selected_error=_("You should select an item."), new=False, + new_message=_("Add a new item"), get_full_url=None, gallery=False, map=False, multi=False, base_form_select=None, alt_pk_field=None ): @@ -1120,13 +1111,13 @@ class QAForm(CustomForm, ManageOldType): elif int(v) in list(dct_choices.keys()): values.append(str(dct_choices[int(v)])) self.fields[k].rendered_value = mark_safe( - u" ; ".join(values)) + " ; ".join(values)) if k not in self.REPLACE_FIELDS: self.fields[k].label = str(self.fields[k].label) + \ - str(_(u" - append to existing")) + str(_(" - append to existing")) else: self.fields[k].label = str(self.fields[k].label) + \ - str(_(u" - replace")) + str(_(" - replace")) def _set_value(self, item, base_key): value = self.cleaned_data[base_key] @@ -1143,19 +1134,15 @@ class QAForm(CustomForm, ManageOldType): if not isinstance(v, field.related_model): v = field.related_model.objects.get(pk=v) new_value.append(v) - if is_list: - value = new_value - else: - value = new_value[0] + value = new_value if is_list else new_value[0] if getattr(field, 'many_to_many', None): if type(value) not in (list, tuple): value = [value] for v in value: getattr(item, key).add(v) else: - if base_key not in self.REPLACE_FIELDS: - if getattr(item, key): - value = getattr(item, key) + u"\n" + value + if base_key not in self.REPLACE_FIELDS and getattr(item, key): + value = getattr(item, key) + "\n" + value setattr(item, key, value) def save(self, items, user): -- cgit v1.2.3