-- Aggiunge campi per verifica email agli utenti esistenti
-- Esegui questo script per aggiornare il database senza perdere dati

USE pilatesplatform;

-- Aggiungi campi per verifica email
ALTER TABLE users 
ADD COLUMN email_verified BOOLEAN DEFAULT FALSE COMMENT 'True se email verificata' AFTER is_active,
ADD COLUMN email_token VARCHAR(64) DEFAULT NULL COMMENT 'Token per verifica email' AFTER email_verified,
ADD COLUMN email_token_expires DATETIME DEFAULT NULL COMMENT 'Scadenza token verifica email' AFTER email_token;

-- Aggiungi indici per performance
ALTER TABLE users
ADD INDEX idx_email_verified (email_verified),
ADD INDEX idx_email_token (email_token);

-- Imposta tutti gli utenti esistenti come verificati (per retrocompatibilità)
UPDATE users SET email_verified = TRUE WHERE email_verified = FALSE;

-- Imposta admin come verificato
UPDATE users SET email_verified = TRUE WHERE is_admin = TRUE;

SELECT 'Migrazione completata! Campi email_verified, email_token, email_token_expires aggiunti.' AS status;
