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

putRequestNotification() public method

public putRequestNotification ( $product_id, $action )
    public function putRequestNotification($product_id, $action)
    {
        $user = Auth::user();
        $product = Store\Product::findOrFail($product_id);
        if ($product->inStock()) {
            return error_popup(trans('store.product.notification_in_stock'));
        }
        $request = $product->notificationRequests()->where('user_id', $user->user_id)->first();
        if ($request && $action === 'create') {
            return error_popup(trans('store.product.notification_exists'));
        } elseif ($request) {
            $request->delete();
        }
        if (!$request && $action === 'delete') {
            return error_popup(trans('store.product.notification_doesnt_exist'));
        } elseif (!$request) {
            $request = Store\NotificationRequest::create(['user_id' => $user->user_id, 'product_id' => $product_id]);
        }
        return js_view('layout.ujs-reload');
    }