-- Create new unified permission INSERT INTO permissions (name, display_name, description, module) VALUES ('settings.manage', 'Správa nastavení', 'Správa všech nastavení systému', 'settings') ON DUPLICATE KEY UPDATE display_name = VALUES(display_name); -- Grant to all roles that had any of the old 3 INSERT IGNORE INTO role_permissions (role_id, permission_id) SELECT DISTINCT rp.role_id, (SELECT id FROM permissions WHERE name = 'settings.manage') FROM role_permissions rp JOIN permissions p ON p.id = rp.permission_id WHERE p.name IN ('offers.settings', 'settings.roles', 'settings.security'); -- Clean up old role_permissions DELETE FROM role_permissions WHERE permission_id IN (SELECT id FROM permissions WHERE name IN ('offers.settings', 'settings.roles', 'settings.security')); -- Remove old permissions DELETE FROM permissions WHERE name IN ('offers.settings', 'settings.roles', 'settings.security');