diff options
Diffstat (limited to 'server/src/ui/player.rs')
-rw-r--r-- | server/src/ui/player.rs | 113 |
1 files changed, 53 insertions, 60 deletions
diff --git a/server/src/ui/player.rs b/server/src/ui/player.rs index cd4d03c..db2f665 100644 --- a/server/src/ui/player.rs +++ b/server/src/ui/player.rs @@ -3,25 +3,18 @@ which is licensed under the GNU Affero General Public License (version 3); see /COPYING. Copyright (C) 2025 metamuffin <metamuffin.org> */ -use super::{ - layout::LayoutPage, - node::{get_similar_media, DatabaseNodeUserDataExt, NodePage}, - sort::NodeFilterSort, -}; +use super::sort::NodeFilterSort; use crate::{ database::Database, locale::AcceptLanguage, logic::session::{self, Session}, - ui::{error::MyResult, layout::DynLayoutPage}, }; -use anyhow::anyhow; use jellybase::CONF; use jellycommon::{ stream::{StreamContainer, StreamSpec}, user::{PermissionSet, PlayerKind}, - Node, NodeID, SourceTrackKind, TrackID, Visibility, + NodeID, TrackID, Visibility, }; -use markup::DynRender; use rocket::{get, response::Redirect, Either, FromForm, State, UriDisplayQuery}; use std::sync::Arc; @@ -140,59 +133,59 @@ pub fn r_player( })) } -pub fn player_conf<'a>(item: Arc<Node>, playing: bool) -> anyhow::Result<DynRender<'a>> { - let mut audio_tracks = vec![]; - let mut video_tracks = vec![]; - let mut sub_tracks = vec![]; - let tracks = item - .media - .clone() - .ok_or(anyhow!("node does not have media"))? - .tracks - .clone(); - for (tid, track) in tracks.into_iter().enumerate() { - match &track.kind { - SourceTrackKind::Audio { .. } => audio_tracks.push((tid, track)), - SourceTrackKind::Video { .. } => video_tracks.push((tid, track)), - SourceTrackKind::Subtitles => sub_tracks.push((tid, track)), - } - } +// pub fn player_conf<'a>(item: Arc<Node>, playing: bool) -> anyhow::Result<DynRender<'a>> { +// let mut audio_tracks = vec![]; +// let mut video_tracks = vec![]; +// let mut sub_tracks = vec![]; +// let tracks = item +// .media +// .clone() +// .ok_or(anyhow!("node does not have media"))? +// .tracks +// .clone(); +// for (tid, track) in tracks.into_iter().enumerate() { +// match &track.kind { +// SourceTrackKind::Audio { .. } => audio_tracks.push((tid, track)), +// SourceTrackKind::Video { .. } => video_tracks.push((tid, track)), +// SourceTrackKind::Subtitles => sub_tracks.push((tid, track)), +// } +// } - Ok(markup::new! { - form.playerconf[method = "GET", action = ""] { - h2 { "Select tracks for " @item.title } +// Ok(markup::new! { +// form.playerconf[method = "GET", action = ""] { +// h2 { "Select tracks for " @item.title } - fieldset.video { - legend { "Video" } - @for (i, (tid, track)) in video_tracks.iter().enumerate() { - input[type="radio", id=tid, name="v", value=tid, checked=i==0]; - label[for=tid] { @format!("{track}") } br; - } - input[type="radio", id="v-none", name="v", value=""]; - label[for="v-none"] { "No video" } - } +// fieldset.video { +// legend { "Video" } +// @for (i, (tid, track)) in video_tracks.iter().enumerate() { +// input[type="radio", id=tid, name="v", value=tid, checked=i==0]; +// label[for=tid] { @format!("{track}") } br; +// } +// input[type="radio", id="v-none", name="v", value=""]; +// label[for="v-none"] { "No video" } +// } - fieldset.audio { - legend { "Audio" } - @for (i, (tid, track)) in audio_tracks.iter().enumerate() { - input[type="radio", id=tid, name="a", value=tid, checked=i==0]; - label[for=tid] { @format!("{track}") } br; - } - input[type="radio", id="a-none", name="a", value=""]; - label[for="a-none"] { "No audio" } - } +// fieldset.audio { +// legend { "Audio" } +// @for (i, (tid, track)) in audio_tracks.iter().enumerate() { +// input[type="radio", id=tid, name="a", value=tid, checked=i==0]; +// label[for=tid] { @format!("{track}") } br; +// } +// input[type="radio", id="a-none", name="a", value=""]; +// label[for="a-none"] { "No audio" } +// } - fieldset.subtitles { - legend { "Subtitles" } - @for (_i, (tid, track)) in sub_tracks.iter().enumerate() { - input[type="radio", id=tid, name="s", value=tid]; - label[for=tid] { @format!("{track}") } br; - } - input[type="radio", id="s-none", name="s", value="", checked=true]; - label[for="s-none"] { "No subtitles" } - } +// fieldset.subtitles { +// legend { "Subtitles" } +// @for (_i, (tid, track)) in sub_tracks.iter().enumerate() { +// input[type="radio", id=tid, name="s", value=tid]; +// label[for=tid] { @format!("{track}") } br; +// } +// input[type="radio", id="s-none", name="s", value="", checked=true]; +// label[for="s-none"] { "No subtitles" } +// } - input[type="submit", value=if playing { "Change tracks" } else { "Start playback" }]; - } - }) -} +// input[type="submit", value=if playing { "Change tracks" } else { "Start playback" }]; +// } +// }) +// } |