diff --git a/alliance_auth/urls.py b/alliance_auth/urls.py index 5325ea52..6f08c93f 100755 --- a/alliance_auth/urls.py +++ b/alliance_auth/urls.py @@ -189,4 +189,5 @@ urlpatterns = patterns('', # Notifications url(r'^notifications/$', 'notifications.views.notification_list', name='auth_notification_list'), url(r'^notifications/(\w+)/$', 'notifications.views.notification_view', name='auth_notification_view'), + url(r'^remove_notifications/(\w+)', 'notifications.views.remove_notification', name='auth_remove_notification'), ) diff --git a/notifications/views.py b/notifications/views.py index 7fa53a48..98ecf5a8 100644 --- a/notifications/views.py +++ b/notifications/views.py @@ -29,3 +29,14 @@ def notification_view(request, notif_id): else: logger.warn("User %s not authorized to view notif_id %s belonging to user %s" % (request.user, notif_id, notif.user)) return redirect('auth_notification_list') + +@login_required +def remove_notification(request, notif_id): + logger.debug("remove notification called by user %s for notif_id %s" % (request.user, notif_id)) + if Notification.objects.filter(id=notif_id).exists(): + notif = get_object_or_404(Notification, pk=notif_id) + notif.delete() + logger.info("Deleting notif id %s by user %s" % (notif_id, request.user)) + else: + logger.error("Unable to delete notif id %s for user %s - notif matching id not found." % (notif_id, request.user)) + return redirect('auth_notification_list') \ No newline at end of file diff --git a/stock/templates/registered/notification_list.html b/stock/templates/registered/notification_list.html index ab487db4..153884c4 100644 --- a/stock/templates/registered/notification_list.html +++ b/stock/templates/registered/notification_list.html @@ -33,6 +33,11 @@ + + + {% endfor %} @@ -59,6 +64,11 @@ + + + {% endfor %}