diff options
author | metamuffin <metamuffin@disroot.org> | 2025-04-27 19:25:11 +0200 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2025-04-27 19:25:11 +0200 |
commit | 11a585b3dbe620dcc8772e713b22f1d9ba80d598 (patch) | |
tree | 44f8d97137412aefc79a2425a489c34fa3e5f6c5 /server/src/routes/compat/youtube.rs | |
parent | d871aa7c5bba49ff55170b5d2dac9cd440ae7170 (diff) | |
download | jellything-11a585b3dbe620dcc8772e713b22f1d9ba80d598.tar jellything-11a585b3dbe620dcc8772e713b22f1d9ba80d598.tar.bz2 jellything-11a585b3dbe620dcc8772e713b22f1d9ba80d598.tar.zst |
move files around
Diffstat (limited to 'server/src/routes/compat/youtube.rs')
-rw-r--r-- | server/src/routes/compat/youtube.rs | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/server/src/routes/compat/youtube.rs b/server/src/routes/compat/youtube.rs deleted file mode 100644 index 78eee8a..0000000 --- a/server/src/routes/compat/youtube.rs +++ /dev/null @@ -1,60 +0,0 @@ -/* - This file is part of jellything (https://codeberg.org/metamuffin/jellything) - which is licensed under the GNU Affero General Public License (version 3); see /COPYING. - Copyright (C) 2025 metamuffin <metamuffin.org> -*/ -use crate::routes::ui::{ - account::session::Session, - error::MyResult, - node::rocket_uri_macro_r_library_node, - player::{rocket_uri_macro_r_player, PlayerConfig}, -}; -use anyhow::anyhow; -use jellybase::database::Database; -use jellycommon::NodeID; -use rocket::{get, response::Redirect, State}; - -#[get("/watch?<v>")] -pub fn r_youtube_watch(_session: Session, db: &State<Database>, v: &str) -> MyResult<Redirect> { - if v.len() != 11 { - Err(anyhow!("video id length incorrect"))? - } - let Some(id) = db.get_node_external_id("youtube:video", v)? else { - Err(anyhow!("element not found"))? - }; - let node = db.get_node(id)?.ok_or(anyhow!("node missing"))?; - Ok(Redirect::to(rocket::uri!(r_player( - &node.slug, - PlayerConfig::default() - )))) -} - -#[get("/channel/<id>")] -pub fn r_youtube_channel(_session: Session, db: &State<Database>, id: &str) -> MyResult<Redirect> { - let Some(id) = (if id.starts_with("UC") { - db.get_node_external_id("youtube:channel", id)? - } else if id.starts_with("@") { - db.get_node_external_id("youtube:channel-name", id)? - } else { - Err(anyhow!("unknown channel id format"))? - }) else { - Err(anyhow!("channel not found"))? - }; - let node = db.get_node(id)?.ok_or(anyhow!("node missing"))?; - Ok(Redirect::to(rocket::uri!(r_library_node(&node.slug)))) -} - -#[get("/embed/<v>")] -pub fn r_youtube_embed(_session: Session, db: &State<Database>, v: &str) -> MyResult<Redirect> { - if v.len() != 11 { - Err(anyhow!("video id length incorrect"))? - } - let Some(id) = db.get_node_external_id("youtube:video", v)? else { - Err(anyhow!("element not found"))? - }; - let node = db.get_node(id)?.ok_or(anyhow!("node missing"))?; - Ok(Redirect::to(rocket::uri!(r_player( - &node.slug, - PlayerConfig::default() - )))) -} |