Esempio n. 1
0
def my_funfic_page(request):
    c = get_common_context(request)
    c['title'] = u'Мои фанфики'
    funfics = Work.get_by_author(request.user)
    c['funfics_during'] = funfics.filter(status='during')
    c['funfics_frozen'] = funfics.filter(status='frozen')
    c['funfics_done'] = funfics.filter(status='done')
    return render_to_response('cabinet/my_funfic.html', c, context_instance=RequestContext(request))
Esempio n. 2
0
def my_page_page(request):
    c = get_common_context(request)
    c['title'] = u'Личная страница'
    c['fun_count'] = Work.objects.filter(author=request.user).count()
    c['collab_count'] = request.user.collaborator.all().count()
    c['comm_count'] = Comment.objects.filter(user=request.user).count()
    funfics = Work.get_by_author(request.user)
    c['funfics_by_date'] = funfics.order_by('-last_editing_time')[:FUNCICS_COUNT_ON_PAGE]
    c['funfics_by_vizits'] = funfics.order_by('-vizits')[:FUNCICS_COUNT_ON_PAGE]
    c['funfics_by_comments'] = funfics.order_by('-commetns')[:FUNCICS_COUNT_ON_PAGE]
    c['funfics_by_rating'] = funfics.order_by('-mark')[:FUNCICS_COUNT_ON_PAGE]
    return render_to_response('cabinet/my_page.html', c, context_instance=RequestContext(request))
Esempio n. 3
0
def user_page(request, user_id):
    c = get_common_context(request)
    c['u'] = User.objects.get(id=user_id)
    c['u_profile'] = c['u'].get_profile
    if request.user.is_authenticated():
        c['subscribed'] = Subscribe.has_subsribe(request.user, c['u'])
        c['is_me'] = (request.user == c['u'])
        c['fun_count'] = Work.objects.filter(author=request.user).count()
        c['collab_count'] = request.user.collaborator.all().count()
        c['comm_count'] = Comment.objects.filter(user=request.user).count()

    funfics = Work.get_by_author(c['u'])
    c['funfics_by_date'] = funfics.order_by('-last_editing_time')[:FUNCICS_COUNT_ON_PAGE]
    c['funfics_by_vizits'] = funfics.order_by('-vizits')[:FUNCICS_COUNT_ON_PAGE]
    c['funfics_by_comments'] = funfics.order_by('-commetns')[:FUNCICS_COUNT_ON_PAGE]
    c['funfics_by_rating'] = funfics.order_by('-mark')[:FUNCICS_COUNT_ON_PAGE]

    c['title'] = u'Автор - %s' %  c['u'].get_profile().nick
    c['num_loop'] = ['#']+[i for i in range(10)]
    c['eng_loop'] = [chr(i) for i in xrange(ord('A'), ord('Z'))]
    c['rus_loop'] = [unichr(i) for i in xrange(ord(u'А'), ord(u'Я'))]
    return render_to_response('new_user.html', c, context_instance=RequestContext(request))
Esempio n. 4
0
def statistics_page(request):
    import datetime
    c = get_common_context(request)
    c['title'] = u'Статистика аккаунта'
    if request.method == 'POST':
        try:
            date_from = datetime.datetime.strptime(request.POST.get('date_from', ''),'%d.%m.%Y')
            date_to = datetime.datetime.strptime(request.POST.get('date_to', ''),'%d.%m.%Y')
        except:
            messages.error(request, u'Необходимо выбрать даты')
            return HttpResponseRedirect('/cabinet/statistics/')
        if date_from > date_to:
            dd = date_from
            date_from = date_to
            date_to = dd
        funfics = Work.get_by_author(request.user)
        c['date_from'] = date_from.strftime('%d.%m.%Y')
        c['date_to'] = date_to.strftime('%d.%m.%Y')
        td = datetime.timedelta(days=1)
        result = []
        curr = date_from
        while curr <= date_to:
            stat = []
            for f in funfics:
                print curr, f.id, Review.get_count_by_work_date_range(f, curr, curr+td)
                curr_stat = {
                                'funfic': f,
                                'reviews': Review.get_count_by_work_date_range(f, curr, curr+td),
                                'comments': Comment.get_count_by_work_date_range(f, curr, curr+td),
                                'bookmarks': Bookmark.get_count_by_work_date_range(f, curr, curr+td),
                             }
                curr_stat.update(Rating.get_count_by_work_date_range(f, curr, curr+td))
                stat.append(curr_stat)
            result.append((curr.date(), stat))
            curr = curr + td
        c['statistics'] = result
    return render_to_response('cabinet/statistics.html', c, context_instance=RequestContext(request))
Esempio n. 5
0
def history_page(request):
    c = get_common_context(request)
    c['title'] = u'История изменений'
    c['my_works'] = Work.get_by_author(request.user)
    c['collab_works'] = request.user.collaborator.all()
    return render_to_response('cabinet/history.html', c, context_instance=RequestContext(request))