pdf: do not display form's fill page if no pdf file associated (#75715)
gitea/passerelle/pipeline/head This commit looks good
Details
gitea/passerelle/pipeline/head This commit looks good
Details
This commit is contained in:
parent
b0466e9468
commit
f43bae7c88
|
@ -2,7 +2,7 @@
|
|||
{% load i18n passerelle %}
|
||||
|
||||
{% block actions %}
|
||||
{% if object|can_edit:request.user %}
|
||||
{% if object|can_edit:request.user and object.fill_form_file %}
|
||||
<a href="{% url 'pdf-fields-mapping-edit' connector='pdf' slug=object.slug %}">{% trans 'Fill form: Edit fields mapping' %}</a>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
|
|
@ -34,6 +34,12 @@ class FieldsMappingEditView(ResourceView, UpdateView):
|
|||
model = models.Resource
|
||||
form_class = forms.FieldsMappingEditForm
|
||||
|
||||
def get(self, request, *args, **kwargs):
|
||||
resource = self.get_object()
|
||||
if not resource.fill_form_file:
|
||||
raise Http404
|
||||
return super().get(request, *args, **kwargs)
|
||||
|
||||
def get_context_data(self, **kwargs):
|
||||
context_data = super().get_context_data(**kwargs)
|
||||
resource = self.get_object()
|
||||
|
|
|
@ -161,6 +161,11 @@ def cerfa_content():
|
|||
|
||||
|
||||
def test_fill_form_no_pdf(app, admin_user, pdf):
|
||||
resp = app.get('/pdf/test')
|
||||
assert 'Fill form: Edit fields mapping' not in resp.text
|
||||
|
||||
resp = app.get('/pdf/test/fields-mapping/edit/', status=404)
|
||||
|
||||
resp = app.post_json('/pdf/test/fill-form/', params={'a': 1})
|
||||
assert resp.json == {
|
||||
'data': None,
|
||||
|
|
Loading…
Reference in New Issue