Fix checkin QR code URL
Use site URL in generated emails instead of hard coded domain.
This commit is contained in:
parent
ffd852196b
commit
fe6447acae
1 changed files with 19 additions and 6 deletions
25
vendor/regidesk/regidesk/views.py
vendored
25
vendor/regidesk/regidesk/views.py
vendored
|
@ -10,6 +10,7 @@ from django.contrib import messages
|
||||||
from django.contrib.auth.decorators import permission_required, user_passes_test, login_required
|
from django.contrib.auth.decorators import permission_required, user_passes_test, login_required
|
||||||
from django.contrib.auth.mixins import PermissionRequiredMixin
|
from django.contrib.auth.mixins import PermissionRequiredMixin
|
||||||
from django.contrib.auth.models import User, Group
|
from django.contrib.auth.models import User, Group
|
||||||
|
from django.contrib.sites.models import Site
|
||||||
from django.db import transaction
|
from django.db import transaction
|
||||||
from django.db.models import F, Q
|
from django.db.models import F, Q
|
||||||
from django.db.models import Count, Max, Sum
|
from django.db.models import Count, Max, Sum
|
||||||
|
@ -126,6 +127,22 @@ def checkin_png(request, checkin_code):
|
||||||
|
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
|
||||||
|
def checkin_qrcode_url(code):
|
||||||
|
""" Generate the QR code URL for the current site.
|
||||||
|
eg. https://rego.linux.conf.au/checkin/<code>.png
|
||||||
|
"""
|
||||||
|
|
||||||
|
# Cannot use build_absolute_uri as external URL is not known in docker
|
||||||
|
# qrcode_url = request.build_absolute_uri(
|
||||||
|
# reverse("regidesk:checkin_png", args=[code]))
|
||||||
|
|
||||||
|
current_site = Site.objects.get_current()
|
||||||
|
qrcode_url = "https://{}{}".format(current_site,
|
||||||
|
reverse("regidesk:checkin_png", args=[code]))
|
||||||
|
return qrcode_url
|
||||||
|
|
||||||
|
|
||||||
@permission_required("regidesk.send_boarding_pass")
|
@permission_required("regidesk.send_boarding_pass")
|
||||||
def boarding_prepare(request):
|
def boarding_prepare(request):
|
||||||
|
|
||||||
|
@ -161,9 +178,7 @@ def boarding_prepare(request):
|
||||||
"boardingpass": sample_checkin.boardingpass,
|
"boardingpass": sample_checkin.boardingpass,
|
||||||
"code": sample_checkin.code,
|
"code": sample_checkin.code,
|
||||||
"qrcode": '<img src="data:image/png;base64,' + sample_checkin.qrcode + '"/>',
|
"qrcode": '<img src="data:image/png;base64,' + sample_checkin.qrcode + '"/>',
|
||||||
# "qrcode_url": request.build_absolute_uri(
|
"qrcode_url": checkin_qrcode_url(sample_checkin.code),
|
||||||
# reverse("regidesk:checkin_png", args=[sample_checkin.code])),
|
|
||||||
"qrcode_url": "https://rego.linux.conf.au/checkin/" + sample_checkin.code + ".png"
|
|
||||||
}
|
}
|
||||||
ctx = Context(sample_ctx)
|
ctx = Context(sample_ctx)
|
||||||
ctx["invoices"] = invoices(ctx)
|
ctx["invoices"] = invoices(ctx)
|
||||||
|
@ -205,9 +220,7 @@ def prepare_boarding_pass(user, template, attendee=None):
|
||||||
"checkin": user.checkin,
|
"checkin": user.checkin,
|
||||||
"code": user.checkin.code,
|
"code": user.checkin.code,
|
||||||
"qrcode": user.checkin.qrcode,
|
"qrcode": user.checkin.qrcode,
|
||||||
# "qrcode_url": request.build_absolute_uri(
|
"qrcode_url": checkin_qrcode_url(user.checkin.code),
|
||||||
# reverse("regidesk:checkin_png", args=[user.checkin.code])),
|
|
||||||
"qrcode_url": "https://rego.linux.conf.au/checkin/" + user.checkin.code + ".png"
|
|
||||||
}
|
}
|
||||||
ctx = Context(ctx)
|
ctx = Context(ctx)
|
||||||
ctx["invoices"] = invoices(ctx)
|
ctx["invoices"] = invoices(ctx)
|
||||||
|
|
Loading…
Reference in a new issue