30 lines
871 B
PHP
30 lines
871 B
PHP
<?php
|
||
// admin/tools/retour_admin.php
|
||
declare(strict_types=1);
|
||
|
||
if (session_status() !== PHP_SESSION_ACTIVE) {
|
||
@session_start();
|
||
}
|
||
|
||
// On ne met pas require_login_or_redirect ici, car on peut être sous un compte client/praticien
|
||
// On se contente de vérifier qu'on a bien une info d’admin d’origine.
|
||
if (!empty($_SESSION['admin_impersonate']) && is_array($_SESSION['admin_impersonate'])) {
|
||
$orig = $_SESSION['admin_impersonate'];
|
||
|
||
if (isset($orig['admin_user_id'])) {
|
||
$_SESSION['user_id'] = $orig['admin_user_id'];
|
||
}
|
||
if (isset($orig['admin_reference_id'])) {
|
||
$_SESSION['reference_id'] = $orig['admin_reference_id'];
|
||
}
|
||
if (isset($orig['admin_role'])) {
|
||
$_SESSION['role'] = $orig['admin_role'];
|
||
}
|
||
|
||
unset($_SESSION['admin_impersonate']);
|
||
}
|
||
|
||
// Retour à l’admin
|
||
header('Location: /admin/index.php');
|
||
exit;
|