diff --git a/src/commands/webdav.rs b/src/commands/webdav.rs index 82dd126a..e7bc8bf2 100644 --- a/src/commands/webdav.rs +++ b/src/commands/webdav.rs @@ -70,23 +70,25 @@ impl WebDavCmd { let config = RUSTIC_APP.config(); let repo = open_repository_indexed(&config.repository)?; - let path_template = self + let path_template = config + .webdav .path_template .clone() .unwrap_or_else(|| "[{hostname}]/[{label}]/{time}".to_string()); - let time_template = self + let time_template = config + .webdav .time_template .clone() .unwrap_or_else(|| "%Y-%m-%d_%H-%M-%S".to_string()); let sn_filter = |sn: &_| config.snapshot_filter.matches(sn); - let vfs = if let Some(snap) = &self.snapshot_path { + let vfs = if let Some(snap) = &config.webdav.snapshot_path { let node = repo.node_from_snapshot_path(snap, sn_filter)?; Vfs::from_dir_node(&node) } else { let snapshots = repo.get_matching_snapshots(sn_filter)?; - let (latest, identical) = if self.symlinks { + let (latest, identical) = if config.webdav.symlinks { (Latest::AsLink, IdenticalSnapshot::AsLink) } else { (Latest::AsDir, IdenticalSnapshot::AsDir) @@ -94,7 +96,8 @@ impl WebDavCmd { Vfs::from_snapshots(snapshots, &path_template, &time_template, latest, identical)? }; - let addr = self + let addr = config + .webdav .address .clone() .unwrap_or_else(|| "localhost:8000".to_string()) @@ -102,7 +105,7 @@ impl WebDavCmd { .next() .ok_or_else(|| anyhow!("no address given"))?; - let file_access = self.file_access.as_ref().map_or_else( + let file_access = config.webdav.file_access.as_ref().map_or_else( || { if repo.config().is_hot == Some(true) { Ok(FilePolicy::Forbidden)