コード例 #1
0
ファイル: views.py プロジェクト: hfercc/wboard
def delete(request, notification_id):
	kind = request.GET.get('kind','') or request.POST.get('kind','')
	if not kind:
		raise Http404	
	notification = utils.get_object_by_id(get_class(kind), notification_id)
	utils.verify_user(request, notification.receiver)
	notification.delete()
	return {}
コード例 #2
0
ファイル: views.py プロジェクト: hfercc/wboard
def detail(request, notification_id):
	kind = request.GET.get('kind','') or request.POST.get('kind','')
	if not kind:
		raise Http404
	notification = utils.get_object_by_id(get_class(kind), notification_id, method = request.method)
	notification.mark_read()
	utils.verify_user(request, notification.receiver)
	return {'notification': notification}
コード例 #3
0
ファイル: views.py プロジェクト: hfercc/wboard
def notifications_list(request):
	kind = request.GET.get('kind','') or request.POST.get('kind','')
	if kind == 'all':
		args = {}
	elif kind == 'unread':
		args = {'has_read': False}
	else:
		raise Http404
	print args
	objects = []
	for i in ('status', 'comment'):
		q = get_class(i).objects.notifications(request.user).filter(**args)
		if kind == 'all':
			utils.mark_read(q)
			common.kv.ChannelKV(request.user).send_unread()
		objects += q
	notifications = utils.paginate_to_dict(
			objects,
			request
	)
	return notifications