<?php

namespace Payroll\Allowance\Workflow;

use Payroll\Allowance\Models\Allowance;
use Payroll\Allowance\Notifications\Allowance as AllowanceNotifyer;
use Notification;

class AllowanceNotification
{

    /**
     * Send the notification to the users after complete.
     *
     * @param Allowance $allowance
     *
     * @return void
     */
    public function complete(Allowance $allowance)
    {
        return Notification::send($allowance->user, new AllowanceNotifyer($allowance, 'complete'));;
    }

    /**
     * Send the notification to the users after verify.
     *
     * @param Allowance $allowance
     *
     * @return void
     */
    public function verify(Allowance $allowance)
    {
        return Notification::send($allowance->user, new AllowanceNotifyer($allowance, 'verify'));;
    }

    /**
     * Send the notification to the users after approve.
     *
     * @param Allowance $allowance
     *
     * @return void
     */
    public function approve(Allowance $allowance)
    {
        return Notification::send($allowance->user, new AllowanceNotifyer($allowance, 'approve'));;

    }

    /**
     * Send the notification to the users after publish.
     *
     * @param Allowance $allowance
     *
     * @return void
     */
    public function publish(Allowance $allowance)
    {
        return Notification::send($allowance->user, new AllowanceNotifyer($allowance, 'publish'));;
    }

    /**
     * Send the notification to the users after archive.
     *
     * @param Allowance $allowance
     *
     * @return void
     */
    public function archive(Allowance $allowance)
    {
        return Notification::send($allowance->user, new AllowanceNotifyer($allowance, 'archive'));;

    }

    /**
     * Send the notification to the users after unpublish.
     *
     * @param Allowance $allowance
     *
     * @return void
     */
    public function unpublish(Allowance $allowance)
    {
        return Notification::send($allowance->user, new AllowanceNotifyer($allowance, 'unpublish'));;

    }
}