paginate(10); return view('paddock.list', $data); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { return view('paddock.create'); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $request->validate([ 'name' => 'required', ]); Paddock::create($request->all()); return Redirect::to('paddocks') ->with('success', 'Enclos créé avec succès.'); } /** * 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) { $data['paddock'] = Paddock::where('id', $id)->first(); return view('paddock.edit', $data); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { $request->validate([ 'name' => 'required', ]); // Was there a state change? $paddock = Paddock::find($id); $state_changed = FALSE; if ($paddock->isClosed && ($request->state === 'opened')) { $state_changed = TRUE; } else if (!$paddock->isClosed && ($request->state === 'closed')) { $state_changed = TRUE; } // Record the state change, if needs be if ($state_changed) { $change = new PaddockStateChange(['state' => $request->state]); $paddock->state_changes()->save($change); } $update = [ 'name' => $request->name, 'isClosed' => $request->state !== 'opened', ]; $paddock->update($update); return Redirect::to('paddocks') ->with('success', 'Enclos mis à jour.'); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function destroy($id) { Paddock::where('id', $id)->delete(); return Redirect::to('paddocks') ->with('success', 'Enclos supprimé.'); } }