mirror of
https://git.sr.ht/~phw/scotty
synced 2025-04-30 21:57:06 +02:00
Reduced redundancy in model conversions and consistent naming
This commit is contained in:
parent
e29d8e2a63
commit
cac88f316b
10 changed files with 107 additions and 107 deletions
|
@ -66,7 +66,7 @@ out:
|
|||
}
|
||||
|
||||
for _, fwListen := range result.Results {
|
||||
listen := fwListen.ToListen()
|
||||
listen := fwListen.AsListen()
|
||||
if listen.ListenedAt.Unix() > oldestTimestamp.Unix() {
|
||||
p.Elapsed += 1
|
||||
listens = append(listens, listen)
|
||||
|
@ -118,7 +118,7 @@ out:
|
|||
}
|
||||
|
||||
for _, favorite := range result.Results {
|
||||
love := favorite.ToLove()
|
||||
love := favorite.AsLove()
|
||||
if love.Created.Unix() > oldestTimestamp.Unix() {
|
||||
p.Elapsed += 1
|
||||
loves = append(loves, love)
|
||||
|
@ -142,24 +142,10 @@ out:
|
|||
results <- models.LovesResult{Loves: loves}
|
||||
}
|
||||
|
||||
func (l Listening) ToListen() models.Listen {
|
||||
track := l.Track
|
||||
func (l Listening) AsListen() models.Listen {
|
||||
listen := models.Listen{
|
||||
UserName: l.User.UserName,
|
||||
Track: models.Track{
|
||||
TrackName: track.Title,
|
||||
ReleaseName: track.Album.Title,
|
||||
ArtistNames: []string{track.Artist.Name},
|
||||
TrackNumber: track.Position,
|
||||
DiscNumber: track.DiscNumber,
|
||||
RecordingMbid: models.MBID(track.RecordingMbid),
|
||||
ReleaseMbid: models.MBID(track.Album.ReleaseMbid),
|
||||
ArtistMbids: []models.MBID{models.MBID(track.Artist.ArtistMbid)},
|
||||
Tags: track.Tags,
|
||||
AdditionalInfo: map[string]any{
|
||||
"media_player": FunkwhaleClientName,
|
||||
},
|
||||
},
|
||||
Track: l.Track.AsTrack(),
|
||||
}
|
||||
|
||||
listenedAt, err := time.Parse(time.RFC3339, l.CreationDate)
|
||||
|
@ -167,33 +153,15 @@ func (l Listening) ToListen() models.Listen {
|
|||
listen.ListenedAt = listenedAt
|
||||
}
|
||||
|
||||
if len(track.Uploads) > 0 {
|
||||
listen.Track.Duration = time.Duration(track.Uploads[0].Duration * int(time.Second))
|
||||
}
|
||||
|
||||
return listen
|
||||
}
|
||||
|
||||
func (f FavoriteTrack) ToLove() models.Love {
|
||||
track := f.Track
|
||||
recordingMbid := models.MBID(track.RecordingMbid)
|
||||
func (f FavoriteTrack) AsLove() models.Love {
|
||||
track := f.Track.AsTrack()
|
||||
love := models.Love{
|
||||
UserName: f.User.UserName,
|
||||
RecordingMbid: recordingMbid,
|
||||
Track: models.Track{
|
||||
TrackName: track.Title,
|
||||
ReleaseName: track.Album.Title,
|
||||
ArtistNames: []string{track.Artist.Name},
|
||||
TrackNumber: track.Position,
|
||||
DiscNumber: track.DiscNumber,
|
||||
RecordingMbid: recordingMbid,
|
||||
ReleaseMbid: models.MBID(track.Album.ReleaseMbid),
|
||||
ArtistMbids: []models.MBID{models.MBID(track.Artist.ArtistMbid)},
|
||||
Tags: track.Tags,
|
||||
AdditionalInfo: map[string]any{
|
||||
"media_player": FunkwhaleClientName,
|
||||
},
|
||||
},
|
||||
RecordingMbid: track.RecordingMbid,
|
||||
Track: track,
|
||||
}
|
||||
|
||||
created, err := time.Parse(time.RFC3339, f.CreationDate)
|
||||
|
@ -201,9 +169,29 @@ func (f FavoriteTrack) ToLove() models.Love {
|
|||
love.Created = created
|
||||
}
|
||||
|
||||
if len(track.Uploads) > 0 {
|
||||
love.Track.Duration = time.Duration(track.Uploads[0].Duration * int(time.Second))
|
||||
}
|
||||
|
||||
return love
|
||||
}
|
||||
|
||||
func (t Track) AsTrack() models.Track {
|
||||
recordingMbid := models.MBID(t.RecordingMbid)
|
||||
track := models.Track{
|
||||
TrackName: t.Title,
|
||||
ReleaseName: t.Album.Title,
|
||||
ArtistNames: []string{t.Artist.Name},
|
||||
TrackNumber: t.Position,
|
||||
DiscNumber: t.DiscNumber,
|
||||
RecordingMbid: recordingMbid,
|
||||
ReleaseMbid: models.MBID(t.Album.ReleaseMbid),
|
||||
ArtistMbids: []models.MBID{models.MBID(t.Artist.ArtistMbid)},
|
||||
Tags: t.Tags,
|
||||
AdditionalInfo: map[string]any{
|
||||
"media_player": FunkwhaleClientName,
|
||||
},
|
||||
}
|
||||
|
||||
if len(t.Uploads) > 0 {
|
||||
track.Duration = time.Duration(t.Uploads[0].Duration * int(time.Second))
|
||||
}
|
||||
|
||||
return track
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue