/** * Handle the event. * * @param \CachetHQ\Cachet\Events\MaintenanceHasScheduledEvent $event */ public function handle(MaintenanceHasScheduledEvent $event) { $data = $this->presenter->decorate($event->incident); foreach ($this->subscriber->all() as $subscriber) { $mail = ['email' => $subscriber->email, 'subject' => 'Scheduled maintenance.', 'status' => $data->humanStatus, 'htmlContent' => $data->formattedMessage, 'textContent' => $data->message, 'token' => $subscriber->token, 'unsubscribeLink' => route('unsubscribe', ['code' => $subscriber->token]), 'appUrl' => env('APP_URL')]; $this->mailer->queue(['html' => 'emails.incidents.maintenance-html', 'text' => 'emails.incidents.maintenance-text'], $mail, function (Message $message) use($mail) { $message->to($mail['email'])->subject($mail['subject']); }); } }
/** * Handle the event. * * @param \CachetHQ\Cachet\Events\MaintenanceHasScheduledEvent $event * * @return void */ public function handle(MaintenanceWasScheduledEvent $event) { if (!$event->incident->notify) { return false; } $data = AutoPresenter::decorate($event->incident); foreach ($this->subscriber->all() as $subscriber) { $mail = ['email' => $subscriber->email, 'subject' => 'Scheduled maintenance.', 'status' => $data->humanStatus, 'html_content' => $data->formattedMessage, 'text_content' => $data->message, 'scheduled_at' => $data->scheduled_at_formatted, 'token' => $subscriber->token, 'unsubscribe_link' => route('subscribe.unsubscribe', ['code' => $subscriber->verify_code]), 'app_url' => env('APP_URL')]; $this->mailer->queue(['html' => 'emails.incidents.maintenance-html', 'text' => 'emails.incidents.maintenance-text'], $mail, function (Message $message) use($mail) { $message->to($mail['email'])->subject($mail['subject']); }); } }
/** * Handle the event. * * @param \CachetHQ\Cachet\Events\IncidentHasReportedEvent $event */ public function handle(IncidentHasReportedEvent $event) { $data = $this->presenter->decorate($event->incident); // Only send emails for public incidents. if ($event->incident->visible === 1) { foreach ($this->subscriber->all() as $subscriber) { $mail = ['email' => $subscriber->email, 'subject' => 'New incident reported.', 'status' => $data->humanStatus, 'htmlContent' => $data->formattedMessage, 'textContent' => $data->message, 'token' => $subscriber->token, 'unsubscribeLink' => route('unsubscribe', ['code' => $subscriber->verify_code]), 'appUrl' => env('APP_URL')]; $this->mailer->queue(['html' => 'emails.incidents.new-html', 'text' => 'emails.incidents.new-text'], $mail, function (Message $message) use($mail) { $message->to($mail['email'])->subject($mail['subject']); }); } } }
/** * Handle the event. * * @param \CachetHQ\Cachet\Events\Incident\IncidentHasReportedEvent $event * * @return void */ public function handle(IncidentWasReportedEvent $event) { $incident = $this->presenter->decorate($event->incident); $component = $this->presenter->decorate($event->incident->component); // Only send emails for public incidents. if ($event->incident->visible === 1) { foreach ($this->subscriber->all() as $subscriber) { $mail = ['email' => $subscriber->email, 'subject' => 'New incident reported.', 'has_component' => $event->incident->component ? true : false, 'component_name' => $component ? $component->name : null, 'status' => $incident->humanStatus, 'html_content' => $incident->formattedMessage, 'text_content' => $incident->message, 'token' => $subscriber->token, 'unsubscribe_link' => route('subscribe.unsubscribe', ['code' => $subscriber->verify_code]), 'app_url' => env('APP_URL')]; $this->mailer->queue(['html' => 'emails.incidents.new-html', 'text' => 'emails.incidents.new-text'], $mail, function (Message $message) use($mail) { $message->to($mail['email'])->subject($mail['subject']); }); } } }
/** * Shows the subscribers view. * * @return \Illuminate\View\View */ public function showSubscribers() { return View::make('dashboard.subscribers.index')->withPageTitle(trans('dashboard.subscribers.subscribers') . ' - ' . trans('dashboard.dashboard'))->withSubscribers(Subscriber::all()); }
/** * Shows the add subscriber view. * * @return \Illuminate\View\View */ public function showAddSubscriber() { return View::make('dashboard.subscribers.add')->with(['page_title' => trans('dashboard.subscribers.add.title') . ' - ' . trans('dashboard.dashboard'), 'incidentTemplates' => Subscriber::all()]); }