/*** Class Function GoogleLogin */
function GoogleLogin(task, params) {
this.task = task;
this.params = params;
switch(task) {
case 'loginError':
loginError();
break;
case 'loginAct':
loginAct();
break;
case 'registerAct':
registerAct();
break;
}
function loginError() {
var errorText = this.params;
var form = document.frmLogin;
Swal.fire({
icon: 'error',
text: errorText,
didDestroy: function () {
location.reload();
}
});
return false;
}
function loginAct() {
var pars = 'task=login';
pars += '&email=' + this.params["email"];
pars += '&name=' + this.params["name"];
var url = path + '/google.loginAjax.php';
$.ajax({
url: url,
data: pars,
type: 'GET',
success: function(response) {
var result = JSON.parse(response);
if (result["status"] == 'notexist') {
Swal.fire({
icon: 'warning',
html: 'Tài khoản không tồn tại.
Nhấn nút OK để đăng ký tài khoản!',
didDestroy: function () {
/** Nhấn OK auto register & login */
var task1 = "registerAct";
var params1 = {
"email": result["email"],
"name": result["name"]
};
GoogleLogin(task1, params1);
return;
}
});
}
/*else if (result["status"] == 'regbyML') {
Swal.fire({
icon: 'warning',
html: 'Email này đã được đăng ký trực tiếp bằng MentorLinks.
Vui lòng nhập email và mật khẩu để Đăng nhập!',
didDestroy: function () {
location.reload();
}
});
return;
}*/
else if(result["status"] == 'checkrole') {
Swal.fire({
html: result["html"],
preConfirm: () => {
var role = $("input[name='rdRole']:checked").val();
if (!(role==1 || role==2)) {
Swal.showValidationMessage(
"Bạn chưa chọn vai trò."
);
}
return;
}
}).then((result1) => {
if (result1.isConfirmed) {
var role = $("input[name='rdRole']:checked").val();
loginAct_Role(result["email"], role);
}
});
}
else if(result["status"] == 'finish') {
if (result["flagReg"] == true) {
Swal.fire({
icon: 'success',
html: 'Đăng nhập thành công.',
allowOutsideClick: false,
didDestroy: function () {
location.href = result["url"];
}
});
}
else {
location.href = result["path"];
}
}
else {
Swal.fire({
icon: 'warning',
html: 'Vui lòng Đăng Nhập lại!',
didDestroy: function () {
location.reload();
}
});
}
},
error: function(zhr){
//alert("Error!");
}
});
}
function loginAct_Role(email, role) {
var pars = 'task=login_role';
pars += '&email=' + email;
pars += '&role=' + role;
var url = path + '/google.loginAjax.php';
$.ajax({
url: url,
data: pars,
type: 'GET',
success: function(response) {
var result = JSON.parse(response);
if(result["status"] == 'finish') {
if (result["flagReg"] == true) {
Swal.fire({
icon: 'success',
html: 'Đăng nhập thành công.',
allowOutsideClick: false,
didDestroy: function () {
location.href = result["url"];
}
});
}
else {
location.href = result["path"];
}
}
else {
Swal.fire({
icon: 'warning',
html: 'Vui lòng Đăng Nhập lại!',
didDestroy: function () {
location.reload();
}
});
}
},
error: function(zhr){
//alert("Error!");
}
});
}// loginAct_Role
/** Register */
function registerAct() {
var pars = 'task=register';
pars += '&email=' + this.params["email"];
pars += '&name=' + this.params["name"];
var url = path + '/google.loginAjax.php';
$.ajax({
url: url,
data: pars,
type: 'GET',
success: function(response) {
var result = JSON.parse(response);
if (result["status"] == "existEmail") {
Swal.fire({
icon: 'error',
html: 'Email này đã tồn tại trong hệ thống!',
didDestroy: function () {
location.reload();
}
});
}
else if (result["status"] == "finish") {
Swal.fire({
icon: 'success',
html: 'Đăng ký thành công.',
allowOutsideClick: false,
didDestroy: function () {
//location.href = result["path"];
var task1 = "loginAct";
var params1 = {
"email": result["email"],
"name": result["name"]
};
GoogleLogin(task1, params1);
}
});
}
else {
Swal.fire({
html: "Đăng ký tài khoản không thành công.
Vui lòng làm lại.",
icon: 'warning',
confirmButtonColor: '#3085d6',
confirmButtonText: ' Đóng '
}).then((result) => {
if (result.isConfirmed) {
location.href = path + "/register.php";
}
});
}
},
error: function(zhr){
//alert("Error!");
}
});
}
}