CalDAV basic implementation

This commit is contained in:
mdecimus
2025-04-20 12:17:21 +02:00
parent 10ae19f2eb
commit ee7c953279
32 changed files with 4241 additions and 837 deletions

View File

@@ -16,6 +16,9 @@ pub struct DavConfig {
pub max_changes: usize,
pub max_match_results: usize,
pub max_vcard_size: usize,
pub max_ical_size: usize,
pub max_ical_instances: usize,
pub max_ical_attendees_per_instance: usize,
pub default_calendar_name: Option<String>,
pub default_addressbook_name: Option<String>,
pub default_calendar_display_name: Option<String>,
@@ -45,6 +48,9 @@ impl DavConfig {
max_vcard_size: config
.property("dav.limits.size.vcard")
.unwrap_or(512 * 1024),
max_ical_size: config
.property("dav.limits.size.ical")
.unwrap_or(512 * 1024),
default_calendar_name: config
.property_or_default::<Option<String>>("dav.default.calendar.name", "default")
.unwrap_or_default(),
@@ -63,6 +69,12 @@ impl DavConfig {
"Default Address Book",
)
.unwrap_or_default(),
max_ical_instances: config
.property("dav.limits.ical.max-instances")
.unwrap_or(1000),
max_ical_attendees_per_instance: config
.property("dav.limits.ical.max-attendees-per-instance")
.unwrap_or(1000),
}
}
}