Ejemplo n.º 1
0
def get_apps(app_id):
    apps = product.get_apps()
    if app_id in apps.keys():
        item = product.get_apps()[app_id]
        ensure_vote_stats_apps(item)
        return jsonify(item)
    abort(404)
Ejemplo n.º 2
0
def update_apps(app_id, rank):
    if not rank.isdigit():
        abort(401)
    elif int(rank) > 5 or int(rank) < 1:
        abort(400)
    apps = product.get_apps()
    if app_id in apps.keys():
        item = product.get_apps()[app_id]
        ensure_vote_stats_apps(item)
        item['votes_by_star'][int(rank)-1] += 1
        new_rank = WeightedAverage(float(item['rating']), int(item['votes'])).add_value(int(rank))
        item['rating'] = new_rank.rank
        item['votes'] = new_rank.count
        return jsonify(item)
    abort(404)
Ejemplo n.º 3
0
def apps_page():
    apps_dict = product.get_apps()
    return render_template('snacks.html', pageType='apps', products=(OrderedDict(sorted(apps_dict.items(), key=lambda x: -x[1]['rating']))))
Ejemplo n.º 4
0
def fill_in_vote_stats_apps():
    apps = product.get_apps()
    for item in apps.values():
        ensure_vote_stats_apps(item)
    return jsonify(apps)