mirror of
https://github.com/navidrome/navidrome.git
synced 2026-05-03 06:51:16 +00:00
Compare commits
5 Commits
369302de1f
...
927d7e15db
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
927d7e15db | ||
|
|
f939ad84f3 | ||
|
|
c3e8c67116 | ||
|
|
d57a8e6d84 | ||
|
|
73ec89e1af |
@ -23,7 +23,7 @@ func legacyTrackID(mf model.MediaFile, prependLibId bool) string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func legacyAlbumID(mf model.MediaFile, md Metadata, prependLibId bool) string {
|
func legacyAlbumID(mf model.MediaFile, md Metadata, prependLibId bool) string {
|
||||||
releaseDate := legacyReleaseDate(md)
|
_, _, releaseDate := md.mapDates()
|
||||||
albumPath := strings.ToLower(fmt.Sprintf("%s\\%s", legacyMapAlbumArtistName(md), legacyMapAlbumName(md)))
|
albumPath := strings.ToLower(fmt.Sprintf("%s\\%s", legacyMapAlbumArtistName(md), legacyMapAlbumName(md)))
|
||||||
if !conf.Server.Scanner.GroupAlbumReleases {
|
if !conf.Server.Scanner.GroupAlbumReleases {
|
||||||
if len(releaseDate) != 0 {
|
if len(releaseDate) != 0 {
|
||||||
@ -55,9 +55,3 @@ func legacyMapAlbumName(md Metadata) string {
|
|||||||
consts.UnknownAlbum,
|
consts.UnknownAlbum,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Keep the TaggedLikePicard logic for backwards compatibility
|
|
||||||
func legacyReleaseDate(md Metadata) string {
|
|
||||||
_, _, releaseDate := md.mapDates()
|
|
||||||
return string(releaseDate)
|
|
||||||
}
|
|
||||||
|
|||||||
@ -1,30 +0,0 @@
|
|||||||
package metadata
|
|
||||||
|
|
||||||
import (
|
|
||||||
. "github.com/onsi/ginkgo/v2"
|
|
||||||
. "github.com/onsi/gomega"
|
|
||||||
)
|
|
||||||
|
|
||||||
var _ = Describe("legacyReleaseDate", func() {
|
|
||||||
|
|
||||||
DescribeTable("legacyReleaseDate",
|
|
||||||
func(recordingDate, originalDate, releaseDate, expected string) {
|
|
||||||
md := New("", Info{
|
|
||||||
Tags: map[string][]string{
|
|
||||||
"DATE": {recordingDate},
|
|
||||||
"ORIGINALDATE": {originalDate},
|
|
||||||
"RELEASEDATE": {releaseDate},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
result := legacyReleaseDate(md)
|
|
||||||
Expect(result).To(Equal(expected))
|
|
||||||
},
|
|
||||||
Entry("regular mapping", "2020-05-15", "2019-02-10", "2021-01-01", "2021-01-01"),
|
|
||||||
Entry("legacy mapping", "2020-05-15", "2019-02-10", "", "2020-05-15"),
|
|
||||||
Entry("legacy mapping, originalYear < year", "2018-05-15", "2019-02-10", "2021-01-01", "2021-01-01"),
|
|
||||||
Entry("legacy mapping, originalYear empty", "2020-05-15", "", "2021-01-01", "2021-01-01"),
|
|
||||||
Entry("legacy mapping, releaseYear", "2020-05-15", "2019-02-10", "2021-01-01", "2021-01-01"),
|
|
||||||
Entry("legacy mapping, same dates", "2020-05-15", "2020-05-15", "", "2020-05-15"),
|
|
||||||
)
|
|
||||||
})
|
|
||||||
@ -75,6 +75,23 @@ var _ = Describe("ToMediaFile", func() {
|
|||||||
Expect(mf.OriginalYear).To(Equal(1966))
|
Expect(mf.OriginalYear).To(Equal(1966))
|
||||||
Expect(mf.ReleaseYear).To(Equal(2014))
|
Expect(mf.ReleaseYear).To(Equal(2014))
|
||||||
})
|
})
|
||||||
|
DescribeTable("legacyReleaseDate (TaggedLikePicard old behavior)",
|
||||||
|
func(recordingDate, originalDate, releaseDate, expected string) {
|
||||||
|
mf := toMediaFile(model.RawTags{
|
||||||
|
"DATE": {recordingDate},
|
||||||
|
"ORIGINALDATE": {originalDate},
|
||||||
|
"RELEASEDATE": {releaseDate},
|
||||||
|
})
|
||||||
|
|
||||||
|
Expect(mf.ReleaseDate).To(Equal(expected))
|
||||||
|
},
|
||||||
|
Entry("regular mapping", "2020-05-15", "2019-02-10", "2021-01-01", "2021-01-01"),
|
||||||
|
Entry("legacy mapping", "2020-05-15", "2019-02-10", "", "2020-05-15"),
|
||||||
|
Entry("legacy mapping, originalYear < year", "2018-05-15", "2019-02-10", "2021-01-01", "2021-01-01"),
|
||||||
|
Entry("legacy mapping, originalYear empty", "2020-05-15", "", "2021-01-01", "2021-01-01"),
|
||||||
|
Entry("legacy mapping, releaseYear", "2020-05-15", "2019-02-10", "2021-01-01", "2021-01-01"),
|
||||||
|
Entry("legacy mapping, same dates", "2020-05-15", "2020-05-15", "", "2020-05-15"),
|
||||||
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
Describe("Lyrics", func() {
|
Describe("Lyrics", func() {
|
||||||
|
|||||||
@ -169,7 +169,7 @@ const LibraryEdit = (props) => {
|
|||||||
resource={'library'}
|
resource={'library'}
|
||||||
source={'totalSize'}
|
source={'totalSize'}
|
||||||
label={translate('resources.library.fields.totalSize')}
|
label={translate('resources.library.fields.totalSize')}
|
||||||
format={formatBytes}
|
format={(v) => formatBytes(v, 2)}
|
||||||
fullWidth
|
fullWidth
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
/>
|
/>
|
||||||
|
|||||||
@ -9,7 +9,7 @@ import {
|
|||||||
BooleanField,
|
BooleanField,
|
||||||
} from 'react-admin'
|
} from 'react-admin'
|
||||||
import { useMediaQuery } from '@material-ui/core'
|
import { useMediaQuery } from '@material-ui/core'
|
||||||
import { List, DateField, useResourceRefresh } from '../common'
|
import { List, DateField, useResourceRefresh, SizeField } from '../common'
|
||||||
|
|
||||||
const LibraryFilter = (props) => (
|
const LibraryFilter = (props) => (
|
||||||
<Filter {...props} variant={'outlined'}>
|
<Filter {...props} variant={'outlined'}>
|
||||||
@ -42,6 +42,7 @@ const LibraryList = (props) => {
|
|||||||
<NumberField source="totalSongs" label="Songs" />
|
<NumberField source="totalSongs" label="Songs" />
|
||||||
<NumberField source="totalAlbums" label="Albums" />
|
<NumberField source="totalAlbums" label="Albums" />
|
||||||
<NumberField source="totalMissingFiles" label="Missing Files" />
|
<NumberField source="totalMissingFiles" label="Missing Files" />
|
||||||
|
<SizeField source="totalSize" />
|
||||||
<DateField
|
<DateField
|
||||||
source="lastScanAt"
|
source="lastScanAt"
|
||||||
label="Last Scan"
|
label="Last Scan"
|
||||||
|
|||||||
@ -16,6 +16,11 @@ export default {
|
|||||||
color: 'white',
|
color: 'white',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
MuiButton: {
|
||||||
|
textPrimary: {
|
||||||
|
color: '#fff',
|
||||||
|
},
|
||||||
|
},
|
||||||
NDLogin: {
|
NDLogin: {
|
||||||
systemNameLink: {
|
systemNameLink: {
|
||||||
color: '#0085ff',
|
color: '#0085ff',
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user