summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2019-08-12 16:33:46 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2019-08-12 16:33:46 +0200
commit9876abaa8560b9eb75f45b4b71717e80406f5618 (patch)
tree446c6aa8ebfcc194a1d7cd14caf77071dac00c97
parenta23a15a3e16d430a193c00268168690b61a7d2e4 (diff)
downloadIshtar-9876abaa8560b9eb75f45b4b71717e80406f5618.tar.bz2
Ishtar-9876abaa8560b9eb75f45b4b71717e80406f5618.zip
Import - match form: only display 250 first matches
-rw-r--r--ishtar_common/templates/ishtar/formset_import_match.html6
-rw-r--r--ishtar_common/views.py14
2 files changed, 19 insertions, 1 deletions
diff --git a/ishtar_common/templates/ishtar/formset_import_match.html b/ishtar_common/templates/ishtar/formset_import_match.html
index 8997c309a..eda44e2b9 100644
--- a/ishtar_common/templates/ishtar/formset_import_match.html
+++ b/ishtar_common/templates/ishtar/formset_import_match.html
@@ -12,6 +12,12 @@
<a href="{% url 'current_imports' %}">{% trans "Back to import list" %}</a>
</p>
<div class='form' id='global-vars'>
+ {% if MAX_FIELDS_REACHED %}
+ <div class="alert alert-warning">
+ {% blocktrans %}Only {{MAX_FIELDS_REACHED}} out of {{TOTAL}} fields have been displayed.
+ Fill these fields and submit the form to reach the other fields.{% endblocktrans %}
+ </div>
+ {% endif %}
{% if extra_formset.non_form_errors %}
<div class='errors'>{{extra_formset.non_form_errors.as_ul}}</div>{% endif %}
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index 8b4d212a7..f867a03cf 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -1606,16 +1606,28 @@ class ImportLinkView(IshtarMixin, LoginRequiredMixin, ModelFormSetView):
}
form_class = forms.TargetKeyForm
formset_class = forms.TargetKeyFormset
+ max_fields = 250
def get_formset_kwargs(self):
kwargs = super(ImportLinkView, self).get_formset_kwargs()
kwargs['user'] = self.request.user
return kwargs
- def get_queryset(self):
+ def full_queryset(self):
return self.model.objects.filter(
is_set=False, associated_import=self.kwargs['pk'])
+ def get_queryset(self):
+ return self.full_queryset()[:self.max_fields]
+
+ def get_context_data(self, **kwargs):
+ data = super().get_context_data(**kwargs)
+ total = self.full_queryset().count()
+ if total > self.max_fields:
+ data['MAX_FIELDS_REACHED'] = self.max_fields
+ data['TOTAL'] = total
+ return data
+
def get_success_url(self):
return reverse('import_link_unmatched', args=[self.kwargs['pk']])