File: /home/armgroup/libs/app/Http/Controllers/Frontend/AddressController.php
<?php
namespace App\Http\Controllers\Frontend;
use App\Http\Controllers\Controller;
use App\Models\Address;
use Artesaos\SEOTools\Facades\SEOTools;
use Gloudemans\Shoppingcart\Facades\Cart;
class AddressController extends Controller
{
public function __construct()
{
$this->middleware(['auth', 'isActive']);
}
public function index()
{
if (Cart::count() < 1) {
return redirect()->route('search.index');
}
$addresses = auth()->user()->addresses;
if (count($addresses)) {
SEOTools::setTitle('انتخاب آدرس');
SEOTools::setDescription('انتخاب آدرس');
$addresses->load(['city']);
return view('frontend.addresses.index', compact('addresses'));
}
$this->doneMessage('آدرس دریافت سفارش را مشخص کنید!', 'warning');
return redirect()->route('account.addresses.create', ['_back' => 'addresses']);
}
public function update(Address $address)
{
if ($address->users()->where('id', auth()->id())->count() < 1) {
abort(404);
}
session(['address_id' => $address->id]);
return redirect()->route('checkout.index');
}
public function edit(Address $address)
{
abort_if($address->users()->where('id', auth()->id())->count() < 1, 404);
session(['address_id' => $address->id]);
return back();
}
}