Add podcast redirects and route through first-party links

This commit is contained in:
nmemmert
2026-04-27 10:31:10 -04:00
parent b4f1c1dbdb
commit 73b8299f1a
2 changed files with 24 additions and 5 deletions
+21
View File
@@ -34,6 +34,7 @@ const CHATBOT_FILE = path.join(DATA_DIR, 'chatbot-content.json')
const BACKUP_DIR = path.join(DATA_DIR, 'backups') const BACKUP_DIR = path.join(DATA_DIR, 'backups')
const DIST_DIR = path.join(__dirname, 'dist') const DIST_DIR = path.join(__dirname, 'dist')
const INDEX_FILE = path.join(DIST_DIR, 'index.html') const INDEX_FILE = path.join(DIST_DIR, 'index.html')
const PODCAST_ART_FILE = path.join(__dirname, 'public', 'images', 'podcast-art.jpeg')
const TITUS_STUDY_FILE = process.env.TITUS_STUDY_FILE const TITUS_STUDY_FILE = process.env.TITUS_STUDY_FILE
? path.resolve(__dirname, process.env.TITUS_STUDY_FILE) ? path.resolve(__dirname, process.env.TITUS_STUDY_FILE)
: path.join(__dirname, 'A_Study_of_Titus.pdf') : path.join(__dirname, 'A_Study_of_Titus.pdf')
@@ -1468,6 +1469,26 @@ app.get('/api/episodes', async (_req, res) => {
} }
}) })
app.get('/spotify', (_req, res) => {
res.redirect(301, 'https://open.spotify.com/show/0Gq1TzoJOdReSZ1gYQi8Xl')
})
app.get('/apple', (_req, res) => {
res.redirect(301, 'https://podcasts.apple.com/search?term=Verse+by+Verse+with+Nate')
})
app.get('/amazon', (_req, res) => {
res.redirect(301, 'https://music.amazon.com/podcasts/202322bf-db86-4e7d-9a6b-4db7cbccbccf/verse-by-verse-with-nate')
})
app.get('/images/podcast-art.jpeg', (_req, res) => {
res.sendFile(PODCAST_ART_FILE, err => {
if (err) {
res.redirect(301, 'https://necloud.us/images/podcast-art.jpeg')
}
})
})
app.use(express.static(DIST_DIR)) app.use(express.static(DIST_DIR))
app.use(async (_req, res) => { app.use(async (_req, res) => {
+3 -5
View File
@@ -3,15 +3,13 @@ import { Link, Routes, Route, useNavigate } from 'react-router-dom'
import AdminPage from './AdminPage' import AdminPage from './AdminPage'
import './App.css' import './App.css'
const SPOTIFY_SHOW_URL = 'https://open.spotify.com/show/0Gq1TzoJOdReSZ1gYQi8Xl' const SPOTIFY_SHOW_URL = '/spotify'
const SPOTIFY_EMBED_URL = const SPOTIFY_EMBED_URL =
'https://open.spotify.com/embed/show/0Gq1TzoJOdReSZ1gYQi8Xl?utm_source=generator&theme=0' 'https://open.spotify.com/embed/show/0Gq1TzoJOdReSZ1gYQi8Xl?utm_source=generator&theme=0'
const SPOTIFY_CREATOR_URL = 'https://creators.spotify.com/pod/profile/nmemmert/' const SPOTIFY_CREATOR_URL = 'https://creators.spotify.com/pod/profile/nmemmert/'
const APPLE_PODCASTS_URL = const APPLE_PODCASTS_URL = '/apple'
'https://podcasts.apple.com/search?term=Verse+by+Verse+with+Nate'
const YOUTUBE_URL = 'https://www.youtube.com/@blackzebraem5558' const YOUTUBE_URL = 'https://www.youtube.com/@blackzebraem5558'
const AMAZON_MUSIC_URL = const AMAZON_MUSIC_URL = '/amazon'
'https://music.amazon.com/podcasts/202322bf-db86-4e7d-9a6b-4db7cbccbccf/verse-by-verse-with-nate'
const FACEBOOK_URL = 'https://facebook.com/versebyversewithnate' const FACEBOOK_URL = 'https://facebook.com/versebyversewithnate'
const CONSENT_KEY = 'vbn_analytics_consent_choice' const CONSENT_KEY = 'vbn_analytics_consent_choice'