Fix: Force Verification
This commit is contained in:
parent
e65e3234de
commit
bfa7a84e0b
3 changed files with 54 additions and 24 deletions
|
@ -12,11 +12,7 @@ use App\Models\Product;
|
|||
use App\Models\Server;
|
||||
use App\Notifications\ServerCreationError;
|
||||
use Exception;
|
||||
use Illuminate\Contracts\View\Factory;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
|
||||
|
@ -38,6 +34,16 @@ class ServerController extends Controller
|
|||
return redirect()->route('servers.index')->with('error', "You've already reached your server limit!");
|
||||
}
|
||||
|
||||
//Required Verification for creating an server
|
||||
if (Configuration::getValueByKey('FORCE_EMAIL_VERIFICATION', false) === 'true' && !Auth::user()->hasVerifiedEmail()) {
|
||||
return redirect()->route('profile.index')->with('error', "You havent verified your email! Thats required to create an server.");
|
||||
}
|
||||
|
||||
//Required Verification for creating an server
|
||||
if (Configuration::getValueByKey('FORCE_DISCORD_VERIFICATION', false) === 'true' && !Auth::user()->discordUser) {
|
||||
return redirect()->route('profile.index')->with('error', "You havent linked an Discord Account to your profile! Thats required to create an server");
|
||||
}
|
||||
|
||||
//minimum credits
|
||||
if (Auth::user()->credits <= Configuration::getValueByKey('MINIMUM_REQUIRED_CREDITS_TO_MAKE_SERVER', 50)) {
|
||||
return redirect()->route('servers.index')->with('error', "You do not have the required amount of credits to create a new server!");
|
||||
|
@ -109,7 +115,7 @@ class ServerController extends Controller
|
|||
try {
|
||||
$server->delete();
|
||||
return redirect()->route('servers.index')->with('success', 'server removed');
|
||||
} catch (\Exception $e) {
|
||||
} catch (Exception $e) {
|
||||
return redirect()->route('servers.index')->with('error', 'An exception has occurred while trying to remove a resource');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,12 +2,9 @@
|
|||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Configuration;
|
||||
use App\Models\PaypalProduct;
|
||||
use Illuminate\Contracts\Foundation\Application;
|
||||
use Illuminate\Contracts\View\Factory;
|
||||
use Illuminate\Contracts\View\View;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Response;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class StoreController extends Controller
|
||||
{
|
||||
|
@ -18,6 +15,17 @@ class StoreController extends Controller
|
|||
if (env('PAYPAL_SECRET') && env('PAYPAL_CLIENT_ID')) $isPaypalSetup = true;
|
||||
if (env('APP_ENV', 'local') == 'local') $isPaypalSetup = true;
|
||||
|
||||
|
||||
//Required Verification for creating an server
|
||||
if (Configuration::getValueByKey('FORCE_EMAIL_VERIFICATION', false) === 'true' && !Auth::user()->hasVerifiedEmail()) {
|
||||
return redirect()->route('profile.index')->with('error', "You havent verified your email! Thats required to buy credits.");
|
||||
}
|
||||
|
||||
//Required Verification for creating an server
|
||||
if (Configuration::getValueByKey('FORCE_DISCORD_VERIFICATION', false) === 'true' && !Auth::user()->discordUser) {
|
||||
return redirect()->route('profile.index')->with('error', "You havent linked an Discord Account to your profile! Thats required to buy credits");
|
||||
}
|
||||
|
||||
return view('store.index')->with([
|
||||
'products' => PaypalProduct::where('disabled', '=', false)->orderBy('price', 'asc')->get(),
|
||||
'isPaypalSetup' => $isPaypalSetup
|
||||
|
|
|
@ -82,5 +82,21 @@ class ConfigurationSeeder extends Seeder
|
|||
'type' => 'integer',
|
||||
'description' => 'updates the users server limit to this amount (unless the user already has a higher server limit) after making a purchase with real money, set to 0 to ignore this.',
|
||||
]);
|
||||
|
||||
Configuration::firstOrCreate([
|
||||
'key' => 'FORCE_EMAIL_VERIFICATION',
|
||||
] , [
|
||||
'value' => 'false',
|
||||
'type' => 'boolean',
|
||||
'description' => 'Force an user to verify the email adress before creating a server / buying credits.'
|
||||
]);
|
||||
|
||||
Configuration::firstOrCreate([
|
||||
'key' => 'FORCE_DISCORD_VERIFICATION',
|
||||
] , [
|
||||
'value' => 'false',
|
||||
'type' => 'boolean',
|
||||
'description' => 'Force an user to link an Discord Account before creating a server / buying credits.'
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue