Merge pull request #983 from jitendra-webkul/jitendra

Car controller updated
This commit is contained in:
Jitendra Singh 2019-06-07 16:52:16 +05:30 committed by GitHub
commit 6cdbcdc2dc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 32 additions and 28 deletions

View File

@ -157,41 +157,45 @@ class CartController extends Controller
*/
public function updateBeforeCheckout()
{
$request = request()->except('_token');
try {
$request = request()->except('_token');
foreach ($request['qty'] as $id => $quantity) {
if ($quantity <= 0) {
session()->flash('warning', trans('shop::app.checkout.cart.quantity.illegal'));
foreach ($request['qty'] as $id => $quantity) {
if ($quantity <= 0) {
session()->flash('warning', trans('shop::app.checkout.cart.quantity.illegal'));
return redirect()->back();
}
}
foreach ($request['qty'] as $key => $value) {
$item = $this->cartItem->findOneByField('id', $key);
$data['quantity'] = $value;
Event::fire('checkout.cart.update.before', $key);
$result = Cart::updateItem($item->product_id, $data, $key);
if ($result == false) {
$this->suppressFlash = true;
return redirect()->back();
}
}
Event::fire('checkout.cart.update.after', $item);
foreach ($request['qty'] as $key => $value) {
$item = $this->cartItem->findOneByField('id', $key);
unset($item);
unset($data);
}
$data['quantity'] = $value;
Cart::collectTotals();
Event::fire('checkout.cart.update.before', $item);
if ($this->suppressFlash) {
session()->forget('success');
session()->forget('warning');
session()->flash('info', trans('shop::app.checkout.cart.partial-cart-update'));
$result = Cart::updateItem($item->product_id, $data, $key);
if ($result == false) {
$this->suppressFlash = true;
}
Event::fire('checkout.cart.update.after', $item);
unset($item);
unset($data);
}
Cart::collectTotals();
if ($this->suppressFlash) {
session()->forget('success');
session()->forget('warning');
session()->flash('info', trans('shop::app.checkout.cart.partial-cart-update'));
}
} catch(\Exception $e) {
session()->flash('error', trans($e->getMessage()));
}
return redirect()->back();