1$(function () { 2 //éæ©ç»å½æ¹å¼ 3 var defaultUserLoginType = $("#defaultUserLoginType"); 4 if (defaultUserLoginType.val() == "Phone") { 5 showPhoneRegistered(); 6 } 7 else if (defaultUserLoginType.val() == "Weixin") { 8 showWeixinRegistered(); 9 } 10 else if (defaultUserLoginType.val() == "WorkWxLogin") { 11 showWorkWeixinRegistered(); 12 } 13 else if (defaultUserLoginType.val() == "DingTalkLogin") { 14 showDingTalkRegistered(); 15 } 16 else { 17 showPwdRegistered(); 18 } 19 20 $("#login-select").on("click", 21 "li", 22 function () { 23 var registered = $(this)[0].id; 24 switch (registered) { 25 case "phone_registered": 26 showPhoneRegistered(); 27 break; 28 case "pwd_registered": 29 showPwdRegistered(); 30 break; 31 case "phonepwd_registered": 32 showPhonepwdRegistered(); 33 break; 34 case "weixin_registered": 35 showWeixinRegistered(); 36 break; 37 case "idcard_registered": 38 showIdCardRegistered(); 39 break; 40 case "workweixin-registered": 41 showWorkWeixinRegistered(); 42 break; 43 case "dingtalk-registered": 44 showDingTalkRegistered(); 45 break; 46 } 47 }); 48 49 function removeError() { 50 for (var i = 0; i < $(".field-validation-error").length; i++) { 51 $(".field-validation-error").eq(i).children().remove(); 52 } 53 } 54 55 function showValidcodedl() { 56 if ($(".enabledvalidcode input[name=ValidateCode]").attr("disabled") != "disabled") { 57 $(".enabledvalidcode").css("display", "block"); 58 } else { 59 $(".enabledvalidcode").css("display", "none"); 60 } 61 } 62 63 function showPhoneRegistered() { 64 $('.container .form-horizontal').attr('action', $("input[name=userloginurl]").data().phonelogin); 65 $(".hiddenfield").hide().attr("disabled", "disabled"); 66 $(".phone-field").show().removeAttr("disabled"); 67 $(".phone-field input[name=PhoneMessageValidateCode]").removeAttr("disabled"); 68 $(".loginBtn").show(); 69 $(".weixinlogin").hide(); 70 $(".workweixinlogin").hide(); 71 $(".dingtalklogin").hide(); 72 $(".errormessage").text(""); 73 $("input[name=LoginWayType]").val("PhoneLogin"); 74 $("#login-btn button[type=submit]").show(); 75 $(".login-select li").hide(); 76 $(".login-select li.password-registered").show(); 77 $(".login-select li.weixin-registered").show(); 78 $(".login-select li.workweixin-registered").show(); 79 $(".login-select li.dingtalk-registered").show(); 80 removeError(); 81 showValidcodedl(); 82 } 83 84 function showPwdRegistered() { 85 $('.container .form-horizontal').attr('action', $("input[name=userloginurl]").data().login); 86 $(".hiddenfield").hide().attr("disabled", "disabled"); 87 $(".password-field").show().removeAttr("disabled"); 88 $(".phone-field input[name=PhoneMessageValidateCode]").attr("disabled", "disabled"); 89 $(".loginBtn").show(); 90 $(".weixinlogin").hide(); 91 $(".workweixinlogin").hide(); 92 $(".dingtalklogin").hide(); 93 $(".errormessage").text(""); 94 $("input[name=LoginWayType]").val("PasswordLogin"); 95 $("#login-btn button[type=submit]").show(); 96 $(".login-select li").hide(); 97 $(".login-select li.phone-registered").show(); 98 $(".login-select li.weixin-registered").show(); 99 $(".login-select li.workweixin-registered").show(); 100 $(".login-select li.dingtalk-registered").show(); 101 removeError(); 102 showValidcodedl(); 103 } 104 105 function showPhonepwdRegistered() { 106 $('.container .form-horizontal').attr('action', $("input[name=userloginurl]").data().login); 107 $(".hiddenfield").hide().attr("disabled", "disabled"); 108 $(".phonepassword-field").show().removeAttr("disabled"); 109 $(".phone-field input[name=PhoneMessageValidateCode]").attr("disabled", "disabled"); 110 $(".loginBtn").show(); 111 $(".weixinlogin").hide(); 112 $(".workweixinlogin").hide(); 113 $(".dingtalklogin").hide(); 114 $(".errormessage").text(""); 115 $("input[name=LoginWayType]").val("PhonePasswordLogin"); 116 $("#login-btn button[type=submit]").show(); 117 removeError(); 118 showValidcodedl(); 119 } 120 function showIdCardRegistered() { 121 $('.container .form-horizontal').attr('action', $("input[name=userloginurl]").data().login); 122 $(".hiddenfield").hide().attr("disabled", "disabled"); 123 $(".idcardpassword-field").show().removeAttr("disabled"); 124 $(".phone-field input[name=PhoneMessageValidateCode]").attr("disabled", "disabled"); 125 $(".loginBtn").show(); 126 $(".weixinlogin").hide(); 127 $(".workweixinlogin").hide(); 128 $(".dingtalklogin").hide(); 129 $(".errormessage").text(""); 130 $("input[name=LoginWayType]").val("IdCardLogin"); 131 $("#login-btn button[type=submit]").show(); 132 removeError(); 133 showValidcodedl(); 134 } 135 136 function showWeixinRegistered() { 137 $.ajax({ 138 url: '/Ajax/AjaxPartial', 139 type: 'post', 140 data: { partialViewName: "微信äºç»´ç ", parameters: "{siteId:" + $("#logincurrentsiteId").val() + "}" }, 141 success: function (response) { 142 $(".weixinlogin").html(response.html); 143 // å¦ææ¯æå¡å·ï¼æ ¹æ®ææç»å½urlçæäºç»´ç 144 if ($("#weixinapptype").val() === '1') { 145 $("#login_container").html('<div style="width: 300px;height: 400px; margin:0 auto;"><div style="text-align: center;font-size: 20px;">微信ç»å½</div><div class="wrp_code" style="width: 280px;margin: 15px 0 0 10px;"></div><div style="text-align: center;font-size: 13px;margin-top: 7px;"><p>使ç¨å¾®ä¿¡æ«ä¸æ«ç»å½</p></div></div>'); 146 new QRCode($("#login_container .wrp_code").get(0), 147 { 148 text: $('#weixinloginurl').val(), 149 width: 280, 150 height: 280 151 }); 152 } 153 // 妿æ¯ç½ç«åºç¨ï¼ä½¿ç¨js微信ç»å½å åµäºç»´ç 154 else { 155 var obj = new WxLogin({ 156 self_redirect: false, 157 id: "login_container", 158 appid: $("#weixinappid").val(), 159 scope: "snsapi_login", 160 redirect_uri: $("#weixinredirecturi").val(), 161 state: $("#weixinstate").val(), 162 style: "black", 163 href: "" 164 }); 165 } 166 }, 167 error: function (response) { alert("请æ±å¾®ä¿¡äºç»´ç 失败ï¼"); } 168 }); 169 170 $(".hiddenfield").hide(); 171 $(".workweixinlogin").hide(); 172 $(".dingtalklogin").hide(); 173 $(".weixinlogin").show(); 174 $(".loginBtn").hide(); 175 $(".errormessage").text(""); 176 $("#login-btn button[type=submit]").hide(); 177 $(".login-select li").hide(); 178 $(".login-select li.phone-registered").show(); 179 $(".login-select li.password-registered").show(); 180 $(".login-select li.workweixin-registered").show(); 181 $(".login-select li.weixin-registered").hide(); 182 $(".login-select li.dingtalk-registered").show(); 183 } 184 function showWorkWeixinRegistered() { 185 $.ajax({ 186 url: '/Ajax/AjaxPartial', 187 type: 'post', 188 data: { partialViewName: "ä¼ä¸å¾®ä¿¡äºç»´ç ", parameters: "{siteId:" + $("#logincurrentsiteId").val() + "}" }, 189 success: function (response) { 190 $(".workweixinlogin").html(response.html); 191 var appid = $("#workweixinappid").val(), 192 agentid = $("#workweixinagentid").val(), 193 encodeUrl = urlEncode($("#workweixinredirecturi").val()), 194 state = $("#workweixinstate").val(); 195 window.WwLogin({ 196 id: 'workweixin_container', 197 appid: appid, 198 agentid: agentid, 199 redirect_uri: encodeUrl, 200 state: state, 201 href: "" 202 }); 203 }, 204 error: function (response) { alert("请æ±ä¼ä¸å¾®ä¿¡äºç»´ç 失败ï¼"); } 205 }); 206 207 $(".hiddenfield").hide(); 208 $(".weixinlogin").hide(); 209 $(".workweixinlogin").show(); 210 $(".dingtalklogin").hide(); 211 $(".loginBtn").hide(); 212 $(".errormessage").text(""); 213 $("#login-btn button[type=submit]").hide(); 214 $(".login-select li").hide(); 215 $(".login-select li.phone-registered").show(); 216 $(".login-select li.password-registered").show(); 217 $(".login-select li.weixin-registered").show(); 218 $(".login-select li.workweixin-registered").hide(); 219 $(".login-select li.dingtalk-registered").show(); 220 } 221 222 function showDingTalkRegistered() { 223 $.ajax({ 224 url: '/Ajax/AjaxPartial', 225 type: 'post', 226 data: { partialViewName: "ééäºç»´ç ", parameters: "{siteId:" + $("#logincurrentsiteId").val() + "}" }, 227 success: function (response) { 228 $(".dingtalklogin").html(response.html); 229 var clientid = $("#dingtalkclientid").val(), 230 encodeUrl = urlEncode($("#dingtalkredirecturi").val()), 231 state = $("#dingtalkstate").val(); 232 window.DTFrameLogin( 233 { 234 id: 'dingtalk_container', 235 width: 388, 236 height: 250, 237 }, 238 { 239 redirect_uri: encodeUrl, 240 client_id: clientid, 241 scope: 'openid', 242 response_type: 'code', 243 state: state, 244 prompt: 'consent', 245 }, 246 (loginResult) => { 247 const { redirectUrl, authCode, state } = loginResult; 248 // è¿éå¯ä»¥ç´æ¥è¿è¡éå®åï¼ä¹å¯ä»¥å¨ä¸è·³è½¬é¡µé¢çæ åµä¸ï¼ä½¿ç¨codeè¿è¡ææ 249 window.top.location.href = redirectUrl; 250 }, 251 (errorMsg) => { 252 // è¿éä¸è¬éè¦å±ç¤ºç»å½å¤±è´¥çå ·ä½åå ,å¯ä»¥ä½¿ç¨toastçè½»æç¤º 253 console.error(`errorMsg of errorCbk: ${errorMsg}`); 254 }, 255 ) 256 }, 257 error: function (response) { alert("请æ±ä¼ä¸å¾®ä¿¡äºç»´ç 失败ï¼"); } 258 }); 259 260 $(".hiddenfield").hide(); 261 $(".weixinlogin").hide(); 262 $(".workweixinlogin").hide(); 263 $(".dingtalklogin").show(); 264 $(".loginBtn").hide(); 265 $(".errormessage").text(""); 266 $("#login-btn button[type=submit]").hide(); 267 $(".login-select li").hide(); 268 $(".login-select li.phone-registered").show(); 269 $(".login-select li.password-registered").show(); 270 $(".login-select li.weixin-registered").show(); 271 $(".login-select li.workweixin-registered").show(); 272 $(".login-select li.dingtalk-registered").hide(); 273 } 274 275 function urlEncode(str) { 276 str = (str + '').toString(); 277 278 return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28') 279 .replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+'); 280 } 281 var mainsetInterval; 282 function refreshloginstate() { 283 if ($('.userlogininfo').length > 0) { 284 var siteurl = $("#currentsiteinfo").data("siteajaxrequestprefix"); 285 $.ajax({ 286 url: siteurl + 'Ajax/AjaxPartial', 287 type: 'post', 288 data: { 289 partialViewName: "ç¨æ·ç»å½é¡µ-ç¨æ·ä¿¡æ¯", 290 parameters: "{}", 291 }, 292 success: function (response) { 293 $(".userlogininfo").html(response.html); 294 showValidateCode(false, false); 295 if ($('.notlogged').length > 0) { 296 clearInterval(mainsetInterval); 297 298 $('.userOtherInfo').hide(); 299 } 300 else { 301 mainsetInterval = setInterval(function () { 302 ShowSigninArticleNum(); 303 HasUnreadMessage(); 304 }, 305 60000); 306 307 $('.userOtherInfo').show(); 308 } 309 } 310 }); 311 } 312 } 313 314 function postRefreshLoginStateMessage() { 315 var data = { 316 event: 'power.usermanage.refreshloginstate' 317 }; 318 319 window.postMessage(JSON.stringify(data)); 320 } 321 322 function validcodeSucessed(e) {
323 var validcode = $(e).parent().prev().find(".enabledvalidcode"); 324 if (validcode) { 325 var val = validcode.css('display'); 326 if (val == 'block') { 327 var tVal = $(e).parent().prev().find("#js-ticket-login").first().val(); 328 if (!tVal) { 329 return false; 330 } 331 } 332 } 333 334 return true; 335 }; 336 337 var userlogin = $(".userlogincomment"); 338 if (userlogin.length > 0) { 339 refreshloginstate(); 340 } 341 342 $("#UserName,#Password").on('click', 343 function (event) { 344 if ($(".errormessage").text().indexOf("å¯ç 䏿£ç¡®") != -1) { 345 $(".errormessage").text(""); 346 } 347 }); 348 //å ³éç»å½çªå£ 349 $(".closecomment").on("click", 350 function () { 351 $("[data-userlogin=userLoginDialog]").css("display", "none"); 352 $("[data-userlogindialog=userLoginDialog]").css("display", "none"); 353 }); 354 355 //ç»å½ 356 $("[data-userlogindialog=userLoginDialog] .login").click(function () { 357 var userInfo = {}; 358 var getSessionUrl = $(".getSession").val(); 359 // è·åç¼ç åçç¨æ·åå¯ç åéªè¯ç ã 360 $.ajaxPreventCSRF({ 361 type: 'post', 362 url: getSessionUrl, 363 async: false, 364 success: function (data) { 365 userInfo.username = data.username; 366 userInfo.password = data.password; 367 //userInfo.validatecode = data.validatecode; 368 userInfo.phonemessagevalidatecode = data.phonemessagevalidatecode; 369 userInfo.phonenumber = data.phonenumber; 370 userInfo.ticket = data.captchaticket; 371 userInfo.ticketid = data.captchaticketid; 372 userInfo.identitynumber = data.identitynumber; 373 $.refreshCsrf(); 374 } 375 }); 376 377 //var code = $(".userloginmodal input[name='ValidateCode']"); 378 //if ($(".enabledvalidcode").css("display") == "none") { 379 // code.attr("disabled", "disabled"); 380 //} else { 381 // code.removeAttr("disabled"); 382 //} 383 $(".errormessage").text(""); 384 if (!$("#validateForm").valid()) { 385 if (!validcodeSucessed(this)) { 386 // $(".errormessage").text("请ç¹å»éªè¯!"); 387 } 388 } 389 else { 390 if (!validcodeSucessed(this)) { 391 // $(".errormessage").text("请ç¹å»éªè¯!"); 392 } 393 } 394 395 $(".loginBtn").text("ç»å½ä¸â¦").attr("disabled", "disabled").addClass("disabled"); 396 var validateCode = $(this).parent().prev().find("input[name=ValidateCode]").first().val(); 397 var userName = $(this).parent().prev().find("input[name=UserName]").first().val(); 398 var password = $(this).parent().prev().find("input[name=Password]").first().val(); 399 var cookieValidity = $(this).parent().nextAll('.loginCookie').find('select[name="cookie-validity"]').first().val(); 400 var phonemessagevalidatecode = 401 $(this).parent().prev().find("input[name=PhoneMessageValidateCode]").first().val(); 402 var phonenumber = $(this).parent().prev().find("input[name=PhoneNumber]").first().val(); 403 var identitynumber = $(this).parent().prev().find("input[name=IdentityNumber]").first().val(); 404 var loginWayType = $(this).parent().prev().find("input[name=LoginWayType]").first().val(); 405 var loginUrl = $("#loginUrl").val(); 406 if (loginWayType == "PhoneLogin") { 407 loginUrl = $("#loginPhoneUrl").val(); 408 } 409 410 var ticket = $(this).parent().prev().find("#js-ticket-login").first().val(); 411 var ticketId = $(this).parent().prev().find("#js-ticketId-login").first().val(); 412 if ($(".enabledvalidcode").css("display") == "block") { 413 if (!ticket || !ticketId) { 414 $('#captchaticketvalid-login')[0].className = "field-validation-error"; 415 $(".loginBtn").text("ç»å½").removeAttr("disabled").removeClass("disabled"); 416 417 if ((userName && password) || (loginWayType == "PhoneLogin")) { 418 SimCaptcha.SetSuccessCallBack('js-btn-verify-login', function () { 419 $('.loginBtn').click(); 420 }); 421 $('#js-btn-verify-login').attr('captcha-after', 'js-btn-verify-login') 422 $('#js-btn-verify-login').click(); 423 } 424 return false;
425 } 426 else { 427 $('#captchaticketvalid-login')[0].className = "field-validation-valid"; 428 } 429 } 430 431 if (!GetRsaEncrypt()) { 432 alert("æäº¤ä¿¡æ¯ä¸å®æ´ï¼è¯·å·æ°é¡µé¢åéæ°æäº¤ã"); 433 return false; 434 } 435 userName = rsaEncrypt(userName); 436 password = rsaEncrypt(password); 437 phonemessagevalidatecode = rsaEncrypt(phonemessagevalidatecode); 438 identitynumber = rsaEncrypt(identitynumber); 439 validateCode = rsaEncrypt(validateCode); 440 phonenumber = rsaEncrypt(phonenumber); 441 var data = {}; 442 data[userInfo.username] = userName; 443 data[userInfo.password] = password; 444 data[userInfo.validatecode] = validateCode; 445 data[userInfo.phonenumber] = phonenumber; 446 data[userInfo.identitynumber] = identitynumber; 447 data[userInfo.phonemessagevalidatecode] = phonemessagevalidatecode; 448 data["LoginWayType"] = loginWayType; 449 data["CookieValidity"] = cookieValidity; 450 data[userInfo.ticket] = rsaEncrypt(ticket); 451 data[userInfo.ticketid] = rsaEncrypt(ticketId); 452 var siteUrl = $("input[name=siteUrl]").val(); 453 $.ajaxPreventCSRF({ 454 type: 'post', 455 url: loginUrl, 456 data: data, 457 async: false, 458 success: function (value) { 459 $(".loginBtn").text("ç»å½").removeAttr("disabled").removeClass("disabled"); 460 if (value.status === 0) { 461 $("[data-userlogin=userLoginDialog]").css("display", "none"); 462 $("[data-userlogindialog=userLoginDialog]").css("display", "none"); 463 Cookies.remove("Power::Article::SigninArticleTime");//æ¸ é¤åä¸ä¸ªç¨æ·çç¾æ¶æ° 464 Cookies.remove("Power:: Article:: SigninArticle");//æ¸ é¤åä¸ä¸ªç¨æ·çç¾æ¶æ° 465 refreshloginstate(); 466 postRefreshLoginStateMessage(); 467 if (!value.isstrongpassword) { 468 if (siteUrl && siteUrl.length > 1 && siteUrl[siteUrl.length - 1] != '/') { 469 siteUrl += '/'; 470 } 471 472 window.location.href = siteUrl + "user"; 473 return false; 474 } 475 } 476 477 if (loginWayType == "PhoneLogin") { 478 $("#PhoneMessageValidateCode-error").remove(); 479 window.clearInterval(window.timerObj); // åæ¢è®¡æ¶å¨ 480 $("#PhoneMessageValidateCode_btn").removeAttr('disabled').val('è·åéªè¯ç '); // å¯ç¨æé® 481 } 482 483 if (value.status != 0) { 484 if (value.status == -10) { 485 SimCaptcha.SetSuccessCallBack('js-btn-verify-login', function () { 486 $('.loginBtn').click(); 487 }); 488 $('#js-btn-verify-login').attr('captcha-after', 'js-btn-verify-login') 489 $('#js-btn-verify-login').click(); 490 } else { 491 $(".errormessage").text(value.message); 492 } 493 } else { 494 var refreshPage = $("input[name=RefreshPage]"); 495 if (refreshPage.length > 0) { 496 location.reload(); 497 } 498 } 499 $.refreshCsrf(); 500 showValidateCode(value.valcodevisible, true); 501 } 502 }); 503 }); 504 505 //éåº 506 $(".userlogininfo").on('click', '.exitlogin', function () { 507 var url = $(".logurls").val(); 508 $.postPreventCSRF(url, 509 {}, 510 function (data) { 511 refreshloginstate(); 512 postRefreshLoginStateMessage(); 513 $.refreshCsrf(); 514 }); 515 }); 516 517 function showValidateCode(valcodevisible, isRefresh) { 518 if (!valcodevisible) { 519 $(".enabledvalidcode").css("display", "none"); 520 $(".enabledvalidcode input[name='ValidateCode']").attr("disabled", "disabled"); 521 } else { 522 $(".enabledvalidcode").css("display", "block"); 523 $(".enabledvalidcode input[name='ValidateCode']").removeAttr("disabled"); 524 if (isRefresh) { 525 refreshValidateCode(); 526 } 527 } 528 } 529 530 var mathRandom = ""; 531 532 //å·æ°éªè¯ç 533 function refreshValidateCode() { 534 panelCaptchaCallback(); 535 } 536 537 function ShowSigninArticleNum() { 538 if (document.hidden || window.hidden) { 539 return; 540 } 541 542 var signUrl = $('#signinArticleNumUrl').length; 543 if (signUrl > 0) { 544 var url = $('#signinArticleNumUrl').val(); 545 $.get(url, 546 function (data) { 547 if (parseInt(data) > 0) { 548 var enableSignin = $("#enableSignin").val(); 549 if (enableSignin == "True") { 550 var value = 'æ¨æ' + data + 'ç¯æç« å¾ ç¾æ¶'; 551 $(".signinSum").attr("title", value); 552 $(".signinSum").addClass("hasMsg"); 553 } 554 } else { 555 if (parseInt(data) == -1) { 556 refreshloginstate(); 557 } 558 $(".signinSum").attr("title", "æçç¾æ¶ä¿¡æ¯"); 559 $(".signinSum").removeClass("hasMsg"); 560 } 561 }); 562 } 563 } 564 panelCaptchaCallback(); 565}); 566 567function HasUnreadMessage() { 568 if (document.hidden || window.hidden) { 569 return; 570 } 571 572 var unReadMessageUrl = $('#getUnReadMessageUrl').length; 573 if (unReadMessageUrl > 0) { 574 var url = $("#getUnReadMessageUrl").val(); 575 $.get(url, function (data) { 576 if (data.HasUnreadMessage) { 577 var value = 'æ¨ææªè¯»æ¶æ¯'; 578 $(".myMsg").attr("title", value); 579 $(".myMsg").addClass("hasMsg"); 580 } else { 581 $(".myMsg").attr("title", "æççæ¶æ¯"); 582 $(".myMsg").removeClass("hasMsg"); 583 } 584 }) 585 } 586} 587 588// å¯ç è¾å®åè½¦ç´æ¥è§¦åæäº¤äºä»¶ã 589$('#Password') 590 .bind('input propertychange keyup', 591 function (event) { 592 if (event.keyCode == 13) { 593 $(".loginBtn").click(); 594 return; 595 } 596 }); 597// éªè¯ç å¼¹åºæ¡ã 598function panelCaptchaCallback() { 599 if (document.getElementById("js-btn-verify-login") == null) { return; } 600 $("#js-btn-verify-login").val("ç¹å»éªè¯"); 601 $("#js-ticket-login").val(null); 602 $("#js-ticketId-login").val(null); 603 if ($("#js-btn-verify-login")[0]) { 604 $("#js-btn-verify-login")[0].className = "btn btn-default"; 605 } 606 607 // ç¹å»éªè¯ 608 window.loginSimCaptcha = new SimCaptcha({ 609 element: document.getElementById("js-btn-verify-login"), 610 appId: "00000000", 611 callback: function (res) { 612 // ç¹è§¦éªè¯ç 613 if (res.code === 0) { 614 $("#js-btn-verify-login").val("éªè¯éè¿"); 615 $("#js-btn-verify-login")[0].className = "btn btn-success"; 616 $("#js-btn-verify-login").prop("onclick", null); 617 $("#js-ticket-login").val(res.ticket); 618 $("#js-ticketId-login").val(res.ticketId); 619 if ($('#captchaticketvalid-login')[0]) { 620 $('#captchaticketvalid-login')[0].className = "field-validation-valid"; 621 var childNodes = $('#captchaticketvalid-login')[0].childNodes; 622 for (var index = 0; index < childNodes.length; index++) { 623 childNodes[index].remove(); 624 } 625 } 626 627 $(".errormessage").text("") 628 } 629 }, 630 baseUrl: "/" 631 }); 632} 633
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.