Add button to show recommendation per media

master
Felix Stupp 2 years ago
parent b41e40dea8
commit e964b3f3f3
Signed by: zocker
GPG Key ID: 93E1BD26F6B02FB7

@ -674,6 +674,26 @@ def recommend_movie_like() -> ResponseReturnValue:
)
@flask_app.route("/recommendations/based_on/media/<int:media_id>")
@flask_app.route("/media/<int:media_id>/recommendations")
def recommend_on_media(media_id: int) -> ResponseReturnValue:
MEDIA_COUNT = 10
SCORE_ADAPT = 1
media_base = MediaElement[media_id]
# to ensure all shown videos have similarity to selected one
base = PreferenceScore().adapt_score(media_base, -(MEDIA_COUNT * SCORE_ADAPT) - 1)
return render_template(
"recommendations_simple.htm",
mode_name=f'"{media_base.title}"',
media_list=generate_preference_list(
object_gen=lambda: get_all_considered("elem.release_date DESC"),
score_adapt=SCORE_ADAPT,
base=base,
limit=MEDIA_COUNT,
),
)
@flask_app.route("/api/refresh/collections", methods=["POST"])
def refresh_collections() -> ResponseReturnValue:
collection_ids = set[int](

@ -22,6 +22,7 @@
<ul>
<li>
{{ macros.media_element_buttons(element) }}
<a class="button" href="{{ element.info_link }}/recommendations">Recommendations</a>
{{ macros.no_input_post_form("/api/refresh/media/" + element.id|string, "refresh") }}
{% if not element.skip_over %}
<form class="form-single-button" method="post" action="/api/media/{{ element.id }}">

Loading…
Cancel
Save