Notifications: Aligned how user language is used

- This ensures content notifications are not translated to receiver
  language.
- This adds actual plaintext support for content notifications (Was
  previously just HTML as text view).
- Shares same base class across all mail notifications.
- Also cleaned up existing notification classes.

Future cleanup requested via #4501
This commit is contained in:
Dan Brown
2023-09-02 15:11:42 +01:00
parent f91049a3f2
commit 3847a76134
14 changed files with 114 additions and 117 deletions

View File

@ -2,6 +2,7 @@
namespace BookStack\Translation;
use BookStack\Users\Models\User;
use Illuminate\Http\Request;
class LanguageManager
@ -80,6 +81,15 @@ class LanguageManager
return setting()->getUser($user, 'language', $default);
}
/**
* Get the language for the given user.
*/
public function getLanguageForUser(User $user): string
{
$default = config('app.locale');
return setting()->getUser($user, 'language', $default);
}
/**
* Check if the given BookStack language value is a right-to-left language.
*/