Nessun oggetto della modifica
Nessun oggetto della modifica
Riga 71: Riga 71:
   <div id="ai-response" style="margin-top: 20px; background: #eef6ee; padding: 15px; border-left: 4px solid #2a7; font-size: 95%; font-family: sans-serif; display: none;"></div>
   <div id="ai-response" style="margin-top: 20px; background: #eef6ee; padding: 15px; border-left: 4px solid #2a7; font-size: 95%; font-family: sans-serif; display: none;"></div>


  <script>
<div id="ddp-container"></div>
    function generaSchedaClinica() {
      const eta = document.getElementById('eta').value;
      const dolore = document.getElementById('dolore').value.toLowerCase();
      const durata = document.getElementById('durata').value;
      const neuro = document.getElementById('neurologici').value;
      const farmaci = document.getElementById('farmaci').value.toLowerCase();
      const test = document.getElementById('test').value.toLowerCase();
 
      const prompt = `Caso clinico:\n- Età: ${eta}\n- Descrizione dolore: ${dolore}\n- Durata: ${durata}\n- Sintomi neurologici associati: ${neuro}\n- Farmaci attuali: ${farmaci}\n- Test trigeminali: ${test}\n\nObiettivo: stimare se il caso è più compatibile con disturbo funzionale o organico.`;
 
      const output = document.getElementById('output-prompt');
      output.innerText = prompt;
      output.style.display = 'block';
 
      let response = "\n📊 Probabilità disturbo organico: 45%\n📊 Probabilità disturbo funzionale: 55%";
 
      if (neuro.includes("parestesie") || neuro.includes("debolezza")) {
        response = "\n📊 Probabilità disturbo organico: 75%\n📊 Probabilità disturbo funzionale: 25%\n👉 Raccomandazione: approfondire con RMN e EMG trigeminale.";
      } else if (dolore.includes("al mattino") || farmaci.includes("ansiolitico")) {
        response = "\n📊 Probabilità disturbo funzionale: 80%\n📊 Probabilità disturbo organico: 20%\n👉 Raccomandazione: valutazione gnatologica, diario occlusale, eventuale EMG.";
      } else if (test.includes("jaw jerk") && test.includes("differenza")) {
        response = "\n📊 Probabilità disturbo organico: 68%\n📊 Probabilità disturbo funzionale: 32%\n👉 Anomalia rilevata nel Jaw Jerk: valutare riflessi da lato opposto e confermare con RIM.";
      } else if (test.includes("stimolazione transcranica")) {
        response = "\n⚠️ Test elettrofisiologici dubbi. Consigliata stimolazione transcranica bilaterale per completare la valutazione funzionale.";
      }
 
      const aiOutput = document.getElementById('ai-response');
      aiOutput.innerText = response;
      aiOutput.style.display = 'block';
    }
  </script>
 
  <div class="next-step" style="margin-top: 20px; font-style: italic; color: #666;">
    <p>⚠️ Questa versione interattiva ora include la simulazione dei test elettrofisiologici trigeminali avanzati propri di Masticationpedia. Le raccomandazioni sono generate su regole cliniche simulate e possono essere personalizzate.</p>
  </div>
</div>
----<div id="mastication-form-container" style="max-width: 720px; margin: auto; padding: 20px; background: #f9f9f9; border-radius: 12px; box-shadow: 0 0 10px rgba(0,0,0,0.05);">
  <h2 style="text-align:center; color: #cc0000;">🔍 Differential Diagnostic Protocol</h2>
 
  <form id="mastication-form">
    <label><strong>1. Età del paziente:</strong></label><br>
    <input type="number" id="eta" required style="width:100%; margin-bottom:12px;"><br>
 
    <label><strong>2. Sesso:</strong></label><br>
    <select id="sesso" required style="width:100%; margin-bottom:12px;">
      <option value="">-- seleziona --</option>
      <option value="Maschio">Maschio</option>
      <option value="Femmina">Femmina</option>
      <option value="Altro">Altro</option>
    </select><br>
 
    <label><strong>3. Durata dei sintomi:</strong></label><br>
    <select id="durata" style="width:100%; margin-bottom:12px;">
      <option value="acuto">Acuto (&lt;1 mese)</option>
      <option value="cronico">Cronico (&gt;6 mesi)</option>
      <option value="recidivante">Recidivante</option>
    </select><br>
 
    <label><strong>4. Descrizione del dolore:</strong></label><br>
    <textarea id="dolore" placeholder="Tipo, localizzazione, intensità..." style="width:100%; height:60px; margin-bottom:12px;"></textarea><br>
 
    <label><strong>5. Jaw Jerk Reflex:</strong></label><br>
    <select id="jawjerk" style="width:100%; margin-bottom:12px;">
      <option value="nella norma">Nella norma</option>
      <option value="assente">Assente</option>
      <option value="iperriflesso">Iperriflesso</option>
    </select><br>
 
    <label><strong>6. Blink Reflex:</strong></label><br>
    <select id="blink" style="width:100%; margin-bottom:12px;">
      <option value="normale">Normale</option>
      <option value="alterato">Alterato</option>
    </select><br>
 
    <label><strong>7. Periodo silente masseteri:</strong></label><br>
    <select id="silente" style="width:100%; margin-bottom:20px;">
      <option value="normale">Normale</option>
      <option value="assente">Assente</option>
      <option value="prolungato">Prolungato</option>
    </select><br>
 
    <button type="button" onclick="valutaCasoClinico()" style="background:#cc0000; color:white; border:none; padding:10px 20px; border-radius:5px; cursor:pointer;">📤 Invia a AI Masticationpedia</button>
  </form>
 
  <div id="output-ai" style="margin-top:30px; display:none; padding:15px; background:#eef6ee; border-left:4px solid #2a7; border-radius: 8px;"></div>
</div>
 
<script>
function valutaCasoClinico() {
  const eta = parseInt(document.getElementById("eta").value);
  const sesso = document.getElementById("sesso").value;
  const durata = document.getElementById("durata").value;
  const dolore = document.getElementById("dolore").value.toLowerCase();
  const jawjerk = document.getElementById("jawjerk").value;
  const blink = document.getElementById("blink").value;
  const silente = document.getElementById("silente").value;
 
  let diagnosi = "<strong>🧠 Pre-Diagnosi:</strong><br>";
  let raccomandazioni = "<br><strong>🔬 Raccomandazioni:</strong><ul>";
 
  if (jawjerk === "iperriflesso" || blink === "alterato" || silente === "assente") {
    diagnosi += "Disturbo <strong>organico</strong> sospetto (probabilità alta)";
    raccomandazioni += "<li>Approfondire con risonanza magnetica encefalo</li>";
    raccomandazioni += "<li>Valutare stimolazione transcranica bilaterale</li>";
  } else if (dolore.includes("al mattino") || durata === "cronico") {
    diagnosi += "Disturbo <strong>funzionale</strong> (probabile TMD psicosomatico)";
    raccomandazioni += "<li>Valutazione gnatologica</li><li>Supporto psicologico</li>";
  } else {
    diagnosi += "Quadro <strong>non conclusivo</strong>. Si consiglia ulteriore raccolta dati.";
  }
  raccomandazioni += "</ul>";
 
  const output = document.getElementById("output-ai");
  output.innerHTML = diagnosi + raccomandazioni;
  output.style.display = "block";
}
</script>
 
<div id="ddp-container"></div>

Versione delle 13:01, 15 mag 2025


🧬 Social Benefit Diagnostic Protocol

Questo progetto nasce per offrire una diagnosi predittiva assistita alle fasce sociali più fragili, dove errori diagnostici legati a dolore facciale, disfunzione mandibolare o sintomi neurologici atipici hanno spesso portato a lunghi periodi di sofferenza, cure inutili o assenza di trattamento.

Attraverso l'impiego di un sistema guidato da AI clinica, Masticationpedia vuole fornire un supporto gratuito e altamente specializzato per distinguere precocemente tra:

  • Disturbi organici (tumori, sclerosi, distonie, neuropatie gravi)
  • Disturbi funzionali (TMD, bruxismo, psicosomatica, disordini posturali)

📝 Mockup: Pre-triage guidato

   <form id="diagnostic-form">
     <label>1. Età del paziente:
<input id="eta" type="text" placeholder="Es. 48" style="width: 100%; margin-bottom: 12px;"> </label>
     <label>2. Descrizione del dolore:
<textarea id="dolore" placeholder="Descrivi il tipo di dolore, sede, intensità..." style="width: 100%; height: 60px; margin-bottom: 12px;"></textarea> </label>
     <label>3. Durata e andamento:
<select id="durata" style="width: 100%; margin-bottom: 12px;"> <option>Acuto (meno di 1 mese)</option> <option>Cronico (oltre 6 mesi)</option> <option>Recidivante</option> </select> </label>
     <label>4. Sintomi neurologici associati?
<select id="neurologici" style="width: 100%; margin-bottom: 12px;"> <option>No</option> <option>Sì: parestesie</option> <option>Sì: diplopia o sbandamenti</option> <option>Sì: debolezza muscolare</option> </select> </label>
     <label>5. Farmaci assunti:
<input id="farmaci" type="text" placeholder="Es. antinfiammatori, ansiolitici..." style="width: 100%; margin-bottom: 12px;"> </label>
     <label>6. Test elettrofisiologici trigeminali:
<textarea id="test" placeholder="Esempi: Jaw Jerk aperto/chiuso, periodo silente meccanico/elettro, ciclo recupero RIM, blink reflex, stimolazione transcranica bilaterale..." style="width: 100%; height: 80px; margin-bottom: 12px;"></textarea> </label>
     <button type="button" onclick="generaSchedaClinica()" style="padding: 10px 20px; background: #cc0000; color: white; border: none; border-radius: 5px; cursor: pointer;">📄 Genera scheda clinica</button>
   </form>