Fix timezones presenting

This commit is contained in:
Joseph Cohen
2015-01-27 13:05:54 -06:00
parent 04d9ce6b80
commit 900b15a808
3 changed files with 25 additions and 8 deletions
+16 -3
View File
@@ -2,12 +2,20 @@
namespace CachetHQ\Cachet\Presenters;
use CachetHQ\Cachet\Facades\Setting;
use CachetHQ\Cachet\Models\Incident;
use Jenssegers\Date\Date;
use McCool\LaravelAutoPresenter\BasePresenter;
class IncidentPresenter extends BasePresenter
{
/**
* Time zone setting.
*
* @var string
*/
protected $tz;
/**
* Create a incident presenter instance.
*
@@ -16,6 +24,7 @@ class IncidentPresenter extends BasePresenter
public function __construct(Incident $incident)
{
$this->resource = $incident;
$this->tz = Setting::get('app_timezone');
}
/**
@@ -25,7 +34,9 @@ class IncidentPresenter extends BasePresenter
*/
public function created_at_diff()
{
return (new Date($this->resource->created_at))->diffForHumans();
return (new Date($this->resource->created_at))
->setTimezone($this->tz)
->diffForHumans();
}
/**
@@ -35,7 +46,9 @@ class IncidentPresenter extends BasePresenter
*/
public function created_at_formated()
{
return ucfirst((new Date($this->resource->created_at))->format('l j F Y H:i:s'));
return ucfirst((new Date($this->resource->created_at))
->setTimezone($this->tz)
->format('l j F Y H:i:s'));
}
/**
@@ -45,6 +58,6 @@ class IncidentPresenter extends BasePresenter
*/
public function created_at_iso()
{
return $this->resource->created_at->toISO8601String();
return $this->resource->created_at->setTimezone($this->tz)->toISO8601String();
}
}