diff options
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs index 4a89183..5c56c93 100644 --- a/src/main.rs +++ b/src/main.rs @@ -68,6 +68,9 @@ struct EditArgs { /// True if the entry should not be published. #[arg(long)] hidden: Option<bool>, + /// Reset the metadata to match the file. + #[arg(long)] + reset: bool, } #[derive(clap::Args, Debug)] @@ -110,6 +113,10 @@ async fn main() -> Result<(), Box<dyn Error>> { } async fn update_entry(feed: &mut MP32RSS, args: EditArgs) -> Result<(), Box<dyn Error>> { + if args.reset { + let new_entry = feed.access().fetch_entry(args.filename.clone()).await?; + feed.insert_entry(new_entry); + } if let Some(entry) = feed.get_mut_entry(&args.filename) { if let Some(v) = args.title { entry.title = Some(v); |