Documentation
¶
Index ¶
- func UpdateUserCount()
- type ArtistsStruct
- type CompareStruct
- type FriendsStruct
- type GenresStruct
- type Playlist
- type PlaylistsStruct
- type RecentTracks
- type RecentTracksStatisticsStruct
- type RecentTracksStatisticsStructTrack
- type RecentTracksTimerStruct
- type TopArtist
- type TopStruct
- type TopTrack
- type TracksStruct
- type User
- func (u *User) AddFriend(target *User)
- func (u *User) Client() *spotify.Client
- func (u *User) Compare(target *User) CompareStruct
- func (u *User) GetFriends() []*User
- func (u *User) GetPlaylistTracks(ID string, cl spotify.Client) []*tracks.Track
- func (u *User) GetRecentTrackSince(t time.Time) []RecentTracks
- func (u *User) GetRecentTracks() ([]*tracks.Track, error)
- func (u *User) RecentTracksStatistics(t time.Time) RecentTracksStatisticsStruct
- func (u *User) RefreshToken() error
- func (u *User) RefreshTop() error
- func (u *User) RefreshUser() error
- func (u *User) RemoveFriend(target *User)
- func (u *User) Save() error
- func (u *User) StartRecentTracksUpdater()
- func (u *User) StopRecentTracksUpdater()
- func (u *User) String() string
- func (u *User) UpdateRecentTracks()
- type UserMutex
- type UserSettings
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ArtistsStruct ¶
type ArtistsStruct []TopArtist
func (*ArtistsStruct) Scan ¶
func (sla *ArtistsStruct) Scan(value interface{}) error
type CompareStruct ¶
type FriendsStruct ¶
type FriendsStruct []string
func (*FriendsStruct) Scan ¶
func (sla *FriendsStruct) Scan(value interface{}) error
type GenresStruct ¶
type GenresStruct []string
func (*GenresStruct) Scan ¶
func (sla *GenresStruct) Scan(value interface{}) error
type PlaylistsStruct ¶
type PlaylistsStruct []Playlist
func (*PlaylistsStruct) Scan ¶
func (sla *PlaylistsStruct) Scan(value interface{}) error
type RecentTracks ¶
type RecentTracksTimerStruct ¶
type RecentTracksTimerStruct struct { UserID string Lock *chan struct{} }
type TopStruct ¶
type TopStruct struct { Genres GenresStruct Updated int64 Artists ArtistsStruct Tracks TracksStruct }
type TracksStruct ¶
type TracksStruct []TopTrack
func (*TracksStruct) Scan ¶
func (sla *TracksStruct) Scan(value interface{}) error
type User ¶
type User struct { ID uint `gorm:"primarykey" json:"-"` CreatedAt time.Time `json:"-"` DeletedAt gorm.DeletedAt `gorm:"index" json:"-"` UserID string `gorm:"unique"` DisplayName string Token *oauth2.Token `gorm:"embedded;embeddedPrefix:token_" json:"-"` Image string Playlists PlaylistsStruct LastUpdated time.Time `json:"-"` Settings UserSettings `gorm:"embedded;embeddedPrefix:settings_"` Top TopStruct `gorm:"embedded;embeddedPrefix:top_"` CompareCode string `gorm:"unique"` Friends FriendsStruct // contains filtered or unexported fields }
User is the main user struct
func GetUserFromCompareCode ¶
GetUser gets the user from the database by Compare Code
func (*User) Compare ¶
func (u *User) Compare(target *User) CompareStruct
Compares two users and returns the result
func (*User) GetPlaylistTracks ¶
GetPlaylistTracks returns a list of tracks for a given playlist
func (*User) GetRecentTrackSince ¶
func (u *User) GetRecentTrackSince(t time.Time) []RecentTracks
func (*User) RecentTracksStatistics ¶
func (u *User) RecentTracksStatistics(t time.Time) RecentTracksStatisticsStruct
func (*User) RefreshToken ¶
RefreshToken refreshes the user's token
func (*User) RefreshUser ¶
RefreshUser refreshes the user's information
func (*User) RemoveFriend ¶
RemoveFriend removes a friend from a user's friend list and back
func (*User) StartRecentTracksUpdater ¶
func (u *User) StartRecentTracksUpdater()
func (*User) StopRecentTracksUpdater ¶
func (u *User) StopRecentTracksUpdater()
func (*User) UpdateRecentTracks ¶
func (u *User) UpdateRecentTracks()
UpdateRecentTracks updates the recent tracks
type UserSettings ¶
type UserSettings struct {
RecentTracks bool `gorm:"default:false"`
}
Click to show internal directories.
Click to hide internal directories.