Skip to content

Commit

Permalink
Update user settings variables. (#1104)
Browse files Browse the repository at this point in the history
  • Loading branch information
Ferks-FK authored Jan 9, 2025
2 parents 9a165bf + c70419c commit af4d7d1
Show file tree
Hide file tree
Showing 6 changed files with 47 additions and 28 deletions.
2 changes: 1 addition & 1 deletion app/Http/Controllers/Auth/SocialiteController.php
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public function callback(DiscordSettings $discord_settings, UserSettings $user_s

//update user
Auth::user()->increment('credits', $user_settings->credits_reward_after_verify_discord);
Auth::user()->increment('server_limit', $user_settings->server_limit_after_verify_discord);
Auth::user()->increment('server_limit', $user_settings->server_limit_increment_after_verify_discord);
Auth::user()->update(['discord_verified_at' => now()]);
} else {
$user->discordUser->update($discord->user);
Expand Down
9 changes: 4 additions & 5 deletions app/Listeners/UserPayment.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

class UserPayment implements ShouldQueue
{
private $server_limit_after_irl_purchase;
private $server_limit_increment_after_irl_purchase;

private $referral_mode;

Expand All @@ -38,7 +38,7 @@ class UserPayment implements ShouldQueue
*/
public function __construct(UserSettings $user_settings, ReferralSettings $referral_settings, GeneralSettings $general_settings, DiscordSettings $discord_settings)
{
$this->server_limit_after_irl_purchase = $user_settings->server_limit_after_irl_purchase;
$this->server_limit_increment_after_irl_purchase = $user_settings->server_limit_increment_after_irl_purchase;
$this->referral_mode = $referral_settings->mode;
$this->referral_percentage = $referral_settings->percentage;
$this->referral_always_give_commission = $referral_settings->always_give_commission;
Expand Down Expand Up @@ -66,11 +66,10 @@ public function handle(PaymentEvent $event)
}

//update server limit
if ($this->server_limit_after_irl_purchase !== 0 && $user->server_limit < $this->server_limit_after_irl_purchase) {
$user->update(['server_limit' => $this->server_limit_after_irl_purchase]);
if (!$user->email_verified_reward && $this->server_limit_increment_after_irl_purchase !== 0) {
$user->increment('server_limit', $this->server_limit_increment_after_irl_purchase);
}


//update User with bought item
if ($shopProduct->type == "Credits") {
$user->increment('credits', $shopProduct->quantity);
Expand Down
6 changes: 3 additions & 3 deletions app/Listeners/Verified.php
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

class Verified
{
private $server_limit_after_verify_email;
private $server_limit_increment_after_verify_email;
private $credits_reward_after_verify_email;

/**
Expand All @@ -16,7 +16,7 @@ class Verified
*/
public function __construct(UserSettings $user_settings)
{
$this->server_limit_after_verify_email = $user_settings->server_limit_after_verify_email;
$this->server_limit_increment_after_verify_email = $user_settings->server_limit_increment_after_verify_email;
$this->credits_reward_after_verify_email = $user_settings->credits_reward_after_verify_email;
}

Expand All @@ -29,7 +29,7 @@ public function __construct(UserSettings $user_settings)
public function handle($event)
{
if (!$event->user->email_verified_reward) {
$event->user->increment('server_limit', $this->server_limit_after_verify_email);
$event->user->increment('server_limit', $this->server_limit_increment_after_verify_email);
$event->user->increment('credits', $this->credits_reward_after_verify_email);
$event->user->update(['email_verified_reward' => true]);
}
Expand Down
16 changes: 8 additions & 8 deletions app/Notifications/WelcomeMessage.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ class WelcomeMessage extends Notification implements ShouldQueue

private $credits_reward_after_verify_email;

private $server_limit_after_verify_discord;
private $server_limit_increment_after_verify_discord;

private $server_limit_after_verify_email;
private $server_limit_increment_after_verify_email;

/**
* Create a new notification instance.
Expand All @@ -42,8 +42,8 @@ public function __construct(User $user)
$this->credits_display_name = $general_settings->credits_display_name;
$this->credits_reward_after_verify_discord = $user_settings->credits_reward_after_verify_discord;
$this->credits_reward_after_verify_email = $user_settings->credits_reward_after_verify_email;
$this->server_limit_after_verify_discord = $user_settings->server_limit_after_verify_discord;
$this->server_limit_after_verify_email = $user_settings->server_limit_after_verify_email;
$this->server_limit_increment_after_verify_discord = $user_settings->server_limit_increment_after_verify_discord;
$this->server_limit_increment_after_verify_email = $user_settings->server_limit_increment_after_verify_email;
}

/**
Expand All @@ -63,15 +63,15 @@ public function AdditionalLines()
if ($this->credits_reward_after_verify_email != 0) {
$AdditionalLine .= __('Verifying your e-mail address will grant you ').$this->credits_reward_after_verify_email.' '.__('additional').' '.$this->credits_display_name.'. <br />';
}
if ($this->server_limit_after_verify_email != 0) {
$AdditionalLine .= __('Verifying your e-mail will also increase your Server Limit by ').$this->server_limit_after_verify_email.'. <br />';
if ($this->server_limit_increment_after_verify_email != 0) {
$AdditionalLine .= __('Verifying your e-mail will also increase your Server Limit by ').$this->server_limit_increment_after_verify_email.'. <br />';
}
$AdditionalLine .= '<br />';
if ($this->credits_reward_after_verify_discord != 0) {
$AdditionalLine .= __('You can also verify your discord account to get another ').$this->credits_reward_after_verify_discord.' '.$this->credits_display_name.'. <br />';
}
if ($this->server_limit_after_verify_discord != 0) {
$AdditionalLine .= __('Verifying your Discord account will also increase your Server Limit by ').$this->server_limit_after_verify_discord.'. <br />';
if ($this->server_limit_increment_after_verify_discord != 0) {
$AdditionalLine .= __('Verifying your Discord account will also increase your Server Limit by ').$this->server_limit_increment_after_verify_discord.'. <br />';
}

return $AdditionalLine;
Expand Down
22 changes: 11 additions & 11 deletions app/Settings/UserSettings.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ class UserSettings extends Settings
public float $initial_credits;
public int $initial_server_limit;
public float $min_credits_to_make_server;
public int $server_limit_after_irl_purchase;
public int $server_limit_after_verify_discord;
public int $server_limit_after_verify_email;
public int $server_limit_increment_after_irl_purchase;
public int $server_limit_increment_after_verify_discord;
public int $server_limit_increment_after_verify_email;

public static function group(): string
{
Expand All @@ -38,9 +38,9 @@ public static function getValidations()
'initial_credits' => 'required|numeric',
'initial_server_limit' => 'required|numeric',
'min_credits_to_make_server' => 'required|numeric',
'server_limit_after_irl_purchase' => 'required|numeric',
'server_limit_after_verify_discord' => 'required|numeric',
'server_limit_after_verify_email' => 'required|numeric',
'server_limit_increment_after_irl_purchase' => 'required|numeric',
'server_limit_increment_after_verify_discord' => 'required|numeric',
'server_limit_increment_after_verify_email' => 'required|numeric',
'register_ip_check' => 'nullable|string',
'creation_enabled' => 'nullable|string',
];
Expand Down Expand Up @@ -90,17 +90,17 @@ public static function getOptionInputData()
'type' => 'number',
'description' => 'The minimum amount of credits a user needs to create a server.',
],
'server_limit_after_irl_purchase' => [
'label' => 'Server Limit After first purchase',
'server_limit_increment_after_irl_purchase' => [
'label' => 'Server Limit Increase After first purchase',
'type' => 'number',
'description' => 'The amount of servers a user can create after they make their first purchase.',
'description' => 'Specifies how many additional servers a user can create after making their first purchase.',
],
'server_limit_after_verify_discord' => [
'server_limit_increment_after_verify_discord' => [
'label' => 'Server Limit Increase After Verify Discord',
'type' => 'number',
'description' => 'Specifies how many additional servers a user can create after verifying their Discord account.',
],
'server_limit_after_verify_email' => [
'server_limit_increment_after_verify_email' => [
'label' => 'Server Limit Increase After Verify Email',
'type' => 'number',
'description' => 'Specifies how many additional servers a user can create after verifying their email address.',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?php

use Spatie\LaravelSettings\Migrations\SettingsMigration;

return new class extends SettingsMigration
{
public function up(): void
{
$this->migrator->rename('user.server_limit_after_irl_purchase', 'user.server_limit_increment_after_irl_purchase');
$this->migrator->rename('user.server_limit_after_verify_discord', 'user.server_limit_increment_after_verify_discord');
$this->migrator->rename('user.server_limit_after_verify_email', 'user.server_limit_increment_after_verify_email');
}

public function down(): void
{
$this->migrator->rename('user.server_limit_increment_after_irl_purchase', 'user.server_limit_after_irl_purchase');
$this->migrator->rename('user.server_limit_increment_after_verify_discord', 'user.server_limit_after_verify_discord');
$this->migrator->rename('user.server_limit_increment_after_verify_email', 'user.server_limit_after_verify_email');
}
};

0 comments on commit af4d7d1

Please sign in to comment.