PATH:
home
/
lab2454c
/
westernclear.net
/
app
/
Http
/
Controllers
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Mail; use App\Models\User; use App\Mail\Welcome; use Stripe\Stripe; use Stripe\Customer; use Stripe\Charge; use App\Models\SiteSetting; class ApplicationController extends Controller { public function showApplicationForm() { if (Auth::guest()) { return view('frontend.pages.apply.apply'); } else{ return redirect()->route('dashboard'); } } public function apply(Request $request) { //dd($request->all()); $values = $request->validate([ "first_name" => "required|alpha|max:100", "last_name" => "required|alpha|max:100", "dob" => "required|date|date_format:Y/m/d|before:today", "email" => "required|string|email|max:255|unique:users", 'password' => 'required|string|min:8|max:30|confirmed', ]); //dd($values,$request->all()); \Session::push('userData', $values); return view('frontend.pages.apply.payment'); } public function payment(Request $request) { $setting = SiteSetting::first(); $userData = collect(\Session::get('userData'))->last(); //dd($userData); try { Stripe::setApiKey(env('STRIPE_SECRET')); $customer = Customer::create(array( 'email' => $request->stripeEmail, 'source' => $request->stripeToken )); $charge = Charge::create(array( 'customer' => $customer->id, 'amount' => ($setting->registration_fees ?? 10)*100, 'currency' => 'usd' )); //dd($charge, $userData); if ($charge->status == 'succeeded') { $user = new User(); $user->fill($userData); $user->password = Hash::make($userData['password']); $user->transaction_id = $charge->balance_transaction; $user->amount = ($charge->amount/100); $user->save(); Mail::to($user->email)->queue(new Welcome($user, $userData['password'])); \Session::flush(); $notify[] = ['success', 'Registered successsfully!']; return view('frontend.pages.apply.applySuccess')->withNotify($notify); } else{ \Session::flush(); $notify[] = ['error', 'Payment Failed!']; return redirect()->route('showApplicationForm')->withNotify($notify); } } catch (\Stripe\Exception\CardException $e) { $notify[] = ['error', $e->getError()->message]; \Session::flush(); return redirect()->route('showApplicationForm')->withNotify($notify); } } }
[+]
..
[-] Controller.php
[edit]
[-] ApplicationController.php
[edit]
[+]
Admin
[+]
Auth
[-] SiteController.php
[edit]
[-] HomeController.php
[edit]