mirror of
https://github.com/Theodor-Springmann-Stiftung/musenalm.git
synced 2025-10-30 01:35:32 +00:00
Allerhand Kleinigkeiten; Einzelansichten Reihen u Personen; Bandansicht
This commit is contained in:
43
dbmodels/sorting.go
Normal file
43
dbmodels/sorting.go
Normal file
@@ -0,0 +1,43 @@
|
||||
package dbmodels
|
||||
|
||||
import (
|
||||
"slices"
|
||||
|
||||
"golang.org/x/text/collate"
|
||||
"golang.org/x/text/language"
|
||||
)
|
||||
|
||||
func Sort_Series_Title(series []*Series) {
|
||||
collator := collate.New(language.German)
|
||||
slices.SortFunc(series, func(i, j *Series) int {
|
||||
return collator.CompareString(i.Title(), j.Title())
|
||||
})
|
||||
}
|
||||
|
||||
func Sort_Entries_Title_Year(entries []*Entry) {
|
||||
collator := collate.New(language.German)
|
||||
slices.SortFunc(entries, func(i, j *Entry) int {
|
||||
if i.PreferredTitle() == j.PreferredTitle() {
|
||||
return i.Year() - j.Year()
|
||||
}
|
||||
return collator.CompareString(i.PreferredTitle(), j.PreferredTitle())
|
||||
})
|
||||
}
|
||||
|
||||
func Sort_Entries_Year_Title(entries []*Entry) {
|
||||
collator := collate.New(language.German)
|
||||
slices.SortFunc(entries, func(i, j *Entry) int {
|
||||
if i.Year() == j.Year() {
|
||||
return collator.CompareString(i.PreferredTitle(), j.PreferredTitle())
|
||||
}
|
||||
return i.Year() - j.Year()
|
||||
})
|
||||
}
|
||||
|
||||
func Sort_REntriesSeries_Year(entries []*REntriesSeries, entriesMap map[string]*Entry) {
|
||||
slices.SortFunc(entries, func(i, j *REntriesSeries) int {
|
||||
ientry := entriesMap[i.Entry()]
|
||||
jentry := entriesMap[j.Entry()]
|
||||
return ientry.Year() - jentry.Year()
|
||||
})
|
||||
}
|
||||
Reference in New Issue
Block a user