diff options
author | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2017-12-15 14:35:40 -0500 |
---|---|---|
committer | Sawyer Bergeron <sbergeron@iol.unh.edu> | 2018-01-02 22:29:22 +0000 |
commit | eb7cb88c62feae0b412f4ecc9a5e62c3f7bdc138 (patch) | |
tree | 18dcaf0f8e2fe6204a506ae51607c46219f4dcb6 /src/api | |
parent | ee1caa30008635717943bfdfecc692cde052a461 (diff) |
Implement Notification Framework with Initial Email Support
JIRA: None
Notification/notifier objects are now created with title,
content, sender, associated resource, and recipient and there is
now support for emails at the very least to be sent as notifications.
Change-Id: I456cf0e901d9a1e2a1e7d187dcc03d28fca003fb
Signed-off-by: Sawyer Bergeron <sbergeron@iol.unh.edu>
Diffstat (limited to 'src/api')
-rw-r--r-- | src/api/serializers.py | 6 | ||||
-rw-r--r-- | src/api/urls.py | 3 | ||||
-rw-r--r-- | src/api/views.py | 5 |
3 files changed, 12 insertions, 2 deletions
diff --git a/src/api/serializers.py b/src/api/serializers.py index 4478175..dc79d9d 100644 --- a/src/api/serializers.py +++ b/src/api/serializers.py @@ -10,6 +10,7 @@ from rest_framework import serializers +from notifier.models import Notifier from booking.models import Booking from dashboard.models import Server, Resource, ResourceStatus @@ -37,3 +38,8 @@ class ResourceStatusSerializer(serializers.ModelSerializer): class Meta: model = ResourceStatus fields = ('id', 'resource', 'timestamp','type', 'title', 'content') + +class NotifierSerializer(serializers.ModelSerializer): + class Meta: + model = Notifier + fields = ('id', 'title', 'content', 'user', 'sender', 'message_type', 'msg_sent') diff --git a/src/api/urls.py b/src/api/urls.py index a4a4b2f..71cd3ef 100644 --- a/src/api/urls.py +++ b/src/api/urls.py @@ -33,8 +33,9 @@ router.register(r'resources', ResourceViewSet) router.register(r'servers', ServerViewSet) router.register(r'bookings', BookingViewSet) router.register(r'resource_status', ResourceStatusViewSet) +router.register(r'notifier', NotifierViewSet) urlpatterns = [ url(r'^', include(router.urls)), url(r'^token$', GenerateTokenView.as_view(), name='generate_token'), -]
\ No newline at end of file +] diff --git a/src/api/views.py b/src/api/views.py index 84fa1b5..c16d57d 100644 --- a/src/api/views.py +++ b/src/api/views.py @@ -8,7 +8,7 @@ ############################################################################## -from django.contrib.auth.decorators import login_required +from django.contrib.auth.decorators import login_required, user_passes_test from django.shortcuts import redirect from django.utils.decorators import method_decorator from django.views import View @@ -41,6 +41,9 @@ class ResourceStatusViewSet(viewsets.ModelViewSet): queryset = ResourceStatus.objects.all() serializer_class = ResourceStatusSerializer +class NotifierViewSet(viewsets.ModelViewSet): + queryset = Notifier.objects.none() + serializer_class = NotifierSerializer @method_decorator(login_required, name='dispatch') class GenerateTokenView(View): |