Disable external links when `EnableExternalServices` is false. Fix #2022

This commit is contained in:
Deluan 2023-01-25 10:28:03 -05:00
parent e0fc997adb
commit 1950c07b1d
5 changed files with 19 additions and 2 deletions

View File

@ -62,6 +62,7 @@ func serveIndex(ds model.DataStore, fs fs.FS, shareInfo *model.Share) http.Handl
"lastFMApiKey": conf.Server.LastFM.ApiKey,
"devShowArtistPage": conf.Server.DevShowArtistPage,
"listenBrainzEnabled": conf.Server.ListenBrainz.Enabled,
"enableExternalServices": conf.Server.EnableExternalServices,
"enableReplayGain": conf.Server.EnableReplayGain,
"defaultDownsamplingFormat": conf.Server.DefaultDownsamplingFormat,
}

View File

@ -310,6 +310,17 @@ var _ = Describe("serveIndex", func() {
Expect(config).To(HaveKeyWithValue("enableReplayGain", true))
})
It("sets the enableExternalServices", func() {
conf.Server.EnableExternalServices = true
r := httptest.NewRequest("GET", "/index.html", nil)
w := httptest.NewRecorder()
serveIndex(ds, fs, nil)(w, r)
config := extractAppConfig(w.Body.String())
Expect(config).To(HaveKeyWithValue("enableExternalServices", true))
})
Describe("loginBackgroundURL", func() {
Context("empty BaseURL", func() {
BeforeEach(func() {

View File

@ -304,7 +304,9 @@ const AlbumDetails = (props) => {
)}
{!isXsmall && (
<Typography component={'div'} className={classes.recordMeta}>
<AlbumExternalLinks className={classes.externalLinks} />
{config.enableExternalServices && (
<AlbumExternalLinks className={classes.externalLinks} />
)}
</Typography>
)}
{isDesktop && (

View File

@ -135,7 +135,9 @@ const DesktopArtistDetails = ({ artistInfo, record, biography }) => {
</Collapse>
</CardContent>
<Typography component={'div'} className={classes.button}>
<ArtistExternalLinks artistInfo={artistInfo} record={record} />
{config.enableExternalServices && (
<ArtistExternalLinks artistInfo={artistInfo} record={record} />
)}
</Typography>
</div>
{isLightboxOpen && (

View File

@ -25,6 +25,7 @@ const defaultConfig = {
lastFMEnabled: true,
lastFMApiKey: '9b94a5515ea66b2da3ec03c12300327e',
listenBrainzEnabled: true,
enableExternalServices: true,
enableCoverAnimation: true,
devShowArtistPage: true,
enableReplayGain: true,