setIPInfo(); $products = ['aloe-vera-gel-99', 'aloe-vera-saft-500-ml', 'aloe-vera-lippenbalsam']; // $set_products = ['aloe-vera-cleaner-set', 'aloe-vera-koerper-set', 'aloe-vera-repair-set']; $set_products = ['aloe-vera-koerper-set', 'baby-set', 'aloe-vera-gel-set']; $data = [ 'products' => Product::whereIn('slug', $products)->where('active', true)->whereJsonContains('show_on', '1')->get(), 'set_products' => Product::whereIn('slug', $set_products)->where('active', true)->whereJsonContains('show_on', '1')->get(), 'user_shop' => Util::getUserShop(), 'mylangs' => Shop::getLangChange(), 'site' => IqSite::find(1), ]; return view('web.index', $data); } public function domainCheck(){ die("checked"); } public function changeLang(){ $data = Request::all(); if(isset($data['change_country_id'])){ $mylangs = Shop::getLangChange(); foreach($mylangs as $code => $country){ if(strtolower($data['change_country_id']) === strtolower($code)){ \Session::put('user_init_country', strtolower($code)); \Session::forget('user_init_country_options'); \Session::put('locale', strtolower($data['change_locale_id'])); Shop::initUserShopLang($country); return back(); } } } } private function setIPinfo() { //wurde schon gesetzt //cache $country = strtolower(Shop::getIPDatabaseInfo()); if(\Session::has('user_init_country')){ return; } if(config('app.ipinfo')){ $country = strtolower(Shop::getIPDatabaseInfo()); if($country === 'de'){ //$locale de - init AT \Session::put('user_init_country', $country); return; } if($country === 'error'){ //$locale at - init AT $country = 'de'; } }else{ $country = 'de'; } //$locale = strtolower(\App::getLocale()); //ist default //sprache if(array_key_exists($country, \App\Services\UserService::getTransChange())){ \Session::put('user_init_country', $country); \Session::put('locale', $country); \App::setLocale($country); }else{ //default EN \Session::put('user_init_country', 'de'); \Session::put('locale', 'de'); \App::setLocale('de'); } //bestelland / versandland if(array_key_exists($country, Shop::getLangChange())){ \Session::put('user_init_country_options', $country); }else{ \Session::put('user_init_country_options', 'de'); } return redirect(route('home')); } public function site($site, $subsite = false, $product_slug = false) { $this->setIPInfo(); $subsite = trim($subsite, '/'); $product_slug = trim($product_slug, '/'); if($product_slug){ $category = Category::where('slug', $subsite)->where('active', true)->first(); $product = Product::where('slug', $product_slug)->where('active', true)->whereJsonContains('show_on', '1')->first(); if ($category && $product) { $data = [ 'user_shop' => Util::getUserShop(), 'mylangs' => Shop::getLangChange(), 'subsite' => $subsite, 'categories' => Category::where('active', true)->orderBy('pos', 'ASC')->get(), 'product' => $product, 'p_count' => Product::where('active', true)->whereJsonContains('show_on', '1')->count(), ]; return view('web.templates.produkte-show', $data); } } if($site === 'produkte'){ if($subsite || $subsite !== 'alle-produkte') { $category = Category::where('slug', $subsite)->where('active', true)->first(); if ($category) { $headline_image = false; if($category->headline_image_id && $category->iq_image && $category->iq_image->active){ $headline_image = $category->iq_image; } $product_categories = ProductCategory::where('category_id', $category->id)->whereHas('product', function ($query) use ($category) { $query->where('active', true)->whereJsonContains('show_on', '1'); })->orderBy('pos', 'DESC')->get(); $data = [ 'user_shop' => Util::getUserShop(), 'mylangs' => Shop::getLangChange(), 'subsite' => $subsite, 'categories' => Category::where('active', true)->orderBy('pos', 'DESC')->get(), 'products' => false, 'product_categories' => $product_categories, 'p_count' => Product::where('active', true)->whereJsonContains('show_on', '1')->count(), 'headline' => $category->getLang('headline'), 'headline_image' => $headline_image, ]; return view('web.templates.' . $site, $data); } } $data = [ 'user_shop' => Util::getUserShop(), 'mylangs' => Shop::getLangChange(), 'subsite' => 'alle-produkte', 'categories' => Category::where('active', true)->orderBy('pos', 'DESC')->get(), 'products' => Product::where('active', true)->whereJsonContains('show_on', '1')->orderBy('pos', 'DESC')->get(), 'product_categories' => false, 'p_count' => Product::where('active', true)->whereJsonContains('show_on', '1')->count(), 'headline' => __('website.productworld'), 'headline_image' => false, ]; return view('web.templates.'.$site, $data); } $data = [ 'user_shop' => Util::getUserShop(), 'mylangs' => Shop::getLangChange(), ]; if($subsite){ if(!view()->exists('web.templates.'.$subsite)){ abort(404); } return view('web.templates.'.$subsite, $data); } if(!view()->exists('web.templates.'.$site)){ abort(404); } return view('web.templates.'.$site, $data); } }