added statistic and remove froms school
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
session_start();
|
||||
include('include/headscript.php'); // ← adatta il path se necessario (da userarea/ sale di due livelli)
|
||||
|
||||
header('Content-Type: application/json');
|
||||
|
||||
if (!isset($_SESSION['iduserlogin'])) {
|
||||
echo json_encode(['success' => false, 'message' => 'Non autorizzato']);
|
||||
exit;
|
||||
}
|
||||
|
||||
$dbHandler = DBHandlerSelect::getInstance();
|
||||
$pdo = $dbHandler->getConnection();
|
||||
|
||||
$school_id = (int)($_POST['school_id'] ?? 0);
|
||||
$user_id = (int)$_SESSION['iduserlogin'];
|
||||
|
||||
if ($school_id <= 0) {
|
||||
echo json_encode(['success' => false, 'message' => 'Scuola non valida']);
|
||||
exit;
|
||||
}
|
||||
|
||||
// Verifica iscrizione attiva
|
||||
$stmt = $pdo->prepare("
|
||||
SELECT id FROM user_schools
|
||||
WHERE user_id = ? AND school_id = ? AND status = 'active'
|
||||
");
|
||||
$stmt->execute([$user_id, $school_id]);
|
||||
if (!$stmt->fetch()) {
|
||||
echo json_encode(['success' => false, 'message' => 'Non sei iscritto a questa scuola']);
|
||||
exit;
|
||||
}
|
||||
|
||||
// Soft-delete: imposta status = 'inactive'
|
||||
$stmt = $pdo->prepare("
|
||||
UPDATE user_schools
|
||||
SET status = 'inactive', updated_at = CURRENT_TIMESTAMP
|
||||
WHERE user_id = ? AND school_id = ?
|
||||
");
|
||||
$stmt->execute([$user_id, $school_id]);
|
||||
|
||||
// Opzionale: resetta scuola corrente in sessione
|
||||
if (isset($_SESSION['school_id']) && $_SESSION['school_id'] == $school_id) {
|
||||
unset($_SESSION['school_id'], $_SESSION['school_name'], $_SESSION['school_selected']);
|
||||
}
|
||||
|
||||
// (Opzionale) cancella dati associati - commenta se NON vuoi eliminare
|
||||
// Esempio cancellazione prenotazioni:
|
||||
$pdo->prepare("
|
||||
DELETE sb FROM session_bookings sb
|
||||
JOIN class_sessions cs ON sb.session_id = cs.id
|
||||
WHERE sb.user_id = ? AND cs.school_id = ?
|
||||
")->execute([$user_id, $school_id]);
|
||||
|
||||
// Esempio cancellazione ordini:
|
||||
$pdo->prepare("DELETE FROM orders WHERE user_id = ? AND school_id = ?")
|
||||
->execute([$user_id, $school_id]);
|
||||
|
||||
echo json_encode(['success' => true]);
|
||||
Reference in New Issue
Block a user