use crate::config::*;
use crate::network;
use windmark::response::Response;
pub fn handler(cfg: &Config) -> Result<Response, network::error::Error> {
if !cfg.forge_list_users {
return Err(network::error::Error::ResourceNotFound);
}
let users = &cfg.forge_api().get_users()?;
let user_names: Vec<String> = users.iter().map(super::templates::user_link).collect();
let gemtext_list: String = user_names
.iter()
.map(|n: &String| format!("{n}\n"))
.collect::<Vec<String>>()
.concat();
let gemtext = format!("## Users\n{gemtext_list}");
Ok(Response::success(gemtext))
}