mirror of
https://gitlab.com/TheGamecraft/c-cms.git
synced 2026-04-21 02:39:10 -04:00
add first login logic
This commit is contained in:
@@ -62,7 +62,11 @@ class Course extends Model
|
||||
if (\App\User::find($this->user_id)) {
|
||||
return \App\User::find($this->user_id)->fullname();
|
||||
} else {
|
||||
return $this->user_id;
|
||||
if (is_numeric($this->user_id)) {
|
||||
return 'Utilisateur inconnu';
|
||||
} else {
|
||||
return $this->user_id;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,8 +2,11 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Contracts\Foundation\Application;
|
||||
use Illuminate\Contracts\View\Factory;
|
||||
use Illuminate\Http\Request;
|
||||
use \App\Log;
|
||||
use Illuminate\View\View;
|
||||
|
||||
class AdminController extends Controller
|
||||
{
|
||||
@@ -20,7 +23,7 @@ class AdminController extends Controller
|
||||
/**
|
||||
* Show the application dashboard.
|
||||
*
|
||||
* @return \Illuminate\Http\Response
|
||||
* @return Application|Factory|View
|
||||
*/
|
||||
public function index()
|
||||
{
|
||||
@@ -29,6 +32,39 @@ class AdminController extends Controller
|
||||
return view('admin.dashboard',['futureEvent' => \App\Event::future()->take(3),'userClasse' => \Auth::user()->futureCourses()->forPage(1,6)]);
|
||||
}
|
||||
|
||||
public function setup()
|
||||
{
|
||||
if (\Auth::user()->use_default_psw == true)
|
||||
{
|
||||
return view('admin.user.profil.setup');
|
||||
}
|
||||
return redirect('/admin');
|
||||
}
|
||||
|
||||
public function saveSetup()
|
||||
{
|
||||
$user = \Auth::user();
|
||||
$user->firstname = \request('firstname');
|
||||
$user->lastname = \request('lastname');
|
||||
$user->password = bcrypt(request('psw'));
|
||||
|
||||
if (\request('address') != null)
|
||||
{
|
||||
$user->adress = \request('address');
|
||||
}
|
||||
if (\request('telephone') != null)
|
||||
{
|
||||
$user->telephone = \request('telephone');
|
||||
}
|
||||
if (\request('sexe') != null)
|
||||
{
|
||||
$user->sexe = \request('sexe');
|
||||
}
|
||||
$user->use_default_psw = false;
|
||||
$user->save();
|
||||
return redirect('/admin');
|
||||
}
|
||||
|
||||
public function update()
|
||||
{
|
||||
clog('navigate','success','consulte les notes de mise à jours');
|
||||
|
||||
@@ -147,7 +147,11 @@ class EventController extends Controller
|
||||
}
|
||||
|
||||
$course->user_id = $instructor;
|
||||
$course->location = request('location_n'.$l.'_p'.$p);
|
||||
if (request('location_n'.$l.'_p'.$p) != null) {
|
||||
$course->location = request('location_n'.$l.'_p'.$p);
|
||||
} else {
|
||||
$course->location = "";
|
||||
}
|
||||
$course->periode = $p;
|
||||
$course->level = $l;
|
||||
|
||||
|
||||
@@ -216,7 +216,10 @@ class ScheduleController extends Controller
|
||||
public function delete($id)
|
||||
{
|
||||
$event = \App\Event::find($id);
|
||||
|
||||
foreach ($event->courses as $course)
|
||||
{
|
||||
$course->delete();
|
||||
}
|
||||
$event->delete();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -49,13 +49,13 @@ class UserController extends Controller
|
||||
$user->email = request('email');
|
||||
|
||||
if (request('adresse') == null) {
|
||||
$user->adress = "Inconnu";
|
||||
$user->adress = "";
|
||||
} else {
|
||||
$user->adress = request('adresse');
|
||||
}
|
||||
|
||||
if (request('telephone') == null) {
|
||||
$user->telephone = "Inconnu";
|
||||
$user->telephone = "";
|
||||
} else {
|
||||
$user->telephone = request('telephone');
|
||||
}
|
||||
@@ -63,7 +63,7 @@ class UserController extends Controller
|
||||
$user->sexe = request('sexe');
|
||||
|
||||
if (request('age') == null) {
|
||||
$user->age = "Inconnu";
|
||||
$user->age = "";
|
||||
} else {
|
||||
$user->age = request('age');
|
||||
}
|
||||
@@ -122,13 +122,13 @@ class UserController extends Controller
|
||||
$user->email = request('email');
|
||||
|
||||
if (request('adresse') == null) {
|
||||
$user->adress = "Inconnu";
|
||||
$user->adress = "";
|
||||
} else {
|
||||
$user->adress = request('adresse');
|
||||
}
|
||||
|
||||
if (request('telephone') == null) {
|
||||
$user->telephone = "Inconnu";
|
||||
$user->telephone = "";
|
||||
} else {
|
||||
$user->telephone = request('telephone');
|
||||
}
|
||||
@@ -136,7 +136,7 @@ class UserController extends Controller
|
||||
$user->sexe = request('sexe');
|
||||
|
||||
if (request('age') == null) {
|
||||
$user->age = "Inconnu";
|
||||
$user->age = "";
|
||||
} else {
|
||||
$user->age = request('age');
|
||||
}
|
||||
|
||||
@@ -64,5 +64,6 @@ class Kernel extends HttpKernel
|
||||
'perm' => \App\Http\Middleware\CheckPerm::class,
|
||||
'fileperm' => \App\Http\Middleware\CheckFilePerm::class,
|
||||
'courseperm' => \App\Http\Middleware\CheckCoursePerm::class,
|
||||
'firstlogin' => \App\Http\Middleware\FirstLogin::class
|
||||
];
|
||||
}
|
||||
|
||||
28
app/Http/Middleware/FirstLogin.php
Normal file
28
app/Http/Middleware/FirstLogin.php
Normal file
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class FirstLogin
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if ($request->isMethod('get'))
|
||||
{
|
||||
if (\Auth::user()->use_default_psw == true)
|
||||
{
|
||||
return redirect('/admin/setup');
|
||||
}
|
||||
}
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
@@ -64,7 +64,7 @@ class TelescopeServiceProvider extends TelescopeApplicationServiceProvider
|
||||
{
|
||||
Gate::define('viewTelescope', function ($user) {
|
||||
return in_array($user->email, [
|
||||
//
|
||||
'admin@exvps.ca'
|
||||
]);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ return [
|
||||
|
|
||||
*/
|
||||
|
||||
'path' => env('TELESCOPE_PATH', 'telescope'),
|
||||
'path' => env('TELESCOPE_PATH', 'admin/telescope'),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
@@ -62,7 +62,7 @@ return [
|
||||
|
|
||||
*/
|
||||
|
||||
'enabled' => env('TELESCOPE_ENABLED', true),
|
||||
'enabled' => env('TELESCOPE_ENABLED', false),
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
@@ -77,6 +77,7 @@ return [
|
||||
|
||||
'middleware' => [
|
||||
'web',
|
||||
'auth',
|
||||
Authorize::class,
|
||||
],
|
||||
|
||||
|
||||
@@ -20,12 +20,13 @@ class CreateUsersTable extends Migration
|
||||
$table->string('email')->unique();
|
||||
$table->string('password');
|
||||
$table->string('rank_id')->default(1);
|
||||
$table->string('adress')->default('unknown');
|
||||
$table->string('telephone')->default('unknown');
|
||||
$table->string('adress')->default('');
|
||||
$table->string('telephone')->default('');
|
||||
$table->string('age');
|
||||
$table->string('avatar')->default('1');
|
||||
$table->string('sexe');
|
||||
$table->string('job_id')->default(6);
|
||||
$table->boolean('use_default_psw')->default(true);
|
||||
$table->string('api_token', 60)->unique()->default(str_shuffle(str_random(60)));
|
||||
$table->rememberToken();
|
||||
$table->timestamps();
|
||||
|
||||
@@ -18,7 +18,7 @@ class UsersTableSeeder extends Seeder
|
||||
'email' => 'visiteur@exvps.ca',
|
||||
'password' => bcrypt('f329er8kl2jHJGHdEj12567'),
|
||||
'rank_id' => '1',
|
||||
'adress' => 'Inconnu',
|
||||
'adress' => '',
|
||||
'age' => '99',
|
||||
'avatar' => '3',
|
||||
'sexe' => 'm',
|
||||
@@ -31,7 +31,7 @@ class UsersTableSeeder extends Seeder
|
||||
'email' => 'admin@exvps.ca',
|
||||
'password' => bcrypt('SuperAdmin'),
|
||||
'rank_id' => '1',
|
||||
'adress' => 'Inconnu',
|
||||
'adress' => '',
|
||||
'age' => '99',
|
||||
'avatar' => '3',
|
||||
'sexe' => 'm',
|
||||
|
||||
14
public/css/custom.css
vendored
14
public/css/custom.css
vendored
@@ -1894,3 +1894,17 @@ tfoot > tr {
|
||||
.overflow-auto {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.parsley-errors-list {
|
||||
list-style: none;
|
||||
padding: 0px;
|
||||
color: #f44336;
|
||||
}
|
||||
|
||||
.form-control {
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
||||
.bootstrap-select {
|
||||
margin-top: -12px;
|
||||
}
|
||||
55
public/js/plugins/parsley-extra.min.js
vendored
Normal file
55
public/js/plugins/parsley-extra.min.js
vendored
Normal file
@@ -0,0 +1,55 @@
|
||||
// Validation errors messages for Parsley
|
||||
// Load this after Parsley
|
||||
|
||||
Parsley.addMessages('fr', {
|
||||
defaultMessage: "Cette valeur semble non valide.",
|
||||
type: {
|
||||
email: "Cette valeur n'est pas une adresse email valide.",
|
||||
url: "Cette valeur n'est pas une URL valide.",
|
||||
number: "Cette valeur doit être un nombre.",
|
||||
integer: "Cette valeur doit être un entier.",
|
||||
digits: "Cette valeur doit être numérique.",
|
||||
alphanum: "Cette valeur doit être alphanumérique."
|
||||
},
|
||||
notblank: "Cette valeur ne peut pas être vide.",
|
||||
required: "Ce champ est requis.",
|
||||
pattern: "Cette valeur semble non valide.",
|
||||
min: "Cette valeur ne doit pas être inférieure à %s.",
|
||||
max: "Cette valeur ne doit pas excéder %s.",
|
||||
range: "Cette valeur doit être comprise entre %s et %s.",
|
||||
minlength: "Cette chaîne est trop courte. Elle doit avoir au minimum %s caractères.",
|
||||
maxlength: "Cette chaîne est trop longue. Elle doit avoir au maximum %s caractères.",
|
||||
length: "Cette valeur doit contenir entre %s et %s caractères.",
|
||||
mincheck: "Vous devez sélectionner au moins %s choix.",
|
||||
maxcheck: "Vous devez sélectionner %s choix maximum.",
|
||||
check: "Vous devez sélectionner entre %s et %s choix.",
|
||||
equalto: "Cette valeur devrait être identique."
|
||||
});
|
||||
|
||||
Parsley.setLocale('fr');
|
||||
|
||||
window.Parsley
|
||||
.addValidator('password', {
|
||||
requirementType: 'boolean',
|
||||
validateString: function(value, requirement) {
|
||||
console.log(/^(?=.*[\d])(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*])[\w!@#$%^&*]{8,}$/.test(value));
|
||||
return /^(?=.*[\d])(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*])[\w!@#$%^&*]{8,}$/.test(value);
|
||||
},
|
||||
messages: {
|
||||
fr: 'Le mot de passe doit contenir au moins 8 caractères, une lettre majuscule, une lettre minuscule, un chiffre et un caractères spécial'
|
||||
}
|
||||
});
|
||||
|
||||
window.Parsley.on('field:error', function (fieldInstance) {
|
||||
var messages = ParsleyUI.getErrorsMessages(fieldInstance);
|
||||
var errorMsg = messages.join(';');
|
||||
fieldInstance.$element.parent().addClass('has-danger');
|
||||
fieldInstance.$element.parent().removeClass('has-success');
|
||||
|
||||
});
|
||||
window.Parsley.on('field:success', function (fieldInstance) {
|
||||
if (fieldInstance.$element.val() != "") {
|
||||
fieldInstance.$element.parent().removeClass('has-danger');
|
||||
fieldInstance.$element.parent().addClass('has-success');
|
||||
}
|
||||
});
|
||||
2
public/js/plugins/parsley.min.js
vendored
Normal file
2
public/js/plugins/parsley.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
14
resources/custom.css
vendored
14
resources/custom.css
vendored
@@ -1894,3 +1894,17 @@ tfoot > tr {
|
||||
.overflow-auto {
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.parsley-errors-list {
|
||||
list-style: none;
|
||||
padding: 0px;
|
||||
color: #f44336;
|
||||
}
|
||||
|
||||
.form-control {
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
||||
.bootstrap-select {
|
||||
margin-top: -12px;
|
||||
}
|
||||
@@ -16,6 +16,9 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="alert alert-danger" role="alert">
|
||||
<i class="fas fa-exclamation-triangle text-white fa-2x mr-3"></i>Plusieurs fonctionnalité sont <strong>DÉSACTIVÉ</strong> le temps de les moderniser
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<p>
|
||||
@@ -41,16 +44,6 @@
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="list-group-item">
|
||||
<div class="row">
|
||||
<div class="text-success" style="font-size: 1.3rem;width: 1.5rem">
|
||||
<i class="fas fa-plus"></i>
|
||||
</div>
|
||||
<div class="col m-auto text-left">
|
||||
Ajout d'un lien avec Google Drive
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="list-group-item">
|
||||
<div class="row">
|
||||
<div class="text-success" style="font-size: 1.3rem;width: 1.5rem">
|
||||
|
||||
@@ -1,140 +1,144 @@
|
||||
@extends('layouts.admin.main')
|
||||
|
||||
@section('content')
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<strong class="card-title">Ajouter un utilisateur <a href="#"><i class="fa fa-question-circle" aria-hidden="true"></i>
|
||||
</a></strong>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form action="/admin/user/add" method="post">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="firstname">Prénom</label>
|
||||
<input type="text" class="form-control" name="firstname" id="firstname" aria-describedby="helpId" placeholder="John" required>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<div class="col-md-12">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<strong class="card-title">Ajouter un utilisateur <a href="#"><i class="fa fa-question-circle"
|
||||
aria-hidden="true"></i>
|
||||
</a></strong>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<form id="form" action="/admin/user/add" method="post">
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="firstname">Prénom</label>
|
||||
<input type="text" class="form-control" name="firstname" id="firstname"
|
||||
aria-describedby="helpId" placeholder="John" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="lastname">Nom de famille</label>
|
||||
<input type="text" class="form-control" name="lastname" id="lastname"
|
||||
aria-describedby="helpId" placeholder="Doe" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="lastname">Nom de famille</label>
|
||||
<input type="text" class="form-control" name="lastname" id="lastname" aria-describedby="helpId" placeholder="Doe" required>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<div class="alert alert-warning" id="email_alert" role="alert" style="display:none;">
|
||||
Les adresses email doivent être identique
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="email">Email</label>
|
||||
<input type="email" class="form-control" name="email" id="email"
|
||||
aria-describedby="emailHelp" placeholder="exemple@exvps.ca" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="email">Confirmer l'addresse email</label>
|
||||
<input type="email" class="form-control" name="emailc" id="emailc"
|
||||
aria-describedby="emailHelp" placeholder="exemple@exvps.ca"
|
||||
data-parsley-equalto="#email" required
|
||||
data-parsley-error-message="Les emails ne sont pas identique">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="alert alert-warning" id="email_alert" role="alert" style="display:none;">
|
||||
Les adresses email doivent être identique
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="email">Email</label>
|
||||
<input type="email" class="form-control" name="email" id="email" aria-describedby="emailHelp" placeholder="exemple@c-cms.cf" onkeyup="checkEmail()" required>
|
||||
<small id="emailHelp" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="adresse">Adresse</label>
|
||||
<input type="text" class="form-control" name="adresse" id="adresse"
|
||||
aria-describedby="helpId" placeholder="14 ave Des Rue, Rimouski">
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="telephone">Telephone</label>
|
||||
<input type="tel"
|
||||
class="form-control" name="telephone" id="telephone" aria-describedby="helpId"
|
||||
placeholder="213-546-5401" pattern="([0-9]{3}-[0-9]{3}-[0-9]{4})*"
|
||||
data-parsley-error-message="Le numéro de téléphone est invalide">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="email">Confirmer l'addresse email</label>
|
||||
<input type="email" class="form-control" name="emailc" id="emailc" aria-describedby="emailHelp" placeholder="exemple@c-cms.cf" onkeyup="checkEmail()" required>
|
||||
<small id="emailHelp" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<div class="row mb-4">
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="sexe">Sexe</label>
|
||||
<select class="form-control selectpicker" data-style="btn btn-link" name="sexe"
|
||||
id="sexe" required>
|
||||
<option value="m">Homme</option>
|
||||
<option value="f">Femme</option>
|
||||
<option value="a">Autre</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group" style="margin-top: 26px;">
|
||||
<label for="age" style="margin-top: -7px;">Age</label>
|
||||
<input type="number" class="form-control" name="age" id="age" aria-describedby="helpId"
|
||||
placeholder="Age" min="0" max="100" style="padding-top: 17px;">
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="rank">Grade</label>
|
||||
<select class="form-control selectpicker" data-style="btn btn-link" name="rank"
|
||||
id="rank" required>
|
||||
@foreach ($RankList as $rank)
|
||||
<option value="{{$rank->id}}">{{$rank->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="job">Poste</label>
|
||||
<select class="form-control selectpicker" data-style="btn btn-link" name="job" id="job"
|
||||
required>
|
||||
@foreach ($JobsList as $job)
|
||||
<option value="{{$job->id}}">{{$job->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="adresse">Adresse</label>
|
||||
<input type="text" class="form-control" name="adresse" id="adresse" aria-describedby="helpId" placeholder="14 ave Des Rue, Rimouski">
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
<div class="alert alert-warning" id="psw_alert" role="alert" style="display:none;">
|
||||
Les mot de passe doivent être identique
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="psw">Mot de passe</label>
|
||||
<input type="password" class="form-control" name="psw" id="psw"
|
||||
placeholder="Supermotdepasse" data-parsley-password required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="pswc">Confirmer le mot de passe</label>
|
||||
<input type="password" class="form-control" name="pswc" id="pswc"
|
||||
placeholder="Supermotdepasse" data-parsley-equalto="#psw"
|
||||
data-parsley-error-message="Les mot de passe ne sont pas identique" required>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="telephone">Telephone</label>
|
||||
<input type="tel"
|
||||
class="form-control" name="telephone" id="telephone" aria-describedby="helpId" placeholder="(XXX) XXX-XXXX">
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-info">Si vous souhaiter recevoir des notifications par SMS</span></small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="sexe">Sexe</label>
|
||||
<select class="form-control" name="sexe" id="sexe" required>
|
||||
<option value="m">Homme</option>
|
||||
<option value="f">Femme</option>
|
||||
<option value="a">Autre</option>
|
||||
</select>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="age">Age</label>
|
||||
<input type="number" class="form-control" name="age" id="age" aria-describedby="helpId" placeholder="Age" min="0" max="100">
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="rank">Grade</label>
|
||||
<select class="form-control" name="rank" id="rank" required>
|
||||
@foreach ($RankList as $rank)
|
||||
<option value="{{$rank->id}}">{{$rank->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="job">Poste</label>
|
||||
<select class="form-control" name="job" id="job" required>
|
||||
@foreach ($JobsList as $job)
|
||||
<option value="{{$job->id}}">{{$job->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="alert alert-warning" id="psw_alert" role="alert" style="display:none;">
|
||||
Les mot de passe doivent être identique
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="psw">Mot de passe</label>
|
||||
<input type="password" class="form-control" name="psw" id="psw" placeholder="Supermotdepasse" onkeyup="checkPassword()">
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="pswc">Confirmer le mot de passe</label>
|
||||
<input type="password" class="form-control" name="pswc" id="pswc" placeholder="Supermotdepasse" onkeyup="checkPassword()">
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<button type="submit" id="submit" class="btn btn-primary">Submit</button>
|
||||
</form>
|
||||
<button type="submit" id="submit" class="btn btn-primary">Submit</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('breadcrumb')
|
||||
Utilisateur / Ajouter
|
||||
@endsection
|
||||
|
||||
@section('custom_scripts')
|
||||
<script src="/assets/admin/assets/js/user.js"></script>
|
||||
<script>
|
||||
$('#form').parsley();
|
||||
</script>
|
||||
@endsection
|
||||
|
||||
@@ -14,125 +14,112 @@
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="firstname">Prénom</label>
|
||||
<input type="text" class="form-control" name="firstname" id="firstname" aria-describedby="helpId" placeholder="John" required value={{$user->firstname}}>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<input type="text" class="form-control" name="firstname" id="firstname"
|
||||
aria-describedby="helpId" placeholder="John" required value="{{$user->firstname}}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="lastname">Nom de famille</label>
|
||||
<input type="text" class="form-control" name="lastname" id="lastname" aria-describedby="helpId" placeholder="Doe" required value={{$user->lastname}}>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<input type="text" class="form-control" name="lastname" id="lastname"
|
||||
aria-describedby="helpId" placeholder="Doe" required value="{{$user->lastname}}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="alert alert-warning" id="email_alert" role="alert" style="display:none;">
|
||||
Les adresses email doivent être identique
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="email">Email</label>
|
||||
<input type="email" class="form-control" name="email" id="email" aria-describedby="emailHelp" placeholder="exemple@c-cms.cf" onkeyup="checkEmail()" required value={{$user->email}}>
|
||||
<small id="emailHelp" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<input type="email" class="form-control" name="email" id="email"
|
||||
aria-describedby="emailHelp" placeholder="exemple@exvps.ca" value="{{$user->email}}" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="email">Confirmer l'addresse email</label>
|
||||
<input type="email" class="form-control" name="emailc" id="emailc" aria-describedby="emailHelp" placeholder="exemple@c-cms.cf" onkeyup="checkEmail()" required value={{$user->email}}>
|
||||
<small id="emailHelp" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<input type="email" class="form-control" name="emailc" id="emailc"
|
||||
aria-describedby="emailHelp" placeholder="exemple@exvps.ca"
|
||||
data-parsley-equalto="#email" required
|
||||
data-parsley-error-message="Les emails ne sont pas identique" value="{{$user->email}}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="adresse">Adresse</label>
|
||||
<input type="text" class="form-control" name="adresse" id="adresse" aria-describedby="helpId" placeholder="14 ave Des Rue, Rimouski" value={{$user->adress}}>
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
<label for="adresse">Adresse</label>
|
||||
<input type="text" class="form-control" name="adresse" id="adresse"
|
||||
aria-describedby="helpId" placeholder="14 ave Des Rue, Rimouski" value="{{$user->adress}}">
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="telephone">Telephone</label>
|
||||
<input type="tel"
|
||||
class="form-control" name="telephone" id="telephone" aria-describedby="helpId" placeholder="(XXX) XXX-XXXX" value={{$user->telephone}}>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-info">Si vous souhaiter recevoir des notifications par SMS</span></small>
|
||||
<label for="telephone">Telephone</label>
|
||||
<input type="tel"
|
||||
class="form-control" name="telephone" id="telephone" aria-describedby="helpId"
|
||||
placeholder="213-546-5401" pattern="([0-9]{3}-[0-9]{3}-[0-9]{4})*"
|
||||
data-parsley-error-message="Le numéro de téléphone est invalide" value="{{$user->telephone}}">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-4">
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="sexe">Sexe</label>
|
||||
<select class="form-control selectpicker" data-style="btn btn-link" name="sexe"
|
||||
id="sexe" required>
|
||||
<option value="m" @if($user->sexe == 'm') selected @endif >Homme</option>
|
||||
<option value="f" @if($user->sexe == 'm') selected @endif >Femme</option>
|
||||
<option value="a" @if($user->sexe == 'm') selected @endif >Autre</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group" style="margin-top: 26px;">
|
||||
<label for="age" style="margin-top: -7px;">Age</label>
|
||||
<input type="number" class="form-control" name="age" id="age" aria-describedby="helpId"
|
||||
placeholder="Age" min="0" max="100" style="padding-top: 17px;">
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="rank">Grade</label>
|
||||
<select class="form-control selectpicker" data-style="btn btn-link" name="rank"
|
||||
id="rank" required>
|
||||
@foreach ($RankList as $rank)
|
||||
<option value="{{$rank->id}}" @if($user->rank_id == $rank->id) selected @endif >{{$rank->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="job">Poste</label>
|
||||
<select class="form-control selectpicker" data-style="btn btn-link" name="job" id="job"
|
||||
required>
|
||||
@foreach ($JobsList as $job)
|
||||
<option value="{{$job->id}}" @if($user->job_id == $job->id) selected @endif>{{$job->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="sexe">Sexe</label>
|
||||
<select class="form-control" name="sexe" id="sexe" required>
|
||||
@switch($user->sexe)
|
||||
@case("m")
|
||||
<option value="m">Homme</option>
|
||||
@break
|
||||
@case("f")
|
||||
<option value="f">Femme</option>
|
||||
@break
|
||||
@default
|
||||
<option value="a">Autre</option>
|
||||
@endswitch
|
||||
<option value="m">Homme</option>
|
||||
<option value="f">Femme</option>
|
||||
<option value="a">Autre</option>
|
||||
</select>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="age">Age</label>
|
||||
<input type="number" class="form-control" name="age" id="age" aria-describedby="helpId" placeholder="Age" min="0" max="100" value={{$user->age}}>
|
||||
<small id="helpId" class="form-text text-muted"></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="rank">Grade</label>
|
||||
<select class="form-control" name="rank" id="rank" required>
|
||||
<option value={{$user->rank->id}}>{{$user->rank->name}}</option>
|
||||
@foreach ($RankList as $rank)
|
||||
<option value="{{$rank->id}}">{{$rank->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-3">
|
||||
<div class="form-group">
|
||||
<label for="job">Poste</label>
|
||||
<select class="form-control" name="job" id="job" required>
|
||||
<option value={{$user->job->id}}>{{$user->job->name}}</option>
|
||||
@foreach ($JobsList as $job)
|
||||
<option value="{{$job->id}}">{{$job->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<hr>
|
||||
<div class="alert alert-warning" id="psw_alert" role="alert" style="display:none;">
|
||||
Les mot de passe doivent être identique
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="psw">Mot de passe</label>
|
||||
<input type="password" class="form-control" name="psw" id="psw" placeholder="Supermotdepasse" onkeyup="checkPassword()">
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<label for="psw">Mot de passe</label>
|
||||
<input type="password" class="form-control" name="psw" id="psw"
|
||||
placeholder="Supermotdepasse" data-parsley-password>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<div class="form-group">
|
||||
<label for="pswc">Confirmer le mot de passe</label>
|
||||
<input type="password" class="form-control" name="pswc" id="pswc" placeholder="Supermotdepasse" onkeyup="checkPassword()">
|
||||
<small id="helpId" class="form-text text-muted"><span class="badge badge-warning">Requis</span></small>
|
||||
<label for="pswc">Confirmer le mot de passe</label>
|
||||
<input type="password" class="form-control" name="pswc" id="pswc"
|
||||
placeholder="Supermotdepasse" data-parsley-equalto="#psw"
|
||||
data-parsley-error-message="Les mot de passe ne sont pas identique">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -143,10 +130,8 @@
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('breadcrumb')
|
||||
Utilisateur / Modifier
|
||||
@endsection
|
||||
|
||||
@section('custom_scripts')
|
||||
<script src="/assets/admin/assets/js/user.js"></script>
|
||||
<script>
|
||||
$('#form').parsley();
|
||||
</script>
|
||||
@endsection
|
||||
|
||||
103
resources/views/admin/user/profil/setup.blade.php
Normal file
103
resources/views/admin/user/profil/setup.blade.php
Normal file
@@ -0,0 +1,103 @@
|
||||
@extends('layouts.admin.main')
|
||||
|
||||
@section('content')
|
||||
<div class="col-md-8 col-12 mr-auto ml-auto">
|
||||
<!-- Wizard container -->
|
||||
<div class="wizard-container">
|
||||
<div class="card card-wizard active" data-color="primary">
|
||||
<form id="form" action="/admin/setup" method="post" data-parsley-validate novalidate>
|
||||
<div class="card-header text-center">
|
||||
<h3 class="card-title">
|
||||
Bienvenue {{ Auth::user()->fullname() }},
|
||||
</h3>
|
||||
<h5 class="card-description">Avant de pouvoir continer vous devez répondre a quelques
|
||||
questions</h5>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<h5>Renseignement personnel</h5>
|
||||
@csrf
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="">Nom <sup class="text-danger">*</sup></label>
|
||||
<input type="text" class="form-control" name="lastname"
|
||||
value="{{Auth::user()->lastname}}" id="" aria-describedby="helpId" required
|
||||
placeholder="Doe">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="">Prenom <sup class="text-danger">*</sup></label>
|
||||
<input type="text" class="form-control" name="firstname" id=""
|
||||
value="{{Auth::user()->firstname}}" aria-describedby="helpId"
|
||||
placeholder="John" required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="">Adresse</label>
|
||||
<input type="text" class="form-control" name="address" id=""
|
||||
value="{{Auth::user()->adress}}" aria-describedby="helpId"
|
||||
placeholder="16 ave DesRoche, Montréal, QC G0L 1B0">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="">Téléphone</label>
|
||||
<input type="tel" class="form-control" name="telephone" id=""
|
||||
value="{{Auth::user()->telephone}}" aria-describedby="helpId"
|
||||
placeholder="213-546-5401" pattern="([0-9]{3}-[0-9]{3}-[0-9]{4})*"
|
||||
data-parsley-error-message="Le numéro de téléphone est invalide">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="">Sexe</label>
|
||||
<select class="form-control selectpicker" data-style="btn btn-link" name="sexe" id="">
|
||||
<option @if(Auth::user()->sexe == 'm') selected @endif value="m">Homme</option>
|
||||
<option @if(Auth::user()->sexe == 'f') selected @endif value="f">Femme</option>
|
||||
<option @if(Auth::user()->sexe == 'a') selected @endif value="a">Autre</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<h5 class="mt-5">Sécurité</h5>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="psw">Nouveau mot de passe <sup class="text-danger">*</sup></label>
|
||||
<input type="password" class="form-control" name="psw" id="psw"
|
||||
aria-describedby="helpId" placeholder="" data-parsley-password required>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="psw">Confimer le nouveau mot de passe <sup class="text-danger">*</sup></label>
|
||||
<input type="password" class="form-control" name="psw" id="psw"
|
||||
aria-describedby="helpId" placeholder="" data-parsley-equalto="#psw" required
|
||||
data-parsley-error-message="Les mot de passe ne sont pas identique">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<sup class="text-danger">*</sup> <small>Champ requis</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-footer">
|
||||
<input type="submit" class="btn btn-primary btn-block" value="Continuer">
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
||||
|
||||
@section('breadcrumb')
|
||||
Dashboard
|
||||
@endsection
|
||||
|
||||
@section('scripts')
|
||||
<script>
|
||||
$('#form').parsley();
|
||||
</script>
|
||||
@endsection
|
||||
@@ -29,6 +29,9 @@
|
||||
<script src="/js/plugins/Chart.min.js"></script>
|
||||
<!-- Notifications Plugin -->
|
||||
<script src="/js/plugins/bootstrap-notify.js"></script>
|
||||
<!-- Parsley Plugin -->
|
||||
<script src="/js/plugins/parsley.min.js"></script>
|
||||
<script src="/js/plugins/parsley-extra.min.js"></script>
|
||||
|
||||
<script src="/js/plugins/trumbowyg/trumbowyg.min.js"></script>
|
||||
<script src="/js/plugins/trumbowyg/langs/fr.js"></script>
|
||||
|
||||
@@ -13,6 +13,12 @@ Breadcrumbs::for('admin.dashboard', function ($trail) {
|
||||
$trail->push('Dashboard', route('admin.dashboard'));
|
||||
});
|
||||
|
||||
// Admin > Setup
|
||||
Breadcrumbs::for('admin.setup', function ($trail) {
|
||||
$trail->parent('admin.dashboard');
|
||||
$trail->push('Configuration initiale', route('admin.setup'));
|
||||
});
|
||||
|
||||
// Admin > Update
|
||||
Breadcrumbs::for('admin.update', function ($trail) {
|
||||
$trail->parent('admin.dashboard');
|
||||
@@ -64,7 +70,7 @@ Breadcrumbs::for('admin.user', function ($trail, $id) {
|
||||
|
||||
// Admin > User > Add
|
||||
Breadcrumbs::for('admin.user.add', function ($trail) {
|
||||
$trail->parent('admin.user');
|
||||
$trail->parent('admin.users');
|
||||
$trail->push('Ajouter un utilisateur', route('admin.user.add'));
|
||||
});
|
||||
|
||||
|
||||
315
routes/web.php
315
routes/web.php
@@ -1,7 +1,9 @@
|
||||
<?php
|
||||
|
||||
use \App\Notifications\sms;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Web Routes
|
||||
@@ -16,8 +18,7 @@ use Illuminate\Support\Facades\Storage;
|
||||
/* Basic Auth Route */
|
||||
Auth::routes();
|
||||
Route::get('logout', 'Auth\LoginController@logout')->name('logout');
|
||||
Route::get('/ocom/create','OCOMController@updateOCOMDB');
|
||||
|
||||
Route::get('/ocom/create', 'OCOMController@updateOCOMDB');
|
||||
|
||||
|
||||
/** Public Route */
|
||||
@@ -29,187 +30,191 @@ Route::get('/activity/{id}', 'ComplementaryActivityController@show');
|
||||
Route::get('/picture/{id}', 'PictureController@show');
|
||||
Route::get('/pictures', 'PictureController@index');
|
||||
|
||||
Route::get('/file/get','GoogleDriveController@getFile')->middleware('fileperm:file,r');
|
||||
@
|
||||
Route::middleware(['auth'])->name('admin.')->group(function () {
|
||||
Route::get('/file/get', 'GoogleDriveController@getFile')->middleware('fileperm:file,r');
|
||||
|
||||
/** Setup */
|
||||
Route::get('/admin/setup', 'AdminController@setup')->middleware('auth')->name('admin.setup');
|
||||
Route::post('/admin/setup', 'AdminController@saveSetup')->middleware('auth');
|
||||
|
||||
Route::middleware(['auth', 'firstlogin'])->name('admin.')->group(function () {
|
||||
|
||||
/* Espace Administration Route */
|
||||
|
||||
/** Dashboard & General */
|
||||
Route::get('/admin', 'AdminController@index')->name('dashboard');
|
||||
Route::get('/admin/update', 'AdminController@update')->name('update');
|
||||
Route::get('/admin/status','AdminController@status')->name('status');
|
||||
/** Dashboard & General */
|
||||
Route::get('/admin', 'AdminController@index')->name('dashboard');
|
||||
Route::get('/admin/update', 'AdminController@update')->name('update');
|
||||
Route::get('/admin/status', 'AdminController@status')->name('status');
|
||||
|
||||
/** Schedule */
|
||||
Route::get('/admin/schedule', 'CalendarController@index')->middleware('perm:schedule_see')->name('schedule');
|
||||
Route::get('/admin/schedule/pdf/event/{id}','ScheduleController@printtopdf')->middleware('perm:schedule_see')->name('schedule.pdf');
|
||||
Route::get('/admin/schedule/add/{date}','ScheduleController@create')->middleware('perm:schedule_add')->name('schedule.add');
|
||||
Route::get('/admin/schedule/edit/{id}','EventController@edit')->middleware('perm:schedule_edit')->name('schedule.edit');
|
||||
Route::post('/admin/schedule/event/add','EventController@Store')->middleware('perm:schedule_add');
|
||||
Route::post('/admin/schedule/event/edit/{id}','EventController@update')->middleware('perm:schedule_edit');
|
||||
|
||||
/** Statistique */
|
||||
Route::get('/admin/stats/log' , 'LogController@index')->middleware('perm:stats_see')->name('stats.log');
|
||||
Route::get('/admin/stats/instruction' , 'StatsController@instruction')->middleware('perm:stats_see')->name('stats.instruction');
|
||||
/** Schedule */
|
||||
Route::get('/admin/schedule', 'CalendarController@index')->middleware('perm:schedule_see')->name('schedule');
|
||||
Route::get('/admin/schedule/pdf/event/{id}', 'ScheduleController@printtopdf')->middleware('perm:schedule_see')->name('schedule.pdf');
|
||||
Route::get('/admin/schedule/add/{date}', 'ScheduleController@create')->middleware('perm:schedule_add')->name('schedule.add');
|
||||
Route::get('/admin/schedule/edit/{id}', 'EventController@edit')->middleware('perm:schedule_edit')->name('schedule.edit');
|
||||
Route::post('/admin/schedule/event/add', 'EventController@Store')->middleware('perm:schedule_add');
|
||||
Route::post('/admin/schedule/event/edit/{id}', 'EventController@update')->middleware('perm:schedule_edit');
|
||||
|
||||
/** Message */
|
||||
Route::get('/admin/message' , 'MessageController@index')->middleware('perm:msg_see')->name('message');
|
||||
Route::get('/admin/message/add' , 'MessageController@create')->middleware('perm:msg_add')->name('message.add');
|
||||
Route::post('/admin/message/add' , 'MessageController@store')->middleware('perm:msg_add');
|
||||
Route::get('/admin/message/{id}', ['uses' =>'MessageController@show'])->middleware('perm:msg_see')->name('message.show');
|
||||
/** Statistique */
|
||||
Route::get('/admin/stats/log', 'LogController@index')->middleware('perm:stats_see')->name('stats.log');
|
||||
Route::get('/admin/stats/instruction', 'StatsController@instruction')->middleware('perm:stats_see')->name('stats.instruction');
|
||||
|
||||
/** User */
|
||||
Route::get('/admin/user' , 'UserController@index')->middleware('perm:user_see')->name('users');
|
||||
Route::get('/admin/user/{id}' , 'UserController@show')->middleware('perm:user_see')->name('user');
|
||||
Route::get('/admin/user/{id}/course','UserController@showCourses')->name('user.courses');
|
||||
Route::get('/admin/user/add' , 'UserController@create')->middleware('perm:user_add')->name('user.add');
|
||||
Route::post('/admin/user/add' , 'UserController@store')->middleware('perm:user_add');
|
||||
Route::get('/admin/user/edit/{id}' , 'UserController@edit')->middleware('perm:user_edit')->name('user.edit');
|
||||
Route::post('/admin/user/edit/{id}' , 'UserController@update')->middleware('perm:user_edit');
|
||||
/** Message */
|
||||
Route::get('/admin/message', 'MessageController@index')->middleware('perm:msg_see')->name('message');
|
||||
Route::get('/admin/message/add', 'MessageController@create')->middleware('perm:msg_add')->name('message.add');
|
||||
Route::post('/admin/message/add', 'MessageController@store')->middleware('perm:msg_add');
|
||||
Route::get('/admin/message/{id}', ['uses' => 'MessageController@show'])->middleware('perm:msg_see')->name('message.show');
|
||||
|
||||
/** Config */
|
||||
Route::get('/admin/config/instruction', 'ScheduleController@index')->middleware('perm:config_edit')->name('config.schedule');
|
||||
Route::get('/admin/config/instruction/event_type/create', 'EventTypeController@create')->middleware('perm:config_edit')->name('config.schedule.event_type.create');
|
||||
Route::post('/admin/config/instruction/event_type/create', 'EventTypeController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/instruction/event_type/{id}', 'EventTypeController@show')->middleware('perm:config_edit')->name('config.schedule.event_type');
|
||||
Route::patch('/admin/config/instruction/event_type/{id}', 'EventTypeController@update')->middleware('perm:config_edit');
|
||||
Route::patch('/admin/config/instruction' , 'ScheduleController@update')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/activity' , 'ComplementaryActivityController@index')->middleware('perm:config_edit')->name('config.complementary-activity');
|
||||
Route::get('/admin/config/activity/add' , 'ComplementaryActivityController@create')->middleware('perm:config_edit')->name('config.complementary-activity.add');
|
||||
Route::post('/admin/config/activity/add' , 'ComplementaryActivityController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/activity/edit/{id}' , 'ComplementaryActivityController@edit')->middleware('perm:config_edit')->name('config.complementary-activity.edit');
|
||||
Route::post('/admin/config/activity/edit/{id}' , 'ComplementaryActivityController@update')->middleware('perm:config_edit');
|
||||
Route::post('/admin/config/general/edit','ConfigController@update')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/' , 'ConfigController@index')->middleware('perm:config_edit')->name('config.general');
|
||||
Route::get('/admin/config/customisation','ConfigController@customisation')->middleware('perm:config_edit')->name('config.customisation');
|
||||
Route::post('/admin/config/customisation','ConfigController@customisationUpdate')->middleware('perm:config_edit');
|
||||
/** User */
|
||||
Route::get('/admin/user', 'UserController@index')->middleware('perm:user_see')->name('users');
|
||||
Route::get('/admin/user/add', 'UserController@create')->middleware('perm:user_add')->name('user.add');
|
||||
Route::post('/admin/user/add', 'UserController@store')->middleware('perm:user_add');
|
||||
Route::get('/admin/user/{id}', 'UserController@show')->middleware('perm:user_see')->name('user');
|
||||
Route::get('/admin/user/{id}/course', 'UserController@showCourses')->name('user.courses');
|
||||
Route::get('/admin/user/edit/{id}', 'UserController@edit')->middleware('perm:user_edit')->name('user.edit');
|
||||
Route::post('/admin/user/edit/{id}', 'UserController@update')->middleware('perm:user_edit');
|
||||
|
||||
Route::get('/admin/config/ranks','RankController@index')->middleware('perm:config_edit')->name('config.rank');
|
||||
Route::get('/admin/config/ranks/add','RankController@create')->middleware('perm:config_edit')->name('config.rank.add');
|
||||
Route::post('/admin/config/ranks/add','RankController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/ranks/{id}','RankController@show')->middleware('perm:config_edit')->name('config.rank.edit');
|
||||
Route::post('/admin/config/ranks/{id}','RankController@update')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/jobs','JobController@index')->middleware('perm:config_edit')->name('config.jobs');
|
||||
Route::get('/admin/config/jobs/add','JobController@create')->middleware('perm:config_edit')->name('config.jobs.add');
|
||||
Route::post('/admin/config/jobs/add','JobController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/jobs/{id}','JobController@edit')->middleware('perm:config_edit')->name('config.jobs.edit');
|
||||
Route::post('/admin/config/jobs/{id}','JobController@update')->middleware('perm:config_edit');
|
||||
/** Config */
|
||||
Route::get('/admin/config/instruction', 'ScheduleController@index')->middleware('perm:config_edit')->name('config.schedule');
|
||||
Route::get('/admin/config/instruction/event_type/create', 'EventTypeController@create')->middleware('perm:config_edit')->name('config.schedule.event_type.create');
|
||||
Route::post('/admin/config/instruction/event_type/create', 'EventTypeController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/instruction/event_type/{id}', 'EventTypeController@show')->middleware('perm:config_edit')->name('config.schedule.event_type');
|
||||
Route::patch('/admin/config/instruction/event_type/{id}', 'EventTypeController@update')->middleware('perm:config_edit');
|
||||
Route::patch('/admin/config/instruction', 'ScheduleController@update')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/activity', 'ComplementaryActivityController@index')->middleware('perm:config_edit')->name('config.complementary-activity');
|
||||
Route::get('/admin/config/activity/add', 'ComplementaryActivityController@create')->middleware('perm:config_edit')->name('config.complementary-activity.add');
|
||||
Route::post('/admin/config/activity/add', 'ComplementaryActivityController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/activity/edit/{id}', 'ComplementaryActivityController@edit')->middleware('perm:config_edit')->name('config.complementary-activity.edit');
|
||||
Route::post('/admin/config/activity/edit/{id}', 'ComplementaryActivityController@update')->middleware('perm:config_edit');
|
||||
Route::post('/admin/config/general/edit', 'ConfigController@update')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/', 'ConfigController@index')->middleware('perm:config_edit')->name('config.general');
|
||||
Route::get('/admin/config/customisation', 'ConfigController@customisation')->middleware('perm:config_edit')->name('config.customisation');
|
||||
Route::post('/admin/config/customisation', 'ConfigController@customisationUpdate')->middleware('perm:config_edit');
|
||||
|
||||
Route::get('/admin/config/files' , 'ConfigController@showfilesConfig')->middleware('perm:config_edit')->name('config.files');
|
||||
Route::post('/admin/config/files' , 'ConfigController@editfilesConfig')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/ranks', 'RankController@index')->middleware('perm:config_edit')->name('config.rank');
|
||||
Route::get('/admin/config/ranks/add', 'RankController@create')->middleware('perm:config_edit')->name('config.rank.add');
|
||||
Route::post('/admin/config/ranks/add', 'RankController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/ranks/{id}', 'RankController@show')->middleware('perm:config_edit')->name('config.rank.edit');
|
||||
Route::post('/admin/config/ranks/{id}', 'RankController@update')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/jobs', 'JobController@index')->middleware('perm:config_edit')->name('config.jobs');
|
||||
Route::get('/admin/config/jobs/add', 'JobController@create')->middleware('perm:config_edit')->name('config.jobs.add');
|
||||
Route::post('/admin/config/jobs/add', 'JobController@store')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/jobs/{id}', 'JobController@edit')->middleware('perm:config_edit')->name('config.jobs.edit');
|
||||
Route::post('/admin/config/jobs/{id}', 'JobController@update')->middleware('perm:config_edit');
|
||||
|
||||
/** Public page */
|
||||
Route::get('/admin/public/edit/{config}', 'PublicController@edit')->middleware('perm:config_edit');
|
||||
Route::post('/admin/public/edit/{config}', 'PublicController@update')->middleware('perm:config_edit');
|
||||
Route::get('/admin/config/files', 'ConfigController@showfilesConfig')->middleware('perm:config_edit')->name('config.files');
|
||||
Route::post('/admin/config/files', 'ConfigController@editfilesConfig')->middleware('perm:config_edit');
|
||||
|
||||
/** Picture */
|
||||
Route::get('/admin/picture','PictureController@indexAdmin')->middleware('perm:picture_see')->name('picture');
|
||||
Route::get('/admin/picture/add','PictureController@create')->middleware('perm:picture_add')->name('picture.add');
|
||||
Route::post('/admin/picture/add','PictureController@store')->middleware('perm:picture_add');
|
||||
Route::get('/admin/picture/edit/{id}','PictureController@edit')->middleware('perm:picture_edit')->name('picture.edit');
|
||||
Route::post('/admin/picture/edit/{id}','PictureController@update')->middleware('perm:picture_edit');
|
||||
/** Public page */
|
||||
Route::get('/admin/public/edit/{config}', 'PublicController@edit')->middleware('perm:config_edit');
|
||||
Route::post('/admin/public/edit/{config}', 'PublicController@update')->middleware('perm:config_edit');
|
||||
|
||||
/** Inventory */
|
||||
Route::get('/admin/inventory' , 'InventoryController@index')->middleware('perm:inventory_see')->name('inv');
|
||||
Route::get('/admin/inventory/management','InventoryController@management')->middleware('perm:inventory_edit')->name('inv.management');
|
||||
/** Picture */
|
||||
Route::get('/admin/picture', 'PictureController@indexAdmin')->middleware('perm:picture_see')->name('picture');
|
||||
Route::get('/admin/picture/add', 'PictureController@create')->middleware('perm:picture_add')->name('picture.add');
|
||||
Route::post('/admin/picture/add', 'PictureController@store')->middleware('perm:picture_add');
|
||||
Route::get('/admin/picture/edit/{id}', 'PictureController@edit')->middleware('perm:picture_edit')->name('picture.edit');
|
||||
Route::post('/admin/picture/edit/{id}', 'PictureController@update')->middleware('perm:picture_edit');
|
||||
|
||||
/** Item Category */
|
||||
Route::get('/admin/inventory/management/category','ItemCategoryController@index')->middleware('perm:inventory_edit')->name('inv.management.category');
|
||||
Route::get('/admin/inventory/management/category/add','ItemCategoryController@create')->middleware('perm:inventory_add')->name('inv.management.category.add');
|
||||
Route::post('/admin/inventory/management/category/add','ItemCategoryController@store')->middleware('perm:inventory_add');
|
||||
Route::get('/admin/inventory/management/category/edit/{id}','ItemCategoryController@edit')->middleware('perm:inventory_edit')->name('inv.management.category.edit');
|
||||
Route::post('/admin/inventory/management/category/edit/{id}','ItemCategoryController@update')->middleware('perm:inventory_edit');
|
||||
/** Inventory */
|
||||
Route::get('/admin/inventory', 'InventoryController@index')->middleware('perm:inventory_see')->name('inv');
|
||||
Route::get('/admin/inventory/management', 'InventoryController@management')->middleware('perm:inventory_edit')->name('inv.management');
|
||||
|
||||
/** News */
|
||||
Route::get('/admin/news','NewsController@indexAdmin')->middleware('perm:news_see')->name('news');
|
||||
Route::get('/admin/news/add','NewsController@create')->middleware('perm:news_add')->name('news.add');
|
||||
Route::post('/admin/news/add','NewsController@store')->middleware('perm:news_add');
|
||||
Route::get('/admin/news/edit/{id}','NewsController@edit')->middleware('perm:news_edit')->name('news.edit');
|
||||
Route::post('/admin/news/edit/{id}','NewsController@update')->middleware('perm:news_edit');
|
||||
/** Item Category */
|
||||
Route::get('/admin/inventory/management/category', 'ItemCategoryController@index')->middleware('perm:inventory_edit')->name('inv.management.category');
|
||||
Route::get('/admin/inventory/management/category/add', 'ItemCategoryController@create')->middleware('perm:inventory_add')->name('inv.management.category.add');
|
||||
Route::post('/admin/inventory/management/category/add', 'ItemCategoryController@store')->middleware('perm:inventory_add');
|
||||
Route::get('/admin/inventory/management/category/edit/{id}', 'ItemCategoryController@edit')->middleware('perm:inventory_edit')->name('inv.management.category.edit');
|
||||
Route::post('/admin/inventory/management/category/edit/{id}', 'ItemCategoryController@update')->middleware('perm:inventory_edit');
|
||||
|
||||
/** Articles */
|
||||
Route::get('/admin/article','ArticleController@index')->middleware('perm:article_see')->name('article');
|
||||
Route::get('/admin/article/activity/edit/{id}','ArticleController@editActivity')->middleware('perm:article_edit')->name('article.edit');
|
||||
Route::post('/admin/article/activity/edit/{id}','ArticleController@updateActivity')->middleware('perm:article_edit');
|
||||
Route::get('/admin/article/activity/picture/{id}','ArticleController@pictureActivity')->middleware('perm:article_edit');
|
||||
Route::get('/admin/article/activity/picture/{id}/add','ArticleController@pictureActivityCreate')->middleware('perm:article_edit');
|
||||
Route::post('/admin/article/activity/picture/{id}/add','ArticleController@pictureActivityStore')->middleware('perm:article_edit');
|
||||
/** News */
|
||||
Route::get('/admin/news', 'NewsController@indexAdmin')->middleware('perm:news_see')->name('news');
|
||||
Route::get('/admin/news/add', 'NewsController@create')->middleware('perm:news_add')->name('news.add');
|
||||
Route::post('/admin/news/add', 'NewsController@store')->middleware('perm:news_add');
|
||||
Route::get('/admin/news/edit/{id}', 'NewsController@edit')->middleware('perm:news_edit')->name('news.edit');
|
||||
Route::post('/admin/news/edit/{id}', 'NewsController@update')->middleware('perm:news_edit');
|
||||
|
||||
/** Booking */
|
||||
Route::get('/admin/booking','BookingController@index')->middleware('perm:booking_see');
|
||||
Route::get('/admin/booking/{id}','BookingController@show')->middleware('perm:booking_see');
|
||||
Route::get('/admin/booking/{type}/{id}','BookingController@index')->middleware('perm:booking_see');
|
||||
Route::get('/admin/booking/{type}/{id}/add','BookingController@create')->middleware('perm:booking_add');
|
||||
Route::post('/admin/booking/{type}/{id}/add','BookingController@store')->middleware('perm:booking_add');
|
||||
Route::get('/admin/inventory/booking' , 'InventoryController@booking')->middleware('perm:inventory_see');
|
||||
Route::post('/admin/booking/edit','BookingController@update')->middleware('perm:booking_see')->middleware('perm:booking_edit');
|
||||
/** Articles */
|
||||
Route::get('/admin/article', 'ArticleController@index')->middleware('perm:article_see')->name('article');
|
||||
Route::get('/admin/article/activity/edit/{id}', 'ArticleController@editActivity')->middleware('perm:article_edit')->name('article.edit');
|
||||
Route::post('/admin/article/activity/edit/{id}', 'ArticleController@updateActivity')->middleware('perm:article_edit');
|
||||
Route::get('/admin/article/activity/picture/{id}', 'ArticleController@pictureActivity')->middleware('perm:article_edit');
|
||||
Route::get('/admin/article/activity/picture/{id}/add', 'ArticleController@pictureActivityCreate')->middleware('perm:article_edit');
|
||||
Route::post('/admin/article/activity/picture/{id}/add', 'ArticleController@pictureActivityStore')->middleware('perm:article_edit');
|
||||
|
||||
/** Item */
|
||||
Route::get('/admin/item/add' , 'ItemController@create')->middleware('perm:inventory_add');
|
||||
Route::get('/admin/item/edit/{id}' , 'ItemController@edit')->middleware('perm:inventory_edit');
|
||||
Route::post('/admin/item/add' , 'ItemController@store')->middleware('perm:inventory_add');
|
||||
Route::post('/admin/item/edit/{id}' , 'ItemController@update')->middleware('perm:inventory_edit');
|
||||
/** Booking */
|
||||
Route::get('/admin/booking', 'BookingController@index')->middleware('perm:booking_see');
|
||||
Route::get('/admin/booking/{id}', 'BookingController@show')->middleware('perm:booking_see');
|
||||
Route::get('/admin/booking/{type}/{id}', 'BookingController@index')->middleware('perm:booking_see');
|
||||
Route::get('/admin/booking/{type}/{id}/add', 'BookingController@create')->middleware('perm:booking_add');
|
||||
Route::post('/admin/booking/{type}/{id}/add', 'BookingController@store')->middleware('perm:booking_add');
|
||||
Route::get('/admin/inventory/booking', 'InventoryController@booking')->middleware('perm:inventory_see');
|
||||
Route::post('/admin/booking/edit', 'BookingController@update')->middleware('perm:booking_see')->middleware('perm:booking_edit');
|
||||
|
||||
/** Notification */
|
||||
Route::get('/admin/notication/mark','UserController@notificationmarkALL');
|
||||
Route::post('/admin/notication/mark/{id}','UserController@notificationmark');
|
||||
/** Item */
|
||||
Route::get('/admin/item/add', 'ItemController@create')->middleware('perm:inventory_add');
|
||||
Route::get('/admin/item/edit/{id}', 'ItemController@edit')->middleware('perm:inventory_edit');
|
||||
Route::post('/admin/item/add', 'ItemController@store')->middleware('perm:inventory_add');
|
||||
Route::post('/admin/item/edit/{id}', 'ItemController@update')->middleware('perm:inventory_edit');
|
||||
|
||||
/** Profil */
|
||||
Route::get('/admin/profil/courses' , 'ProfilController@courses')->name('profil.courses');
|
||||
Route::get('/admin/profil/avatar' , 'UserController@UserAvatar')->name('profil.avatar');
|
||||
Route::get('/admin/profil/password' , 'UserController@UserPassword')->name('profil.psw');
|
||||
Route::get('/admin/profil/adress' , 'UserController@UserAdress')->name('profil.adress');
|
||||
Route::get('/admin/profil/notifications','UserController@userNotification')->name('profil.notifications');
|
||||
Route::post('/admin/profil/edit/adress' , 'UserController@editUserAdress');
|
||||
Route::post('/admin/profil/edit/password' , 'UserController@editUserPassword');
|
||||
Route::get('/admin/profil/edit/avatar/{id}' , 'UserController@editUserAvatar');
|
||||
Route::get('/admin/profil/{id?}' , 'UserController@showUserProfil')->name('profil');
|
||||
/** Notification */
|
||||
Route::get('/admin/notication/mark', 'UserController@notificationmarkALL');
|
||||
Route::post('/admin/notication/mark/{id}', 'UserController@notificationmark');
|
||||
|
||||
/** Instruction */
|
||||
Route::get('/admin/instruction','AdminController@instruction')->name('instruction');
|
||||
Route::get('/admin/instruction/guide','FilesController@guide')->middleware('perm:instruction_guide_see')->name('instruction.guide');
|
||||
Route::get('/admin/instruction/files','FilesController@instruction')->middleware('perm:file_see')->name('instruction.files');
|
||||
/** Profil */
|
||||
Route::get('/admin/profil/courses', 'ProfilController@courses')->name('profil.courses');
|
||||
Route::get('/admin/profil/avatar', 'UserController@UserAvatar')->name('profil.avatar');
|
||||
Route::get('/admin/profil/password', 'UserController@UserPassword')->name('profil.psw');
|
||||
Route::get('/admin/profil/adress', 'UserController@UserAdress')->name('profil.adress');
|
||||
Route::get('/admin/profil/notifications', 'UserController@userNotification')->name('profil.notifications');
|
||||
Route::post('/admin/profil/edit/adress', 'UserController@editUserAdress');
|
||||
Route::post('/admin/profil/edit/password', 'UserController@editUserPassword');
|
||||
Route::get('/admin/profil/edit/avatar/{id}', 'UserController@editUserAvatar');
|
||||
Route::get('/admin/profil/{id?}', 'UserController@showUserProfil')->name('profil');
|
||||
|
||||
/** Courses */
|
||||
Route::get('/admin/course','CourseController@index')->name('course');
|
||||
Route::get('/admin/course/{id}','CourseController@show')->name('course.show')->middleware('courseperm:see');
|
||||
Route::patch('/admin/course/{id}/commentOfficer','CourseController@updateCommentOfficer')->middleware('courseperm:comment_officer');
|
||||
Route::patch('/admin/course/{id}/comment','CourseController@updateComment')->middleware('courseperm:edit');
|
||||
Route::patch('/admin/course/{id}/plan/commentOfficer','CourseController@updateCommentOfficerPlan')->middleware('courseperm:comment_plan_officer');
|
||||
Route::patch('/admin/course/{id}/plan/comment','CourseController@updateCommentPlan')->middleware('courseperm:edit');
|
||||
Route::post('/admin/course/{id}/lessonPlan','CourseController@updateLessonPlan')->middleware('courseperm:edit');
|
||||
/** Instruction */
|
||||
Route::get('/admin/instruction', 'AdminController@instruction')->name('instruction');
|
||||
Route::get('/admin/instruction/guide', 'FilesController@guide')->middleware('perm:instruction_guide_see')->name('instruction.guide');
|
||||
Route::get('/admin/instruction/files', 'FilesController@instruction')->middleware('perm:file_see')->name('instruction.files');
|
||||
|
||||
/** Courses */
|
||||
Route::get('/admin/course', 'CourseController@index')->name('course');
|
||||
Route::get('/admin/course/{id}', 'CourseController@show')->name('course.show')->middleware('courseperm:see');
|
||||
Route::patch('/admin/course/{id}/commentOfficer', 'CourseController@updateCommentOfficer')->middleware('courseperm:comment_officer');
|
||||
Route::patch('/admin/course/{id}/comment', 'CourseController@updateComment')->middleware('courseperm:edit');
|
||||
Route::patch('/admin/course/{id}/plan/commentOfficer', 'CourseController@updateCommentOfficerPlan')->middleware('courseperm:comment_plan_officer');
|
||||
Route::patch('/admin/course/{id}/plan/comment', 'CourseController@updateCommentPlan')->middleware('courseperm:edit');
|
||||
Route::post('/admin/course/{id}/lessonPlan', 'CourseController@updateLessonPlan')->middleware('courseperm:edit');
|
||||
|
||||
/** Files */
|
||||
Route::post('/file/create','GoogleDriveController@createFile')->middleware('fileperm:folder,w');
|
||||
Route::post('/file/upload','GoogleDriveController@uploadFile')->middleware('fileperm:folder,w');
|
||||
Route::post('/folder/create','GoogleDriveController@createFolder')->middleware('fileperm:folder,w');
|
||||
Route::get('/file/delete','GoogleDriveController@deleteFile')->middleware('perm:file_delete')->middleware('fileperm:folder,w');
|
||||
Route::get('/folder/delete','GoogleDriveController@deleteDir')->middleware('perm:file_delete')->middleware('fileperm:folder,w');
|
||||
Route::get('/admin/files','FilesController@index')->middleware('perm:file_see')->name('files');
|
||||
Route::get('/admin/files/cadet','FilesController@cadet')->middleware('perm:file_see')->name('files.cadet')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/staff','FilesController@staff')->middleware('perm:file_see')->name('files.staff')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/etamas','FilesController@etamas')->middleware('perm:file_see')->name('files.etamas')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/officier','FilesController@officier')->middleware('perm:file_see')->name('files.officier')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/publique','FilesController@publique')->middleware('perm:file_see')->name('files.publique')->middleware('fileperm:folder,r');
|
||||
|
||||
Route::get('/admin/drive/{folder?}','GoogleDriveController@index')->middleware('fileperm:folder,r','perm:drive_see')->name('drive');
|
||||
Route::get('/admin/folder/{folder?}','GoogleDriveController@index')->middleware('fileperm:folder,r')->name('drive');
|
||||
Route::get('/admin/drive/{folder}/permission','GoogleDriveController@editPermission')->middleware('fileperm:folder,p')->name('drive.permission');
|
||||
Route::patch('/admin/drive/{folder}/permission/{subject}/{id}','GoogleDriveController@patchPermission')->middleware('perm:file_see','fileperm:folder,p');
|
||||
Route::get('/admin/drive/{folder}/deletepermission/{subject}/{id}','GoogleDriveController@deletePermission')->middleware('perm:file_see','fileperm:folder,p');
|
||||
Route::patch('/admin/drive/{folder}/addpermission/{subject}','GoogleDriveController@addPermission')->middleware('perm:file_see','fileperm:folder,p');
|
||||
Route::post('/file/create', 'GoogleDriveController@createFile')->middleware('fileperm:folder,w');
|
||||
Route::post('/file/upload', 'GoogleDriveController@uploadFile')->middleware('fileperm:folder,w');
|
||||
Route::post('/folder/create', 'GoogleDriveController@createFolder')->middleware('fileperm:folder,w');
|
||||
Route::get('/file/delete', 'GoogleDriveController@deleteFile')->middleware('perm:file_delete')->middleware('fileperm:folder,w');
|
||||
Route::get('/folder/delete', 'GoogleDriveController@deleteDir')->middleware('perm:file_delete')->middleware('fileperm:folder,w');
|
||||
Route::get('/admin/files', 'FilesController@index')->middleware('perm:file_see')->name('files');
|
||||
Route::get('/admin/files/cadet', 'FilesController@cadet')->middleware('perm:file_see')->name('files.cadet')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/staff', 'FilesController@staff')->middleware('perm:file_see')->name('files.staff')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/etamas', 'FilesController@etamas')->middleware('perm:file_see')->name('files.etamas')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/officier', 'FilesController@officier')->middleware('perm:file_see')->name('files.officier')->middleware('fileperm:folder,r');
|
||||
Route::get('/admin/files/publique', 'FilesController@publique')->middleware('perm:file_see')->name('files.publique')->middleware('fileperm:folder,r');
|
||||
|
||||
Route::get('/admin/drive/{folder?}', 'GoogleDriveController@index')->middleware('fileperm:folder,r', 'perm:drive_see')->name('drive');
|
||||
Route::get('/admin/folder/{folder?}', 'GoogleDriveController@index')->middleware('fileperm:folder,r')->name('drive');
|
||||
Route::get('/admin/drive/{folder}/permission', 'GoogleDriveController@editPermission')->middleware('fileperm:folder,p')->name('drive.permission');
|
||||
Route::patch('/admin/drive/{folder}/permission/{subject}/{id}', 'GoogleDriveController@patchPermission')->middleware('perm:file_see', 'fileperm:folder,p');
|
||||
Route::get('/admin/drive/{folder}/deletepermission/{subject}/{id}', 'GoogleDriveController@deletePermission')->middleware('perm:file_see', 'fileperm:folder,p');
|
||||
Route::patch('/admin/drive/{folder}/addpermission/{subject}', 'GoogleDriveController@addPermission')->middleware('perm:file_see', 'fileperm:folder,p');
|
||||
|
||||
|
||||
/** OCOM */
|
||||
Route::get('/admin/ocom','OCOMController@index')->name('ocom')->middleware('perm:instruction_db_ocom_see');
|
||||
Route::get('/admin/ocom/generate','OCOMController@showgenerate')->name('ocom.generate')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::put('/admin/ocom/generate','OCOMController@generate')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::get('/admin/ocom/add','OCOMController@create')->name('ocom.add')->middleware('perm:instruction_db_ocom_add');
|
||||
Route::put('/admin/ocom/add','OCOMController@store')->middleware('perm:instruction_db_ocom_add');
|
||||
Route::get('/admin/ocom/{id}/edit','OCOMController@edit')->name('ocom.edit')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::patch('/admin/ocom/{id}/edit','OCOMController@update')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::get('/admin/ocom/{id}','OCOMController@show')->name('ocom.show')->middleware('perm:instruction_db_ocom_see');
|
||||
Route::get('/admin/ocom', 'OCOMController@index')->name('ocom')->middleware('perm:instruction_db_ocom_see');
|
||||
Route::get('/admin/ocom/generate', 'OCOMController@showgenerate')->name('ocom.generate')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::put('/admin/ocom/generate', 'OCOMController@generate')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::get('/admin/ocom/add', 'OCOMController@create')->name('ocom.add')->middleware('perm:instruction_db_ocom_add');
|
||||
Route::put('/admin/ocom/add', 'OCOMController@store')->middleware('perm:instruction_db_ocom_add');
|
||||
Route::get('/admin/ocom/{id}/edit', 'OCOMController@edit')->name('ocom.edit')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::patch('/admin/ocom/{id}/edit', 'OCOMController@update')->middleware('perm:instruction_db_ocom_edit');
|
||||
Route::get('/admin/ocom/{id}', 'OCOMController@show')->name('ocom.show')->middleware('perm:instruction_db_ocom_see');
|
||||
});
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user