Add URL parameter support for Bible version

- Read version parameter from URL on page load (?version=esv|?version=nkjv)
- Update URL with version when selection changes
- Enable shareable version-specific URLs like /book/Genesis/chapter/1?version=nkjv
This commit is contained in:
Ryderjj89
2025-09-28 13:39:42 -04:00
parent 1b1cadf260
commit 54edb264fe
1189 changed files with 16340 additions and 16323 deletions

View File

@@ -32,6 +32,15 @@ function App() {
// Debug logging
console.log('App component rendered');
// Read version from URL on mount
useEffect(() => {
const urlParams = new URLSearchParams(location.search);
const versionParam = urlParams.get('version');
if (versionParam && (versionParam === 'esv' || versionParam === 'nkjv')) {
setSelectedVersion(versionParam);
}
}, []);
useEffect(() => {
console.log('App useEffect triggered');
loadVersions();
@@ -42,6 +51,14 @@ function App() {
// Load versions when version changes
useEffect(() => {
loadBooks();
// Update URL with version when it changes
const url = new URL(window.location.href);
if (selectedVersion !== 'esv') { // Only add if not default
url.searchParams.set('version', selectedVersion);
} else {
url.searchParams.delete('version');
}
window.history.replaceState({}, '', url.toString());
}, [selectedVersion]);
// Load user preferences when user changes