2017 © Pedro PelĆ”ez
 

library language

Language switcher package for Laravel.

image

akaunting/language

Language switcher package for Laravel.

  • Wednesday, April 18, 2018
  • by denisdulici
  • Repository
  • 5 Watchers
  • 56 Stars
  • 5,701 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 5 Forks
  • 3 Open issues
  • 7 Versions
  • 30 % Grown

The README.md

Language switcher package for Laravel

Downloads StyleCI Quality License, (*1)

This package allows switching locale easily on Laravel projects. It's so simple to use, once it's installed, your App locale will change only by passing routes into SetLanguage middleware., (*2)

Top features:, (*3)

  • Change automatically app locale depending on user browser configuration
  • Language flags built-in for easy implementation
  • Get language name like 'English' or 'EspaƱol' from codes such as 'en' or 'es'
  • Option to choose short (en) or long (en-GB) language code
  • Store locale on users table
  • Restrict users to set languages you don't have translations
  • Helper functions for clean, simple and easy to read API
  • Supports Carbon and Date packages

Getting Started

1. Install

Run the following command:, (*4)

composer require akaunting/laravel-language

2. Register (for Laravel < 5.5)

Register the service provider in config/app.php, (*5)

Akaunting\Language\Provider::class,

Add alias if you want to use the facade., (*6)

'Language'   => Akaunting\Language\Facade::class,

3. Publish

Publish config, migration and blade files., (*7)

php artisan vendor:publish --tag=language

4. Migrate

Add locale column to users table:, (*8)

php artisan migrate

5. Configure

Default values can be modified also on config/language.php, (*9)

Keys

  • route: Makes route available
  • carbon: Sets briannesbitt/carbon translator language
  • date: Sets jenssegers/date translator language
  • home: Make home route available
  • auto: Sets language automatically depending on user's browser config
  • prefix: Prefix of routes URI to set locale
  • middleware: default middleware to set locale
  • controller: default controller to handle locale
  • flags: Settings such as width, class etc for flags
  • mode: The language code and name mode
  • allowed: Allowed language codes
  • all: Available language names and codes

Usage

Middleware

All routes in which you want to set language should be under the language middleware to set at each request to App locale., (*10)

Route::group(['middleware' => 'language'], function () {

    // Here your routes

});

URL

  • Via URL with return home: /languages/{locale}/home
  • Via URL with return back: /languages/{locale}/back

Tip: /languages prefix can be changed from config/language.php, (*11)

Methods

language()->allowed()

Returns an array with [$code => $name] for all allowed languages of config. Example usage on blade:, (*12)

@foreach (language()->allowed() as $code => $name)
    <a href="{{ language()->back($code) }}">{{ $name }}</a>
@endforeach

language()->flags()

Returns an output with flags for all allowed languages of config. Output can be changed from resources/views/vendor/language folder, (*13)

language()->flag()

Returns the flag of the current locale. Output can be changed from resources/views/vendor/language folder, (*14)

language()->names($codes = null)

Get an array like [$code => $name] from an array of only $codes., (*15)

language()->codes($langs = null)

Get an array like [$name => $code] from an array of only $langs., (*16)

language()->back($code)

Returns the URL to set up language and return back: back(), (*17)

Also if you prefer to use directly route() function you can use it as following code:, (*18)

{{ route('language::back', ['locale' => $code]) }}

language()->home($code)

Returns the URL to set language and return to home: url('/'), (*19)

Also if you prefer to use directly route() function you can use it as following code:, (*20)

{{ route('language::home', ['locale' => $code]) }}

language()->getName($code = 'default')

Returns the language name of $code if specified or the current language set if not., (*21)

Tip: Use app()->getLocale() to get the current locale, (*22)

language()->getCode($name = 'default')

Returns the language code of $name if specified or the current language set if not., (*23)

Changelog

Please see Releases for more information what has changed recently., (*24)

Contributing

Pull requests are more than welcome. You must follow the PSR coding standards., (*25)

Security

If you discover any security related issues, please email security@akaunting.com instead of using the issue tracker., (*26)

Credits

License

The MIT License (MIT). Please see LICENSE for more information., (*27)

The Versions

18/04 2018

dev-master

9999999-dev

Language switcher package for Laravel.

  Sources   Download

MIT

The Requires

 

laravel language switcher

18/04 2018

1.0.5

1.0.5.0

Language switcher package for Laravel.

  Sources   Download

MIT

The Requires

 

laravel language switcher

23/01 2018

1.0.4

1.0.4.0

Language switcher package for Laravel.

  Sources   Download

MIT

The Requires

 

laravel language switcher

18/12 2017

1.0.3

1.0.3.0

Language switcher package for Laravel.

  Sources   Download

MIT

The Requires

 

laravel language switcher

13/12 2017

1.0.2

1.0.2.0

Language switcher package for Laravel.

  Sources   Download

MIT

The Requires

 

laravel language switcher

13/12 2017

1.0.1

1.0.1.0

Language switcher package for Laravel.

  Sources   Download

MIT

The Requires

 

laravel language switcher

03/09 2017

1.0.0

1.0.0.0

Language switcher package for Laravel.

  Sources   Download

MIT

The Requires

 

laravel language switcher