File: /home/armgroup/libs/app/Http/Livewire/Frontend/Header/DesktopShoppingCart.php
<?php
namespace App\Http\Livewire\Frontend\Header;
use App\Http\Livewire\ConvertEmptyStringsToNull;
use App\Http\Livewire\General;
use App\Models\Product;
use Gloudemans\Shoppingcart\Facades\Cart;
use Livewire\Component;
class DesktopShoppingCart extends Component
{
use ConvertEmptyStringsToNull, General;
public $products;
public $carts;
protected $listeners = ['cartChanged'];
public function cartChanged()
{
$this->getProducts();
}
public function getProducts()
{
$this->carts = Cart::content();
$this->products = Product::whereIn('id', $this->carts->pluck('id')->toArray())->get(['id', 'name', 'slug', 'image']);
}
public function mount()
{
$this->getProducts();
}
public function render()
{
return view('livewire.frontend.header.desktop-shopping-cart');
}
public function remove($rowId)
{
$cart = Cart::get($rowId);
if (! $cart) {
return redirect()->route('search.index');
}
Cart::remove($rowId);
$this->doneMessage('سبد خرید با موفقیت ویرایش شد.');
return redirect(request()->header('Referer'));
}
}