Fixed cart issues
This commit is contained in:
parent
ad2fa3a678
commit
70c47f44a9
|
|
@ -161,7 +161,6 @@ class Cart {
|
|||
*/
|
||||
public function add($id, $data)
|
||||
{
|
||||
|
||||
$itemData = $this->prepareItemData($id, $data);
|
||||
|
||||
if(!$itemData) {
|
||||
|
|
@ -196,8 +195,6 @@ class Cart {
|
|||
'base_total' => $cartItem->price * ($prevQty + $newQty)
|
||||
]);
|
||||
|
||||
$this->collectTotals();
|
||||
|
||||
session()->flash('success', trans('shop::app.checkout.cart.quantity.success'));
|
||||
|
||||
return true;
|
||||
|
|
@ -248,8 +245,6 @@ class Cart {
|
|||
$parent = $cart->items()->create($itemData['parent']);
|
||||
}
|
||||
|
||||
$this->collectTotals();
|
||||
|
||||
session()->flash('success', trans('shop::app.checkout.cart.item.success'));
|
||||
|
||||
return $cart;
|
||||
|
|
@ -323,8 +318,6 @@ class Cart {
|
|||
|
||||
session()->flash('success', trans('shop::app.checkout.cart.item.success'));
|
||||
|
||||
$this->collectTotals();
|
||||
|
||||
return $cart;
|
||||
}
|
||||
}
|
||||
|
|
@ -334,8 +327,6 @@ class Cart {
|
|||
|
||||
session()->flash('success', trans('shop::app.checkout.cart.item.success'));
|
||||
|
||||
$this->collectTotals();
|
||||
|
||||
return $cart;
|
||||
}
|
||||
}
|
||||
|
|
@ -493,8 +484,6 @@ class Cart {
|
|||
}
|
||||
|
||||
$item->update(['quantity' => $quantity]);
|
||||
|
||||
$this->collectTotals();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -515,8 +504,6 @@ class Cart {
|
|||
if($cart = $this->getCart()) {
|
||||
$this->cartItem->delete($itemId);
|
||||
|
||||
$this->collectTotals();
|
||||
|
||||
//delete the cart instance if no items are there
|
||||
if($cart->items()->get()->count() == 0) {
|
||||
$this->cart->delete($cart->id);
|
||||
|
|
|
|||
|
|
@ -88,9 +88,11 @@ class CartController extends Controller
|
|||
|
||||
public function add($id) {
|
||||
$data = request()->input();
|
||||
// dd($data);
|
||||
|
||||
Cart::add($id, $data);
|
||||
|
||||
Cart::collectTotals();
|
||||
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
|
|
@ -102,6 +104,8 @@ class CartController extends Controller
|
|||
public function remove($itemId) {
|
||||
Cart::removeItem($itemId);
|
||||
|
||||
Cart::collectTotals();
|
||||
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
|
|
@ -123,6 +127,8 @@ class CartController extends Controller
|
|||
|
||||
Cart::update($data);
|
||||
|
||||
Cart::collectTotals();
|
||||
|
||||
return redirect()->back();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -241,7 +241,8 @@ return [
|
|||
'success_remove' => 'Item removed successfully',
|
||||
'error_add' => 'Item cannot be added to cart',
|
||||
],
|
||||
'quantity-error' => 'Requested quantity is not available.'
|
||||
'quantity-error' => 'Requested quantity is not available.',
|
||||
'cart-subtotal' => 'Cart Subtotal'
|
||||
],
|
||||
|
||||
'onepage' => [
|
||||
|
|
|
|||
|
|
@ -0,0 +1,92 @@
|
|||
@inject ('productImageHelper', 'Webkul\Product\Helpers\ProductImage')
|
||||
|
||||
<?php $cart = cart()->getCart(); ?>
|
||||
|
||||
@if($cart)
|
||||
<?php $items = $cart->items; ?>
|
||||
|
||||
<div class="dropdown-toggle">
|
||||
<div style="display: inline-block; cursor: pointer;">
|
||||
<span class="name">
|
||||
Cart
|
||||
<span class="count"> ({{ intval($cart->items_qty) }})</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<i class="icon arrow-down-icon active"></i>
|
||||
</div>
|
||||
|
||||
<div class="dropdown-list" style="display: none; top: 50px; right: 0px">
|
||||
<div class="dropdown-container">
|
||||
<div class="dropdown-cart">
|
||||
<div class="dropdown-header">
|
||||
<p class="heading">
|
||||
{{ __('shop::app.checkout.cart.cart-subtotal') }} -
|
||||
{{ core()->currency($cart->sub_total) }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div class="dropdown-content">
|
||||
@foreach($items as $item)
|
||||
@if($item->type == "configurable")
|
||||
|
||||
<div class="item">
|
||||
<div class="item-image" >
|
||||
@php
|
||||
$images = $productImageHelper->getProductBaseImage($item->child->product);
|
||||
@endphp
|
||||
<img src="{{ $images['small_image_url'] }}" />
|
||||
</div>
|
||||
|
||||
<div class="item-details">
|
||||
|
||||
<div class="item-name">{{ $item->child->name }}</div>
|
||||
|
||||
<div class="item-price">{{ core()->currency($item->total) }}</div>
|
||||
|
||||
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@else
|
||||
|
||||
<div class="item">
|
||||
<div class="item-image" >
|
||||
@php
|
||||
$images = $productImageHelper->getProductBaseImage($item->product);
|
||||
@endphp
|
||||
<img src="{{ $images['small_image_url'] }}" />
|
||||
</div>
|
||||
|
||||
<div class="item-details">
|
||||
|
||||
<div class="item-name">{{ $item->name }}</div>
|
||||
|
||||
<div class="item-price">{{ $item->total }}</div>
|
||||
|
||||
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
|
||||
<div class="dropdown-footer">
|
||||
<a href="{{ route('shop.checkout.cart.index') }}">View Shopping Cart</a>
|
||||
|
||||
<a class="btn btn-primary btn-lg" style="color: white;" href="{{ route('shop.checkout.onepage.index') }}">CHECKOUT</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@else
|
||||
|
||||
<div class="dropdown-toggle">
|
||||
<div style="display: inline-block; cursor: pointer;">
|
||||
|
||||
<span class="name">Cart<span class="count"> (0) </span></span>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
|
@ -3,11 +3,7 @@
|
|||
|
||||
<div class="item-detail">
|
||||
<label>
|
||||
@if($cart->items_qty - intval($cart->items_qty) > 0)
|
||||
{{ $cart->items_qty }}
|
||||
@else
|
||||
{{ intval($cart->items_qty) }}
|
||||
@endif
|
||||
{{ intval($cart->items_qty) }}
|
||||
{{ __('shop::app.checkout.total.sub-total') }}
|
||||
{{ __('shop::app.checkout.total.price') }}
|
||||
</label>
|
||||
|
|
|
|||
|
|
@ -100,108 +100,13 @@
|
|||
|
||||
<ul class="cart-dropdown-container">
|
||||
|
||||
<?php $cart = cart()->getCart(); ?>
|
||||
|
||||
@inject ('productImageHelper', 'Webkul\Product\Helpers\ProductImage')
|
||||
|
||||
<li class="cart-dropdown">
|
||||
<span class="icon cart-icon"></span>
|
||||
@if($cart)
|
||||
<?php $items = $cart->items; ?>
|
||||
|
||||
<div class="dropdown-toggle">
|
||||
<div style="display: inline-block; cursor: pointer;">
|
||||
@if($cart->items_qty - intval($cart->items_qty) > 0)
|
||||
|
||||
<span class="name">
|
||||
Cart
|
||||
<span class="count"> ({{ $cart->items_qty }})</span>
|
||||
</span>
|
||||
|
||||
@else
|
||||
|
||||
<span class="name">
|
||||
Cart
|
||||
<span class="count"> ({{ intval($cart->items_qty) }})</span>
|
||||
</span>
|
||||
|
||||
@endif
|
||||
</div>
|
||||
|
||||
<i class="icon arrow-down-icon active"></i>
|
||||
</div>
|
||||
|
||||
<div class="dropdown-list" style="display: none; top: 50px; right: 0px">
|
||||
<div class="dropdown-container">
|
||||
<div class="dropdown-cart">
|
||||
<div class="dropdown-header">
|
||||
<p class="heading">Cart Subtotal - {{ $cart->sub_total }}</p>
|
||||
</div>
|
||||
|
||||
<div class="dropdown-content">
|
||||
@foreach($items as $item)
|
||||
@if($item->type == "configurable")
|
||||
|
||||
<div class="item">
|
||||
<div class="item-image" >
|
||||
@php
|
||||
$images = $productImageHelper->getProductBaseImage($item->child->product);
|
||||
@endphp
|
||||
<img src="{{ $images['small_image_url'] }}" />
|
||||
</div>
|
||||
|
||||
<div class="item-details">
|
||||
|
||||
<div class="item-name">{{ $item->child->name }}</div>
|
||||
|
||||
<div class="item-price">{{ $item->total }}</div>
|
||||
|
||||
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@else
|
||||
|
||||
<div class="item">
|
||||
<div class="item-image" >
|
||||
@php
|
||||
$images = $productImageHelper->getProductBaseImage($item->product);
|
||||
@endphp
|
||||
<img src="{{ $images['small_image_url'] }}" />
|
||||
</div>
|
||||
|
||||
<div class="item-details">
|
||||
|
||||
<div class="item-name">{{ $item->name }}</div>
|
||||
|
||||
<div class="item-price">{{ $item->total }}</div>
|
||||
|
||||
<div class="item-qty">Quantity - {{ $item->quantity }}</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@endif
|
||||
@endforeach
|
||||
</div>
|
||||
|
||||
<div class="dropdown-footer">
|
||||
<a href="{{ route('shop.checkout.cart.index') }}">View Shopping Cart</a>
|
||||
|
||||
<a class="btn btn-primary btn-lg" style="color: white;" href="{{ route('shop.checkout.onepage.index') }}">CHECKOUT</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@else
|
||||
|
||||
<div class="dropdown-toggle">
|
||||
<div style="display: inline-block; cursor: pointer;">
|
||||
|
||||
<span class="name">Cart<span class="count"> (0) </span></span>
|
||||
</div>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
@include('shop::checkout.cart.mini-cart')
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
|
@ -263,14 +168,18 @@
|
|||
<ul class="resp-cart-dropdown-container">
|
||||
|
||||
<li class="cart-dropdown">
|
||||
<?php $cart = cart()->getCart(); ?>
|
||||
|
||||
@if(isset($cart))
|
||||
<div>
|
||||
<a href="{{ route('shop.checkout.cart.index') }}"><span class="icon cart-icon"></span></a>
|
||||
</div>
|
||||
<div>
|
||||
<a href="{{ route('shop.checkout.cart.index') }}">
|
||||
<span class="icon cart-icon"></span>
|
||||
</a>
|
||||
</div>
|
||||
@else
|
||||
<div style="display: inline-block; cursor: pointer;">
|
||||
<span class="icon cart-icon"></span>
|
||||
</div>
|
||||
<div style="display: inline-block; cursor: pointer;">
|
||||
<span class="icon cart-icon"></span>
|
||||
</div>
|
||||
@endif
|
||||
</li>
|
||||
</ul>
|
||||
|
|
|
|||
Loading…
Reference in New Issue