diff options
Diffstat (limited to 'rpkid/rpki/gui/app/views.py')
-rw-r--r-- | rpkid/rpki/gui/app/views.py | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/rpkid/rpki/gui/app/views.py b/rpkid/rpki/gui/app/views.py index 759da48e..70579871 100644 --- a/rpkid/rpki/gui/app/views.py +++ b/rpkid/rpki/gui/app/views.py @@ -34,7 +34,7 @@ from django.utils.http import urlquote from django import http from django.core.urlresolvers import reverse from django.contrib.auth.models import User -from django.views.generic import DetailView +from django.views.generic import DetailView, ListView from django.core.paginator import Paginator from django.forms.formsets import formset_factory, BaseFormSet import django.db.models @@ -1248,3 +1248,22 @@ def user_edit(request, pk): 'form_title': 'Edit User: ' + user.username, 'cancel_url': reverse(user_list) }) + + +class AlertListView(ListView): + def get_queryset(self, **kwargs): + conf = self.request.session['handle'] + return conf.alerts.all() + + +class AlertDetailView(DetailView): + def get_queryset(self, **kwargs): + conf = self.request.session['handle'] + return conf.alerts.all() + + def get_object(self, **kwargs): + obj = super(AlertDetailView, self).get_object(**kwargs) + # mark alert as read by the user + obj.seen = True + obj.save() + return obj |