# GUIDA GESTIONE LAYOUT NETGESCON **Data Creazione:** 22/07/2025 **Ultima Modifica:** 22/07/2025 **Versione:** 1.0 ## PROBLEMA RICORRENTE: REGRESSIONE GRAFICA CON LOGOUT ### DESCRIZIONE PROBLEMA Durante l'implementazione del sistema di logout, si è verificata una regressione grafica dove: - Il logout funziona correttamente ✅ - La grafica tornava al layout vecchio (non bello) ❌ - Le pagine utilizzavano `layouts.app-universal-v2` invece di `admin.layouts.netgescon` ### CAUSA ROOT Il problema si verifica quando si modifica il layout base e alcune pagine mantengono riferimenti al layout sbagliato. ## LAYOUT SYSTEM NETGESCON ### LAYOUT CORRETTO DA USARE ```blade @extends('admin.layouts.netgescon') ``` ### LAYOUT DA EVITARE ```blade @extends('layouts.app-universal-v2') ``` ### CARATTERISTICHE LAYOUT CORRETTO - **File:** `/resources/views/admin/layouts/netgescon.blade.php` - **Header:** Blu con menu utente e logout funzionale - **Sidebar:** Scura con navigazione (NETGESCON, Dashboard, Stabili, Condomini, etc.) - **Design:** Moderno e professionale - **Framework:** Bootstrap 5 - **Logout:** Menu dropdown in alto a destra con icona utente ## PROCEDURA DI RISOLUZIONE ### STEP 1: IDENTIFICARE PAGINE CON LAYOUT SBAGLIATO ```bash grep -r "@extends('layouts.app-universal-v2')" resources/views/ ``` ### STEP 2: SOSTITUIRE LAYOUT ERRATO Per ogni file trovato, sostituire: ```blade # DA: @extends('layouts.app-universal-v2') # A: @extends('admin.layouts.netgescon') ``` ### STEP 3: PULIRE CACHE ```bash php artisan view:clear php artisan config:clear php artisan route:clear ``` ### STEP 4: VERIFICARE RISULTATO - Controllare che tutte le pagine abbiano la grafica bella - Verificare che il logout funzioni - Testare navigazione sidebar ## PAGINE SISTEMATE (22/07/2025) ### ADMIN PAGES - ✅ `/admin/stabili/index.blade.php` - ✅ `/admin/stabili/create.blade.php` - ✅ `/admin/stabili/edit.blade.php` - ✅ `/admin/stabili/show.blade.php` - ✅ `/admin/palazzine/show.blade.php` - ✅ `/admin/unita-immobiliari/show.blade.php` - ✅ `/admin/dashboard.blade.php` ### SUPERADMIN PAGES - ✅ `/superadmin/archivi/comuni.blade.php` - ✅ `/superadmin/archivi/index.blade.php` - ✅ `/superadmin/comuni/index.blade.php` ## COMANDO RAPIDO DI SISTEMA ### DIAGNOSI RAPIDA ```bash # Trova tutte le pagine con layout sbagliato grep -r "@extends('layouts.app-universal-v2')" /var/www/netgescon/resources/views/ # Conta quante pagine hanno layout sbagliato grep -r "@extends('layouts.app-universal-v2')" /var/www/netgescon/resources/views/ | wc -l ``` ### CORREZIONE AUTOMATICA (DA USARE CON ATTENZIONE) ```bash # Sostituisce automaticamente in tutti i file find /var/www/netgescon/resources/views/ -name "*.blade.php" -exec sed -i "s/@extends('layouts\.app-universal-v2')/@extends('admin.layouts.netgescon')/g" {} \; # Pulisce cache dopo correzione php artisan view:clear && php artisan config:clear && php artisan route:clear ``` ## LAYOUT HEADER CON LOGOUT ### CODICE LOGOUT MENU (FUNZIONANTE) ```blade
``` ### JAVASCRIPT NECESSARIO ```javascript // Assicurarsi che Bootstrap JS sia caricato per dropdown document.addEventListener('DOMContentLoaded', function() { // Bootstrap dropdown auto-inizializzazione var dropdownElementList = [].slice.call(document.querySelectorAll('.dropdown-toggle')); var dropdownList = dropdownElementList.map(function (dropdownToggleEl) { return new bootstrap.Dropdown(dropdownToggleEl); }); }); ``` ## PREVENZIONE FUTURA ### CHECKLIST MODIFICHE LAYOUT 1. ✅ Testare logout funziona 2. ✅ Verificare grafica belle mantiene 3. ✅ Controllare tutte le pagine principali 4. ✅ Pulire cache Laravel 5. ✅ Documentare cambiamenti ### FILE DA MONITORARE - `admin.layouts.netgescon` - Layout principale - Tutte le blade in `resources/views/admin/` - Tutte le blade in `resources/views/superadmin/` ### BACKUP IMPORTANTE Prima di modifiche ai layout, backup di: - `resources/views/admin/layouts/netgescon.blade.php` - Lista completa pagine con layout corretto ## LOGS SESSIONE RISOLUZIONE ### 22/07/2025 - RISOLUZIONE COMPLETA **Problema:** Regressione grafica dopo implementazione logout **Causa:** Pagine con `@extends('layouts.app-universal-v2')` **Soluzione:** Cambio a `@extends('admin.layouts.netgescon')` **Pagine sistemate:** 8 admin pages + 3 superadmin pages **Risultato:** ✅ Logout funzionale + ✅ Grafica bella mantenuta ### COMMAND LOG ```bash # Comandi eseguiti grep -r "@extends('layouts.app-universal-v2')" resources/views/ # Sostituzioni multiple con replace_string_in_file php artisan view:clear && php artisan config:clear && php artisan route:clear ``` --- **NOTA:** Questo documento deve essere aggiornato ogni volta che si interviene sui layout per mantenere traccia delle modifiche e prevenire regressioni future.