Example #1
0
def get_top_rated_exploration_summary_dicts(language_codes):
    """Returns a list of top rated explorations with the given language code.

    The return value is sorted in decreasing order of average rating.
    """
    filtered_exp_summaries = [
        exp_summary for exp_summary in
        exp_services.get_top_rated_exploration_summaries().values()
        if exp_summary.language_code in language_codes and
        sum(exp_summary.ratings.values()) > 0]

    sorted_exp_summaries = sorted(
        filtered_exp_summaries,
        key=lambda exp_summary: exp_summary.scaled_average_rating,
        reverse=True)[:feconf.NUMBER_OF_TOP_RATED_EXPLORATIONS]

    return get_displayable_exp_summary_dicts(sorted_exp_summaries)
Example #2
0
def get_top_rated_exploration_summary_dicts(language_codes):
    """Returns a list of top rated explorations with the given language code.

    The return value is sorted in decreasing order of average rating.
    """
    filtered_exp_summaries = [
        exp_summary for exp_summary in
        exp_services.get_top_rated_exploration_summaries().values()
        if exp_summary.language_code in language_codes
        and sum(exp_summary.ratings.values()) > 0
    ]

    sorted_exp_summaries = sorted(
        filtered_exp_summaries,
        key=lambda exp_summary: exp_summary.scaled_average_rating,
        reverse=True)[:feconf.NUMBER_OF_TOP_RATED_EXPLORATIONS]

    return get_displayable_exp_summary_dicts(sorted_exp_summaries)
Example #3
0
def get_top_rated_exploration_summary_dicts(language_codes, limit):
    """Returns a list of top rated explorations with the given language codes.
    The return value is sorted in decreasing order of average rating.

    Args:
        language_codes: list(str). A list of language codes. Only explorations
            with these languages will be returned.
        limit: int. The maximum number of explorations to return.

    Returns:
        list(dict). Each dict in this list represents a exploration summary in
        human readable form. The list is sorted in decreasing order of average
        rating. For example:

        [ {
            'category': u'A category',
            'community_owned': False,
            'id': 'eid2',
            'language_code': 'en',
            'num_views': 0,
            'objective': u'An objective',
            'status': 'public',
            'tags': [],
            'thumbnail_bg_color': '#a33f40',
            'thumbnail_icon_url': self.get_static_asset_url(
                '/images/subjects/Lightbulb.svg'),
            'title': u'Exploration 2 Albert title',
        }, ]
    """
    filtered_exp_summaries = [
        exp_summary
        for exp_summary in exp_services.get_top_rated_exploration_summaries(
            limit).values() if exp_summary.language_code in language_codes
        and sum(exp_summary.ratings.values()) > 0
    ]

    sorted_exp_summaries = sorted(
        filtered_exp_summaries,
        key=lambda exp_summary: exp_summary.scaled_average_rating,
        reverse=True)

    return get_displayable_exp_summary_dicts(sorted_exp_summaries)
Example #4
0
def get_top_rated_exploration_summary_dicts(language_codes, limit):
    """Returns a list of top rated explorations with the given language codes.
    The return value is sorted in decreasing order of average rating.

    Args:
        language_codes: list(str). A list of language codes. Only explorations
            with these languages will be returned.
        limit: int. The maximum number of explorations to return.

    Return:
        list(dict). Each dict in this list represents a exploration summary in
        human readable form. The list is sorted in decreasing order of average
        rating. For example:

        [ {
            'category': u'A category',
            'community_owned': False,
            'id': 'eid2',
            'language_code': 'en',
            'num_views': 0,
            'objective': u'An objective',
            'status': 'public',
            'tags': [],
            'thumbnail_bg_color': '#a33f40',
            'thumbnail_icon_url': self.get_static_asset_url(
                '/images/subjects/Lightbulb.svg'),
            'title': u'Exploration 2 Albert title',
        }, ]
    """
    filtered_exp_summaries = [
        exp_summary for exp_summary in
        exp_services.get_top_rated_exploration_summaries(limit).values()
        if exp_summary.language_code in language_codes and
        sum(exp_summary.ratings.values()) > 0]

    sorted_exp_summaries = sorted(
        filtered_exp_summaries,
        key=lambda exp_summary: exp_summary.scaled_average_rating,
        reverse=True)

    return get_displayable_exp_summary_dicts(sorted_exp_summaries)