events yogibook
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* STUB mailer del modulo Eventi.
|
||||
*
|
||||
* Per ora NON invia davvero: registra solo un log, così tutto il flusso
|
||||
* (annullamento + scelta "invia mail") è già funzionante end-to-end.
|
||||
* Nello step successivo definiamo il TEMPLATE e attiviamo l'invio reale via
|
||||
* PHPMailer, leggendo le variabili MAIL_* dal .env che hai già.
|
||||
*
|
||||
* Config disponibile nel .env:
|
||||
* MAIL_HOST=mail.yogasoul.it MAIL_PORT=465 MAIL_ENCRYPTION=ssl
|
||||
* MAIL_USERNAME=info@yogasoul.it MAIL_PASSWORD=...
|
||||
* MAIL_FROM_ADDRESS=info@yogasoul.it MAIL_FROM_NAME="YogiBook"
|
||||
*/
|
||||
|
||||
if (!function_exists('sendEventCancellationMail')) {
|
||||
/**
|
||||
* @param string $toEmail Email destinatario
|
||||
* @param string $toName Nome destinatario
|
||||
* @param array $event Riga completa della tabella events
|
||||
*/
|
||||
function sendEventCancellationMail(string $toEmail, string $toName, array $event): bool
|
||||
{
|
||||
// ------------------------------------------------------------------
|
||||
// STEP SUCCESSIVO: sostituire il log qui sotto con l'invio reale.
|
||||
// Scheletro PHPMailer (richiede: composer require phpmailer/phpmailer
|
||||
// e un modo per leggere il .env, es. vlucas/phpdotenv oppure il
|
||||
// bootstrap Laravel già presente nel progetto):
|
||||
//
|
||||
// use PHPMailer\PHPMailer\PHPMailer;
|
||||
// $mail = new PHPMailer(true);
|
||||
// $mail->isSMTP();
|
||||
// $mail->Host = getenv('MAIL_HOST');
|
||||
// $mail->SMTPAuth = true;
|
||||
// $mail->Username = getenv('MAIL_USERNAME');
|
||||
// $mail->Password = getenv('MAIL_PASSWORD');
|
||||
// $mail->SMTPSecure = getenv('MAIL_ENCRYPTION'); // 'ssl'
|
||||
// $mail->Port = (int) getenv('MAIL_PORT'); // 465
|
||||
// $mail->setFrom(getenv('MAIL_FROM_ADDRESS'), getenv('MAIL_FROM_NAME'));
|
||||
// $mail->addAddress($toEmail, $toName);
|
||||
// $mail->isHTML(true);
|
||||
// $mail->Subject = 'Evento annullato: ' . $event['title'];
|
||||
// $mail->Body = '...TEMPLATE HTML...';
|
||||
// return $mail->send();
|
||||
// ------------------------------------------------------------------
|
||||
|
||||
error_log(sprintf(
|
||||
'[event mail] STUB annullamento -> %s (%s) per evento #%d "%s"',
|
||||
$toEmail,
|
||||
$toName,
|
||||
(int) $event['id'],
|
||||
$event['title'] ?? ''
|
||||
));
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
+60
-30
@@ -70,63 +70,93 @@
|
||||
</li>
|
||||
|
||||
<?php if (Auth::user()->hasRole('Admin')): ?>
|
||||
<li class="menu-title" data-key="t-applications">Amministrazione</li>
|
||||
|
||||
<li>
|
||||
<a href="admin-services.php" class="">
|
||||
<i class="bx bx-edit-alt icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Servizi</span>
|
||||
</a>
|
||||
</li>
|
||||
<!-- Classi & Prenotazioni -->
|
||||
<li class="menu-title" data-key="t-admin-classi">Classi & Prenotazioni</li>
|
||||
|
||||
<li>
|
||||
<a href="adminpanel.php" class="">
|
||||
<i class="bx bxs-school icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Classi</span>
|
||||
<span class="menu-item">Classi</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="admin-services.php" class="">
|
||||
<i class="bx bx-edit-alt icon nav-icon"></i>
|
||||
<span class="menu-item">Servizi</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="pendingbookedclass.php" class="">
|
||||
<i class="bx bx-time-five icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Pending/Waiting</span>
|
||||
<span class="menu-item">Pending/Waiting</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="dayoff.php" class="">
|
||||
<i class="bx bx-power-off icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Day Off</span>
|
||||
<span class="menu-item">Day Off</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Eventi -->
|
||||
<li class="menu-title" data-key="t-admin-eventi">Eventi</li>
|
||||
|
||||
<li>
|
||||
<a href="events.php" class="">
|
||||
<i class="bx bx-calendar-star icon nav-icon"></i>
|
||||
<span class="menu-item">Eventi</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="event_locations.php" class="">
|
||||
<i class="bx bx-map icon nav-icon"></i>
|
||||
<span class="menu-item">Sedi</span>
|
||||
</a>
|
||||
</li>
|
||||
<!-- Ordini -->
|
||||
<li class="menu-title" data-key="t-admin-ordini">Ordini</li>
|
||||
|
||||
<li>
|
||||
<a href="orderbooklist.php" class="">
|
||||
<i class="bx bx-list-check icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Order Pending</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="certificati.php" class="">
|
||||
<i class="bx bx-certification icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Certificati</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="situationusers.php" class="">
|
||||
<i class="bx bx-bar-chart-alt-2 icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Situazione</span>
|
||||
<span class="menu-item">Order Pending</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="ordersummary.php" class="">
|
||||
<i class="bx bx-receipt icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Sommario Ordini</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="optionsschool.php" class="">
|
||||
<i class="bx bx-receipt icon nav-icon"></i>
|
||||
<span class="menu-item" data-key="t-email">Opzioni Scuola</span>
|
||||
<span class="menu-item">Sommario Ordini</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Report & Certificati -->
|
||||
<li class="menu-title" data-key="t-admin-report">Report & Certificati</li>
|
||||
|
||||
<li>
|
||||
<a href="situationusers.php" class="">
|
||||
<i class="bx bx-bar-chart-alt-2 icon nav-icon"></i>
|
||||
<span class="menu-item">Situazione</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="certificati.php" class="">
|
||||
<i class="bx bx-certification icon nav-icon"></i>
|
||||
<span class="menu-item">Certificati</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Impostazioni -->
|
||||
<li class="menu-title" data-key="t-admin-settings">Impostazioni</li>
|
||||
|
||||
<li>
|
||||
<a href="optionsschool.php" class="">
|
||||
<i class="bx bx-slider-alt icon nav-icon"></i>
|
||||
<span class="menu-item">Opzioni Scuola</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<!-- Template (demo) -->
|
||||
<li class="menu-title" data-key="t-applications">Template</li>
|
||||
|
||||
<li>
|
||||
|
||||
Reference in New Issue
Block a user