route('identifier'))->first()){ //user shop //set Lang \Session::put('locale', $shopping_instance->getLocale()); \App::setLocale($shopping_instance->getLocale()); $user_shop = $shopping_instance->user_shop; if($user_shop && $user_shop->active == 1 && $user_shop->user->isActiveShop()){ Util::setPostRoute('user/'); \Session::put('user_shop', $user_shop); \Session::put('user_shop_domain', $shopping_instance->subdomain); \Session::put('user_shop_payment', $shopping_instance->payment); \Session::put('user_shop_identifier', $shopping_instance->identifier); \Session::put('isCheckout', true); if($shopping_instance->auth_user_id){ \Session::put('auth_user', $shopping_instance->auth_user); } } if($shopping_instance->back){ \Session::put('back_link', $shopping_instance->back); } \Session::put('new_session', true); Yard::instance('shopping')->destroy(); //restore yard if($shopping_instance->payment !== 6){ Yard::instance('shopping')->restore($request->route('identifier')); }else{ //dont delete shopping instance Yard::instance('shopping')->restore($request->route('identifier'), [], false); } Yard::instance('shopping')->putYardExtra('user_shop_payment', $shopping_instance->payment); Yard::instance('shopping')->putYardExtra('shopping_data', $shopping_instance->shopping_data); $is_for = isset($shopping_instance->shopping_data['is_for']) ? $shopping_instance->shopping_data['is_for'] : 'ot-member'; Yard::instance('shopping')->setUserPriceInfos($shopping_instance->shopping_data['user_price_infos']); Yard::instance('shopping')->setShippingCountryWithPrice($shopping_instance->country_id, $is_for); if($shopping_instance->payment !== 6){ //delete shopping instance ShoppingInstance::where('identifier', $request->route('identifier'))->delete(); } $request->route()->forgetParameter('identifier'); return $next($request); } if(\Session::has('user_shop') && \Session::has('isCheckout') && Yard::instance('shopping')->count()){ return $next($request); } return redirect(config('app.url')); } }