This commit is contained in:
Eugene Pankov
2021-06-28 09:32:13 +02:00
parent df108d9071
commit 6bd5aff8b7
9 changed files with 124 additions and 11 deletions

View File

@@ -9,7 +9,7 @@ from rest_framework.response import Response
from rest_framework.mixins import ListModelMixin, RetrieveModelMixin, UpdateModelMixin
from rest_framework.views import APIView
from rest_framework.viewsets import GenericViewSet, ModelViewSet
from rest_framework.serializers import ModelSerializer
from rest_framework.serializers import ModelSerializer, Serializer
from rest_framework_dataclasses.serializers import DataclassSerializer
from .models import Config, User
@@ -89,3 +89,17 @@ class LogoutView(APIView):
def post(self, request, format=None):
logout(request)
return Response(None)
class InstanceInfoSerializer(Serializer):
login_enabled = fields.BooleanField()
class InstanceInfoViewSet(RetrieveModelMixin, GenericViewSet):
queryset = '' # type: ignore
serializer_class = InstanceInfoSerializer
def get_object(self):
return {
'login_enabled': settings.ENABLE_LOGIN,
}

View File

@@ -13,6 +13,7 @@ router.register('api/1/versions', api.AppVersionViewSet, basename='app-versions'
urlpatterns = [
path('api/1/auth/logout', api.LogoutView.as_view()),
path('api/1/user', api.UserViewSet.as_view({'get': 'retrieve', 'put': 'update'})),
path('api/1/instance-info', api.InstanceInfoViewSet.as_view({'get': 'retrieve'})),
re_path('^(|login|app)$', views.IndexView.as_view()),