Merge branch 'develop' into trunk

This commit is contained in:
Jérémy Munsch 2023-09-18 11:56:48 +02:00
commit f064b5ae1d
No known key found for this signature in database
GPG key ID: 18361AF3BFEC0FEC
23 changed files with 355 additions and 257 deletions

View file

@ -9,14 +9,18 @@ class Kernel extends ConsoleKernel
{ {
/** /**
* Define the application's command schedule. * Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/ */
protected function schedule(Schedule $schedule): void protected function schedule(Schedule $schedule): void
{ {
// $schedule->command('inspire')->hourly();
} }
/** /**
* Register the commands for the application. * Register the commands for the application.
*
* @return void
*/ */
protected function commands(): void protected function commands(): void
{ {

View file

@ -12,16 +12,14 @@ class Handler extends ExceptionHandler
* *
* @var array<class-string<\Throwable>, \Psr\Log\LogLevel::*> * @var array<class-string<\Throwable>, \Psr\Log\LogLevel::*>
*/ */
protected $levels = [ protected $levels = [];
];
/** /**
* A list of the exception types that are not reported. * A list of the exception types that are not reported.
* *
* @var array<int, class-string<\Throwable>> * @var array<int, class-string<\Throwable>>
*/ */
protected $dontReport = [ protected $dontReport = [];
];
/** /**
* A list of the inputs that are never flashed to the session on validation exceptions. * A list of the inputs that are never flashed to the session on validation exceptions.
@ -36,6 +34,8 @@ class Handler extends ExceptionHandler
/** /**
* Register the exception handling callbacks for the application. * Register the exception handling callbacks for the application.
*
* @return void
*/ */
public function register(): void public function register(): void
{ {

View file

@ -416,10 +416,10 @@ class ProductController extends Controller
break; break;
// * Date type parameters // * Date type parameters
case 'date_before': case 'date_before':
$q->whereDate('created_at', '>=', $queryParameter); $q->whereDate('created_at', '<=', $queryParameter);
break; break;
case 'date_after': case 'date_after':
$q->whereDate('created_at', '<=', $queryParameter); $q->whereDate('created_at', '>=', $queryParameter);
break; break;
// * Enums Array // * Enums Array
case 'claims': case 'claims':

View file

@ -14,7 +14,7 @@ class Kernel extends HttpKernel
* @var array<int, class-string|string> * @var array<int, class-string|string>
*/ */
protected $middleware = [ protected $middleware = [
// \App\Http\Middleware\TrustHosts::class, \App\Http\Middleware\TrustHosts::class,
\App\Http\Middleware\TrustProxies::class, \App\Http\Middleware\TrustProxies::class,
\Illuminate\Http\Middleware\HandleCors::class, \Illuminate\Http\Middleware\HandleCors::class,
\App\Http\Middleware\PreventRequestsDuringMaintenance::class, \App\Http\Middleware\PreventRequestsDuringMaintenance::class,

View file

@ -9,6 +9,9 @@ class Authenticate extends Middleware
{ {
/** /**
* Get the path the user should be redirected to when they are not authenticated. * Get the path the user should be redirected to when they are not authenticated.
*
* @param \Illuminate\Http\Request $request
* @return string|null
*/ */
protected function redirectTo(Request $request): ?string protected function redirectTo(Request $request): ?string
{ {

View file

@ -3,7 +3,6 @@
namespace App\Http\Middleware; namespace App\Http\Middleware;
use App\Providers\RouteServiceProvider; use App\Providers\RouteServiceProvider;
use Closure;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Auth;
use Symfony\Component\HttpFoundation\Response; use Symfony\Component\HttpFoundation\Response;
@ -13,10 +12,15 @@ class RedirectIfAuthenticated
/** /**
* Handle an incoming request. * Handle an incoming request.
* *
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next * @param \Illuminate\Http\Request $request
* @param \Closure(\Illuminate\Http\Request):(\Symfony\Component\HttpFoundation\Response) $next
* @param string ...$guards
* @return \Symfony\Component\HttpFoundation\Response
* @phpcs:disable Squiz.Commenting.FunctionComment.IncorrectTypeHint
*/ */
public function handle(Request $request, Closure $next, string ...$guards): Response public function handle(Request $request, \Closure $next, string ...$guards): Response
{ {
// phpcs:enable
$guards = empty($guards) ? [null] : $guards; $guards = empty($guards) ? [null] : $guards;
foreach ($guards as $guard) { foreach ($guards as $guard) {

View file

@ -10,13 +10,13 @@ class ValidateSignature extends Middleware
* The names of the query string parameters that should be ignored. * The names of the query string parameters that should be ignored.
* *
* @var array<int, string> * @var array<int, string>
*
* 'fbclid',
* 'utm_campaign',
* 'utm_content',
* 'utm_medium',
* 'utm_source',
* 'utm_term',
*/ */
protected $except = [ protected $except = [];
// 'fbclid',
// 'utm_campaign',
// 'utm_content',
// 'utm_medium',
// 'utm_source',
// 'utm_term',
];
} }

View file

@ -63,7 +63,10 @@ class StoreProductRequest extends FormRequest
'name' => 'required|string|min:3|max:255', 'name' => 'required|string|min:3|max:255',
'brand_id' => 'required|exists:brands,id', 'brand_id' => 'required|exists:brands,id',
'source' => [new Enum(SourceEnum::class)], 'source' => [new Enum(SourceEnum::class)],
'fair' => 'nullable|string|min:3|max:255|required_if:source,' . SourceEnum::showConsumer->value . ',' . SourceEnum::showCustomer->value . ',' . SourceEnum::showTrade->value, 'fair' => 'nullable|string|min:3|max:255|required_if:source,' .
SourceEnum::showConsumer->value . ',' .
SourceEnum::showCustomer->value . ',' .
SourceEnum::showTrade->value,
'shop' => 'nullable|string|min:3|max:255|required_if:source,' . SourceEnum::magazin->value, 'shop' => 'nullable|string|min:3|max:255|required_if:source,' . SourceEnum::magazin->value,
'catalogue' => 'nullable|string|min:3|max:255|required_if:source,' . SourceEnum::catalogArgumentary->value, 'catalogue' => 'nullable|string|min:3|max:255|required_if:source,' . SourceEnum::catalogArgumentary->value,
'gencod' => 'nullable|numeric|min:0', 'gencod' => 'nullable|numeric|min:0',

View file

@ -22,6 +22,7 @@ class ExportProduct implements ShouldQueue
/** /**
* Execute the job. * Execute the job.
* *
* @param integer $productId
* @return void * @return void
* @throws \Error If file storage config is wrong. * @throws \Error If file storage config is wrong.
* @throws \RuntimeException If the storage disk export is not local file system. * @throws \RuntimeException If the storage disk export is not local file system.
@ -50,7 +51,10 @@ class ExportProduct implements ShouldQueue
throw new \RuntimeException("The ZIP file cannot be created."); throw new \RuntimeException("The ZIP file cannot be created.");
} }
$dirName = Str::slug(Carbon::parse($product->updated_at)->format('y-m-d') . '-' . $product->user->lastname . '-' . $product->user->id); $dirName = Str::slug(
Carbon::parse($product->updated_at)->format('y-m-d') . '-' .
$product->user->lastname . '-' . $product->user->id
);
if (!$zip->addEmptyDir($dirName)) { if (!$zip->addEmptyDir($dirName)) {
throw new \RuntimeException("The folder cannot be created inside the ZIP."); throw new \RuntimeException("The folder cannot be created inside the ZIP.");

View file

@ -3,12 +3,9 @@
namespace App\Lib\Helpers; namespace App\Lib\Helpers;
use App\Enums\Pagination\ItemsPerPaginationEnum; use App\Enums\Pagination\ItemsPerPaginationEnum;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route; use Illuminate\Support\Facades\Route;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Str;
use Illuminate\Validation\Rule; use Illuminate\Validation\Rule;
use Illuminate\Validation\Rules\Enum; use Illuminate\Validation\Rules\Enum;
use Illuminate\Validation\ValidationException; use Illuminate\Validation\ValidationException;
@ -142,75 +139,15 @@ class ToolboxHelper
return $text; return $text;
} }
/**
* Generates an array from a dot separated string
*
* @param string $path
* @param mixed $value
* @param string $separator
* @return array
*/
public static function dotStringToNestedArray(string $path, $value, string $separator = '.'): array
{
$arr = $value;
$keys = array_reverse(explode($separator, $path));
foreach ($keys as $key) {
$arr = [$key => $arr];
}
return $arr;
}
/**
* Generate url using laravel route passing our group query if present
* This is used to keep ou group tracking
* Curd-policies is only used for root users as it cannot keep track of our group
* and validate things
*
* @param array|string $name
* @param mixed $parameters
* @param boolean $absolute
* @return string
* @throws \ErrorException If an object given as parameter is not a Model.
*/
public static function routeWithGroup($name, $parameters = [], bool $absolute = true): string
{
// * Handle if parameter if is an object.
if (\is_object($parameters)) {
$parents = \class_parents($parameters);
if ($parents === false or !\in_array(Model::class, $parents)) {
throw new \ErrorException(\sprintf(
'%s only support object of type %s',
__FUNCTION__,
Model::class
));
}
/** @var \Illuminate\Database\Eloquent\Model $model */
$model = $parameters;
$parameters = [Str::singular($model->getTable()) => $model];
}
// * Handle if parameter isnt and array like slug or else.
if (!is_array($parameters)) {
// * Best effort, result is not garantee.
$parameters = [$parameters];
}
// * Pass our group.
if ($group = Session::get('activeGroup', request()->group)) {
$parameters = array_merge($parameters, ['group' => $group]);
}
// * Call laravel route helper.
return route($name, $parameters, $absolute);
}
/** /**
* Mutltibyte string replace * Mutltibyte string replace
* @param mixed $search * @param string|array $search
* @param mixed $replace * @param string|array $replace
* @param mixed $subject * @param mixed $subject
* @param integer $count * @param integer $count
* @return mixed * @return mixed
*/ */
public static function mbReplace($search, $replace, $subject, int &$count = 0) public static function mbReplace(string|array $search, string|array $replace, mixed $subject, int &$count = 0)
{ {
if (!is_array($search) && is_array($replace)) { if (!is_array($search) && is_array($replace)) {
return false; return false;
@ -255,7 +192,7 @@ class ToolboxHelper
public static function assertFieldIsUnique( public static function assertFieldIsUnique(
string $table, string $table,
string $field, string $field,
$value, mixed $value,
?int $id = null, ?int $id = null,
?callable $query = null ?callable $query = null
) { ) {

View file

@ -11,6 +11,8 @@ class AppServiceProvider extends ServiceProvider
{ {
/** /**
* Bootstrap any application services. * Bootstrap any application services.
*
* @return void
*/ */
public function boot(): void public function boot(): void
{ {
@ -25,7 +27,7 @@ class AppServiceProvider extends ServiceProvider
return request()->getClientIp(); return request()->getClientIp();
} else { } else {
return request()->server('HTTP_X_FORWARDED_FOR') ?? return request()->server('HTTP_X_FORWARDED_FOR') ??
request()->getClientIp(); request()->getClientIp();
} }
}); });

View file

@ -2,7 +2,6 @@
namespace App\Providers; namespace App\Providers;
// use Illuminate\Support\Facades\Gate;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider; use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
class AuthServiceProvider extends ServiceProvider class AuthServiceProvider extends ServiceProvider
@ -12,12 +11,12 @@ class AuthServiceProvider extends ServiceProvider
* *
* @var array<class-string, class-string> * @var array<class-string, class-string>
*/ */
protected $policies = [ protected $policies = [];
// 'App\Models\Model' => 'App\Policies\ModelPolicy',
];
/** /**
* Register any authentication / authorization services. * Register any authentication / authorization services.
*
* @return void
*/ */
public function boot(): void public function boot(): void
{ {

View file

@ -21,6 +21,7 @@ class EventServiceProvider extends ServiceProvider
/** /**
* Register any events for your application. * Register any events for your application.
* @return void
*/ */
public function boot(): void public function boot(): void
{ {
@ -28,6 +29,7 @@ class EventServiceProvider extends ServiceProvider
/** /**
* Determine if events and listeners should be automatically discovered. * Determine if events and listeners should be automatically discovered.
* @return boolean
*/ */
public function shouldDiscoverEvents(): bool public function shouldDiscoverEvents(): bool
{ {

View file

@ -38,7 +38,7 @@ trait HasDocument
* @return void * @return void
* @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed * @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed
*/ */
private function validateDocument(string $attribute, $value, callable $fail) private function validateDocument(string $attribute, mixed $value, callable $fail)
{ {
if (!($useStorage = Storage::exists($value)) and !File::exists($value)) { if (!($useStorage = Storage::exists($value)) and !File::exists($value)) {
$fail(trans(":attribute n'existe pas dans le système de fichier")); $fail(trans(":attribute n'existe pas dans le système de fichier"));

View file

@ -123,7 +123,7 @@ trait HasPicture
* @return void * @return void
* @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed * @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed
*/ */
private function validatePicture(string $attribute, $value, callable $fail, object $sizes) private function validatePicture(string $attribute, mixed $value, callable $fail, object $sizes)
{ {
if (!($useStorage = Storage::exists($value)) and !File::exists($value)) { if (!($useStorage = Storage::exists($value)) and !File::exists($value)) {
$fail(trans(":attribute n'existe pas dans le système de fichier")); $fail(trans(":attribute n'existe pas dans le système de fichier"));
@ -239,7 +239,7 @@ trait HasPicture
*/ */
private function getUploadedFileFullPath(string $value, bool $useStorage): string private function getUploadedFileFullPath(string $value, bool $useStorage): string
{ {
return !$useStorage ? realpath($value) ?: $value : Storage::getAdapter()->applyPathPrefix($value); return !$useStorage ? (realpath($value) ?: $value) : Storage::path($value);
} }
/** /**

View file

@ -140,7 +140,7 @@ return [
'maintenance' => [ 'maintenance' => [
'driver' => 'file', 'driver' => 'file',
// 'store' => 'redis', // 'store' 'redis'
], ],
/* /*
@ -159,6 +159,7 @@ return [
/* /*
* Laravel Framework Service Providers... * Laravel Framework Service Providers...
*/ */
Illuminate\Auth\AuthServiceProvider::class, Illuminate\Auth\AuthServiceProvider::class,
Illuminate\Broadcasting\BroadcastServiceProvider::class, Illuminate\Broadcasting\BroadcastServiceProvider::class,
Illuminate\Bus\BusServiceProvider::class, Illuminate\Bus\BusServiceProvider::class,
@ -185,11 +186,13 @@ return [
/* /*
* Package Service Providers... * Package Service Providers...
*/ */
Krlove\EloquentModelGenerator\Provider\GeneratorServiceProvider::class, Krlove\EloquentModelGenerator\Provider\GeneratorServiceProvider::class,
/* /*
* Application Service Providers... * Application Service Providers...
*/ */
App\Providers\AppServiceProvider::class, App\Providers\AppServiceProvider::class,
App\Providers\AuthServiceProvider::class, App\Providers\AuthServiceProvider::class,
App\Providers\EventServiceProvider::class, App\Providers\EventServiceProvider::class,

View file

@ -64,11 +64,6 @@ return [
'driver' => 'eloquent', 'driver' => 'eloquent',
'model' => App\Models\User::class, 'model' => App\Models\User::class,
], ],
// 'users' => [
// 'driver' => 'database',
// 'table' => 'users',
// ],
], ],
/* /*

View file

@ -42,9 +42,8 @@ return [
'encrypted' => true, 'encrypted' => true,
'useTLS' => env('PUSHER_SCHEME', 'https') === 'https', 'useTLS' => env('PUSHER_SCHEME', 'https') === 'https',
], ],
'client_options' => [ // Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html .
// Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html 'client_options' => [],
],
], ],
'ably' => [ 'ably' => [

View file

@ -61,9 +61,7 @@ return [
env('MEMCACHED_USERNAME'), env('MEMCACHED_USERNAME'),
env('MEMCACHED_PASSWORD'), env('MEMCACHED_PASSWORD'),
], ],
'options' => [ 'options' => [],
// Memcached::OPT_CONNECT_TIMEOUT => 2000,
],
'servers' => [ 'servers' => [
[ [
'host' => env('MEMCACHED_HOST', '127.0.0.1'), 'host' => env('MEMCACHED_HOST', '127.0.0.1'),

View file

@ -101,8 +101,8 @@ return [
'charset' => 'utf8', 'charset' => 'utf8',
'prefix' => '', 'prefix' => '',
'prefix_indexes' => true, 'prefix_indexes' => true,
// 'encrypt' => env('DB_ENCRYPT', 'yes'), 'encrypt' => env('DB_ENCRYPT', 'yes'),
// 'trust_server_certificate' => env('DB_TRUST_SERVER_CERTIFICATE', 'false'), 'trust_server_certificate' => env('DB_TRUST_SERVER_CERTIFICATE', 'false'),
], ],
], ],

View file

@ -51,16 +51,16 @@ return [
'mailgun' => [ 'mailgun' => [
'transport' => 'mailgun', 'transport' => 'mailgun',
// 'client' => [ 'client' => [
// 'timeout' => 5, 'timeout' => 5,
// ], ],
], ],
'postmark' => [ 'postmark' => [
'transport' => 'postmark', 'transport' => 'postmark',
// 'client' => [ 'client' => [
// 'timeout' => 5, 'timeout' => 5,
// ], ],
], ],
'sendmail' => [ 'sendmail' => [

View file

@ -34,9 +34,15 @@ final class ProductFactory extends Factory
*/ */
public function definition(): array public function definition(): array
{ {
$source = \collect(SourceEnum::toArray())->random()->value; $source = \collect(SourceEnum::toArray())->random()->value;
$fair = $shop = $catalogue = null; $catalogue = null;
if ($source === SourceEnum::showConsumer->value || $source === SourceEnum::showCustomer->value || $source === SourceEnum::showTrade->value) { $fair = null;
$shop = null;
if (
$source === SourceEnum::showConsumer->value ||
$source === SourceEnum::showCustomer->value ||
$source === SourceEnum::showTrade->value
) {
$fair = fake()->word; $fair = fake()->word;
} elseif ($source === SourceEnum::magazin->value) { } elseif ($source === SourceEnum::magazin->value) {
$shop = fake()->word; $shop = fake()->word;

View file

@ -5,6 +5,7 @@ namespace Database\Seeders;
use App\Enums\KeywordCategoryEnum; use App\Enums\KeywordCategoryEnum;
use App\Models\Keyword; use App\Models\Keyword;
use Illuminate\Database\Seeder; use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Log;
class KeywordInitSeeder extends Seeder class KeywordInitSeeder extends Seeder
{ {
@ -12,186 +13,324 @@ class KeywordInitSeeder extends Seeder
* Run the database seeds. * Run the database seeds.
* *
* @return void * @return void
* @phpcs:disable Generic.Metrics.CyclomaticComplexity.MaxExceeded
*/ */
public function run() public function run()
{ {
// phpcs:enable
/** /**
* * INGREDIENTS * * INGREDIENTS
*/ */
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0]; $keyword = new Keyword();
$keyword->label = "Sophistication"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0];
$keyword->saveOrFail(); $keyword->label = "Sophistication";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0]; $keyword = new Keyword();
$keyword->label = "Exotisme"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0];
$keyword->saveOrFail(); $keyword->label = "Exotisme";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0]; $keyword = new Keyword();
$keyword->label = "Fun"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[0];
$keyword->saveOrFail(); $keyword->label = "Fun";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1]; $keyword = new Keyword();
$keyword->label = "Clean label/naturalité"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1];
$keyword->saveOrFail(); $keyword->label = "Clean label/naturalité";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1]; $keyword = new Keyword();
$keyword->label = "Végétarien/vegan"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1];
$keyword->saveOrFail(); $keyword->label = "Végétarien/vegan";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1]; $keyword = new Keyword();
$keyword->label = "Bien être"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[1];
$keyword->saveOrFail(); $keyword->label = "Bien être";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[2]; $keyword = new Keyword();
$keyword->label = "Solidarité"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[2];
$keyword->saveOrFail(); $keyword->label = "Solidarité";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[2]; $keyword = new Keyword();
$keyword->label = "Écologie"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[2];
$keyword->saveOrFail(); $keyword->label = "Écologie";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[3]; $keyword = new Keyword();
$keyword->label = "Emballage individuel"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[3];
$keyword->saveOrFail(); $keyword->label = "Emballage individuel";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[3]; $keyword = new Keyword();
$keyword->label = "Facilité de mise en oeuvre"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[3];
$keyword->saveOrFail(); $keyword->label = "Facilité de mise en oeuvre";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
/** /**
* * PRODUCTS * * PRODUCTS
*/ */
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4]; $keyword = new Keyword();
$keyword->label = "Sophistication"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
$keyword->saveOrFail(); $keyword->label = "Sophistication";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4]; $keyword = new Keyword();
$keyword->label = "Exotisme"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
$keyword->saveOrFail(); $keyword->label = "Exotisme";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4]; $keyword = new Keyword();
$keyword->label = "Variété des sens"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
$keyword->saveOrFail(); $keyword->label = "Variété des sens";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4]; $keyword = new Keyword();
$keyword->label = "Fun"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[4];
$keyword->saveOrFail(); $keyword->label = "Fun";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5]; $keyword = new Keyword();
$keyword->label = "Minceur"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5];
$keyword->saveOrFail(); $keyword->label = "Minceur";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5]; $keyword = new Keyword();
$keyword->label = "Énergie/Bien-être"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5];
$keyword->saveOrFail(); $keyword->label = "Énergie/Bien-être";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5]; $keyword = new Keyword();
$keyword->label = "Cosmétique"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[5];
$keyword->saveOrFail(); $keyword->label = "Cosmétique";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6]; $keyword = new Keyword();
$keyword->label = "Manipulation produit"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6];
$keyword->saveOrFail(); $keyword->label = "Manipulation produit";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6]; $keyword = new Keyword();
$keyword->label = "Gain de temps"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6];
$keyword->saveOrFail(); $keyword->label = "Gain de temps";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6]; $keyword = new Keyword();
$keyword->label = "Nomadisme"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[6];
$keyword->saveOrFail(); $keyword->label = "Nomadisme";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7]; $keyword = new Keyword();
$keyword->label = "Naturalité"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7];
$keyword->saveOrFail(); $keyword->label = "Naturalité";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7]; $keyword = new Keyword();
$keyword->label = "Végétal"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7];
$keyword->saveOrFail(); $keyword->label = "Végétal";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7]; $keyword = new Keyword();
$keyword->label = "Médical"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[7];
$keyword->saveOrFail(); $keyword->label = "Médical";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[8]; $keyword = new Keyword();
$keyword->label = "Solidarité"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[8];
$keyword->saveOrFail(); $keyword->label = "Solidarité";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[8]; $keyword = new Keyword();
$keyword->label = "Écologie"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[8];
$keyword->saveOrFail(); $keyword->label = "Écologie";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
/** /**
* * PACKAGING * * PACKAGING
*/ */
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9]; $keyword = new Keyword();
$keyword->label = "Sophistication"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9];
$keyword->saveOrFail(); $keyword->label = "Sophistication";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9]; $keyword = new Keyword();
$keyword->label = "Exotisme"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9];
$keyword->saveOrFail(); $keyword->label = "Exotisme";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9]; $keyword = new Keyword();
$keyword->label = "Fun"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[9];
$keyword->saveOrFail(); $keyword->label = "Fun";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10]; $keyword = new Keyword();
$keyword->label = "Manipulation produit"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10];
$keyword->saveOrFail(); $keyword->label = "Manipulation produit";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10]; $keyword = new Keyword();
$keyword->label = "Gain de temps"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10];
$keyword->saveOrFail(); $keyword->label = "Gain de temps";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10]; $keyword = new Keyword();
$keyword->label = "Nomadisme"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[10];
$keyword->saveOrFail(); $keyword->label = "Nomadisme";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[11]; $keyword = new Keyword();
$keyword->label = "Décor/forme"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[11];
$keyword->saveOrFail(); $keyword->label = "Décor/forme";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[11]; $keyword = new Keyword();
$keyword->label = "Matériaux"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[11];
$keyword->saveOrFail(); $keyword->label = "Matériaux";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
$keyword = new Keyword(); try {
$keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[12]; $keyword = new Keyword();
$keyword->label = "Écologie"; $keyword->keyword_cat = \collect(KeywordCategoryEnum::cases())[12];
$keyword->saveOrFail(); $keyword->label = "Écologie";
$keyword->saveQuietly();
} catch (\Illuminate\Database\QueryException $e) {
Log::debug($e->getMessage());
}
} }
} }