profile/views.py
changeset 49 d24b4a7147d2
parent 44 69d1c4b99503
child 50 869a9ab7e2df
equal deleted inserted replaced
48:3cfd74f9363e 49:d24b4a7147d2
     8 from pytask.profile.forms import EditProfileForm
     8 from pytask.profile.forms import EditProfileForm
     9 from pytask.profile.utils import get_notification
     9 from pytask.profile.utils import get_notification
    10 
    10 
    11 @login_required
    11 @login_required
    12 def view_profile(request):
    12 def view_profile(request):
       
    13     """ Display the profile information.
       
    14     """
    13 
    15 
    14     user = request.user
    16     user = request.user
    15     profile = user.get_profile()
    17     profile = user.get_profile()
    16 
    18 
    17     context = {"user": user,
    19     context = {"user": user,
    19               }
    21               }
    20     return render_to_response("profile/view.html", context)
    22     return render_to_response("profile/view.html", context)
    21 
    23 
    22 @login_required
    24 @login_required
    23 def edit_profile(request):
    25 def edit_profile(request):
       
    26     """ Make only a few fields editable.
       
    27     """
    24 
    28 
    25     user = request.user
    29     user = request.user
    26     profile = user.get_profile()
    30     profile = user.get_profile()
    27 
    31 
    28     context = {"user": user,
    32     context = {"user": user,
    84                'older':older,
    88                'older':older,
    85                'oldest':oldest,
    89                'oldest':oldest,
    86               }
    90               }
    87 
    91 
    88     return render_to_response('profile/view_notification.html', context)
    92     return render_to_response('profile/view_notification.html', context)
       
    93 
       
    94 @login_required
       
    95 def delete_notification(request, nid):
       
    96     """ check if the user owns the notification and delete it.
       
    97     """
       
    98 
       
    99     user = request.user
       
   100     newest, newer, notification, older, oldest = get_notification(nid, user)
       
   101 
       
   102     if not notification:
       
   103         raise Http404
       
   104 
       
   105     notification.is_deleted = True
       
   106     notification.save()
       
   107 
       
   108     context = {'user':user,
       
   109                'notification':notification,
       
   110                'newest':newest,
       
   111                'newer':newer,
       
   112                'older':older,
       
   113                'oldest':oldest,
       
   114               }
       
   115     redirect_url = "/profile/notf/" + \
       
   116             "view/nid=%s"%older.uniq_key if older else "browse"
       
   117 
       
   118     return redirect(redirect_url)
       
   119 
       
   120 @login_required
       
   121 def unread_notification(request, nid)
       
   122 
       
   123     """ check if the user owns the notification and delete it.
       
   124     """
       
   125 
       
   126     user = request.user
       
   127     newest, newer, notification, older, oldest = get_notification(nid, user)
       
   128 
       
   129     if not notification:
       
   130         raise Http404
       
   131 
       
   132     notification.is_read = False
       
   133     notification.save()
       
   134 
       
   135     context = {'user':user,
       
   136                'notification':notification,
       
   137                'newest':newest,
       
   138                'newer':newer,
       
   139                'older':older,
       
   140                'oldest':oldest,
       
   141               }
       
   142 
       
   143     redirect_url = "/profile/notf/" + \
       
   144             "view/nid=%s"%older.uniq_key if older else "browse"
       
   145 
       
   146     return redirect(redirect_url)