* @copyright 2018 Webkul Software Pvt Ltd (http://www.webkul.com) */ class CheckoutController extends Controller { /** * Contains route related configuration * * @var array */ protected $_config; /** * Create a new controller instance. * * @return void */ public function __construct() { $this->_config = request('_config'); } /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index() { if(!$cart = Cart::getCart()) return redirect()->route('shop.checkout.cart.index'); return view($this->_config['view'])->with('cart', $cart); } /** * Saves customer address. * * @param \Webkul\Cart\Http\Requests\CustomerAddressForm $request * @return \Illuminate\Http\Response */ public function saveAddress(CustomerAddressForm $request) { if(!Cart::saveCustomerAddress(request()->all()) || !$rates = Shipping::collectRates()) return response()->json(['redirect_url' => route('shop.checkout.cart.index')], 403); return response()->json($rates); } /** * Saves shipping method. * * @return \Illuminate\Http\Response */ public function saveShipping() { return response()->json(Payment::getSupportedPaymentMethods()); } /** * Saves payment method. * * @return \Illuminate\Http\Response */ public function savePayment() { } }