diff --git a/passbook/stages/otp_static/api.py b/passbook/stages/otp_static/api.py index fa706cb75..b00d39a27 100644 --- a/passbook/stages/otp_static/api.py +++ b/passbook/stages/otp_static/api.py @@ -11,7 +11,7 @@ class OTPStaticStageSerializer(ModelSerializer): class Meta: model = OTPStaticStage - fields = ["pk", "name", "token_count"] + fields = ["pk", "name", "configure_flow", "token_count"] class OTPStaticStageViewSet(ModelViewSet): diff --git a/passbook/stages/otp_static/forms.py b/passbook/stages/otp_static/forms.py index 637f87770..684e25927 100644 --- a/passbook/stages/otp_static/forms.py +++ b/passbook/stages/otp_static/forms.py @@ -32,7 +32,7 @@ class OTPStaticStageForm(forms.ModelForm): class Meta: model = OTPStaticStage - fields = ["name", "token_count"] + fields = ["name", "configure_flow", "token_count"] widgets = { "name": forms.TextInput(), diff --git a/passbook/stages/otp_static/templates/stages/otp_static/user_settings.html b/passbook/stages/otp_static/templates/stages/otp_static/user_settings.html index 66081c593..8e557e391 100644 --- a/passbook/stages/otp_static/templates/stages/otp_static/user_settings.html +++ b/passbook/stages/otp_static/templates/stages/otp_static/user_settings.html @@ -26,7 +26,7 @@ {% if not state %} {% if stage.configure_flow %} - {% trans "Enable Static Tokens" %} + {% trans "Enable Static Tokens" %} {% endif %} {% else %} {% trans "Disable Static Tokens" %} diff --git a/passbook/stages/otp_static/views.py b/passbook/stages/otp_static/views.py index b8b1436eb..9957bfa41 100644 --- a/passbook/stages/otp_static/views.py +++ b/passbook/stages/otp_static/views.py @@ -2,12 +2,13 @@ from django.contrib import messages from django.contrib.auth.mixins import LoginRequiredMixin from django.http import HttpRequest, HttpResponse -from django.shortcuts import redirect +from django.shortcuts import get_object_or_404, redirect from django.views import View from django.views.generic import TemplateView from django_otp.plugins.otp_static.models import StaticDevice, StaticToken from passbook.audit.models import Event +from passbook.stages.otp_static.models import OTPStaticStage class UserSettingsView(LoginRequiredMixin, TemplateView): @@ -18,6 +19,8 @@ class UserSettingsView(LoginRequiredMixin, TemplateView): # TODO: Check if OTP Stage exists and applies to user def get_context_data(self, **kwargs): kwargs = super().get_context_data(**kwargs) + stage = get_object_or_404(OTPStaticStage, pk=self.kwargs["stage_uuid"]) + kwargs["stage"] = stage static_devices = StaticDevice.objects.filter( user=self.request.user, confirmed=True )