示例#1
0
文件: tests.py 项目: mkcode/badges
    def test_publish_badge(self):
        badge = badge_api.create_badge(*self.badge_values)

        badges = badge_api.get_published_badges()
        self.assertTrue(len(badges) == 0)
        badges = badge_api.get_user_draft_badges(badge['author_uri'])
        self.assertTrue(len(badges) == 1)

        badge_api.publish_badge(badge['uri'])
        self.assertRaises(Exception, badge_api.update_badge, [badge['uri']], {'title':'Updated title'})
        badges = badge_api.get_published_badges()
        self.assertTrue(len(badges) == 1)
        badges = badge_api.get_user_draft_badges(badge['uri'])
        self.assertTrue(len(badges) == 0)
示例#2
0
文件: views.py 项目: MHM5000/badges
def review(request):
    """
    This view shows a list of projects for a user that he/she can submit feedback on
    """

    user = request.session.get('user')
    projects = []

    if user:
        user_badges = badge_api.get_user_earned_badges(user['uri'])
        for badge in user_badges:
            projects += project_api.get_projects_ready_for_feedback(badge['uri'])

    badges = []
    feedback_list = []

    if len(projects) == 0:
        badges = badge_api.get_published_badges()
    else:
        for project in projects:
            feedback_list = project_api.get_project_feedback(project['uri'])
            fetch_resources(project, feedback_list)

    return render_to_response(
        'project/review.html', {
            'projects': map(fetch_resources, projects),
            'badges': map(fetch_badge_resources, badges)
        },
        context_instance=RequestContext(request)
    )
示例#3
0
def home(request):
    context = {}
    context['badges'] = map(fetch_badge_resources, badge_api.get_published_badges())[-5:]
    context['projects'] = map(fetch_project_resources, project_api.get_projects())[-10:]
    context['users'] = p2pu_user_api.get_users()[-20:]
    
    return render_to_response('landing/home.html', context, context_instance=RequestContext(request))
示例#4
0
文件: views.py 项目: NoriVicJr/badges
def browse_all_badges(request):

    badges = badge_api.get_published_badges()
    for badge in badges:
        fetch_badge_resources(badge)
    paginator = Paginator(badges, 10) # Show 10 badges per page

    page = request.GET.get('page')
    try:
        badges = paginator.page(page)
    except PageNotAnInteger:
        # If page is not an integer, deliver first page.
        badges = paginator.page(1)
    except EmptyPage:
        return HttpResponse(status=404)

    if request.is_ajax():
        return render_to_response('landing/browse_badges.html',{'badges': badges}, context_instance=RequestContext(request))

    return render_to_response(
        'landing/list_badges.html',{
            'badges': badges,
        },
        context_instance=RequestContext(request)
    )
示例#5
0
文件: tests.py 项目: MHM5000/badges
    def test_publish_badge(self):
        badge = badge_api.create_badge(**self.BADGE_MOCK_ATTRIBUTES)

        badges = badge_api.get_published_badges()
        self.assertTrue(len(badges) == 0)
        badges = badge_api.get_user_draft_badges(badge['author_uri'])
        self.assertTrue(len(badges) == 1)

        badge_api.publish_badge(badge['uri'])
        self.assertRaises(Exception, badge_api.update_badge, [badge['uri']], {'title':'Updated title'})
        badges = badge_api.get_published_badges()
        self.assertEqual(len(badges), 1)

        badges = badge_api.get_user_draft_badges(badge['author_uri'])
        self.assertEqual(len(badges), 0)
        badges = badge_api.get_user_created_badges(badge['author_uri'])
        self.assertEqual(len(badges), 1)
示例#6
0
def get_filtered_badges(option):

    if option == 'popular':
        badges = []
        items = sort_badge_uris_by_attached_projects()[:12]
        for item in items:
            badges.append(get_badge(item['badge_uri']))
    elif option == 'new':
        badges = last_n_published_badges(12)
    elif option == 'featured':
        badges = get_featured_badges()
    else:
        badges = get_published_badges()

    return map(fetch_badge_resources, badges)