netgescon-master/config/netgescon.php

111 lines
3.5 KiB
PHP

<?php
return [
/*
|--------------------------------------------------------------------------
| Layout Configuration
|--------------------------------------------------------------------------
|
| Questa configurazione gestisce i layout utilizzati dall'applicazione
| e previene l'uso di layout obsoleti o non autorizzati.
|
*/
'active_layout' => 'admin.layouts.netgescon',
'deprecated_layouts' => [
'layouts.app-universal-v2',
'layouts.app',
'layouts.app-clean',
],
/*
|--------------------------------------------------------------------------
| Role-Based Access Configuration
|--------------------------------------------------------------------------
|
| Configurazione per gestire i permessi basati sui ruoli utente
|
*/
'user_roles' => [
'amministratore' => [
'layout' => 'admin.layouts.netgescon',
'permissions' => ['*'], // Accesso completo
'menus' => [
'dashboard',
'stabili',
'palazzine',
'unita-immobiliari',
'condomini',
'contabilita',
'assemblee',
'risorse-economiche',
'affitti',
'fiscale',
'comunicazioni',
'pratiche',
'consumi',
'tickets',
'superadmin' // Solo per amministratori principali
]
],
'collaboratore' => [
'layout' => 'admin.layouts.netgescon',
'permissions' => ['read', 'create', 'update'], // No delete
'menus' => [
'dashboard',
'stabili' => ['read', 'create', 'update'],
'palazzine' => ['read', 'create', 'update'],
'unita-immobiliari' => ['read', 'create', 'update'],
'condomini' => ['read'],
'contabilita' => ['read'],
'comunicazioni' => ['read', 'create'],
'tickets' => ['read', 'create', 'update']
]
],
'operatore' => [
'layout' => 'admin.layouts.netgescon',
'permissions' => ['read', 'create'], // Solo lettura e inserimento
'menus' => [
'dashboard',
'stabili' => ['read'],
'palazzine' => ['read'],
'unita-immobiliari' => ['read'],
'tickets' => ['read', 'create']
]
],
'condomino' => [
'layout' => 'condomino.layout', // Layout diverso per condomini
'permissions' => ['read'],
'menus' => [
'dashboard',
'my-unita' => ['read'],
'documenti' => ['read'],
'comunicazioni' => ['read'],
'contabilita' => ['read'] // Solo la sua quota
]
]
],
/*
|--------------------------------------------------------------------------
| Menu Visibility Rules
|--------------------------------------------------------------------------
|
| Regole per la visibilità dei menu basate sui ruoli
|
*/
'menu_rules' => [
'superadmin' => ['amministratore'],
'gestione-documenti' => ['amministratore', 'collaboratore'],
'contabilita-avanzata' => ['amministratore'],
'backup-ripristino' => ['amministratore'],
'configurazione-sistema' => ['amministratore']
]
];