use axum::{
response::{IntoResponse, Redirect},
Extension,
};
use quokka::extract::{Extensions, Session, State};
use crate::{data::Severity, service::page_loader::ADMIN_USER_SESSION_KEY, state::AdminState};
pub async fn get_logout<S>(
admin_state: State<AdminState<S>>,
Extension(mut session): Extension<Session>,
) -> impl IntoResponse {
session.extensions.remove(ADMIN_USER_SESSION_KEY);
(
session,
Extensions::new()
.add(Severity::Success.message("Logout Successful", "You were sucessfully logged out")),
Redirect::to(&admin_state.login_url),
)
}