chore: removed unused code
29c68717
2 file(s) · +0 −43
| 360 | 360 | Ok(pages) |
|
| 361 | 361 | } |
|
| 362 | 362 | ||
| 363 | - | pub fn get_published_pages(db: &Db) -> Result<Vec<Page>, DbError> { |
|
| 364 | - | let conn = db.lock().map_err(|_| DbError::LockPoisoned)?; |
|
| 365 | - | let mut stmt = conn.prepare( |
|
| 366 | - | &format!("SELECT {} FROM pages WHERE is_published = 1 ORDER BY nav_order ASC, id ASC", PAGE_COLS), |
|
| 367 | - | )?; |
|
| 368 | - | let pages = stmt |
|
| 369 | - | .query_map([], from_row)? |
|
| 370 | - | .collect::<Result<Vec<_>, _>>()?; |
|
| 371 | - | Ok(pages) |
|
| 372 | - | } |
|
| 373 | - | ||
| 374 | 363 | pub fn update_page( |
|
| 375 | 364 | db: &Db, |
|
| 376 | 365 | short_id: &str, |
|
| 425 | 414 | params![key, value], |
|
| 426 | 415 | )?; |
|
| 427 | 416 | Ok(()) |
|
| 428 | - | } |
|
| 429 | - | ||
| 430 | - | pub fn get_all_settings(db: &Db) -> Result<Vec<(String, String)>, DbError> { |
|
| 431 | - | let conn = db.lock().map_err(|_| DbError::LockPoisoned)?; |
|
| 432 | - | let mut stmt = conn.prepare("SELECT key, value FROM settings ORDER BY key")?; |
|
| 433 | - | let settings = stmt |
|
| 434 | - | .query_map([], |row| Ok((row.get(0)?, row.get(1)?)))? |
|
| 435 | - | .collect::<Result<Vec<_>, _>>()?; |
|
| 436 | - | Ok(settings) |
|
| 437 | 417 | } |
|
| 438 | 418 | ||
| 439 | 419 | // --- File CRUD --- |
|
| 653 | 633 | } |
|
| 654 | 634 | ||
| 655 | 635 | #[test] |
|
| 656 | - | fn get_published_pages_filters() { |
|
| 657 | - | let db = test_db(); |
|
| 658 | - | create_page(&db, "Pub", "pub", "x", true, 1).unwrap(); |
|
| 659 | - | create_page(&db, "Draft", "draft", "x", false, 2).unwrap(); |
|
| 660 | - | ||
| 661 | - | let published = get_published_pages(&db).unwrap(); |
|
| 662 | - | assert_eq!(published.len(), 1); |
|
| 663 | - | assert_eq!(published[0].title, "Pub"); |
|
| 664 | - | } |
|
| 665 | - | ||
| 666 | - | #[test] |
|
| 667 | 636 | fn update_page_works() { |
|
| 668 | 637 | let db = test_db(); |
|
| 669 | 638 | let page = create_page(&db, "Old", "old", "old content", false, 0).unwrap(); |
|
| 705 | 674 | fn settings_missing_key() { |
|
| 706 | 675 | let db = test_db(); |
|
| 707 | 676 | assert!(get_setting(&db, "nonexistent").unwrap().is_none()); |
|
| 708 | - | } |
|
| 709 | - | ||
| 710 | - | #[test] |
|
| 711 | - | fn get_all_settings_works() { |
|
| 712 | - | let db = test_db(); |
|
| 713 | - | set_setting(&db, "a", "1").unwrap(); |
|
| 714 | - | set_setting(&db, "b", "2").unwrap(); |
|
| 715 | - | ||
| 716 | - | let all = get_all_settings(&db).unwrap(); |
|
| 717 | - | assert_eq!(all.len(), 2); |
|
| 718 | - | assert_eq!(all[0], ("a".to_string(), "1".to_string())); |
|
| 719 | 677 | } |
|
| 720 | 678 | ||
| 721 | 679 | // ── File CRUD ────────────────────────────────────────────────────── |
|
| 39 | 39 | blog_title: String, |
|
| 40 | 40 | nav_links: Vec<NavLink>, |
|
| 41 | 41 | favicon_url: String, |
|
| 42 | - | og_image_url: String, |
|
| 43 | 42 | header_html: String, |
|
| 44 | 43 | footer_html: String, |
|
| 45 | 44 | } |