Skip to content

Commit

Permalink
muti-language
Browse files Browse the repository at this point in the history
  • Loading branch information
taoyu65 committed Jul 30, 2017
1 parent 6e98d7b commit 87eb3ab
Show file tree
Hide file tree
Showing 11 changed files with 77 additions and 4 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@
Homestead.json
Homestead.yaml
.env
composer.lock
composer.lock
src/Http/Controllers/dashboardController\.php
22 changes: 22 additions & 0 deletions src/Http/Middleware/LanguageMiddleware.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?php

namespace YM\Http\Middleware;

use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Session;

class LanguageMiddleware
{
protected $languages = ['en','zh_cn'];

public function handle(Request $request, Closure $next)
{
if(!Session::has('lang'))
{
Session::put('lang', $request->getPreferredLanguage($this->languages));
}
app()->setLocale(Session::get('lang'));
return $next($request);
}
}
7 changes: 7 additions & 0 deletions src/Routes/umi.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,13 @@
Route::post('selector/search', [
'uses' => 'commonController@search'
]);

//设置语言
//set language
Route::get('setLanguage/{lang}', function($lang){
session(['lang' => $lang]);
return redirect()->back();
});
#------------------------------------------------------------------

#main--------------------------------------------------------------
Expand Down
5 changes: 3 additions & 2 deletions src/Umi/umiMasterPageBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,14 @@ public function masterPageFoot()

private function headHtml()
{
$path = config('umi.assets_path') . '/ace';
$assetPath = config('umi.assets_path');
$path = $assetPath . '/ace';
$userName = Auth::user()->name;
$logout = url('logout');
$refresh = url('refresh') . '?u=' . base64_encode(URL::full());

#region head of master page
$list = compact('path', 'userName', 'logout', 'refresh');
$list = compact('path', 'assetPath', 'userName', 'logout', 'refresh');
return view('umi::common.master.masterPageHead', $list);
#endregion
}
Expand Down
2 changes: 1 addition & 1 deletion src/UmiRouteProvider.php
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ public function map()
protected function mapWebRoutes()
{
Route::group([
'middleware' => 'web',
'middleware' => ['web', 'umi.language'],
'namespace' => $this->namespace,
], function ($router) {
//if (! $this->app->routesAreCached()) {
Expand Down
3 changes: 3 additions & 0 deletions src/UmiServiceProvider.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
use Illuminate\Routing\Router;
use Illuminate\Support\ServiceProvider;
use YM\Commands\InstallCommand;
use YM\Http\Middleware\LanguageMiddleware;
use YM\Http\Middleware\TableRelationConfirmationMiddleware;
use YM\Http\Middleware\TableRelationExecuteMiddleware;
use YM\Http\Middleware\UmiUrlAuthMiddleware;
Expand Down Expand Up @@ -62,6 +63,8 @@ public function boot(Router $router)

$router->middleware('umi.TRelation.execute', TableRelationExecuteMiddleware::class);

$router->middleware('umi.language', LanguageMiddleware::class);

#全局帮助文件
#helper
$this->registerHelpers();
Expand Down
Binary file added src/resources/assets/images/en.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/resources/assets/images/zh_cn.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions src/resources/lang/en/master.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@
'profile' => 'Profile',
'refresh' => 'refresh (Clean Cache)',
'logout' => 'Logout',
'chooseLanguage' => 'Choose Language'
];
1 change: 1 addition & 0 deletions src/resources/lang/zh_cn/master.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@
'profile' => '个人档案',
'refresh' => '刷新 (清除缓存)',
'logout' => '登出',
'chooseLanguage' => '选择语言'
];
37 changes: 37 additions & 0 deletions src/resources/views/common/master/masterPageHead.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,43 @@

<div class="navbar-buttons navbar-header pull-right" role="navigation">
<ul class="nav ace-nav">
<li class="light-green dropdown-modal">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="ace-icon fa fa-globe"></i>
<span class="badge badge-danger">Lang</span>
</a>

<ul class="dropdown-menu-right dropdown-navbar dropdown-menu dropdown-caret dropdown-close">
<li class="dropdown-header">
<i class="ace-icon fa fa-globe"></i>
{{trans('umiTrans::master.chooseLanguage')}}
</li>

<li class="dropdown-content">
<ul class="dropdown-menu dropdown-navbar">
<li>
<a href="{{url('setLanguage/zh_cn')}}">
<div class="clearfix">
<span class="pull-left"><img src="{{$assetPath}}/images/zh_cn.png"></span>
<span class="pull-right">汉语</span>
</div>
</a>
</li>

<li>
<a href="{{url('setLanguage/en')}}">
<div class="clearfix">
<span class="pull-left"><img src="{{$assetPath}}/images/en.png"></span>
<span class="pull-right">English</span>
</div>
</a>
</li>
</ul>
</li>

</ul>
</li>

<li class="grey dropdown-modal">
<a data-toggle="dropdown" class="dropdown-toggle" href="#">
<i class="ace-icon fa fa-tasks"></i>
Expand Down

0 comments on commit 87eb3ab

Please sign in to comment.