use diesel::prelude::*; use models::{Episode, Podcast, Source}; pub fn get_sources(con: &SqliteConnection) -> QueryResult> { use schema::source::dsl::*; let s = source.load::(con); s } pub fn get_podcasts(con: &SqliteConnection) -> QueryResult> { use schema::podcast::dsl::*; let pds = podcast.load::(con); pds } pub fn get_episodes(con: &SqliteConnection) -> QueryResult> { use schema::episode::dsl::*; let eps = episode.load::(con); eps } pub fn get_podcast(con: &SqliteConnection, parent: &Source) -> QueryResult> { let pd = Podcast::belonging_to(parent).load::(con); // debug!("Returned Podcasts:\n{:?}", pds); pd } pub fn get_pd_episodes(con: &SqliteConnection, parent: &Podcast) -> QueryResult> { let eps = Episode::belonging_to(parent).load::(con); eps } pub fn load_source(con: &SqliteConnection, uri_: &str) -> QueryResult { use schema::source::dsl::*; let s = source.filter(uri.eq(uri_)).get_result::(con); s } pub fn load_podcast(con: &SqliteConnection, title_: &str) -> QueryResult { use schema::podcast::dsl::*; let pd = podcast.filter(title.eq(title_)).get_result::(con); pd } pub fn load_episode(con: &SqliteConnection, uri_: &str) -> QueryResult { use schema::episode::dsl::*; let ep = episode.filter(uri.eq(uri_)).get_result::(con); ep }