Exemplo n.º 1
0
def funfic_main_page(request, funfic_id):
    c = get_common_context(request)
    if request.method == 'POST':
        if request.POST.get('action') == 'rating':
            if request.user.is_authenticated():
                try:
                    mark = int(request.POST.get('mark'))
                    mark_st = int(request.POST.get('mark_st'))
                    mark_sz = int(request.POST.get('mark_sz'))
                    mark_pr = int(request.POST.get('mark_pr'))
                    Rating.add(request.user, Work.get_by_id(funfic_id), mark, mark_st, mark_sz, mark_pr)
                    messages.success(request, u'Рейтинг успешно изменен.')
                except:
                    messages.error(request, u'Введите корректные значения.')
                return HttpResponseRedirect('/funfic/%s/' % funfic_id)
            else:
                messages.error(request, u'Голосовать могут только авторизованные пользователи.')

    c['f'] = Work.get_by_id(funfic_id)
    c['funart'] = FunArt.get_by_work(c['f'])[:2]
    c['content'] = WorkPart.get_work_content(c['f'])
    c['f'].inc_vizits()
    c['its_mine'] = (c['f'].author == request.user) or (c['f'].is_collaborator(request.user)) if request.user.is_authenticated() else False
    c['recommend'] = Work.objects.all().order_by('-mark')[0:5]
    return render_to_response('funfic_main.html', c, context_instance=RequestContext(request))
Exemplo n.º 2
0
def funfic_part_page(request, funfic_id, part_id):
    c = get_common_context(request)
    c['f'] = Work.get_by_id(funfic_id)
    c['f'].inc_vizits()
    if request.method == 'POST':
        comment = request.POST.get('comment', None)
        if comment:
            if request.user.is_authenticated():
                Comment(user=request.user,
                        work_part=WorkPart.get_by_id(part_id),
                        text=comment).save()
                messages.success(request, u'Ваш комментарий успешно добавлен.')
                return HttpResponseRedirect('/funfic/%s/%s/' % (funfic_id, part_id))
            else:
                messages.error(request, u'Для выполнения этого действия необходимо авторизироваться.')

    c['funart'] = FunArt.get_by_work(c['f'])[:2]
    c['content'] = WorkPart.get_work_content(c['f'])
    c['part'] = WorkPart.get_by_id(part_id)
    c['its_mine'] = (c['f'].author == request.user) or (c['f'].is_collaborator(request.user))
    return render_to_response('funfic_part.html', c, context_instance=RequestContext(request))