/**统一登录js文件**/ var loginfg='';//websocket请求标识 var bIE9=false; if(navigator.appName == "Microsoft Internet Explorer" && navigator.appVersion.match(/[6789]./i)) { bIE9=true } var wsUrl = "ws"+(!bIE9&&"https:"==document.location.protocol?"s":"")+"://"+window.location.host+"/ws"; var ws = null; var openid = ""; var jylgi = 0; var loginflag = false;//登录状态 var mynum = "";//页面参数num var keysorpname = "";//项目名称 var thurl = "";//url var semnum = "";//SEM var ldpnum = "";//落地页扫码后调整标识 var ldmold = "";//落地页扫码后调整标识 var pageshareid = ""; var kopshareid = ""; var oldshareid = ""; var encryptId = null; var qr_type = "s"; var unseatflag = false;//未登录情况下,用户点击超级搜索等开启按钮或者功能,根据此状态看是否弹出二维码 var unseatzbqyflag = false;//未登录情况下,用户点击中标企业等开启按钮或者功能,根据此状态看是否弹出二维码 var sendMsgInterval = null; var entjumpflag = false; //轮询查询 var LoginPolling = { isPostLoginPolling: true,//是否发起轮询请求 loginPollingInterval: null, initInterval: null, init: function(){ //防止重复调用 if(this.initInterval != null){ return; } //先发一个消息,保存session this.postShareid(); this.initInterval = setInterval(this.postShareid,3000); }, postShareid: function(){ if(WSpolling.isPageHidden || pageshareid == "" || kopshareid == ""){ return; } $.ajax({ type: "POST", url: "/front/ajaxPolling", data: {reqType: 1,shareIds: pageshareid+"___"+kopshareid}, dataType: "json", timeout: 3000, success: function(r){ clearInterval(LoginPolling.initInterval); LoginPolling.initInterval = null; } }); }, start: function(){ //防止重复调用 if(this.loginPollingInterval != null){ return; } this.init(); //定时器,定时请求看是否扫码登录,返回用户信息,登录 this.loginPollingInterval = setInterval(function(){ //如果浏览器不支持webscoket,走ajax轮询方式 if(WSpolling.isPageHidden || !LoginPolling.isPostLoginPolling){ return; } $.ajax({ type: "POST", url: "/front/ajaxPolling", data: {reqType:2}, dataType: "json", timeout: 3000, success: function(r){ if(!jQuery.isEmptyObject(r)){ logic(r,mynum); } } }); },5000); }, stop: function(){ clearInterval(this.loginPollingInterval); this.loginPollingInterval = null; this.isPostLoginPolling = false; this.initInterval = null; } } var webSocketHeartCheck = new WebSocketHeartCheck(LoginPolling); //创建websocket连接 var createWebSocket = function(){ if("WebSocket" in window){ try{ ws = new WebSocket(wsUrl);//实例化websocket对象 initEventHandle(); }catch(e){ reconnect(); //console.log(e) } }else{ LoginPolling.isPostLoginPolling = true; } } // var initEventHandle = function(){ ws.onmessage = function(e){ //接收消息正常,就不再发ajax轮询 LoginPolling.isPostLoginPolling = false; if(e.data==""){ return }else if(e.data=="HeartBeat"){//心跳检测 //如果获取到消息,心跳检测重置 //拿到任何消息都说明当前连接是正常的 webSocketHeartCheck.reset().start(ws,loginflag); return; } //用户登录 logic($.parseJSON(e.data),mynum); } ws.onerror = function(e){ //console.info("onerror"); reconnect(); } ws.onclose = function(e) { //console.info("onclose"); reconnect(); } ws.onopen = function(e) { SendMsg(); //心跳检测重置 webSocketHeartCheck.reset().start(ws,loginflag); } } // function reconnect() { if(webSocketHeartCheck.lockReconnect || loginflag){ return; } LoginPolling.isPostLoginPolling = true; webSocketHeartCheck.lockReconnect = true; LoginPolling.init(); //没连接上会一直重连,设置延迟避免请求过多 setTimeout(function () { createWebSocket(); webSocketHeartCheck.lockReconnect = false; }, 2000); } //websocket查看用户是否登录 var JYLogin = function(num){ clearInterval(loginfg) loginfg = setInterval(function(){ jylgi++; //console.log(jylgi+"-----") if(jylgi>120*60){ getNewShareId(num,false); jylgi = 0; } },1000) } var SendMsg = function(){ if(pageshareid==""||kopshareid==""){ return; } if(ws!=null&&ws.readyState==1){ //console.log("发送:"+pageshareid+"___"+kopshareid) ws.send(pageshareid+"___"+kopshareid); }else{ LoginPolling.isPostLoginPolling = true; } } //生成页面二维码,不同页面处理逻辑 var getNewShareId = function(num,isFirst){ mynum = num; pageType = "T" var rref = document.referrer; if (localStorage.getItem("oldshareid")!=null){ oldshareid=localStorage.getItem("oldshareid"); } //console.log("num:"+num) $.post("/front/getLoginNum/"+num,{rref:rref,oid:oldshareid},function(data){ if($("#bidLogin").attr("data-rec")=="sjdc"){ window.location.href = "/front/dataExport/toSieve"; return; } if(data&&data.num){ pageshareid = data.num; kopshareid = data.numot; mynum = num; if(!loginflag){ if(isFirst){ LoginPolling.start(); createWebSocket(); }else if(!isFirst){ LoginPolling.init(); SendMsg(); } } localStorage.setItem("oldshareid", pageshareid); //redisUserInfo(pageshareid,kopshareid); $(".jyhead_qr img").attr("src","/front/share/"+pageshareid); $("#bottomimg").attr("src","/front/share/"+pageshareid); $("*[data-share-img]").attr("src","/front/share/"+pageshareid); $("#layerImg-login").attr("src","/front/share/"+pageshareid); $("#layerImg-zbsq").attr("src","/front/share/"+pageshareid); switch(num){ case "10"://首页 //$("#layerImg").attr("src","/front/share/"+pageshareid); //$("#sy-shareimg img").attr("src","/front/share/"+pageshareid); $(".wxlinkdiv").attr("src","/front/share/"+pageshareid); break; case "11"://订阅页面 $("#dyym-1 img").attr("src","/front/share/"+kopshareid); $("#dyym-2").attr("src","/front/share/"+pageshareid); $(".secondleft img").attr("src","/front/share/"+pageshareid); $("#vipCode").attr("src","/front/share/"+kopshareid); break; case "12"://搜索列表页 $("#layerImg").attr("src","/front/share/"+pageshareid); $("#wxCode").attr("src","/front/share/"+pageshareid); $("#keyImg").attr("src","/front/share/"+kopshareid); if(keysorpname!=undefined&&keysorpname!=""){ var ref = document.referrer; if(ref != ""&&ref.indexOf("jianyu360.com")<0||ref.indexOf("qmx.top")<0){ $.post("/front/rediskw",{"skw":keysorpname,"num":kopshareid}); } } break; case "13": case "130"://快照页 $("#layerImg").attr("src","/front/share/"+pageshareid); $("#wxCode").attr("src","/front/share/"+kopshareid); //生成二维码 if(keysorpname!=undefined&&keysorpname!=""){ $.post("/front/rediskw",{"skw":keysorpname,"num":kopshareid}); } break; case "14"://标签页面 $("#bottomimg").attr("src","/front/share/"+pageshareid); $("*[data-share-img]").attr("src","/front/share/"+pageshareid); $("#layerImg").attr("src","/front/share/"+pageshareid); $("#keyImg").attr("src","/front/share/"+pageshareid); break; case "15"://博客列表和内容页面 break; case "16"://关于我们页面 break; case "18"://扫码关注企业18 $("#layerImg").attr("src","/front/share/"+pageshareid); var company = $.trim($("#zbSeatchT input[name='keywords']").val()); if(company != "" && company != null && company.length >0){ $("#keyImg").attr("src","/front/share/"+kopshareid); $.post("/front/rediskw",{"skw":company,"num":kopshareid}); }else{ $("#keyImg").attr("src","/front/share/"+pageshareid); } break; case "19"://拟建项目 $("#layerImg").attr("src","/front/share/"+pageshareid); $("#wxCode").attr("src","/front/share/"+pageshareid); $("#keyImg").attr("src","/front/share/"+kopshareid); if(keysorpname!=undefined&&keysorpname!=""){ $.post("/front/rediskw",{"skw":keysorpname,"num":kopshareid}); } break; case "17"://1808新落地页 $(".ewm1").attr("src","/front/share/"+pageshareid); $(".ewm2").attr("src","/front/share/"+kopshareid); $("#kwewm").attr("src","/front/share/"+kopshareid); $(".ecode_img img").attr("src","/front/share/"+kopshareid).css("display",""); break; case "23"://数据导出 break; } JYLogin(num); } },'json'); } // var redisUserInfo = function(pid,kid){ var rurl = window.location.href; var rref = document.referrer; if (localStorage.getItem("oldshareid")!=null){ oldshareid=localStorage.getItem("oldshareid"); } $.post("/front/followinfo",{pid:pid,kid:kid,rurl:rurl,rref:rref,oid:oldshareid},function(data){ if(data&&data.result=="ok"){ localStorage.setItem("oldshareid", pid); } }) } function checkBigStatus () { $.ajax({ type: 'post', url: '/bigmember/use/isAdd', success: function (res) { if (res && res.data) { window.memberStatus = res.data.memberStatus window.memberPower = res.data.power window.vipStatus = res.data.vipStatus sessionStorage.setItem('bidPower', JSON.stringify(res.data.power)) if (res.data.memberStatus > 0) { $(".myorderDiv.lastBox").show() } if (res.data.viper) { $(".myorderDiv.ent-search").show() } } } }) } // 查询商机管理PC权限 function checkMenuForEnt () { $.ajax({ type: 'get', url: '/entbase/ent/mySelectent?t=' + new Date().getTime(), success: function () { $.ajax({ type: 'get', url: '/front/entExportAuth/getAuth?t=' + new Date().getTime(), success: function (r) { var tempHtml = '' if(r.myEntMenu){ tempHtml += "
" +"我的企业" +"
" } if(r.entnicheMenu){ tempHtml+= "
" +"商机管理" +"
" } $(".infoList .lastBox").before(tempHtml) } }) } }) } //查询用户信息,响应页面登录信息 var logic = function(data,num){ if(data.result=="ok"){ clearLoginStorage(/-login-clear/) //$(".QRLogin").hide(); $("#bidLogin").modal("hide") $("#bidcommunity").modal("hide") clearInterval(loginfg); loginflag = true; processpage(data.shareid,num); //登录成功,停止轮询 LoginPolling.stop(); //登录成功,停止心跳监测 webSocketHeartCheck.reset(); if(ws.readyState==1){ ws.send("close"); ws.close(); } encryptId = data.encryptId if(data.s_nickname.length>11){ data.s_nickname = data.s_nickname.substring(0,11); data.s_nickname = data.s_nickname + "..."; } var hhtml = ""){ data.redisheadimg = "" } if(data.s_headimage==null||data.s_headimage==undefined||data.s_headimage==""){ data.s_headimage = "" } if(data.redisheadimg!=""){ hhtml+="src='"+data.redisheadimg+"' class='imgShow nomalheadimg'" }else if(data.s_headimage!=""){ hhtml+="src='"+data.s_headimage+"' class='imgShow nomalheadimg'" }else{ hhtml+="src='"+data.s_headimage+"' class='imgShow'" } hhtml+=" onerror='this.src=\"/images/auto.png\";$(this).removeClass(\"nomalheadimg\");'>" +"
" +"" +"
" $("#login").html(hhtml); try{ checkBigStatus() checkMenuForEnt() infoListCss(); commonMouseEvent(); }catch(e){} } } //登录后处理页面逻辑 var processpage = function(shareid,num){ var toHref=$("#bidLogin").attr("data-rec") switch (toHref) { case "sjdc": window.location.href = "/front/dataExport/toSieve"; return; case "jydocs": window.location.href = "/swordfish/docs"; return; } clearInterval(loginfg); switch(num){ case "10"://10首页 var ful = $("#myModal").attr("aria-hidden"); if(ful=="true"){ break; } $("#myModal").modal("hide"); // if(dataListId!=""){ // setTimeout(function(){ // window.open("/article/content/"+dataListId+".html"); // },500) // } break; case "11"://11订阅页面 //$("#myModal-01").click(); $(".modal").click(); break; case "12"://12搜索列表 var ful = $("#myModal").attr("aria-hidden"); if(ful=="true"){ break; } $("#myModal").modal("hide"); $("#labModal").modal("hide"); if(dataId!=""){ setTimeout(function(){ //$('a[dataId="'+ dataId +'"]').click(); var aHref = ""; if(searchvalue != ""){ aHref += '.html?kds='+searchvalue; }else{ aHref += '.html'; } window.open("/article/content/"+dataId+aHref); },500); } break; case "13": case "130"://13快照页 if(thurl!=""&&thurl!="D"){ window.location.href=thurl; }else if(thurl==""){ window.location.href="/"; } break; case "14"://14标签页面 var ful = $("#myModal").attr("aria-hidden"); if(ful=="true"){ break; } $("#myModal").click(); if(dataId!=""){ setTimeout(function(){ window.open("/article/content/"+dataId+".html"); },500); } break; case "15"://15剑鱼标讯博客页面 break; case "16"://关于我们页面16 break; case "18"://中标企业搜索 var ful = $("#myModal").attr("aria-hidden"); if(ful=="true"){ break; } $("#myModal").modal("hide"); $("#labModal").modal("hide"); if(dataId!=""){ setTimeout(function(){ //$('a[dataId="'+ dataId +'"]').click(); var aHref = ""; if(searchvalue != ""){ aHref += '.html?kds='+searchvalue; }else{ aHref += '.html'; } window.open("/article/content/"+dataId+aHref); },500); } break; break; case "19"://拟建项目 var ful = $("#myModal").attr("aria-hidden"); if(ful=="true"){ break; } $("#myModal").modal("hide"); $("#labModal").modal("hide"); if(dataId!=""){ setTimeout(function(){ var aHref = ""; if(searchvalue != ""){ aHref += '.html?kds='+searchvalue; }else{ aHref += '.html'; } window.open("/article/content/"+dataId+aHref); },500); } break; case "17"://落地页 $("#bidLogin").modal("hide"); $(".close").click(); if(ldpnum=="0"){ window.open('/jylab/supsearch/index.html', '_self') }else if(ldpnum=="1"){ window.open('/front/subscribe.html', '_self') }else if(ldpnum=="2"){ window.open('/jylab/supsearch/proposedProject.html', '_self') }else if(ldpnum=="3"){ if(ldmold!=""){ window.open('/list/stype/'+ldmold+'.html', '_self') }else{ window.open('/jylab/supsearch/index.html', '_self') } }else if(ldpnum=="4"){ if(ldmold!=""){ window.open('/list/area/'+ldmold+'.html', '_self') }else{ window.open('/jylab/supsearch/index.html', '_self') } }else if(ldpnum=="5"){ if(ldmold){ window.open('/article/content/'+ldmold+'.html') }else{ window.open('/jylab/supsearch/index.html') } }else if(ldpnum=="6"){ window.open('/front/dataExport/toSieve') } break; case "24"://百度SEM-p 快照页推广-落地页 window.open(semHref, '_self') break } } function clearObjKeyForRegFn (obj, reg) { if (obj) { for(var k in obj) { if (reg.test(k)) { obj.removeItem(k) } } } } function clearLoginStorage (reg) { clearObjKeyForRegFn(sessionStorage, reg) clearObjKeyForRegFn(localStorage, reg) } //退出登录 var signout = function(){ clearInterval(loginfg); loginflag = false; unseatflag = false; unseatzbqyflag = false; $("#login").html(""); loginBtnType(); $(".control-tabBtn>a:first>font").text("招标搜索"); $(".control-tabBtn>a:eq(2)").addClass("hidden"); $(".control-tabBtn>a:eq(3)").addClass("hidden"); $(".superSearch").show(); $.post("/front/signOut",function(data){ if(data=="ok"){ clearLoginStorage(/-login-clear/) try{ $.cookie("userid_secure","",{expires:-1,path:"/",domain:document.domain.replace(/[^.]+/,"")}); }catch(e){ document.cookie = "userid_secure=;expires=-1;path=/"; } window.location.href="/"; var pt = new RegExp("^/article/content/.+$|^/front/dataExport/.+$|^/front/course/codePay$|^/front/course/orderPay$|^/entpc/.+$|^/bid/pc/page/.+$"); if(pt.test(window.location.pathname)){ window.location.href="/"; }else{ window.location.reload(); /*LoginPolling.start(); createWebSocket(); getNewShareId(mynum,true);*/ } } }) } //查看用户是否已经登录 var haslogin = function(num,kyorpn,url){ mynum = num;//页面logid keysorpname = kyorpn;//其他参数 thurl = url;//列表也跳转快照页url $.post("/front/hasSign",function(data, location){ if(data){ loginflag = true; encryptId = data.encryptId if(data.s_nickname!=null&&data.s_nickname.length>11){ data.s_nickname = data.s_nickname.substring(0,11); data.s_nickname = data.s_nickname + "..."; } var hhtml = ""){ data.redisheadimg="" } if(data.s_headimage==null||data.s_headimage==undefined||data.s_headimage==""){ data.s_headimage="" } if(data.redisheadimg!=""){ hhtml+="src='"+data.redisheadimg+"' class='imgShow nomalheadimg'" }else if(data.s_headimage!=""){ hhtml+="src='"+data.s_headimage+"' class='imgShow nomalheadimg'" }else{ hhtml+="src='"+data.s_headimage+"' class='imgShow'" } hhtml+=" onerror='this.src=\"/images/auto.png\";$(this).removeClass(\"nomalheadimg\");'>" +"
" +"" +"
" $("#login").html(hhtml); try{ checkBigStatus() checkMenuForEnt() infoListCss(); commonMouseEvent(); }catch(e){} }else{ $("#login").html(""); loginBtnType(); //pc限制登陆 var nosess = getParam("nol"); if (nosess=="1"&& (!loginflag) ){ openLoginDig(); } } getNewShareId(num,true); }) } function loginBtnType(){ var href = window.location.pathname; var curTheme =$("#public-nav").attr('data-theme') if (href=="/"||href.indexOf("subscribe")>-1||href.indexOf("advservices")>-1||href.indexOf("solution")>-1||href.indexOf("partner")>-1||href.indexOf("aboutus")>-1||href.indexOf("busicooperation")>-1||href.indexOf("pcindex.html")>-1||window.location.pathname==="/jyxspc/"||window.location.pathname==="/entpc/"){ if(curTheme == 'dark'){ $(".loginBtn").attr("onmouseover","this.style.borderColor='#2cb7ca'; this.style.color='#2cb7ca';"); $(".loginBtn").attr("onmouseout","this.style.borderColor='#fff'; this.style.color='#fff';"); }else{ $(".loginBtn").css({"border-color":"#e0e0e0","color":"rgb(37, 38, 39)"}); $(".loginBtn").attr("onmouseover","this.style.borderColor='#2cb7ca'; this.style.color='#2cb7ca';"); $(".loginBtn").attr("onmouseout","this.style.borderColor='#e0e0e0'; this.style.color='#252627';"); } }else if(href.indexOf("topics")>-1){ $(".loginBtn").css({"border":"none"}); }else{ $(".loginBtn").css({"border-color":"#e0e0e0","color":"rgb(37, 38, 39)"}); $(".loginBtn").attr("onmouseover","this.style.borderColor='#2cb7ca'; this.style.color='#2cb7ca';"); $(".loginBtn").attr("onmouseout","this.style.borderColor='#e0e0e0'; this.style.color='#252627';"); } } /////////////////////////////// // ajax部分匿名函数自执行,防止泄露全局变量 $(function(){ function goBackOrigin (cb) { var backOrigin = $.cookie('article') if (backOrigin) { location.replace(backOrigin) } else { typeof cb === 'function' ? cb() : window.close() } } var Direct = { verify: {}, forge: {}, ajaxSms: function (e, type) { var _this = this; switch (type) { case 'verify': { $.post("/phone/login",{ reqType:"sendIdentCode", phone:$("#bidLogin .login-dig-input-box [name='verify_phone']").val(), code:$("#bidLogin .login-dig-input-box [name='verify_code']").val() },function(r){ if(r.status==-1){ _this.verify.phone.showError('手机号格式错误'); }else if(r.status==-2){//图形验证码错误 _this.verify.code.showError('图形验证码输入错误'); $("#bidLogin .verify-img").attr("src","/front/landpage/captcha?v="+new Date().getTime()); }else if(r.status==-3){//图形验证码错误 _this.verify.phone.showError('手机号已被注册'); $("#bidLogin .verify-img").attr("src","/front/landpage/captcha?v="+new Date().getTime()); }else{ sessionStorage.setItem('login-verify-start-time', new Date().getTime()) startTimeDown(type) } }); break } case 'register': { $.post("/phone/login",{ reqType:"sendIdentCode", register: 'true', phone:$(".register-form-box .login-dig-input-box [name='register_phone']").val(), code:$(".register-form-box .login-dig-input-box [name='register_code']").val() },function(r){ if(r.status==-1){ _this.register.phone.showError('手机号格式错误'); }else if(r.status==-2){//图形验证码错误 _this.register.code.showError('图形验证码输入错误'); $(".register-form-box .verify-img").attr("src","/front/landpage/captcha?v="+new Date().getTime()); }else if(r.status==-3){ _this.register.phone.showError('手机号已被注册'); $(".register-form-box .verify-img").attr("src","/front/landpage/captcha?v="+new Date().getTime()); }else{ sessionStorage.setItem('login-verify-start-time', new Date().getTime()) startTimeDown(type) } }); break } case 'forge': { $.post("/phone/forgetPwd",{ reqType:"sendIdentCode", phone:$(".forgetpwd_page .login-dig-input-box [name='forge_phone']").val(), code:$(".forgetpwd_page .login-dig-input-box [name='forge_code']").val() },function(r){ if(r.status=="phoneError"){ _this.forge.phone.showError('手机号格式错误'); }else if(r.status=="codeError"){ _this.forge.code.showError('图形验证码输入错误'); $(".forgetpwd_page .verify-img").attr("src","/front/landpage/captcha?v="+new Date().getTime()); }else if(r.status=="phoneNotExists"){ _this.forge.phone.showError('手机号尚未注册'); $(".forgetpwd_page .verify-img").attr("src","/front/landpage/captcha?v="+new Date().getTime()); }else if(r.status=="y"){ sessionStorage.setItem('login-verify-start-time', new Date().getTime()) startTimeDown(type) } }); break } case 'bind-phone': { $.post("/jypay/user/phone/bind",{ step: 1, phone:$("#bidLogin .login-dig-input-box [name='verify_phone']").val(), code:$("#bidLogin .login-dig-input-box [name='verify_code']").val() },function(r){ if (r && r.error_code > -1) { sessionStorage.setItem('login-verify-start-time', new Date().getTime()) startTimeDown(type) } else { if (r.error_msg === '图形验证码错误') { if (_this.verify.code.value !== "HIDE") { _this.verify.code.showError(r.error_msg || '发送错误,请稍后再试'); } getNewVerify() } else if (r.error_msg === '手机号已被使用') { _this.verify.phone.showError('该手机号已被绑定,请更换手机号'); } else { _this.verify.sms.showError(r.error_msg || '发送错误,请稍后再试'); } } }); break } } }, // 忘记密码 ajaxStepOne: function (e, arr) { $.post("/phone/forgetPwd",{reqType:"nextStep",identCode:arr[2].value},function(r){ e.setAttribute('data-loading', 'false'); if(r.status=="identCodeError"){ arr[2].showError('短信验证码错误'); }else if(r.status=="y"){ toggleStep(false); } }); }, ajaxStepTwo: function (e, arr) { $.post("/phone/forgetPwd",{reqType:"save",password:arr[1].value},function(r){ e.setAttribute('data-loading', 'false'); if(r.status=="passwordError"){ arr[0].showError('密码格式错误'); }else if(r.status=="passwordRepeat"){ arr[0].showError('新密码不能与之前设置过的密码重复'); }else{ var toast = document.querySelector('.login-dig-success-toast') toast.classList.add('is-show') setTimeout(function () { toast.classList.remove('is-show') if(sessionStorage){ sessionStorage.reLogin=1; } window.history.back(); }, 1500); } }); }, // 验证码/密码登录 ajaxLoginPass: function (e, arr) { $.post("/phone/login",{reqType:"phoneLogin",phone:arr[0].value,password: arr[1].value},function(r){ e.setAttribute('data-loading', 'false') if(r.status==1){ logic(r.userInfo,mynum); }else if(r.status==-1){ arr[0].showError('该手机号未注册') }else if(r.status==-2){ arr[1].showError('密码输入错误') } }); }, ajaxLoginSms: function (e, arr) { if ($('#bidLogin').attr('data-name') === 'bind-phone') { $.post("/jypay/user/phone/bind",{ step: 2, phone: arr[0].value, code: arr[2].value, mode: isBindPage ? 'mergeBind' : '' },function(r){ e.setAttribute('data-loading', 'false') if (r && r.error_code > -1) { if(r.data.state==1){ if (isBindPage) { if (history.length === 1) { goBackOrigin() } else { if (document.referrer === location.href) { goBackOrigin(function () { location.href = '/' }) } else { history.back() } } return } if (r.data.needMerge) { location.href = '/swordfish/frontPage/userMerge/sess/merge?token=' + r.data.mergeToken return } else { $("#bidLogin").modal("hide") sessionStorage.setItem('bind-phone', arr[0].value.trim()) typeof window.callBindPhoneSuccess === 'function' && window.callBindPhoneSuccess(true) } } else if (r.data.state==2){ location.replace('/swordfish/frontPage/userMerge/sess/merge?token=' + r.data.token) } } else { arr[2].showError(r.error_msg || '绑定错误,请稍后再试') } }); } else { var source = getParam("source");//百度SEM if (source!=null){ var pathname = window.location.pathname; if (pathname=="/front/structed/pc_index.html"){//结构化数据 source+="_structed"; }else if (pathname=="/bid/pc/page/bidfile_landpage"){//招标文件解读 source+="_bidfile"; }else if (pathname=="/big/page/index"){//大会员 source+="_member"; } }else{ source=""; } $.post("/phone/login",{reqType:"identCodeLogin",identCode:arr[2].value,"source":source},function(r){ e.setAttribute('data-loading', 'false') if(r.status==1){ logic(r.userInfo,mynum); }else if(r.status==-1){ arr[2].showError('短信验证码输入错误') } }); } }, ajaxRegister: function (e, arr) { var source = getParam("source");//百度SEM if (source!=null){ var pathname = window.location.pathname; if (pathname=="/front/structed/pc_index.html"){//结构化数据 source+="_structed"; }else if (pathname=="/bid/pc/page/bidfile_landpage"){//招标文件解读 source+="_bidfile"; }else if (pathname=="/big/page/index"){//大会员 source+="_member"; } }else{ source=""; } $.post("/phone/login",{reqType:"identCodeLogin",s_entname: arr[3].value, identCode:arr[2].value,"source":source},function(r){ e.setAttribute('data-loading', 'false') if(r.status==1){ logic(r.userInfo,mynum); var toast = document.querySelector('.login-dig-success-toast') toast.classList.add('is-show') setTimeout(function () { toast.classList.remove('is-show') window.history.back(); }, 1500); }else if(r.status==-1){ arr[2].showError('短信验证码输入错误') } }); } } // @手机号绑定以及账号合并 2021/1/25 function toggleNeedVerifyInput (f, src) { var verifyInput = $(".login-dig-tabbar-content.is-active .login-dig-input-box:eq(1)") if (($('#bidLogin').attr('data-name') === 'bind-phone')) { if (f) { if (verifyInput.find('input').val() === 'HIDE') { verifyInput.find('input').val('') Direct.verify.code.showError() } verifyInput.find('.verify-img').attr('src', src) verifyInput.show() } else { verifyInput.find('input').val('HIDE') Direct.verify.code.skip('HIDE') verifyInput.hide() } } } var oldNeedStatus = false window.getBindVerify = getNewVerify function getNewVerify (cb) { if (!oldNeedStatus) { toggleNeedVerifyInput(false) } $.ajax({ url: '/jypay/user/phone/imgCaptcha?t=' + new Date().getTime(), success: function (r) { console.log(r) if (r && r.data) { oldNeedStatus = r.data.needVerify if (r.data.needVerify) { toggleNeedVerifyInput(true, 'data:image/png;base64,' + r.data.imageData) typeof cb === 'function' ? cb('data:image/png;base64,' + r.data.imageData) : null } else { toggleNeedVerifyInput(false) } } } }) } // 初始化弹窗 try{ initDirect() }catch(e){} // 初始化忘记密码 initForgetDirect() initRegisterDirect() if(sessionStorage&&sessionStorage.reLogin==1){ sessionStorage.removeItem("reLogin"); $(".login-dig-tabbar-navbar>[name='pass']").click(); openLoginDig(); } $("#bidLogin").on("show.bs.modal", function () { if ($('#bidLogin').attr('data-name') === 'bind-phone') { getNewVerify() } else { var verify_path = "/front/landpage/captcha?v=" $("#bidLogin .verify-img").attr("src", verify_path + new Date().getTime()); } }); $("#bidLogin").on("hidden.bs.modal", function () { $(".public-nav").css({"padding-right":""}); if($("#bidLogin").attr("data-rec")){ $("#bidLogin").removeAttr("data-rec"); } }); function startTimeDown (type) { var nowCount = 60 if (sessionStorage.getItem('login-verify-start-time')) { var cCount = parseInt((new Date().getTime() - sessionStorage.getItem('login-verify-start-time')) / 1000) if (cCount >= 0 & cCount <= 60) { nowCount -= cCount } else { sessionStorage.removeItem('login-verify-start-time') return } } else { return } var nowQ = 'span[data-name="verify_get_sms"]' var otherQ = 'span[data-name="forge_get_sms"]' if (type === 'forge') { var tempQ = nowQ nowQ = otherQ otherQ = tempQ } if (type === 'register') { nowQ = 'span[data-name="register_get_sms"]' otherQ = 'span[data-name="verify_get_sms"]' } var Ele = document.querySelector(nowQ) var otherEle = document.querySelector(otherQ) var defalutIT = '重新获取('+ --nowCount +'s)' if (Ele) Ele.innerText = defalutIT if (otherEle) otherEle.innerText = defalutIT var nowSS = window.setInterval(function () { if (nowCount === 1 || !sessionStorage.getItem('login-verify-start-time')) { clearInterval(nowSS) if (Ele) Ele.innerText = '获取验证码' if (Ele) Ele.classList.remove('is-stop') if (otherEle) otherEle.innerText = '获取验证码' sessionStorage.removeItem('login-verify-start-time') return } var iT = '重新获取('+ --nowCount +'s)' if (Ele) Ele.classList.add('is-stop') if (Ele) Ele.innerText = iT if (otherEle) otherEle.classList.add('is-stop') if (otherEle) otherEle.innerText = iT }, 1000) } function getSMSCode (e) { if (e.classList.contains('is-stop')) return var verifyStartTime = new Date().getTime() var oldTime = sessionStorage.getItem('login-verify-start-time') || verifyStartTime - 70000 if (verifyStartTime - oldTime >= 60000) { var nowQ = e.getAttribute('data-name') === 'forge_get_sms' ? 'forge' : 'verify' if ($("#bidLogin").attr('data-name') === 'bind-phone') { nowQ = 'bind-phone' // getNewVerify() } if (e.getAttribute('data-name') === 'register_get_sms') { nowQ = 'register' } Direct.ajaxSms(e, nowQ) } } // 表单规则 function ruleForPhone (data, type) { var checkStatus = /^[1][3-9][0-9]{9}$/.test(data.value) if (type === 'input') { return data.value.length >= 11 ? checkStatus : true } if (type === 'blur') { return data.value.length ? checkStatus : true } return checkStatus } function ruleForCode (data, type) { var checkStatus = /^\S{4}$/.test(data.value) if (type === 'blur') { return data.value.length ? checkStatus : true } if (type === 'input') { return data.value.length == 4 ? checkStatus : true } return checkStatus } function ruleForSms (data, type) { var checkStatus = /^\S{6}$/.test(data.value) if (type === 'blur') { return data.value.length ? checkStatus : true } if (type === 'input') { return data.value.length == 6 ? checkStatus : true } return checkStatus } function ruleForPass (data, type) { var checkStatus = /^\S{6,}$/.test(data.value) if (type === 'blur') { return data.value.length ? checkStatus : true } if (type === 'input') { return data.value.length >= 6 ? checkStatus : true } return checkStatus } function createFormStauts (formOption) { var nowEle = document.querySelector(formOption.el) var errClass = 'is-error' // 实时状态 var nowData = { status: null, next: formOption.next || false, value: null, el: nowEle, skip: function (value) { this.status = true this.next = true this.value = value formOption.upStatus() }, showError: function (error) { this.status = false this.next = false formOption.upStatus() if (error) { this.el.parentNode.setAttribute('data-error', error) this.el.parentNode.classList.add(errClass) } } } // 错误提示 if (formOption.errorTip && formOption.errorTip !== '') { nowEle.parentNode.setAttribute('data-error', formOption.errorTip) } // 校验规则 if (typeof formOption.rule !== "function") { formOption.rule = function (data) { return true } } // 状态变动通知回调 if (typeof formOption.upStatus !== "function") { formOption.upStatus = function (data) { return true } } // 监听事件 var events = formOption.event; for(var i=0;i-1){//结构化数据 sourceStr="结构化数据-pc-baidusem"; }else if (href.indexOf("/bid/pc/page/bidfile_landpage?source=baidusem")>-1){//招标文件解读 sourceStr="招标文件解读-pc-baidusem"; } if (sourceStr!=""){ try { _hmt.push(['_trackEvent',sourceStr, 'click', "登录"]); } catch (e) { console.log('未初始化百度统计', e); } } $("#bidLogin").modal("show"); } function openBindPhoneDig() { openLoginDigForWx(false); $('#bidLogin .logo').hide() $('#bidLogin .bind-phone-head').show() if ($('#bidLogin').attr('data-name') !== 'bind-phone') { $("#bidLogin").attr('data-name', 'bind-phone') // $('.login-dig-submit-button:disabled').css('background', '#2CB7CA') // $('.login-dig-submit-button:disabled').css('opacity', '0.5') $('.login-dig-submit-button').css('margin-bottom', '12px') $('.login-dig-submit-button').addClass('bindphonebtn') $("#bidLogin .login-dig-submit-button[name='verify_submit']").text('立即绑定') $(".login-dig-tabbar-content[data-name='code'] .login-dig-input-box").removeClass('is-error').children('input').val('') } $("#bidLogin").modal("show"); } function closeLoginDig() { $("#bidLogin").modal("hide"); } function openLoginDigForWx (type) { var otherArr = ['.login-dig-box > .logo','.login-dig-footer-box .wx-logo-box', '.login-dig-footer-box .login-dig-text-split' ,'.login-dig-tabbar-navbar', '.login-dig-tabbar-content', '.login-dig-tabbar-content.is-active'] var wxArr = ['.login-dig-wx-qrcode-box', '.login-dig-top-back-box'] for(var i=0;i