MyMemoir

Honoring Lives, Cherishing Memories

A beautiful way to preserve and share the stories of those we love

Browse Memorials

Loading memorials...
font-family: 'Georgia', serif; } .hero { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; min-height: 100vh; } .memorial-link { display: inline-block; margin: 1rem; padding: 1rem 2rem; background-color: rgba(255,255,255,0.1); color: white; text-decoration: none; border-radius: 8px; transition: background-color 0.3s; } .memorial-link:hover { background-color: rgba(255,255,255,0.2); }

MyMemoir

Honoring Lives, Cherishing Memories

Access Memorials

Visit memorials using the format: /memorial/{ID}

Darren Welsh Memorial
ID: 1195

Replace 1195 with any memorial ID to view that memorial.

Example: https://your-site.pages.dev/memorial/1195

// Update page title document.title = `Memorial - ${data.name}`; // Name document.getElementById('name').textContent = data.name; // Dates const dates = []; if (data.born) dates.push(`Born: ${data.born}`); if (data.passed) dates.push(`Passed: ${data.passed}`); document.getElementById('dates').innerHTML = dates.join(' • '); // Main image (first image) if (data.images && data.images.length > 0) { const mainImg = document.createElement('img'); mainImg.src = data.images[0]; mainImg.className = 'memorial-image'; mainImg.style.maxWidth = '400px'; mainImg.style.maxHeight = '300px'; mainImg.style.objectFit = 'cover'; document.getElementById('main-image-container').appendChild(mainImg); } // About info document.getElementById('place').textContent = data.place || 'Unknown'; document.getElementById('occupation').textContent = data.occupation || 'Unknown'; document.getElementById('created-time').textContent = data.created_time || 'Unknown'; document.getElementById('created-by').textContent = data.created_by || 'Unknown'; // Quote if (data.quote) { document.getElementById('quote').textContent = `"${data.quote}"`; document.getElementById('quote-container').style.display = 'block'; } // Memoir if (data.memoir) { document.getElementById('memoir').innerHTML = data.memoir; } // Gallery (skip first image as it's the main image) if (data.images && data.images.length > 1) { const gallery = document.getElementById('gallery'); data.images.slice(1).forEach(url => { const img = document.createElement('img'); img.src = url; img.className = 'memorial-image'; img.style.width = '100%'; img.style.height = '200px'; img.style.objectFit = 'cover'; gallery.appendChild(img); }); } // Videos if (data.videos && data.videos.length > 0) { const videosContainer = document.getElementById('videos'); data.videos.forEach(url => { const videoContainer = document.createElement('div'); videoContainer.className = 'video-container'; const video = document.createElement('video'); video.src = url; video.controls = true; video.style.maxWidth = '600px'; videoContainer.appendChild(video); videosContainer.appendChild(videoContainer); }); } // Song if (data.song_name || data.song_link) { document.getElementById('song-section').style.display = 'block'; if (data.song_name) { document.getElementById('song-name').textContent = data.song_name; } if (data.song_link) { const link = document.getElementById('song-link'); link.href = data.song_link; link.textContent = 'Listen on Spotify'; } } // Condolences if (data.condolences && data.condolences.length > 0) { const condolencesList = document.getElementById('condolences-list'); data.condolences.forEach(name => { const item = document.createElement('div'); item.className = 'condolence-item'; item.textContent = name; condolencesList.appendChild(item); }); } } catch (error) { console.error('Error loading memorial:', error); document.getElementById('name').textContent = 'Memorial Not Found'; document.querySelector('.hero-body .container').innerHTML += `

Sorry, we couldn't load this memorial.

Error: ${error.message}

`; } } loadMemorial();