Example #1
0
def _landing(request, category=None):
    if category:
        featured = ''
        category = get_list_or_404(
            Category.objects.filter(type=amo.ADDON_PERSONA,
            slug=category))[0]
        popular = (Addon.objects.public()
                   .filter(type=amo.ADDON_PERSONA,
                           addoncategory__category__id=category.id)
                   .order_by('-persona__popularity')[:12])

        categories, filter, base, category = personas_listing(request,
                                                              category.slug)
        ids = AddonCategory.creatured_random(category, request.LANG)
        featured = manual_order(base, ids, pk_name="addons.id")[:12]
    else:
        popular = (Addon.objects.public().filter(type=amo.ADDON_PERSONA)
                   .order_by('-persona__popularity')[:12])
        featured = get_featured_personas(request, num_personas=12)

    return jingo.render(request, 'themes/landing.html', {
        'category': category,
        'popular': popular,
        'featured': featured,
    })
Example #2
0
def get_featured_personas(request):
    categories, filter, base, category = personas_listing(request)
    if settings.NEW_FEATURES:
        featured_addons = Addon.objects.new_featured(request.APP)
    else:
        featured_addons = Addon.objects.featured(request.APP)
    featured = base & featured_addons
    return featured[:6]
Example #3
0
def get_featured_personas(request):
    categories, filter, base, category = personas_listing(request)
    ids = get_featured_ids(request.APP, request.LANG,
                                       type=amo.ADDON_PERSONA)
    return manual_order(base, ids)[:6]
Example #4
0
def get_featured_personas(request, category=None, num_personas=6):
    categories, filter, base, category = personas_listing(request, category)
    ids = get_featured_ids(request.APP, request.LANG, type=amo.ADDON_PERSONA)

    return manual_order(base, ids, 'addons.id')[:num_personas]
Example #5
0
def get_featured_personas(request):
    categories, filter, base, category = personas_listing(request)
    featured = base & Addon.objects.featured(request.APP)
    return featured[:6]
Example #6
0
def get_featured_personas(request, category=None, num_personas=6):
    categories, filter, base, category = personas_listing(request, category)
    ids = get_featured_ids(request.APP, request.LANG, type=amo.ADDON_PERSONA)

    return manual_order(base, ids, 'addons.id')[:num_personas]
Example #7
0
def get_featured_personas(request):
    categories, filter, base, category = personas_listing(request)
    ids = FeaturedManager.featured_ids(request.APP, request.LANG,
                                       type=amo.ADDON_PERSONA)
    return manual_order(base, ids)[:6]