Merge pull request #17930 from edx/bexline/sso_id_verification2
ENT-945 Apply logic for taking into account SSOVerifications
This commit is contained in:
@@ -5,7 +5,7 @@ from django.contrib.auth.models import User
|
||||
from django.utils.timezone import now
|
||||
from rest_framework import serializers
|
||||
|
||||
from lms.djangoapps.verify_student.models import SoftwareSecurePhotoVerification
|
||||
from lms.djangoapps.verify_student.models import IDVerificationAggregate
|
||||
|
||||
from .models import UserPreference
|
||||
|
||||
@@ -94,9 +94,9 @@ class CountryTimeZoneSerializer(serializers.Serializer): # pylint: disable=abst
|
||||
description = serializers.CharField()
|
||||
|
||||
|
||||
class SoftwareSecurePhotoVerificationSerializer(serializers.ModelSerializer):
|
||||
class IDVerificationAggregateSerializer(serializers.ModelSerializer):
|
||||
"""
|
||||
Serializer that generates a representation of a user's photo verification status.
|
||||
Serializer that generates a representation of a user's ID verification status.
|
||||
"""
|
||||
is_verified = serializers.SerializerMethodField()
|
||||
|
||||
@@ -108,4 +108,4 @@ class SoftwareSecurePhotoVerificationSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta(object):
|
||||
fields = ('status', 'expiration_datetime', 'is_verified')
|
||||
model = SoftwareSecurePhotoVerification
|
||||
model = IDVerificationAggregate
|
||||
|
||||
@@ -14,7 +14,7 @@ from .accounts.views import (
|
||||
DeactivateLogoutView
|
||||
)
|
||||
from .preferences.views import PreferencesDetailView, PreferencesView
|
||||
from .verification_api.views import PhotoVerificationStatusView
|
||||
from .verification_api.views import IDVerificationStatusView
|
||||
from .validation.views import RegistrationValidationView
|
||||
|
||||
ME = AccountViewSet.as_view({
|
||||
@@ -81,7 +81,7 @@ urlpatterns = [
|
||||
),
|
||||
url(
|
||||
r'^v1/accounts/{}/verification_status/$'.format(settings.USERNAME_PATTERN),
|
||||
PhotoVerificationStatusView.as_view(),
|
||||
IDVerificationStatusView.as_view(),
|
||||
name='verification_status'
|
||||
),
|
||||
url(
|
||||
|
||||
@@ -5,20 +5,20 @@ from rest_framework.authentication import SessionAuthentication
|
||||
from rest_framework.generics import RetrieveAPIView
|
||||
from rest_framework_oauth.authentication import OAuth2Authentication
|
||||
|
||||
from lms.djangoapps.verify_student.models import SoftwareSecurePhotoVerification
|
||||
from openedx.core.djangoapps.user_api.serializers import SoftwareSecurePhotoVerificationSerializer
|
||||
from lms.djangoapps.verify_student.models import IDVerificationAggregate
|
||||
from openedx.core.djangoapps.user_api.serializers import IDVerificationAggregateSerializer
|
||||
from openedx.core.lib.api.permissions import IsStaffOrOwner
|
||||
|
||||
|
||||
class PhotoVerificationStatusView(RetrieveAPIView):
|
||||
""" PhotoVerificationStatus detail endpoint. """
|
||||
class IDVerificationStatusView(RetrieveAPIView):
|
||||
""" IDVerificationStatus detail endpoint. """
|
||||
authentication_classes = (JwtAuthentication, OAuth2Authentication, SessionAuthentication,)
|
||||
permission_classes = (IsStaffOrOwner,)
|
||||
serializer_class = SoftwareSecurePhotoVerificationSerializer
|
||||
serializer_class = IDVerificationAggregateSerializer
|
||||
|
||||
def get_object(self):
|
||||
username = self.kwargs['username']
|
||||
verifications = SoftwareSecurePhotoVerification.objects.filter(user__username=username).order_by('-updated_at')
|
||||
verifications = IDVerificationAggregate.objects.filter(user__username=username).order_by('-updated_at')
|
||||
|
||||
if len(verifications) > 0:
|
||||
verification = verifications[0]
|
||||
|
||||
Reference in New Issue
Block a user