Example #1
0
def cinema():

    db_handler = DBHandler()

    id = request.args.get("id")
    provider = db_handler.get_provider_by_id(id=id)

    movies_in = db_handler.get_items_in_provider(provider_id=provider.id)
    movies_id = [movie.id for movie in movies_in]
    movies_obj = db_handler.get_items_by_ids(movies_id)

    auth = current_user.is_authenticated
    """ We are going to sort movies for user """
    if auth:
        model = ALSRecommender()
        model.load()
        scores = model.score(id, movies_id)

        movies_obj = list(np.array(movies_obj)[np.argsort(scores)[::-1]])

    movies_obj = movies_obj[:MOVIES_TO_SHOW]

    return render_template(
        "cinema.html",
        provider=provider,
        movies=movies_obj,
        auth=auth,
        len_movies=len(movies_obj),
    )