{"id":7315,"date":"2025-06-23T10:42:03","date_gmt":"2025-06-23T10:42:03","guid":{"rendered":"https:\/\/vignetosicuro.it\/?page_id=7315"},"modified":"2025-06-23T10:44:54","modified_gmt":"2025-06-23T10:44:54","slug":"quaderno-di-campagna","status":"publish","type":"page","link":"https:\/\/vignetosicuro.it\/en\/quaderno-di-campagna\/","title":{"rendered":"Country notebook"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"7315\" class=\"elementor elementor-7315\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-cd44f9a elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"cd44f9a\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-48a4e51\" data-id=\"48a4e51\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-d6a6147 elementor-widget elementor-widget-html\" data-id=\"d6a6147\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t    <div class=\"container\">\n        <header class=\"header\">\n            <h1>Country Notebook<\/h1>\n            <p>Electronic register for the management of agricultural activities<\/p>\n        <\/header>\n\n        <!-- Navigation Tabs -->\n        <nav class=\"tab-navigation\">\n            <button class=\"tab-btn active\" data-tab=\"anagrafica\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Personal data\n            <\/button>\n            <button class=\"tab-btn\" data-tab=\"parcelle\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Parcels\n            <\/button>\n            <button class=\"tab-btn\" data-tab=\"trattamenti\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Treatments\n            <\/button>\n            <button class=\"tab-btn\" data-tab=\"concimazioni\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Fertilization\n            <\/button>\n            <button class=\"tab-btn\" data-tab=\"irrigazioni\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Irrigation\n            <\/button>\n            <button class=\"tab-btn\" data-tab=\"raccolte\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Harvests\n            <\/button>\n            <button class=\"tab-btn\" data-tab=\"magazzino\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Warehouse\n            <\/button>\n            <button class=\"tab-btn\" data-tab=\"controlli\">\n                <span class=\"tab-icon\">\u2047<\/span>\n                Checks\n            <\/button>\n        <\/nav>\n\n        <!-- Tab Content -->\n        <main class=\"tab-content\">\n            <!-- Anagrafica Aziendale -->\n            <section id=\"anagrafica\" class=\"tab-panel active\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Register of companies<\/h2>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"form-grid\">\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"ragione-sociale\">Company name *<\/label>\n                                <input type=\"text\" id=\"ragione-sociale\" class=\"form-control\" required>\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"codice-azienda\">Company\/CUAA code *<\/label>\n                                <input type=\"text\" id=\"codice-azienda\" class=\"form-control\" required>\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"referente-tecnico\">Technical contact person<\/label>\n                                <input type=\"text\" id=\"referente-tecnico\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"indirizzo\">Address Headquarters<\/label>\n                                <input type=\"text\" id=\"indirizzo\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"comune\">Municipality<\/label>\n                                <input type=\"text\" id=\"comune\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"provincia\">Province<\/label>\n                                <input type=\"text\" id=\"provincia\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"cap\">CAP<\/label>\n                                <input type=\"text\" id=\"cap\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"codice-catastale\">Land Registry Code<\/label>\n                                <input type=\"text\" id=\"codice-catastale\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"telefono\">Telephone number<\/label>\n                                <input type=\"tel\" id=\"telefono\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"email\">Email<\/label>\n                                <input type=\"email\" id=\"email\" class=\"form-control\">\n                            <\/div>\n                            <div class=\"form-group\">\n                                <label class=\"form-label\" for=\"data-compilazione\">Date of completion<\/label>\n                                <input type=\"date\" id=\"data-compilazione\" class=\"form-control\">\n                            <\/div>\n                        <\/div>\n                        <div class=\"form-actions\">\n                            <button type=\"button\" class=\"btn btn--primary\" onclick=\"salvaAnagrafica()\">Save your personal data<\/button>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- Registro Parcelle -->\n            <section id=\"parcelle\" class=\"tab-panel\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Register of cultivated parcels<\/h2>\n                        <button class=\"btn btn--primary\" onclick=\"aggiungiParcella()\">Add Parcel<\/button>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"table-responsive\">\n                            <table class=\"data-table\" id=\"parcelle-table\">\n                                <thead>\n                                    <tr>\n                                        <th>Parcel Code<\/th>\n                                        <th>Area (ha)<\/th>\n                                        <th>Cultivation<\/th>\n                                        <th>Variety<\/th>\n                                        <th>Cultivation technique<\/th>\n                                        <th>Year Plant<\/th>\n                                        <th>Rotation<\/th>\n                                        <th>Actions<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"parcelle-tbody\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- Trattamenti Fitosanitari -->\n            <section id=\"trattamenti\" class=\"tab-panel\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Plant health treatments<\/h2>\n                        <button class=\"btn btn--primary\" onclick=\"aggiungiTrattamento()\">Add Treatment<\/button>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"table-responsive\">\n                            <table class=\"data-table\" id=\"trattamenti-table\">\n                                <thead>\n                                    <tr>\n                                        <th>Date<\/th>\n                                        <th>Parcel<\/th>\n                                        <th>Cultivation<\/th>\n                                        <th>Product<\/th>\n                                        <th>Dose<\/th>\n                                        <th>Operator<\/th>\n                                        <th>Equipment<\/th>\n                                        <th>Notes<\/th>\n                                        <th>Actions<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"trattamenti-tbody\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- Concimazioni -->\n            <section id=\"concimazioni\" class=\"tab-panel\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Fertilization<\/h2>\n                        <button class=\"btn btn--primary\" onclick=\"aggiungiConcimazione()\">Add Fertilization<\/button>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"table-responsive\">\n                            <table class=\"data-table\" id=\"concimazioni-table\">\n                                <thead>\n                                    <tr>\n                                        <th>Date<\/th>\n                                        <th>Parcel<\/th>\n                                        <th>Cultivation<\/th>\n                                        <th>Type<\/th>\n                                        <th>Product<\/th>\n                                        <th>Quantity<\/th>\n                                        <th>Modalities<\/th>\n                                        <th>Notes<\/th>\n                                        <th>Actions<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"concimazioni-tbody\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- Irrigazioni -->\n            <section id=\"irrigazioni\" class=\"tab-panel\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Irrigation<\/h2>\n                        <button class=\"btn btn--primary\" onclick=\"aggiungiIrrigazione()\">Add Irrigation<\/button>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"table-responsive\">\n                            <table class=\"data-table\" id=\"irrigazioni-table\">\n                                <thead>\n                                    <tr>\n                                        <th>Date<\/th>\n                                        <th>Parcel<\/th>\n                                        <th>Cultivation<\/th>\n                                        <th>Type Irrigation<\/th>\n                                        <th>Volume (m3\/ha)<\/th>\n                                        <th>Duration (hours)<\/th>\n                                        <th>Notes<\/th>\n                                        <th>Actions<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"irrigazioni-tbody\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- Raccolte -->\n            <section id=\"raccolte\" class=\"tab-panel\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Harvests<\/h2>\n                        <button class=\"btn btn--primary\" onclick=\"aggiungiRaccolta()\">Add Collection<\/button>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"table-responsive\">\n                            <table class=\"data-table\" id=\"raccolte-table\">\n                                <thead>\n                                    <tr>\n                                        <th>Date<\/th>\n                                        <th>Parcel<\/th>\n                                        <th>Cultivation<\/th>\n                                        <th>Variety<\/th>\n                                        <th>Quantity<\/th>\n                                        <th>Unit<\/th>\n                                        <th>Destination<\/th>\n                                        <th>Price (\u20ac)<\/th>\n                                        <th>Actions<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"raccolte-tbody\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- Magazzino Fitosanitari -->\n            <section id=\"magazzino\" class=\"tab-panel\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Warehouse of Phytosanitary Products<\/h2>\n                        <button class=\"btn btn--primary\" onclick=\"aggiungiProdottoMagazzino()\">Add Product<\/button>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"table-responsive\">\n                            <table class=\"data-table\" id=\"magazzino-table\">\n                                <thead>\n                                    <tr>\n                                        <th>Product name<\/th>\n                                        <th>Active principle<\/th>\n                                        <th>Unit<\/th>\n                                        <th>Initial stock<\/th>\n                                        <th>Loads<\/th>\n                                        <th>Discharges<\/th>\n                                        <th>Current stock<\/th>\n                                        <th>Deadline<\/th>\n                                        <th>State<\/th>\n                                        <th>Actions<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"magazzino-tbody\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n\n            <!-- Controlli e Note -->\n            <section id=\"controlli\" class=\"tab-panel\">\n                <div class=\"card\">\n                    <div class=\"card__header\">\n                        <h2>Checks and Notes<\/h2>\n                        <button class=\"btn btn--primary\" onclick=\"aggiungiControllo()\">Add Control<\/button>\n                    <\/div>\n                    <div class=\"card__body\">\n                        <div class=\"table-responsive\">\n                            <table class=\"data-table\" id=\"controlli-table\">\n                                <thead>\n                                    <tr>\n                                        <th>Date of visit<\/th>\n                                        <th>Comptroller body<\/th>\n                                        <th>Type Control<\/th>\n                                        <th>Outcome<\/th>\n                                        <th>Notes<\/th>\n                                        <th>Non-compliance<\/th>\n                                        <th>Corrective actions<\/th>\n                                        <th>Resolution Date<\/th>\n                                        <th>Actions<\/th>\n                                    <\/tr>\n                                <\/thead>\n                                <tbody id=\"controlli-tbody\">\n                                <\/tbody>\n                            <\/table>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/section>\n        <\/main>\n\n        <!-- Dashboard Summary -->\n        <aside class=\"dashboard\">\n            <div class=\"card\">\n                <div class=\"card__header\">\n                    <h3>Activity summary<\/h3>\n                <\/div>\n                <div class=\"card__body\">\n                    <div class=\"stats-grid\">\n                        <div class=\"stat-item\">\n                            <span class=\"stat-value\" id=\"stat-parcelle\">0<\/span>\n                            <span class=\"stat-label\">Registered parcels<\/span>\n                        <\/div>\n                        <div class=\"stat-item\">\n                            <span class=\"stat-value\" id=\"stat-trattamenti\">0<\/span>\n                            <span class=\"stat-label\">Total treatments<\/span>\n                        <\/div>\n                        <div class=\"stat-item\">\n                            <span class=\"stat-value\" id=\"stat-superficie\">0<\/span>\n                            <span class=\"stat-label\">Total area (ha)<\/span>\n                        <\/div>\n                        <div class=\"stat-item\">\n                            <span class=\"stat-value\" id=\"stat-scadenze\">0<\/span>\n                            <span class=\"stat-label\">Products in Expiry<\/span>\n                        <\/div>\n                    <\/div>\n                <\/div>\n            <\/div>\n        <\/aside>\n\n        <!-- Export Actions -->\n        <div class=\"export-actions\">\n            <button class=\"btn btn--secondary\" onclick=\"esportaCSV()\">Export CSV<\/button>\n            <button class=\"btn btn--secondary\" onclick=\"stampaQuaderno()\">Print Notebook<\/button>\n        <\/div>\n    <\/div>\n\n    <!-- Modal for Forms -->\n    <div id=\"modal\" class=\"modal\">\n        <div class=\"modal-content\">\n            <span class=\"modal-close\" onclick=\"chiudiModal()\">\u00d7<\/span>\n            <div id=\"modal-body\">\n                <!-- Dynamic content will be inserted here -->\n            <\/div>\n        <\/div>\n    <\/div>\n    \n<script>\n    \/\/ Quaderno di Campagna - JavaScript Application\n\/\/ Data structure and application logic\n\n\/\/ Global data storage\nlet quadernoDati = {\n    anagrafica: {},\n    parcelle: [],\n    trattamenti: [],\n    concimazioni: [],\n    irrigazioni: [],\n    raccolte: [],\n    magazzino: [],\n    controlli: []\n};\n\n\/\/ Reference data from JSON\nconst datiRiferimento = {\n    colture: [\"Mais\", \"Frumento\", \"Orzo\", \"Avena\", \"Soia\", \"Girasole\", \"Barbabietola\", \"Pomodoro\", \"Peperone\", \"Melanzana\", \"Zucchina\", \"Lattuga\", \"Cavolo\", \"Vite da vino\", \"Vite da tavola\", \"Olivo\", \"Melo\", \"Pero\", \"Pesco\", \"Ciliegio\", \"Fragola\", \"Patata\", \"Cipolla\", \"Aglio\", \"Carota\", \"Altro\"],\n    prodottiFitosanitari: [\"Roundup (Glifosate)\", \"Confidor (Imidacloprid)\", \"Karate (Lambda-cialotrina)\", \"Rimon (Novaluron)\", \"Previcur (Propamocarb)\", \"Forum (Dimethomorph)\", \"Cabrio (Pyraclostrobin)\", \"Flint (Trifloxystrobin)\", \"Score (Difenoconazolo)\", \"Switch (Cyprodinil + Fludioxonil)\", \"Chorus (Cyprodinil)\"],\n    fertilizzanti: [\"Urea 46%\", \"Nitrato ammonico 33,5%\", \"DAP 18-46\", \"MAP 12-61\", \"NPK 20-10-10\", \"NPK 15-15-15\", \"Solfato potassico\", \"Perfosfato minerale\", \"Letame bovino\", \"Liquame suino\", \"Compost\", \"Digestato\"],\n    principiAttivi: [\"Glifosate\", \"Imidacloprid\", \"Lambda-cialotrina\", \"Novaluron\", \"Propamocarb\", \"Dimethomorph\", \"Pyraclostrobin\", \"Trifloxystrobin\", \"Difenoconazolo\", \"Cyprodinil\", \"Fludioxonil\", \"Azoxystrobin\", \"Tebuconazolo\"],\n    attrezzature: [\"Atomizzatore\", \"Irroratrice\", \"Nebulizzatore\", \"Spolveratore\", \"Lancia a mano\", \"Irroratrice trainata\", \"Atomizzatore portato\", \"Altro\"],\n    tecnicheColturali: [\"Convenzionale\", \"Biologico\", \"Integrato\", \"Biodinamico\"],\n    tipiIrrigazione: [\"A goccia\", \"Aspersione\", \"Scorrimento\", \"Sommersione\", \"Microirrigazione\", \"Irrigazione a pioggia\", \"Subirrigazione\"],\n    modalitaDistribuzione: [\"Spandimento\", \"Interramento\", \"Fertirrigazione\", \"Fogliare\", \"Localizzato\", \"In copertura\", \"Pre-semina\"],\n    destinazioniProdotto: [\"Vendita\", \"Trasformazione\", \"Autoconsumo\", \"Stoccaggio\", \"Conferimento cooperativa\"],\n    unitaMisura: [\"Quintali\", \"Kg\", \"Tonnellate\", \"Litri\"],\n    entiControllo: [\"AGEA\", \"Regione\", \"ASL\", \"Carabinieri NAS\", \"Ispettorato Agrario\", \"Organismo di controllo biologico\", \"Altro\"],\n    tipiControllo: [\"Ispettivo\", \"Documentale\", \"Campionamento\", \"Condizionalit\u00e0\", \"Biologico\", \"Altro\"],\n    esitiControllo: [\"Conforme\", \"Non conforme\", \"Con prescrizioni\", \"Sospeso\"]\n};\n\n\/\/ Initialize application\ndocument.addEventListener('DOMContentLoaded', function() {\n    initializeApp();\n    loadSampleData();\n    updateDashboard();\n});\n\nfunction initializeApp() {\n    \/\/ Set today's date for compilation\n    document.getElementById('data-compilazione').value = new Date().toISOString().split('T')[0];\n    \n    \/\/ Initialize tab navigation\n    const tabButtons = document.querySelectorAll('.tab-btn');\n    tabButtons.forEach(button => {\n        button.addEventListener('click', function() {\n            const tabId = this.getAttribute('data-tab');\n            switchTab(tabId);\n        });\n    });\n\n    \/\/ Load saved data from localStorage if available\n    const savedData = localStorage.getItem('quadernoCampagna');\n    if (savedData) {\n        quadernoDati = JSON.parse(savedData);\n        loadAnagrafica();\n        refreshAllTables();\n        updateDashboard();\n    }\n}\n\nfunction loadSampleData() {\n    \/\/ Sample data for demonstration\n    if (quadernoDati.parcelle.length === 0) {\n        quadernoDati.parcelle = [\n            {\n                id: 1,\n                codice: \"P001\",\n                superficie: 5.2,\n                coltura: \"Mais\",\n                varieta: \"Pioneer P1234\",\n                tecnicaColturale: \"Convenzionale\",\n                annoImpianto: 2024,\n                rotazione: \"Mais-Soia\"\n            },\n            {\n                id: 2,\n                codice: \"P002\",\n                superficie: 3.8,\n                coltura: \"Frumento\",\n                varieta: \"Bologna\",\n                tecnicaColturale: \"Integrato\",\n                annoImpianto: 2023,\n                rotazione: \"Frumento-Girasole\"\n            }\n        ];\n\n        quadernoDati.magazzino = [\n            {\n                id: 1,\n                nomeProdotto: \"Roundup\",\n                principioAttivo: \"Glifosate\",\n                unitaMisura: \"L\",\n                giacenzaIniziale: 20,\n                carichi: 10,\n                scarichi: 8,\n                giacenzaAttuale: 22,\n                dataScadenza: \"2025-12-31\",\n                stato: \"Disponibile\"\n            }\n        ];\n\n        quadernoDati.trattamenti = [\n            {\n                id: 1,\n                data: \"2024-06-15\",\n                parcella: \"P001\",\n                coltura: \"Mais\",\n                prodotto: \"Roundup\",\n                principioAttivo: \"Glifosate\",\n                dose: 2.5,\n                volumeDistribuzione: 200,\n                operatore: \"Mario Rossi\",\n                attrezzatura: \"Atomizzatore\",\n                condizioniMeteo: \"Sereno, vento leggero\",\n                avversitaTarget: \"Erbe infestanti\",\n                note: \"Trattamento pre-emergenza\"\n            }\n        ];\n\n        saveData();\n        refreshAllTables();\n        updateDashboard();\n    }\n}\n\n\/\/ Tab navigation\nfunction switchTab(tabId) {\n    \/\/ Hide all tab panels\n    const panels = document.querySelectorAll('.tab-panel');\n    panels.forEach(panel => panel.classList.remove('active'));\n    \n    \/\/ Remove active class from all buttons\n    const buttons = document.querySelectorAll('.tab-btn');\n    buttons.forEach(button => button.classList.remove('active'));\n    \n    \/\/ Show selected panel and activate button\n    document.getElementById(tabId).classList.add('active');\n    document.querySelector(`[data-tab=\"${tabId}\"]`).classList.add('active');\n}\n\n\/\/ Data persistence\nfunction saveData() {\n    localStorage.setItem('quadernoCampagna', JSON.stringify(quadernoDati));\n    showToast('Dati salvati correttamente', 'success');\n}\n\n\/\/ Anagrafica functions\nfunction salvaAnagrafica() {\n    quadernoDati.anagrafica = {\n        ragioneSociale: document.getElementById('ragione-sociale').value,\n        codiceAzienda: document.getElementById('codice-azienda').value,\n        referenteTecnico: document.getElementById('referente-tecnico').value,\n        indirizzo: document.getElementById('indirizzo').value,\n        comune: document.getElementById('comune').value,\n        provincia: document.getElementById('provincia').value,\n        cap: document.getElementById('cap').value,\n        codiceCatastale: document.getElementById('codice-catastale').value,\n        telefono: document.getElementById('telefono').value,\n        email: document.getElementById('email').value,\n        dataCompilazione: document.getElementById('data-compilazione').value\n    };\n    saveData();\n}\n\nfunction loadAnagrafica() {\n    if (quadernoDati.anagrafica) {\n        const anagrafica = quadernoDati.anagrafica;\n        document.getElementById('ragione-sociale').value = anagrafica.ragioneSociale || '';\n        document.getElementById('codice-azienda').value = anagrafica.codiceAzienda || '';\n        document.getElementById('referente-tecnico').value = anagrafica.referenteTecnico || '';\n        document.getElementById('indirizzo').value = anagrafica.indirizzo || '';\n        document.getElementById('comune').value = anagrafica.comune || '';\n        document.getElementById('provincia').value = anagrafica.provincia || '';\n        document.getElementById('cap').value = anagrafica.cap || '';\n        document.getElementById('codice-catastale').value = anagrafica.codiceCatastale || '';\n        document.getElementById('telefono').value = anagrafica.telefono || '';\n        document.getElementById('email').value = anagrafica.email || '';\n        document.getElementById('data-compilazione').value = anagrafica.dataCompilazione || '';\n    }\n}\n\n\/\/ Parcelle functions\nfunction aggiungiParcella() {\n    const modalBody = document.getElementById('modal-body');\n    modalBody.innerHTML = `\n        <h3>Aggiungi Parcella<\/h3>\n        <form class=\"modal-form\" onsubmit=\"salvaParcella(event)\">\n            <div class=\"form-group\">\n                <label class=\"form-label\">Codice Parcella *<\/label>\n                <input type=\"text\" id=\"parcella-codice\" class=\"form-control\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Superficie (ha) *<\/label>\n                <input type=\"number\" id=\"parcella-superficie\" class=\"form-control\" step=\"0.1\" min=\"0\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Coltura *<\/label>\n                <select id=\"parcella-coltura\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona coltura<\/option>\n                    ${datiRiferimento.colture.map(c => `<option value=\"${c}\">${c}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Variet\u00e0<\/label>\n                <input type=\"text\" id=\"parcella-varieta\" class=\"form-control\">\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Tecnica Colturale *<\/label>\n                <select id=\"parcella-tecnica\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona tecnica<\/option>\n                    ${datiRiferimento.tecnicheColturali.map(t => `<option value=\"${t}\">${t}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Anno Impianto<\/label>\n                <input type=\"number\" id=\"parcella-anno\" class=\"form-control\" min=\"2000\" max=\"2030\">\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Rotazione Colturale<\/label>\n                <input type=\"text\" id=\"parcella-rotazione\" class=\"form-control\">\n            <\/div>\n            <div class=\"modal-actions\">\n                <button type=\"button\" class=\"btn btn--secondary\" onclick=\"chiudiModal()\">Annulla<\/button>\n                <button type=\"submit\" class=\"btn btn--primary\">Salva Parcella<\/button>\n            <\/div>\n        <\/form>\n    `;\n    apriModal();\n}\n\nfunction salvaParcella(event) {\n    event.preventDefault();\n    \n    const parcella = {\n        id: Date.now(),\n        codice: document.getElementById('parcella-codice').value,\n        superficie: parseFloat(document.getElementById('parcella-superficie').value),\n        coltura: document.getElementById('parcella-coltura').value,\n        varieta: document.getElementById('parcella-varieta').value,\n        tecnicaColturale: document.getElementById('parcella-tecnica').value,\n        annoImpianto: parseInt(document.getElementById('parcella-anno').value) || null,\n        rotazione: document.getElementById('parcella-rotazione').value\n    };\n    \n    quadernoDati.parcelle.push(parcella);\n    saveData();\n    refreshParcelleTable();\n    updateDashboard();\n    chiudiModal();\n}\n\nfunction refreshParcelleTable() {\n    const tbody = document.getElementById('parcelle-tbody');\n    tbody.innerHTML = '';\n    \n    quadernoDati.parcelle.forEach(parcella => {\n        const row = document.createElement('tr');\n        row.innerHTML = `\n            <td>${parcella.codice}<\/td>\n            <td>${parcella.superficie}<\/td>\n            <td>${parcella.coltura}<\/td>\n            <td>${parcella.varieta || '-'}<\/td>\n            <td>${parcella.tecnicaColturale}<\/td>\n            <td>${parcella.annoImpianto || '-'}<\/td>\n            <td>${parcella.rotazione || '-'}<\/td>\n            <td>\n                <button class=\"action-btn action-btn--edit\" onclick=\"modificaParcella(${parcella.id})\">Modifica<\/button>\n                <button class=\"action-btn action-btn--delete\" onclick=\"eliminaParcella(${parcella.id})\">Elimina<\/button>\n            <\/td>\n        `;\n        tbody.appendChild(row);\n    });\n}\n\nfunction eliminaParcella(id) {\n    if (confirm('Sei sicuro di voler eliminare questa parcella?')) {\n        quadernoDati.parcelle = quadernoDati.parcelle.filter(p => p.id !== id);\n        saveData();\n        refreshParcelleTable();\n        updateDashboard();\n    }\n}\n\n\/\/ Trattamenti functions\nfunction aggiungiTrattamento() {\n    const modalBody = document.getElementById('modal-body');\n    const parcelleOptions = quadernoDati.parcelle.map(p => \n        `<option value=\"${p.codice}\" data-coltura=\"${p.coltura}\">${p.codice} - ${p.coltura}<\/option>`\n    ).join('');\n    \n    modalBody.innerHTML = `\n        <h3>Aggiungi Trattamento Fitosanitario<\/h3>\n        <form class=\"modal-form\" onsubmit=\"salvaTrattamento(event)\">\n            <div class=\"form-group\">\n                <label class=\"form-label\">Data Trattamento *<\/label>\n                <input type=\"date\" id=\"trattamento-data\" class=\"form-control\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Parcella *<\/label>\n                <select id=\"trattamento-parcella\" class=\"form-control\" required onchange=\"updateColturaTrattamento()\">\n                    <option value=\"\">Seleziona parcella<\/option>\n                    ${parcelleOptions}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Coltura<\/label>\n                <input type=\"text\" id=\"trattamento-coltura\" class=\"form-control\" readonly>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Prodotto Utilizzato *<\/label>\n                <select id=\"trattamento-prodotto\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona prodotto<\/option>\n                    ${datiRiferimento.prodottiFitosanitari.map(p => `<option value=\"${p}\">${p}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Principio Attivo<\/label>\n                <select id=\"trattamento-principio\" class=\"form-control\">\n                    <option value=\"\">Seleziona principio attivo<\/option>\n                    ${datiRiferimento.principiAttivi.map(p => `<option value=\"${p}\">${p}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Dose (L\/ha o kg\/ha) *<\/label>\n                <input type=\"number\" id=\"trattamento-dose\" class=\"form-control\" step=\"0.1\" min=\"0\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Volume Distribuzione (L\/ha)<\/label>\n                <input type=\"number\" id=\"trattamento-volume\" class=\"form-control\" step=\"1\" min=\"0\">\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Operatore Responsabile *<\/label>\n                <input type=\"text\" id=\"trattamento-operatore\" class=\"form-control\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Attrezzatura *<\/label>\n                <select id=\"trattamento-attrezzatura\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona attrezzatura<\/option>\n                    ${datiRiferimento.attrezzature.map(a => `<option value=\"${a}\">${a}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Condizioni Meteo<\/label>\n                <input type=\"text\" id=\"trattamento-meteo\" class=\"form-control\" placeholder=\"Es: Sereno, vento leggero\">\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Avversit\u00e0 Target<\/label>\n                <input type=\"text\" id=\"trattamento-avversita\" class=\"form-control\" placeholder=\"Es: Erbe infestanti, afidi\">\n            <\/div>\n            <div class=\"form-group\" style=\"grid-column: 1 \/ -1;\">\n                <label class=\"form-label\">Note<\/label>\n                <textarea id=\"trattamento-note\" class=\"form-control\" rows=\"3\"><\/textarea>\n            <\/div>\n            <div class=\"modal-actions\" style=\"grid-column: 1 \/ -1;\">\n                <button type=\"button\" class=\"btn btn--secondary\" onclick=\"chiudiModal()\">Annulla<\/button>\n                <button type=\"submit\" class=\"btn btn--primary\">Salva Trattamento<\/button>\n            <\/div>\n        <\/form>\n    `;\n    apriModal();\n}\n\nfunction updateColturaTrattamento() {\n    const parcellaSelect = document.getElementById('trattamento-parcella');\n    const colturaInput = document.getElementById('trattamento-coltura');\n    const selectedOption = parcellaSelect.options[parcellaSelect.selectedIndex];\n    colturaInput.value = selectedOption.getAttribute('data-coltura') || '';\n}\n\nfunction salvaTrattamento(event) {\n    event.preventDefault();\n    \n    const trattamento = {\n        id: Date.now(),\n        data: document.getElementById('trattamento-data').value,\n        parcella: document.getElementById('trattamento-parcella').value,\n        coltura: document.getElementById('trattamento-coltura').value,\n        prodotto: document.getElementById('trattamento-prodotto').value,\n        principioAttivo: document.getElementById('trattamento-principio').value,\n        dose: parseFloat(document.getElementById('trattamento-dose').value),\n        volumeDistribuzione: parseFloat(document.getElementById('trattamento-volume').value) || null,\n        operatore: document.getElementById('trattamento-operatore').value,\n        attrezzatura: document.getElementById('trattamento-attrezzatura').value,\n        condizioniMeteo: document.getElementById('trattamento-meteo').value,\n        avversitaTarget: document.getElementById('trattamento-avversita').value,\n        note: document.getElementById('trattamento-note').value\n    };\n    \n    quadernoDati.trattamenti.push(trattamento);\n    \n    \/\/ Update magazzino scarichi\n    updateMagazzinoScarichi(trattamento.prodotto, trattamento.dose);\n    \n    saveData();\n    refreshTrattamentiTable();\n    refreshMagazzinoTable();\n    updateDashboard();\n    chiudiModal();\n}\n\nfunction refreshTrattamentiTable() {\n    const tbody = document.getElementById('trattamenti-tbody');\n    tbody.innerHTML = '';\n    \n    quadernoDati.trattamenti.forEach(trattamento => {\n        const row = document.createElement('tr');\n        row.innerHTML = `\n            <td>${formatDate(trattamento.data)}<\/td>\n            <td>${trattamento.parcella}<\/td>\n            <td>${trattamento.coltura}<\/td>\n            <td>${trattamento.prodotto}<\/td>\n            <td>${trattamento.dose}<\/td>\n            <td>${trattamento.operatore}<\/td>\n            <td>${trattamento.attrezzatura}<\/td>\n            <td>${trattamento.note || '-'}<\/td>\n            <td>\n                <button class=\"action-btn action-btn--delete\" onclick=\"eliminaTrattamento(${trattamento.id})\">Elimina<\/button>\n            <\/td>\n        `;\n        tbody.appendChild(row);\n    });\n}\n\nfunction eliminaTrattamento(id) {\n    if (confirm('Sei sicuro di voler eliminare questo trattamento?')) {\n        quadernoDati.trattamenti = quadernoDati.trattamenti.filter(t => t.id !== id);\n        saveData();\n        refreshTrattamentiTable();\n        updateDashboard();\n    }\n}\n\n\/\/ Similar functions for other sections (Concimazioni, Irrigazioni, Raccolte, Controlli)\nfunction aggiungiConcimazione() {\n    const modalBody = document.getElementById('modal-body');\n    const parcelleOptions = quadernoDati.parcelle.map(p => \n        `<option value=\"${p.codice}\" data-coltura=\"${p.coltura}\">${p.codice} - ${p.coltura}<\/option>`\n    ).join('');\n    \n    modalBody.innerHTML = `\n        <h3>Aggiungi Concimazione<\/h3>\n        <form class=\"modal-form\" onsubmit=\"salvaConcimazione(event)\">\n            <div class=\"form-group\">\n                <label class=\"form-label\">Data Intervento *<\/label>\n                <input type=\"date\" id=\"concimazione-data\" class=\"form-control\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Parcella *<\/label>\n                <select id=\"concimazione-parcella\" class=\"form-control\" required onchange=\"updateColturaConcimazione()\">\n                    <option value=\"\">Seleziona parcella<\/option>\n                    ${parcelleOptions}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Coltura<\/label>\n                <input type=\"text\" id=\"concimazione-coltura\" class=\"form-control\" readonly>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Tipo Fertilizzante *<\/label>\n                <select id=\"concimazione-tipo\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona tipo<\/option>\n                    <option value=\"Organico\">Organico<\/option>\n                    <option value=\"Chimico\">Chimico<\/option>\n                    <option value=\"Organo-minerale\">Organo-minerale<\/option>\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Prodotto *<\/label>\n                <select id=\"concimazione-prodotto\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona prodotto<\/option>\n                    ${datiRiferimento.fertilizzanti.map(f => `<option value=\"${f}\">${f}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Quantit\u00e0 (kg\/ha o L\/ha) *<\/label>\n                <input type=\"number\" id=\"concimazione-quantita\" class=\"form-control\" step=\"0.1\" min=\"0\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Modalit\u00e0 Distribuzione *<\/label>\n                <select id=\"concimazione-modalita\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona modalit\u00e0<\/option>\n                    ${datiRiferimento.modalitaDistribuzione.map(m => `<option value=\"${m}\">${m}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">N-P-K Contenuto<\/label>\n                <input type=\"text\" id=\"concimazione-npk\" class=\"form-control\" placeholder=\"Es: 20-10-10\">\n            <\/div>\n            <div class=\"form-group\" style=\"grid-column: 1 \/ -1;\">\n                <label class=\"form-label\">Note<\/label>\n                <textarea id=\"concimazione-note\" class=\"form-control\" rows=\"3\"><\/textarea>\n            <\/div>\n            <div class=\"modal-actions\" style=\"grid-column: 1 \/ -1;\">\n                <button type=\"button\" class=\"btn btn--secondary\" onclick=\"chiudiModal()\">Annulla<\/button>\n                <button type=\"submit\" class=\"btn btn--primary\">Salva Concimazione<\/button>\n            <\/div>\n        <\/form>\n    `;\n    apriModal();\n}\n\nfunction updateColturaConcimazione() {\n    const parcellaSelect = document.getElementById('concimazione-parcella');\n    const colturaInput = document.getElementById('concimazione-coltura');\n    const selectedOption = parcellaSelect.options[parcellaSelect.selectedIndex];\n    colturaInput.value = selectedOption.getAttribute('data-coltura') || '';\n}\n\nfunction salvaConcimazione(event) {\n    event.preventDefault();\n    \n    const concimazione = {\n        id: Date.now(),\n        data: document.getElementById('concimazione-data').value,\n        parcella: document.getElementById('concimazione-parcella').value,\n        coltura: document.getElementById('concimazione-coltura').value,\n        tipo: document.getElementById('concimazione-tipo').value,\n        prodotto: document.getElementById('concimazione-prodotto').value,\n        quantita: parseFloat(document.getElementById('concimazione-quantita').value),\n        modalita: document.getElementById('concimazione-modalita').value,\n        npk: document.getElementById('concimazione-npk').value,\n        note: document.getElementById('concimazione-note').value\n    };\n    \n    quadernoDati.concimazioni.push(concimazione);\n    saveData();\n    refreshConcimazioniTable();\n    updateDashboard();\n    chiudiModal();\n}\n\nfunction refreshConcimazioniTable() {\n    const tbody = document.getElementById('concimazioni-tbody');\n    tbody.innerHTML = '';\n    \n    quadernoDati.concimazioni.forEach(concimazione => {\n        const row = document.createElement('tr');\n        row.innerHTML = `\n            <td>${formatDate(concimazione.data)}<\/td>\n            <td>${concimazione.parcella}<\/td>\n            <td>${concimazione.coltura}<\/td>\n            <td>${concimazione.tipo}<\/td>\n            <td>${concimazione.prodotto}<\/td>\n            <td>${concimazione.quantita}<\/td>\n            <td>${concimazione.modalita}<\/td>\n            <td>${concimazione.note || '-'}<\/td>\n            <td>\n                <button class=\"action-btn action-btn--delete\" onclick=\"eliminaConcimazione(${concimazione.id})\">Elimina<\/button>\n            <\/td>\n        `;\n        tbody.appendChild(row);\n    });\n}\n\nfunction eliminaConcimazione(id) {\n    if (confirm('Sei sicuro di voler eliminare questa concimazione?')) {\n        quadernoDati.concimazioni = quadernoDati.concimazioni.filter(c => c.id !== id);\n        saveData();\n        refreshConcimazioniTable();\n        updateDashboard();\n    }\n}\n\n\/\/ Magazzino functions\nfunction aggiungiProdottoMagazzino() {\n    const modalBody = document.getElementById('modal-body');\n    modalBody.innerHTML = `\n        <h3>Aggiungi Prodotto al Magazzino<\/h3>\n        <form class=\"modal-form\" onsubmit=\"salvaProdottoMagazzino(event)\">\n            <div class=\"form-group\">\n                <label class=\"form-label\">Nome Prodotto *<\/label>\n                <input type=\"text\" id=\"magazzino-nome\" class=\"form-control\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Principio Attivo<\/label>\n                <select id=\"magazzino-principio\" class=\"form-control\">\n                    <option value=\"\">Seleziona principio attivo<\/option>\n                    ${datiRiferimento.principiAttivi.map(p => `<option value=\"${p}\">${p}<\/option>`).join('')}\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Unit\u00e0 di Misura *<\/label>\n                <select id=\"magazzino-unita\" class=\"form-control\" required>\n                    <option value=\"\">Seleziona unit\u00e0<\/option>\n                    <option value=\"L\">Litri<\/option>\n                    <option value=\"kg\">Kg<\/option>\n                <\/select>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Giacenza Iniziale *<\/label>\n                <input type=\"number\" id=\"magazzino-giacenza\" class=\"form-control\" step=\"0.1\" min=\"0\" required>\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Carichi in Entrata<\/label>\n                <input type=\"number\" id=\"magazzino-carichi\" class=\"form-control\" step=\"0.1\" min=\"0\" value=\"0\">\n            <\/div>\n            <div class=\"form-group\">\n                <label class=\"form-label\">Data di Scadenza<\/label>\n                <input type=\"date\" id=\"magazzino-scadenza\" class=\"form-control\">\n            <\/div>\n            <div class=\"modal-actions\" style=\"grid-column: 1 \/ -1;\">\n                <button type=\"button\" class=\"btn btn--secondary\" onclick=\"chiudiModal()\">Annulla<\/button>\n                <button type=\"submit\" class=\"btn btn--primary\">Salva Prodotto<\/button>\n            <\/div>\n        <\/form>\n    `;\n    apriModal();\n}\n\nfunction salvaProdottoMagazzino(event) {\n    event.preventDefault();\n    \n    const giacenzaIniziale = parseFloat(document.getElementById('magazzino-giacenza').value);\n    const carichi = parseFloat(document.getElementById('magazzino-carichi').value) || 0;\n    \n    const prodotto = {\n        id: Date.now(),\n        nomeProdotto: document.getElementById('magazzino-nome').value,\n        principioAttivo: document.getElementById('magazzino-principio').value,\n        unitaMisura: document.getElementById('magazzino-unita').value,\n        giacenzaIniziale: giacenzaIniziale,\n        carichi: carichi,\n        scarichi: 0,\n        giacenzaAttuale: giacenzaIniziale + carichi,\n        dataScadenza: document.getElementById('magazzino-scadenza').value,\n        stato: calcolaStatoProdotto(document.getElementById('magazzino-scadenza').value)\n    };\n    \n    quadernoDati.magazzino.push(prodotto);\n    saveData();\n    refreshMagazzinoTable();\n    updateDashboard();\n    chiudiModal();\n}\n\nfunction refreshMagazzinoTable() {\n    const tbody = document.getElementById('magazzino-tbody');\n    tbody.innerHTML = '';\n    \n    quadernoDati.magazzino.forEach(prodotto => {\n        const row = document.createElement('tr');\n        row.innerHTML = `\n            <td>${prodotto.nomeProdotto}<\/td>\n            <td>${prodotto.principioAttivo || '-'}<\/td>\n            <td>${prodotto.unitaMisura}<\/td>\n            <td>${prodotto.giacenzaIniziale}<\/td>\n            <td>${prodotto.carichi}<\/td>\n            <td>${prodotto.scarichi}<\/td>\n            <td>${prodotto.giacenzaAttuale}<\/td>\n            <td>${formatDate(prodotto.dataScadenza)}<\/td>\n            <td><span class=\"status-indicator status-indicator--${prodotto.stato.toLowerCase()}\">${prodotto.stato}<\/span><\/td>\n            <td>\n                <button class=\"action-btn action-btn--delete\" onclick=\"eliminaProdottoMagazzino(${prodotto.id})\">Elimina<\/button>\n            <\/td>\n        `;\n        tbody.appendChild(row);\n    });\n}\n\nfunction updateMagazzinoScarichi(nomeProdotto, quantita) {\n    const prodotto = quadernoDati.magazzino.find(p => p.nomeProdotto.includes(nomeProdotto.split(' ')[0]));\n    if (prodotto) {\n        prodotto.scarichi += quantita;\n        prodotto.giacenzaAttuale = prodotto.giacenzaIniziale + prodotto.carichi - prodotto.scarichi;\n    }\n}\n\nfunction calcolaStatoProdotto(dataScadenza) {\n    if (!dataScadenza) return 'Disponibile';\n    \n    const oggi = new Date();\n    const scadenza = new Date(dataScadenza);\n    const differenza = scadenza - oggi;\n    const giorniRimanenti = Math.ceil(differenza \/ (1000 * 60 * 60 * 24));\n    \n    if (giorniRimanenti < 0) return 'Scaduto';\n    if (giorniRimanenti <= 30) return 'Scadenza';\n    return 'Disponibile';\n}\n\nfunction eliminaProdottoMagazzino(id) {\n    if (confirm('Sei sicuro di voler eliminare questo prodotto?')) {\n        quadernoDati.magazzino = quadernoDati.magazzino.filter(p => p.id !== id);\n        saveData();\n        refreshMagazzinoTable();\n        updateDashboard();\n    }\n}\n\n\/\/ Refresh all tables\nfunction refreshAllTables() {\n    refreshParcelleTable();\n    refreshTrattamentiTable();\n    refreshConcimazioniTable();\n    refreshMagazzinoTable();\n}\n\n\/\/ Modal functions\nfunction apriModal() {\n    document.getElementById('modal').style.display = 'block';\n}\n\nfunction chiudiModal() {\n    document.getElementById('modal').style.display = 'none';\n}\n\n\/\/ Utility functions\nfunction formatDate(dateString) {\n    if (!dateString) return '-';\n    const date = new Date(dateString);\n    return date.toLocaleDateString('it-IT');\n}\n\nfunction showToast(message, type = 'success') {\n    const toast = document.createElement('div');\n    toast.className = `toast toast--${type}`;\n    toast.textContent = message;\n    document.body.appendChild(toast);\n    \n    setTimeout(() => {\n        toast.remove();\n    }, 3000);\n}\n\n\/\/ Dashboard update\nfunction updateDashboard() {\n    document.getElementById('stat-parcelle').textContent = quadernoDati.parcelle.length;\n    document.getElementById('stat-trattamenti').textContent = quadernoDati.trattamenti.length;\n    \n    const superficieTotale = quadernoDati.parcelle.reduce((sum, p) => sum + p.superficie, 0);\n    document.getElementById('stat-superficie').textContent = superficieTotale.toFixed(1);\n    \n    const prodottiInScadenza = quadernoDati.magazzino.filter(p => p.stato === 'Scadenza' || p.stato === 'Scaduto').length;\n    document.getElementById('stat-scadenze').textContent = prodottiInScadenza;\n}\n\n\/\/ Export functions\nfunction esportaCSV() {\n    const tabAttiva = document.querySelector('.tab-panel.active').id;\n    let csvContent = '';\n    let filename = '';\n    \n    switch(tabAttiva) {\n        case 'parcelle':\n            csvContent = generateParcelleCSV();\n            filename = 'parcelle.csv';\n            break;\n        case 'trattamenti':\n            csvContent = generateTrattamentiCSV();\n            filename = 'trattamenti.csv';\n            break;\n        default:\n            showToast('Esportazione non disponibile per questa sezione', 'warning');\n            return;\n    }\n    \n    downloadCSV(csvContent, filename);\n}\n\nfunction generateParcelleCSV() {\n    const headers = ['Codice', 'Superficie', 'Coltura', 'Variet\u00e0', 'Tecnica', 'Anno', 'Rotazione'];\n    const rows = quadernoDati.parcelle.map(p => [\n        p.codice, p.superficie, p.coltura, p.varieta || '', \n        p.tecnicaColturale, p.annoImpianto || '', p.rotazione || ''\n    ]);\n    \n    return [headers, ...rows].map(row => row.join(',')).join('\\n');\n}\n\nfunction generateTrattamentiCSV() {\n    const headers = ['Data', 'Parcella', 'Coltura', 'Prodotto', 'Dose', 'Operatore'];\n    const rows = quadernoDati.trattamenti.map(t => [\n        t.data, t.parcella, t.coltura, t.prodotto, t.dose, t.operatore\n    ]);\n    \n    return [headers, ...rows].map(row => row.join(',')).join('\\n');\n}\n\nfunction downloadCSV(content, filename) {\n    const blob = new Blob([content], { type: 'text\/csv;charset=utf-8;' });\n    const link = document.createElement('a');\n    const url = URL.createObjectURL(blob);\n    link.setAttribute('href', url);\n    link.setAttribute('download', filename);\n    link.style.visibility = 'hidden';\n    document.body.appendChild(link);\n    link.click();\n    document.body.removeChild(link);\n    showToast('File CSV esportato correttamente', 'success');\n}\n\nfunction stampaQuaderno() {\n    window.print();\n}\n\n\/\/ Additional functions for other sections would be implemented similarly\nfunction aggiungiIrrigazione() {\n    \/\/ Implementation similar to other add functions\n    showToast('Funzione irrigazioni in sviluppo', 'info');\n}\n\nfunction aggiungiRaccolta() {\n    \/\/ Implementation similar to other add functions\n    showToast('Funzione raccolte in sviluppo', 'info');\n}\n\nfunction aggiungiControllo() {\n    \/\/ Implementation similar to other add functions\n    showToast('Funzione controlli in sviluppo', 'info');\n}\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Campaign Log Electronic register for the management of agricultural activities  \u2047  Register  \u2047  Parcels  \u2047  Treatments  \u2047  Fertilizations  \u2047  Irrigations  \u2047  Collections  \u2047  Warehouse  \u2047  Company Register Controls Company Name * Company Code\/CUAA * Technical Contact Address Common Headquarters Province CAP Cadastral Code Telephone Email Date Compilation Save Register Cultivated Parcels Add Parcel [...]<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-7315","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Quaderno di campagna - Vigneto Sicuro<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/vignetosicuro.it\/en\/quaderno-di-campagna\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Quaderno di campagna - Vigneto Sicuro\" \/>\n<meta property=\"og:description\" content=\"Quaderno di Campagna Registro elettronico per la gestione delle attivit\u00e0 agricole \ud83c\udfe2 Anagrafica \ud83c\udf3e Parcelle \ud83d\ude9c Trattamenti \ud83c\udf31 Concimazioni \ud83d\udca7 Irrigazioni \ud83c\udf3d Raccolte \ud83d\udce6 Magazzino \ud83d\udccb Controlli Anagrafica Aziendale Ragione Sociale * Codice Azienda\/CUAA * Referente Tecnico Indirizzo Sede Comune Provincia CAP Codice Catastale Telefono Email Data Compilazione Salva Anagrafica Registro Parcelle Coltivate Aggiungi Parcella [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/vignetosicuro.it\/en\/quaderno-di-campagna\/\" \/>\n<meta property=\"og:site_name\" content=\"Vigneto Sicuro\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-23T10:44:54+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/quaderno-di-campagna\\\/\",\"url\":\"https:\\\/\\\/vignetosicuro.it\\\/quaderno-di-campagna\\\/\",\"name\":\"Quaderno di campagna - Vigneto Sicuro\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/#website\"},\"datePublished\":\"2025-06-23T10:42:03+00:00\",\"dateModified\":\"2025-06-23T10:44:54+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/quaderno-di-campagna\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/vignetosicuro.it\\\/quaderno-di-campagna\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/quaderno-di-campagna\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/vignetosicuro.it\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Quaderno di campagna\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/#website\",\"url\":\"https:\\\/\\\/vignetosicuro.it\\\/\",\"name\":\"Vigneto Sicuro\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/vignetosicuro.it\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/#organization\",\"name\":\"Vigneto Sicuro\",\"url\":\"https:\\\/\\\/vignetosicuro.it\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/vignetosicuro.it\\\/wp-content\\\/uploads\\\/2023\\\/03\\\/Raggruppa-376.svg\",\"contentUrl\":\"https:\\\/\\\/vignetosicuro.it\\\/wp-content\\\/uploads\\\/2023\\\/03\\\/Raggruppa-376.svg\",\"width\":239,\"height\":58,\"caption\":\"Vigneto Sicuro\"},\"image\":{\"@id\":\"https:\\\/\\\/vignetosicuro.it\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Quaderno di campagna - Vigneto Sicuro","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/vignetosicuro.it\/en\/quaderno-di-campagna\/","og_locale":"en_US","og_type":"article","og_title":"Quaderno di campagna - Vigneto Sicuro","og_description":"Quaderno di Campagna Registro elettronico per la gestione delle attivit\u00e0 agricole \ud83c\udfe2 Anagrafica \ud83c\udf3e Parcelle \ud83d\ude9c Trattamenti \ud83c\udf31 Concimazioni \ud83d\udca7 Irrigazioni \ud83c\udf3d Raccolte \ud83d\udce6 Magazzino \ud83d\udccb Controlli Anagrafica Aziendale Ragione Sociale * Codice Azienda\/CUAA * Referente Tecnico Indirizzo Sede Comune Provincia CAP Codice Catastale Telefono Email Data Compilazione Salva Anagrafica Registro Parcelle Coltivate Aggiungi Parcella [&hellip;]","og_url":"https:\/\/vignetosicuro.it\/en\/quaderno-di-campagna\/","og_site_name":"Vigneto Sicuro","article_modified_time":"2025-06-23T10:44:54+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/vignetosicuro.it\/quaderno-di-campagna\/","url":"https:\/\/vignetosicuro.it\/quaderno-di-campagna\/","name":"Quaderno di campagna - Vigneto Sicuro","isPartOf":{"@id":"https:\/\/vignetosicuro.it\/#website"},"datePublished":"2025-06-23T10:42:03+00:00","dateModified":"2025-06-23T10:44:54+00:00","breadcrumb":{"@id":"https:\/\/vignetosicuro.it\/quaderno-di-campagna\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/vignetosicuro.it\/quaderno-di-campagna\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/vignetosicuro.it\/quaderno-di-campagna\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/vignetosicuro.it\/"},{"@type":"ListItem","position":2,"name":"Quaderno di campagna"}]},{"@type":"WebSite","@id":"https:\/\/vignetosicuro.it\/#website","url":"https:\/\/vignetosicuro.it\/","name":"Vigneto Sicuro","description":"","publisher":{"@id":"https:\/\/vignetosicuro.it\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/vignetosicuro.it\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/vignetosicuro.it\/#organization","name":"Vigneto Sicuro","url":"https:\/\/vignetosicuro.it\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/vignetosicuro.it\/#\/schema\/logo\/image\/","url":"https:\/\/vignetosicuro.it\/wp-content\/uploads\/2023\/03\/Raggruppa-376.svg","contentUrl":"https:\/\/vignetosicuro.it\/wp-content\/uploads\/2023\/03\/Raggruppa-376.svg","width":239,"height":58,"caption":"Vigneto Sicuro"},"image":{"@id":"https:\/\/vignetosicuro.it\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/pages\/7315","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/comments?post=7315"}],"version-history":[{"count":7,"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/pages\/7315\/revisions"}],"predecessor-version":[{"id":7323,"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/pages\/7315\/revisions\/7323"}],"wp:attachment":[{"href":"https:\/\/vignetosicuro.it\/en\/wp-json\/wp\/v2\/media?parent=7315"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}