Aggiornamento lato UTENTE
This commit is contained in:
+59
-14
@@ -26,10 +26,10 @@ $comuni = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|||||||
|
|
||||||
if (postMethod()) {
|
if (postMethod()) {
|
||||||
|
|
||||||
try {
|
|
||||||
|
|
||||||
switch($azione) {
|
switch($azione) {
|
||||||
case "predefinito": {
|
case "predefinito": { // OKOKFATTO
|
||||||
|
|
||||||
|
try {
|
||||||
if (!$idIndirizzo) {
|
if (!$idIndirizzo) {
|
||||||
$messaggio = "Id indirizzo non valido";
|
$messaggio = "Id indirizzo non valido";
|
||||||
die("Id indirizzo non valido");
|
die("Id indirizzo non valido");
|
||||||
@@ -62,9 +62,23 @@ if (postMethod()) {
|
|||||||
$pdo->commit();
|
$pdo->commit();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
|
||||||
|
if ($pdo -> inTransaction()) {
|
||||||
|
$pdo->rollBack();
|
||||||
}
|
}
|
||||||
|
|
||||||
case "inserisci": {
|
$messaggio =
|
||||||
|
"Errore durante l'aggiornamento dell'indirizzo" .
|
||||||
|
$e->getMessage();
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
case "inserisci": { // OKOKFATTO
|
||||||
|
try {
|
||||||
if (
|
if (
|
||||||
$via === "" ||
|
$via === "" ||
|
||||||
$numeroCivico === "" ||
|
$numeroCivico === "" ||
|
||||||
@@ -74,6 +88,13 @@ if (postMethod()) {
|
|||||||
die("Compila i campi correttamente");
|
die("Compila i campi correttamente");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Verifica della presenza di indirizzi
|
||||||
|
già registrati a nome del cliente.
|
||||||
|
|
||||||
|
Questa operazione non richiede che
|
||||||
|
sia inserita nella beginTransaction()
|
||||||
|
*/
|
||||||
$stmt = $pdo->prepare("
|
$stmt = $pdo->prepare("
|
||||||
SELECT EXISTS (
|
SELECT EXISTS (
|
||||||
SELECT 1
|
SELECT 1
|
||||||
@@ -93,6 +114,10 @@ if (postMethod()) {
|
|||||||
$predefinito = 1;
|
$predefinito = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Inizia la transazione,
|
||||||
|
si inserisce nel database la via.
|
||||||
|
*/
|
||||||
$pdo->beginTransaction();
|
$pdo->beginTransaction();
|
||||||
$stmt = $pdo->prepare("
|
$stmt = $pdo->prepare("
|
||||||
INSERT INTO indirizzo (via, numeroCivico, predefinito, idComune, idCliente)
|
INSERT INTO indirizzo (via, numeroCivico, predefinito, idComune, idCliente)
|
||||||
@@ -105,11 +130,28 @@ if (postMethod()) {
|
|||||||
"idComune" => $idComune,
|
"idComune" => $idComune,
|
||||||
"idCliente" => $idCliente
|
"idCliente" => $idCliente
|
||||||
]);
|
]);
|
||||||
|
|
||||||
$pdo->commit();
|
$pdo->commit();
|
||||||
|
|
||||||
|
$messaggio = "Indirizzo aggiunto con successo";
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
|
||||||
|
if ($pdo -> inTransaction()) {
|
||||||
|
$pdo->rollBack();
|
||||||
}
|
}
|
||||||
|
|
||||||
case "elimina": {
|
$messaggio =
|
||||||
|
"Errore durante l'inserimento dell'indirizzo" .
|
||||||
|
$e->getMessage();
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
case "elimina": { // OKOKFATTO
|
||||||
|
try {
|
||||||
if (!$idIndirizzo) {
|
if (!$idIndirizzo) {
|
||||||
$messaggio = "Id indirizzo non valido";
|
$messaggio = "Id indirizzo non valido";
|
||||||
die("Id indirizzo non valido");
|
die("Id indirizzo non valido");
|
||||||
@@ -131,6 +173,18 @@ if (postMethod()) {
|
|||||||
$messaggio = "Indirizzo eliminato con successo";
|
$messaggio = "Indirizzo eliminato con successo";
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
} catch (PDOException $e) {
|
||||||
|
|
||||||
|
if ($pdo -> inTransaction()) {
|
||||||
|
$pdo->rollBack();
|
||||||
|
}
|
||||||
|
|
||||||
|
$messaggio =
|
||||||
|
"Errore durante l'eliminazione dell'indirizzo" .
|
||||||
|
$e->getMessage();
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
default:
|
default:
|
||||||
@@ -138,15 +192,6 @@ if (postMethod()) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (PDOException $e) {
|
|
||||||
if ($pdo->inTransaction()) {
|
|
||||||
$pdo->rollBack();
|
|
||||||
}
|
|
||||||
die(
|
|
||||||
"Errore durante l'aggiunta dell'indirizzo di consegna: "
|
|
||||||
. $e->getMessage()
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$stmt = $pdo->prepare("
|
$stmt = $pdo->prepare("
|
||||||
|
|||||||
+13
-4
@@ -24,7 +24,10 @@ $pageTitle = "Menu"; $basePath = "..";
|
|||||||
require __DIR__ . "/../includes/header.php";
|
require __DIR__ . "/../includes/header.php";
|
||||||
?>
|
?>
|
||||||
<div class="d-flex justify-content-between align-items-center mb-3">
|
<div class="d-flex justify-content-between align-items-center mb-3">
|
||||||
<div><h1 class="h3 mb-1">Menu</h1><p class="text-muted mb-0">Prodotti disponibili e personalizzazioni.</p></div>
|
<div>
|
||||||
|
<h1 class="h3 mb-1">Menu</h1>
|
||||||
|
<p class="text-muted mb-0">Prodotti disponibili e personalizzazioni.</p>
|
||||||
|
</div>
|
||||||
<a class="btn btn-primary" href="ordine.php">Componi ordine</a>
|
<a class="btn btn-primary" href="ordine.php">Componi ordine</a>
|
||||||
</div>
|
</div>
|
||||||
<?php if (!$prodotti): ?>
|
<?php if (!$prodotti): ?>
|
||||||
@@ -32,15 +35,21 @@ require __DIR__ . "/../includes/header.php";
|
|||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
<div class="row g-3">
|
<div class="row g-3">
|
||||||
<?php foreach ($prodotti as $prodotto): ?>
|
<?php foreach ($prodotti as $prodotto): ?>
|
||||||
<div class="col-md-6"><div class="card h-100 shadow-sm"><div class="card-body">
|
<div class="col-md-6">
|
||||||
|
<div class="card h-100 shadow-sm">
|
||||||
|
<div class="card-body">
|
||||||
<h2 class="h5"><?= e($prodotto["nome"] ?? "") ?></h2>
|
<h2 class="h5"><?= e($prodotto["nome"] ?? "") ?></h2>
|
||||||
<p><?= e($prodotto["descrizione"] ?? "") ?></p>
|
<p><?= e($prodotto["descrizione"] ?? "") ?></p>
|
||||||
<span class="badge bg-primary">€ <?= e(number_format((float) ($prodotto["prezzoBase"] ?? 0), 2, ",", ".")) ?></span>
|
<span class="badge bg-primary">€ <?= e(number_format((float) ($prodotto["prezzoBase"] ?? 0), 2, ",", ".")) ?></span>
|
||||||
<?php if (!empty($prodotto["nomeCaratteristica"])): ?>
|
<?php if (!empty($prodotto["nomeCaratteristica"])): ?>
|
||||||
<hr><strong>Caratteristica:</strong> <?= e($prodotto["nomeCaratteristica"]) ?>
|
<hr>
|
||||||
|
<strong>Caratteristica:</strong>
|
||||||
|
<?= e($prodotto["nomeCaratteristica"]) ?>
|
||||||
(+ € <?= e($prodotto["differenzaPrezzo"] ?? 0) ?>)
|
(+ € <?= e($prodotto["differenzaPrezzo"] ?? 0) ?>)
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
</div></div></div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<?php endforeach; ?>
|
<?php endforeach; ?>
|
||||||
</div>
|
</div>
|
||||||
<?php require __DIR__ . "/../includes/footer.php"; ?>
|
<?php require __DIR__ . "/../includes/footer.php"; ?>
|
||||||
|
|||||||
@@ -47,9 +47,6 @@
|
|||||||
]);
|
]);
|
||||||
|
|
||||||
$ordini = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$ordini = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
/* TODO SQL DI SUPPORTO - Elenco e stato degli ordini del cliente.
|
|
||||||
* Input: $idCliente. Output: idOrdine, dataOraCreazione, statoConferma,
|
|
||||||
* orarioConsegna, totale, tempoStimatoConsegna, nomeStato. */
|
|
||||||
$pageTitle = "I miei ordini"; $basePath = "..";
|
$pageTitle = "I miei ordini"; $basePath = "..";
|
||||||
require __DIR__ . "/../includes/header.php";
|
require __DIR__ . "/../includes/header.php";
|
||||||
?>
|
?>
|
||||||
|
|||||||
@@ -26,6 +26,7 @@
|
|||||||
$prodotti = []; // CARICATO
|
$prodotti = []; // CARICATO
|
||||||
$caratteristicheDisponibili = []; // CARICATO
|
$caratteristicheDisponibili = []; // CARICATO
|
||||||
$indirizzi = []; // CARICATO
|
$indirizzi = []; // CARICATO
|
||||||
|
$indirizzoPredefinito = null; // CARICATO
|
||||||
$righeOrdine = []; // CARICATO
|
$righeOrdine = []; // CARICATO
|
||||||
|
|
||||||
$riepilogo = null; // CARICATO
|
$riepilogo = null; // CARICATO
|
||||||
@@ -51,6 +52,29 @@
|
|||||||
|
|
||||||
$indirizzi = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
$indirizzi = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
|
$stmt = $pdo->prepare("
|
||||||
|
SELECT
|
||||||
|
indirizzo.idIndirizzo,
|
||||||
|
indirizzo.via,
|
||||||
|
indirizzo.numeroCivico,
|
||||||
|
indirizzo.predefinito,
|
||||||
|
indirizzo.idComune
|
||||||
|
|
||||||
|
FROM
|
||||||
|
indirizzo
|
||||||
|
|
||||||
|
WHERE
|
||||||
|
indirizzo.idCliente = :idCliente
|
||||||
|
AND indirizzo.predefinito = 1
|
||||||
|
|
||||||
|
LIMIT 1
|
||||||
|
");
|
||||||
|
|
||||||
|
$stmt->execute([
|
||||||
|
"idCliente" => $idCliente
|
||||||
|
]);
|
||||||
|
|
||||||
|
$indirizzoPredefinito = $stmt->fetch(PDO::FETCH_ASSOC);
|
||||||
|
|
||||||
/* ============================================================
|
/* ============================================================
|
||||||
* EVENTUALE ORDINE IN BOZZA
|
* EVENTUALE ORDINE IN BOZZA
|
||||||
@@ -834,7 +858,36 @@
|
|||||||
name="idIndirizzo"
|
name="idIndirizzo"
|
||||||
required
|
required
|
||||||
>
|
>
|
||||||
|
<?php if ($indirizzoPredefinito === null): ?>
|
||||||
<option value="">Seleziona...</option>
|
<option value="">Seleziona...</option>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
<?php if ($indirizzoPredefinito !== null): ?>
|
||||||
|
<option
|
||||||
|
value="<?= e($indirizzoPredefinito["idIndirizzo"]) ?>"
|
||||||
|
select
|
||||||
|
>
|
||||||
|
<?= e($indirizzoPredefinito["via"] . " " . $indirizzoPredefinito["numeroCivico"]) ?>
|
||||||
|
<?= !empty($indirizzoPredefinito["predefinito"]) ? "(predefinito)" : "" ?>
|
||||||
|
</option>
|
||||||
|
<?php endif; ?>
|
||||||
|
|
||||||
|
// Rimuovo l'indirizzo dagli indirizzi
|
||||||
|
<?php
|
||||||
|
if (
|
||||||
|
is_array($indirizzoPredefinito) &&
|
||||||
|
isset($indirizzoPredefinito["idIndirizzo"]) &&
|
||||||
|
isset($indirizzoPredefinito["via"]) &&
|
||||||
|
isset($indirizzoPredefinito["numeroCivico"])
|
||||||
|
) {
|
||||||
|
foreach ($indirizzi as $key => $i) {
|
||||||
|
if ($i["idIndirizzo"] == $indirizzoPredefinito["idIndirizzo"]) {
|
||||||
|
unset($indirizzi[$key]);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
<?php foreach ($indirizzi as $i): ?>
|
<?php foreach ($indirizzi as $i): ?>
|
||||||
<option value="<?= e($i["idIndirizzo"]) ?>">
|
<option value="<?= e($i["idIndirizzo"]) ?>">
|
||||||
|
|||||||
@@ -13,8 +13,25 @@ $conteggi = [];
|
|||||||
$pageTitle = "Dashboard personale"; $basePath = "..";
|
$pageTitle = "Dashboard personale"; $basePath = "..";
|
||||||
require __DIR__ . "/../includes/header.php";
|
require __DIR__ . "/../includes/header.php";
|
||||||
?>
|
?>
|
||||||
<h1 class="h3">Dashboard personale</h1><p>Panoramica degli ordini attivi.</p>
|
<h1 class="h3">Dashboard personale</h1>
|
||||||
<?php if (!$conteggi): ?><div class="alert alert-info">I conteggi saranno mostrati dopo l'implementazione della Query 11.</div><?php endif; ?>
|
<p>Panoramica degli ordini attivi.</p>
|
||||||
<div class="row g-3 mb-4"><?php foreach ($conteggi as $c): ?><div class="col-sm-6 col-lg"><div class="card text-center h-100 shadow-sm"><div class="card-body"><div class="display-6"><?= e($c["numeroOrdini"]) ?></div><div><?= e($c["nomeStato"]) ?></div></div></div></div><?php endforeach; ?></div>
|
<?php if (!$conteggi): ?>
|
||||||
|
<div class="alert alert-info">I conteggi saranno mostrati dopo l'implementazione della Query 11.</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<div class="row g-3 mb-4">
|
||||||
|
<?php foreach ($conteggi as $c): ?>
|
||||||
|
<div class="col-sm-6 col-lg">
|
||||||
|
<div class="card text-center h-100 shadow-sm">
|
||||||
|
<div class="card-body">
|
||||||
|
<div class="display-6">
|
||||||
|
<?= e($c["numeroOrdini"]) ?>
|
||||||
|
</div>
|
||||||
|
<div><?= e($c["nomeStato"]) ?>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<?php endforeach; ?></div>
|
||||||
|
|
||||||
<a class="btn btn-primary" href="ordini.php">Apri gli ordini correnti</a>
|
<a class="btn btn-primary" href="ordini.php">Apri gli ordini correnti</a>
|
||||||
<?php require __DIR__ . "/../includes/footer.php"; ?>
|
<?php require __DIR__ . "/../includes/footer.php"; ?>
|
||||||
|
|||||||
@@ -1,2 +1,4 @@
|
|||||||
[+] Preferiti: Il cliente può avere dei prodotti preferiti
|
[+] Preferiti: Il cliente può avere dei prodotti preferiti
|
||||||
[+] Immagini
|
[+] Immagini
|
||||||
|
|
||||||
|
[+] OKOKFATTO,CARICATO keywords da eliminare
|
||||||
Reference in New Issue
Block a user