From 2b75eca7d0aa30f9cf18be13a08535d5ad1c07ec Mon Sep 17 00:00:00 2001 From: James Brooks Date: Mon, 2 Jan 2017 16:11:15 +0000 Subject: [PATCH] Remove jenssegers/date and solely use Carbon --- app/Dates/DateFactory.php | 10 +-- .../Providers/ConfigServiceProvider.php | 4 +- .../Dashboard/DashboardController.php | 14 ++--- app/Http/Controllers/StatusPageController.php | 8 +-- app/Http/Middleware/Localize.php | 6 +- app/Repositories/Metric/PgSqlRepository.php | 1 - app/Repositories/Metric/SqliteRepository.php | 1 - app/helpers.php | 4 +- composer.json | 1 - composer.lock | 61 +------------------ config/app.php | 1 - 11 files changed, 25 insertions(+), 86 deletions(-) diff --git a/app/Dates/DateFactory.php b/app/Dates/DateFactory.php index 523628a2..59c39786 100644 --- a/app/Dates/DateFactory.php +++ b/app/Dates/DateFactory.php @@ -11,8 +11,8 @@ namespace CachetHQ\Cachet\Dates; +use Carbon\Carbon; use DateTimeZone; -use Jenssegers\Date\Date; /** * This is the date factory class. @@ -62,7 +62,7 @@ class DateFactory */ public function create($format, $time) { - return Date::createFromFormat($format, $time, $this->cachetTimezone)->setTimezone($this->appTimezone); + return Carbon::createFromFormat($format, $time, $this->cachetTimezone)->setTimezone($this->appTimezone); } /** @@ -79,7 +79,7 @@ class DateFactory */ public function createNormalized($format, $time) { - return Date::createFromFormat($format, $time)->setTimezone($this->appTimezone); + return Carbon::createFromFormat($format, $time)->setTimezone($this->appTimezone); } /** @@ -93,7 +93,7 @@ class DateFactory */ public function make($time = null) { - return (new Date($time))->setTimezone($this->cachetTimezone); + return Carbon::parse($time)->setTimezone($this->cachetTimezone); } /** @@ -103,7 +103,7 @@ class DateFactory */ public function getTimezone() { - $dateTime = new Date(); + $dateTime = new Carbon(); $dateTime->setTimeZone(new DateTimeZone($this->cachetTimezone)); return $dateTime->format('T'); diff --git a/app/Foundation/Providers/ConfigServiceProvider.php b/app/Foundation/Providers/ConfigServiceProvider.php index 4de26693..a238d205 100644 --- a/app/Foundation/Providers/ConfigServiceProvider.php +++ b/app/Foundation/Providers/ConfigServiceProvider.php @@ -14,9 +14,9 @@ namespace CachetHQ\Cachet\Foundation\Providers; use CachetHQ\Cachet\Models\Setting as SettingModel; use CachetHQ\Cachet\Settings\Cache; use CachetHQ\Cachet\Settings\Repository; +use Carbon\Carbon; use Exception; use Illuminate\Support\ServiceProvider; -use Jenssegers\Date\Date; /** * This is the config service provider class. @@ -65,7 +65,7 @@ class ConfigServiceProvider extends ServiceProvider if ($appLocale = $this->app->config->get('setting.app_locale')) { $this->app->config->set('app.locale', $appLocale); $this->app->translator->setLocale($appLocale); - Date::setLocale($appLocale); + Carbon::setLocale($appLocale); } if ($appTimezone = $this->app->config->get('setting.app_timezone')) { diff --git a/app/Http/Controllers/Dashboard/DashboardController.php b/app/Http/Controllers/Dashboard/DashboardController.php index 13f4d2d9..590b6e4e 100644 --- a/app/Http/Controllers/Dashboard/DashboardController.php +++ b/app/Http/Controllers/Dashboard/DashboardController.php @@ -17,12 +17,12 @@ use CachetHQ\Cachet\Models\Component; use CachetHQ\Cachet\Models\ComponentGroup; use CachetHQ\Cachet\Models\Incident; use CachetHQ\Cachet\Models\Subscriber; +use Carbon\Carbon; use Illuminate\Contracts\Auth\Guard; use Illuminate\Routing\Controller; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Config; use Illuminate\Support\Facades\View; -use Jenssegers\Date\Date; /** * This is the dashboard controller class. @@ -34,7 +34,7 @@ class DashboardController extends Controller /** * Start date. * - * @var \Jenssegers\Date\Date + * @var \Carbon\Carbon */ protected $startDate; @@ -71,7 +71,7 @@ class DashboardController extends Controller { $this->feed = $feed; $this->guard = $guard; - $this->startDate = new Date(); + $this->startDate = Carbon::now(); $this->dateTimeZone = Config::get('cachet.timezone'); } @@ -131,13 +131,13 @@ class DashboardController extends Controller $this->startDate->copy()->subDays(30)->format('Y-m-d').' 00:00:00', $this->startDate->format('Y-m-d').' 23:59:59', ])->orderBy('occurred_at', 'desc')->get()->groupBy(function (Incident $incident) { - return (new Date($incident->occurred_at)) + return (new Carbon($incident->occurred_at)) ->setTimezone($this->dateTimeZone)->toDateString(); }); // Add in days that have no incidents foreach (range(0, 30) as $i) { - $date = (new Date($this->startDate))->setTimezone($this->dateTimeZone)->subDays($i); + $date = (new Carbon($this->startDate))->setTimezone($this->dateTimeZone)->subDays($i); if (!isset($allIncidents[$date->toDateString()])) { $allIncidents[$date->toDateString()] = []; @@ -163,13 +163,13 @@ class DashboardController extends Controller $this->startDate->copy()->subDays(30)->format('Y-m-d').' 00:00:00', $this->startDate->format('Y-m-d').' 23:59:59', ])->orderBy('created_at', 'desc')->get()->groupBy(function (Subscriber $incident) { - return (new Date($incident->created_at)) + return (new Carbon($incident->created_at)) ->setTimezone($this->dateTimeZone)->toDateString(); }); // Add in days that have no incidents foreach (range(0, 30) as $i) { - $date = (new Date($this->startDate))->setTimezone($this->dateTimeZone)->subDays($i); + $date = (new Carbon($this->startDate))->setTimezone($this->dateTimeZone)->subDays($i); if (!isset($allSubscribers[$date->toDateString()])) { $allSubscribers[$date->toDateString()] = []; diff --git a/app/Http/Controllers/StatusPageController.php b/app/Http/Controllers/StatusPageController.php index e25dfc67..a73b6420 100644 --- a/app/Http/Controllers/StatusPageController.php +++ b/app/Http/Controllers/StatusPageController.php @@ -19,6 +19,7 @@ use CachetHQ\Cachet\Models\Incident; use CachetHQ\Cachet\Models\Metric; use CachetHQ\Cachet\Models\Schedule; use CachetHQ\Cachet\Repositories\Metric\MetricRepository; +use Carbon\Carbon; use Exception; use GrahamCampbell\Binput\Facades\Binput; use Illuminate\Routing\Controller; @@ -26,7 +27,6 @@ use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Config; use Illuminate\Support\Facades\Response; use Illuminate\Support\Facades\View; -use Jenssegers\Date\Date; use McCool\LaravelAutoPresenter\Facades\AutoPresenter; /** @@ -45,14 +45,14 @@ class StatusPageController extends AbstractApiController */ public function showIndex() { - $today = Date::now(); - $startDate = Date::now(); + $today = Carbon::now(); + $startDate = Carbon::now(); // Check if we have another starting date if (Binput::has('start_date')) { try { // If date provided is valid - $oldDate = Date::createFromFormat('Y-m-d', Binput::get('start_date')); + $oldDate = Carbon::createFromFormat('Y-m-d', Binput::get('start_date')); // If trying to get a future date fallback to today if ($today->gt($oldDate)) { diff --git a/app/Http/Middleware/Localize.php b/app/Http/Middleware/Localize.php index 62948a85..6ac7cc9d 100644 --- a/app/Http/Middleware/Localize.php +++ b/app/Http/Middleware/Localize.php @@ -11,10 +11,10 @@ namespace CachetHQ\Cachet\Http\Middleware; +use Carbon\Carbon; use Closure; use Illuminate\Config\Repository; use Illuminate\Http\Request; -use Jenssegers\Date\Date; /** * This is the localize middleware class. @@ -28,7 +28,7 @@ class Localize /** * Array of languages Cachet can use. * - * @var array + * @var string[] */ protected $langs; @@ -79,7 +79,7 @@ class Localize } app('translator')->setLocale($userLanguage); - Date::setLocale($userLanguage); + Carbon::setLocale($userLanguage); return $next($request); } diff --git a/app/Repositories/Metric/PgSqlRepository.php b/app/Repositories/Metric/PgSqlRepository.php index feec9d84..e04e8f81 100644 --- a/app/Repositories/Metric/PgSqlRepository.php +++ b/app/Repositories/Metric/PgSqlRepository.php @@ -13,7 +13,6 @@ namespace CachetHQ\Cachet\Repositories\Metric; use CachetHQ\Cachet\Models\Metric; use Illuminate\Support\Facades\DB; -use Jenssegers\Date\Date; /** * This is the pgsql repository class. diff --git a/app/Repositories/Metric/SqliteRepository.php b/app/Repositories/Metric/SqliteRepository.php index 5d9c751d..ca1686eb 100644 --- a/app/Repositories/Metric/SqliteRepository.php +++ b/app/Repositories/Metric/SqliteRepository.php @@ -13,7 +13,6 @@ namespace CachetHQ\Cachet\Repositories\Metric; use CachetHQ\Cachet\Models\Metric; use Illuminate\Support\Facades\DB; -use Jenssegers\Date\Date; /** * This is the sqlite repository class. diff --git a/app/helpers.php b/app/helpers.php index e856917b..7f69263a 100644 --- a/app/helpers.php +++ b/app/helpers.php @@ -9,9 +9,9 @@ * file that was distributed with this source code. */ +use Carbon\Carbon; use Illuminate\Support\Facades\Config; use Illuminate\Support\Facades\Request; -use Jenssegers\Date\Date; if (!function_exists('set_active')) { /** @@ -47,7 +47,7 @@ if (!function_exists('formatted_date')) { { $dateFormat = Config::get('setting.date_format', 'jS F Y'); - return (new Date($date))->format($dateFormat); + return Carbon::parse($date)->format($dateFormat); } } diff --git a/composer.json b/composer.json index a6bff121..c4a85bd1 100644 --- a/composer.json +++ b/composer.json @@ -43,7 +43,6 @@ "graham-campbell/exceptions": "^9.1", "graham-campbell/markdown": "^6.1", "guzzlehttp/guzzle": "^6.2.1", - "jenssegers/date": "^3.2", "laravel/framework": "5.3.*", "mccool/laravel-auto-presenter": "^4.3", "pragmarx/google2fa": "^0.7.1", diff --git a/composer.lock b/composer.lock index c7dc0a93..683abc20 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,8 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "fca8fc5b2e78a82f98a0bfa85672b87f", - "content-hash": "d60fff17875690a829a28ad77b35e68d", + "hash": "8a12e392376c66089b5435df09154936", + "content-hash": "4da236537bf5c691b4297b065c6669eb", "packages": [ { "name": "alt-three/badger", @@ -1903,63 +1903,6 @@ ], "time": "2015-04-20 18:58:01" }, - { - "name": "jenssegers/date", - "version": "v3.2.8", - "source": { - "type": "git", - "url": "https://github.com/jenssegers/date.git", - "reference": "ad55257ae655af540e055c0fcd48bc3ec1962ec4" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/jenssegers/date/zipball/ad55257ae655af540e055c0fcd48bc3ec1962ec4", - "reference": "ad55257ae655af540e055c0fcd48bc3ec1962ec4", - "shasum": "" - }, - "require": { - "nesbot/carbon": "^1.0", - "php": ">=5.4", - "symfony/translation": "^2.7|^3.0" - }, - "require-dev": { - "phpunit/phpunit": "^4.0|^5.0", - "satooshi/php-coveralls": "^1.0" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.1-dev" - } - }, - "autoload": { - "psr-4": { - "Jenssegers\\Date\\": "src/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Jens Segers", - "homepage": "https://jenssegers.com" - } - ], - "description": "A date library to help you work with dates in different languages", - "homepage": "https://github.com/jenssegers/date", - "keywords": [ - "carbon", - "date", - "datetime", - "i18n", - "laravel", - "time", - "translation" - ], - "time": "2017-01-02 09:21:15" - }, { "name": "jeremeamia/SuperClosure", "version": "2.3.0", diff --git a/config/app.php b/config/app.php index 22316987..a58fd14c 100644 --- a/config/app.php +++ b/config/app.php @@ -184,7 +184,6 @@ return [ 'GrahamCampbell\Core\CoreServiceProvider', 'GrahamCampbell\Markdown\MarkdownServiceProvider', 'GrahamCampbell\Security\SecurityServiceProvider', - 'Jenssegers\Date\DateServiceProvider', 'McCool\LaravelAutoPresenter\AutoPresenterServiceProvider', 'PragmaRX\Google2FA\Vendor\Laravel\ServiceProvider', 'Roumen\Feed\FeedServiceProvider',