Language of mail doesn't show as intended by the settings. [ch87] (#6619)

* Fixes #5554. Language of mail doesn't show as intended by the settings.
This commit is contained in:
Ivan Nieto 2019-01-22 16:02:08 -06:00 committed by snipe
parent 66f557d436
commit 3fa5976315
3 changed files with 28 additions and 10 deletions

View file

@ -40,10 +40,17 @@ class CheckoutableListener
*/ */
$acceptance = $this->getCheckoutAcceptance($event); $acceptance = $this->getCheckoutAcceptance($event);
Notification::send( if(!$event->checkedOutTo->locale){
$this->getNotifiables($event), Notification::locale(Setting::getSettings()->locale)->send(
$this->getCheckoutNotification($event, $acceptance) $this->getNotifiables($event),
); $this->getCheckoutNotification($event, $acceptance)
);
} else {
Notification::send(
$this->getNotifiables($event),
$this->getCheckoutNotification($event, $acceptance)
);
}
} }
/** /**
@ -60,10 +67,17 @@ class CheckoutableListener
/** /**
* Send the appropriate notification * Send the appropriate notification
*/ */
Notification::send( if(!$event->checkedOutTo->locale){
$this->getNotifiables($event), Notification::locale(Setting::getSettings()->locale)->send(
$this->getCheckinNotification($event) $this->getNotifiables($event),
); $this->getCheckinNotification($event)
);
} else {
Notification::send(
$this->getNotifiables($event),
$this->getCheckinNotification($event)
);
}
} }
/** /**

View file

@ -15,11 +15,12 @@ use Illuminate\Database\Eloquent\SoftDeletes;
use App\Http\Traits\UniqueUndeletedTrait; use App\Http\Traits\UniqueUndeletedTrait;
use Illuminate\Notifications\Notifiable; use Illuminate\Notifications\Notifiable;
use Laravel\Passport\HasApiTokens; use Laravel\Passport\HasApiTokens;
use Illuminate\Contracts\Translation\HasLocalePreference;
use DB; use DB;
class User extends SnipeModel implements AuthenticatableContract, AuthorizableContract, CanResetPasswordContract class User extends SnipeModel implements AuthenticatableContract, AuthorizableContract, CanResetPasswordContract, HasLocalePreference
{ {
protected $presenter = 'App\Presenters\UserPresenter'; protected $presenter = 'App\Presenters\UserPresenter';
use SoftDeletes, ValidatingTrait; use SoftDeletes, ValidatingTrait;
@ -643,4 +644,8 @@ class User extends SnipeModel implements AuthenticatableContract, AuthorizableCo
{ {
return $query->leftJoin('departments as departments_users', 'users.department_id', '=', 'departments_users.id')->orderBy('departments_users.name', $order); return $query->leftJoin('departments as departments_users', 'users.department_id', '=', 'departments_users.id')->orderBy('departments_users.name', $order);
} }
public function preferredLocale(){
return $this->locale;
}
} }

View file

@ -96,7 +96,6 @@ class CheckinLicenseSeatNotification extends Notification
*/ */
public function toMail($notifiable) public function toMail($notifiable)
{ {
return (new MailMessage)->markdown('notifications.markdown.checkin-license', return (new MailMessage)->markdown('notifications.markdown.checkin-license',
[ [
'item' => $this->item, 'item' => $this->item,