донат шоп, управление магазином, яндекс метрика
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Services\RobokassaService;
|
||||
use Illuminate\Http\RedirectResponse;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Validation\Rule;
|
||||
use Illuminate\View\View;
|
||||
|
||||
class PaymentController extends Controller
|
||||
{
|
||||
public function create(Request $request, RobokassaService $robokassa): View
|
||||
{
|
||||
$validated = $request->validate([
|
||||
'amount' => [
|
||||
'required',
|
||||
'numeric',
|
||||
'decimal:0,2',
|
||||
Rule::numeric()->min((float) config('services.robokassa.minimum_amount'))->max((float) config('services.robokassa.maximum_amount')),
|
||||
],
|
||||
]);
|
||||
|
||||
$user = $request->user();
|
||||
$invoice = $robokassa->createInvoice($user->id, (string) $validated['amount']);
|
||||
|
||||
return view('payments.redirect', [
|
||||
'paymentUrl' => config('services.robokassa.payment_url'),
|
||||
'parameters' => $robokassa->paymentParameters($invoice, $user->email),
|
||||
]);
|
||||
}
|
||||
|
||||
public function success(): RedirectResponse
|
||||
{
|
||||
return redirect()->route('cabinet.index')->with('status', 'Пополнение принято. Слёзы Элуны скоро появятся на счёте.');
|
||||
}
|
||||
|
||||
public function fail(): RedirectResponse
|
||||
{
|
||||
return redirect()->route('cabinet.index')->with('error', 'Оплата отменена или не была завершена.');
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user