From ee3b46e4688c5c48644f95f0b91c5d3ac4c298d7 Mon Sep 17 00:00:00 2001 From: itsAzaria Date: Fri, 20 Feb 2026 17:10:50 +0000 Subject: [PATCH] cache all guild emotes regardless if they're used or not --- app/Services/UpdateEmotes.php | 46 +++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 app/Services/UpdateEmotes.php diff --git a/app/Services/UpdateEmotes.php b/app/Services/UpdateEmotes.php new file mode 100644 index 0000000..317601c --- /dev/null +++ b/app/Services/UpdateEmotes.php @@ -0,0 +1,46 @@ +discord->guilds->get('id', $guildId); + if (! $guild) { + return; + } + + foreach ($guild->emojis as $emoji) { + $emote = \App\Models\Emote::where('emote_id', $emoji->id)->first(); + + if (! $emote) { + $emoteModel = \App\Models\Emote::create([ + 'emote_id' => $emoji->id, + 'guild_id' => $guildId, + 'emote_name' => $emoji->name, + 'type' => $emoji->animated ? 'ANIMATED' : 'STATIC', + ]); + + \App\Models\EmoteGuildStat::firstOrCreate( + ['emote_id' => $emoteModel->emote_id, 'guild_id' => $guildId], + ['usage_count' => 0] + ); + } elseif ($emote->emote_name !== $emoji->name) { + $emote->emote_name = $emoji->name; + $emote->save(); + } + } + } +}