diff --git a/podcasts-data/src/dbqueries.rs b/podcasts-data/src/dbqueries.rs index 234cd1f..13d6bfb 100644 --- a/podcasts-data/src/dbqueries.rs +++ b/podcasts-data/src/dbqueries.rs @@ -87,6 +87,18 @@ pub(crate) fn get_downloaded_episodes() -> Result, Data .map_err(From::from) } +pub fn search_episodes(term: &str) -> Result, DataError> { + use crate::schema::episodes::dsl::*; + let db = connection(); + let con = db.get()?; + + episodes + .filter(title.like(format!("%{}%", term))) + .order(epoch.desc()) + .load::(&con) + .map_err(From::from) +} + // pub(crate) fn get_played_episodes() -> Result, DataError> { // use schema::episodes::dsl::*;