routes and bo
Squashed commit of the following:
commit f4329fa095d9b2049d0c771caa4fa4a924f870c3
Author: Olivier Legat <olivier.legat@ldc.fr>
Date: Tue Feb 16 20:35:54 2021 +0100
auth and bo skeleton
commit 1b9d61724bc6734e480a3601c42eaa5bb6491615
Author: Olivier Legat <olivier.legat@ldc.fr>
Date: Mon Feb 15 15:45:03 2021 +0100
syntax
commit fa105067a1794fc230b5a7c2cf6e0cca58a01c25
Author: Olivier Legat <olivier.legat@ldc.fr>
Date: Mon Feb 15 15:42:28 2021 +0100
restore app blade
commit fb16200ed13433d4889ce59d9dad86d5fb257ba6
Author: Olivier Legat <olivier.legat@ldc.fr>
Date: Mon Feb 15 15:30:43 2021 +0100
front routes
This commit is contained in:
parent
1b560cd4bd
commit
9b209d741f
52 changed files with 114912 additions and 248 deletions
62
app/Console/Commands/CreateAdmin.php
Normal file
62
app/Console/Commands/CreateAdmin.php
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
<?php
|
||||
|
||||
namespace App\Console\Commands;
|
||||
|
||||
use App\Models\User;
|
||||
use Illuminate\Console\Command;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class CreateAdmin extends Command
|
||||
{
|
||||
/**
|
||||
* The name and signature of the console command.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $signature = 'create:admin';
|
||||
|
||||
/**
|
||||
* The console command description.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $description = 'Command description';
|
||||
|
||||
/**
|
||||
* Create a new command instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
* Execute the console command.
|
||||
*
|
||||
* @return int
|
||||
*/
|
||||
public function handle()
|
||||
{
|
||||
$pwd = $this->secret('What is the password?');
|
||||
|
||||
$user = new User();
|
||||
$user->civility = 1;
|
||||
$user->firstname = "Informatique";
|
||||
$user->lastname = "Internet";
|
||||
$user->birth_date = now();
|
||||
$user->email = "informatique.internet@ldc.fr";
|
||||
$user->password = Hash::make($pwd);
|
||||
$user->address = "-";
|
||||
$user->town = "Le Mans";
|
||||
$user->postal_code = "72000";
|
||||
$user->country = "France";
|
||||
$user->email_verify_token = "-";
|
||||
$user->email_verified = 1;
|
||||
$user->role = 1;
|
||||
$user->save();
|
||||
|
||||
$this->info('User created.');
|
||||
}
|
||||
}
|
||||
|
|
@ -8,6 +8,6 @@ class AboutUsController extends Controller
|
|||
{
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('wait');
|
||||
return view('front.aboutus');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,11 @@
|
|||
namespace App\Http\Controllers\Bo;
|
||||
|
||||
use App\Http\Controllers\Controller;
|
||||
use App\Models\User;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Str;
|
||||
use Illuminate\Support\Facades\Hash;
|
||||
|
||||
class UsersController extends Controller
|
||||
{
|
||||
|
|
@ -14,7 +18,8 @@ class UsersController extends Controller
|
|||
*/
|
||||
public function index()
|
||||
{
|
||||
//
|
||||
$users = User::get();
|
||||
return view('bo.users.index',compact('users'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -24,7 +29,7 @@ class UsersController extends Controller
|
|||
*/
|
||||
public function create()
|
||||
{
|
||||
//
|
||||
return view('bo.users.create');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -35,7 +40,67 @@ class UsersController extends Controller
|
|||
*/
|
||||
public function store(Request $request)
|
||||
{
|
||||
//
|
||||
$request->validate([
|
||||
'lastname' => 'required|string|max:255',
|
||||
'firstname' => 'required|string|max:255',
|
||||
'birth_date' => 'max:10',
|
||||
'email' => 'required|string|email|max:255|unique:users',
|
||||
'password' => 'required|string|min:8',
|
||||
'address' => 'max:255',
|
||||
'address2' => 'max:255',
|
||||
'town' => 'max:255',
|
||||
'postal_code' => 'max:255',
|
||||
'country' => 'max:255'
|
||||
]);
|
||||
|
||||
$civility = $request->civility;
|
||||
$lastname = filter_var($request->lastname, FILTER_SANITIZE_STRING);
|
||||
$firstname = filter_var($request->firstname, FILTER_SANITIZE_STRING);
|
||||
$birthDate = $request->birth_date;
|
||||
$email = filter_var($request->email, FILTER_SANITIZE_EMAIL);
|
||||
$password = $request->password;
|
||||
$address = filter_var($request->address, FILTER_SANITIZE_STRING);
|
||||
$address2 = $request->address2 !== null ? filter_var($request->address2, FILTER_SANITIZE_STRING) : null;
|
||||
$town = filter_var($request->town, FILTER_SANITIZE_STRING);
|
||||
$postalCode = filter_var($request->postal_code, FILTER_SANITIZE_STRING);
|
||||
$country = filter_var($request->country, FILTER_SANITIZE_STRING);
|
||||
$tokenMail = Str::uuid();
|
||||
|
||||
|
||||
if ($this->isSQLDate($birthDate)){
|
||||
$d = Carbon::createFromFormat('Y-m-d', $birthDate);
|
||||
}elseif ($this->isFormDate($birthDate)){
|
||||
$d = Carbon::createFromFormat('d/m/Y', $birthDate);
|
||||
$birthDate = $d->toDateString();
|
||||
}else{
|
||||
if(!empty($birthDate)){
|
||||
return back()
|
||||
->withInput($request->except('password'))
|
||||
->withErrors("Erreur sur le champs : date de naissance.");
|
||||
}
|
||||
}
|
||||
|
||||
$crmId = null;
|
||||
|
||||
$user = new User();
|
||||
$user->crm_id = $crmId;
|
||||
$user->civility = $civility;
|
||||
$user->firstname = $firstname;
|
||||
$user->lastname = $lastname;
|
||||
$user->birth_date = $birthDate;
|
||||
$user->email = $email;
|
||||
$user->password = Hash::make($password);
|
||||
$user->address = $address;
|
||||
$user->address2 = $address2;
|
||||
$user->town = $town;
|
||||
$user->postal_code = $postalCode;
|
||||
$user->country = ucfirst($country);
|
||||
$user->email_verify_token = $tokenMail;
|
||||
$success = $user->save();
|
||||
var_dump($success);
|
||||
|
||||
return redirect()->route('bo.users.index')
|
||||
->with('success', "utilisateur créé.");
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -82,4 +147,16 @@ class UsersController extends Controller
|
|||
{
|
||||
//
|
||||
}
|
||||
|
||||
private function isSQLDate($date){
|
||||
if (preg_match("/^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/", $date))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
private function isFormDate($date){
|
||||
if (preg_match("/^(0[1-9]|[1-2][0-9]|3[0-1])\/(0[1-9]|1[0-2])\/[0-9]{4}$/", $date))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,5 +6,8 @@ use Illuminate\Http\Request;
|
|||
|
||||
class CSRController extends Controller
|
||||
{
|
||||
//
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.csr');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,5 +6,8 @@ use Illuminate\Http\Request;
|
|||
|
||||
class ContactUsController extends Controller
|
||||
{
|
||||
//
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.contactus');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
13
app/Http/Controllers/LegalNoticeController.php
Normal file
13
app/Http/Controllers/LegalNoticeController.php
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class LegalNoticeController extends Controller
|
||||
{
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.legalnotice');
|
||||
}
|
||||
}
|
||||
|
|
@ -6,5 +6,8 @@ use Illuminate\Http\Request;
|
|||
|
||||
class NewsController extends Controller
|
||||
{
|
||||
//
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.news');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,5 +6,8 @@ use Illuminate\Http\Request;
|
|||
|
||||
class OurTradeController extends Controller
|
||||
{
|
||||
//
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.ourtrade');
|
||||
}
|
||||
}
|
||||
|
|
|
|||
13
app/Http/Controllers/PrivacyPolicyController.php
Normal file
13
app/Http/Controllers/PrivacyPolicyController.php
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class PrivacyPolicyController extends Controller
|
||||
{
|
||||
public function index(Request $request)
|
||||
{
|
||||
return view('front.privacypolicy');
|
||||
}
|
||||
}
|
||||
|
|
@ -58,6 +58,8 @@ class Kernel extends HttpKernel
|
|||
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
|
||||
'can' => \Illuminate\Auth\Middleware\Authorize::class,
|
||||
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
|
||||
'is-admin' => \App\Http\Middleware\isAdmin::class,
|
||||
'secu-bo' => \App\Http\Middleware\LdcSecureBo::class,
|
||||
'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class,
|
||||
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
|
||||
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
|
||||
|
|
|
|||
24
app/Http/Middleware/isAdmin.php
Normal file
24
app/Http/Middleware/isAdmin.php
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class isAdmin
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
$role = Auth::user()->role;
|
||||
if ($role === 1)
|
||||
return $next($request);
|
||||
abort(404, "Cette page n'existe pas.");
|
||||
}
|
||||
}
|
||||
|
|
@ -17,9 +17,20 @@ class User extends Authenticatable
|
|||
* @var array
|
||||
*/
|
||||
protected $fillable = [
|
||||
'name',
|
||||
'crm_id',
|
||||
'civility',
|
||||
'firstname',
|
||||
'lastname',
|
||||
'birth_date',
|
||||
'email',
|
||||
'password',
|
||||
'address',
|
||||
'address2',
|
||||
'town',
|
||||
'postal_code',
|
||||
'country',
|
||||
'email_verify_token',
|
||||
'email_verified'
|
||||
];
|
||||
|
||||
/**
|
||||
|
|
|
|||
86
composer.lock
generated
86
composer.lock
generated
|
|
@ -3362,7 +3362,7 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/polyfill-ctype",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-ctype.git",
|
||||
|
|
@ -3421,7 +3421,7 @@
|
|||
"portable"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3441,16 +3441,16 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/polyfill-iconv",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-iconv.git",
|
||||
"reference": "b34bfb8c4c22650ac080d2662ae3502e5f2f4ae6"
|
||||
"reference": "06fb361659649bcfd6a208a0f1fcaf4e827ad342"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/b34bfb8c4c22650ac080d2662ae3502e5f2f4ae6",
|
||||
"reference": "b34bfb8c4c22650ac080d2662ae3502e5f2f4ae6",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/06fb361659649bcfd6a208a0f1fcaf4e827ad342",
|
||||
"reference": "06fb361659649bcfd6a208a0f1fcaf4e827ad342",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -3501,7 +3501,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-iconv/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-iconv/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3517,20 +3517,20 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-01-07T16:49:33+00:00"
|
||||
"time": "2021-01-22T09:19:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-grapheme",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
|
||||
"reference": "267a9adeb8ecb8071040a740930e077cdfb987af"
|
||||
"reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/267a9adeb8ecb8071040a740930e077cdfb987af",
|
||||
"reference": "267a9adeb8ecb8071040a740930e077cdfb987af",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/5601e09b69f26c1828b13b6bb87cb07cddba3170",
|
||||
"reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -3582,7 +3582,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3598,20 +3598,20 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-01-07T16:49:33+00:00"
|
||||
"time": "2021-01-22T09:19:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-idn",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-idn.git",
|
||||
"reference": "0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44"
|
||||
"reference": "2d63434d922daf7da8dd863e7907e67ee3031483"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44",
|
||||
"reference": "0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/2d63434d922daf7da8dd863e7907e67ee3031483",
|
||||
"reference": "2d63434d922daf7da8dd863e7907e67ee3031483",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -3669,7 +3669,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3685,20 +3685,20 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-01-07T16:49:33+00:00"
|
||||
"time": "2021-01-22T09:19:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-intl-normalizer",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
|
||||
"reference": "6e971c891537eb617a00bb07a43d182a6915faba"
|
||||
"reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/6e971c891537eb617a00bb07a43d182a6915faba",
|
||||
"reference": "6e971c891537eb617a00bb07a43d182a6915faba",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/43a0283138253ed1d48d352ab6d0bdb3f809f248",
|
||||
"reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -3753,7 +3753,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3769,20 +3769,20 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-01-07T17:09:11+00:00"
|
||||
"time": "2021-01-22T09:19:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-mbstring",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-mbstring.git",
|
||||
"reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13"
|
||||
"reference": "5232de97ee3b75b0360528dae24e73db49566ab1"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f377a3dd1fde44d37b9831d68dc8dea3ffd28e13",
|
||||
"reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13",
|
||||
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/5232de97ee3b75b0360528dae24e73db49566ab1",
|
||||
"reference": "5232de97ee3b75b0360528dae24e73db49566ab1",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -3833,7 +3833,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3849,11 +3849,11 @@
|
|||
"type": "tidelift"
|
||||
}
|
||||
],
|
||||
"time": "2021-01-07T16:49:33+00:00"
|
||||
"time": "2021-01-22T09:19:47+00:00"
|
||||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php72",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php72.git",
|
||||
|
|
@ -3909,7 +3909,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php72/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-php72/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -3929,7 +3929,7 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php73",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php73.git",
|
||||
|
|
@ -3988,7 +3988,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php73/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-php73/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -4008,7 +4008,7 @@
|
|||
},
|
||||
{
|
||||
"name": "symfony/polyfill-php80",
|
||||
"version": "v1.22.0",
|
||||
"version": "v1.22.1",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/symfony/polyfill-php80.git",
|
||||
|
|
@ -4071,7 +4071,7 @@
|
|||
"shim"
|
||||
],
|
||||
"support": {
|
||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.22.0"
|
||||
"source": "https://github.com/symfony/polyfill-php80/tree/v1.22.1"
|
||||
},
|
||||
"funding": [
|
||||
{
|
||||
|
|
@ -5060,16 +5060,16 @@
|
|||
},
|
||||
{
|
||||
"name": "facade/ignition",
|
||||
"version": "2.5.11",
|
||||
"version": "2.5.12",
|
||||
"source": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/facade/ignition.git",
|
||||
"reference": "e91d67353054bf827c64687fcac5ea44e4dcec54"
|
||||
"reference": "be73521836f978106b3c3cf57de7eaeb261af520"
|
||||
},
|
||||
"dist": {
|
||||
"type": "zip",
|
||||
"url": "https://api.github.com/repos/facade/ignition/zipball/e91d67353054bf827c64687fcac5ea44e4dcec54",
|
||||
"reference": "e91d67353054bf827c64687fcac5ea44e4dcec54",
|
||||
"url": "https://api.github.com/repos/facade/ignition/zipball/be73521836f978106b3c3cf57de7eaeb261af520",
|
||||
"reference": "be73521836f978106b3c3cf57de7eaeb261af520",
|
||||
"shasum": ""
|
||||
},
|
||||
"require": {
|
||||
|
|
@ -5133,7 +5133,7 @@
|
|||
"issues": "https://github.com/facade/ignition/issues",
|
||||
"source": "https://github.com/facade/ignition"
|
||||
},
|
||||
"time": "2021-02-05T12:52:11+00:00"
|
||||
"time": "2021-02-15T07:55:43+00:00"
|
||||
},
|
||||
{
|
||||
"name": "facade/ignition-contracts",
|
||||
|
|
|
|||
|
|
@ -46,6 +46,11 @@ return [
|
|||
'provider' => 'users',
|
||||
'hash' => false,
|
||||
],
|
||||
|
||||
'customer' => [
|
||||
'driver' => 'session',
|
||||
'provider' => 'customers',
|
||||
],
|
||||
],
|
||||
|
||||
/*
|
||||
|
|
@ -71,6 +76,11 @@ return [
|
|||
'model' => App\Models\User::class,
|
||||
],
|
||||
|
||||
'customers' => [
|
||||
'driver' => 'eloquent',
|
||||
'model' => App\Models\Customers::class,
|
||||
]
|
||||
|
||||
// 'users' => [
|
||||
// 'driver' => 'database',
|
||||
// 'table' => 'users',
|
||||
|
|
|
|||
|
|
@ -22,11 +22,14 @@ class UserFactory extends Factory
|
|||
*/
|
||||
public function definition()
|
||||
{
|
||||
$gender = $this->faker->randomElement(['male', 'female']);
|
||||
return [
|
||||
'name' => $this->faker->name,
|
||||
'firstname' => $this->faker->firstName($gender),
|
||||
'lastname' => $this->faker->lastName,
|
||||
'email' => $this->faker->unique()->safeEmail,
|
||||
'email_verified_at' => now(),
|
||||
'password' => '$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKoEa3Ro9llC/.og/at2.uheWG/igi', // password
|
||||
'role' => $this->faker->randomDigit,
|
||||
'remember_token' => Str::random(10),
|
||||
];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,10 +15,23 @@ class CreateUsersTable extends Migration
|
|||
{
|
||||
Schema::create('users', function (Blueprint $table) {
|
||||
$table->id();
|
||||
$table->string('name');
|
||||
$table->integer('crm_id')->nullable();
|
||||
$table->integer('civility')->nullable();
|
||||
$table->string('firstname');
|
||||
$table->string('lastname');
|
||||
$table->date('birth_date')->nullable();
|
||||
$table->string('email')->unique();
|
||||
$table->timestamp('email_verified_at')->nullable();
|
||||
$table->string('password');
|
||||
$table->string('address')->nullable();
|
||||
$table->string('address2')->nullable();
|
||||
$table->string('town');
|
||||
$table->string('postal_code');
|
||||
$table->string('country');
|
||||
$table->string('phone')->nullable();
|
||||
$table->string('email_verify_token')->nullable();
|
||||
$table->boolean('email_verified')->default(0);
|
||||
$table->string('password_token')->nullable();
|
||||
$table->integer('role')->default(2);
|
||||
$table->rememberToken();
|
||||
$table->timestamps();
|
||||
});
|
||||
|
|
|
|||
|
|
@ -13,6 +13,6 @@ class DatabaseSeeder extends Seeder
|
|||
*/
|
||||
public function run()
|
||||
{
|
||||
// \App\Models\User::factory(10)->create();
|
||||
\App\Models\User::factory(10)->create();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
11198
package-lock.json
generated
Normal file
11198
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load diff
18
package.json
18
package.json
|
|
@ -11,8 +11,24 @@
|
|||
},
|
||||
"devDependencies": {
|
||||
"axios": "^0.21",
|
||||
"bootstrap": "^4.0.0",
|
||||
"jquery": "^3.5",
|
||||
"laravel-mix": "^6.0.6",
|
||||
"lodash": "^4.17.19",
|
||||
"postcss": "^8.1.14"
|
||||
"popper.js": "^1.12",
|
||||
"postcss": "^8.1.14",
|
||||
"resolve-url-loader": "^3.1.2",
|
||||
"sass": "^1.20.1",
|
||||
"sass-loader": "^8.0.0",
|
||||
"vue": "^2.5.17",
|
||||
"vue-loader": "^15.9.5",
|
||||
"vue-template-compiler": "^2.6.10"
|
||||
},
|
||||
"dependencies": {
|
||||
"chart.js": "^2.9.4",
|
||||
"jquery": "^3.5.1",
|
||||
"popper.js": "^1.16.1",
|
||||
"v-clipboard": "^2.2.3",
|
||||
"vue": "^2.6.12"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
10096
public/css/app.css
vendored
Normal file
10096
public/css/app.css
vendored
Normal file
File diff suppressed because it is too large
Load diff
92649
public/js/app.js
vendored
Normal file
92649
public/js/app.js
vendored
Normal file
File diff suppressed because it is too large
Load diff
4
public/mix-manifest.json
Normal file
4
public/mix-manifest.json
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"/js/app.js": "/js/app.js",
|
||||
"/css/app.css": "/css/app.css"
|
||||
}
|
||||
6
resources/js/app.js
vendored
6
resources/js/app.js
vendored
|
|
@ -1 +1,7 @@
|
|||
/**
|
||||
* First we will load all of this project's JavaScript dependencies which
|
||||
* includes Vue and other libraries. It is a great starting point when
|
||||
* building robust, powerful web applications using Vue and Laravel.
|
||||
*/
|
||||
|
||||
require('./bootstrap');
|
||||
|
|
|
|||
14
resources/js/bootstrap.js
vendored
14
resources/js/bootstrap.js
vendored
|
|
@ -1,5 +1,19 @@
|
|||
window._ = require('lodash');
|
||||
|
||||
|
||||
/**
|
||||
* We'll load jQuery and the Bootstrap jQuery plugin which provides support
|
||||
* for JavaScript based Bootstrap features such as modals and tabs. This
|
||||
* code may be modified to fit the specific needs of your application.
|
||||
*/
|
||||
|
||||
try {
|
||||
window.Popper = require('popper.js').default;
|
||||
window.$ = window.jQuery = require('jquery');
|
||||
|
||||
require('bootstrap');
|
||||
} catch (e) {}
|
||||
|
||||
/**
|
||||
* We'll load the axios HTTP library which allows us to easily issue requests
|
||||
* to our Laravel back-end. This library automatically handles sending the
|
||||
|
|
|
|||
0
resources/js/main.js
vendored
Normal file
0
resources/js/main.js
vendored
Normal file
19
resources/sass/_variables.scss
vendored
Normal file
19
resources/sass/_variables.scss
vendored
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
// Body
|
||||
$body-bg: #f8fafc;
|
||||
|
||||
// Typography
|
||||
$font-family-sans-serif: 'Nunito', sans-serif;
|
||||
$font-size-base: 0.9rem;
|
||||
$line-height-base: 1.6;
|
||||
|
||||
// Colors
|
||||
$blue: #3490dc;
|
||||
$indigo: #6574cd;
|
||||
$purple: #9561e2;
|
||||
$pink: #f66d9b;
|
||||
$red: #e3342f;
|
||||
$orange: #f6993f;
|
||||
$yellow: #ffed4a;
|
||||
$green: #38c172;
|
||||
$teal: #4dc0b5;
|
||||
$cyan: #6cb2eb;
|
||||
11
resources/sass/app.scss
vendored
Normal file
11
resources/sass/app.scss
vendored
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
// Fonts
|
||||
@import url('https://fonts.googleapis.com/css?family=Nunito');
|
||||
|
||||
// Variables
|
||||
@import 'variables';
|
||||
|
||||
// Bootstrap
|
||||
@import '~bootstrap/scss/bootstrap';
|
||||
|
||||
// CSS custom
|
||||
@import 'app_custom';
|
||||
59
resources/sass/app_custom.scss
vendored
Normal file
59
resources/sass/app_custom.scss
vendored
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
/* Switch */
|
||||
.onoffswitch {
|
||||
position: relative; width: 80px;
|
||||
-webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;
|
||||
}
|
||||
.onoffswitch-checkbox {
|
||||
position: absolute;
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
}
|
||||
.onoffswitch-label {
|
||||
display: block; overflow: hidden; cursor: pointer;
|
||||
border: 2px solid #999999; border-radius: 8px;
|
||||
}
|
||||
.onoffswitch-inner {
|
||||
display: block; width: 200%; margin-left: -100%;
|
||||
transition: margin 0.3s ease-in 0s;
|
||||
}
|
||||
.onoffswitch-inner:before, .onoffswitch-inner:after {
|
||||
display: block; float: left; width: 50%; height: 35px; padding: 0; line-height: 35px;
|
||||
font-size: 15px; color: white; font-family: Trebuchet, Arial, sans-serif; font-weight: bold;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.onoffswitch-inner:before {
|
||||
content: "Oui";
|
||||
padding-left: 10px;
|
||||
background-color: #2196F3; color: #FFFFFF;
|
||||
}
|
||||
.onoffswitch-inner:after {
|
||||
content: "Non";
|
||||
padding-right: 10px;
|
||||
background-color: #CCCCCC; color: #999999;
|
||||
text-align: right;
|
||||
}
|
||||
.onoffswitch-switch {
|
||||
display: block; width: 22px; margin: 6.5px;
|
||||
background: #FFFFFF;
|
||||
position: absolute; top: 0; bottom: 0;
|
||||
right: 41px;
|
||||
border: 2px solid #999999; border-radius: 8px;
|
||||
transition: all 0.3s ease-in 0s;
|
||||
}
|
||||
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
|
||||
margin-left: 0;
|
||||
}
|
||||
.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
|
||||
right: 0px;
|
||||
}
|
||||
|
||||
/* Fin du switch */
|
||||
|
||||
.required-asterisk {
|
||||
color: red;
|
||||
}
|
||||
|
||||
.game-name {
|
||||
text-align: center;
|
||||
font-size: large;
|
||||
}
|
||||
0
resources/sass/main.scss
vendored
Normal file
0
resources/sass/main.scss
vendored
Normal file
91
resources/views/auth/login.blade.php
Normal file
91
resources/views/auth/login.blade.php
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container v-50 vertical-center justify-content-center">
|
||||
<main class="form-signin">
|
||||
<form method="POST" action="{{ route('login') }}">
|
||||
@csrf
|
||||
<img class="mb-4" src="{{ asset('images/logo-lgl-3f.svg') }}" alt="__Jeusselin__">
|
||||
<input type="email" id="inputEmail" class="form-control" placeholder="Adresse email" name="email" value="{{ old('email') }}" required autofocus>
|
||||
<input type="password" id="inputPassword" class="form-control" placeholder="Mot de passe" name="password" required>
|
||||
<div class="checkbox mb-3">
|
||||
<label>
|
||||
<input type="checkbox" value="remember"> Se souvenir de moi
|
||||
</label>
|
||||
</div>
|
||||
<button class="w-100 btn btn-lg btn-primary" type="submit">Connexion</button>
|
||||
<p class="mt-5 mb-3 text-muted">© __Jeusselin__ {{ date('Y') }}</p>
|
||||
</form>
|
||||
</main>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
{{-- <div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Login') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('login') }}">
|
||||
@csrf
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus>
|
||||
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">
|
||||
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<div class="col-md-6 offset-md-4">
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" name="remember" id="remember" {{ old('remember') ? 'checked' : '' }}>
|
||||
|
||||
<label class="form-check-label" for="remember">
|
||||
{{ __('Remember Me') }}
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row mb-0">
|
||||
<div class="col-md-8 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Login') }}
|
||||
</button>
|
||||
|
||||
@if (Route::has('password.request'))
|
||||
<a class="btn btn-link" href="{{ route('password.request') }}">
|
||||
{{ __('Forgot Your Password?') }}
|
||||
</a>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> --}}
|
||||
49
resources/views/auth/passwords/confirm.blade.php
Normal file
49
resources/views/auth/passwords/confirm.blade.php
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Confirm Password') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
{{ __('Please confirm your password before continuing.') }}
|
||||
|
||||
<form method="POST" action="{{ route('password.confirm') }}">
|
||||
@csrf
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="current-password">
|
||||
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row mb-0">
|
||||
<div class="col-md-8 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Confirm Password') }}
|
||||
</button>
|
||||
|
||||
@if (Route::has('password.request'))
|
||||
<a class="btn btn-link" href="{{ route('password.request') }}">
|
||||
{{ __('Forgot Your Password?') }}
|
||||
</a>
|
||||
@endif
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
47
resources/views/auth/passwords/email.blade.php
Normal file
47
resources/views/auth/passwords/email.blade.php
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Reset Password') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
@if (session('status'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ session('status') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<form method="POST" action="{{ route('password.email') }}">
|
||||
@csrf
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email" autofocus>
|
||||
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row mb-0">
|
||||
<div class="col-md-6 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Send Password Reset Link') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
65
resources/views/auth/passwords/reset.blade.php
Normal file
65
resources/views/auth/passwords/reset.blade.php
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Reset Password') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('password.update') }}">
|
||||
@csrf
|
||||
|
||||
<input type="hidden" name="token" value="{{ $token }}">
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ $email ?? old('email') }}" required autocomplete="email" autofocus>
|
||||
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">
|
||||
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password-confirm" class="col-md-4 col-form-label text-md-right">{{ __('Confirm Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row mb-0">
|
||||
<div class="col-md-6 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Reset Password') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
77
resources/views/auth/register.blade.php
Normal file
77
resources/views/auth/register.blade.php
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Register') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
<form method="POST" action="{{ route('register') }}">
|
||||
@csrf
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="name" class="col-md-4 col-form-label text-md-right">{{ __('Name') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="name" type="text" class="form-control @error('name') is-invalid @enderror" name="name" value="{{ old('name') }}" required autocomplete="name" autofocus>
|
||||
|
||||
@error('name')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="email" class="col-md-4 col-form-label text-md-right">{{ __('E-Mail Address') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="email" type="email" class="form-control @error('email') is-invalid @enderror" name="email" value="{{ old('email') }}" required autocomplete="email">
|
||||
|
||||
@error('email')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password" class="col-md-4 col-form-label text-md-right">{{ __('Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password" type="password" class="form-control @error('password') is-invalid @enderror" name="password" required autocomplete="new-password">
|
||||
|
||||
@error('password')
|
||||
<span class="invalid-feedback" role="alert">
|
||||
<strong>{{ $message }}</strong>
|
||||
</span>
|
||||
@enderror
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label for="password-confirm" class="col-md-4 col-form-label text-md-right">{{ __('Confirm Password') }}</label>
|
||||
|
||||
<div class="col-md-6">
|
||||
<input id="password-confirm" type="password" class="form-control" name="password_confirmation" required autocomplete="new-password">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row mb-0">
|
||||
<div class="col-md-6 offset-md-4">
|
||||
<button type="submit" class="btn btn-primary">
|
||||
{{ __('Register') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
28
resources/views/auth/verify.blade.php
Normal file
28
resources/views/auth/verify.blade.php
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<div class="container">
|
||||
<div class="row justify-content-center">
|
||||
<div class="col-md-8">
|
||||
<div class="card">
|
||||
<div class="card-header">{{ __('Verify Your Email Address') }}</div>
|
||||
|
||||
<div class="card-body">
|
||||
@if (session('resent'))
|
||||
<div class="alert alert-success" role="alert">
|
||||
{{ __('A fresh verification link has been sent to your email address.') }}
|
||||
</div>
|
||||
@endif
|
||||
|
||||
{{ __('Before proceeding, please check your email for a verification link.') }}
|
||||
{{ __('If you did not receive the email') }},
|
||||
<form class="d-inline" method="POST" action="{{ route('verification.resend') }}">
|
||||
@csrf
|
||||
<button type="submit" class="btn btn-link p-0 m-0 align-baseline">{{ __('click here to request another') }}</button>.
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
|
@ -8,26 +8,60 @@
|
|||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
@if ($errors->any())
|
||||
<div class="alert alert-danger">
|
||||
<ul>
|
||||
@foreach ($errors->all() as $error)
|
||||
<li>{{ $error }}</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
@endif
|
||||
<form action="{{route('bo.users.store')}}" method="POST">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-md-6 offset-md-3">
|
||||
<div class="form-group">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="firstname" placeholder="Prénom" required>
|
||||
<div class="col-md-3">
|
||||
<select name="civility" class="custom-select">
|
||||
<option value="1" @if (old('civility') == 1)selected @endif>Mr</option>
|
||||
<option value="2" @if (old('civility') == 2)selected @endif>Mme</option>
|
||||
<option value="3" @if (old('civility') == 3)selected @endif>Mlle</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="lastname" placeholder="Nom" required>
|
||||
<div class="col-md-4">
|
||||
<input type="text" class="form-control" name="firstname" value="{{ old('firstname') }}" placeholder="Prénom" required>
|
||||
</div>
|
||||
<div class="col-md-5">
|
||||
<input type="text" class="form-control" name="lastname" value="{{ old('lastname') }}" placeholder="Nom" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="date" name="birth_date" class="form-control" placeholder="Date de naissance" value="{{ old('birth_date') }}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="email" class="form-control" name="email" placeholder="Email" required>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="password" class="form-control" name="password" placeholder="Mot de passe" minlength="8" required>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="text" name="address" class="form-control" placeholder="Adresse" value="{{ old('address') }}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="text" name="address2" class="form-control" placeholder="Adresse complémentaire" value="{{ old('address2') }}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="text" name="town" class="form-control" placeholder="Ville" value="{{ old('town') }}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="text" name="postal_code" class="form-control" placeholder="Code postal" value="{{ old('postal_code') }}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<input type="text" name="country" class="form-control" placeholder="Pays" value="{{ old('country') }}">
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="role">Rôle :</label>
|
||||
<select id="role" name="role" class="form-control" required>
|
||||
|
|
|
|||
5
resources/views/front/aboutus.blade.php
Normal file
5
resources/views/front/aboutus.blade.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
@extends('layouts.front')
|
||||
|
||||
@section('content')
|
||||
<img src="{{ asset('images/home/under-construction.png') }}">
|
||||
@endsection
|
||||
5
resources/views/front/contactus.blade.php
Normal file
5
resources/views/front/contactus.blade.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<img src="{{ asset('images/home/under-construction.png') }}">
|
||||
@endsection
|
||||
5
resources/views/front/csr.blade.php
Normal file
5
resources/views/front/csr.blade.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<img src="{{ asset('images/home/under-construction.png') }}">
|
||||
@endsection
|
||||
5
resources/views/front/news.blade.php
Normal file
5
resources/views/front/news.blade.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<img src="{{ asset('images/home/under-construction.png') }}">
|
||||
@endsection
|
||||
5
resources/views/front/ourtrade.blade.php
Normal file
5
resources/views/front/ourtrade.blade.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<img src="{{ asset('images/home/under-construction.png') }}">
|
||||
@endsection
|
||||
5
resources/views/front/privacypolicy.blade.php
Normal file
5
resources/views/front/privacypolicy.blade.php
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<img src="{{ asset('images/home/under-construction.png') }}">
|
||||
@endsection
|
||||
|
|
@ -9,7 +9,7 @@
|
|||
<h1 class="post-title">Notre lien c’est le grain !</h1>
|
||||
<p>Jeusselin vous conseille et vous accompagne dans vos achats et ventes de vos céréales et oleo protéagineux. Jeusselin, une équipe technique cultures à l’écoute de tous nos partenaires. Notre expertise, notre implantation locale et nos savoir-faire vous permettent de rester informés en temps réel des cours du marché pour la meilleure valorisation possible de vos produits.</p>
|
||||
<div>
|
||||
<a href="#" class="second-btn">En savoir plus sur notre entreprise</a>
|
||||
<a href="{{ route('aboutus') }}" class="second-btn">En savoir plus sur notre entreprise</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="slider-container">
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
<div class="swiper-wrapper">
|
||||
<div class="swiper-slide flex">
|
||||
<div class="img-slide">
|
||||
<img src="./assets/images/plats-cuisines.jpg" alt="">
|
||||
<img src="{{ asset('images/plats-cuisines.jpg') }}" alt="">
|
||||
</div>
|
||||
<div class="txt-slide flex">
|
||||
<h2 class="post-subtitle">De délicieux plats préparés disponibles en Clik&Collect</h2>
|
||||
|
|
@ -29,7 +29,7 @@
|
|||
</div>
|
||||
<div class="swiper-slide flex">
|
||||
<div class="img-slide">
|
||||
<img src="./assets/images/plats-cuisines.jpg" alt="">
|
||||
<img src="{{ asset('images/plats-cuisines.jpg') }}" alt="">
|
||||
</div>
|
||||
<div class="txt-slide flex">
|
||||
<h2 class="post-subtitle">De merveilleux plats préparés disponibles en Clik&Collect</h2>
|
||||
|
|
@ -41,7 +41,7 @@
|
|||
</div>
|
||||
<div class="swiper-slide flex">
|
||||
<div class="img-slide">
|
||||
<img src="./assets/images/plats-cuisines.jpg" alt="">
|
||||
<img src="{{ asset('images/plats-cuisines.jpg') }}" alt="">
|
||||
</div>
|
||||
<div class="txt-slide flex">
|
||||
<h2 class="post-subtitle">De superbes plats préparés disponibles en Clik&Collect</h2>
|
||||
|
|
@ -58,7 +58,7 @@
|
|||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!--
|
||||
<section class="video flex container">
|
||||
<div class="title-section flex">
|
||||
<h2 class="post-subtitle">Titre de la section vidéo</h2>
|
||||
|
|
@ -68,38 +68,38 @@
|
|||
</div>
|
||||
<div class="content-video flex">
|
||||
<div class="player-bloc">
|
||||
<img src="./assets/images/play.png" class="icon-play" alt="">
|
||||
<img src="./assets/images/silo-marolles.jpg" alt="">
|
||||
<img src="{{ asset('images/play.png') }}" class="icon-play" alt="">
|
||||
<img src="{{ asset('images/silo-marolles.jpg') }}" alt="">
|
||||
</div>
|
||||
<div class="video-diapo flex">
|
||||
<a href="#" class="screenplay">
|
||||
<img src="./assets/images/play.png" class="icon-play" alt="">
|
||||
<img src="./assets/images/silo-marolles-petite.jpg" alt="">
|
||||
<img src="{{ asset('images/play.png') }}" class="icon-play" alt="">
|
||||
<img src="{{ asset('images/silo-marolles-petite.jpg') }}" alt="">
|
||||
<p>Marolles</p>
|
||||
</a>
|
||||
<a href="#" class="screenplay">
|
||||
<img src="./assets/images/play.png" class="icon-play" alt="">
|
||||
<img src="./assets/images/silo-cherre.jpg" alt="">
|
||||
<img src="{{ asset('images/play.png') }}" class="icon-play" alt="">
|
||||
<img src="{{ asset('images/silo-cherre.jpg') }}" alt="">
|
||||
<p>Cherré</p>
|
||||
</a>
|
||||
<a href="#" class="screenplay">
|
||||
<img src="./assets/images/play.png" class="icon-play" alt="">
|
||||
<img src="./assets/images/silo-monce.jpg" alt="">
|
||||
<img src="{{ asset('images/play.png') }}" class="icon-play" alt="">
|
||||
<img src="{{ asset('images/silo-monce.jpg') }}" alt="">
|
||||
<p>Moncé</p>
|
||||
</a>
|
||||
<a href="#" class="screenplay">
|
||||
<img src="./assets/images/play.png" class="icon-play" alt="">
|
||||
<img src="./assets/images/silo-nogent-le-bernard.jpg" alt="">
|
||||
<img src="{{ asset('images/play.png') }}" class="icon-play" alt="">
|
||||
<img src="{{ asset('images/silo-nogent-le-bernard.jpg') }}" alt="">
|
||||
<p>Nogent-le-Bernard</p>
|
||||
</a>
|
||||
<a href="#" class="screenplay">
|
||||
<img src="./assets/images/play.png" class="icon-play" alt="">
|
||||
<img src="./assets/images/silo-mamers.jpg" alt="">
|
||||
<img src="{{ asset('images/play.png') }}" class="icon-play" alt="">
|
||||
<img src="{{ asset('images/silo-mamers.jpg') }}" alt="">
|
||||
<p>Mamers</p>
|
||||
</a>
|
||||
<a href="#" class="screenplay">
|
||||
<img src="./assets/images/play.png" class="icon-play" alt="">
|
||||
<img src="./assets/images/silo-thoigne-les-mees.jpg" alt="">
|
||||
<img src="{{ asset('images/play.png') }}" class="icon-play" alt="">
|
||||
<img src="{{ asset('images/silo-thoigne-les-mees.jpg') }}" alt="">
|
||||
<p>Thoigné / Les Mèes</p>
|
||||
</a>
|
||||
</div>
|
||||
|
|
@ -108,7 +108,7 @@
|
|||
|
||||
<section class="edito grid container">
|
||||
<div class="img-edito">
|
||||
<img src="./assets/images/jeusselin-photo.jpg" alt="Gaël Le Conte">
|
||||
<img src="{{ asset('images/jeusselin-photo.jpg') }}" alt="Gaël Le Conte">
|
||||
</div>
|
||||
<div>
|
||||
<p class="paragraph-title"><strong>Édito</strong></p>
|
||||
|
|
@ -139,22 +139,22 @@
|
|||
<div class="infos flex">
|
||||
<div class="info">
|
||||
<h3 class="post-chapter">150 000 tonnes de collecte</h3>
|
||||
<img src="./assets/images/150000-tonnes-collecte.jpg" alt="150 000 tonnes de collecte">
|
||||
<img src="{{ asset('images/150000-tonnes-collecte.jpg') }}" alt="150 000 tonnes de collecte">
|
||||
<div><a href="#" class="second-btn"> </a></div>
|
||||
</div>
|
||||
<div class="info">
|
||||
<h3 class="post-chapter">8 sites de collecte</h3>
|
||||
<img src="./assets/images/huits-sites-collecte.jpg" alt="8 sites de collecte">
|
||||
<img src="{{ asset('images/huits-sites-collecte.jpg') }}" alt="8 sites de collecte">
|
||||
<div><a href="#" class="second-btn">Trouvez votre point de collecte</a></div>
|
||||
</div>
|
||||
<div class="info">
|
||||
<h3 class="post-chapter">40 salarié(e)s</h3>
|
||||
<img src="./assets/images/quarante-salaries.jpg" alt="40 salarié(e)s">
|
||||
<img src="{{ asset('images/quarante-salaries.jpg') }}" alt="40 salarié(e)s">
|
||||
<div><a href="#" class="second-btn">Rencontrez l'équipe Jeusselin</a></div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
-->
|
||||
|
||||
@endsection
|
||||
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
<footer>
|
||||
<div class="logo-footer">
|
||||
<a href="#"><img src="./assets/images/logo-jeusselin.png" alt="Jeusselin"></a>
|
||||
<a href="{{ route('home') }}"><img src="{{ asset('images/logo-jeusselin.png') }}" alt="Jeusselin"></a>
|
||||
</div>
|
||||
<div class="txt-footer flex">
|
||||
<a href="#">Contact</a>
|
||||
<a href="#">Mentions légales</a>
|
||||
<a href="#">Politique de confidentialité</a>
|
||||
<a href="{{ route('contactus') }}">Contact</a>
|
||||
<a href="{{ route('legalnotice') }}">Mentions légales</a>
|
||||
<a href="{{ route('privacypolicy') }}">Politique de confidentialité</a>
|
||||
</div>
|
||||
</footer>
|
||||
|
|
|
|||
|
|
@ -5,17 +5,17 @@
|
|||
</div>
|
||||
<nav>
|
||||
<ul class="flex">
|
||||
<li><a href="/qui-sommes-nous">Qui sommes nous ?</a></li>
|
||||
<li><a href="#">Nos métiers</a></li>
|
||||
<li><a href="#">RSE</a></li>
|
||||
<li><a href="#">Actualités</a></li>
|
||||
<li><a href="#">Nous contacter</a></li>
|
||||
<li><a href="{{ route('aboutus') }}">Qui sommes nous ?</a></li>
|
||||
<li><a href="{{ route('ourtrade') }}">Nos métiers</a></li>
|
||||
<li><a href="{{ route('csr') }}">RSE</a></li>
|
||||
<li><a href="{{ route('news') }}">Actualités</a></li>
|
||||
<li><a href="{{ route('contactus') }}">Nous contacter</a></li>
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="right-menu">
|
||||
<div class="connect-contain flex">
|
||||
<p class="active">Bienvenue Charles-Henry</p>
|
||||
<div class="connect"><a href="#" class="first-btn"> </a></div>
|
||||
<div class="connect"><a href="{{ route('bo.dashboard') }}" class="first-btn"> </a></div>
|
||||
<div class="disconnect active">
|
||||
<a href="#">
|
||||
<!-- <svg version="1.1" id="svg-disconnect" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
||||
|
|
@ -28,7 +28,7 @@
|
|||
</g>
|
||||
</g>
|
||||
</svg> -->
|
||||
<img src="../assets/images/stop.png" alt="Déconnexion">
|
||||
<img src="{{ asset('images/stop.png') }}" alt="Déconnexion">
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -60,7 +60,7 @@
|
|||
</g>
|
||||
</g>
|
||||
</svg> -->
|
||||
<img src="../assets/images/stop.png" alt="Déconnexion">
|
||||
<img src="{{ asset('images/stop.png') }}" alt="Déconnexion">
|
||||
</a>
|
||||
<a href="#" class="mobile-search">
|
||||
<svg version="1.1" id="svg-search" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="590.556px" height="590.556px" viewBox="0 0 590.556 590.556" style="enable-background:new 0 0 590.556 590.556;" xml:space="preserve">
|
||||
|
|
|
|||
|
|
@ -1,25 +1,25 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<link rel="icon" href="./assets/images/favicon.png" type="image/png">
|
||||
<link rel="icon" sizes="32x32" href="./assets/images/favicon-32.png" type="image/png">
|
||||
<link rel="icon" sizes="64x64" href="./assets/images/favicon-64.png" type="image/png">
|
||||
<link rel="icon" sizes="96x96" href="./assets/images/favicon-96.png" type="image/png">
|
||||
<link rel="icon" sizes="196x196" href="./assets/images/favicon-196.png" type="image/png">
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="./assets/images/apple-touch-icon.png">
|
||||
<link rel="apple-touch-icon" sizes="60x60" href="./assets/images/apple-touch-icon-60x60.png">
|
||||
<link rel="apple-touch-icon" sizes="76x76" href="./assets/images/apple-touch-icon-76x76.png">
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="./assets/images/apple-touch-icon-114x114.png">
|
||||
<link rel="apple-touch-icon" sizes="120x120" href="./assets/images/apple-touch-icon-120x120.png">
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="./assets/images/apple-touch-icon-144x144.png">
|
||||
<meta name="msapplication-TileImage" content="./assets/images/favicon-144.png">
|
||||
<link rel="icon" href="{{ asset('images/favicon.png') }}" type="image/png">
|
||||
<link rel="icon" sizes="32x32" href="{{ asset('images/favicon-32.png') }}" type="image/png">
|
||||
<link rel="icon" sizes="64x64" href="{{ asset('images/favicon-64.png') }}" type="image/png">
|
||||
<link rel="icon" sizes="96x96" href="{{ asset('images/favicon-96.png') }}" type="image/png">
|
||||
<link rel="icon" sizes="196x196" href="{{ asset('images/favicon-196.png') }}" type="image/png">
|
||||
<link rel="apple-touch-icon" sizes="152x152" href="{{ asset('images/apple-touch-icon.png') }}">
|
||||
<link rel="apple-touch-icon" sizes="60x60" href="{{ asset('images/apple-touch-icon-60x60.png') }}">
|
||||
<link rel="apple-touch-icon" sizes="76x76" href="{{ asset('images/apple-touch-icon-76x76.png') }}">
|
||||
<link rel="apple-touch-icon" sizes="114x114" href="{{ asset('images/apple-touch-icon-114x114.png') }}">
|
||||
<link rel="apple-touch-icon" sizes="120x120" href="{{ asset('images/apple-touch-icon-120x120.png') }}">
|
||||
<link rel="apple-touch-icon" sizes="144x144" href="{{ asset('images/apple-touch-icon-144x144.png') }}">
|
||||
<meta name="msapplication-TileImage" content="{{ asset('images/favicon-144.png') }}">
|
||||
<meta name="msapplication-TileColor" content="#FFFFFF">
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<link rel="stylesheet" href="./node_modules/@fortawesome/fontawesome-free/css/all.min.css">
|
||||
<link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.css" />
|
||||
<link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.min.css" />
|
||||
<link rel='stylesheet' id='style-css' href='./assets/css/style.css' type='text/css' media='all'/>
|
||||
<link rel='stylesheet' id='style-css' href="{{ asset('css/style.css') }}" type='text/css' media='all'/>
|
||||
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
|
||||
<title>Jeusselin</title>
|
||||
</head>
|
||||
|
|
@ -41,5 +41,5 @@
|
|||
<!-- <script src="./node_modules/swiper/swiper-bundle.min.js"></script> -->
|
||||
<script src="https://unpkg.com/swiper/swiper-bundle.js"></script>
|
||||
<script src="https://unpkg.com/swiper/swiper-bundle.min.js"></script>
|
||||
<script type="text/javascript" src="./assets/js/main.js"></script>
|
||||
<script type="text/javascript" src="{{ asset('js/main.js') }}"></script>
|
||||
</html>
|
||||
|
|
|
|||
34
resources/views/layouts/auth.blade.php
Normal file
34
resources/views/layouts/auth.blade.php
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
|
||||
<head>
|
||||
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
|
||||
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
|
||||
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
|
||||
<script type="text/javascript" src="{{ asset('js/auth.js') }}"></script>
|
||||
<style>
|
||||
.vertical-center {
|
||||
min-height: 100%; /* Fallback for browsers do NOT support vh unit */
|
||||
min-height: 100vh; /* These two lines are counted as one :-) */
|
||||
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
</style>
|
||||
<title>Jeusselin</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app" class="container">
|
||||
{{-- @include('layouts.auth-header') --}}
|
||||
</div>
|
||||
|
||||
@yield('content')
|
||||
|
||||
<div class="container">
|
||||
{{-- @include('layouts.auth-footer') --}}
|
||||
<div class="pageup"><a href="#"><i class="fas fa-arrow-circle-up"></i></a></div>
|
||||
</div>
|
||||
</div>
|
||||
@yield('scripts')
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -12,6 +12,10 @@
|
|||
<!-- Scripts -->
|
||||
{{-- TODO : Ajouter jQuery dans app.js --}}
|
||||
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
|
||||
{{-- TODO : Ajouter CKEditor dans app.js --}}
|
||||
<script src="https://cdn.ckeditor.com/ckeditor5/23.0.0/classic/ckeditor.js"></script>
|
||||
{{-- TODO : Voir l'inclusion de Font Awesome, pour le moment c'est fait avec mon compte FA --}}
|
||||
<script src="https://kit.fontawesome.com/2327d60f96.js" crossorigin="anonymous"></script>
|
||||
|
||||
<!-- Fonts -->
|
||||
<link rel="dns-prefetch" href="//fonts.gstatic.com">
|
||||
|
|
@ -41,24 +45,20 @@
|
|||
<!-- Right Side Of Navbar -->
|
||||
<ul class="navbar-nav ml-auto">
|
||||
<!-- Authentication Links -->
|
||||
@guest
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" href="{{ route('login') }}">Connexion</a>
|
||||
</li>
|
||||
@else
|
||||
@auth
|
||||
<li class="nav-item dropdown">
|
||||
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
|
||||
Bonjour {{ Auth::user()->firstname }} <span class="caret"></span>
|
||||
</a>
|
||||
|
||||
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
|
||||
<a class="dropdown-item" href="{{ route('logout') }}"
|
||||
<a class="dropdown-item" href="#"
|
||||
onclick="event.preventDefault();
|
||||
document.getElementById('logout-form').submit();">
|
||||
Déconnexion
|
||||
</a>
|
||||
|
||||
<form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
|
||||
<form id="logout-form" action="{{route('logout')}}" method="POST" style="display: none;">
|
||||
@csrf
|
||||
</form>
|
||||
</div>
|
||||
|
|
@ -75,118 +75,16 @@
|
|||
<div class="col-md-2">
|
||||
<nav class="nav flex-column sticky-top">
|
||||
<a class="nav-link" href="{{route('bo.dashboard')}}">Tableau de bord</a>
|
||||
<a class="nav-link" href="{{route('bo.users.index')}}">Utilisateurs</a>
|
||||
<a class="nav-link" href="{{route('bo.users.index')}}">Users</a>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Les produits</a>
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Drop</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.products.index')}}">Tous les produits</a>
|
||||
<a class="dropdown-item" href="{{route('bo.products.create')}}">Ajouter</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="{{route('bo.ranges.index')}}">Toutes les gammes</a>
|
||||
<a class="dropdown-item" href="{{route('bo.ranges.create')}}">Ajouter</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="{{route('bo.product-pictograms.index')}}">Gestion des pictos</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="{{route('bo.consumption-times.index')}}">Moments conso.</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="{{route('bo.meat-types.index')}}">Types de viandes</a>--}}
|
||||
<a class="dropdown-item" href="#_">Item 1</a>
|
||||
<a class="dropdown-item" href="#_">Item 2</a>
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Oui c'est bon</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.ocb.content', 'volaille')}}">Contenus Volaille</a>
|
||||
<a class="dropdown-item" href="{{route('bo.ocb.content', 'oeuf')}}">Contenus Oeuf</a>
|
||||
<a class="dropdown-item" href="{{route('bo.ocb.content', 'lapin')}}">Contenus Lapin</a>
|
||||
<a class="dropdown-item" href="{{route('bo.ocb.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Les éleveurs OCB</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.breeders.content', 'volaille')}}">Éleveurs Volaille</a>
|
||||
<a class="dropdown-item" href="{{route('bo.breeders.content', 'oeuf')}}">Éleveurs Oeuf</a>
|
||||
<a class="dropdown-item" href="{{route('bo.breeders.content', 'lapin')}}">Éleveurs Lapin</a>
|
||||
<a class="dropdown-item" href="{{route('bo.breeders.create')}}">Ajouter un éleveur</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">La marque</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.ads.index')}}">La saga publicitaire</a>
|
||||
<a class="dropdown-item" href="{{route('bo.ads.create')}}">Ajouter une vidéo</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Sliders</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.home-slider-pictures.index')}}">Slider de l'accueil</a>
|
||||
<a class="dropdown-item" href="{{route('bo.home-slider-pictures.create')}}">Ajouter</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="{{route('bo.news-slider-pictures.index')}}">Slider des actus</a>
|
||||
<a class="dropdown-item" href="{{route('bo.news-slider-pictures.create')}}">Ajouter</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="{{route('bo.product-slider-pictures.index')}}">Slider des produits</a>
|
||||
<a class="dropdown-item" href="{{route('bo.product-slider-pictures.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Les recettes</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.recipes.highlights')}}">Les recettes mise en avant</a>
|
||||
<a class="dropdown-item" href="{{route('bo.recipes.index')}}">Toutes les recettes</a>
|
||||
<a class="dropdown-item" href="{{route('bo.recipes.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Menus équilibrés</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.balanced-menus.index')}}">Tous les menus</a>
|
||||
<a class="dropdown-item" href="{{route('bo.balanced-menus.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Les articles</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.articles.index')}}">Tous les articles</a>
|
||||
<a class="dropdown-item" href="{{route('bo.articles.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">En ce moment</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.moments.index')}}">Tous les moments</a>
|
||||
<a class="dropdown-item" href="{{route('bo.moments.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
{{--<a class="nav-link" href="{{route('bo.reductions.index')}}">Les réductions</a>--}}
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Les QR codes</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.qr-codes.index')}}">Tous les QR codes</a>
|
||||
<a class="dropdown-item" href="{{route('bo.qr-codes.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
{{--<a class="nav-link" href="{{route('bo.traceability.index')}}">Traçabilités</a>--}}
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">FAQ</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.faq-questions.index')}}">Les questions</a>
|
||||
<a class="dropdown-item" href="{{route('bo.faq-questions.create')}}">Ajouter</a>
|
||||
<div class="dropdown-divider"></div>
|
||||
<a class="dropdown-item" href="{{route('bo.faq-themes.index')}}">Les thèmes</a>
|
||||
<a class="dropdown-item" href="{{route('bo.faq-themes.create')}}">Ajouter</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" data-toggle="dropdown" href="#" role="button">Forum</a>
|
||||
<div class="dropdown-menu">
|
||||
{{--<a class="dropdown-item" href="{{route('bo.forum-themes')}}">Thèmes</a>
|
||||
<a class="dropdown-item" href="{{route('bo.manage-forum-themes')}}">Ajouter un thème</a>--}}
|
||||
</div>
|
||||
</li>
|
||||
<a class="nav-link" href="#">Paramètres</a>
|
||||
<a class="nav-link" href="{{config('app.url')}}" target="_blank">Site legaulois.fr</a>
|
||||
<a class="nav-link" href="#_">Ressource 2</a>
|
||||
<a class="nav-link" href="{{route('home')}}" target="_blank">Aller sur le front</a>
|
||||
</nav>
|
||||
</div>
|
||||
<div class="col-md-10">
|
||||
|
|
|
|||
|
|
@ -1,12 +1,5 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>Wait</title>
|
||||
</head>
|
||||
<body>
|
||||
@extends('layouts.app')
|
||||
|
||||
@section('content')
|
||||
<img src="{{ asset('images/home/under-construction.png') }}">
|
||||
</body>
|
||||
</html>
|
||||
@endsection
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
@if (Route::has('login'))
|
||||
<div class="hidden fixed top-0 right-0 px-6 py-4 sm:block">
|
||||
@auth
|
||||
<a href="{{ url('/home') }}" class="text-sm text-gray-700 underline">Home</a>
|
||||
<a href="{{ url('/dashboard') }}" class="text-sm text-gray-700 underline">Dashboard</a>
|
||||
@else
|
||||
<a href="{{ route('login') }}" class="text-sm text-gray-700 underline">Login</a>
|
||||
|
||||
|
|
|
|||
|
|
@ -12,6 +12,8 @@ use App\Http\Controllers\OurTradeController;
|
|||
use App\Http\Controllers\CSRController;
|
||||
use App\Http\Controllers\NewsController;
|
||||
use App\Http\Controllers\ContactUsController;
|
||||
use App\Http\Controllers\LegalNoticeController;
|
||||
use App\Http\Controllers\PrivacyPolicyController;
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
@ -32,7 +34,7 @@ Auth::routes([
|
|||
Route::namespace('App\Http\Controllers\Bo')
|
||||
->prefix('bo')
|
||||
->name('bo.')
|
||||
//->middleware(['auth', 'is-admin'])
|
||||
->middleware(['auth', 'is-admin', 'secu-bo'])
|
||||
->group(function () {
|
||||
// Tableau de bord
|
||||
Route::get('/', [DashboardController::class, 'index'])->name('dashboard');
|
||||
|
|
@ -50,8 +52,10 @@ Route::namespace('App\Http\Controllers\Bo')
|
|||
// });
|
||||
|
||||
Route::get('/', [HomeController::class, 'index'])->name('home');
|
||||
Route::get('/qui-sommes-nous', [AboutUsController::class, 'index']);
|
||||
Route::get('/nos-metiers', [OurTradeController::class, 'index']);
|
||||
Route::get('/rse', [CSRController::class, 'index']);
|
||||
Route::get('/actualites', [NewsController::class, 'index']);
|
||||
Route::get('/nous-contacter', [ContactUsController::class, 'index']);
|
||||
Route::get('/qui-sommes-nous', [AboutUsController::class, 'index'])->name('aboutus');
|
||||
Route::get('/nos-metiers', [OurTradeController::class, 'index'])->name('ourtrade');
|
||||
Route::get('/rse', [CSRController::class, 'index'])->name('csr');
|
||||
Route::get('/actualites', [NewsController::class, 'index'])->name('news');
|
||||
Route::get('/nous-contacter', [ContactUsController::class, 'index'])->name('contactus');
|
||||
Route::get('/mentions-legal', [LegalNoticeController::class, 'index'])->name('legalnotice');
|
||||
Route::get('/politique-de-confidentialite', [PrivacyPolicyController::class, 'index'])->name('privacypolicy');
|
||||
|
|
|
|||
10
webpack.mix.js
vendored
10
webpack.mix.js
vendored
|
|
@ -11,7 +11,9 @@ const mix = require('laravel-mix');
|
|||
|
|
||||
*/
|
||||
|
||||
mix.js('resources/js/app.js', 'public/js')
|
||||
.postCss('resources/css/app.css', 'public/css', [
|
||||
//
|
||||
]);
|
||||
mix.js('resources/js/app.js', 'public/js').vue()
|
||||
.sass('resources/sass/app.scss', 'public/css');
|
||||
|
||||
|
||||
mix.js('resources/js/main.js', 'public/js').vue()
|
||||
.sass('resources/sass/main.scss', 'public/css');
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue