CINXE.COM

This Little Light of Mine - LGBTQ, Christianity, religious trauma,

<!DOCTYPE html> <html> <head> <meta content='text/html; charset=UTF-8' http-equiv='Content-Type'> <meta content='width=device-width, initial-scale=1.0' name='viewport'> <meta content='noindex' name='robots'> <title>This Little Light of Mine - LGBTQ, Christianity, religious trauma,</title> <meta name="description" content="This Little Light of Mine is an LGBTQ+ tale of terror (growing up as a closeted Gay Christian in the Evangelical church) that led to trauma (cPTSD, religious trauma, spiritual abuse, sexual abuse, addiction) to what I intend to become triumph. Join me on my healing and recovery journey towards"> <meta property="og:image" content="https://images.pod.co/svh5DjwRThFQbwp08yWJXhvDen60bkE0wLp5nYPMUh4/resize:fill:1500:1500/plain/artwork/c0a97ac7-4500-4a53-ac55-d43c87e65f21/this-little-light-of-mine.jpg"> <meta property="og:title" content="This Little Light of Mine - LGBTQ, Christianity, religious trauma,"> <meta property="og:description" content="This Little Light of Mine is an LGBTQ+ tale of terror (growing up as a closeted Gay Christian in the Evangelical church) that led to trauma (cPTSD, religious trauma, spiritual abuse, sexual abuse, addiction) to what I intend to become triumph. Join me on my healing and recovery journey towards"> <meta name="twitter:card" content="summary_large_image"> <meta name="twitter:site" content="@ChartableDotCom"> <meta name="twitter:title" content="This Little Light of Mine - LGBTQ, Christianity, religious trauma, mental health"> <meta name="twitter:description" content="&lt;p&gt;This Little Light of Mine is an LGBTQ+ tale of terror (growing up as a closeted Gay Christian in the Evangelical church) that led to trauma (cPTSD, religious trauma, spiritual abuse, sexual abuse, addiction) to what I intend to become triumph.&lt;/p&gt; &lt;p&gt;Join me on my healing and recovery journey towards mental health, spiritual health and emotional health as I find my voice by sharing what happened in my life as a Queer Christian where I was taught that I was not allowed to love.&lt;/p&gt;"> <meta name="twitter:image" content="https://images.pod.co/svh5DjwRThFQbwp08yWJXhvDen60bkE0wLp5nYPMUh4/resize:fill:1500:1500/plain/artwork/c0a97ac7-4500-4a53-ac55-d43c87e65f21/this-little-light-of-mine.jpg"> <link rel="shortcut icon" type="image/x-icon" href="/assets/chartable-favicon-147fa2a780e77ea3bc97719e343e8d733b2e8487f7c8a78b3d496aae5555dd05.png" /> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="512/Em/XU2Lf+/C9TQNffMgKySJZOjEVwPQQ7bbsT1HddDZyLhAvZODj1/dbADen5A9k1h3+ZLekc1+kh30c9Q==" /> <link rel="stylesheet" media="all" href="/assets/application-e6e1be4b0c45d8370f449baa0ce082ab5ebb54dca77b6f98a462fff73a0e4037.css" /> <link href='https://fonts.gstatic.com' rel='preconnect'> <script src="/assets/application-e14f81bc94951128bb2d2dc4f233fd48cdc83e337ef2a6de694aeb11401a7c70.js"></script> <link href='//cdnjs.cloudflare.com/ajax/libs/tachyons/4.11.1/tachyons.min.css' rel='stylesheet' type='text/css'> <link href='https://fonts.googleapis.com/css?family=Cabin:500|Open+Sans&amp;display=swap' rel='stylesheet'><link href='https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&amp;display=swap' rel='stylesheet'><script src='https://unpkg.com/axios@1.0.0/dist/axios.min.js'></script> </head> <body style='background: #FFFFFF'> <div class='w-100 flex justify-center' style='background: #FFFFFF'> <div class='content-container inline-flex w7' style='gap: 2rem;'> <div> <img class="br4 cover-art" src="https://images.pod.co/svh5DjwRThFQbwp08yWJXhvDen60bkE0wLp5nYPMUh4/resize:fill:1500:1500/plain/artwork/c0a97ac7-4500-4a53-ac55-d43c87e65f21/this-little-light-of-mine.jpg" /> <div class='tc h2 mb2 current-episode-title ph2 mt4 f3 b' style='color: #333333; width: 300px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis'> - </div> <div class='webview-audio-player-controls'> <div class='mt3 relative'> <div class='progress-bar pointer'> <div class='w-100 bg-moon-gray br3 o-50' style='height: 6px'></div> <div class='percent-complete pointer absolute top-0 br3 bg-dark-gray' style='height: 6px;'></div> </div> <div class='flex justify-between w-100 mt2'> <div class='f6 current-time' style='color: #333333'> 0:00 </div> <div class='f6 total-duration' style='color: #333333'> -:-- </div> </div> </div> <div class='flex flex-row items-center mt2 justify-around'> <img class="dim pointer skip-back" style="height: 2.75rem; width: 2.75rem;" src="/assets/back15-dark-b158f49dddc83bc68d2c14ab3d7b42385c6daa4b734144f47713fe9448e8d454.svg" /> <img class="dim pointer play-pause-button" style="height: 3rem; width: 3rem" src="/assets/play-dark-56667b8f98046775503abb0472cd646104248c49d9dd4d8ab6389d63b8faadca.svg" /> <img class="dim pointer skip-forward" style="height: 2.75rem; width: 2.75rem;" src="/assets/forward30-dark-8b3e55d318fbad3cdb2985e11b65e725b1613b4fb73bf81bc142d7411968667d.svg" /> </div> </div> <audio id='player' preload='none'></audio> </div> <div class='w-100' style='flex: 1'> <div class='fw-700 lh-title title ph4' style='color: #333333; font-family: Inter, sans-serif;'>This Little Light of Mine - LGBTQ, Christianity, religious trauma, mental health</div> <div class='content flex'> <div class='pt4 links'> <div class='f6 fw-700 o-80 lh-title mb3 tl-ns ph4 ttu tracked link-header' style='color: #333333; font-family: Inter'>Listen now on</div> <div class='flex flex-wrap player-list'> <a class='no-underline player-list-item flex flex-row items-center' href='https://link.chtbl.com/help?id=help&amp;platform=google_podcasts'> <div class='relative flex items-center justify-center' style='height: 60px; width: 60px; padding: 4px;'> <div class='br4 absolute bg-white top-0 right-0 left-0 bottom-0' style='opacity: 0.15;'></div> <img class="relative grow-large" src="/assets/google_podcasts-73950d24121a87af14f1dafd8e89dd61ba0ded991e0b9d4807a9a135b70b0548.svg" /> </div> <div class='hidden-player-content flex-row items-center justify-between ml3' style='flex: 1; font-family: Inter'> <div class='dark-gray o-80 fw-600'> Google Podcasts </div> <div class='ph3 pv2 br2 ba fw-700' style='border-color: #282828'> <div class='mid-gray o-80'>Play</div> </div> </div> </a> <a class='no-underline player-list-item flex flex-row items-center' href='https://link.chtbl.com/help?id=help&amp;platform=rss'> <div class='relative flex items-center justify-center' style='height: 60px; width: 60px; padding: 4px;'> <div class='br4 absolute bg-white top-0 right-0 left-0 bottom-0' style='opacity: 0.15;'></div> <img class="relative grow-large" src="/assets/rss-5d61fa90548266c6296cb95aa758ef418ccf45deb59d2610a7d52cb4b4835c4f.svg" /> </div> <div class='hidden-player-content flex-row items-center justify-between ml3' style='flex: 1; font-family: Inter'> <div class='dark-gray o-80 fw-600'> RSS feed </div> <div class='ph3 pv2 br2 ba fw-700' style='border-color: #282828'> <div class='mid-gray o-80'>Play</div> </div> </div> </a> </div> </div> <div class='mt4 ph4'> <div class='lh-copy mb4 w-100' style='color: #333333; font-weight: 400; font-family: Inter, sans-serif;'> <span class='description'> This Little Light of Mine is an LGBTQ+ tale of terror (growing up as a closeted Gay Christian in the Evangelical church) that led to trauma (cPTSD, religious trauma, spiritual abuse, sexual abuse, addiction) to what I intend to become triumph. Join me on my healing and recovery journey towards mental health, spiritual health and emotional health as I find my voice by sharing what happened in my life as a Queer Christian where I was taught that I was not allowed to love. </span> <span class='link pointer dn no-underline text-button o-70' style='color: #333333'>Show more</span> <div class='mt5 f6 fw-700 o-80 lh-title tl-ns ttu tracked link-header web' style='color: #333333; font-family: Inter'>Episodes</div> <div class='episode-feed-container web' style='color: #333333'></div> </div> </div> </div> </div> </div> </div> <div class='f7 tc w-100 o-70 mt5 out-links pb5' style='color: #333333'> <div class='pb4'> Powered by <a class="link underline" style="color: inherit" href="https://chartable.com/smartlinks?utm_source=smartlink">Chartable SmartLinks</a> &middot; <a class="link" style="color: inherit" href="https://chartable.com/privacy?utm_source=smartlink">Privacy &amp; Terms</a> </div> </div> <div class='w-100 fixed bottom-0 mobile-player'> <div class='maximized-content' style='display: none;'> <div class='w-100 flex justify-center pt2 pointer minimize-button' style='height: 60px'> <div class='bg-moon-gray w2 br3' style='width: 40px; height: 5px'></div> </div> <div class='h-100 w-100 center tc' style='max-width: 550px'> <img class="w-70 br4" style="max-width: 270px; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;" src="https://images.pod.co/svh5DjwRThFQbwp08yWJXhvDen60bkE0wLp5nYPMUh4/resize:fill:1500:1500/plain/artwork/c0a97ac7-4500-4a53-ac55-d43c87e65f21/this-little-light-of-mine.jpg" /> <p class='ph4 mt4 f3 b dark-gray current-episode-title-2' style='width: 100%; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; font-family: Inter;'> </p> <div class='mobile-audio-player-controls ph4'> <div class='mt3 relative'> <div class='progress-bar-2 pointer'> <div class='w-100 bg-moon-gray br3 o-50' style='height: 6px'></div> <div class='percent-complete-2 bg-dark-gray pointer absolute top-0 br3' style='height: 6px;'></div> </div> <div class='flex justify-between w-100 mt2'> <div class='f6 current-time-2 dark-gray'> 0:00 </div> <div class='f6 total-duration-2 dark-gray'> </div> </div> </div> <div class='flex flex-row items-center justify-around w-60 center mt2'> <img class="dim pointer skip-back-2" style="height: 2.75rem; width: 2.75rem;" src="/assets/back15-dark-b158f49dddc83bc68d2c14ab3d7b42385c6daa4b734144f47713fe9448e8d454.svg" /> <img class="dim pointer play-pause-button-3" style="height: 2.85rem; width: 2.75rem" src="/assets/play-dark-56667b8f98046775503abb0472cd646104248c49d9dd4d8ab6389d63b8faadca.svg" /> <img class="dim pointer skip-forward-2" style="height: 2.75rem; width: 2.75rem;" src="/assets/forward30-dark-8b3e55d318fbad3cdb2985e11b65e725b1613b4fb73bf81bc142d7411968667d.svg" /> </div> <div class='description-container mt5'> <div class='f5 fw-700 o-80 lh-title mb2 tl-ns ttu tracked link-header dark-gray' style='font-family: Inter'> Description </div> <div class='f6 mid-gray tl lh-copy current-episode-description' style='font-family: Inter'> - </div> </div> <div class='mt5 f6 fw-700 o-80 lh-title tl-ns ttu tracked link-header mobile dark-gray' style='font-family: Inter'>Episodes</div> <div class='episode-feed-container mobile' style='color: #333; font-family: Inter;'></div> </div> </div> </div> <div class='pointer minimized-content relative' style='height: 55px;'> <div class='flex flex-row justify-between w-100 fade-display items-center blurred-content'> <div class='w3 pa2'> <img class="" style="width: 100%;" src="https://images.pod.co/svh5DjwRThFQbwp08yWJXhvDen60bkE0wLp5nYPMUh4/resize:fill:1500:1500/plain/artwork/c0a97ac7-4500-4a53-ac55-d43c87e65f21/this-little-light-of-mine.jpg" /> </div> <div class='w-100 f5 dark-gray current-episode-title-3' style='flex: 1; text-overflow: ellipsis; font-family: Inter; overflow: hidden; white-space: nowrap;'> </div> <img class="dim ph2 pv2 pointer play-pause-button-2" style="height: 1.5rem; width: 1.5rem;" src="/assets/play-dark-56667b8f98046775503abb0472cd646104248c49d9dd4d8ab6389d63b8faadca.svg" /> <img class="dim ph2 pv2 pointer skip-forward-3" style="height: 1.8rem; width: 1.8rem;" src="/assets/forward30-dark-8b3e55d318fbad3cdb2985e11b65e725b1613b4fb73bf81bc142d7411968667d.svg" /> </div> <div class='absolute top-0 bottom-0 left-0 right-0 o-40 bg-white' style='z-index: -1;'></div> <div class='maximize-button absolute left-0 bottom-0 top-0' style='width: calc(100% - 5.5rem);'></div> </div> </div> <noscript> <a href="">Click here if you are not automatically redirected</a> </noscript> </body> <script> var mobilePlayerIsShowing = false; let loadingIndicator = document.createElement("div"); loadingIndicator.classList = "lds-ellipsis"; for (let i = 0; i < 4; i++) { loadingIndicator.appendChild(document.createElement("div")); } let playDarkImagePath = "/assets/play-dark-56667b8f98046775503abb0472cd646104248c49d9dd4d8ab6389d63b8faadca.svg"; let playLightImagePath = "/assets/play-light-44e957ca417b16db805a9b7a569bf6a9baf0864fda92660c48999eadb06a21b7.svg"; let pauseDarkImagePath = "/assets/pause-dark-2b02da7a704af33108488e4b734d012a19b77f0bf542639284667225e353e59c.svg"; let pauseLightImagePath = "/assets/pause-light-5f6c22366e0556614d5ba30a0531b92b569fd9b8bd83146c384ff77c81c55855.svg"; let lightMode = true; if (!lightMode) { loadingIndicator.classList += " dark-mode"; } // MARKER - Description Text toggle let descriptionTextLimit = 150; let description = document.querySelector('.description'); let descriptionText = description.innerText; let button = document.querySelector('.text-button'); var textIsHidden = true; function hideDescription() { let truncatedText = descriptionText.substr(0, descriptionTextLimit) + '...'; description.innerText = truncatedText; } function toggleText() { if (textIsHidden) { button.innerHTML = 'Show Less'; description.innerText = descriptionText; } else { button.innerHTML = 'Show More'; hideDescription(); } textIsHidden = !textIsHidden; } if (descriptionText.length > descriptionTextLimit) { button.style.display = "inline"; button.addEventListener('click', toggleText); hideDescription(); } let player = document.getElementById('player'); let聽source = document.getElementById('source'); // MARKER - Audio controls var playPauseButton = document.querySelector('.play-pause-button'); var playPauseButton2 = document.querySelector('.play-pause-button-2'); var playPauseButton3 = document.querySelector('.play-pause-button-3'); var isPlaying = false; function togglePlayPause() { if (!currentEpisode) { return; } if (isPlaying) { player.pause(); playPauseButton.src = lightMode ? playDarkImagePath : playLightImagePath; playPauseButton2.src = playDarkImagePath; playPauseButton3.src = playDarkImagePath; } else { player.play(); playPauseButton.src = lightMode ? pauseDarkImagePath : pauseLightImagePath; playPauseButton2.src = pauseDarkImagePath; playPauseButton3.src = pauseDarkImagePath; } isPlaying = !isPlaying; renderEpisodeFeed(); } // MARKER - Audio time management let totalDuration = document.querySelector('.total-duration'); let currentTime = document.querySelector('.current-time'); let totalDuration2 = document.querySelector('.total-duration-2'); let currentTime2 = document.querySelector('.current-time-2'); let percentComplete = document.querySelector('.percent-complete'); let percentComplete2 = document.querySelector('.percent-complete-2'); let progressBar = document.querySelector('.progress-bar'); let progressBar2 = document.querySelector('.progress-bar-2'); let skipBack = document.querySelector('.skip-back'); let skipBack2 = document.querySelector('.skip-back-2'); let skipForward = document.querySelector('.skip-forward'); let skipForward2 = document.querySelector('.skip-forward-2'); let skipForward3 = document.querySelector('.skip-forward-3'); function secondsToHHMMSS(s) { var h = Math.floor(s / 3600); var m = Math.floor(s % 3600 / 60); var s = Math.floor(s % 3600 % 60); var hours = h > 0 ? `${h}:` : ""; var minutes = h > 0 && m > 9 ? `0${m}` : `${m}`; var seconds = s > 9 ? `${s}` : `0${s}`; return `${hours}${minutes}:${seconds}`; } function percentAudioComplete(curr) { return (curr / player.duration) * 100; } function onTimeUpdate(e) { curr = player.currentTime; currentTime.innerHTML = secondsToHHMMSS(curr); currentTime2.innerHTML = secondsToHHMMSS(curr); percentComplete.style.width = `${percentAudioComplete(curr)}%`; percentComplete2.style.width = `${percentAudioComplete(curr)}%`; } function seek(e) { var percent = e.offsetX / this.offsetWidth; var time = percent * player.duration; currentTime.innerHTML = secondsToHHMMSS(time); currentTime2.innerHTML = secondsToHHMMSS(time); percentComplete.style.width = `${percent * 100}%`; percentComplete2.style.width = `${percent * 100}%`; player.currentTime = time; } function handleSkipBack() { player.currentTime -= 15; } function handleSkipForward() { player.currentTime += 30; } // MARKER - Bottom player let mobilePlayer = document.querySelector('.mobile-player'); let minimizedContent = document.querySelector('.minimized-content'); let maximizedContent = document.querySelector('.maximized-content'); let maximizeButton = document.querySelector('.maximize-button'); let minimizeButton = document.querySelector('.minimize-button'); function showMobilePlayer() { mobilePlayerIsShowing = true; mobilePlayer.classList.add("maximized"); minimizedContent.classList.add("maximized"); maximizedContent.style.display = "block"; document.querySelector('body').style.overflow = "hidden"; renderEpisodeFeed(); loadingIndicator.classList.remove("dark-mode"); } function hideMobilePlayer() { mobilePlayerIsShowing = false; mobilePlayer.classList.remove("maximized"); minimizedContent.classList.remove("maximized"); maximizedContent.style.display = "none"; document.querySelector('body').style.overflow = "auto"; if (!lightMode) { loadingIndicator.classList += " dark-mode"; } } // Setting Episode var currentEpisode = null; if (JSON.stringify({"cid":"25d235da-04d9-432b-94d3-9bf92590518f","id":110413132,"title":"SEASON 2 - Asking for help","description":"By finding the courage to ask for the help I desperately needed I slowly started to understand that I wasn鈥檛 broken.聽聽I slowly started to understand that I was not alone.聽聽I slowly started to let go of holding onto the control that I thought was keeping me safe.聽聽I slowly started to understand that childhood trauma doesn鈥檛 simply disappear.聽聽Trauma morphs, transforms, and continues to inflict harm until we start to face the root of what harmed us.\n\n\nI鈥檓 excited to have you join me for Season Two where I鈥檒l share parts of my recovery journey after hitting bottom and finding the courage to start asking for help.聽聽Where I thought that I was alone, isolated, and detached from others, I started to understand and experience that I was surrounded by help.聽聽And much of the help that I鈥檝e received came from some of the most unexpected places and people.\n\n\nThroughout S02 I will also be introducing you to other individuals who will share their experiences of how their world has taken on new meaning, understanding, and purpose when they started to accept who they were created to be, love who they were created to be and had the courage to reach out, connect with others, and ask for the help they needed.\n\n\nWhen we start asking for the help we need for ourselves, we stand up for love and start to prioritize mental health, emotional health, and spiritual health in our own lives, and start to give permission for others to do the same.\n\n\nJames","url":"https://chtbl.com/track/G7DB99/https://downloads.pod.co/953cec87-e046-4dd6-91e0-fb5458326c84/1aa01d53-ea21-40a9-b984-a598ac4f24f4.mp3","published_at":"2021-08-18T14:20:12.000Z"}) !== JSON.stringify({})) { currentEpisode = {"cid":"25d235da-04d9-432b-94d3-9bf92590518f","id":110413132,"title":"SEASON 2 - Asking for help","description":"By finding the courage to ask for the help I desperately needed I slowly started to understand that I wasn鈥檛 broken.聽聽I slowly started to understand that I was not alone.聽聽I slowly started to let go of holding onto the control that I thought was keeping me safe.聽聽I slowly started to understand that childhood trauma doesn鈥檛 simply disappear.聽聽Trauma morphs, transforms, and continues to inflict harm until we start to face the root of what harmed us.\n\n\nI鈥檓 excited to have you join me for Season Two where I鈥檒l share parts of my recovery journey after hitting bottom and finding the courage to start asking for help.聽聽Where I thought that I was alone, isolated, and detached from others, I started to understand and experience that I was surrounded by help.聽聽And much of the help that I鈥檝e received came from some of the most unexpected places and people.\n\n\nThroughout S02 I will also be introducing you to other individuals who will share their experiences of how their world has taken on new meaning, understanding, and purpose when they started to accept who they were created to be, love who they were created to be and had the courage to reach out, connect with others, and ask for the help they needed.\n\n\nWhen we start asking for the help we need for ourselves, we stand up for love and start to prioritize mental health, emotional health, and spiritual health in our own lives, and start to give permission for others to do the same.\n\n\nJames","url":"https://chtbl.com/track/G7DB99/https://downloads.pod.co/953cec87-e046-4dd6-91e0-fb5458326c84/1aa01d53-ea21-40a9-b984-a598ac4f24f4.mp3","published_at":"2021-08-18T14:20:12.000Z"}; } let currentEpisodeTitleLabel = document.querySelector('.current-episode-title'); let currentEpisodeTitleLabel2 = document.querySelector('.current-episode-title-2'); let currentEpisodeTitleLabel3 = document.querySelector('.current-episode-title-3'); let currentEpisodeDescriptionLabel = document.querySelector('.current-episode-description'); let descriptionContainer = document.querySelector('.description-container'); function setEpisode(newEpisode) { if (newEpisode) { currentEpisodeTitleLabel.innerText = newEpisode.title; currentEpisodeTitleLabel2.innerText = newEpisode.title; currentEpisodeTitleLabel3.innerText = newEpisode.title; if (newEpisode.description) { descriptionContainer.style.display = "block"; currentEpisodeDescriptionLabel.innerText = newEpisode.description; } else { descriptionContainer.style.display = "none"; } player.src = encodeURI(newEpisode.url); currentEpisode = newEpisode; } } // MARK - Episode feed var loadMoreButton = document.createElement("div"); loadMoreButton.classList = `br2 pa2 f5 ba tc pointer dim mw4 mt4 center ${lightMode ? 'b--dark-gray' : 'bg--white'}`; loadMoreButton.addEventListener('click', getEpisodes); var mobileLoadMoreButton = document.createElement("div"); mobileLoadMoreButton.classList = "br2 pa2 f5 ba tc pointer dim mw4 mt4 center b--dark-gray" mobileLoadMoreButton.addEventListener('click', getEpisodes); var episodeFeedContainer = document.querySelector('.episode-feed-container.web'); var mobileEpisodeFeedContainer = document.querySelector('.episode-feed-container.mobile'); var page = 1; var episodes = []; var requestInProgress = false; function handleEpisodeFeedShowMoreClick(i) { episodes[i].expanded = !episodes[i].expanded; renderEpisodeFeed(); } function handleEpisodeFeedPlayClick(i) { if (!!currentEpisode && currentEpisode.url === episodes[i].url) { togglePlayPause(); } else { currentTime.innerHTML = secondsToHHMMSS(0); currentTime2.innerHTML = secondsToHHMMSS(0); percentComplete.style.width = `${percentAudioComplete(0)}%`; percentComplete2.style.width = `${percentAudioComplete(0)}%`; setEpisode(episodes[i]); if (!isPlaying) { togglePlayPause(); } else { player.play(); renderEpisodeFeed(); } } } function generateEpisodeDiv(episode, index, isMobile) { if (!episode.url || !episode.title) { return null; } var episodeDiv = document.createElement("div"); episodeDiv.classList = "flex flex-row pv4 bb b--light-gray items-start"; let pauseImage = isMobile || lightMode ? pauseDarkImagePath : pauseLightImagePath; let playImage = isMobile || lightMode ? playDarkImagePath : playLightImagePath; var imageTag = document.createElement("img"); imageTag.src = !!currentEpisode && episode.url === currentEpisode.url && isPlaying ? pauseImage : playImage; imageTag.style.width = "1.5rem"; imageTag.classList = "mr3 pointer dim"; imageTag.addEventListener('click', function() { handleEpisodeFeedPlayClick(index); }); var titleDiv = document.createElement("div"); titleDiv.classList = "f5 b mb1 tl"; titleDiv.innerText = episode.title; var textContainerDiv = document.createElement("div"); var descriptionDiv = document.createElement("div"); var showMoreSpan = document.createElement("div"); if (episode.description) { descriptionDiv.classList = "f5 lh-copy tl"; descriptionDiv.innerText = !episode.expanded && episode.description.length > descriptionTextLimit ? episode.description.substr(0, descriptionTextLimit) + '...' : episode.description; showMoreSpan.classList = `${episode.description.length > descriptionTextLimit ? '' : 'dn'} tl no-underline text-button o-70 pointer mt1`; showMoreSpan.innerHTML = `Show ${episode.expanded ? 'less' : 'more'}`; showMoreSpan.addEventListener("click", function() { handleEpisodeFeedShowMoreClick(index); }); } textContainerDiv.appendChild(titleDiv); textContainerDiv.appendChild(descriptionDiv); textContainerDiv.appendChild(showMoreSpan); episodeDiv.appendChild(imageTag); episodeDiv.appendChild(textContainerDiv); return episodeDiv; } function getEpisodes() { if (requestInProgress) { return; } requestInProgress = true; loadMoreButton.innerHTML = ""; loadMoreButton.appendChild(loadingIndicator); mobileLoadMoreButton.innerHTML = loadMoreButton.innerHTML; let host = "https://chartable.com"; axios(`${host}/api/episodes/feed?podcast_id=this-little-light-of-mine-1502309172&page=${page}&token=ab5d92470d76c4d03776`) .then(res => { res.data.forEach(episode => { episode.expanded = false; episodes.push(episode); }); loadMoreButton.innerHTML = "Load more"; mobileLoadMoreButton.innerHTML = loadMoreButton.innerHTML page += 1; renderEpisodeFeed(); }) .catch(err => { loadMoreButton.innerHTML = "Retry" mobileLoadMoreButton.innerHTML = loadMoreButton.innerHTML }) .finally(() => requestInProgress = false); } function renderEpisodeFeed() { episodeFeedContainer.innerHTML = ''; mobileEpisodeFeedContainer.innerHTML = ''; for (let i = 0; i < episodes.length; i++) { let episodeDiv = generateEpisodeDiv(episodes[i], i, false); if (episodeDiv) { episodeFeedContainer.appendChild(episodeDiv); } if (mobilePlayerIsShowing && episodeDiv) { mobileEpisodeFeedContainer.appendChild(generateEpisodeDiv(episodes[i], i, true)); } } loadMoreButton.innerHTML = "Load more"; mobileLoadMoreButton.innerHTML = loadMoreButton.innerHTML; episodeFeedContainer.appendChild(loadMoreButton); mobileEpisodeFeedContainer.appendChild(mobileLoadMoreButton) } if (true) { minimizeButton.addEventListener("click", hideMobilePlayer); maximizeButton.addEventListener("click", showMobilePlayer); player.addEventListener('timeupdate', onTimeUpdate); progressBar.addEventListener("click", seek); progressBar2.addEventListener("click", seek); skipBack.addEventListener("click", handleSkipBack); skipBack2.addEventListener("click", handleSkipBack); skipForward.addEventListener("click", handleSkipForward); skipForward2.addEventListener("click", handleSkipForward); skipForward3.addEventListener("click", handleSkipForward); playPauseButton.addEventListener('click', togglePlayPause); playPauseButton2.addEventListener('click', togglePlayPause); playPauseButton3.addEventListener('click', togglePlayPause); player.onloadedmetadata = function() { let time = player.duration; totalDuration.innerHTML = secondsToHHMMSS(time); totalDuration2.innerHTML = secondsToHHMMSS(time); } if (currentEpisode) { setEpisode(currentEpisode); } episodeFeedContainer.classList += lightMode ? " dark-gray" : " white"; renderEpisodeFeed(); } getEpisodes(); </script> </html>

Pages: 1 2 3 4 5 6 7 8 9 10