@@ -180,14 +180,33 @@ func ClearNowPlaying(userId int) {
180180}
181181
182182func GetUserSpotifyCredentials (userId int ) (clientId , clientSecret , accessToken , refreshToken string , expiresAt time.Time , err error ) {
183+ var clientIdPg , clientSecretPg , accessTokenPg , refreshTokenPg pgtype.Text
184+ var expiresAtPg pgtype.Timestamptz
183185 err = db .Pool .QueryRow (context .Background (),
184186 `SELECT spotify_client_id, spotify_client_secret, spotify_access_token,
185187 spotify_refresh_token, spotify_token_expires
186188 FROM users WHERE pk = $1` ,
187- userId ).Scan (& clientId , & clientSecret , & accessToken , & refreshToken , & expiresAt )
189+ userId ).Scan (& clientIdPg , & clientSecretPg , & accessTokenPg , & refreshTokenPg , & expiresAtPg )
188190 if err != nil {
189191 return "" , "" , "" , "" , time.Time {}, err
190192 }
193+
194+ if clientIdPg .Status == pgtype .Present {
195+ clientId = clientIdPg .String
196+ }
197+ if clientSecretPg .Status == pgtype .Present {
198+ clientSecret = clientSecretPg .String
199+ }
200+ if accessTokenPg .Status == pgtype .Present {
201+ accessToken = accessTokenPg .String
202+ }
203+ if refreshTokenPg .Status == pgtype .Present {
204+ refreshToken = refreshTokenPg .String
205+ }
206+ if expiresAtPg .Status == pgtype .Present {
207+ expiresAt = expiresAtPg .Time
208+ }
209+
191210 return clientId , clientSecret , accessToken , refreshToken , expiresAt , nil
192211}
193212
0 commit comments