Sindbad~EG File Manager

Current Path : /home/copmadinaarea/thecopmadinaarea.org/portal/sql/
Upload File :
Current File : /home/copmadinaarea/thecopmadinaarea.org/portal/sql/update_module_access_levels.sql

-- Update Module Access Levels
-- This script sets appropriate access levels for all modules
-- Access hierarchy: assembly -> district -> area -> superuser

-- Core modules (accessible to all levels)
UPDATE module_management SET required_role = 'assembly' 
WHERE module_name IN ('Membership', 'Events', 'Event Attendance', 'Event Registrations');

-- Card and code management (assembly level)
UPDATE module_management SET required_role = 'assembly' 
WHERE module_name IN ('Membership Cards', 'Member Codes');

-- Administration modules (higher levels)
UPDATE module_management SET required_role = 'area' 
WHERE module_name IN ('Areas');

UPDATE module_management SET required_role = 'district' 
WHERE module_name IN ('Districts');

UPDATE module_management SET required_role = 'assembly' 
WHERE module_name IN ('Assemblies');

-- User and system management (area level)
UPDATE module_management SET required_role = 'area' 
WHERE module_name IN ('Users', 'User Management', 'Member Accounts');

-- Communication modules (area level)
UPDATE module_management SET required_role = 'area' 
WHERE module_name IN ('Email Management', 'Messaging', 'Notifications');

-- Reports and analytics (district level)
UPDATE module_management SET required_role = 'district' 
WHERE module_name IN ('Reports', 'Event Reports', 'Audit Logs');

-- System settings (superuser only)
UPDATE module_management SET required_role = 'superuser' 
WHERE module_name IN ('Settings', 'System Settings', 'Page Content Editor', 'General Settings');

-- Issues and complaints (assembly level - public facing)
UPDATE module_management SET required_role = 'assembly' 
WHERE module_name IN ('Membership Issues');

-- Event forms (assembly level)
UPDATE module_management SET required_role = 'assembly' 
WHERE module_name IN ('Event Forms');

-- Verify the changes
SELECT 
    module_name, 
    module_url, 
    required_role, 
    CASE required_role
        WHEN 'assembly' THEN '1 - Assembly Level (Lowest)'
        WHEN 'district' THEN '2 - District Level'
        WHEN 'area' THEN '3 - Area Level'
        WHEN 'superuser' THEN '4 - Superuser (Highest)'
        ELSE 'Unknown'
    END as access_description,
    is_active
FROM module_management 
ORDER BY 
    CASE required_role
        WHEN 'assembly' THEN 1
        WHEN 'district' THEN 2
        WHEN 'area' THEN 3
        WHEN 'superuser' THEN 4
    END,
    display_order;

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists