feat: note for events and new function

This commit is contained in:
Max Hohlfeld 2024-11-20 13:09:56 +01:00
parent 1c6abc5882
commit dba95e1901
3 changed files with 13 additions and 7 deletions

View File

@ -1,5 +1,5 @@
CREATE TYPE role AS ENUM ('staff', 'areamanager', 'admin');
CREATE TYPE function AS ENUM ('posten', 'wachhabender');
CREATE TYPE function AS ENUM ('posten', 'fuehrungsassistent', 'wachhabender');
CREATE TABLE area
(
@ -52,6 +52,7 @@ CREATE TABLE event
voluntaryWachhabender BOOLEAN NOT NULL,
amountOfPosten SMALLINT NOT NULL CHECK (amountOfPosten >= 0),
clothing TEXT NOT NULL,
note TEXT,
canceled BOOLEAN NOT NULL DEFAULT false
);

View File

@ -39,12 +39,15 @@ pub fn invert(b: &bool) -> askama::Result<bool> {
}
pub fn show_tree(f: &Function) -> askama::Result<String> {
let tags = match f {
Function::Posten => r#"<span class="tag is-info is-light">Posten</span>"#,
Function::Wachhabender => {
r#"<span class="tag is-info is-light">Posten</span><span class="tag is-info">Wachhabender</span>"#
let mut tags = String::from(r#"<span class="tag is-info is-light">Posten</span>"#);
if f == &Function::Fuehrungsassistent || f == &Function::Wachhabender {
tags.push_str(r#"<span class="tag is-info is-light">Führungsassistent</span>"#);
}
if f == &Function::Wachhabender {
tags.push_str(r#"<span class="tag is-info">Wachhabender</span>"#);
}
};
Ok(format!(r#"<div class="tags">{tags}</div>"#))
}

View File

@ -8,6 +8,7 @@ use crate::utils::ApplicationError;
#[sqlx(type_name = "function", rename_all = "lowercase")]
pub enum Function {
Posten = 1,
Fuehrungsassistent = 5,
Wachhabender = 10,
}
@ -15,6 +16,7 @@ impl Display for Function {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Function::Posten => write!(f, "Posten"),
Function::Fuehrungsassistent => write!(f, "Führungsassistent"),
Function::Wachhabender => write!(f, "Wachhabender"),
}
}