from django.shortcuts import render from rest_framework import (pagination, viewsets, status, generics, mixins) from rest_framework.decorators import action from rest_framework.response import Response from django.views.decorators.csrf import csrf_exempt # Create your views here. from rest_framework import viewsets, status from rest_framework.response import Response from .serializers import CreateJuniorSerializer from django.contrib.auth.models import User from rest_framework.permissions import IsAuthenticated from base.constants import GUARDIAN, JUNIOR, SUPERUSER from junior.models import Junior from guardian.models import Guardian from base.messages import ERROR_CODE, SUCCESS_CODE from account.utils import custom_response, custom_error_response class UpdateJuniorProfile(viewsets.ViewSet): serializer_class = CreateJuniorSerializer permission_classes = [IsAuthenticated] def create(self, request, *args, **kwargs): serializer = CreateJuniorSerializer(context={"user":request.user,"first_name":request.data.get('first_name', ''), "last_name": request.data.get('last_name',' ')}, data=request.data) if serializer.is_valid(): serializer.save() return custom_response(None, serializer.data, response_status=status.HTTP_200_OK) return custom_error_response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) class ValidateGuardianCode(viewsets.ViewSet): permission_classes = [IsAuthenticated] def list(self, request, *args, **kwargs): guardian_code = request.data.get('guardian_code') for code in guardian_code: guardian_data = Guardian.objects.filter(guardian_code=code).exists() if guardian_data: return custom_response(SUCCESS_CODE['3028'], response_status=status.HTTP_200_OK) else: return custom_error_response(ERROR_CODE["2022"], response_status=status.HTTP_400_BAD_REQUEST)