`;
html += `
`;
outputDiv.innerHTML = html;
currentImageIndex = 0;
}
function changeImage(direction) {
currentImageIndex += direction;
if (currentImageIndex < 0) {
currentImageIndex = tourImages.length - 1;
} else if (currentImageIndex >= tourImages.length) {
currentImageIndex = 0;
}
document.getElementById('tour-image').src = tourImages[currentImageIndex].image;
document.getElementById('tour-room-name').textContent = tourImages[currentImageIndex].name;
document.getElementById('tour-room-description').textContent = tourImages[currentImageIndex].description;
}
// --- PDF Download ---
function downloadPDF() {
const { jsPDF } = window.jspdf;
const loader = document.getElementById('loader');
loader.style.display = 'block';
const pdf = new jsPDF({ orientation: 'p', unit: 'mm', format: 'a4' });
pdf.setFontSize(18);
pdf.text("Virtual Property Tour", 105, 20, { align: 'center' });
let y = 30;
tourImages.forEach((room, index) => {
if (index > 0 && y > 200) {
pdf.addPage();
y = 20;
}
pdf.setFontSize(14);
pdf.text(room.name, 15, y);
pdf.addImage(room.image, 'PNG', 15, y + 5, 180, 100);
pdf.setFontSize(10);
const descLines = pdf.splitTextToSize(room.description, 180);
pdf.text(descLines, 15, y + 110);
y += 125;
});
pdf.save('Virtual_Property_Tour.pdf');
loader.style.display = 'none';
}
