owner and admin section

This commit is contained in:
2026-09-09 08:26:26 +02:00
parent de46a91aa8
commit 85702c3000
30 changed files with 5611 additions and 674 deletions
@@ -0,0 +1,42 @@
<?php
use Phinx\Migration\AbstractMigration;
/**
* Aggiunge il campo "target" (pubblico servito) a shops, staff e services.
* Tipo SET MySQL: si possono selezionare più valori insieme (es. 'uomo,donna').
* Valori: uomo, donna, bambino, unisex.
*
* Scelta SET vs tabelle di collegamento: le categorie sono 4, fisse e senza
* attributi propri, quindi il SET è più semplice e filtrabile con FIND_IN_SET()
* senza JOIN aggiuntive. Nota logica (da applicare in ricerca): "unisex" copre
* sia uomo che donna.
*/
class AddTargetAudience extends AbstractMigration
{
public function change(): void
{
$values = "'uomo','donna','bambino','unisex'";
// shops: default unisex (un salone di norma serve tutti finché non specifica)
$this->execute("
ALTER TABLE `shops`
ADD COLUMN `target` SET($values) NOT NULL DEFAULT 'unisex'
AFTER `description`
");
// staff: chi tratta cosa. Default unisex.
$this->execute("
ALTER TABLE `staff`
ADD COLUMN `target` SET($values) NOT NULL DEFAULT 'unisex'
AFTER `role`
");
// services: a chi è rivolto il servizio. Default unisex.
$this->execute("
ALTER TABLE `services`
ADD COLUMN `target` SET($values) NOT NULL DEFAULT 'unisex'
AFTER `category`
");
}
}