Пример #1
0
def appstore(request, template="appstore/appstore_base.html", sort_by=None):
    page = int(request.GET.get('page', 1))
    include_unapproved = (request.user.is_superuser and request.GET.get('unapproved', False))
    if not sort_by:
        results = Domain.published_snapshots(include_unapproved=include_unapproved, page=page, per_page=PER_PAGE)
        more_pages = page * PER_PAGE < results.total_rows and len(results) == PER_PAGE # hacky way to deal with approved vs unapproved
    else:
        total_results = Domain.published_snapshots(include_unapproved=include_unapproved)
        if sort_by == 'best':
            results = Domain.popular_sort(total_results, page)
            #more_pages = page * PER_PAGE < total_results and page <= 10
        elif sort_by == 'hits':
            results = Domain.hit_sort(total_results, page)
            #more_pages = page * PER_PAGE < len(total_results) and page <= 10
        more_pages = page * PER_PAGE < total_results.total_rows and len(results) == PER_PAGE # hacky way to deal with approved vs unapproved
    average_ratings = list()
    for result in results:
        average_ratings.append([result.name, Review.get_average_rating_by_app(result.original_doc)])

    return render_to_response(request, template, _appstore_context({
        'apps': results,
        'average_ratings': average_ratings,
        'page': page,
        'prev_page': (page-1),
        'next_page': (page+1),
        'more_pages': more_pages,
        'sort_by': sort_by,
        'include_unapproved': include_unapproved
    }))
Пример #2
0
    def _get_data(self):
        query_parts = []
        if self.category_filter:
            query_parts.append('category:"%s"' % self.category_filter)
        elif self.license_filter:
            query_parts.append('license:"%s"' % self.license_filter)
        elif self.category_filter:
            query_parts.append('organization:"%s"' % self.organization_filter)
        elif self.region_filter:
            query_parts.append('region:"%s"' % self.region_filter)

        if len(query_parts) > 0:
            query = ' '.join(query_parts)
            snapshots = Domain.snapshot_search(query)
        else:
            snapshots = Domain.published_snapshots()[:20]
        return snapshots
Пример #3
0
    def _get_data(self):
        query_parts = []
        if self.category_filter:
            query_parts.append('category:"%s"' % self.category_filter)
        elif self.license_filter:
            query_parts.append('license:"%s"' % self.license_filter)
        elif self.category_filter:
            query_parts.append('organization:"%s"' % self.organization_filter)
        elif self.region_filter:
            query_parts.append('region:"%s"' % self.region_filter)

        if len(query_parts) > 0:
            query = ' '.join(query_parts)
            snapshots = Domain.snapshot_search(query)
        else:
            snapshots = Domain.published_snapshots()[:20]
        return snapshots