<?php
session_start();
header('Content-Type: application/json');
require_once '../DB/db_credentials.php';
require_once '../DB/db_connection.php';
function isPlanPassed($plan) {
$endTimestamp = strtotime("+{$plan['weeks']} weeks -1 day", strtotime($plan['fromDate']));
return (time() > $endTimestamp);
}
function isPlanActive($plan) {
$startTimestamp = strtotime($plan['fromDate']);
$activeStart = $startTimestamp - 7*24*3600;
$endTimestamp = strtotime("+{$plan['weeks']} weeks -1 day", $startTimestamp);
$now = time();
return ($now >= $activeStart && $now <= $endTimestamp);
}
$planId = $_POST['plan_id'] ?? null;
$fromDate = $_POST['fromDate'] ?? '';
$weeks = (int)($_POST['weeks'] ?? 0);
if (!$planId || !$fromDate || $weeks < 1) {
die("Invalid input");
}
$stmt = mysqli_prepare($dbc, "SELECT * FROM citeLeParis_plan WHERE pk_plan = ?");
mysqli_stmt_bind_param($stmt, 'i', $planId);
mysqli_stmt_execute($stmt);
$result = mysqli_stmt_get_result($stmt);
$plan = mysqli_fetch_assoc($result);
if (!$plan) {
die("Plan not found");
}
if (isPlanPassed($plan) || isPlanActive($plan)) {
die("Cannot modify active or passed plans");
}
$stmt = mysqli_prepare($dbc, "UPDATE citeLeParis_plan SET fromDate = ?, weeks = ? WHERE pk_plan = ?");
mysqli_stmt_bind_param($stmt, 'sii', $fromDate, $weeks, $planId);
mysqli_stmt_execute($stmt);
header('Location: manage_plans.php');
exit;
?>