Skip to content
Snippets Groups Projects
Verified Commit 9adb90ff authored by Frank Sauerburger's avatar Frank Sauerburger
Browse files

Use pickup-based certificate download

parent ab94545a
No related branches found
No related tags found
1 merge request!10Resolve "Pickup download link broken"
Pipeline #7618 waiting for manual action
......@@ -99,10 +99,17 @@
{% if not csr %}
<div>
{% if pickup %}
<a href="{% url 'cert-pickup-download' cert.request.pickup_code cert.pk %}">
<i class="fas fa-download"></i>
Download cert.pem
</a>
{% else %}
<a href="{% url 'cert-download' cert.pk %}">
<i class="fas fa-download"></i>
{{ request.scheme }}://{{ request.get_host}}{% url 'cert-download' cert.pk %}
{{ request.scheme }}://{{ request.get_host}}{% url 'cert-download' cert.pk %}
</a>
{% endif %}
</div>
{% endif %}
</div>
......
......@@ -36,7 +36,7 @@
{% if certificatesigningrequest.verification == 10 %}
<ul class="list-unstyled">
{% for cert in certificatesigningrequest.certificates.all %}
{% include 'owlca/cert_item.html' %}
{% include 'owlca/cert_item.html' with pickup=True %}
{% endfor %}
</ul>
{% elif certificatesigningrequest.verification == 0 %}
......
......@@ -32,7 +32,7 @@ urlpatterns = [
path("cert/<str:pickup_code>/", views.CertPickupView.as_view(),
name="cert-pickup"),
path("cert/<str:pickup_code>/<str:serial_number>/cert.pem",
path("cert/<str:pickup_code>/<str:cert_pk>/cert.pem",
views.cert_pickup_download,
name="cert-pickup-download"),
]
......@@ -89,12 +89,11 @@ class CertPickupView(DetailView):
template_name = "owlca/certificate_pickup.html"
model = models.CertificateSigningRequest
def cert_pickup_download(request, pickup_code, serial_number):
def cert_pickup_download(request, pickup_code, cert_pk):
csr = get_object_or_404(models.CertificateSigningRequest,
pickup_code=pickup_code)
try:
bin_serial = bytes.fromhex(serial_number)
cert = csr.certificates.get(serial_number=bin_serial)
cert = csr.certificates.get(pk=cert_pk)
except (ValueError, models.Certificate.DoesNotExist) as e:
raise Http404()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment