use std::fmt::Write;
use actix_web_flash_messages::FlashMessage;
use actix_web_flash_messages::{IncomingFlashMessages, Level};
pub fn send_flash_message(msg: &str) {
FlashMessage::info(msg).send()
}
pub fn flash_message(msg: &str, level: Level) {
match level {
Level::Warning => FlashMessage::warning(msg).send(),
Level::Debug => FlashMessage::debug(msg).send(),
Level::Info => FlashMessage::info(msg).send(),
Level::Success => FlashMessage::success(msg).send(),
Level::Error => FlashMessage::error(msg).send(),
}
}
pub fn get_flash_message_html(flash_messages: &IncomingFlashMessages) -> String {
let mut _flash_html = String::new();
for m in flash_messages.iter().filter(|m| m.level() == Level::Error) {
write!(_flash_html, "<p><i class='error'>{}</i></p>", m.content()).unwrap();
}
for m in flash_messages
.iter()
.filter(|m| m.level() == Level::Warning)
{
write!(_flash_html, "<p><i class='warn'>{}</i></p>", m.content()).unwrap();
}
for m in flash_messages.iter().filter(|m| m.level() == Level::Info) {
write!(_flash_html, "<p><i class='info'>{}</i></p>", m.content()).unwrap();
}
for m in flash_messages
.iter()
.filter(|m| m.level() == Level::Success)
{
write!(_flash_html, "<p><i class='success'>{}</i></p>", m.content()).unwrap();
}
for m in flash_messages.iter().filter(|m| m.level() == Level::Debug) {
write!(_flash_html, "<p><i class='debug'>{}</i></p>", m.content()).unwrap();
}
if !_flash_html.is_empty() {
log::debug!(
"get_flash_message_html: _flash_html_message={}",
_flash_html
);
}
_flash_html
}