diff --git a/app/Http/Controllers/TicketController.php b/app/Http/Controllers/TicketController.php index 2355788..3ffed0c 100644 --- a/app/Http/Controllers/TicketController.php +++ b/app/Http/Controllers/TicketController.php @@ -18,9 +18,39 @@ class TicketController extends Controller { private $status = [1 => "Nouveau", 2 => "En cours", 3 => "Traité", 4 => "Archivé"]; - public function index() { + public function index(Request $request) + { if (Auth::check()) { - $tickets = Ticket::where('status', '<>', 4)->get(); + $tickets = Ticket::where('status', '<>', 4); + + $sortway = $request->sort_way == 'asc' ? 'asc' : null; + $sortway = $request->sort_way == 'desc' ? 'desc' : null; + + if ($request->sort_col and $sortway) { + switch ($request->sort_col) { + case 'id': + $tickets = $tickets->orderBy('id', $sortway); + break; + case 'project': + $tickets = $tickets->orderBy('project_id', $sortway); + break; + case 'created_at': + $tickets = $tickets->orderBy('created_at', $sortway); + break; + case 'created_by': + $tickets = $tickets->orderBy('created_by', $sortway); + break; + case 'type': + $tickets = $tickets->orderBy('type', $sortway); + break; + case 'status': + $tickets = $tickets->orderBy('status', $sortway); + break; + } + } + + $tickets = $tickets->paginate(); + $status = $this->status; return view('home', compact('tickets', 'status')); } else { diff --git a/app/Providers/AppServiceProvider.php b/app/Providers/AppServiceProvider.php index 5bddb88..54b172e 100644 --- a/app/Providers/AppServiceProvider.php +++ b/app/Providers/AppServiceProvider.php @@ -2,6 +2,7 @@ namespace App\Providers; +use Illuminate\Pagination\Paginator; use Illuminate\Support\ServiceProvider; class AppServiceProvider extends ServiceProvider @@ -23,6 +24,7 @@ class AppServiceProvider extends ServiceProvider */ public function boot() { + Paginator::useBootstrap(); if(config('app.env') !== 'local') { \URL::forceScheme('https'); } diff --git a/config/trustedproxy.php b/config/trustedproxy.php new file mode 100644 index 0000000..8224727 --- /dev/null +++ b/config/trustedproxy.php @@ -0,0 +1,50 @@ + '*', // [,], '*', ',' + + /* + * To trust one or more specific proxies that connect + * directly to your server, use an array or a string separated by comma of IP addresses: + */ + // 'proxies' => ['192.168.1.1'], + // 'proxies' => '192.168.1.1, 192.168.1.2', + + /* + * Or, to trust all proxies that connect + * directly to your server, use a "*" + */ + // 'proxies' => '*', + + /* + * Which headers to use to detect proxy related data (For, Host, Proto, Port) + * + * Options include: + * + * - Illuminate\Http\Request::HEADER_X_FORWARDED_ALL (use all x-forwarded-* headers to establish trust) + * - Illuminate\Http\Request::HEADER_FORWARDED (use the FORWARDED header to establish trust) + * - Illuminate\Http\Request::HEADER_X_FORWARDED_AWS_ELB (If you are using AWS Elastic Load Balancer) + * + * - 'HEADER_X_FORWARDED_ALL' (use all x-forwarded-* headers to establish trust) + * - 'HEADER_FORWARDED' (use the FORWARDED header to establish trust) + * - 'HEADER_X_FORWARDED_AWS_ELB' (If you are using AWS Elastic Load Balancer) + * + * @link https://symfony.com/doc/current/deployment/proxies.html + */ + 'headers' => Illuminate\Http\Request::HEADER_X_FORWARDED_ALL, + +]; diff --git a/resources/views/home.blade.php b/resources/views/home.blade.php index 91614f7..e4f00e3 100644 --- a/resources/views/home.blade.php +++ b/resources/views/home.blade.php @@ -8,14 +8,29 @@

Gestion des ticketsCréer un ticket

- - - + + + - - - + + + @if (Auth::user()->role === 1) @@ -90,6 +105,7 @@ @endforeach
#ProjetType + #  + @include('modules.sorter', ['colname' => 'id']) + + Projet  + @include('modules.sorter', ['colname' => 'project']) + + Type  + @include('modules.sorter', ['colname' => 'type']) Fichier Fichier 2Date de créationCréer parStatus + Date de création  + @include('modules.sorter', ['colname' => 'created_at']) + Créé par  + @include('modules.sorter', ['colname' => 'created_by']) + Status  + @include('modules.sorter', ['colname' => 'status']) + Contenu
+ {{ $tickets->withQueryString()->links() }} @else

Bienvenue sur le support LDC WEB.

Pour consulter vos tickets, merci de vous connecter : Connexion

diff --git a/resources/views/modules/sorter.blade.php b/resources/views/modules/sorter.blade.php new file mode 100644 index 0000000..7fcf3d3 --- /dev/null +++ b/resources/views/modules/sorter.blade.php @@ -0,0 +1,6 @@ +@if(!request('sort_way') or request('sort_col') !== $colname or (request('sort_way') === 'desc' and request('sort_col') === $colname)) +↓ +@endif +@if(!request('sort_way') or request('sort_col') !== $colname or (request('sort_way') === 'asc' and request('sort_col') === $colname)) +↑ +@endif