|
mui.plusReady(function() {
var auths;
plus.oauth.getServices(function(services) {
auths = {};
for(var i in services) {
var t = services[i];
auths[t.id] = t;
}
}, function(e) {
alert("获取登录服务列表失败:" + e.message + " - " + e.code);
});
document.getElementById("weixin").addEventListener("tap", function() {
var s = auths["weixin"];
if(s) {
if(!s.authResult) {
s.login(function(e) {
mui.toast("登录成功");
authUserInfo(s);
}, function(e) {
mui.toast("登录失败");
});
} else {
mui.toast("已经登录认证");
authLogout();
}
} else {
mui.toast("不支微信登录");
}
});
function authLogout() {
for(var i in auths) {
var s = auths[i];
if(s.authResult) {
s.logout(function(e) {
console.log("注销登录认证成功!");
}, function(e) {
console.log("注销登录认证失败!");
});
}
}
}
function authUserInfo(s) {
console.log(s);
s.getUserInfo(function(e) {
var josnStr = JSON.stringify(s.userInfo);
var jsonObj = s.userInfo;
console.log("获取用户信息成功:" + josnStr);
console.log(jsonObj.openid)
authLogout();
console.log(jsonObj.openid)
weChat(jsonObj.openid,jsonObj.nickname);
}, function(e) {
alert("获取用户信息失败:" + e.message + " - " + e.code);
});
}
function weChat(weiChatId,weixinName) {
console.log(weiChatId);
mui.ajax(baseUrl + "/ajax/oauth/openidLogin", {
dataType: 'json', //数据格式类型
type: 'POST', //http请求类型
timeout: 10000, //超时设置
data: {
oauthType: 'weixin',
openid: weiChatId
},
success: function(data) {
if(data.success) {
console.log(JSON.stringify(data));
if(data.data == null) {
mui.openWindow({
url: '../html/backBindUn.html',
id: 'backBindUn.html',
show: {
autoShow: true,
aniShow: "slide-in-right"
},
extras:{
name:weixinName,
openid:weiChatId
}
});
}else{
plus.storage.setItem('userid', data.data.id);
plus.storage.setItem('name', data.data.name);
console.log(data.data.id)
firstLogin();
var proAiticle =plus.webview.getWebviewById('professorArticle.html')
mui.fire(proAiticle, "newId");
var consultPage = plus.webview.getWebviewById('consultlist.html');
mui.fire(consultPage, 'logined', {
id: data.id
});
}
}else{
console.log(JSON.stringify(data));
}
},
error: function(x) {
console.log(JSON.stringify(x))
plus.nativeUI.toast("服务器链接超时", toastStyle);
return;
}
});
}
/*判断用户第一次登录,是否填写了个人信息*/
function firstLogin() {
var professorId = plus.storage.getItem('userid');
mui.ajax(baseUrl + "/ajax/professor/" + professorId, {
dataType: 'json', //数据格式类型
type: 'GET', //http请求类型
async: false,
timeout: 10000, //超时设置
success: function(data) {
console.log(JSON.stringify(data))
console.log(data.data.authentication)
if(data.success) {
if(data.data.authentication == undefined || data.data.authentication == null){
var productView = mui.preload({
url: '../html/fillinfo.html',
id: '../html/fillinfo.html',
show: {
aniShow: "slide-in-right"
},
extras: {
userid: professorId
}
});
productView.show();
}else{
var curr = plus.webview.currentWebview();
var wvs = plus.webview.all();
for(var i = 0, len = wvs.length; i < len; i++) {
//关闭除setting页面外的其他页面
if(wvs[i].getURL() == curr.getURL())
continue;
plus.webview.close(wvs[i]);
}
//打开login页面后再关闭setting页面
plus.webview.open('../index.html');
curr.close();
}
}
},
error: function() {
plus.nativeUI.toast("服务器链接超时", toastStyle);
return;
}
});
}
})
|