diff --git a/index.php b/index.php index 4317978..e310475 100644 --- a/index.php +++ b/index.php @@ -1653,40 +1653,40 @@ $page_permissions = [ 'dashboard' => 'dashboard_view', 'pos' => 'pos_view', 'sales' => 'sales_view', - 'sales_returns' => 'sales_view', + 'sales_returns' => 'sales_returns_view', 'purchases' => 'purchases_view', - 'purchase_returns' => 'purchases_view', + 'purchase_returns' => 'purchase_returns_view', 'quotations' => 'quotations_view', 'accounting' => 'accounting_view', - 'expense_categories' => 'accounting_view', - 'expenses' => 'accounting_view', + 'expense_categories' => 'expense_categories_view', + 'expenses' => 'expenses_view', 'items' => 'items_view', - 'categories' => 'items_view', - 'units' => 'items_view', + 'categories' => 'categories_view', + 'units' => 'units_view', 'customers' => 'customers_view', 'suppliers' => 'suppliers_view', - 'customer_statement' => 'customers_view', - 'supplier_statement' => 'suppliers_view', - 'cashflow_report' => 'accounting_view', - 'expiry_report' => 'items_view', - 'low_stock_report' => 'items_view', - 'loyalty_history' => 'customers_view', - 'payment_methods' => 'settings_view', + 'customer_statement' => 'customer_statement_view', + 'supplier_statement' => 'supplier_statement_view', + 'cashflow_report' => 'cashflow_report_view', + 'expiry_report' => 'expiry_report_view', + 'low_stock_report' => 'low_stock_report_view', + 'loyalty_history' => 'loyalty_history_view', + 'payment_methods' => 'payment_methods_view', 'settings' => 'settings_view', - 'devices' => 'settings_view', - 'hr_departments' => 'hr_view', - 'hr_employees' => 'hr_view', - 'hr_attendance' => 'hr_view', - 'hr_payroll' => 'hr_view', - 'role_groups' => 'users_view', + 'devices' => 'devices_view', + 'hr_departments' => 'hr_departments_view', + 'hr_employees' => 'hr_employees_view', + 'hr_attendance' => 'hr_attendance_view', + 'hr_payroll' => 'hr_payroll_view', + 'role_groups' => 'role_groups_view', 'users' => 'users_view', - 'scale_devices' => 'users_view', - 'customer_display_settings' => 'settings_view', - 'backups' => 'users_view', - 'logs' => 'users_view', - 'cash_registers' => 'users_view', - 'register_sessions' => 'pos_view', - 'licenses' => 'users_view', + 'scale_devices' => 'scale_devices_view', + 'customer_display_settings' => 'customer_display_settings_view', + 'backups' => 'backups_view', + 'logs' => 'logs_view', + 'cash_registers' => 'cash_registers_view', + 'register_sessions' => 'register_sessions_view', + 'licenses' => 'licenses_view', ]; if (isset($page_permissions[$page]) && !can($page_permissions[$page])) { @@ -1717,6 +1717,74 @@ $data = [ 'settings' => [], ]; +$permission_groups = [ + 'General' => ['dashboard' => 'Dashboard'], + 'Inventory' => [ + 'items' => 'Items', + 'categories' => 'Categories', + 'units' => 'Units' + ], + 'Customers' => [ + 'customers' => 'Customers' + ], + 'Suppliers' => [ + 'suppliers' => 'Suppliers' + ], + 'POS' => [ + 'pos' => 'POS' + ], + 'Sales' => [ + 'sales' => 'Sales', + 'sales_returns' => 'Sales Returns', + 'quotations' => 'Quotations' + ], + 'Purchases' => [ + 'purchases' => 'Purchases', + 'purchase_returns' => 'Purchase Returns' + ], + 'Expenses' => [ + 'expense_categories' => 'Expense Categories', + 'expenses' => 'Expenses' + ], + 'Accounting' => [ + 'accounting' => 'Journal Entries', + 'trial_balance' => 'Trial Balance', + 'profit_loss' => 'Profit & Loss', + 'balance_sheet' => 'Balance Sheet', + 'vat_report' => 'VAT Report' + ], + 'HR' => [ + 'hr_departments' => 'Departments', + 'hr_employees' => 'Employees', + 'hr_attendance' => 'Attendance', + 'hr_payroll' => 'Payroll' + ], + 'Reports' => [ + 'customer_statement' => 'Customer Statement', + 'supplier_statement' => 'Supplier Statement', + 'cashflow_report' => 'Cashflow Report', + 'expiry_report' => 'Expiry Report', + 'low_stock_report' => 'Low Stock Report', + 'loyalty_history' => 'Loyalty History' + ], + 'Settings' => [ + 'payment_methods' => 'Payment Methods', + 'devices' => 'Biometric Devices', + 'settings' => 'Company Settings' + ], + 'Administration' => [ + 'role_groups' => 'Role Groups', + 'users' => 'Users', + 'cash_registers' => 'Cash Registers', + 'register_sessions' => 'Register Sessions', + 'scale_devices' => 'Scale Devices', + 'customer_display_settings' => 'Customer Display', + 'backups' => 'Backups', + 'licenses' => 'Licenses', + 'logs' => 'System Logs' + ] +]; + if ($page === 'export') { $type = $_GET['type'] ?? 'sales'; $filename = $type . "_export_" . date('Y-m-d') . ".csv"; @@ -2419,21 +2487,27 @@ $projectDescription = $_SERVER['PROJECT_DESCRIPTION'] ?? 'Accounting System'; - +
@@ -2471,37 +2545,47 @@ $projectDescription = $_SERVER['PROJECT_DESCRIPTION'] ?? 'Accounting System'; - + - + @@ -6982,7 +7066,7 @@ $projectDescription = $_SERVER['PROJECT_DESCRIPTION'] ?? 'Accounting System';