diff --git a/src/plainui/views/badges.py b/src/plainui/views/badges.py index b83b86f38188329d5e13077c1a51024feb034cc6..9ec8dd7d431460d5497bcdfcbced2a004052a456 100644 --- a/src/plainui/views/badges.py +++ b/src/plainui/views/badges.py @@ -107,9 +107,12 @@ class RedeemTokenDetailView(ConferenceRequiredMixin, DetailView): context_object_name = 'token' def get_context_data(self, **kwargs: Any) -> dict[str, Any]: + # Regenerate the qr code if needed + if self.object.qr_full is None: + self.object.save() return { **super().get_context_data(**kwargs), - 'token_svg': self.object.qr_full.read().decode('utf-8') if selb.object.qr_full else None, + 'token_svg': self.object.qr_full.read().decode('utf-8') if self.object.qr_full else None, 'conf': self.conf, }