App\Http\Controllers\StoreController::postUpdateAddress PHP Method

postUpdateAddress() public method

public postUpdateAddress ( )
    public function postUpdateAddress()
    {
        $address_id = (int) Request::input('id');
        $address = Store\Address::find($address_id);
        $order = $this->userCart();
        if (!$address || $address->user_id !== Auth::user()->user_id) {
            return error_popup('invalid address');
        }
        switch (Request::input('action')) {
            default:
            case 'use':
                $order->address()->associate($address);
                $order->save();
                return js_view('layout.ujs-reload');
                break;
            case 'remove':
                if ($order->address_id === $address_id) {
                    return error_popup('Address is being used for this order!');
                }
                if ($otherOrders = Store\Order::where('address_id', '=', $address_id)->first()) {
                    return error_popup('Address was used in a previous order!');
                }
                Store\Address::destroy($address_id);
                return js_view('store.address-destroy', ['address_id' => $address_id]);
                break;
        }
    }