From 7617fda9782e267b2faf6a8ef22098b81c9fee78 Mon Sep 17 00:00:00 2001 From: snipe Date: Wed, 11 Oct 2017 15:33:53 -0700 Subject: [PATCH] Another attempt for #4165 (This is terrible and needs to be refactored.) --- app/Models/Asset.php | 2 +- app/Notifications/CheckoutNotification.php | 46 +++++++++++++--------- 2 files changed, 28 insertions(+), 20 deletions(-) diff --git a/app/Models/Asset.php b/app/Models/Asset.php index cbb623b67..730ac7f8c 100644 --- a/app/Models/Asset.php +++ b/app/Models/Asset.php @@ -487,7 +487,7 @@ class Asset extends Depreciable } elseif ($this->model->category->use_default_eula == '1') { return $Parsedown->text(e(Setting::getSettings()->default_eula_text)); } else { - return null; + return false; } } diff --git a/app/Notifications/CheckoutNotification.php b/app/Notifications/CheckoutNotification.php index e365e8a7a..4ca16d47d 100644 --- a/app/Notifications/CheckoutNotification.php +++ b/app/Notifications/CheckoutNotification.php @@ -83,28 +83,36 @@ class CheckoutNotification extends Notification public function toMail($notifiable) { - //TODO: Expand for non assets. - $item = $this->params['item']; - $admin_user = $this->params['admin']; - $target = $this->params['target']; - $data = [ - 'eula' => method_exists($item, 'getEula') ? $item->getEula() : '', - 'first_name' => $target->present()->fullName(), - 'item_name' => $item->present()->name(), - 'checkout_date' => $item->last_checkout, - 'expected_checkin' => $item->expected_checkin, - 'item_tag' => $item->asset_tag, - 'note' => $this->params['note'], - 'item_serial' => $item->serial, - 'require_acceptance' => method_exists($item, 'requireAcceptance') ? $item->requireAcceptance() : '', - 'log_id' => $this->params['log_id'], - ]; + if (class_basename(get_class($this->params['item']))=='Asset') { + + //TODO: Expand for non assets. + $item = $this->params['item']; + $admin_user = $this->params['admin']; + $target = $this->params['target']; + $data = [ + 'eula' => method_exists($item, 'getEula') ? $item->getEula() : '', + 'first_name' => $target->present()->fullName(), + 'item_name' => $item->present()->name(), + 'checkout_date' => $item->last_checkout, + 'expected_checkin' => $item->expected_checkin, + 'item_tag' => $item->asset_tag, + 'note' => $this->params['note'], + 'item_serial' => $item->serial, + 'require_acceptance' => method_exists($item, 'requireAcceptance') ? $item->requireAcceptance() : '', + 'log_id' => $this->params['log_id'], + ]; - return (new MailMessage) - ->view('emails.accept-asset', $data) - ->subject(trans('mail.Confirm_asset_delivery')); + if ((method_exists($item, 'requireAcceptance') && ($item->requireAcceptance() == '1')) + || (method_exists($item, 'getEula') && ($item->getEula())) + ) { + return (new MailMessage) + ->view('emails.accept-asset', $data) + ->subject(trans('mail.Confirm_asset_delivery')); + } + } + }