diff options
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r-- | ishtar_common/views.py | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 1536868d4..d4fb68004 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -1948,7 +1948,10 @@ class ImportStepByStepView(IshtarMixin, LoginRequiredMixin, TemplateView): line_nb = self.imprt_obj.get_number_of_lines() total_line_nb = self.imprt_obj.skip_lines + line_nb delta = int((self.current_line_number + 1) / pagination_step) - already_imported = self.imprt_obj.imported_line_numbers.split(',') + + already_imported = [] + if self.imprt_obj.imported_line_numbers: + already_imported = self.imprt_obj.imported_line_numbers.split(',') dct['page_is_last'] = self.current_line_number == line_nb dct['page_numbers'] = [] # label, number, enabled, is_imported @@ -1981,7 +1984,8 @@ class ImportStepByStepView(IshtarMixin, LoginRequiredMixin, TemplateView): dct['errors'] = self.errors if self.errors: if self.imprt.current_csv_line: - headers = [f.label for f in self.imprt.get_formaters()] + headers = [f.label if f else _(u"Not imported") + for f in self.imprt.get_formaters()] dct['values'] = zip( range(1, len(headers) + 1), headers, self.imprt.current_csv_line @@ -1989,6 +1993,10 @@ class ImportStepByStepView(IshtarMixin, LoginRequiredMixin, TemplateView): return dct headers, self.path_to_column, interpreted_values = [], {}, [] for idx, formater in enumerate(self.imprt.get_formaters()): + if not formater: + headers.append(_(u"Not imported")) + interpreted_values.append(u"–") + continue lbl = formater.label if formater.comment: lbl += u' <i data-toggle="tooltip" class="fa ' @@ -1997,6 +2005,7 @@ class ImportStepByStepView(IshtarMixin, LoginRequiredMixin, TemplateView): formater.comment.replace(u'"', u'"')) lbl += u'</i>' headers.append(lbl) + field_name = formater.field_name[0] if formater.export_field_name: field_name = formater.export_field_name[0] @@ -2011,16 +2020,17 @@ class ImportStepByStepView(IshtarMixin, LoginRequiredMixin, TemplateView): self.path_to_column[current_field_name].append(idx) field_name_tuple.pop() - for idx, key in enumerate(field_name.split('__')): + for idx_split, key in enumerate(field_name.split('__')): if isinstance(value, dict) and key in value: value = value[key] - elif not idx: + elif not idx_split: # no key reach value = None else: break value = self.get_value(value) interpreted_values.append(value) + dct['values'] = zip( range(1, len(headers) + 1), headers, self.imprt.current_csv_line, interpreted_values |