From b24c7ca52a2ee5fd79ba9f16e4a5ada2cd66121c Mon Sep 17 00:00:00 2001
From: Lennart <18233294+lennart-k@users.noreply.github.com>
Date: Wed, 16 Apr 2025 20:52:56 +0200
Subject: [PATCH] some minor frontend work
---
crates/frontend/public/assets/style.css | 155 +++++++++++++++++-
.../frontend/public/templates/pages/user.html | 144 ++++++----------
2 files changed, 201 insertions(+), 98 deletions(-)
diff --git a/crates/frontend/public/assets/style.css b/crates/frontend/public/assets/style.css
index c4dd3f8..439a046 100644
--- a/crates/frontend/public/assets/style.css
+++ b/crates/frontend/public/assets/style.css
@@ -12,22 +12,31 @@ body {
}
header {
- background: #EEE;
- height: 80px;
+ background: var(--background-darker);
+ height: 60px;
font-weight: bold;
display: flex;
align-items: center;
padding: 12px;
- font-size: 2em;
+
+ border: 2px solid black;
+ border-radius: 12px;
+ margin: 12px;
+ box-shadow: 4px 2px 12px -5px black;
a {
+ font-size: 2em;
text-decoration: none;
color: black;
}
.logout_form {
- margin-left: auto;
+ display: contents;
+
+ button {
+ margin-left: auto;
+ }
}
}
@@ -37,3 +46,141 @@ header {
justify-content: center;
align-items: center;
}
+
+:root {
+ --background-color: #FFF;
+ --background-darker: #EEE;
+ --primary-color: #2F2FE1;
+ --primary-color-dark: color-mix(in srgb, var(--primary-color), #000000 80%);
+ --text-on-primary-color: #FFF;
+ /* --color-red: #FE2060; */
+ --color-red: #EE1D59;
+}
+
+html {
+ background-color: var(--background-color);
+}
+
+button {
+ border: none;
+ background: var(--primary-color);
+ padding: 8px 12px;
+ border-radius: 8px;
+ color: var(--text-on-primary-color);
+ font-size: 0.9em;
+
+ &:hover {
+ filter: brightness(90%);
+ }
+
+ &.delete {
+ background: var(--color-red);
+ }
+}
+
+input[type="text"] {
+ border: 1px solid black;
+ border-radius: 8px;
+ padding: 4px 8px;
+}
+
+
+.font_bold {
+ font-weight: bold;
+}
+
+section {
+ border: 2px solid black;
+ border-radius: 12px;
+ box-shadow: 4px 2px 12px -5px black;
+ border-collapse: collapse;
+ padding: 8px 24px 12px;
+ margin: 18px 12px;
+}
+
+table {
+ border: 2px solid black;
+ border-radius: 12px;
+ box-shadow: 4px 2px 12px -5px black;
+ border-collapse: collapse;
+
+ td,
+ th {
+ padding: 8px;
+ border: 1px solid black;
+ }
+
+ th {
+ height: 40px;
+ }
+
+ tr:nth-of-type(2n+1) {
+ background: var(--background-darker);
+ }
+
+ tr:hover {
+ background: #DDD;
+ }
+}
+
+
+#page-user {
+ ul {
+ padding-left: 0;
+
+ li.collection-list-item {
+ list-style: none;
+ display: contents;
+
+ a {
+ background: #EEE;
+ display: grid;
+ min-height: 80px;
+ grid-template-areas:
+ ". color-chip"
+ "title color-chip"
+ "description color-chip"
+ "subscription-url color-chip"
+ "restore color-chip"
+ ". color-chip";
+ grid-template-rows: 12px auto auto auto 12px;
+ grid-template-columns: auto 50px;
+ color: inherit;
+ text-decoration: none;
+ padding-left: 12px;
+
+ border: 2px solid black;
+ border-radius: 12px;
+ margin: 12px;
+ box-shadow: 4px 2px 12px -5px black;
+
+ .title {
+ font-weight: bold;
+ grid-area: title;
+ }
+
+ .description {
+ grid-area: description;
+ }
+
+ .subscription-url {
+ grid-area: subscription-url;
+ }
+
+ .color-chip {
+ background: var(--color);
+ grid-area: color-chip;
+ border-radius: 0 12px 12px 0;
+ }
+
+ .restore-form {
+ grid-area: restore;
+ }
+
+ &:hover {
+ background: #DDD;
+ }
+ }
+ }
+ }
+}
diff --git a/crates/frontend/public/templates/pages/user.html b/crates/frontend/public/templates/pages/user.html
index d336b6d..3f2ec3f 100644
--- a/crates/frontend/public/templates/pages/user.html
+++ b/crates/frontend/public/templates/pages/user.html
@@ -1,112 +1,65 @@
{% extends "layouts/default.html" %}
{% block content %}
-
Welcome {{ user.id }}!
-Profile
+
+ Profile
-
+
-Groups
+ Groups
-
- {% for group in user.memberships %}
- - {{ group }}
- {% endfor %}
-
+
+ {% for group in user.memberships %}
+ - {{ group }}
+ {% endfor %}
+
-App tokens
+ App tokens
-
-
- | Name |
- Created at |
- |
-
- {% for app_token in user.app_tokens %}
-
- | {{ app_token.name }} |
-
- {% if let Some(created_at) = app_token.created_at %}
- {{ created_at.to_rfc3339() }}
- {% endif %}
- |
-
-
- |
-
- {% endfor %}
-
+
+
+ | Name |
+ Created at |
+ |
+
+ {% for app_token in user.app_tokens %}
+
+ | {{ app_token.name }} |
- |
+
+
|
- |
-
-
- |
-
-
+
+ {% endfor %}
+
+ |
+
+ |
+ |
+
+
+ |
+
+
+
+
Calendars
{% for calendar in calendars %}
@@ -147,7 +100,9 @@ li.collection-list-item {
{% endfor %}
{% endif %}
+
+
Addressbooks
{% for addressbook in addressbooks %}
@@ -181,5 +136,6 @@ li.collection-list-item {
{% endfor %}
{% endif %}
+
{% endblock %}