ldc-le-gaulois-pro/app/Http/Controllers/Fo/ExpertiseController.php

135 lines
4.2 KiB
PHP
Raw Normal View History

2022-10-26 16:53:58 +02:00
<?php
namespace App\Http\Controllers\Fo;
use App\Enums\ExpertiseProducts\ExpertiseProductPageEnum;
2023-01-12 11:35:06 +00:00
use App\Enums\Products\ProductSpeciesEnum;
use App\Http\Controllers\Controller;
2023-01-12 11:35:06 +00:00
use App\Models\Advice;
use App\Models\ExpertiseProduct;
2023-01-12 11:35:06 +00:00
use App\Models\Product;
2022-10-26 16:53:58 +02:00
class ExpertiseController extends Controller
{
/**
* Undocumented function
*
* @return \Illuminate\Contracts\View\View
*
2022-10-26 16:53:58 +02:00
*/
public function canard()
{
// Get VIP Products for this page.
2023-01-12 11:35:06 +00:00
$vip = ExpertiseProduct::where('page', ExpertiseProductPageEnum::duck()->value)->get();
$products = Product::where('status', true)
->where('species', ProductSpeciesEnum::canard()->value)
->inRandomOrder()
->limit(3)
->with('subrange.range')
->get();
$recipes = Advice::whereHas('products', function ($query) {
return $query->where('species', ProductSpeciesEnum::canard()->value);
})
->limit(3)
->get();
2023-01-12 11:35:06 +00:00
return view('fo.pages.expertise.canard', compact('vip', 'products', 'recipes'));
2022-10-26 16:53:58 +02:00
}
/**
* Undocumented function
*
* @return \Illuminate\Contracts\View\View
*/
public function dinde()
{
// Get VIP Products for this page.
2023-01-12 11:35:06 +00:00
$vip = ExpertiseProduct::where('page', ExpertiseProductPageEnum::turkey()->value)->get();
$products = Product::where('status', true)
->where('species', ProductSpeciesEnum::dinde()->value)
->inRandomOrder()
->limit(3)
->with('subrange.range')
->get();
$recipes = Advice::whereHas('products', function ($query) {
return $query->where('species', ProductSpeciesEnum::dinde()->value);
})
->limit(3)
->get();
2023-01-12 11:35:06 +00:00
return view('fo.pages.expertise.dinde', compact('vip', 'products', 'recipes'));
2022-10-26 16:53:58 +02:00
}
/**
* Undocumented function
*
* @return \Illuminate\Contracts\View\View
*/
public function lapin()
{
// Get VIP Products for this page.
2023-01-12 11:35:06 +00:00
$vip = ExpertiseProduct::where('page', ExpertiseProductPageEnum::rabbit()->value)->get();
$products = Product::where('status', true)
->where('species', ProductSpeciesEnum::lapin()->value)
->inRandomOrder()
->limit(3)
->with('subrange.range')
->get();
$recipes = Advice::whereHas('products', function ($query) {
return $query->where('species', ProductSpeciesEnum::lapin()->value);
})
->limit(3)
->get();
2023-01-12 11:35:06 +00:00
return view('fo.pages.expertise.lapin', compact('vip', 'products', 'recipes'));
2022-10-26 16:53:58 +02:00
}
/**
* Undocumented function
*
* @return \Illuminate\Contracts\View\View
*/
public function pintade()
{
// Get VIP Products for this page.
2023-01-12 11:35:06 +00:00
$vip = ExpertiseProduct::where('page', ExpertiseProductPageEnum::guineafowl()->value)->get();
$products = Product::where('status', true)
->where('species', ProductSpeciesEnum::pintade()->value)
->inRandomOrder()
->limit(3)
->with('subrange.range')
->get();
$recipes = Advice::whereHas('products', function ($query) {
return $query->where('species', ProductSpeciesEnum::pintade()->value);
})
->limit(3)
->get();
2023-01-12 11:35:06 +00:00
return view('fo.pages.expertise.pintade', compact('vip', 'products', 'recipes'));
2022-10-26 16:53:58 +02:00
}
/**
* Undocumented function
*
* @return \Illuminate\Contracts\View\View
*/
public function poulet()
{
// Get VIP Products for this page.
2023-01-12 11:35:06 +00:00
$vip = ExpertiseProduct::where('page', ExpertiseProductPageEnum::chicken()->value)->get();
$products = Product::where('status', true)
->where('species', ProductSpeciesEnum::poulet()->value)
->inRandomOrder()
->limit(3)
->with('subrange.range')
->get();
$recipes = Advice::whereHas('products', function ($query) {
return $query->where('species', ProductSpeciesEnum::poulet()->value);
})
->limit(3)
->get();
2023-01-12 11:35:06 +00:00
return view('fo.pages.expertise.poulet', compact('vip', 'products', 'recipes'));
2022-10-26 16:53:58 +02:00
}
}