cdb/src/main.rs

49 lines
2.7 KiB
Rust
Raw Normal View History

2024-01-14 02:57:13 +00:00
use actix_web::{get, HttpRequest, Responder};
use maud::html;
2024-01-16 08:02:23 +00:00
2024-01-14 02:57:13 +00:00
mod item;
2024-04-04 05:41:13 +00:00
mod routes;
2024-01-14 02:57:13 +00:00
// ░░░░░░░░░░▀▀▀██████▄▄▄░░░░░░░░░░
// ░░░░░░░░░░░░░░░░░▀▀▀████▄░░░░░░░
// ░░░░░░░░░░▄███████▀░░░▀███▄░░░░░
// ░░░░░░░░▄███████▀░░░░░░░▀███▄░░░
// ░░░░░░▄████████░░░░░░░░░░░███▄░░
2024-01-16 08:02:23 +00:00
// ░░░░░██████████▄░░░░░░░░░░░███▌░ ▒█▀▀█ █▀▀█ █▀▄▀█ █▀▄▀█ ▒█▀▀▄ ▒█▀▀█
// ░░░░░▀█████▀░▀███▄░░░░░░░░░▐███░ ▒█░░░ █░░█ █░▀░█ █░▀░█ ▒█░▒█ ▒█▀▀▄
2024-01-14 02:57:13 +00:00
// ░░░░░░░▀█▀░░░░░▀███▄░░░░░░░▐███░ ▒█▄▄█ ▀▀▀▀ ▀░░░▀ ▀░░░▀ ▒█▄▄▀ ▒█▄▄█
// ░░░░░░░░░░░░░░░░░▀███▄░░░░░███▌░
// ░░░░▄██▄░░░░░░░░░░░▀███▄░░▐███░░
// ░░▄██████▄░░░░░░░░░░░▀███▄███░░░
// ░█████▀▀████▄▄░░░░░░░░▄█████░░░░
// ░████▀░░░▀▀█████▄▄▄▄█████████▄░░
// ░░▀▀░░░░░░░░░▀▀██████▀▀░░░▀▀██░░
#[get("/")]
pub(crate) async fn index(r: HttpRequest) -> impl Responder {
let itemdb: &actix_web::web::Data<item::ItemDB> = r.app_data().unwrap();
2024-04-04 05:41:13 +00:00
let content = "";
2024-01-14 02:57:13 +00:00
web_base::func::build_site(&r, "Index", &content)
}
#[actix_web::main]
async fn main() -> std::io::Result<()> {
env_logger::init();
2024-01-16 08:02:23 +00:00
let itemdb = item::ItemDB::new("./itemdb", "mongodb://user:pass@127.0.0.1:27017").await;
2024-01-14 02:57:13 +00:00
let itemdb = actix_web::web::Data::new(itemdb);
2024-04-04 05:41:13 +00:00
web_base::map!(web_base::Site::new(), |app: actix_web::App<_>| {
app.app_data(itemdb.clone())
.service(index)
.service(routes::item::item_page)
.service(routes::item::variant_pages::add_item_variant_page)
.service(routes::item::variant_pages::add_item_variant_page_post)
.service(routes::item::inventory_page::add_item_inventory_page)
.service(routes::item::inventory_page::add_item_inventory_page_post)
})
2024-01-14 02:57:13 +00:00
.bind(("0.0.0.0".to_string(), 8080))?
.run()
.await
}