diff --git a/Cargo.lock b/Cargo.lock index b9b71bd..9e9fb5e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3164,6 +3164,7 @@ dependencies = [ "tokio", "toml", "tracing", + "uuid", ] [[package]] diff --git a/README.md b/README.md index bee79c5..7a158b6 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,7 @@ docker run \ -p 4000:4000 \ -v YOUR_DATA_DIR:/var/lib/rustical/ \ -v YOUR_CONFIG_TOML:/etc/rustical/config.toml \ + -v YOUR_PRINCIPALS_TOML:/etc/rustical/principals.toml \ ghcr.io/lennart-k/rustical ``` @@ -77,7 +78,7 @@ id = "user" displayname = "User" password = "$argon2id$......." app_tokens = [ - {name = "Token", token = "$pbkdf2-sha256$........"}, + {id = "1", name = "Token", token = "$pbkdf2-sha256$........"}, ] memberships = ["group:amazing_group"] @@ -107,8 +108,9 @@ docker run -it --rm ghcr.io/lennart-k/rustical rustical pwhash The password is meant as a password you use to log in to the frontend. Since it's sensitive information, the secure but slow hash algorithm `argon2` is chosen. +If you've configured OpenID Connect you can also completely omit the password. -I recommend to generate random app tokens for each CalDAV/CardDAV client. +I recommend to generate random app tokens for each CalDAV/CardDAV client (which can also be done through the frontend). These can use the faster `pbkdf2` algorithm. ### WebDAV Push diff --git a/crates/frontend/public/templates/pages/calendar.html b/crates/frontend/public/templates/pages/calendar.html index c94f57b..455ba81 100644 --- a/crates/frontend/public/templates/pages/calendar.html +++ b/crates/frontend/public/templates/pages/calendar.html @@ -5,8 +5,30 @@ {% block content %} {% let name = calendar.displayname.to_owned().unwrap_or(calendar.id.to_owned()) %} -

{{ name }}

+

{{ calendar.principal }}/{{ name }}

{% if let Some(description) = calendar.description %}

{{ description }}

{% endif%} +{% if let Some(subscription_url) = calendar.subscription_url %} +

Subscription URL

+{{ subscription_url }} +{% endif %} + +

Components

+ + +

Timezone

+ +{% if let Some(timezone_id) = calendar.timezone_id %} +

{{ timezone_id }}

+{% endif %} +{% if let Some(timezone) = calendar.timezone %} +
{{ timezone }}
+{% endif %} + +
{{ calendar|json }}
-{% endblock %} +{%endblock %} diff --git a/crates/frontend/public/templates/pages/user.html b/crates/frontend/public/templates/pages/user.html index 480c41b..0e8794f 100644 --- a/crates/frontend/public/templates/pages/user.html +++ b/crates/frontend/public/templates/pages/user.html @@ -72,24 +72,47 @@ li.collection-list-item {

App tokens

-