Compare commits
81 commits
addGoogleA
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c66cdbb8b5 | ||
|
|
858d5f1e4c | ||
|
|
8e4b9e2014 | ||
|
|
9f5159c964 | ||
|
|
b374f957da | ||
|
|
ee16395d6c | ||
|
|
3ab8003e02 | ||
|
|
d9aa9be2c5 | ||
|
|
b4322eeb8f | ||
|
|
38a99433a5 | ||
|
|
d8fdfe7a91 | ||
|
|
03e9643be1 | ||
|
|
a94bbdd7ff | ||
|
|
c4871b557e | ||
|
|
b48bb82202 | ||
|
|
a8ff6100a5 | ||
|
|
211bb914e5 | ||
|
|
70b7b011ec | ||
|
|
2860fa81ac | ||
|
|
a977f2486f | ||
|
|
366ac78c10 | ||
|
|
19e7525ac9 | ||
|
|
4ba8a73df9 | ||
|
|
55b6a78ab9 | ||
|
|
c914dc9371 | ||
|
|
18d9a6205b | ||
|
|
f5bc5af8e4 | ||
|
|
33c138d075 | ||
|
|
08fdafc62d | ||
|
|
7974600a4d | ||
|
|
91e8f49800 | ||
|
|
90b7db8911 | ||
|
|
30cbcb59bd | ||
|
|
3079d624ba | ||
|
|
074cd676d7 | ||
|
|
fa03aced3c | ||
|
|
3015b58919 | ||
|
|
7c72300ec4 | ||
|
|
edcfd1491f | ||
|
|
ccddbbbfc1 | ||
|
|
338b4c05c8 | ||
|
|
48c23d5cd7 | ||
|
|
768b2ec37b | ||
|
|
269c2fe949 | ||
|
|
60df3c60f8 | ||
|
|
24cf149d7e | ||
|
|
97a555eb20 | ||
|
|
1bc093a0a7 | ||
|
|
69bbc64773 | ||
|
|
317fbae26d | ||
|
|
05daf341fe | ||
|
|
1997b94c18 | ||
|
|
83e818d2ea | ||
|
|
4179ebb6c3 | ||
|
|
3fc1c2fb76 | ||
|
|
acc1dd3ada | ||
|
|
bd08ce5d69 | ||
|
|
8096ebaa4a | ||
| 76496154e5 | |||
| 10b6d98667 | |||
|
|
0493fd4063 | ||
|
|
269be8c678 | ||
|
|
9cc81d2a78 | ||
|
|
a5895e5dcc | ||
|
|
a6b97b2f41 | ||
|
|
77a8b9c23b | ||
|
|
dec399c251 | ||
|
|
01b6237db4 | ||
|
|
96ee6ca7dd | ||
|
|
32a7e70a68 | ||
|
|
eed5ffc5a1 | ||
|
|
a3c0cb81a8 | ||
|
|
5874835563 | ||
|
|
8be7e0f05f | ||
|
|
ccd27bb6ba | ||
|
|
987f320fe7 | ||
|
|
7b546e82cf | ||
|
|
57de4c9b2b | ||
|
|
c3a67c0e88 | ||
|
|
5983b13861 | ||
|
|
a27ebeb87e |
26 changed files with 1326 additions and 1408 deletions
78
app/Console/Commands/LdcWebStatusChecker.php
Normal file
78
app/Console/Commands/LdcWebStatusChecker.php
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use Illuminate\Console\Command;
|
||||
|
||||
/*
|
||||
* Command Name: LDC Web Status Checker
|
||||
* Description: Envoi des infos Serveur/Laravel vers LDC Web
|
||||
* Version: 1.1
|
||||
* Author: Vincent BRIDIER
|
||||
* Author URI: vincent.bridier@ldc.fr
|
||||
*/
|
||||
|
||||
class LdcWebStatusChecker extends Command
|
||||
{
|
||||
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'ldcweb:statuschecker';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Envoi des infos Serveur/Laravel vers LDC Web';
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$data = [];
|
||||
$data['uuid'] = config('ldcweb.project_uuid');
|
||||
|
||||
// Sitemap.xml ?
|
||||
if (file_exists(public_path() . '/sitemap.xml')) {
|
||||
$data['sitemap'] = 'true';
|
||||
} else {
|
||||
$data['sitemap'] = 'false';
|
||||
}
|
||||
|
||||
// Robots.txt ?
|
||||
if (file_exists(public_path() . '/robots.txt')) {
|
||||
$data['robots'] = 'true';
|
||||
} else {
|
||||
$data['robots'] = 'false';
|
||||
}
|
||||
|
||||
//Check logs
|
||||
$data['logs'] = 0;
|
||||
$patherror = storage_path('/logs');
|
||||
$files = glob($patherror . '/*.log');
|
||||
if (count($files) > 0) {
|
||||
foreach ($files as $file) {
|
||||
$data['logs'] = $data['logs'] + filesize($file);
|
||||
}
|
||||
}
|
||||
|
||||
$data['code']['version'] = app()->version();
|
||||
|
||||
// Send by cURL
|
||||
$url = 'https://ldc-web.ldc.fr/api/status-checker';
|
||||
$ch = curl_init($url);
|
||||
$payload = ['token' => 'CE8S52Qq7stf5k8frF4T', 'datas' => json_encode($data)];
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
||||
curl_exec($ch);
|
||||
curl_close($ch);
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
|
@ -244,11 +244,11 @@ class EmployeesController extends Controller
|
|||
|
||||
// Is employee locked down ?
|
||||
if ($employee->password_attempts >= 3) {
|
||||
SendEmployeeLockedDownMailToEmployee::dispatchAfterResponse(
|
||||
SendEmployeeLockedDownMailToEmployee::dispatch(
|
||||
new EmployeeLockedDown($employee),
|
||||
$employee
|
||||
);
|
||||
SendEmployeeLockedDownMailToSiteRH::dispatchAfterResponse(
|
||||
SendEmployeeLockedDownMailToSiteRH::dispatch(
|
||||
new EmployeeYourAccountIsLockedDown($employee),
|
||||
$employee
|
||||
);
|
||||
|
|
@ -278,15 +278,16 @@ class EmployeesController extends Controller
|
|||
|
||||
public function passwordForgottenSubmit(EmployeeForgottenPasswordRequest $request)
|
||||
{
|
||||
/** @var \App\Models\Employee */
|
||||
$employee = Employee::where('matricule', $request->matricule)->firstOrFail();
|
||||
$token = $employee->token ?? new EmployeeMailToken();
|
||||
$token->fill([
|
||||
'email' => $employee->email,
|
||||
'employee_id' => $employee->id
|
||||
]);
|
||||
/** @var \App\Models\EmployeeMailToken */
|
||||
$token = EmployeeMailToken::whereHas('employee', function ($q) use ($employee) {
|
||||
$q->where('id', $employee->id);
|
||||
})->firstOrNew();
|
||||
$token->email = $employee->email;
|
||||
$token->employee()->associate($employee);
|
||||
$token->saveOrFail();
|
||||
$token->employee()->associate($token);
|
||||
SendMailResetPasswordToEmployee::dispatchAfterResponse($employee);
|
||||
SendMailResetPasswordToEmployee::dispatchAfterResponse($employee, $token);
|
||||
return \redirect()->back()->with('successMail', true);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -155,7 +155,7 @@ class SondagesController extends Controller
|
|||
/** @var \app\Models\Employee */
|
||||
$employee = auth('employee')->user();
|
||||
if ($employee->hasAnweredToSondage($sondage)) {
|
||||
return view('front.sondages.saved', ['answered' => true]);
|
||||
return view('front.sondages.saved', ['answered' => true, 'sondage' => $sondage]);
|
||||
}
|
||||
return view('front.sondages.show', compact('sondage'));
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@
|
|||
namespace App\Http\Middleware;
|
||||
|
||||
use Illuminate\Auth\Middleware\Authenticate as Middleware;
|
||||
use Illuminate\Support\Facades\Session;
|
||||
|
||||
class Authenticate extends Middleware
|
||||
{
|
||||
|
|
@ -19,6 +20,7 @@ class Authenticate extends Middleware
|
|||
'employee' => route('employees.login')
|
||||
];
|
||||
if (! $request->expectsJson()) {
|
||||
Session::flash('message', trans('Vous devez vous identifier pour àccéder à cette page'));
|
||||
foreach ($request->route()->gatherMiddleware() as $middleware) {
|
||||
if (\is_string($middleware) and strpos($middleware, 'auth:') !== false) {
|
||||
$route = $logins[str_replace('auth:', '', $middleware)] ?? null;
|
||||
|
|
|
|||
|
|
@ -6,6 +6,8 @@ use App\Models\Site;
|
|||
use Closure;
|
||||
use Illuminate\Database\Eloquent\ModelNotFoundException;
|
||||
use App\Enums\Role;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
use Illuminate\Support\Facades\Session;
|
||||
|
||||
class UserSite
|
||||
{
|
||||
|
|
@ -21,29 +23,35 @@ class UserSite
|
|||
/** @var \App\Models\User */
|
||||
$user = auth()->user();
|
||||
try {
|
||||
if (!Site::whereId($user->selected_site_id)->exists()) {
|
||||
$user->selected_site_id = null;
|
||||
$user->save();
|
||||
}
|
||||
|
||||
if ($request->query('userSite')) {
|
||||
/** @var \App\Models\Site|null */
|
||||
$site = $user->role->equals(Role::admin()) ?
|
||||
Site::whereId($request->query('userSite'))->first() :
|
||||
$user->sites()->where('site_id', $request->query('userSite'))->first();
|
||||
if ($site) {
|
||||
$user->selected_site_id = $site->id;
|
||||
$user->saveOrFail();
|
||||
}
|
||||
}
|
||||
|
||||
// Select user site
|
||||
if (!$user->selected_site_id) {
|
||||
/** @var \App\Models\Site */
|
||||
$site = $user->role->equals(Role::admin()) ?
|
||||
Site::firstOrFail() : $user->sites()->firstOrFail();
|
||||
$user->selected_site_id = $site->id;
|
||||
$user->saveOrFail();
|
||||
}
|
||||
if ($request->query('userSite')) {
|
||||
$site = $user->role->equals(Role::admin()) ?
|
||||
Site::whereId($request->query('userSite'))->firstOrFail() :
|
||||
$user->sites()->where('site_id', $request->query('userSite'))->firstOrFail();
|
||||
$user->selected_site_id = $site->id;
|
||||
$user->saveOrFail();
|
||||
} elseif (!Site::where('id', $user->selected_site_id)->exists()) {
|
||||
$site = $user->role->equals(Role::admin()) ?
|
||||
Site::whereId($request->query('userSite'))->firstOrFail() :
|
||||
$user->sites()->where('site_id', $request->query('userSite'))
|
||||
->firstOrFail();
|
||||
$user->selected_site_id = $site->id;
|
||||
$user->saveOrFail();
|
||||
}
|
||||
} catch (ModelNotFoundException $e) {
|
||||
abort(400, 'Vous n\'avez pas de site administrable');
|
||||
Log::warning("$user->name n'as pas de site administrable.");
|
||||
auth()->logout();
|
||||
Session::flash('error', "$user->name n'as pas de site administrable.");
|
||||
return \response()->redirectToRoute('bo.login');
|
||||
}
|
||||
return $next($request);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ namespace App\Jobs;
|
|||
|
||||
use App\Mail\EmployeePasswordResetMail;
|
||||
use App\Models\Employee;
|
||||
use App\Models\EmployeeMailToken;
|
||||
use Illuminate\Bus\Queueable;
|
||||
use Illuminate\Contracts\Queue\ShouldQueue;
|
||||
use Illuminate\Foundation\Bus\Dispatchable;
|
||||
|
|
@ -19,16 +20,22 @@ class SendMailResetPasswordToEmployee implements ShouldQueue
|
|||
use Queueable;
|
||||
use SerializesModels;
|
||||
|
||||
/** @var \App\Models\Employee */
|
||||
protected $employee;
|
||||
|
||||
/** @var \App\Models\EmployeeMailToken */
|
||||
protected $token;
|
||||
|
||||
/**
|
||||
* Create a new job instance.
|
||||
*
|
||||
* @return void
|
||||
* @param \App\Models\Employee $employee
|
||||
* @param \App\Models\EmployeeMailToken $token
|
||||
*/
|
||||
public function __construct(Employee $employee)
|
||||
public function __construct(Employee $employee, EmployeeMailToken $token)
|
||||
{
|
||||
$this->employee = $employee;
|
||||
$this->token = $token;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -38,7 +45,7 @@ class SendMailResetPasswordToEmployee implements ShouldQueue
|
|||
*/
|
||||
public function handle()
|
||||
{
|
||||
Mail::to(['email' => $this->employee->token->email])->send(new EmployeePasswordResetMail($this->employee));
|
||||
Mail::to(['email' => $this->token->email])->send(new EmployeePasswordResetMail($this->employee));
|
||||
Log::debug(sprintf('Sent %s to %s', EmployeePasswordResetMail::class, config('mail.contactsList.contact')));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,8 +34,8 @@ class EmployeeLockedDown extends Mailable
|
|||
{
|
||||
return $this
|
||||
->subject(sprintf('%s : Un compte salarié vient d\'être verrouillé', config('app.name')))
|
||||
->view('emails.employee-lockedDown')
|
||||
->text('emails.employee-lockedDown-plain')
|
||||
->view('emails.employee-own-lockedDown')
|
||||
->text('emails.employee-own-lockedDown-plain')
|
||||
->with('employee', $this->employee);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,8 +34,8 @@ class EmployeeYourAccountIsLockedDown extends Mailable
|
|||
{
|
||||
return $this
|
||||
->subject(sprintf('%s : Votre compte salarié vient d\'être verrouillé', config('app.name')))
|
||||
->view('emails.employee-own-lockedDown')
|
||||
->text('emails.employee-own-lockedDown-plain')
|
||||
->view('emails.employee-lockedDown')
|
||||
->text('emails.employee-lockedDown-plain')
|
||||
->with('employee', $this->employee);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -179,6 +179,16 @@ class Site extends Model
|
|||
parent::__construct($attributes);
|
||||
}
|
||||
|
||||
protected static function booted()
|
||||
{
|
||||
static::deleted(function (self $model) {
|
||||
User::whereSelectedSiteId($model->id)->get()
|
||||
->map(function (User $user) {
|
||||
$user->selected_site_id = null;
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Has one Societe
|
||||
*
|
||||
|
|
@ -206,7 +216,7 @@ class Site extends Model
|
|||
*/
|
||||
public function users()
|
||||
{
|
||||
return $this->belongsToMany(Site::class);
|
||||
return $this->belongsToMany(User::class, 'user_site');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -28,9 +28,7 @@ class AppServiceProvider extends ServiceProvider
|
|||
public function boot()
|
||||
{
|
||||
// LOCAL HTTPS FIX
|
||||
if (config('app.env') !== 'local') {
|
||||
URL::forceScheme('https');
|
||||
}
|
||||
URL::forceScheme('https');
|
||||
// HA PROXY FIX
|
||||
App::singleton('clientIp', function () {
|
||||
if (config('app.env') === 'local') {
|
||||
|
|
|
|||
|
|
@ -12,9 +12,9 @@
|
|||
"fruitcake/laravel-cors": "^2.0",
|
||||
"guzzlehttp/guzzle": "^7.0.1",
|
||||
"htmlmin/htmlmin": "^8.0",
|
||||
"kwaadpepper/crud-policies": "^0.2.0",
|
||||
"kwaadpepper/enum": "^2.0",
|
||||
"kwaadpepper/exception-handler": "^0.0.1",
|
||||
"kwaadpepper/crud-policies": "^0.4.5",
|
||||
"kwaadpepper/enum": "^2.1",
|
||||
"kwaadpepper/exception-handler": "^0.0.9",
|
||||
"kwaadpepper/image-resizer": "^0.0.3",
|
||||
"laravel/framework": "^8.12",
|
||||
"laravel/tinker": "^2.5",
|
||||
|
|
@ -66,7 +66,11 @@
|
|||
"config": {
|
||||
"optimize-autoloader": true,
|
||||
"preferred-install": "dist",
|
||||
"sort-packages": true
|
||||
"sort-packages": true,
|
||||
"allow-plugins": {
|
||||
"dealerdirect/phpcodesniffer-composer-installer": true,
|
||||
"composer/package-versions-deprecated": true
|
||||
}
|
||||
},
|
||||
"minimum-stability": "dev",
|
||||
"prefer-stable": true
|
||||
|
|
|
|||
2447
composer.lock
generated
2447
composer.lock
generated
File diff suppressed because it is too large
Load diff
|
|
@ -19,9 +19,7 @@ return [
|
|||
|
||||
'allowed_methods' => ['*'],
|
||||
|
||||
'allowed_origins' => ['
|
||||
http://portsalaries.test
|
||||
'],
|
||||
'allowed_origins' => ['*'],
|
||||
|
||||
'allowed_origins_patterns' => [],
|
||||
|
||||
|
|
|
|||
|
|
@ -12,6 +12,6 @@ return [
|
|||
* so you can receive email if things go mad
|
||||
*/
|
||||
'contactsList' => [
|
||||
'serviceweb' => env('MAIL_LIST_SERVICEWEB', 'equipe.web@ldc.fr')
|
||||
env('MAIL_LIST_SERVICEWEB', 'equipe.web@ldc.fr')
|
||||
]
|
||||
];
|
||||
|
|
|
|||
5
config/ldcweb.php
Normal file
5
config/ldcweb.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'project_uuid' => env('PROJECT_UUID')
|
||||
];
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Database\Schema\Blueprint;
|
||||
use Illuminate\Support\Facades\Schema;
|
||||
|
||||
class ChangeDeleteRestictionPivotUserSite extends Migration
|
||||
{
|
||||
/**
|
||||
* Run the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function up()
|
||||
{
|
||||
Schema::table('user_site', function (Blueprint $table) {
|
||||
$table->dropForeign(['site_id']);
|
||||
$table->foreign('site_id')->references('id')->on('sites')
|
||||
->cascadeOnDelete();
|
||||
});
|
||||
}
|
||||
|
||||
/**
|
||||
* Reverse the migrations.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function down()
|
||||
{
|
||||
//
|
||||
}
|
||||
}
|
||||
13
resources/lang/en/models.php
Normal file
13
resources/lang/en/models.php
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'classes' => [
|
||||
'societes' => 'Societies',
|
||||
'employees' => 'Employees',
|
||||
'plannings' => 'Plannings',
|
||||
'poles' => 'Poles',
|
||||
'sites' => 'Sites',
|
||||
'sondages' => 'Sondages',
|
||||
'users' => 'Users',
|
||||
]
|
||||
];
|
||||
13
resources/lang/fr/models.php
Normal file
13
resources/lang/fr/models.php
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<?php
|
||||
|
||||
return [
|
||||
'classes' => [
|
||||
'societes' => 'Sociétés',
|
||||
'employees' => 'Salariés',
|
||||
'plannings' => 'Plannings',
|
||||
'poles' => 'Poles',
|
||||
'sites' => 'Sites',
|
||||
'sondages' => 'Sondages',
|
||||
'users' => 'Utilisateurs',
|
||||
]
|
||||
];
|
||||
14
resources/sass/_classes.scss
vendored
14
resources/sass/_classes.scss
vendored
|
|
@ -9,4 +9,16 @@
|
|||
#siteid {
|
||||
color: white;
|
||||
margin-right: 100px;
|
||||
}
|
||||
}
|
||||
|
||||
.alertMessage {
|
||||
text-align: center;
|
||||
max-width: 80%;
|
||||
min-width: 15rem;
|
||||
margin: 1rem auto;
|
||||
padding: 0.5rem 1rem;
|
||||
background-color: #e5e2e2;
|
||||
font-weight: bold;
|
||||
border-radius: 0.4rem;
|
||||
font-family: Tahoma;
|
||||
}
|
||||
|
|
|
|||
2
resources/sass/back.scss
vendored
2
resources/sass/back.scss
vendored
|
|
@ -1,4 +1,4 @@
|
|||
@import "_import";
|
||||
@import "./_import";
|
||||
|
||||
@import "layouts/backend/top_nav";
|
||||
|
||||
|
|
|
|||
1
resources/sass/front.scss
vendored
1
resources/sass/front.scss
vendored
|
|
@ -1,2 +1,3 @@
|
|||
@import "~swiper/swiper.min";
|
||||
@import "front/style.sass";
|
||||
@import "./_import";
|
||||
|
|
|
|||
1
resources/sass/front_login.scss
vendored
1
resources/sass/front_login.scss
vendored
|
|
@ -1,2 +1,3 @@
|
|||
@import "~swiper/swiper.min";
|
||||
@import "front/styleLogin.sass";
|
||||
@import "./_import";
|
||||
|
|
|
|||
|
|
@ -29,4 +29,4 @@
|
|||
<!-- STYLES -->
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css" integrity="sha256-hHKA3d/HttC8OW3Sl093W8DoZudhHJDj++kZYo6MLzA=" crossorigin="anonymous">
|
||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/sweetalert2@11.0.16/dist/sweetalert2.min.css" integrity="sha256-qpXwccFYncH5gTqXFe9EXZ8QeDw1Re68bbNVfFZzIzg=" crossorigin="anonymous">
|
||||
<link rel="stylesheet" href="{{ asset('css/preload-back.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('css/preload-back.css') }}">
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
</head>
|
||||
<body>
|
||||
@include("layouts.frontend.header")
|
||||
<!--@include('layouts.frontend.message')-->
|
||||
@include('layouts.frontend.message')
|
||||
@yield('content')
|
||||
@include("layouts.frontend.footer")
|
||||
@stack('scriptsConstants')
|
||||
|
|
|
|||
|
|
@ -24,8 +24,8 @@
|
|||
@preload('mix-manifest.json')
|
||||
|
||||
<!-- STYLES -->
|
||||
<link rel="stylesheet" href="{{ asset('css/preload-front_login.css') }}">
|
||||
<link rel="stylesheet" href="{{ asset('css/preload-front.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('css/preload-front_login.css') }}">
|
||||
<link rel="stylesheet" href="{{ mix('css/preload-front.css') }}">
|
||||
<style>
|
||||
:root {
|
||||
@if(isset($societe->colors['primary']))
|
||||
|
|
@ -53,4 +53,4 @@
|
|||
}
|
||||
gtag('js', new Date());
|
||||
gtag('config', 'G-PTNNFW0ZE1');
|
||||
</script>
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
@if(session('message'))
|
||||
<div>
|
||||
<div class="alertMessage">
|
||||
{{ session('message') }}
|
||||
</div>
|
||||
@endif
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue