diff --git a/app/Bus/Handlers/Events/Subscriber/SendSubscriberVerificationEmailHandler.php b/app/Bus/Handlers/Events/Subscriber/SendSubscriberVerificationEmailHandler.php index b225c679..e0650c06 100644 --- a/app/Bus/Handlers/Events/Subscriber/SendSubscriberVerificationEmailHandler.php +++ b/app/Bus/Handlers/Events/Subscriber/SendSubscriberVerificationEmailHandler.php @@ -11,9 +11,7 @@ namespace CachetHQ\Cachet\Bus\Handlers\Events\Subscriber; -use CachetHQ\Cachet\Bus\Commands\Subscriber\VerifySubscriberCommand; use CachetHQ\Cachet\Bus\Events\Subscriber\SubscriberHasSubscribedEvent; -use Illuminate\Contracts\Config\Repository; use Illuminate\Contracts\Mail\MailQueue; use Illuminate\Mail\Message; @@ -40,10 +38,9 @@ class SendSubscriberVerificationEmailHandler * * @return void */ - public function __construct(MailQueue $mailer, Repository $config) + public function __construct(MailQueue $mailer) { $this->mailer = $mailer; - $this->config = $config; } /** @@ -55,13 +52,6 @@ class SendSubscriberVerificationEmailHandler */ public function handle(SubscriberHasSubscribedEvent $event) { - // If we've enabled verification skipping, then just verify the subscriber right now. - if ($this->config->get('setting.skip_subscriber_verification')) { - dispatch(new VerifySubscriberCommand($event->subscriber)); - - return; - } - $mail = [ 'email' => $event->subscriber->email, 'subject' => 'Confirm your subscription.', diff --git a/app/Http/Controllers/Api/SubscriberController.php b/app/Http/Controllers/Api/SubscriberController.php index 42eeec09..15661e33 100644 --- a/app/Http/Controllers/Api/SubscriberController.php +++ b/app/Http/Controllers/Api/SubscriberController.php @@ -14,6 +14,7 @@ namespace CachetHQ\Cachet\Http\Controllers\Api; use CachetHQ\Cachet\Bus\Commands\Subscriber\SubscribeSubscriberCommand; use CachetHQ\Cachet\Bus\Commands\Subscriber\UnsubscribeSubscriberCommand; use CachetHQ\Cachet\Bus\Commands\Subscriber\UnsubscribeSubscriptionCommand; +use Illuminate\Contracts\Config\Repository; use CachetHQ\Cachet\Models\Subscriber; use CachetHQ\Cachet\Models\Subscription; use GrahamCampbell\Binput\Facades\Binput; @@ -48,12 +49,10 @@ class SubscriberController extends AbstractApiController */ public function postSubscribers() { + $verified = Binput::get('verify', app(Repository::class)->get('setting.skip_subscriber_verification'))); + try { - $subscriber = dispatch(new SubscribeSubscriberCommand( - Binput::get('email'), - Binput::get('verify', false), - Binput::get('components', null) - )); + $subscriber = dispatch(new SubscribeSubscriberCommand(Binput::get('email'), $verified, Binput::get('components'))); } catch (QueryException $e) { throw new BadRequestHttpException(); } diff --git a/app/Http/Controllers/Dashboard/SubscriberController.php b/app/Http/Controllers/Dashboard/SubscriberController.php index a62cd0b8..cac1ceb2 100644 --- a/app/Http/Controllers/Dashboard/SubscriberController.php +++ b/app/Http/Controllers/Dashboard/SubscriberController.php @@ -14,6 +14,7 @@ namespace CachetHQ\Cachet\Http\Controllers\Dashboard; use AltThree\Validator\ValidationException; use CachetHQ\Cachet\Bus\Commands\Subscriber\SubscribeSubscriberCommand; use CachetHQ\Cachet\Bus\Commands\Subscriber\UnsubscribeSubscriberCommand; +use Illuminate\Contracts\Config\Repository; use CachetHQ\Cachet\Models\Subscriber; use GrahamCampbell\Binput\Facades\Binput; use Illuminate\Routing\Controller; @@ -52,11 +53,13 @@ class SubscriberController extends Controller */ public function createSubscriberAction() { + $verified = app(Repository::class)->get('setting.skip_subscriber_verification')); + try { $subscribers = preg_split("/\r\n|\n|\r/", Binput::get('email')); foreach ($subscribers as $subscriber) { - dispatch(new SubscribeSubscriberCommand($subscriber)); + dispatch(new SubscribeSubscriberCommand($subscriber, $verified)); } } catch (ValidationException $e) { return Redirect::route('dashboard.subscribers.add') diff --git a/app/Http/Controllers/SubscribeController.php b/app/Http/Controllers/SubscribeController.php index 14911a92..da67f8e1 100644 --- a/app/Http/Controllers/SubscribeController.php +++ b/app/Http/Controllers/SubscribeController.php @@ -23,6 +23,7 @@ use CachetHQ\Cachet\Models\Subscriber; use CachetHQ\Cachet\Models\Subscription; use GrahamCampbell\Binput\Facades\Binput; use GrahamCampbell\Markdown\Facades\Markdown; +use Illuminate\Contracts\Config\Repository; use Illuminate\Routing\Controller; use Illuminate\Support\Facades\Config; use Illuminate\Support\Facades\Redirect; @@ -57,10 +58,9 @@ class SubscribeController extends Controller { $email = Binput::get('email'); $subscriptions = Binput::get('subscriptions'); + $verified = app(Repository::class)->get('setting.skip_subscriber_verification')); try { - $verified = false; - $subscription = dispatch(new SubscribeSubscriberCommand($email, $verified)); } catch (ValidationException $e) { return Redirect::route('status-page')