From ca3f516457d054e7a17e873e79570d57008f0f7a Mon Sep 17 00:00:00 2001 From: Joseph Cohen Date: Sat, 28 May 2016 10:37:45 -0500 Subject: [PATCH 01/12] Add mail driver to the wizard --- app/Http/Controllers/SetupController.php | 16 ++++++++++++++++ resources/lang/en/forms.php | 1 + resources/views/setup.blade.php | 12 ++++++++++++ 3 files changed, 29 insertions(+) diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index d142d98b..5957572c 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -41,6 +41,21 @@ class SetupController extends Controller 'memcached' => 'Memcached', 'redis' => 'Redis', ]; + /** + * Array of cache drivers. + * + * @var string[] + */ + protected $mailDrivers = [ + 'log' => 'Log (Testing)', + 'smtp' => 'SMTP', + 'mail' => 'Mail', + 'sendmail' => 'Sendmail', + 'mailgun' => 'Mailgun', + 'mandrill' => 'Mandrill', + 'ses' => 'Amazon SES', + 'sparkpost' => 'SparkPost', + ]; /** * Array of step1 rules. @@ -112,6 +127,7 @@ class SetupController extends Controller return View::make('setup') ->withPageTitle(trans('setup.setup')) ->withCacheDrivers($this->cacheDrivers) + ->withMailDrivers($this->mailDrivers) ->withUserLanguage($userLanguage) ->withAppUrl(Request::root()); } diff --git a/resources/lang/en/forms.php b/resources/lang/en/forms.php index e706de8a..51975abc 100755 --- a/resources/lang/en/forms.php +++ b/resources/lang/en/forms.php @@ -23,6 +23,7 @@ return [ 'enable_google2fa' => 'Enable Google Two Factor Authentication', 'cache_driver' => 'Cache Driver', 'session_driver' => 'Session Driver', + 'mail_driver' => 'Mail Driver', ], // Login form fields diff --git a/resources/views/setup.blade.php b/resources/views/setup.blade.php index 37fe7e21..57e698af 100644 --- a/resources/views/setup.blade.php +++ b/resources/views/setup.blade.php @@ -56,6 +56,18 @@ {{ $errors->first('env.session_driver') }} @endif +
+ + + @if($errors->has('env.mail_driver')) + {{ $errors->first('env.mail_driver') }} + @endif +

From 958c9eadc7101d76fa2e1e88b6f66d4c1f7fbde4 Mon Sep 17 00:00:00 2001 From: Joseph Cohen Date: Fri, 3 Jun 2016 01:26:28 -0500 Subject: [PATCH 02/12] Add mail data to wizard --- app/Http/Controllers/SetupController.php | 11 +++++++++- config/services.php | 12 +++++----- resources/lang/en/forms.php | 4 ++++ resources/views/setup.blade.php | 28 ++++++++++++++++++++++++ 4 files changed, 48 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index 5957572c..798f8927 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -53,7 +53,7 @@ class SetupController extends Controller 'sendmail' => 'Sendmail', 'mailgun' => 'Mailgun', 'mandrill' => 'Mandrill', - 'ses' => 'Amazon SES', + // 'ses' => 'Amazon SES', this will be available only if aws/aws-sdk-php is installed 'sparkpost' => 'SparkPost', ]; @@ -88,6 +88,7 @@ class SetupController extends Controller $this->rulesStep1 = [ 'env.cache_driver' => 'required|in:'.implode(',', array_keys($this->cacheDrivers)), 'env.session_driver' => 'required|in:'.implode(',', array_keys($this->cacheDrivers)), + 'env.mail_driver' => 'required|in:'.implode(',', array_keys($this->mailDrivers)), ]; $this->rulesStep2 = [ @@ -143,6 +144,14 @@ class SetupController extends Controller $v = Validator::make($postData, $this->rulesStep1); + $v->sometimes('env.mail_host', 'required', function ($input) { + return $input->mail_driver === 'smtp'; + }); + + $v->sometimes(['env.mail_from', 'env.mail_username', 'env.mail_password'], 'required', function ($input) { + return $input->mail_driver !== 'log'; + }); + if ($v->passes()) { return Response::json(['status' => 1]); } diff --git a/config/services.php b/config/services.php index 77ea1cba..f1a4e4c1 100644 --- a/config/services.php +++ b/config/services.php @@ -28,22 +28,22 @@ return [ ], 'mailgun' => [ - 'domain' => env('MAILGUN_DOMAIN'), - 'secret' => env('MAILGUN_SECRET'), + 'domain' => env('MAIL_USERNAME'), + 'secret' => env('MAIL_PASSWORD'), ], 'mandrill' => [ - 'secret' => env('MANDRILL_SECRET'), + 'secret' => env('MAIL_PASSWORD'), ], 'ses' => [ - 'key' => env('SES_KEY'), - 'secret' => env('SES_SECRET'), + 'key' => env('MAIL_USERNAME'), + 'secret' => env('MAIL_PASSWORD'), 'region' => 'us-east-1', ], 'sparkpost' => [ - 'secret' => env('SPARKPOST_SECRET'), + 'secret' => env('MAIL_PASSWORD'), ], ]; diff --git a/resources/lang/en/forms.php b/resources/lang/en/forms.php index 51975abc..867d79c5 100755 --- a/resources/lang/en/forms.php +++ b/resources/lang/en/forms.php @@ -24,6 +24,10 @@ return [ 'cache_driver' => 'Cache Driver', 'session_driver' => 'Session Driver', 'mail_driver' => 'Mail Driver', + 'mail_host' => 'Mail Host', + 'mail_from' => 'Mail From', + 'mail_username' => 'Mail Client User', + 'mail_password' => 'Mail Client Password', ], // Login form fields diff --git a/resources/views/setup.blade.php b/resources/views/setup.blade.php index 57e698af..d2f7efcf 100644 --- a/resources/views/setup.blade.php +++ b/resources/views/setup.blade.php @@ -68,6 +68,34 @@ {{ $errors->first('env.mail_driver') }} @endif
+
+ + + @if($errors->has('env.mail_host')) + {{ $errors->first('env.mail_host') }} + @endif +
+
+ + + @if($errors->has('env.mail_from')) + {{ $errors->first('env.mail_from') }} + @endif +
+
+ + + @if($errors->has('env.mail_username')) + {{ $errors->first('env.mail_username') }} + @endif +
+
+ + + @if($errors->has('env.mail_password')) + {{ $errors->first('env.mail_password') }} + @endif +

From 9c1e94c55041debca90ed592216f1917dca10563 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Sat, 4 Jun 2016 14:54:32 +0100 Subject: [PATCH 03/12] Put mail log to bottom --- app/Http/Controllers/SetupController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index 798f8927..c3e71849 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -47,7 +47,6 @@ class SetupController extends Controller * @var string[] */ protected $mailDrivers = [ - 'log' => 'Log (Testing)', 'smtp' => 'SMTP', 'mail' => 'Mail', 'sendmail' => 'Sendmail', @@ -55,6 +54,7 @@ class SetupController extends Controller 'mandrill' => 'Mandrill', // 'ses' => 'Amazon SES', this will be available only if aws/aws-sdk-php is installed 'sparkpost' => 'SparkPost', + 'log' => 'Log (Testing)', ]; /** From 1fe4789760b94dba5f2d11e8c9b8bad106ba3c23 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Sun, 5 Jun 2016 10:22:09 +0100 Subject: [PATCH 04/12] Fix spacing --- app/Http/Controllers/SetupController.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index c3e71849..c7c098f5 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -41,6 +41,7 @@ class SetupController extends Controller 'memcached' => 'Memcached', 'redis' => 'Redis', ]; + /** * Array of cache drivers. * From a5ed3c40a9d032e26877962efd5e80b779490896 Mon Sep 17 00:00:00 2001 From: Joseph Cohen Date: Sat, 11 Jun 2016 15:23:02 -0500 Subject: [PATCH 05/12] Fix write env to work with nulls and change from to address --- app/Http/Controllers/SetupController.php | 6 ++++-- resources/lang/en/forms.php | 2 +- resources/views/setup.blade.php | 8 ++++---- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/SetupController.php b/app/Http/Controllers/SetupController.php index c7c098f5..6e3d5f27 100644 --- a/app/Http/Controllers/SetupController.php +++ b/app/Http/Controllers/SetupController.php @@ -149,7 +149,7 @@ class SetupController extends Controller return $input->mail_driver === 'smtp'; }); - $v->sometimes(['env.mail_from', 'env.mail_username', 'env.mail_password'], 'required', function ($input) { + $v->sometimes(['env.mail_address', 'env.mail_username', 'env.mail_password'], 'required', function ($input) { return $input->mail_driver !== 'log'; }); @@ -250,8 +250,10 @@ class SetupController extends Controller try { (new Dotenv($dir, $file))->load(); + $envValue = env(strtoupper($key)) ?: 'null'; + file_put_contents($path, str_replace( - env(strtoupper($key)), $value, file_get_contents($path) + $envValue, $value, file_get_contents($path) )); } catch (InvalidPathException $e) { // diff --git a/resources/lang/en/forms.php b/resources/lang/en/forms.php index 867d79c5..fa09b231 100755 --- a/resources/lang/en/forms.php +++ b/resources/lang/en/forms.php @@ -25,7 +25,7 @@ return [ 'session_driver' => 'Session Driver', 'mail_driver' => 'Mail Driver', 'mail_host' => 'Mail Host', - 'mail_from' => 'Mail From', + 'mail_address' => 'Mail From', 'mail_username' => 'Mail Client User', 'mail_password' => 'Mail Client Password', ], diff --git a/resources/views/setup.blade.php b/resources/views/setup.blade.php index d2f7efcf..f5ff6ad8 100644 --- a/resources/views/setup.blade.php +++ b/resources/views/setup.blade.php @@ -76,10 +76,10 @@ @endif
- - - @if($errors->has('env.mail_from')) - {{ $errors->first('env.mail_from') }} + + + @if($errors->has('env.mail_address')) + {{ $errors->first('env.mail_address') }} @endif
From 4ab9807cbea1449db7948acd2abf21e2fa09ae93 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Wed, 15 Jun 2016 08:54:13 +0100 Subject: [PATCH 06/12] Help password managers. Fixes #1910 --- app/Http/Controllers/AuthController.php | 6 +++--- resources/views/auth/login.blade.php | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/AuthController.php b/app/Http/Controllers/AuthController.php index fff386bb..b6d63570 100644 --- a/app/Http/Controllers/AuthController.php +++ b/app/Http/Controllers/AuthController.php @@ -41,11 +41,11 @@ class AuthController extends Controller */ public function postLogin() { - $loginData = Binput::only(['login', 'password']); + $loginData = Binput::only(['username', 'password']); // Login with username or email. - $loginKey = Str::contains($loginData['login'], '@') ? 'email' : 'username'; - $loginData[$loginKey] = array_pull($loginData, 'login'); + $loginKey = Str::contains($loginData['username'], '@') ? 'email' : 'username'; + $loginData[$loginKey] = array_pull($loginData, 'username'); // Validate login credentials. if (Auth::validate($loginData)) { diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php index 9c4fb5dc..e26c92d2 100644 --- a/resources/views/auth/login.blade.php +++ b/resources/views/auth/login.blade.php @@ -21,7 +21,7 @@
- +
From bf749c54eeb1891cb1086ef196b81c9d34f95278 Mon Sep 17 00:00:00 2001 From: James Brooks Date: Fri, 17 Jun 2016 09:16:23 +0100 Subject: [PATCH 07/12] Move helpers.php out of Http namespace --- app/{Http => }/helpers.php | 0 composer.json | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename app/{Http => }/helpers.php (100%) diff --git a/app/Http/helpers.php b/app/helpers.php similarity index 100% rename from app/Http/helpers.php rename to app/helpers.php diff --git a/composer.json b/composer.json index 8ac8afa8..6c01a353 100644 --- a/composer.json +++ b/composer.json @@ -58,7 +58,7 @@ "database" ], "files": [ - "app/Http/helpers.php" + "app/helpers.php" ], "psr-4": { "CachetHQ\\Cachet\\": "app/" From 5305f71c2b6f341c3802b1e972d634626939bdfe Mon Sep 17 00:00:00 2001 From: James Brooks Date: Mon, 20 Jun 2016 13:49:55 +0100 Subject: [PATCH 08/12] Updated deps --- composer.lock | 79 ++++++++++++++++++++++++++------------------------- 1 file changed, 40 insertions(+), 39 deletions(-) diff --git a/composer.lock b/composer.lock index 1721b75c..141c53be 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "6b1a50b3edcf4b6c4526dcc8e9f6fac3", + "hash": "b0bde80a47d410fee6bd4e2c70e120bd", "content-hash": "1208b3f959adb7a9ab0f8a1dea2f766a", "packages": [ { @@ -325,16 +325,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.18.17", + "version": "3.18.18", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "6c7849556f556da8615d22e675710c7a086ed5d0" + "reference": "68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/6c7849556f556da8615d22e675710c7a086ed5d0", - "reference": "6c7849556f556da8615d22e675710c7a086ed5d0", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc", + "reference": "68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc", "shasum": "" }, "require": { @@ -401,7 +401,7 @@ "s3", "sdk" ], - "time": "2016-06-09 23:39:33" + "time": "2016-06-14 20:35:03" }, { "name": "backup-manager/backup-manager", @@ -2148,16 +2148,16 @@ }, { "name": "league/commonmark", - "version": "0.13.3", + "version": "0.13.4", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "35816f39eb2498484fbb7b1495633a976ee1a8de" + "reference": "83f8210427fb01f671e272bb8d44b4ed3a94d459" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/35816f39eb2498484fbb7b1495633a976ee1a8de", - "reference": "35816f39eb2498484fbb7b1495633a976ee1a8de", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/83f8210427fb01f671e272bb8d44b4ed3a94d459", + "reference": "83f8210427fb01f671e272bb8d44b4ed3a94d459", "shasum": "" }, "require": { @@ -2213,7 +2213,7 @@ "markdown", "parser" ], - "time": "2016-05-21 18:41:30" + "time": "2016-06-14 14:49:29" }, { "name": "league/flysystem", @@ -3177,16 +3177,16 @@ }, { "name": "symfony/css-selector", - "version": "v3.1.0", + "version": "v3.1.1", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "e17f386efef7258ac671c24e727673abd086b0cf" + "reference": "c526d7b3cb4fe1673c6a34e13be2ff63f519df99" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/e17f386efef7258ac671c24e727673abd086b0cf", - "reference": "e17f386efef7258ac671c24e727673abd086b0cf", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/c526d7b3cb4fe1673c6a34e13be2ff63f519df99", + "reference": "c526d7b3cb4fe1673c6a34e13be2ff63f519df99", "shasum": "" }, "require": { @@ -3226,7 +3226,7 @@ ], "description": "Symfony CssSelector Component", "homepage": "https://symfony.com", - "time": "2016-03-04 07:56:56" + "time": "2016-06-06 11:42:41" }, { "name": "symfony/debug", @@ -3287,16 +3287,16 @@ }, { "name": "symfony/event-dispatcher", - "version": "v3.1.0", + "version": "v3.1.1", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "0343b2cedd0edb26cdc791212a8eb645c406018b" + "reference": "f5b7563f67779c6d3d5370e23448e707c858df3e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/0343b2cedd0edb26cdc791212a8eb645c406018b", - "reference": "0343b2cedd0edb26cdc791212a8eb645c406018b", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/f5b7563f67779c6d3d5370e23448e707c858df3e", + "reference": "f5b7563f67779c6d3d5370e23448e707c858df3e", "shasum": "" }, "require": { @@ -3343,7 +3343,7 @@ ], "description": "Symfony EventDispatcher Component", "homepage": "https://symfony.com", - "time": "2016-04-12 18:27:47" + "time": "2016-06-06 11:42:41" }, { "name": "symfony/finder", @@ -4057,16 +4057,16 @@ }, { "name": "vlucas/phpdotenv", - "version": "v2.2.1", + "version": "v2.3.0", "source": { "type": "git", "url": "https://github.com/vlucas/phpdotenv.git", - "reference": "63f37b9395e8041cd4313129c08ece896d06ca8e" + "reference": "9ca5644c536654e9509b9d257f53c58630eb2a6a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/63f37b9395e8041cd4313129c08ece896d06ca8e", - "reference": "63f37b9395e8041cd4313129c08ece896d06ca8e", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/9ca5644c536654e9509b9d257f53c58630eb2a6a", + "reference": "9ca5644c536654e9509b9d257f53c58630eb2a6a", "shasum": "" }, "require": { @@ -4078,7 +4078,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "2.2-dev" + "dev-master": "2.3-dev" } }, "autoload": { @@ -4103,7 +4103,7 @@ "env", "environment" ], - "time": "2016-04-15 10:48:49" + "time": "2016-06-14 14:14:52" } ], "packages-dev": [ @@ -5247,16 +5247,16 @@ }, { "name": "sebastian/exporter", - "version": "1.2.1", + "version": "1.2.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/exporter.git", - "reference": "7ae5513327cb536431847bcc0c10edba2701064e" + "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/7ae5513327cb536431847bcc0c10edba2701064e", - "reference": "7ae5513327cb536431847bcc0c10edba2701064e", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/42c4c2eec485ee3e159ec9884f95b431287edde4", + "reference": "42c4c2eec485ee3e159ec9884f95b431287edde4", "shasum": "" }, "require": { @@ -5264,12 +5264,13 @@ "sebastian/recursion-context": "~1.0" }, "require-dev": { + "ext-mbstring": "*", "phpunit/phpunit": "~4.4" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.2.x-dev" + "dev-master": "1.3.x-dev" } }, "autoload": { @@ -5309,7 +5310,7 @@ "export", "exporter" ], - "time": "2015-06-21 07:55:53" + "time": "2016-06-17 09:04:28" }, { "name": "sebastian/global-state", @@ -5452,7 +5453,7 @@ }, { "name": "symfony/dom-crawler", - "version": "v3.1.0", + "version": "v3.1.1", "source": { "type": "git", "url": "https://github.com/symfony/dom-crawler.git", @@ -5508,16 +5509,16 @@ }, { "name": "symfony/yaml", - "version": "v3.1.0", + "version": "v3.1.1", "source": { "type": "git", "url": "https://github.com/symfony/yaml.git", - "reference": "eca51b7b65eb9be6af88ad7cc91685f1556f5c9a" + "reference": "c5a7e7fc273c758b92b85dcb9c46149ccda89623" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/yaml/zipball/eca51b7b65eb9be6af88ad7cc91685f1556f5c9a", - "reference": "eca51b7b65eb9be6af88ad7cc91685f1556f5c9a", + "url": "https://api.github.com/repos/symfony/yaml/zipball/c5a7e7fc273c758b92b85dcb9c46149ccda89623", + "reference": "c5a7e7fc273c758b92b85dcb9c46149ccda89623", "shasum": "" }, "require": { @@ -5553,7 +5554,7 @@ ], "description": "Symfony Yaml Component", "homepage": "https://symfony.com", - "time": "2016-05-26 21:46:24" + "time": "2016-06-14 11:18:07" }, { "name": "webmozart/assert", From 549eaa338293a46be8286e83677a08ae42ebdc10 Mon Sep 17 00:00:00 2001 From: Carlos Eduardo Date: Fri, 24 Jun 2016 12:27:10 -0300 Subject: [PATCH 09/12] Fix language name. Correct name of slugs portuguese. --- config/langs.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config/langs.php b/config/langs.php index f9960758..68e8d358 100755 --- a/config/langs.php +++ b/config/langs.php @@ -100,11 +100,11 @@ return [ 'subset' => 'latin,latin-ext', ], 'pt-BR' => [ - 'name' => 'Portuguese', + 'name' => 'Portuguese, Brazilian', 'subset' => 'latin,latin-ext', ], 'pt-PT' => [ - 'name' => 'Portuguese, Brazilian', + 'name' => 'Portuguese, Portugal', 'subset' => 'latin,latin-ext', ], 'ro' => [ From 7ba12960ddadde5b26218074eeeff8fcc6058ade Mon Sep 17 00:00:00 2001 From: James Brooks Date: Mon, 27 Jun 2016 12:22:18 +0100 Subject: [PATCH 10/12] Added missing events to EventServiceProvider --- app/Foundation/Providers/EventServiceProvider.php | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/Foundation/Providers/EventServiceProvider.php b/app/Foundation/Providers/EventServiceProvider.php index 7888cc54..b8f18b9b 100644 --- a/app/Foundation/Providers/EventServiceProvider.php +++ b/app/Foundation/Providers/EventServiceProvider.php @@ -39,9 +39,15 @@ class EventServiceProvider extends ServiceProvider 'CachetHQ\Cachet\Bus\Events\Component\ComponentWasUpdatedEvent' => [ 'CachetHQ\Cachet\Bus\Handlers\Events\Component\SendComponentUpdateEmailNotificationHandler', ], + 'CachetHQ\Cachet\Bus\Events\Incident\IncidentWasRemovedEvent' => [ + // + ], 'CachetHQ\Cachet\Bus\Events\Incident\IncidentWasReportedEvent' => [ 'CachetHQ\Cachet\Bus\Handlers\Events\Incident\SendIncidentEmailNotificationHandler', ], + 'CachetHQ\Cachet\Bus\Events\Incident\IncidentWasUpdatedEvent' => [ + // + ], 'CachetHQ\Cachet\Bus\Events\Incident\MaintenanceWasScheduledEvent' => [ 'CachetHQ\Cachet\Bus\Handlers\Events\Incident\SendMaintenanceEmailNotificationHandler', ], From fffb4d964cf407e59dbb145751715e3f658736dd Mon Sep 17 00:00:00 2001 From: Travis Swientek Date: Fri, 24 Jun 2016 11:34:42 -0500 Subject: [PATCH 11/12] Component Grouping in Dashboard, Spelling Adjustment. --- .../Dashboard/DashboardController.php | 8 +++- resources/assets/sass/pages/_dashboard.scss | 11 ++++- resources/views/dashboard/index.blade.php | 46 ++++++------------- .../dashboard/partials/component.blade.php | 20 ++++++++ .../dashboard/partials/components.blade.php | 30 ++++++++++++ 5 files changed, 82 insertions(+), 33 deletions(-) create mode 100644 resources/views/dashboard/partials/component.blade.php create mode 100644 resources/views/dashboard/partials/components.blade.php diff --git a/app/Http/Controllers/Dashboard/DashboardController.php b/app/Http/Controllers/Dashboard/DashboardController.php index 1f7292c2..36651597 100644 --- a/app/Http/Controllers/Dashboard/DashboardController.php +++ b/app/Http/Controllers/Dashboard/DashboardController.php @@ -13,6 +13,7 @@ namespace CachetHQ\Cachet\Http\Controllers\Dashboard; use CachetHQ\Cachet\Integrations\Feed; use CachetHQ\Cachet\Models\Component; +use CachetHQ\Cachet\Models\ComponentGroup; use CachetHQ\Cachet\Models\Incident; use CachetHQ\Cachet\Models\Subscriber; use Illuminate\Routing\Controller; @@ -67,6 +68,9 @@ class DashboardController extends Controller $components = Component::orderBy('order')->get(); $incidents = $this->getIncidents(); $subscribers = $this->getSubscribers(); + $usedComponentGroups = Component::enabled()->where('group_id', '>', 0)->groupBy('group_id')->pluck('group_id'); + $componentGroups = ComponentGroup::whereIn('id', $usedComponentGroups)->orderBy('order')->get(); + $ungroupedComponents = Component::enabled()->where('group_id', 0)->orderBy('order')->orderBy('created_at')->get(); $entries = null; if ($feed = $this->feed->latest()) { @@ -78,7 +82,9 @@ class DashboardController extends Controller ->withComponents($components) ->withIncidents($incidents) ->withSubscribers($subscribers) - ->withEntries($entries); + ->withEntries($entries) + ->withComponentGroups($componentGroups) + ->withUngroupedComponents($ungroupedComponents); } /** diff --git a/resources/assets/sass/pages/_dashboard.scss b/resources/assets/sass/pages/_dashboard.scss index 47d971cf..f8be49b6 100755 --- a/resources/assets/sass/pages/_dashboard.scss +++ b/resources/assets/sass/pages/_dashboard.scss @@ -1,4 +1,4 @@ -.componet-inline-update { +.component-inline-update { @extend .text-right; padding-top: 8px; label { @@ -7,4 +7,13 @@ } } +.component-group-name{ + font-size: 18px; + padding-left: 10px; +} + +.component-group-other{ + font-size: 18px; +} + @import "modules/stats"; diff --git a/resources/views/dashboard/index.blade.php b/resources/views/dashboard/index.blade.php index e06abb3e..4c65a86b 100644 --- a/resources/views/dashboard/index.blade.php +++ b/resources/views/dashboard/index.blade.php @@ -15,38 +15,22 @@
+
-
-

{{ trans('dashboard.components.component_statuses') }}

-
-
- @forelse($components as $component) -
-
-
-
-

{{ $component->name }}

-
-
- @foreach(trans('cachet.components.status') as $statusID => $status) -
- -
- @endforeach -
-
- -
-
- @empty - - @endforelse -
-
-
+
+

{{ trans('dashboard.components.component_statuses') }}

+
+ @if(!$component_groups->isEmpty() || !$ungrouped_components->isEmpty()) + @include('dashboard.partials.components') + @else + + @endif +
+
diff --git a/resources/views/dashboard/partials/component.blade.php b/resources/views/dashboard/partials/component.blade.php new file mode 100644 index 00000000..9a8f019c --- /dev/null +++ b/resources/views/dashboard/partials/component.blade.php @@ -0,0 +1,20 @@ +
  • +
    +
    +
    +
    {{ $component->name }}
    +
    +
    + @foreach(trans('cachet.components.status') as $statusID => $status) +
    + +
    + @endforeach +
    +
    + +
    +
  • diff --git a/resources/views/dashboard/partials/components.blade.php b/resources/views/dashboard/partials/components.blade.php new file mode 100644 index 00000000..aa9f5496 --- /dev/null +++ b/resources/views/dashboard/partials/components.blade.php @@ -0,0 +1,30 @@ +@if($component_groups->count() > 0) +@foreach($component_groups as $componentGroup) +@if($componentGroup->enabled_components->count() > 0) + +@endif +@endforeach +@endif + +@if($ungrouped_components->count() > 0) + +@endif From 1423a9bbd0dd10699a196053f26c7b83f9f9fc2a Mon Sep 17 00:00:00 2001 From: Graham Campbell Date: Mon, 27 Jun 2016 15:48:35 +0100 Subject: [PATCH 12/12] Updated dependencies --- composer.json | 2 +- composer.lock | 36 ++++++++++++++++++------------------ 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/composer.json b/composer.json index 6c01a353..8b63aaed 100644 --- a/composer.json +++ b/composer.json @@ -20,7 +20,7 @@ ], "require": { "php": ">=5.5.9", - "laravel/framework": "5.2.37", + "laravel/framework": "5.2.39", "alt-three/badger": "^3.1", "alt-three/bus": "^1.1", "alt-three/emoji": "^3.1", diff --git a/composer.lock b/composer.lock index 141c53be..9a4f7e15 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": "b0bde80a47d410fee6bd4e2c70e120bd", - "content-hash": "1208b3f959adb7a9ab0f8a1dea2f766a", + "hash": "121ae0d23ad2d8a2d0a87c90a5102e6b", + "content-hash": "bd751e5a5d663a274000acd26ba97e86", "packages": [ { "name": "alt-three/badger", @@ -325,16 +325,16 @@ }, { "name": "aws/aws-sdk-php", - "version": "3.18.18", + "version": "3.18.20", "source": { "type": "git", "url": "https://github.com/aws/aws-sdk-php.git", - "reference": "68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc" + "reference": "e5a901dd3a42d0c46a90ee37a174938cd0ce55bf" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc", - "reference": "68b9d0b7e007782bc0f2633cdf5a4a6bf08aaafc", + "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/e5a901dd3a42d0c46a90ee37a174938cd0ce55bf", + "reference": "e5a901dd3a42d0c46a90ee37a174938cd0ce55bf", "shasum": "" }, "require": { @@ -401,7 +401,7 @@ "s3", "sdk" ], - "time": "2016-06-14 20:35:03" + "time": "2016-06-23 23:17:52" }, { "name": "backup-manager/backup-manager", @@ -1759,16 +1759,16 @@ }, { "name": "guzzlehttp/psr7", - "version": "1.3.0", + "version": "1.3.1", "source": { "type": "git", "url": "https://github.com/guzzle/psr7.git", - "reference": "31382fef2889136415751badebbd1cb022a4ed72" + "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/guzzle/psr7/zipball/31382fef2889136415751badebbd1cb022a4ed72", - "reference": "31382fef2889136415751badebbd1cb022a4ed72", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/5c6447c9df362e8f8093bda8f5d8873fe5c7f65b", + "reference": "5c6447c9df362e8f8093bda8f5d8873fe5c7f65b", "shasum": "" }, "require": { @@ -1784,7 +1784,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.0-dev" + "dev-master": "1.4-dev" } }, "autoload": { @@ -1813,7 +1813,7 @@ "stream", "uri" ], - "time": "2016-04-13 19:56:01" + "time": "2016-06-24 23:00:38" }, { "name": "jakub-onderka/php-console-color", @@ -2019,16 +2019,16 @@ }, { "name": "laravel/framework", - "version": "v5.2.37", + "version": "v5.2.39", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "bf199036b0e222a27e2133d841aee0d4238f804d" + "reference": "c2a77050269b4e03bd9a735a9f24e573a7598b8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/bf199036b0e222a27e2133d841aee0d4238f804d", - "reference": "bf199036b0e222a27e2133d841aee0d4238f804d", + "url": "https://api.github.com/repos/laravel/framework/zipball/c2a77050269b4e03bd9a735a9f24e573a7598b8a", + "reference": "c2a77050269b4e03bd9a735a9f24e573a7598b8a", "shasum": "" }, "require": { @@ -2144,7 +2144,7 @@ "framework", "laravel" ], - "time": "2016-06-10 22:38:47" + "time": "2016-06-17 19:25:12" }, { "name": "league/commonmark",