const radioTitleSplitChar = ' - '; function webRadioCheckArtistAlbum(){ let title; let artist; if (volumioData.curData.uri != volumioData.newData.uri){ // station changed... volumioData.curData.uri = volumioData.newData.uri; volumioData.curData.artist = ''; volumioDisplayData.playerPage.artist.value = ''; volumioDisplayData.playerPage.artist.updated = true; volumioData.curData.title = ''; volumioDisplayData.playerPage.title.value = ''; volumioDisplayData.playerPage.title.updated = true; volumioData.curData.album = ''; volumioDisplayData.playerPage.album.value = ''; volumioDisplayData.playerPage.album.updated = true; return; } if (volumioData.newData.title.includes('-')) { let title_artist = extractTitleAndArtist(volumioData.newData.title); if (title_artist.length === 2) { if (title_artist[0] != 'none' && title_artist[1] != 'none'){ if (volumioData.curData.title != title_artist[0].trim()){ volumioData.curData.title = title_artist[0].trim(); volumioDisplayData.playerPage.title.value = volumioData.curData.title; volumioDisplayData.playerPage.title.updated = true; } if (volumioData.curData.artist != title_artist[1].trim()){ volumioData.curData.artist = title_artist[1].trim(); volumioDisplayData.playerPage.artist.value = volumioData.curData.artist; volumioDisplayData.playerPage.artist.updated = true; } } } } else { if (volumioData.curData.title != volumioData.newData.title){ volumioData.curData.title = volumioData.newData.title; volumioDisplayData.playerPage.title.value = volumioData.curData.title; volumioDisplayData.playerPage.title.updated = true; } if (volumioData.curData.artist != volumioData.newData.artist){ volumioData.curData.artist = volumioData.newData.artist; volumioDisplayData.playerPage.artist.value = volumioData.curData.artist; volumioDisplayData.playerPage.artist.updated = true; } } if (volumioData.newData.album.includes('Radio') || volumioData.newData.artist.includes('Radio') || volumioData.newData.album.includes('FM') || volumioData.newData.artist.includes('FM')){ if (volumioData.newData.album.includes('Radio') || volumioData.newData.album.includes('FM')){ if (volumioData.curData.album != volumioData.newData.album){ volumioData.curData.album = volumioData.newData.album; volumioDisplayData.playerPage.album.value = volumioData.newData.album; volumioDisplayData.playerPage.album.updated = true; } }else if (volumioData.newData.artist.includes('Radio') || volumioData.newData.artist.includes('FM')){ if (volumioData.curData.artist != volumioData.newData.artist){ volumioData.curData.album = volumioData.newData.artist; volumioDisplayData.playerPage.album.value = volumioData.newData.artist; volumioDisplayData.playerPage.album.updated = true; } } }else if (volumioData.curData.artist.length != 0){ if (volumioData.curData.artist != volumioData.newData.artist){ volumioData.curData.album = volumioData.newData.artist; volumioDisplayData.playerPage.album.value = volumioData.newData.artist; volumioDisplayData.playerPage.album.updated = true; } } } function extractTitleAndArtist(title){ let titleArtist; if (title.includes(radioTitleSplitChar)){ splitTitle = title.split(radioTitleSplitChar); if (splitTitle.length === 2){ titleArtist = [splitTitle[1].trim(), splitTitle[0].trim()]; return titleArtist; }else if (splitTitle.length === 3){ titleArtist = [splitTitle[2].trim(), splitTitle[1].trim()]; return titleArtist; }else{ return [' ', title] } } else { return ['none', 'none'] } }