Ejemplo n.º 1
0
def feed(request):
    current = 'feed'
    title = u'%s / 动态' % (request.user.username)
    feedAction = FeedAction()
    feedAction.set_user_position(request.user.id, PositionKey.FEED)
    recently_timestamp = feedAction.get_recently_timestamp(
        request.user.id, AttrKey.RECENTLY_TIME_FEED)
    raw_watch_users = feedAction.get_watch_users(request.user.id, 0, 100)
    watch_user_ids = [int(x[0]) for x in raw_watch_users]
    watch_user_ids.append(request.user.id)
    raw_watch_repos = feedAction.get_watch_repos(request.user.id, 0, 100)
    watch_repo_ids = [int(x[0]) for x in raw_watch_repos]

    feeds_as_json = multi_feeds_as_json(request, feedAction, watch_user_ids,
                                        watch_repo_ids)
    feedAction.set_recently_timestamp_now(request.user.id,
                                          AttrKey.RECENTLY_TIME_FEED)
    response_dictionary = {
        'current': current,
        'title': title,
        'feeds_as_json': feeds_as_json,
        'recently_timestamp': recently_timestamp
    }
    return render_to_response('user/feed.html',
                              response_dictionary,
                              context_instance=RequestContext(request))
Ejemplo n.º 2
0
def issues(request, page):
    current = 'issues'
    title = u'%s / 问题' % (request.user.username)
    feedAction = FeedAction()
    feedAction.set_user_position(request.user.id, PositionKey.ISSUES)
    recently_timestamp = feedAction.get_recently_timestamp(
        request.user.id, AttrKey.RECENTLY_TIME_ISSUES)
    page = int(page)
    page_size = 50
    offset = page * page_size
    row_count = page_size + 1
    issues = IssueManager.list_assigned_issues(request.user.id, 'modify_time',
                                               offset, row_count)

    hasPre = False
    hasNext = False
    if page > 0:
        hasPre = True
    if len(issues) > page_size:
        hasNext = True
        issues.pop()
    feedAction.set_recently_timestamp_now(request.user.id,
                                          AttrKey.RECENTLY_TIME_ISSUES)
    response_dictionary = {
        'current': current,
        'title': title,
        'issues': issues,
        'page': page,
        'hasPre': hasPre,
        'hasNext': hasNext,
        'recently_timestamp': recently_timestamp
    }
    return render_to_response('user/issues.html',
                              response_dictionary,
                              context_instance=RequestContext(request))
Ejemplo n.º 3
0
def timeline(request):
    current = 'timeline'
    title = u'%s / 我的动态' % (request.user.username)
    feedAction = FeedAction()
    feedAction.set_user_position(request.user.id, PositionKey.TIMELINE)
    recently_timestamp = feedAction.get_recently_timestamp(
        request.user.id, AttrKey.RECENTLY_TIME_TIMELINE)
    pri_user_feeds = feedAction.get_pri_user_feeds(request.user.id, 0, 100)
    pub_user_feeds = feedAction.get_pub_user_feeds(request.user.id, 0, 100)
    feeds_as_json = get_feeds_as_json(request, pri_user_feeds, pub_user_feeds)
    feedAction.set_recently_timestamp_now(request.user.id,
                                          AttrKey.RECENTLY_TIME_TIMELINE)
    response_dictionary = {
        'current': current,
        'title': title,
        'feeds_as_json': feeds_as_json,
        'recently_timestamp': recently_timestamp
    }
    return render_to_response('user/timeline.html',
                              response_dictionary,
                              context_instance=RequestContext(request))