froxy/templates/src/friends.rs

30 lines
950 B
Rust

pub use crate::templates::FRIENDS;
pub fn add_to_context(env: &mut minijinja::Environment) {
if env.get_template("template.html").is_err() {
crate::meta_template::add_to_context(env);
}
if env.get_template("open_modal.html").is_err() {
crate::open_modal::add_to_context(env);
}
env.add_template("friends.html", FRIENDS).unwrap();
}
pub fn render(env: &minijinja::Environment, data: FriendsData) -> Result<String, minijinja::Error> {
let template = env.get_template("friends.html")?;
template.render(data)
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, PartialEq, Eq, Hash)]
pub struct Friend {
pub name: smol_str::SmolStr,
pub image: String,
pub position: Option<smol_str::SmolStr>,
pub last_active: Option<smol_str::SmolStr>,
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, PartialEq, Eq, Hash)]
pub struct FriendsData {
pub friends: Vec<Friend>,
}