update multi language login site
CR: sonhh (fake)
This commit is contained in:
parent
61e82f68ca
commit
e4829d7f78
|
@ -14,13 +14,6 @@ use yii\helpers\Url;
|
||||||
*/
|
*/
|
||||||
class DashboardController extends Controller {
|
class DashboardController extends Controller {
|
||||||
|
|
||||||
public function init() {
|
|
||||||
parent::init();
|
|
||||||
if (Yii::$app->user->isGuest) {
|
|
||||||
return $this->redirect(['/site/login']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritdoc}
|
* {@inheritdoc}
|
||||||
*/
|
*/
|
||||||
|
@ -157,4 +150,12 @@ class DashboardController extends Controller {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function actionChangeLanguageLogin($lang) {
|
||||||
|
$language = \app\models\common::allLanguage();
|
||||||
|
foreach ($language as $key => $value) {
|
||||||
|
if ($value['name'] === $lang)
|
||||||
|
return $this->redirect(['/site/login', 'lang' => $lang]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -66,13 +66,20 @@ class SiteController extends Controller {
|
||||||
*
|
*
|
||||||
* @return Response|string
|
* @return Response|string
|
||||||
*/
|
*/
|
||||||
public function actionLogin() {
|
public function actionLogin($lang = "vi-VI") {
|
||||||
if (!Yii::$app->user->isGuest) {
|
if (!Yii::$app->user->isGuest) {
|
||||||
return $this->goHome();
|
return $this->goHome();
|
||||||
}
|
}
|
||||||
|
Yii::$app->language = $lang;
|
||||||
|
|
||||||
$model = new LoginForm();
|
$model = new LoginForm();
|
||||||
if ($model->load(Yii::$app->request->post()) && $model->login()) {
|
if ($model->load(Yii::$app->request->post()) && $model->login()) {
|
||||||
|
$lang = Yii::$app->request->post('lang');
|
||||||
|
$language = \app\models\common::allLanguage();
|
||||||
|
foreach ($language as $key => $value) {
|
||||||
|
if ($value['name'] === $lang)
|
||||||
|
Yii::$app->session->set("language", $value);
|
||||||
|
}
|
||||||
return $this->redirect(["/config"]);
|
return $this->redirect(["/config"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,9 +95,10 @@ class SiteController extends Controller {
|
||||||
* @return Response
|
* @return Response
|
||||||
*/
|
*/
|
||||||
public function actionLogout() {
|
public function actionLogout() {
|
||||||
|
$lang = Yii::$app->session->get("language") ? Yii::$app->session->get("language")["name"] : Yii::$app->language;
|
||||||
Yii::$app->user->logout();
|
Yii::$app->user->logout();
|
||||||
|
|
||||||
return $this->goHome();
|
return $this->redirect(['/site/login', 'lang' => $lang]); //$this->goHome();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -135,5 +135,6 @@ return [
|
||||||
"DANG_NHAP" => "Login",
|
"DANG_NHAP" => "Login",
|
||||||
"MAT_KHAU" => "Password",
|
"MAT_KHAU" => "Password",
|
||||||
"RESET_THIET_BI_LOI" => "Error connecting to the server. Please check your internet connection and try again.",
|
"RESET_THIET_BI_LOI" => "Error connecting to the server. Please check your internet connection and try again.",
|
||||||
"THU_LAI" => "Try again"
|
"THU_LAI" => "Try again",
|
||||||
|
"TEN_DANG_NHAP_HOAC_MAT_KHAU_KHONG_DUNG" => "Incorrect username or password."
|
||||||
];
|
];
|
||||||
|
|
|
@ -135,5 +135,6 @@ return [
|
||||||
"DANG_NHAP" => "ログイン",
|
"DANG_NHAP" => "ログイン",
|
||||||
"MAT_KHAU" => "パスワード",
|
"MAT_KHAU" => "パスワード",
|
||||||
"RESET_THIET_BI_LOI" => "サーバーへの接続中にエラーが発生しました。インターネット接続を確認して、もう一度お試しください",
|
"RESET_THIET_BI_LOI" => "サーバーへの接続中にエラーが発生しました。インターネット接続を確認して、もう一度お試しください",
|
||||||
"THU_LAI" => "再試行"
|
"THU_LAI" => "再試行",
|
||||||
|
"TEN_DANG_NHAP_HOAC_MAT_KHAU_KHONG_DUNG" => "ユーザーネームまたはパスワードが違います"
|
||||||
];
|
];
|
||||||
|
|
|
@ -135,5 +135,6 @@ return [
|
||||||
"DANG_NHAP" => "Đăng nhập",
|
"DANG_NHAP" => "Đăng nhập",
|
||||||
"MAT_KHAU" => "Mật khẩu",
|
"MAT_KHAU" => "Mật khẩu",
|
||||||
"RESET_THIET_BI_LOI" => "Lỗi kết nối đến server. Hãy kiểm tra lại kết nối internet và thử lại.",
|
"RESET_THIET_BI_LOI" => "Lỗi kết nối đến server. Hãy kiểm tra lại kết nối internet và thử lại.",
|
||||||
"THU_LAI" => "Thử lại"
|
"THU_LAI" => "Thử lại",
|
||||||
|
"TEN_DANG_NHAP_HOAC_MAT_KHAU_KHONG_DUNG" => "Tên đăng nhập hoặc mật khẩu không đúng."
|
||||||
];
|
];
|
||||||
|
|
|
@ -43,11 +43,18 @@ class LoginForm extends Model {
|
||||||
if (!$this->hasErrors()) {
|
if (!$this->hasErrors()) {
|
||||||
$user = $this->getUser();
|
$user = $this->getUser();
|
||||||
if (!$user || !$user->validatePassword($this->password)) {
|
if (!$user || !$user->validatePassword($this->password)) {
|
||||||
$this->addError($attribute, 'Incorrect username or password.');
|
$this->addError($attribute, Yii::t("app", "TEN_DANG_NHAP_HOAC_MAT_KHAU_KHONG_DUNG"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function attributeLabels() {
|
||||||
|
return [
|
||||||
|
'username' => Yii::t("app", "TEN_DANG_NHAP"),
|
||||||
|
'password' => Yii::t("app", "MAT_KHAU")
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Logs in a user using the provided username and password.
|
* Logs in a user using the provided username and password.
|
||||||
* @return bool whether the user is logged in successfully
|
* @return bool whether the user is logged in successfully
|
||||||
|
|
|
@ -7,7 +7,7 @@ use yii\bootstrap\ActiveForm;
|
||||||
/* @var $form yii\bootstrap\ActiveForm */
|
/* @var $form yii\bootstrap\ActiveForm */
|
||||||
/* @var $model \common\models\LoginForm */
|
/* @var $model \common\models\LoginForm */
|
||||||
|
|
||||||
$this->title = 'Sign In';
|
$this->title = Yii::t("app", "DANG_NHAP");
|
||||||
|
|
||||||
$fieldOptions1 = [
|
$fieldOptions1 = [
|
||||||
'options' => ['class' => 'form-group has-feedback'],
|
'options' => ['class' => 'form-group has-feedback'],
|
||||||
|
@ -50,6 +50,30 @@ $fieldOptions2 = [
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-7">
|
<div class="col-xs-7">
|
||||||
|
<input type="hidden" value="<?php echo Yii::$app->request->get("lang"); ?>" name="lang">
|
||||||
|
<?php
|
||||||
|
$languages = app\models\common::allLanguage();
|
||||||
|
$currentLanguage = ["icon" => "vi.png", "name" => "vi-VI", "description" => "Tiếng Việt"];
|
||||||
|
foreach ($languages as $key => $value) {
|
||||||
|
if ($value['name'] === Yii::$app->request->get('lang'))
|
||||||
|
$currentLanguage = $value;
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
<div class="btn-group" id="card-picker">
|
||||||
|
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
|
||||||
|
<img src="/images/lang/<?php echo $currentLanguage["icon"]; ?>" width="20px">
|
||||||
|
<span class="caret"></span>
|
||||||
|
</button>
|
||||||
|
<ul class="dropdown-menu" role="menu">
|
||||||
|
<?php foreach ($languages as $key => $value) { ?>
|
||||||
|
<li>
|
||||||
|
<a href="<?php echo yii\helpers\Url::to(['/dashboard/change-language-login', 'lang' => $value['name']]); ?>">
|
||||||
|
<img src="/images/lang/<?php echo $value['icon']; ?>" width="20px"> <?php echo $value['description']; ?>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<?php } ?>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-xs-5">
|
<div class="col-xs-5">
|
||||||
<?= Html::submitButton(Yii::t("app", "DANG_NHAP"), ['class' => 'btn btn-primary btn-block', 'name' => 'login-button']) ?>
|
<?= Html::submitButton(Yii::t("app", "DANG_NHAP"), ['class' => 'btn btn-primary btn-block', 'name' => 'login-button']) ?>
|
||||||
|
@ -60,5 +84,4 @@ $fieldOptions2 = [
|
||||||
<?php ActiveForm::end(); ?>
|
<?php ActiveForm::end(); ?>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<!-- /.login-box-body -->
|
</div>
|
||||||
</div><!-- /.login-box -->
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user