]> git.localhorst.tv Git - alttp.git/blobdiff - app/DiscordBotCommands/SyncUserCommand.php
track twitch category where chats were sent in
[alttp.git] / app / DiscordBotCommands / SyncUserCommand.php
index b9ba6d362f7efbaefa27448ec16c2da92d47abb3..642c8c756f42b280af537758c0aa8230f44a2911 100644 (file)
@@ -29,17 +29,23 @@ class SyncUserCommand extends BaseCommand {
                                        $user->mfa_enabled = $discordUser->mfaenabled ?: false;
                                }
                                $user->avatar = $discordUser->avatarhash ?: null;
+                               if ($user->username != $discordUser->username) {
+                                       $user->username = $discordUser->username;
+                                       $user->discriminator = $discordUser->discriminator;
+                               }
 
-                               if ($user->avatar) {
+                               $media = Storage::disk('media');
+                               if ($user->avatar && $media->missing('avatar/'.$user->id.'/'.$user->avatar.'.png')) {
                                        try {
                                                $url = $discordUser->getAvatarAttribute('png');
                                                $content = Http::get($url)->body();
-                                               $media = Storage::disk('media');
                                                $media->makeDirectory('avatar/'.$user->id);
-                                               $media->put('avatar/'.$user->id.'/'.$discordUser->avatarhash.'.png', $content);
+                                               $media->put('avatar/'.$user->id.'/'.$user->avatar.'.png', $content);
                                                $user->avatar_cached = now();
                                        } catch (\Exception $e) {
                                        }
+                               } else {
+                                       $user->avatar_cached = now();
                                }
                                $user->save();
                        });