Skip to content

Commit 42659ab

Browse files
author
Sandip Patel
committed
Internationalization Support
1 parent fa9c2a4 commit 42659ab

File tree

3 files changed

+57
-1
lines changed

3 files changed

+57
-1
lines changed

composer.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,10 @@
2020
"laravel": {
2121
"providers": [
2222
"PCB\\Laravel\\ServiceProvider"
23-
]
23+
],
24+
"aliases": {
25+
"PCBLaravel": "PCB\\Laravel\\LaravelFacade"
26+
}
2427
},
2528
"branch-alias": {
2629
"dev-master": "1.0-dev"

src/LaravelFacade.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?php
2+
3+
/**
4+
* User: spatel
5+
* Date: 19/09/17
6+
* Time: 11:59 AM
7+
*/
8+
namespace PCB\Laravel;
9+
10+
use Illuminate\Support\Facades\Facade;
11+
12+
class LaravelFacade extends Facade
13+
{
14+
protected static function getFacadeAccessor()
15+
{
16+
return 'PCB\Laravel\LaravelSetup';
17+
}
18+
}

src/LaravelSetup.php

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<?php
2+
3+
/**
4+
* Created by PhpStorm.
5+
* User: spatel
6+
* Date: 19/09/17
7+
* Time: 12:00 PM
8+
*/
9+
namespace PCB\Laravel;
10+
11+
use App;
12+
13+
class LaravelSetup
14+
{
15+
public static function setLocale()
16+
{
17+
$request = request();
18+
19+
// get requested language for url
20+
$requested_lang = (strlen($request->segment(1)) === 2) ? $request->segment(1) : '';
21+
$requested_country = (strlen($request->segment(2)) === 2) ? $request->segment(2) : '';
22+
23+
// set the local for application
24+
// very important to support multi-languages
25+
App::setLocale($requested_lang ?: config('app.fallback_locale'));
26+
27+
// set url prefix for routing purpose
28+
config(['url_prefix' => trim("{$requested_lang}/{$requested_country}", DIRECTORY_SEPARATOR)]);
29+
}
30+
31+
public static function setPrefix($prefix=null)
32+
{
33+
return trim(config('url_prefix'). ($prefix ? '/' .$prefix : ''), '/');
34+
}
35+
}

0 commit comments

Comments
 (0)