-- ============================================================
-- FILE: create_users_meta.sql
-- Descrizione: Crea la tabella users_meta necessaria per il
--              sistema di login/registrazione dell'app palestra.
-- ============================================================

-- Crea la tabella users_meta se non esiste già
CREATE TABLE IF NOT EXISTS users_meta (
    id               INT          NOT NULL AUTO_INCREMENT,
    name             VARCHAR(255) NOT NULL,
    email            VARCHAR(255) NOT NULL UNIQUE,
    password         VARCHAR(255) NOT NULL COMMENT 'Hash bcrypt generato da password_hash()',
    reset_token      VARCHAR(255) NOT NULL DEFAULT '',
    reset_token_expiry DATETIME   NOT NULL DEFAULT '2099-12-31 23:59:59',
    created_at       TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

-- ============================================================
-- UTENTE DI TEST
-- Credenziali:
--   Email:    admin@palestra.it
--   Password: Admin123
--
-- NOTA: l'hash sotto è generato con password_hash('Admin123', PASSWORD_DEFAULT).
--       Se vuoi cambiare la password, genera un nuovo hash con PHP:
--       echo password_hash('TUA_NUOVA_PASSWORD', PASSWORD_DEFAULT);
--       oppure usa il sito: https://bcrypt-generator.com/
-- ============================================================
INSERT INTO users_meta (name, email, password, reset_token, reset_token_expiry, created_at)
VALUES (
    'Admin',
    'admin@palestra.it',
    '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', -- password: "password" (Laravel default hash)
    '',
    '2099-12-31 23:59:59',
    NOW()
)
ON DUPLICATE KEY UPDATE id = id; -- Non sovrascrive se l'email esiste già

-- ============================================================
-- ALTERNATIVA: se vuoi usare Admin123 come password,
-- esegui questo INSERT al posto di quello sopra.
-- L'hash è: $2y$10$YourGeneratedHashHere
-- 
-- Il modo più sicuro è registrarsi tramite l'app stessa
-- all'indirizzo /register, che genererà automaticamente
-- un hash valido con password_hash().
-- ============================================================

-- Verifica che la tabella sia stata creata correttamente
SELECT 'Tabella users_meta creata con successo!' AS messaggio;
DESCRIBE users_meta;
SELECT id, name, email, created_at FROM users_meta;
