1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
use actix_session::Session; use actix_web::{web, HttpRequest}; use dbui_core::cfg::AppConfig; use dbui_core::ctx::RequestContext; use dbui_core::profile::UserProfile; pub fn req_context(_session: &Session, cfg: &web::Data<AppConfig>, req: &HttpRequest, action_key: &'static str) -> RequestContext { let app_cfg = cfg.get_ref().clone(); let user_profile: UserProfile = UserProfile::load(app_cfg.files(), app_cfg.root_logger()); let router = crate::util::router::RequestRouter::new(req.clone()); let logger = app_cfg .root_logger() .new(slog::o!("action" => action_key, "user_id" => user_profile.name().clone())); RequestContext::new(app_cfg, user_profile, router, logger) }