use super::User; use crate::{ model::{mail::Mail, notification::Notification}, special_user, }; use rocket::async_trait; use sqlx::SqlitePool; special_user!(RegularUser, +"Donau Linz", -"Unterstützend", -"Förderndes Mitglied"); impl RegularUser { pub(crate) async fn notify(&self, db: &SqlitePool, smtp_pw: &str) -> Result<(), String> { self.notify_coxes_about_new_regular(db).await; self.send_welcome_mail_to_user(db, smtp_pw).await?; Ok(()) } async fn send_welcome_mail_to_user( &self, db: &SqlitePool, smtp_pw: &str, ) -> Result<(), String> { let Some(mail) = &self.mail else { return Err(format!( "Couldn't send welcome mail, as the user {self} has no mail..." )); }; Mail::send_single( db, mail, "Willkommen im ASKÖ Ruderverein Donau Linz!", format!( "Hallo {0}, herzlich willkommen im ASKÖ Ruderverein Donau Linz! Wir freuen uns sehr, dich als neues Mitglied in unserem Verein begrüßen zu dürfen. Um dir den Einstieg zu erleichtern, findest du in unserem Handbuch alle wichtigen Informationen über unseren Verein: https://rudernlinz.at/book. Bei weiteren Fragen stehen dir die Adressen info@rudernlinz.at (für allgemeine Fragen) und it@rudernlinz.at (bei technischen Fragen) jederzeit zur Verfügung. Du kannst auch gerne unserer Signal-Gruppe beitreten, um auf dem Laufenden zu bleiben und dich mit anderen Mitgliedern auszutauschen: https://signal.group/#CjQKICFrq6zSsRHxrucS3jEcQn6lknEXacAykwwLV3vNLKxPEhA17jxz7cpjfu3JZokLq1TH Für die Organisation unserer Ausfahrten nutzen wir app.rudernlinz.at. Logge dich einfach mit deinem Namen ('{0}' ohne Anführungszeichen) ein, beim ersten Mal kannst du das Passwortfeld leer lassen. Unter 'Geplante Ausfahrten' kannst du dich jederzeit zu den Ausfahrten anmelden. Beim nächsten Treffen im Verein, erinnere jemand vom Vorstand (https://rudernlinz.at/unser-verein/vorstand/) bitte daran, deinen Fingerabdruck zu registrieren, damit du Zugang zum Bootshaus erhältst. Damit du dich noch mehr verbunden fühlst (:-)), haben wir im Bootshaus ein WLAN für Vereinsmitglieder 'ASKÖ Ruderverein Donau Linz' eingerichtet. Das Passwort dafür lautet 'donau1921' (ohne Anführungszeichen). Bitte gib das Passwort an keine vereinsfremden Personen weiter. Wir freuen uns darauf, dich bald am Wasser zu sehen und gemeinsam tolle Erfahrungen zu sammeln! Riemen- & Dollenbruch ASKÖ Ruderverein Donau Linz", self.name), smtp_pw, ).await?; Ok(()) } async fn notify_coxes_about_new_regular(&self, db: &SqlitePool) { Notification::create_for_steering_people( db, &format!( "Liebe Steuerberechtigte, seit {} gibt es ein neues Mitglied: {}", self.member_since_date.clone().unwrap(), self.name ), "Neues Vereinsmitglied", None, None, ) .await; } }