summaryrefslogtreecommitdiff
path: root/src/main.rs
diff options
context:
space:
mode:
authorJesse Morgan <jesse@jesterpm.net>2025-01-26 14:59:14 -0800
committerJesse Morgan <jesse@jesterpm.net>2025-01-26 14:59:14 -0800
commitd7cb6607d1859a74a1565e007ace7c6894c7d6de (patch)
treeb3261b28a3c71d0c2769fbd28834cd687feac0cf /src/main.rs
parent9438bdf2b7c46d173f175874811c028c78d723a9 (diff)
Add edit/reset option
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs7
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);