Cachet/src/Controllers/Api/IncidentController.php

77 lines
1.5 KiB
PHP
Raw Normal View History

<?php
namespace CachetHQ\Cachet\Controllers\Api;
2014-12-20 21:20:17 +00:00
use CachetHQ\Cachet\Repositories\Incident\IncidentRepository;
use Dingo\Api\Routing\ControllerTrait;
use Illuminate\Routing\Controller;
2015-01-01 12:22:59 +00:00
use Illuminate\Support\Facades\Input;
2014-12-20 21:20:17 +00:00
class IncidentController extends Controller
{
use ControllerTrait;
2015-01-01 20:13:53 +00:00
/**
* The incident repository instance.
*
* @var \CachetHQ\Cachet\Repositories\Incident\IncidentRepository
*/
protected $incident;
2015-01-01 20:13:53 +00:00
/**
* Create a new incident controller instance.
*
* @param \CachetHQ\Cachet\Repositories\Incident\IncidentRepository $incident
*
* @return void
*/
2014-12-20 21:20:17 +00:00
public function __construct(IncidentRepository $incident)
{
$this->incident = $incident;
}
/**
2014-12-30 18:19:22 +00:00
* Get all incidents.
*
* @return \Illuminate\Database\Eloquent\Collection
*/
2014-12-20 21:20:17 +00:00
public function getIncidents()
{
return $this->incident->all();
}
2014-11-26 16:08:47 +00:00
/**
2014-12-30 18:19:22 +00:00
* Get a single incident.
*
* @param int $id
*
2015-01-01 20:13:53 +00:00
* @return \Incident
*/
2014-12-20 21:20:17 +00:00
public function getIncident($id)
{
return $this->incident->findOrFail($id);
}
2014-11-26 16:08:47 +00:00
/**
2014-12-30 18:19:22 +00:00
* Create a new incident.
*
2015-01-01 20:13:53 +00:00
* @return \Incident
*/
2014-12-20 21:20:17 +00:00
public function postIncidents()
{
return $this->incident->create($this->auth->user()->id, Input::all());
}
/**
2014-12-30 18:19:22 +00:00
* Update an existing incident.
*
* @param int $id
*
2015-01-01 20:13:53 +00:00
* @return \Incident
*/
2014-12-20 21:20:17 +00:00
public function putIncident($id)
{
return $this->incident->update($id, Input::all());
}
}