[python] views.py

Viewer

copydownloadembedprintName: views.py
  1. from django.http import HttpResponseRedirect
  2. from django.urls import reverse
  3. from notifications.utils import id2slug, slug2id
  4. from django.shortcuts import get_object_or_404, redirect
  5. from notifications.models import Notification
  6. import Fusion.settings as FusionIIIT_settings
  7. def delete(request, slug=None):
  8.     notification_id = slug2id(slug)
  9.     notification = get_object_or_404(
  10.         Notification, recipient=request.user, id=notification_id)
  11.     notification.delete()
  12.     previous_page = request.META.get('HTTP_REFERER', '/')
  13.     # Redirect to the previous page or the home page if the referrer is not available
  14.     return HttpResponseRedirect(previous_page)
  15.     # return HttpResponseRedirect('dashboard/')
  16. def mark_as_read_and_redirect(request, slug=None):
  17.     notification_id = slug2id(slug)
  18.     notification = get_object_or_404(
  19.         Notification, recipient=request.user, id=notification_id)
  20.     notification.mark_as_read()
  21.  
  22.     # This conditional statement is True only in
  23.     # case of complaint_module and course_management_module.
  24.     # return redirect('notifications:all')
  25.  
  26.     if(notification.data['module'] == 'Complaint System'):     
  27.         complaint_id=notification.description
  28.         return HttpResponseRedirect(reverse(notification.data['url'],kwargs={'detailcomp_id1':complaint_id}))
  29.     elif(notification.data['module'] == 'Course Management'):
  30.         course_code = notification.data['course_code']
  31.         version = notification.data['version']
  32.         return HttpResponseRedirect(reverse(notification.data['url'],kwargs={'course_code': course_code,'version': version}))
  33.     else:
  34.         return HttpResponseRedirect(reverse(notification.data['url']))

Editor

You can edit this paste and save as new:


File Description
  • views.py
  • Paste Code
  • 24 Apr-2024
  • 1.67 Kb
You can Share it: