Important Disclaimer
This guide provides general fitness suggestions and is not a substitute for professional medical advice. Consult with a healthcare provider or certified personal trainer before starting any new exercise program.
`;
elements.planResultContainer.innerHTML = planHTML;
};
const downloadPDF = () => {
if (typeof window.jspdf === 'undefined') {
alert('Could not generate PDF. The required library is missing.');
return;
}
const { jsPDF } = window.jspdf;
const doc = new jsPDF();
const { equipmentList, workoutPlan, inputs } = planData;
const colors = { primary: '#c2410c', secondary: '#fb923c', textPrimary: '#1f2937', textSecondary: '#6b7280' };
doc.setFillColor(colors.primary);
doc.rect(0, 0, 210, 28, 'F');
doc.setFont('helvetica', 'bold');
doc.setFontSize(20);
doc.setTextColor('#FFFFFF');
doc.text('My Custom Home Gym Plan', 105, 18, { align: 'center' });
let yPos = 40;
doc.setFontSize(16);
doc.setFont('helvetica', 'bold');
doc.setTextColor(colors.primary);
doc.text('Recommended Equipment', 14, yPos);
yPos += 8;
doc.setFontSize(11);
doc.setFont('helvetica', 'normal');
equipmentList.forEach(item => {
doc.text(`• ${item}`, 20, yPos);
yPos += 6;
});
yPos += 10;
doc.setFontSize(16);
doc.setFont('helvetica', 'bold');
doc.setTextColor(colors.primary);
doc.text('Sample 3-Day Workout Plan', 14, yPos);
yPos += 5;
doc.setFontSize(10);
doc.setTextColor(colors.textSecondary);
doc.text("Aim for 3 sets of 8-12 repetitions for strength exercises.", 14, yPos);
yPos += 8;
Object.entries(workoutPlan).forEach(([day, exercises]) => {
doc.setFontSize(12);
doc.setFont('helvetica', 'bold');
doc.setTextColor(colors.textPrimary);
doc.text(day, 14, yPos);
yPos += 7;
doc.setFontSize(11);
doc.setFont('helvetica', 'normal');
exercises.forEach(ex => {
doc.text(`• ${ex}`, 20, yPos);
yPos += 6;
});
yPos += 5;
});
yPos = 270;
doc.setFillColor('#fffbeb');
doc.rect(14, yPos, 182, 20, 'F');
doc.setFontSize(11);
doc.setFont('helvetica', 'bold');
doc.setTextColor('#b45309');
doc.text('Important Disclaimer', 20, yPos + 7);
doc.setFontSize(9);
doc.setFont('helvetica', 'normal');
doc.setTextColor('#92400e');
const disclaimer = "This is not medical advice. Consult a healthcare professional or certified trainer before starting a new fitness routine.";
doc.text(doc.splitTextToSize(disclaimer, 170), 20, yPos + 12);
doc.save('My_Home_Gym_Plan.pdf');
};
// --- Event Listeners ---
elements.nextBtn.addEventListener('click', nextStep);
elements.prevBtn.addEventListener('click', prevStep);
elements.downloadPdfBtn.addEventListener('click', downloadPDF);
// --- Initialization ---
updateFormUI();
});