trin4ik / laravel-middleware-setlocale
Laravel "SetLocale" middleware from user data, http headers, post data etc
Installs: 1 096
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: ^8.0
- laravel/framework: >=8.0
README
Simple and stupid package for set locale from user data, http header, post data etc.
Installation
composer require trin4ik/laravel-middleware-setlocale
php artisan vendor:publish --provider "Trin4ik\LaravelMiddlewareSetLocale\MiddlewareSetLocaleServiceProvider"
And add middleware to app/Http/Kernel.php
to needs routes middleware, or to global:
<?php namespace App\Http; ... class Kernel extends HttpKernel { protected $middleware = [ ... \Trin4ik\LaravelMiddlewareSetLocale\Http\Middleware\SetLocale::class ];
Usage
in .env
or config/setlocale.php
u can configure locale sniffer:
Key | Default | Description |
---|---|---|
SET_LOCALE_DEFAULT | en | Default locale |
SET_LOCALE_METHODS | get,header | U have 4 methods to sniff locale, from user data, from get or post fields or from custom header . The last method gets the highest priority |
SET_LOCALE_METHOD_USER | locale | User attribute, where sets locale data. Like User::find(1)->locale |
SET_LOCALE_METHOD_HEADER | x-locale | Custom http header, like HTTP_X_LOCALE |
SET_LOCALE_METHOD_GET | locale | Get param like /?locale=fr |
SET_LOCALE_METHOD_POST | locale | Post field like $request->post('locale') |
SET_LOCALE_ALLOW | en,ru | Allowed locales. others set the default |
Changelog
Please see CHANGELOG for more information what has changed recently.
Security
If you discover any security related issues, please email trin4ik@gmail.com instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.