Ich Ich, gros commit

This commit is contained in:
bglacial
2018-10-08 22:31:58 +02:00
parent ecded0947f
commit b11b2befd7
49 changed files with 37276 additions and 11977 deletions

View File

@ -0,0 +1,84 @@
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class AdminController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('admin.index');
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}

View File

@ -3,6 +3,7 @@
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Yajra\Datatables\Datatables;
use App\Kart;
class KartController extends Controller
@ -14,7 +15,7 @@ class KartController extends Controller
*/
public function index()
{
//
return view('kart.index');
}
/**
@ -30,18 +31,21 @@ class KartController extends Controller
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
$hero = new Kart;
$hero->name = $request->name;
$hero->save();
return redirect('/kart');
}
/**
* Display the specified resource.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
@ -53,7 +57,7 @@ class KartController extends Controller
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
@ -64,8 +68,8 @@ class KartController extends Controller
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
@ -76,11 +80,26 @@ class KartController extends Controller
/**
* Remove the specified resource from storage.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
$kart = \App\Kart::find($id);
$kart->delete();
return redirect('/kart');
}
/**
* Process datatables ajax request.
*
* @return \Illuminate\Http\JsonResponse
*/
public function getKartsAllData()
{
return Datatables::of(Kart::query())->make();
}
}

View File

@ -3,6 +3,9 @@
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Yajra\Datatables\Datatables;
use App\Pilot;
class PilotController extends Controller
{
@ -13,7 +16,7 @@ class PilotController extends Controller
*/
public function index()
{
//
return view('pilot.index');
}
/**
@ -23,24 +26,30 @@ class PilotController extends Controller
*/
public function create()
{
//
return view('pilot.create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
$pilot = new Pilot;
$pilot->name = $request->name;
$pilot->first_name = $request->first_name;
$pilot->ref_time = $request->ref_time;
$pilot->kart_id = $request->kart_id;
$pilot->save();
return redirect('/pilot');
}
/**
* Display the specified resource.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
@ -51,7 +60,7 @@ class PilotController extends Controller
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
@ -62,23 +71,70 @@ class PilotController extends Controller
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
$pilot = \App\Pilot::find($id);
$pilot->name = $request->get('name');
$pilot->email = $request->get('first_name');
$pilot->ref_time = $request->get('ref_time');
$pilot->kart_id = $request->get('kart_id');
$pilot->save();
return redirect('/pilot');
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
public function destroy($id = null)
{
//
$pilot = \App\Pilot::find($id);
$pilot->delete();
return redirect('/pilot');
}
/**
* Process datatables ajax request.
*
* @return \Illuminate\Http\JsonResponse
*/
public function getPilotAllData()
{
return Datatables::of(
Pilot::query()
->select('pilots.id', 'pilots.name', 'pilots.first_name', 'pilots.ref_time', 'karts.name as kart_name')
->leftJoin('karts', 'kart_id', '=', 'karts.id')
)->make();
}
/**
* Process datatables ajax request.
*
* @return \Illuminate\Http\JsonResponse
*/
public function getPilotsByKart(Request $request)
{
$id = $request->input('id');
if ($id == null) {
return self::getPilotAllData();
} else {
$request->session()->put('kartid', $id);
return Datatables::of(
Pilot::query()
->select('pilots.id', 'pilots.name', 'pilots.first_name', 'pilots.ref_time', 'karts.name as kart_name')
->leftJoin('karts', 'kart_id', '=', 'karts.id')
->where('karts.id', $id)
)->make();
}
}
}

View File

@ -3,6 +3,8 @@
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Yajra\Datatables\Datatables;
use App\Race;
class RaceController extends Controller
{
@ -13,7 +15,7 @@ class RaceController extends Controller
*/
public function index()
{
//
return view('race.index');
}
/**
@ -23,35 +25,47 @@ class RaceController extends Controller
*/
public function create()
{
//
return view('race.create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
$pilot = new Race();
$pilot->name = $request->name;
$pilot->start_date = $request->start_date;
$pilot->duration = $request->duration;
$pilot->autonomie_kart_sec = $request->autonomie_kart_sec;
$pilot->autonomie_kart_humide = $request->autonomie_kart_humide;
$pilot->relay_default_duration = $request->relay_default_duration;
$pilot->stand_duration = $request->stand_duration;
$pilot->comment = $request->comment;
$pilot->save();
return redirect('/race');
}
/**
* Display the specified resource.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
var_dump('show');
var_dump(Race::query()->where('id', $id));
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
@ -62,8 +76,8 @@ class RaceController extends Controller
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
@ -74,11 +88,55 @@ class RaceController extends Controller
/**
* Remove the specified resource from storage.
*
* @param int $id
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
/**
* Process datatables ajax request.
*
* @return \Illuminate\Http\JsonResponse
*/
public function getRaceParams(Request $request)
{
$id = $request->input('id');
return Datatables::of(
Race::query()->where('id', $id)
)->make();
}
/**
* Process datatables ajax request.
*
* @return \Illuminate\Http\JsonResponse
*/
public function getraces()
{
return Datatables::of(Race::query())->make();
}
/**
* Process datatables ajax request.
*
* @return \Illuminate\Http\JsonResponse
*/
public function getsmallraces(Request $request)
{
return Datatables::of(
Race::query()
->select('id', 'name')
)->make();
}
}

View File

@ -13,6 +13,7 @@ class RelayController extends Controller
*/
public function index()
{
return view('relay.index');
//
}

View File

@ -60,5 +60,6 @@ class Kernel extends HttpKernel
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
'admin' => \App\Http\Middleware\Admin::class,
];
}

View File

@ -0,0 +1,24 @@
<?php
namespace App\Http\Middleware;
use Closure;
class Admin
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
$user = $request->user();
if ($user && $user->admin) {
return $next($request);
}
return redirect()->route('home');
}
}

View File

@ -3,6 +3,7 @@
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Blade;
class AppServiceProvider extends ServiceProvider
{
@ -13,7 +14,9 @@ class AppServiceProvider extends ServiceProvider
*/
public function boot()
{
//
Blade::if('admin', function () {
return auth()->check() && auth()->user()->admin;
});
}
/**

View File

@ -26,4 +26,14 @@ class User extends Authenticatable
protected $hidden = [
'password', 'remember_token',
];
/**
* User is admin.
*
* @return integer
*/
public function getAdminAttribute()
{
return $this->role === 'admin';
}
}