Record paddock state changes
This commit is contained in:
@@ -4,6 +4,7 @@ namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use App\Paddock;
|
||||
use App\PaddockStateChange;
|
||||
use Redirect;
|
||||
|
||||
class PaddockController extends Controller
|
||||
@@ -85,11 +86,26 @@ class PaddockController extends Controller
|
||||
'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::where('id', $id)->update($update);
|
||||
$paddock->update($update);
|
||||
|
||||
return Redirect::to('paddocks')
|
||||
->with('success', 'Enclos mis à jour.');
|
||||
|
||||
10
app/Http/Controllers/PaddockStateChangeController.php
Normal file
10
app/Http/Controllers/PaddockStateChangeController.php
Normal file
@@ -0,0 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class PaddockStateChangeController extends Controller
|
||||
{
|
||||
//
|
||||
}
|
||||
Reference in New Issue
Block a user