SYNC 11 Settings company + name usage

This commit is contained in:
Jérémy Munsch 2023-12-01 16:13:56 +01:00
parent 5374c26859
commit 79ee185e1c
No known key found for this signature in database
GPG key ID: 18361AF3BFEC0FEC
19 changed files with 94 additions and 28 deletions

View file

@ -52,6 +52,8 @@ class UpdateSettingsRequest extends FormRequest
{
return [
'name' => 'required|string|min:3|max:255',
'company' => 'required|string|min:3|max:255',
'start_date' => 'required|date',
'end_date' => 'required|date',
'nb_participation_player' => 'required|numeric|min:0',
@ -101,6 +103,7 @@ class UpdateSettingsRequest extends FormRequest
{
return [
'name' => trans('validation.attributes.name'),
'company' => trans('validation.custom.company'),
'start_date' => trans('validation.custom.start_date'),
'end_date' => trans('validation.custom.end_date'),
'nb_participation_player' => trans('validation.custom.nb_participation_player'),

View file

@ -33,7 +33,9 @@ class NotifAdmin extends Mailable implements ShouldQueue
*/
public function build()
{
$msg = $this->msg;
return $this->subject(config('app.name') . " : Erreur")->view('front.basic.notif-admin', compact('msg'));
/** @var \App\Models\Settings */
$settings = app(Settings::class);
$msg = $this->msg;
return $this->subject("{$settings->name} : Erreur")->view('front.basic.notif-admin', compact('msg'));
}
}

View file

@ -8,7 +8,8 @@ use Illuminate\Database\Eloquent\Model;
/**
* Settings.
*
* @property string $name Name
* @property string $name The game name
* @property string $company Name of the company that organizes the game
* @property \Illuminate\Support\Carbon $start_date Start date of the game
* @property \Illuminate\Support\Carbon $end_date End date of the game
* @property int $nb_participation_player Max paticipation per player
@ -41,6 +42,7 @@ class Settings extends Model
*/
protected $fillable = [
'name',
'company',
'start_date',
'end_date',
'nb_participation_player',

View file

@ -28,12 +28,15 @@ class DestroyCustomer extends Notification
*/
public function toMail(object $notifiable): MailMessage
{
/** @var \App\Models\Settings */
$settings = app(Settings::class);
/** @var string $first_name */
$first_name = $notifiable->api_data->firstname;
return (new MailMessage())
->subject(trans('Supression du compte - :site_name', [
'site_name' => config('theme.site_name')
'site_name' => $settings->name
]))
->greeting(trans('Bonjour :first_name', ['first_name' => $first_name]))
->line(trans(
@ -42,7 +45,7 @@ class DestroyCustomer extends Notification
Vous pourrez le réactiver durant ce délai si vous le
souhaitez en vous reconnectant.",
[
'site_name' => config('app.name')
'site_name' => $settings->name
]
));
}

View file

@ -29,10 +29,13 @@ class DestroyedCustomer extends Notification
*/
public function toMail(object $notifiable): MailMessage
{
/** @var \App\Models\Settings */
$settings = app(Settings::class);
// phpcs:enable
return (new MailMessage())
->subject(trans('Votre compte est suprimé - :site_name', [
'site_name' => config('app.name')
'site_name' => $settings->name
]))
->greeting('Bonjour')
->line(trans(
@ -40,7 +43,7 @@ class DestroyedCustomer extends Notification
si vous aviez effectué une commande elle sera bien sûr toujours honorée. Les commandes associés
a votre compte continueront d'exister mais les données de votre compte ont bien été supprimées.",
[
'site_name' => config('app.name')
'site_name' => $settings->name
]
));
}

View file

@ -47,17 +47,20 @@ class ResetPassword extends NotificationsResetPassword
public function toMail($notifiable)
{
// phpcs:enable
/** @var \App\Models\Settings */
$settings = app(Settings::class);
/** @var \App\Models\Customer\Customer $notifiable */
$resetUrl = $this->resetUrl($notifiable);
/** @var string $first_name */
$first_name = $notifiable->api_data->firstname;
return (new MailMessage())
->subject(trans('Mot de passe oublié - :site_name', ['site_name' => config('app.name')]))
->subject(trans('Mot de passe oublié - :site_name', ['site_name' => $settings->name]))
->greeting(trans('Bonjour :first_name', ['first_name' => $first_name]))
->line(trans(
'Afin réinitialiser votre mot de passe pour vous connecter à :site_name, cliquez sur le lien suivant :',
['site_name' => config('app.name')]
['site_name' => $settings->name]
))
/** @var string $verificationUrl */
->action(trans('Réinitialisez votre mot de passe'), $resetUrl);

View file

@ -28,16 +28,19 @@ class UpdateEmail extends Notification
*/
public function toMail(object $notifiable): MailMessage
{
/** @var \App\Models\Settings */
$settings = app(Settings::class);
/** @var string $first_name */
$first_name = $notifiable->api_data->firstname;
return (new MailMessage())
->subject(trans('Mise à jour de l\'email - :site_name', [
'site_name' => config('app.name')
'site_name' => $settings->name
]))
->greeting(trans('Bonjour :first_name', ['first_name' => $first_name]))
->line(trans('L\'email associé à votre compte :site_name vient d\'être modifié.', [
'site_name' => config('app.name')
'site_name' => $settings->name
]));
}
}

View file

@ -28,16 +28,19 @@ class UpdatePassword extends Notification
*/
public function toMail(object $notifiable): MailMessage
{
/** @var \App\Models\Settings */
$settings = app(Settings::class);
/** @var string $first_name */
$first_name = $notifiable->api_data->firstname;
return (new MailMessage())
->subject(trans('Mise à jour du mot de passe - :site_name', [
'site_name' => config('app.name')
'site_name' => $settings->name
]))
->greeting(trans('Bonjour :first_name', ['first_name' => $first_name]))
->line(trans("Le mot de passe associé à votre compte :site_name vient d'être modifié.", [
'site_name' => config('app.name')
'site_name' => $settings->name
]));
}
}

View file

@ -47,6 +47,9 @@ class VerifyEmail extends NotificationsVerifyEmail
public function toMail($notifiable)
{
// phpcs:enable
/** @var \App\Models\Settings */
$settings = app(Settings::class);
/** @var \App\Models\Customer\Customer $notifiable */
/** @var string $verificationUrl */
$verificationUrl = $this->verificationUrl($notifiable);
@ -55,7 +58,7 @@ class VerifyEmail extends NotificationsVerifyEmail
return (new MailMessage())
->success()
->subject(trans("Inscription - :site_name", ['site_name' => config('app.name')]))
->subject(trans("Inscription - :site_name", ['site_name' => $settings->name]))
->greeting(trans('Bonjour :first_name', ['first_name' => $first_name]))
->line(trans('Vous n\'êtes plus qu\'à un clic de votre inscription... '))
->line(trans('Pour finaliser votre inscription, merci de cliquer sur le lien ci-dessous :'))

View file

@ -2,13 +2,16 @@
return array_replace_recursive(
[
'theme_name' => 'basic',
'site_name' => 'Gen Game Web Basic',
'theme_name' => 'base',
'models' => [
'product' => [
'picture_maxwidth' => 500,
'picture_maxheight' => 500,
]
'products' => [
'picture_max_width' => 550,
'picture_max_height' => 550,
],
'ranges' => [
'picture_max_width' => 476,
'picture_max_height' => 355,
],
],
],
require(resource_path('theme/mounted/theme.config.php')),

View file

@ -15,7 +15,8 @@ class CreateSettings extends Migration
{
Schema::create('settings', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('name')->comment('Nom du jeu');
$table->string('company')->comment('Nom de la société qui organise le jeu');
$table->dateTime('start_date');
$table->dateTime('end_date');
$table->integer('nb_participation_player');

View file

@ -18,6 +18,7 @@ class SettingsSeeder extends Seeder
DB::table('settings')->truncate();
$settings = new Settings();
$settings->name = 'Nom du jeu';
$settings->company = 'Société';
$settings->start_date = now();
$settings->end_date = now()->addDays(30);
$settings->nb_participation_player = 30;

View file

@ -1,7 +1,7 @@
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>{{ config('app.name') }} - @yield('title')</title>
<title>{{ $settingsGlobal->name }} - @yield('title')</title>
<meta name="description" content="@yield('description')">
<meta name="viewport" content="width=device-width, initial-scale=1">

View file

@ -2,7 +2,7 @@
<div class="container">
<a class="navbar-brand" data-bs-toggle="tooltip" data-bs-placement="bottom" href="{{ route('fo.homepage') }}"
title="{{ __('Accéder au front du projet') }}" target="_blank">
{{ config('app.name', 'Laravel') }}
{{ $settingsGlobal->name }}
</a>
@auth('backend')
<button class="navbar-toggler" data-bs-toggle="collapse" data-bs-target="#navbar-supported-content" type="button"

View file

@ -12,7 +12,9 @@
<div class="col-12">
@include('back::partials.inputs.varchar', [
'id' => 'settingsName',
'label' => Str::ucfirst(__('validation.attributes.name')),
'label' => __(':field du jeu', [
'field' => Str::ucfirst(__('validation.attributes.name')),
]),
'hasWordCounter' => true,
'name' => 'name',
'required' => true,
@ -32,6 +34,36 @@
</div>
</fieldset>
</div>
{{-- COMPANY --}}
<div class="col-12 col-md-6 mb-3">
<fieldset class="h-100 border p-3">
<legend>{{ Str::ucfirst(__('validation.custom.company')) }}</legend>
<div class="row">
<div class="col-12">
@include('back::partials.inputs.varchar', [
'id' => 'settingsCompany',
'label' => __('Nom de la :field qui organise le jeu', [
'field' => Str::ucfirst(__('validation.custom.company')),
]),
'hasWordCounter' => true,
'name' => 'company',
'required' => true,
'model' => $settingsModel ?? null,
'helper' => __('validation.between.string', [
'attribute' => __('Nom de la :field', [
'field' => Str::ucfirst(__('validation.custom.company')),
]),
'min' => 3,
'max' => 255,
]),
'placeholder' => __(':field', [
'field' => Str::ucfirst(__('validation.custom.company')),
]),
])
</div>
</div>
</fieldset>
</div>
{{-- START_DATE --}}
<div class="col-12 col-md-6 mb-3">
<fieldset class="h-100 border p-3">

View file

@ -8,5 +8,6 @@
@section('button', true)
@section('image')
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.svg') }}" alt="{{ config('app.name') }}">
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.svg') }}"
alt="{{ $settingsGlobal->name ?? config('app.name') }}">
@endsection

View file

@ -8,5 +8,6 @@
@section('button', true)
@section('image')
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.svg') }}" alt="{{ config('app.name') }}">
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.svg') }}"
alt="{{ $settingsGlobal->name ?? config('app.name') }}">
@endsection

View file

@ -6,5 +6,6 @@
@section('submessage', __('Le site est en maintenance, nous reviendrons...'))
@section('image')
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.svg') }}" alt="{{ config('app.name') }}">
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.svg') }}"
alt="{{ $settingsGlobal->name ?? config('app.name') }}">
@endsection

View file

@ -4,7 +4,8 @@
@if (trim($slot) === 'Laravel')
<img class="logo" src="https://laravel.com/img/notification-logo.png" alt="Laravel Logo">
@else
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.png') }}" alt="{{ config('app.name') }}">
<img class="logo img-fluid" src="{{ Vite::asset('resources/assets/images/engine/logo.png') }}"
alt="{{ $settingsGlobal->name ?? config('app.name') }}">
{{ $slot }}
@endif
</a>