mirror of
https://github.com/JMP-MS/ASPIC.git
synced 2026-10-27 14:57:09 +00:00
V1.008 rectifiée Evolution des paramétrages de l'écran de fond
This commit is contained in:
@@ -105,6 +105,25 @@ function comparerDateNullEnPremier(?string $a, ?string $b): int
|
||||
return strcmp($a, $b);
|
||||
}
|
||||
|
||||
/**
|
||||
* Capacité maximale de post-its "en attente" affichables sur le tableau de
|
||||
* liège de l'écran de fond, par attributaire (voir journal de développement,
|
||||
* section 28 — "bureau à l'ancienne"). Ajoutée le 2 septembre 2026, en amont
|
||||
* du code réel du tableau : Jean-Marc a posé le principe avant d'avoir les
|
||||
* pixels pour le calculer précisément ("mets-le où tu veux, il faudra le
|
||||
* faire évoluer") — valeur ronde provisoire, à corriger dès que la taille
|
||||
* réelle de la zone et celle d'un post-it seront posées à l'écran.
|
||||
*
|
||||
* Choix de principe explicite de Jean-Marc : PAS d'ascenseur/défilement sur
|
||||
* le tableau, même si ça permettrait d'accepter plus de post-its — un vrai
|
||||
* bureau a une capacité finie, et c'est justement cette contrainte physique
|
||||
* qui pousse à traiter ses tâches plutôt qu'à les empiler indéfiniment. Une
|
||||
* fois cette capacité atteinte, la création est refusée avec un message
|
||||
* clair (voir POST ci-dessous) plutôt que de trouver un moyen d'entasser
|
||||
* plus de post-its ou de faire défiler le tableau.
|
||||
*/
|
||||
const CAPACITE_TABLEAU_PAR_UTILISATEUR = 20;
|
||||
|
||||
try {
|
||||
switch ($method) {
|
||||
case 'GET':
|
||||
@@ -167,6 +186,25 @@ try {
|
||||
$todoUser = $_SESSION['USR_Code'];
|
||||
}
|
||||
|
||||
// Capacité du tableau (voir CAPACITE_TABLEAU_PAR_UTILISATEUR
|
||||
// ci-dessus) : ne s'applique qu'aux tâches qui vont réellement
|
||||
// occuper un post-it "en attente" sur le bureau de $todoUser.
|
||||
// Une tâche créée déjà réalisée (TDL_RealDate fourni dès la
|
||||
// création, voir doc d'en-tête — permet de journaliser une tâche
|
||||
// déjà faite) n'occupe jamais de place sur le tableau, donc
|
||||
// n'est jamais bloquée par cette limite.
|
||||
if (empty($data['TDL_RealDate'])) {
|
||||
$stmtCompte = $pdo->prepare(
|
||||
'SELECT COUNT(*) FROM ASP_ToDoList WHERE TDL_Actif = 1 AND TDL_ToDoUser = ? AND TDL_RealDate IS NULL'
|
||||
);
|
||||
$stmtCompte->execute([$todoUser]);
|
||||
if ((int)$stmtCompte->fetchColumn() >= CAPACITE_TABLEAU_PAR_UTILISATEUR) {
|
||||
http_response_code(409);
|
||||
echo json_encode(['error' => 'Ton tableau est plein, tu ne peux plus ajouter de post-it !']);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
// TDL_ToDoDate : incluse dans l'INSERT seulement si fournie par le
|
||||
// client (permet de dater rétroactivement une tâche oubliée) —
|
||||
// sinon on laisse MySQL appliquer DEFAULT CURRENT_TIMESTAMP
|
||||
|
||||
Reference in New Issue
Block a user