-- Script SQL para crear usuario y base de datos
-- EJECUTAR: sudo -u postgres psql -f scripts/create-user.sql

-- Crear usuario si no existe
DO $$
BEGIN
  IF NOT EXISTS (SELECT FROM pg_user WHERE usename = 'planetazuzu') THEN
    CREATE USER planetazuzu WITH PASSWORD 'Monforte.1977';
    RAISE NOTICE 'Usuario planetazuzu creado';
  ELSE
    RAISE NOTICE 'Usuario planetazuzu ya existe';
    -- Actualizar password por si acaso
    ALTER USER planetazuzu WITH PASSWORD 'Monforte.1977';
  END IF;
END
$$;

-- Crear base de datos si no existe
SELECT 'CREATE DATABASE emerges_tes OWNER planetazuzu'
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'emerges_tes')\gexec

-- Dar permisos
GRANT ALL PRIVILEGES ON DATABASE emerges_tes TO planetazuzu;

-- Conectar a la base de datos y dar permisos en el esquema
\c emerges_tes

-- Crear esquema si no existe (se creará en migración, pero por si acaso)
CREATE SCHEMA IF NOT EXISTS emerges_content;

-- Dar permisos en el esquema
GRANT ALL ON SCHEMA emerges_content TO planetazuzu;
ALTER DEFAULT PRIVILEGES IN SCHEMA emerges_content GRANT ALL ON TABLES TO planetazuzu;
ALTER DEFAULT PRIVILEGES IN SCHEMA emerges_content GRANT ALL ON SEQUENCES TO planetazuzu;

\q

