MORE REFACTORING!! + some improvements
Signed-off-by: ari melody <ari@arimelody.me>
This commit is contained in:
parent
151b2d8fd9
commit
cba791deba
17 changed files with 376 additions and 223 deletions
|
@ -1,100 +0,0 @@
|
|||
package music
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/jmoiron/sqlx"
|
||||
)
|
||||
|
||||
type Track struct {
|
||||
Number int `json:"number"`
|
||||
Title string `json:"title"`
|
||||
Description string `json:"description"`
|
||||
Lyrics string `json:"lyrics"`
|
||||
PreviewURL string `json:"previewURL"`
|
||||
}
|
||||
|
||||
// GETTERS
|
||||
|
||||
func (track Track) GetNumber() int {
|
||||
return track.Number
|
||||
}
|
||||
|
||||
func (track Track) GetTitle() string {
|
||||
return track.Title
|
||||
}
|
||||
|
||||
func (track Track) GetDescription() string {
|
||||
return track.Description
|
||||
}
|
||||
|
||||
func (track Track) GetLyrics() string {
|
||||
return track.Lyrics
|
||||
}
|
||||
|
||||
func (track Track) GetPreviewURL() string {
|
||||
return track.PreviewURL
|
||||
}
|
||||
|
||||
// SETTERS
|
||||
|
||||
func (track Track) SetNumber(number int) error {
|
||||
// TODO: update DB
|
||||
track.Number = number
|
||||
return nil
|
||||
}
|
||||
|
||||
func (track Track) SetTitle(title string) error {
|
||||
// TODO: update DB
|
||||
track.Title = title
|
||||
return nil
|
||||
}
|
||||
|
||||
func (track Track) SetDescription(description string) error {
|
||||
// TODO: update DB
|
||||
track.Description = description
|
||||
return nil
|
||||
}
|
||||
|
||||
func (track Track) SetLyrics(lyrics string) error {
|
||||
// TODO: update DB
|
||||
track.Lyrics = lyrics
|
||||
return nil
|
||||
}
|
||||
|
||||
func (track Track) SetPreviewURL(previewURL string) error {
|
||||
// TODO: update DB
|
||||
track.PreviewURL = previewURL
|
||||
return nil
|
||||
}
|
||||
|
||||
// DATABASE
|
||||
|
||||
func PullReleaseTracks(db *sqlx.DB, releaseID string) ([]Track, error) {
|
||||
var tracks = []Track{}
|
||||
|
||||
track_rows, err := db.Query("SELECT number, title, description, lyrics, preview_url FROM musictracks WHERE release=$1", releaseID)
|
||||
if err != nil {
|
||||
return []Track{}, err
|
||||
}
|
||||
|
||||
for track_rows.Next() {
|
||||
var track = Track{}
|
||||
|
||||
err = track_rows.Scan(
|
||||
&track.Number,
|
||||
&track.Title,
|
||||
&track.Description,
|
||||
&track.Lyrics,
|
||||
&track.PreviewURL,
|
||||
)
|
||||
if err != nil {
|
||||
fmt.Printf("Error while pulling track for release %s: %s\n", releaseID, err)
|
||||
continue
|
||||
}
|
||||
|
||||
tracks = append(tracks, track)
|
||||
}
|
||||
|
||||
return tracks, nil
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue