Poisoning Symptom Checker & First Response Guide

IMMEDIATE ACTION REQUIRED

If you suspect someone has been poisoned, call 911 or your local emergency number immediately.

This tool is for informational purposes only and is NOT a substitute for immediate medical help.

How was the person exposed?

${step}

`; }); const resultsHTML = `

First Response Guide

For: ${guide.title}

    ${stepsHTML}

Your Selected Symptoms:

${userAnswers.symptoms.join(', ') || 'None selected'}

Information for Emergency Services:

When you call for help, be ready to provide the following information if possible:

  • The person's age and weight.
  • The name of the product or substance involved (have the container handy).
  • The time the exposure occurred.
  • The address where you are.
`; resultsContainer.innerHTML = resultsHTML; resultsContainer.classList.remove('hidden'); document.getElementById('download-pdf-btn').addEventListener('click', downloadPdf); resultsContainer.scrollIntoView({ behavior: 'smooth' }); } function downloadPdf() { if (!userAnswers.exposure) return; const { jsPDF } = window.jspdf; const doc = new jsPDF(); const guideKey = userAnswers.exposure.toLowerCase().replace('/','_'); const guide = firstResponseData[guideKey]; // Header doc.setFontSize(22); doc.setFont('helvetica', 'bold'); doc.setTextColor(220, 38, 38); // Red doc.text('EMERGENCY First Response Guide', 105, 20, { align: 'center' }); doc.setTextColor(0, 0, 0); // Black doc.setFontSize(16); doc.text(`For Suspected ${guide.title}`, 105, 28, { align: 'center' }); // Steps doc.setFontSize(14); doc.setFont('helvetica', 'bold'); doc.text('Immediate Actions:', 14, 45); doc.setFontSize(11); doc.setFont('helvetica', 'normal'); let yPos = 52; guide.steps.forEach(step => { const cleanStep = step.replace(//g, '').replace(/<\/strong>/g, ''); const textLines = doc.splitTextToSize('• ' + cleanStep, 180); doc.text(textLines, 14, yPos); yPos += (textLines.length * 5) + 3; }); // User Info if (yPos > 240) { doc.addPage(); yPos = 20; } doc.setFontSize(14); doc.setFont('helvetica', 'bold'); doc.text('User-Reported Symptoms:', 14, yPos + 10); doc.setFontSize(11); doc.setFont('helvetica', 'normal'); doc.text(userAnswers.symptoms.join(', ') || 'None reported', 14, yPos + 17); doc.save(`Poisoning-First-Response-${guide.title.replace(' ', '-')}.pdf`); } // --- EVENT LISTENERS --- nextBtn1.addEventListener('click', () => { populateSymptoms(); switchStep('2'); }); prevBtn2.addEventListener('click', () => switchStep('1')); finishBtn.addEventListener('click', generateGuide); // --- INITIALIZATION --- // No init needed });
Scroll to Top