Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
e38023d790 | |||
939ae74e95 | |||
95406be062 | |||
918ed2e667 | |||
e0b0d6b98c | |||
74a8c7dbe8 | |||
da2a32ecfc | |||
ef8c8fb867 |
45
HISTORY.md
45
HISTORY.md
@ -5,10 +5,55 @@ Changelog
|
||||
(unreleased)
|
||||
------------
|
||||
|
||||
Fix
|
||||
~~~
|
||||
- Improved Spotify auth check flow, refs NOISSUE. [Simon Diesenreiter]
|
||||
|
||||
|
||||
0.6.8 (2025-07-20)
|
||||
------------------
|
||||
|
||||
Fix
|
||||
~~~
|
||||
- Improved Spotify auth check flow, refs NOISSUE. [Simon Diesenreiter]
|
||||
|
||||
Other
|
||||
~~~~~
|
||||
|
||||
|
||||
0.6.7 (2025-07-20)
|
||||
------------------
|
||||
|
||||
Fix
|
||||
~~~
|
||||
- Attempted bugfix for crashing process on invalid spotify access token,
|
||||
refs NOISSUE. [Simon Diesenreiter]
|
||||
|
||||
Other
|
||||
~~~~~
|
||||
|
||||
|
||||
0.6.6 (2025-07-20)
|
||||
------------------
|
||||
|
||||
Fix
|
||||
~~~
|
||||
- Add additional logging, refs NOISSUE. [Simon Diesenreiter]
|
||||
|
||||
Other
|
||||
~~~~~
|
||||
|
||||
|
||||
0.6.5 (2025-07-20)
|
||||
------------------
|
||||
|
||||
Fix
|
||||
~~~
|
||||
- Configurable Cron schedules, refs NOISSUE. [Simon Diesenreiter]
|
||||
|
||||
Other
|
||||
~~~~~
|
||||
|
||||
|
||||
0.6.4 (2025-07-20)
|
||||
------------------
|
||||
|
@ -86,19 +86,24 @@ likePlaylistCheckTimer.OnOccurence += async (s, ea) =>
|
||||
{
|
||||
if (!await spotifyApiClient.IsUserAuthenticatedAsync(user))
|
||||
{
|
||||
continue;
|
||||
logger.LogWarning($"User {user.LdapUserName} is not authorized with Spotify - skipping playlist sync");
|
||||
}
|
||||
var foundPlaylist = dci.SmartPlaylistDefinitions?.Where(p => p.CreatedBy == user).ToList().Where(p => p.IsThisUsersLikedSongsPlaylist).SingleOrDefault();
|
||||
if (foundPlaylist == null)
|
||||
else
|
||||
{
|
||||
var title = $"{user.PreferredName}'s liked Songs";
|
||||
var description = $"A collection of the songs liked by {user.PreferredName} on their 'Song of the day' server instance.";
|
||||
// playlist does not exist yet, creating it
|
||||
var newPlaylist = await (await spotifyApiClient.WithUserAuthorizationAsync(user)).CreateSpotifyPlaylist(title, description, false, true, user);
|
||||
await playlistSynchronizer.SynchronizePlaylistAsync(newPlaylist);
|
||||
needsSaving = true;
|
||||
var foundPlaylist = dci.SmartPlaylistDefinitions?.Where(p => p.CreatedBy == user).ToList().Where(p => p.IsThisUsersLikedSongsPlaylist).SingleOrDefault();
|
||||
if (foundPlaylist == null)
|
||||
{
|
||||
logger.LogWarning($"Creating liked songs playlist for user {user.LdapUserName}");
|
||||
var title = $"{user.PreferredName}'s liked songs";
|
||||
var description = $"A collection of the songs liked by {user.PreferredName} on their 'Song of the day' server instance.";
|
||||
// playlist does not exist yet, creating it
|
||||
var newPlaylist = await (await spotifyApiClient.WithUserAuthorizationAsync(user)).CreateSpotifyPlaylist(title, description, false, true, user);
|
||||
await playlistSynchronizer.SynchronizePlaylistAsync(newPlaylist);
|
||||
needsSaving = true;
|
||||
}
|
||||
logger.LogWarning($"Syncing playlists for user {user.LdapUserName}");
|
||||
await playlistSynchronizer.SynchronizeUserPlaylistsAsync(user);
|
||||
}
|
||||
await playlistSynchronizer.SynchronizeUserPlaylistsAsync(user);
|
||||
}
|
||||
|
||||
if (needsSaving)
|
||||
|
@ -110,7 +110,7 @@ public class SpotifyApiClient
|
||||
|
||||
public async Task<string> GetValidAuthorizationTokenAsync(User user)
|
||||
{
|
||||
if (string.IsNullOrEmpty(user.SpotifyAuthAccessToken))
|
||||
if (string.IsNullOrEmpty(user.SpotifyAuthAccessToken) || string.IsNullOrEmpty(user.SpotifyAuthRefreshToken))
|
||||
{
|
||||
// user either never connected Spotify or we failed to refresh token - user needs to re-authenticate
|
||||
return string.Empty;
|
||||
|
@ -1 +1 @@
|
||||
0.6.5
|
||||
0.6.9
|
||||
|
Loading…
x
Reference in New Issue
Block a user