From 0f3229a119e53054d98c5e878a9581403628cd08 Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Wed, 27 Feb 2019 20:44:52 +0100 Subject: Migrate to python 3 - Clean old migrations and some old scripts --- ishtar_common/wizards.py | 98 ++++++++++++++++++++++++------------------------ 1 file changed, 49 insertions(+), 49 deletions(-) (limited to 'ishtar_common/wizards.py') diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index 9d69577c3..6e282a3fd 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -409,8 +409,8 @@ class Wizard(IshtarWizard): values = [] if type(value) in (tuple, list): values = value - elif "," in unicode(value): - values = unicode( + elif "," in str(value): + values = str( value).strip('[').strip(']').split(",") else: values = [value] @@ -418,9 +418,9 @@ class Wizard(IshtarWizard): for val in values: item = associated_models[key].objects.get(pk=val) if hasattr(item, 'short_label'): - value = unicode(item.short_label) + value = str(item.short_label) else: - value = unicode(item) + value = str(item) rendered_values.append(value) value = u" ; ".join(rendered_values) current_form_data.append((lbl, value, '')) @@ -433,7 +433,7 @@ class Wizard(IshtarWizard): if lbl.strip(): displayed_value = u"{}{} ".format( lbl, _(u":")) - displayed_value += unicode(value) + displayed_value += str(value) displayed_values.append(displayed_value) value = u" ; ".join(displayed_values) if is_deleted: @@ -485,7 +485,7 @@ class Wizard(IshtarWizard): assert hasattr(frm, 'base_model') or \ hasattr(frm, 'base_models'), \ u"Must define a base_model(s) for " + \ - unicode(frm.__class__) + str(frm.__class__) for frm in form.forms: if not frm.is_valid(): continue @@ -525,8 +525,7 @@ class Wizard(IshtarWizard): if key in associated_models: if value: model = associated_models[key] - if isinstance(value, unicode) \ - or isinstance(value, str) and "," in value: + if isinstance(value, str) and "," in value: value = value.split(",") if isinstance(value, list) \ or isinstance(value, tuple): @@ -572,7 +571,7 @@ class Wizard(IshtarWizard): # manage dependant items and json fields other_objs = {} - for k in dct.keys(): + for k in list(dct.keys()): if '__' not in k: continue # manage json field @@ -628,7 +627,7 @@ class Wizard(IshtarWizard): try: obj.full_clean() except ValidationError as e: - logger.warning(unicode(e)) + logger.warning(str(e)) return self.render(form_list[-1]) for dependant_item in other_objs: c_item = getattr(obj, dependant_item) @@ -658,7 +657,7 @@ class Wizard(IshtarWizard): adds = {} # manage attributes relations if hasattr(self.model, 'ATTRS_EQUIV'): - for k in other_objs.keys(): + for k in list(other_objs.keys()): if k in self.model.ATTRS_EQUIV: new_k = self.model.ATTRS_EQUIV[k] if new_k in other_objs: @@ -705,7 +704,7 @@ class Wizard(IshtarWizard): try: obj.full_clean() except ValidationError as e: - logger.warning(unicode(e)) + logger.warning(str(e)) return self.render(form_list[-1]) if hasattr(obj, 'data'): obj.data = data @@ -784,7 +783,7 @@ class Wizard(IshtarWizard): if not hasattr(related_model, 'clear'): assert hasattr(model, 'MAIN_ATTR'), \ u"Must define a MAIN_ATTR for " + \ - unicode(model.__class__) + str(model.__class__) value[getattr(model, 'MAIN_ATTR')] = obj # check old links @@ -839,7 +838,7 @@ class Wizard(IshtarWizard): value['data'] = {} # remove intermediary model keys - for k in related_data.keys(): + for k in list(related_data.keys()): if k in value: related_data[k] = value.pop(k) @@ -890,7 +889,7 @@ class Wizard(IshtarWizard): field.related_model): related_data[field.name] = obj # let default value if is none - for k in related_data.keys(): + for k in list(related_data.keys()): if related_data[k] is None: related_data.pop(k) related_model.through.objects.create( @@ -925,12 +924,12 @@ class Wizard(IshtarWizard): and ishtaruser.current_profile.auto_pin: # make the new object a default if self.current_obj_slug: - self.request.session[self.current_obj_slug] = unicode(obj.pk) - self.request.session[self.get_object_name(obj)] = unicode(obj.pk) + self.request.session[self.current_obj_slug] = str(obj.pk) + self.request.session[self.get_object_name(obj)] = str(obj.pk) dct = {'item': obj} self.current_object = obj # force evaluation of lazy urls - wizard_done_window = unicode(self.wizard_done_window) + wizard_done_window = str(self.wizard_done_window) if wizard_done_window: dct['wizard_done_window'] = wizard_done_window res = render(self.request, self.wizard_done_template, dct) @@ -970,10 +969,11 @@ class Wizard(IshtarWizard): raise Http404() if hasattr(form, 'management_form'): # manage deletion - to_delete, not_to_delete = self.get_deleted(data.keys()) + to_delete, not_to_delete = self.get_deleted( + list(data.keys())) # raz deleted fields if self.formset_pop_deleted: - for key in data.keys(): + for key in list(data.keys()): items = key.split('-') if len(items) < 2 or items[-2] not in to_delete: continue @@ -982,13 +982,13 @@ class Wizard(IshtarWizard): # reorganize for idx, number in enumerate( sorted(not_to_delete, key=lambda x: int(x))): - idx = unicode(idx) + idx = str(idx) if idx == number: continue - for key in data.keys(): + for key in list(data.keys()): items = key.split('-') if len(items) > 2 and number == items[-2]: - items[-2] = unicode(idx) + items[-2] = str(idx) k = u'-'.join(items) data[k] = data.pop(key)[0] # get a form key @@ -1006,7 +1006,7 @@ class Wizard(IshtarWizard): if required_fields: base_key = required_fields[-1] elif frm.fields.keys(): - base_key = frm.fields.keys()[-1] + base_key = list(frm.fields.keys())[-1] if base_key: total_field = len([key for key in data.keys() if base_key in key.split('-') @@ -1016,15 +1016,15 @@ class Wizard(IshtarWizard): not hasattr(self, 'form_initialized') or not self.form_initialized): total_field = max((total_field, len(init))) - data[step + u'-INITIAL_FORMS'] = unicode(total_field) - data[step + u'-TOTAL_FORMS'] = unicode(total_field + 1) + data[step + u'-INITIAL_FORMS'] = str(total_field) + data[step + u'-TOTAL_FORMS'] = str(total_field + 1) # TODO:remove form_initialized? # update initialization # if request.POST and init and hasattr(self, # 'form_initialized') \ # and self.form_initialized: # for k in init[0]: - # data[step + '-' + unicode(total_field) + '-' + k] = \ + # data[step + '-' + str(total_field) + '-' + k] = \ # init[0][k] data = data or None @@ -1041,7 +1041,7 @@ class Wizard(IshtarWizard): frm = form.forms[0] if frm: # autofocus on first field - first_field = frm.fields[frm.fields.keys()[0]] + first_field = frm.fields[list(frm.fields.keys())[0]] attrs = first_field.widget.attrs attrs.update({'autofocus': "autofocus"}) first_field.widget.attrs = attrs @@ -1050,10 +1050,10 @@ class Wizard(IshtarWizard): if self.filter_owns_items and self.filter_owns \ and step in self.filter_owns: for key in self.filter_owns[step]: - frm.fields[key].widget.source = unicode( + frm.fields[key].widget.source = str( frm.fields[key].widget.source) + "own/" if frm.fields[key].widget.source_full is not None: - frm.fields[key].widget.source_full = unicode( + frm.fields[key].widget.source_full = str( frm.fields[key].widget.source_full) + "own/" return form @@ -1289,7 +1289,7 @@ class Wizard(IshtarWizard): if base_model: key = base_model + 's' initial.setlist(base_field, [ - unicode(val.pk) for val in getattr(value, key).all()]) + str(val.pk) for val in getattr(value, key).all()]) else: fields = base_field.split('__') for field in fields: @@ -1304,7 +1304,7 @@ class Wizard(IshtarWizard): if not value.count(): continue initial.setlist(base_field, - [unicode(v.pk) for v in value.all()]) + [str(v.pk) for v in value.all()]) continue if value == obj: continue @@ -1315,7 +1315,7 @@ class Wizard(IshtarWizard): or isinstance(value, FileField): initial[base_field] = value elif value is not None: - initial[base_field] = unicode(value) + initial[base_field] = str(value) return initial @staticmethod @@ -1326,16 +1326,16 @@ class Wizard(IshtarWizard): value = value.pk elif hasattr(value, 'all'): vals.setlist(field, [ - unicode(v.pk) + str(v.pk) for v in getattr(child_obj, field).all() ]) return vals if value is not None: - vals[field] = unicode(value) + vals[field] = str(value) elif hasattr(child_obj, field + "s"): # M2M vals.setlist(field, [ - unicode(v.pk) + str(v.pk) for v in getattr(child_obj, field + "s").all() ]) return vals @@ -1351,7 +1351,7 @@ class Wizard(IshtarWizard): key = current_step.split('-')[0] if not hasattr(obj, key): return initial - keys = c_form.form.base_fields.keys() + keys = list(c_form.form.base_fields.keys()) related = getattr(obj, key) # manage through through = False @@ -1385,7 +1385,7 @@ class Wizard(IshtarWizard): vals = MultiValueDict() if len(keys) == 1: # only one field: must be the id of the object - vals[keys[0]] = unicode(child_obj.pk) + vals[keys[0]] = str(child_obj.pk) else: for field in keys: vals = self._get_vals_for_instanced_init_for_formset( @@ -1410,7 +1410,7 @@ class Wizard(IshtarWizard): if ishtaruser and ishtaruser.current_profile \ and ishtaruser.current_profile.auto_pin: # make the current object the default item for the session - self.request.session[self.get_object_name(obj)] = unicode(obj.pk) + self.request.session[self.get_object_name(obj)] = str(obj.pk) initial = MultiValueDict() # posted data or already in session @@ -1523,11 +1523,11 @@ class DeletionWizard(Wizard): if hasattr(value, 'all'): if not label and hasattr(field, 'related_model'): label = field.related_model._meta.verbose_name_plural - value = ", ".join([unicode(item) for item in value.all()]) + value = ", ".join([str(item) for item in value.all()]) if not value: continue else: - value = unicode(value) + value = str(value) res[field.name] = (label, value, '') if not datas and self.fields: datas = [['', []]] @@ -1574,11 +1574,11 @@ class ClosingWizard(Wizard): if not value: continue if hasattr(value, 'all'): - value = ", ".join([unicode(item) for item in value.all()]) + value = ", ".join([str(item) for item in value.all()]) if not value: continue else: - value = unicode(value) + value = str(value) res[field.name] = (field.verbose_name, value, '') if not datas and self.fields: datas = [['', []]] @@ -1680,7 +1680,7 @@ class AccountWizard(Wizard): if not person: return self.render(form_dict['selec-account_management']) - for key in dct.keys(): + for key in list(dct.keys()): if key.startswith('hidden_password'): dct['password'] = dct.pop(key) try: @@ -1777,7 +1777,7 @@ class AccountWizard(Wizard): [dct['email']], fail_silently=True) res = render( self.request, self.wizard_done_template, - {'wizard_done_window': unicode(self.wizard_done_window), + {'wizard_done_window': str(self.wizard_done_window), 'item': person}, ) return res @@ -1812,9 +1812,9 @@ class SourceWizard(Wizard): class DocumentDeletionWizard(DeletionWizard): - model = models.Document - fields = [f.name for f in model._meta.get_fields() - if f.name != 'id' and f.name not in model.RELATED_MODELS] + \ - model.RELATED_MODELS + fields = [ + f.name for f in models.Document._meta.get_fields() + if f.name != 'id' and f.name not in models.Document.RELATED_MODELS] + fields += models.Document.RELATED_MODELS filter_owns = {'selec-document_deletion': ['pk']} -- cgit v1.2.3