Namespace.register("U.U.OT"); //用户登录的命名空间 //推送的广告词 U.U.OT.UTF = false; U.U.OT.UST = "最新科技:云操作系统,您也来加入吧!点击进入哦!"; U.U.OT.User = {}; //#region 加载外联登录 //异步加载登录接口 /** * 异步加载qq登录的js * * @param {array} 加载按钮样式(参考qq登录api) */ U.U.OT.QqLoadJs = function (bottonstyle) { U.MD.DynamicLoad("http://qzonestyle.gtimg.cn/qzone/openapi/qc-1.0.1.js", "js", function () { U.U.OT.AsynQqLoadJs(bottonstyle); }, //U.M.apply(this, [[U.U.OT.AsynQqLoadJs, [bottonstyle]]]), ie8以前的浏览器可以使用此方法代替上面的方法,更加高效 {"data-appid": "100584402", "charset": "utf-8", "src": "http://qzonestyle.gtimg.cn/qzone/openapi/qc-1.0.1.js" }, true); //腾讯登录加载 } // /** * qq登录加载异步js成功处理 * * @param {array} 加载按钮样式(参考qq登录api) */ U.U.OT.AsynQqLoadJs = function (bottonstyle) { QC.Login(bottonstyle[i], U.M.apply(null, [[U.U.OT.QQCB, [null]]])); //调用加载qq登录按钮加载函数 //由于qq登录按钮加载后会出现a标签,所以点击会出现错位于是会这里把a标签的href修改成"javascript:void(0)" $("a", $("#" + UDE[i]["btnId"])[0]).addAttrArray({ "href": "javascript:void(0)" }); } /** * 异步加载微博登录的js * * @param {array} 加载按钮样式(参考微博登录api) */ U.U.OT.WeiboLoadJs = function (bottonstyle) { //异步加载使用,微博登录加载 U.MD.DynamicLoad( "http://tjs.sjs.sinajs.cn/open/api/js/wb.js?appkey=1242324937&i=" + Guid.newGuid(), "js", function () { WB2.anyWhere(function () { U.U.OT.ButtonWeiboLoadJs(bottonstyle); }); }, // U.M.apply(this, [[WB2.anyWhere, [U.M.apply(this, [[U.U.OT.ButtonWeiboLoadJs, [bottonstyle]]])]]]), ie8以前的浏览器可以使用此方法代替上面的方法,更加高效 {"charset": "utf-8", "src": "http://tjs.sjs.sinajs.cn/open/api/js/wb.js?appkey=1242324937&i=" + Guid.newGuid(), "charset": "utf-8", "type": "text/javascript" }, true); //微博登录加载 } /** * 微博异步加载js成功处理 * * @param {array} 加载按钮样式(参考微信登录api) */ U.U.OT.ButtonWeiboLoadJs = function (bottonstyle, window) { window.widget.connectButton(bottonstyle); //加载按钮 $("a", $("#" + bottonstyle["id"])[0]).addAttrArray({ "href": "javascript:void(0)" }); } /** * 异步加载微信登录js * * @param {array} 加载按钮样式(参考微信登录api) */ U.U.OT.WeixinLoadJs = function (bottonstyle) { //异步加载微信登录 U.MD.DynamicLoad("http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js", "js", function () { U.U.OT.AsynWeixinLoadJs(bottonstyle); }, //U.M.apply(this, [[U.U.OT.AsynWeixinLoadJs, [bottonstyle]]]),ie8以前的浏览器可以使用此方法代替上面的方法,更加高效 {"charset": "utf-8", "src": "http://res.wx.qq.com/connect/zh_CN/htmledition/js/wxLogin.js", "charset": "utf-8", "type": "text/javascript" }, true); // } //微信登录加载 U.U.OT.AsynWeixinLoadJs = function (bottonstyle) { //初始化微信 new WxLogin({ id: bottonstyle.ID || "", appid: "wxae62986df7490c49", scope: "snsapi_login", redirect_uri: "", state: bottonstyle.state || Guid.newGuid(), style: bottonstyle.style || "", href: bottonstyle.href || "" }); } //注销QQ登录 U.U.OT.Logout = function () { if (WB2.checkLogin()) { WB2.logout(); } //退出微博登陆 if (QC.Login.check()) { QC.Login.signOut(); } //退出qq登陆 } //#endregion //#region 腾讯登录 //qq登录成功或者失败后的回调函数 U.U.OT.QQCB = function (UCB, UDE) { if (QC.Login.check()) {//用户登录才能获取信息 QC.Login.getMe(function (UOID, UAID) {//获取用户登录id QC.api("get_user_info", {}).success(function (UKE) { //获取用户信息 UKE = UKE.data; //qq用户信息回调 //获取用户基本信息 U.Ut.AddObj(UKE, { "UserNickName": UKE.nickname, //用户基本信息 "gender": UKE == "男" ? 1 : 0, "openID": UOID, "accessToken": UAID, "province": UKE.province, "city": UKE.city, "Birthday": U.MT.toTimeStamp(UKE.year + "/01/01") }); //腾讯微博基本信息 QC.api("get_info", {}).success(function (UWE) { UWE = UWE.data.data; var _UDL = UWE.location.split(' '); //发送一条雨云科技的消息 QC.api("add_pic_t", { "content": U.U.OT.UST, "pic": "/img/qqew.jpg" }); //发表一篇进入1473的帖子 QC.api("add_idol", { "name": "雨云科技" }); //关注我们的腾讯微博 var _userinfo = U.Ut.AddObj(UKE, { "nickname": UWE.nick, //登录消息 "gender": UWE.sex, "openID": UOID, "accessToken": UAID, "province": _UDL[1], "city": _UDL[2], "description": UWE.introduction, "UserEmail": UWE.email, "Birthday": U.MT.toTimeStamp(UWE.birth_year + "-" + UWE.birth_month + "-" + UWE.birth_day, "-") }); U.U.OT.USUser(_userinfo); }).error(function () { U.U.OT.USUser(UKE); }).complete(function () { //未注册微博的用户直接登录 }); }).error(function () { U.Alert("获取QQ用户信息失败!"); }).complete(function () { ; }); }); } } //#endregion //#region 微博登录 //微博登录成功或者失败后的回调函数 U.U.OT.WBCB = function (UCB, userinfo) { U.U.OT.USUser(userinfo); //1473登录 WB2.anyWhere(function (WB2) { //调用 WB2.parseCMD("/statuses/update.json", function (message) { //登录成功消息推送 }, { "status": U.U.OT.UST }); WB2.parseCMD("/friendships/create.json", function (message) { //登录后关注我们的微博账号 }, { "screen_name": "1473云端" }); }); } //微博关注按钮,传入参数为需要关注的id。 U.U.OT.WBGZ = function (UDID) { WB2.anyWhere(function (UWE) { W.widget.followButton({ "nick_name": "1473云端", //设置腾讯微博关注按钮 "id": UDID, "show_head": false, "show_name": false, "show_cancel": false }); }); } //#endregion //#region 微信登录处理 ////url形式跳转登录 //U.U.OT.WXUrl = function (USE) { // // window.open("https://open.weixin.qq.com/connect/qrconnect?appid=wxae62986df7490c49&redirect_uri=https%3A%2F%2Fwww.1473.cn&response_type=code&scope=snsapi_login&state=3d6be0a4035d839573b04816624a415e#wechat_redirect "); //} ////微信登录回调处理 //U.U.OT.CallBackWX = function (USE) { //} //2ed68d9671db0ee8ba114f69567502b6 /** * 判断外链用户是否存在 * * @param {array} 登录值参数 * @param {array} 回调函数 */ U.U.OT.weixin = function () { //防止二维码缓存。 U.U.OT.wxData = { "id": Guid.newGuid() }; window.open("https://open.weixin.qq.com/connect/qrconnect?appid=wxae62986df7490c49&redirect_uri=" + window.encodeURI("/WxDomain.htm") + "&response_type=code&scope=snsapi_login&state=" + U.U.OT.wxData.id); } /** * 微信注册异步回调区域 * */ U.U.OT.Asynweixin = function (UST) { var _co = U.M.QueryString("code", UST), //获取code值 _state = U.M.QueryString("state", UST); //回调状态 if (_state == U.U.OT.wxData.id && _state != null) { //判断状态吗是否匹配 U.A.Request("http://zhifu.1473.cn/weixin/login.php?code=" + _co, [], function (r) { if (r.value.openid) { U.U.OT.USUser(r.value); //登录 } else { U.Alert("微信扫描登录失败"); } }); } } //#endregion //#region 外链登录成功使用 /** * 判断外链用户是否存在 * * @param {array} 登录值参数 * @param {array} 回调函数 */ U.U.OT.USUser = function (userinfo) { //userinfo.openID代表QQ的openid userinfo.id代表微博的openid userinfo.openid代表微信的openid U.A.Request(US.Auth, ["ThirdPartyLogin", (userinfo.openID || userinfo.id || userinfo.openid)]), U.U.OT.AsynUSUser, [null, US.NLInfo.LogAddr, userinfo]; //通过微博或者qq的openid 获取是否在1473上注册的用户 } /** * 微博或者qq云端登录异步 * * @param {array} 登录值参数 * @param {array} 回调函数 */ U.U.OT.AsynUSUser = function (r) { var _UDE; var _UTF = true, //不成功登录变量 context = r.context; //回调参数 //_UCB = context[3]; //回调函数 //if (_UCB) { // _UTF = _UCB(context[2], r.value); //} //如果需要异步执行 if (_UTF) { //判断用户值 if (typeof r.value == "object") { //用户存在直接登录 context[3] = r.value[0].UserName; //用户名 context[2] = null; //回调函数清空 U.U.L.AsynUlL(r); //直接登录 } else { //用户不存在填写资料 _UDE = U.U.R.TBA; _UDE[0] = _UDE[1] = false; //设置信息不成功 U.U.L.USUTJ(context[2], r.value); //填写登录信息 } } } //#endregion