From 4b628988ee12bbd3cb50d6a2dc527b9470c1412a Mon Sep 17 00:00:00 2001 From: AVMG20 Date: Sat, 12 Jun 2021 17:29:08 +0200 Subject: [PATCH] role to discord user added the ability to give a role to the discord user that has verified there discord --- .env.example | 6 ++++-- app/Http/Controllers/Auth/SocialiteController.php | 14 +++++++++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/.env.example b/.env.example index c257ac4f..8b2873e6 100644 --- a/.env.example +++ b/.env.example @@ -25,8 +25,10 @@ PAYPAL_EMAIL= DISCORD_CLIENT_ID= DISCORD_CLIENT_SECRET= #set-up will join users automaticly to your discord -DISCORD_BOT_TOKEN=YOUR_DISCORD_BOT_TOKEN -DISCORD_GUILD_ID=YOUR_DISCORD_SERVER_ID +DISCORD_BOT_TOKEN= +DISCORD_GUILD_ID= +#set-up will give the verified user the given role +DISCORD_ROLE_ID= #nesseary URL's PTERODACTYL_URL=https://panel.bitsec.dev diff --git a/app/Http/Controllers/Auth/SocialiteController.php b/app/Http/Controllers/Auth/SocialiteController.php index 08b92da8..757900c6 100644 --- a/app/Http/Controllers/Auth/SocialiteController.php +++ b/app/Http/Controllers/Auth/SocialiteController.php @@ -29,8 +29,9 @@ class SocialiteController extends Controller $discord = Socialite::driver('discord')->user(); $discordUser = DiscordUser::find($discord->id); - $guildId = env('DISCORD_GUILD_ID'); $botToken = env('DISCORD_BOT_TOKEN'); + $guildId = env('DISCORD_GUILD_ID'); + $roleId = env('DISCORD_ROLE_ID'); //force user into discord server //TODO Add event on failure, to notify ppl involved @@ -42,6 +43,17 @@ class SocialiteController extends Controller ] )->put("https://discord.com/api/guilds/{$guildId}/members/{$discord->id}", ['access_token' => $discord->token]); + + //give user a role in the discord server + if (!empty($roleId)){ + $response = Http::withHeaders( + [ + 'Authorization' => 'Bot ' . $botToken, + 'Content-Type' => 'application/json', + ] + )->put("https://discord.com/api/guilds/{$guildId}/members/{$discord->id}/roles/{$roleId}", + ['access_token' => $discord->token]); + } }