<?php

	namespace Modules\Lpj\Notifications;

	use Illuminate\Bus\Queueable;
	use Illuminate\Contracts\Queue\ShouldQueue;
	use Illuminate\Notifications\Messages\MailMessage;
	use Illuminate\Notifications\Notification;

	class PermohonanNotif extends Notification
	{
		use Queueable;

		protected $permohonan;
		protected $message;

		/**
		 * Create a new notification instance.
		 */
		public function __construct($permohonan, $message)
		{
			$this->permohonan = $permohonan;
			$this->message    = $message;
		}

		/**
		 * Get the notification's delivery channels.
		 */
		public function via($notifiable)
		: array
		{
			return ['mail', 'database'];
		}

		/**
		 * Get the mail representation of the notification.
		 */
		public function toMail($notifiable)
		: MailMessage
		{
			return (new MailMessage)
				->line('The introduction to the notification.')
				->action('Notification Action', 'https://laravel.com')
				->line('Thank you for using our application!');
		}

		/**
		 * Get the array representation of the notification.
		 */
		public function toArray($notifiable)
		: array
		{
			return [
				'data'    => $this->permohonan,
				'message' => $this->message,
			];
		}
	}
