diff --git a/accounts/api/serializers.py b/accounts/api/serializers.py index cf60003..fcfff7d 100644 --- a/accounts/api/serializers.py +++ b/accounts/api/serializers.py @@ -4,6 +4,7 @@ from django.contrib.auth.hashers import make_password from rest_framework import serializers from accounts.models import ( + AppVersion, IAmPrincipal, IAmPrincipalType, # IAmPrincipalKYCDetails, @@ -337,3 +338,14 @@ class ProfilePhotoSerializer(serializers.ModelSerializer): class PlayerIDSerializer(serializers.Serializer): player_id = serializers.CharField(max_length=255) + + +class AppVersionSerializer(serializers.ModelSerializer): + class Meta: + model = AppVersion + fields = [ + "app_type", + "version", + "force_upgrade", + "recommend_upgrade", + ] \ No newline at end of file diff --git a/accounts/api/views.py b/accounts/api/views.py index b745fbf..0c7b59e 100644 --- a/accounts/api/views.py +++ b/accounts/api/views.py @@ -36,6 +36,7 @@ from accounts.resource_action import ( ) from .serializers import ( + AppVersionSerializer, EmailSerializers, # RegistrationPasswordSerializer, # PhoneSerializer, @@ -956,28 +957,16 @@ class SoftDeletePrincipalAPIView(APIView): class VersionCheck(APIView): authentication_classes = [] permission_classes = [] + model = AppVersion def get(self, request, *args, **kwargs): - app_version = request.GET.get("appVersion", None) - app_type = request.GET.get("type", None) - - print(f"app verisino {app_version} {app_type}") + + device_type = request.GET.get('type') + if not device_type: + return ApiResponse.error(message=constants.FAILURE, errors="device type is required") # Query the database to retrieve the upgrade flags based on the app version - try: - version = AppVersion.objects.get(version=app_version, app_type=app_type) - except AppVersion.DoesNotExist: - print("does not exist") - version = None + version = self.model.objects.filter(app_type=device_type).last() + version_data = AppVersionSerializer(version) - if version: - upgrade_flags = { - "forceUpgrade": version.force_upgrade, - "recommendUpgrade": version.recommend_upgrade, - } - else: - upgrade_flags = { - "forceUpgrade": False, - "recommendUpgrade": False, - } - return ApiResponse.success(message=constants.SUCCESS, data=upgrade_flags) + return ApiResponse.success(message=constants.SUCCESS, data=version_data.data) \ No newline at end of file diff --git a/manage_events/api/serializers.py b/manage_events/api/serializers.py index c55260e..297a914 100644 --- a/manage_events/api/serializers.py +++ b/manage_events/api/serializers.py @@ -1,5 +1,5 @@ from rest_framework import serializers -from taggit.serializers import TagListSerializerField +from taggit_serializer.serializers import TagListSerializerField from accounts.models import IAmPrincipalLocation from manage_cms.api.serializers import TagSerializer from taggit.models import Tag diff --git a/requirements.txt b/requirements.txt index 94dd958..08ccda6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -17,7 +17,6 @@ daphne==4.1.0 defusedxml==0.7.1 Django==5.0.2 django-allauth==0.61.1 -django-channels==0.7.0 django-cors-headers==4.3.1 django-debug-toolbar==4.3.0 django-environ==0.11.2