use diesel::prelude::*; use diesel::sqlite::SqliteConnection; use diesel_migrations::{embed_migrations, EmbeddedMigrations, MigrationHarness}; pub const MIGRATIONS: EmbeddedMigrations = embed_migrations!("src/rust/migrations"); pub fn run_migrations(conn: &mut SqliteConnection) -> bool { conn.run_pending_migrations(MIGRATIONS).unwrap(); true } #[derive(Queryable)] pub struct Image { pub id: i32, pub title: String, pub path: String, } #[derive(Queryable)] pub struct Video { pub id: i32, pub title: String, pub path: String, pub start_time: Option, pub end_time: Option, pub looping: bool, } #[derive(Queryable)] pub struct Presentation { pub id: i32, pub title: String, pub path: String, pub page_count: Option, pub html: bool, } #[derive(Queryable)] pub struct Song { pub id: i32, pub title: String, pub lyrics: Option, pub author: Option, pub ccli: Option, pub audio: Option, pub verse_order: Option, pub background: Option, pub background_type: Option, pub horizontal_text_alignment: Option, pub vertical_text_alignment: Option, pub font: Option, pub font_size: Option, }