-- Erstelle Tabelle für Rollen
CREATE TABLE IF NOT EXISTS roles (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(50) NOT NULL,
    description TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

-- Füge Standardrollen hinzu
INSERT INTO roles (name, description) VALUES
('admin', 'Administrator mit vollständigen Rechten'),
('pruefer', 'Prüfer für Spiele'),
('spieler', 'Regulärer Spieler'),
('entwickler', 'Systementwickler');

-- Füge Spalte für Rollen-ID zur users-Tabelle hinzu
ALTER TABLE users ADD COLUMN role_id INT DEFAULT 3 AFTER password;

-- Erstelle Foreign Key
ALTER TABLE users ADD CONSTRAINT fk_user_role FOREIGN KEY (role_id) REFERENCES roles(id);

-- Aktualisiere existierende Benutzer mit Standardrollen
UPDATE users SET role_id = 1 WHERE username = 'admin';
UPDATE users SET role_id = 3 WHERE role_id IS NULL;
