2023-07-26 11:16:29 +02:00
|
|
|
use actix_admin::prelude::*;
|
|
|
|
use actix_web::web::{Data, ServiceConfig};
|
|
|
|
|
|
|
|
pub fn mount(config: &mut ServiceConfig) {
|
|
|
|
let actix_admin_builder = create_actix_admin_builder();
|
|
|
|
|
|
|
|
config
|
|
|
|
.app_data(Data::new(actix_admin_builder.get_actix_admin()))
|
|
|
|
.service(actix_admin_builder.get_scope());
|
|
|
|
}
|
|
|
|
|
|
|
|
fn create_actix_admin_builder() -> ActixAdminBuilder {
|
|
|
|
let configuration = ActixAdminConfiguration {
|
|
|
|
enable_auth: false,
|
|
|
|
user_is_logged_in: None,
|
|
|
|
login_link: None,
|
|
|
|
logout_link: None,
|
|
|
|
file_upload_directory: "./file_uploads",
|
|
|
|
navbar_title: "oswilno - admin",
|
|
|
|
};
|
|
|
|
|
|
|
|
let mut admin_builder = ActixAdminBuilder::new(configuration);
|
2023-07-31 12:16:29 +02:00
|
|
|
{
|
|
|
|
use oswilno_contract::prelude::Accounts;
|
|
|
|
let view = ActixAdminViewModel::from(Accounts);
|
|
|
|
admin_builder.add_entity::<Accounts>(&view);
|
|
|
|
}
|
2023-07-27 17:36:30 +02:00
|
|
|
{
|
|
|
|
use oswilno_contract::prelude::ParkingSpaces;
|
|
|
|
let view = ActixAdminViewModel::from(ParkingSpaces);
|
|
|
|
admin_builder.add_entity_to_category::<ParkingSpaces>(&view, "Parking spaces");
|
|
|
|
}
|
|
|
|
{
|
|
|
|
use oswilno_contract::prelude::ParkingSpaceRents;
|
|
|
|
let view = ActixAdminViewModel::from(ParkingSpaceRents);
|
|
|
|
admin_builder.add_entity_to_category::<ParkingSpaceRents>(&view, "Parking spaces");
|
|
|
|
}
|
2023-07-31 12:16:29 +02:00
|
|
|
for scope in admin_builder.scopes.keys() {
|
2023-08-06 22:14:03 +02:00
|
|
|
tracing::trace!("Scope {scope:?}");
|
2023-07-31 12:16:29 +02:00
|
|
|
}
|
2023-07-26 11:16:29 +02:00
|
|
|
|
|
|
|
admin_builder
|
|
|
|
}
|