diff options
author | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2018-02-16 15:50:22 -0500 |
---|---|---|
committer | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2018-02-16 15:50:22 -0500 |
commit | 86cfa9015a8e09544bc7b1547ec329a567f4c66d (patch) | |
tree | 9cb4ca00753422a80456ad8e399d8a5162be0ca7 /src/api | |
parent | 2ca824214d135838a6258a02be5dd9b0037aa42f (diff) |
Expose Limited User Info Through API
Jira: PHAROS-362
Exposes info such as username and user email throught the API to facilitate
better backend integration
Change-Id: I8948f399000ffe41d5b75941f4a4195caaea91f4
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Diffstat (limited to 'src/api')
-rw-r--r-- | src/api/serializers.py | 7 | ||||
-rw-r--r-- | src/api/urls.py | 1 | ||||
-rw-r--r-- | src/api/views.py | 5 |
3 files changed, 13 insertions, 0 deletions
diff --git a/src/api/serializers.py b/src/api/serializers.py index 1cc621a..10e1975 100644 --- a/src/api/serializers.py +++ b/src/api/serializers.py @@ -10,6 +10,7 @@ from rest_framework import serializers +from account.models import UserProfile from notifier.models import Notifier from booking.models import Booking from dashboard.models import Server, Resource, ResourceStatus @@ -44,3 +45,9 @@ class NotifierSerializer(serializers.ModelSerializer): class Meta: model = Notifier fields = ('id', 'title', 'content', 'user', 'sender', 'message_type', 'msg_sent') + +class UserSerializer(serializers.ModelSerializer): + username = serializers.CharField(source='user.username') + class Meta: + model = UserProfile + fields = ('user', 'username', 'ssh_public_key', 'pgp_public_key', 'email_addr') diff --git a/src/api/urls.py b/src/api/urls.py index 71cd3ef..c2cd510 100644 --- a/src/api/urls.py +++ b/src/api/urls.py @@ -34,6 +34,7 @@ router.register(r'servers', ServerViewSet) router.register(r'bookings', BookingViewSet) router.register(r'resource_status', ResourceStatusViewSet) router.register(r'notifier', NotifierViewSet) +router.register(r'user', UserViewSet) urlpatterns = [ url(r'^', include(router.urls)), diff --git a/src/api/views.py b/src/api/views.py index c16d57d..b873ef1 100644 --- a/src/api/views.py +++ b/src/api/views.py @@ -16,6 +16,7 @@ from rest_framework import viewsets from rest_framework.authtoken.models import Token from api.serializers import * +from account.models import UserProfile from booking.models import Booking from dashboard.models import Resource, Server, ResourceStatus @@ -45,6 +46,10 @@ class NotifierViewSet(viewsets.ModelViewSet): queryset = Notifier.objects.none() serializer_class = NotifierSerializer +class UserViewSet(viewsets.ModelViewSet): + queryset = UserProfile.objects.all() + serializer_class = UserSerializer + @method_decorator(login_required, name='dispatch') class GenerateTokenView(View): def get(self, request, *args, **kwargs): |