mirror of
https://github.com/stashapp/stash.git
synced 2025-12-18 04:44:37 +03:00
Heatmap and speed sorting/filtering for interactive scenes [rewrite] (#2096)
* add InteractiveSpeed to scene model * add InteractiveHeatmapSpeedGenerator * add GenerateInteractiveHeatmapSpeedTask * add InteractiveHeatmapSpeedTask to GenerateJob * add InteractiveHeatmap on sceneRoutes * delete heatmap when scene is destroyed * render interactive heatmap in GridCard * render InteractiveSpeed on SceneCard * render InteractiveSpeed in SceneFileInfoPanel * InteractiveSpeed filters
This commit is contained in:
@@ -38,6 +38,7 @@ func (rs sceneRoutes) Routes() chi.Router {
|
||||
r.Get("/webp", rs.Webp)
|
||||
r.Get("/vtt/chapter", rs.ChapterVtt)
|
||||
r.Get("/funscript", rs.Funscript)
|
||||
r.Get("/interactive_heatmap", rs.InteractiveHeatmap)
|
||||
|
||||
r.Get("/scene_marker/{sceneMarkerId}/stream", rs.SceneMarkerStream)
|
||||
r.Get("/scene_marker/{sceneMarkerId}/preview", rs.SceneMarkerPreview)
|
||||
@@ -273,6 +274,13 @@ func (rs sceneRoutes) Funscript(w http.ResponseWriter, r *http.Request) {
|
||||
utils.ServeFileNoCache(w, r, funscript)
|
||||
}
|
||||
|
||||
func (rs sceneRoutes) InteractiveHeatmap(w http.ResponseWriter, r *http.Request) {
|
||||
scene := r.Context().Value(sceneKey).(*models.Scene)
|
||||
w.Header().Set("Content-Type", "image/png")
|
||||
filepath := manager.GetInstance().Paths.Scene.GetInteractiveHeatmapPath(scene.GetHash(config.GetInstance().GetVideoFileNamingAlgorithm()))
|
||||
http.ServeFile(w, r, filepath)
|
||||
}
|
||||
|
||||
func (rs sceneRoutes) VttThumbs(w http.ResponseWriter, r *http.Request) {
|
||||
scene := r.Context().Value(sceneKey).(*models.Scene)
|
||||
w.Header().Set("Content-Type", "text/vtt")
|
||||
|
||||
Reference in New Issue
Block a user