131 lines
No EOL
5.2 KiB
PHP
Executable file
131 lines
No EOL
5.2 KiB
PHP
Executable file
<?php
|
|
|
|
namespace App\Http\Controllers\Web;
|
|
|
|
|
|
use Yard;
|
|
use Request;
|
|
use App\Models\IqSite;
|
|
use App\Services\Shop;
|
|
use App\Services\Util;
|
|
use App\Models\Product;
|
|
use App\Models\Category;
|
|
use App\Models\ProductCategory;
|
|
use App\Http\Controllers\Controller;
|
|
|
|
class SiteController extends Controller
|
|
{
|
|
|
|
public function index()
|
|
{
|
|
$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)){
|
|
Shop::initUserShopLang($country);
|
|
return back();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function site($site, $subsite = false, $product_slug = false)
|
|
{
|
|
$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' => 'Produktwelt',
|
|
'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);
|
|
}
|
|
|
|
|
|
} |