-- =============================================================================
-- PARCHE: REGISTRO DEL MÓDULO DE CONFIGURACIÓN Y PERMISOS PARA ADMINISTRADOR
-- Ejecutar en producción para habilitar las vistas de Usuarios, Roles y Logs
-- =============================================================================

-- 1. Registrar el módulo de Configuración si no existe
INSERT INTO auth.module (id, name_es, name_en, icon, order_index, is_active)
VALUES ('3d9e6a32-afc0-4eb8-da97-f4f26f4d5e4f', 'Configuración', 'Configuration', 'settings', 20, TRUE)
ON CONFLICT (id) DO NOTHING;

-- 2. Registrar las páginas asociadas (Usuarios, Roles y Permisos, Logs de Auditoría)
INSERT INTO auth.page (id, module_id, name_es, name_en, path, icon, order_index, is_active)
VALUES 
  ('5f1f8a32-8fc2-4eba-fa99-16f48f6d7e61', '3d9e6a32-afc0-4eb8-da97-f4f26f4d5e4f', 'Usuarios', 'Users', '/security/users', 'people', 1, TRUE),
  ('6f2f9a32-7fc3-4ebb-0fa9-27f59f7d8e72', '3d9e6a32-afc0-4eb8-da97-f4f26f4d5e4f', 'Roles y Permisos', 'Roles & Permissions', '/security/roles', 'security', 2, TRUE),
  ('c3d4e5f6-a7b8-4c9d-0e1f-2a3b4c5d6e7f', '3d9e6a32-afc0-4eb8-da97-f4f26f4d5e4f', 'Logs de Auditoría', 'Audit Logs', '/security/logs', 'history', 6, TRUE)
ON CONFLICT (id) DO NOTHING;

-- 3. Habilitar permisos completos (CRUD) para el rol de Administrador en estas páginas
INSERT INTO auth.profile (role_id, page_id, can_view, can_create, can_edit, can_delete)
VALUES
  ('8a9b3a32-dfc7-4eb5-aa94-c1f93f1d2e1c', '5f1f8a32-8fc2-4eba-fa99-16f48f6d7e61', TRUE, TRUE, TRUE, TRUE), -- Usuarios
  ('8a9b3a32-dfc7-4eb5-aa94-c1f93f1d2e1c', '6f2f9a32-7fc3-4ebb-0fa9-27f59f7d8e72', TRUE, TRUE, TRUE, TRUE), -- Roles y Permisos
  ('8a9b3a32-dfc7-4eb5-aa94-c1f93f1d2e1c', 'c3d4e5f6-a7b8-4c9d-0e1f-2a3b4c5d6e7f', TRUE, TRUE, TRUE, TRUE)  -- Logs de Auditoría
ON CONFLICT (role_id, page_id) DO UPDATE SET
  can_view = EXCLUDED.can_view,
  can_create = EXCLUDED.can_create,
  can_edit = EXCLUDED.can_edit,
  can_delete = EXCLUDED.can_delete;
