Browse Source

added extra config option for server limit after purchases

AVMG20 4 years ago
parent
commit
e40b2c49b2

+ 16 - 17
app/Http/Controllers/Admin/PaymentController.php

@@ -3,6 +3,7 @@
 namespace App\Http\Controllers\Admin;
 
 use App\Http\Controllers\Controller;
+use App\Models\Configuration;
 use App\Models\Payment;
 use App\Models\PaypalProduct;
 use Illuminate\Contracts\Foundation\Application;
@@ -20,15 +21,11 @@ use PayPalHttp\HttpException;
 
 class PaymentController extends Controller
 {
-    protected $allowedAmounts = [
-        '87',
-        '350',
-        '1000',
-        '2000',
-        '4000'
-    ];
-
-    public function index(){
+    /**
+     * @return Application|Factory|View
+     */
+    public function index()
+    {
         return view('admin.payments.index')->with([
             'payments' => Payment::paginate(15)
         ]);
@@ -51,17 +48,17 @@ class PaymentController extends Controller
      * @param PaypalProduct $paypalProduct
      * @return RedirectResponse
      */
-    public function pay(Request $request , PaypalProduct $paypalProduct)
+    public function pay(Request $request, PaypalProduct $paypalProduct)
     {
         $request = new OrdersCreateRequest();
         $request->prefer('return=representation');
         $request->body = [
-            "intent"              => "CAPTURE",
-            "purchase_units"      => [
+            "intent" => "CAPTURE",
+            "purchase_units" => [
                 [
                     "reference_id" => uniqid(),
-                    "amount"       => [
-                        "value"         => $paypalProduct->price,
+                    "amount" => [
+                        "value" => $paypalProduct->price,
                         "currency_code" => strtoupper($paypalProduct->currency_code)
                     ]
                 ]
@@ -69,7 +66,7 @@ class PaymentController extends Controller
             "application_context" => [
                 "cancel_url" => route('payment.cancel'),
                 "return_url" => route('payment.success', ['product' => $paypalProduct->id]),
-                'brand_name' =>  config('app.name', 'Laravel') ,
+                'brand_name' => config('app.name', 'Laravel'),
             ]
         ];
 
@@ -133,8 +130,10 @@ class PaymentController extends Controller
                 Auth::user()->increment('credits', $paypalProduct->quantity);
 
                 //update server limit
-                if (Auth::user()->server_limit < 10) {
-                    Auth::user()->update(['server_limit' => 10]);
+                if (Configuration::getValueByKey('SERVER_LIMIT_AFTER_IRL_PURCHASE', 10) !== 0) {
+                    if (Auth::user()->server_limit < Configuration::getValueByKey('SERVER_LIMIT_AFTER_IRL_PURCHASE', 10)) {
+                        Auth::user()->update(['server_limit' => 10]);
+                    }
                 }
 
                 //update role

+ 1 - 0
app/Http/Controllers/StoreController.php

@@ -16,6 +16,7 @@ class StoreController extends Controller
     {
         $isPaypalSetup = false;
         if (env('PAYPAL_SECRET') && env('PAYPAL_CLIENT_ID')) $isPaypalSetup = true;
+        if (env('APP_ENV' , 'local') == 'local') $isPaypalSetup = true;
 
         return view('store.index')->with([
             'products' => PaypalProduct::where('disabled' , '=' , false)->orderBy('price' , 'asc')->get(),

+ 1 - 1
database/seeders/Seeds/ConfigurationSeeder.php

@@ -80,7 +80,7 @@ class ConfigurationSeeder extends Seeder
         ], [
             'value' => '10',
             'type'  => 'integer',
-            'description' => 'Sets the users server limit to this amount after purchasing with money, set to 0 to ignore this.',
+            '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.',
         ]);
     }
 }

+ 1 - 1
resources/views/admin/configurations/index.blade.php

@@ -40,7 +40,7 @@
                             <th>Key</th>
                             <th>Value</th>
                             <th>Type</th>
-                            <th>Description</th>
+                            <th width="600">Description</th>
                             <th>Created at</th>
                             <th></th>
                         </tr>

+ 2 - 2
resources/views/store/index.blade.php

@@ -59,10 +59,10 @@
             @else
                 <div class="alert alert-danger alert-dismissible">
                     <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
-                    <h4><i class="icon fa fa-ban"></i> @if($products->count() == 0) The store is temporarily
-                        disabled! @else The store is not correctly configured! @endif
+                    <h4><i class="icon fa fa-ban"></i> @if($products->count() == 0) There are no store products! @else The store is not correctly configured! @endif
                     </h4>
                 </div>
+
             @endif