1// í¨ìë¶ë§ ë°ë¡ í¸ì¶ 2document.write('<script type="text/javascript" src="/app/javascript/js/common-function.js?v=140729"></script>'); 3 4$(function(){ 5 /* ì¤íì¼ì ì© */ 6 apply_input_style(); 7 8 // jstree ê°ì²´ë¥¼ ì¬ì©íë íì´ì§ììë jQuery 구ë²ì ì ì¬ì©íë¯ë¡ on í¨ìê° ìì´ ìì¸ ì²ë¦¬ 9 if(typeof $.jstree !== "object") { 10 //ìíëì¤íë ì´ì ëììí´ë¦ì -> ëìììëì¤íì¤ì ëì´ìì´ì¼í¨ 11 $(document).on('click', ".goodsDisplayVideoWrap", function() { 12 $(this).find("img").addClass("hide"); 13 $(this).find(".thumbnailvideo").hide(); 14 $(this).find(".mobilethumbnailvideo").hide(); 15 $(this).find("iframe").removeClass("hide"); 16 $(this).find("embed").removeClass("hide"); 17 18 var iframe = $(this).find("iframe"); 19 iframe.attr('src', iframe.attr('data-src')); 20 }); 21 22 //ëììë£ê¸°ì ëììí´ë¦ì-> ëìììëì¤íì¤ì ëì´ìì´ì¼í¨ 23 $(document).on('click', ".DisplayVideoWrap", function() { 24 $(this).find("img").addClass("hide"); 25 $(this).find(".thumbnailvideo").hide(); 26 $(this).find(".mobilethumbnailvideo").hide(); 27 $(this).find("iframe").removeClass("hide"); 28 $(this).find("embed").removeClass("hide"); 29 30 var iframe = $(this).find("iframe"); 31 iframe.attr('src', iframe.attr('data-src')); 32 }); 33 } 34}); 35 36$(window).load(function() { 37 /* ì¤íì¼ì ì© */ 38 chk_small_goods_image(); 39}); 40 41 42String.prototype.replaceAll = function (str1,str2){ 43 var str = this; 44 var result = str.replace(eval("/"+str1+"/gi"),str2); 45 return result; 46} 47 48// íµê³ìë²ë¡ íµê³ë°ì´í° ì ë¬ - ì¬ì©ì¤ì§... ê° ì¼í몰ìì ì²ë¦¬í¨ 49function statistics_firstmall(act,goods_seq,order_seq,review_point) 50{ 51 return; 52 /* 53 var url = '/_firstmallplus/statistics'; 54 var allFormValues = "act="+act+"&goods_seq="+goods_seq; 55 if( order_seq ) allFormValues += "&order_seq="+order_seq; 56 if( review_point ) allFormValues += "&review_point="+review_point; 57 58 if(act == 'order' && !order_seq) return false; 59 if(act == 'review' && !review_point) return false; 60 if(!goods_seq) return false; 61 $.ajax({ 62 cache:false, 63 timeout:1000, 64 type:"POST", 65 url:url, 66 data:allFormValues, 67 error:function(){}, 68 success:function(response){} 69 }); 70 return true; 71 */ 72} 73 74//문ìì´ ë°ì´í¸ ì²´í¬(utf-8ë ê°ë¥) 75String.prototype.byteLength = function(mode){ 76 mode = (!mode) ? 'euc-kr' : mode; 77 text = this; 78 byte = 0; 79 switch(mode){ 80 case 'utf-8' : 81 for(byte=i=0;char=text.charCodeAt(i++);byte+=char>>11?3:char>>7?2:1); 82 break; 83 84 default : 85 for(byte=i=0;char=text.charCodeAt(i++);byte+=char>>7?2:1); 86 87 } 88 return byte 89}; 90 91 92/* 93 * form RSA ìí¸í íë¡ì¸ì¤ 94 * - form ë´ì fileì´ ìì ê²½ì° ê¸°ì¡´ íë¡ì¸ì¤ììë file ë°ì´í° ì ì¡ì ëìíì§ ììì. 95 * íì¸ë submit ìì¸ ì¬í 96 * - front script ë 벨ìì formì ìì±í í bodyì ì¶ê°íì§ ìê³ submit 97 * -> ì´ ê²½ì°ë https://www.w3.org/TR/html5/forms.html#constraints 4.10.22.3 를 ìë°íì¬ ì¼ë¶ ë¸ë¼ì°ì ìì submitì´ ë°ìíì§ ìì. 98 * - ajaxë iframeì íµí´ ìë¡ì´ íì´ì§ë¥¼ ìì±í í document.sslForm.submit() 를 íµí´ submit 99 * -> DOM ê°ì²´ë¡ submit í¸ì¶ê³¼ ëì¼ 100 * - ì¤í¬ë¦½í¸ í¸ì¶ê³¼ ë°ì¸ë©ì´ ì´ë£¨ì´ì§ê¸° ì $(document).ready() ì ëìì submit 101 */ 102// RSA ì ì ë³ì ì ì¸ 103var getPublicKeyUrl = ["/ssl/getRSAPublicKey","/RSA/ssl/getRSAPublicKey"]; 104var handshakeUrl = ["/ssl/getRSAHandShake","/RSA/ssl/getRSAHandShake"]; 105var arrCheckActions = ["/ssl/relayRsa?action=", "/RSA/ssl/setRSAReturnPost/"]; 106var jcryptionReloadDelayTime = 500; // 0.5 ì´ í ë¤ì 리ë¡ë, ì§ì° ë°ì ì 1ì´ì© ì¦ê° 107var sGlAction = ''; 108// ëì ì¤í¬ë¦½í¸ í¸ì¶ 109$.loadScript = function (url, callback) {$.ajax({url: url,dataType: 'script',success: callback,async: true});} 110$(document).ready(function(){ 111 // order_price_calculate 주문ì ê³ì° í¨ììì ssl íµì ì ì´ì©íê³ ìì§ ìê³ íì¬ íì´ì§ê° 주문ì ìì± íì´ì§ë¼ë©´ ssl_urlë¡ ì¹í 112 if( window.location.pathname.indexOf('/order/settle') > -1 113 && order_price_calculate.toString().indexOf("/common/ssl_action")==-1){ 114 console.log("order_price_calculate convert"); 115 order_price_calculate = function () { 116 var f = $("form#orderFrm"); 117 action = "/order/calculate?mode="+gl_mode; 118 // ssl ì ì©
119 $.ajax({ 120 async: false, 121 'url' : '/common/ssl_action', 122 'data' : {'action':action}, 123 'type' : 'get', 124 'dataType' : 'html', 125 'success' : function(res) { 126 action = res; 127 } 128 }); 129 f.attr("action",action); 130 f.attr("target","actionFrame"); 131 // jCryption ì¬ì ì© ì¤í¨ì orderFrm ì ssl ë§í¬ê° ì기ì js ìììì ì¬ì ì¸ 132 moduleJcryption.resetJcryptionSubmit(f[0]); 133 f.submit(); 134 }; 135 } 136 137 // jquery ë²ì ì´ 1.7 ì´í ì¼ê²½ì° ê´ë¦¬ììì ì¬ì©ì¤ì´ë¯ë¡ https ê°í를 ì ì¸íë¤. 138 if($().jquery >= "1.7"){ 139 $.loadScript("/app/javascript/plugin/jcryption/jquery.jcryption.3.1.0_custom.js", function(){ 140 initJcryption(); 141 }); 142 } 143 // ajax í¸ì¶ í ìë¡ ìì±ë formìë ì ì© 144 $(document).ajaxComplete(function() { 145 // 모ë í¼ ì리먼í¸ì ì´ë²¤í¸ë¥¼ ë°ì¸ë© íë¤ 146 $("body form").each(function (){ 147 var domEl = this; 148 moduleJcryption.convertJcryptionSubmit(domEl); 149 }); 150 }); 151}); 152// ìí¸í ì ì© ê¸°ë¥ ëª¨ëí 153var moduleJcryption = { 154 // í¼ìì íë¡í ì½ì í¬í¨í host nameì ì»ëë¤. 155 getHostNameFromForm : function (formObj) { 156 var formActionUrl = formObj.attr("action"); 157 return moduleJcryption.getHostNameFromUrl(formActionUrl); 158 } 159 , getHostNameFromUrl : function (url){ 160 var arr = url.split("/"); 161 var result = arr[0]+"//"+arr[2]; 162 return result; 163 } 164 // SSL ì ì© í¼ì¸ì§ ì¬ë¶ íì¸ 165 , checkSSLForm : function (formObj){ 166 var formActionUrl = formObj.attr("action"); 167 if(formActionUrl){ 168 for(var i in arrCheckActions){ 169 if(formActionUrl.indexOf(arrCheckActions[i])>-1){ 170 return i; 171 } 172 } 173 } 174 return -1; 175 } 176 // ì´ë²¤í¸ê° ë°ì¸ë ë í¼ì¸ì§ íì¸ 177 , checkBindEventForm : function (formObj){ 178 var data = (formObj.data("jCryptionInit") === true); 179 if(data){ 180 return true; 181 } 182 return false; 183 } 184 // ì´ë²¤í¸ê° ì¹íë ë í¼ì¸ì§ íì¸ 185 , checkBindEventJcryptionForm : function (formObj){ 186 var data = (formObj.data("jCryptionAlready") === true); 187 if(data){ 188 return true; 189 } 190 return false; 191 } 192 // ìì±ì íì¸íë¤ 193 , getAttributes : function ( $node ) { 194 var attrs = {}; 195 $.each( $node[0].attributes, function ( index, attribute ) { 196 attrs[attribute.name] = attribute.value; 197 } ); 198 199 return attrs; 200 } 201 , destroyJcryptionSubmit : function(domEl){ 202 $(domEl).data("jCryptionInit",false); 203 $(domEl).data("jCryptionAlready",false); 204 $(domEl).off("submit"); 205 } 206 , resetJcryptionSubmit : function(domEl){ 207 moduleJcryption.destroyJcryptionSubmit(domEl); 208 moduleJcryption.convertJcryptionSubmit(domEl); 209 } 210 , convertJcryptionSubmit : function(domEl){ 211 // ì´ë¯¸ ì¹íë í¼ì ì¤ë³µ ì¹ííì§ ìì. 212 if(moduleJcryption.checkBindEventJcryptionForm($(domEl))){ 213 // console.log("already submit convert ", $(domEl)); 214 }else{ 215 // console.log("submit convert event binding!", $(domEl)); 216 $(domEl).data("jCryptionAlready",true); 217 // URL ì´ SSL ì ì© í¼ì¸ì§ íì¸ 218 // console.log($(domEl),$(domEl).attr("action"),moduleJcryption.checkSSLForm($(domEl))); 219 if(moduleJcryption.checkSSLForm($(domEl))>-1){ 220 // 기본 dom ê°ì²´ë¥¼ ì°ì ì¹íí í jquery ê°ì²´ submit ì´ë²¤í¸ ë°ì¸ë©. 221 // jqueryê°ì²´ ìë¸ë°ì´ ë°ìíë¤ë©´ preventDefault ë¡ ì¸í´ domê°ì²´ì ìë¸ë°ì ë°ìíì§ ìì. 222 domEl.submit = function (event){ 223 // console.log("DOM el submit"); 224 moduleJcryption.convertSubmit(domEl); 225 }; 226 // validate íë¬ê·¸ì¸ì´ ì ì©ëì´ ìì ì ë³ëì submithandle를 ì´ì©íë¯ë¡ jquery ê°ì²´ ë°ì¸ë© ì ì¸ 227 if(typeof $(domEl).data("validator") !== "undefined"){ 228 }else{ 229 $(domEl).on("submit", function(event){ 230 // console.log("jquery el submit"); 231 event.preventDefault(); 232 moduleJcryption.convertSubmit(domEl); 233 }); 234 } 235 } 236 } 237 } 238 // ì¸ì í¤ ì ì§ë¥¼ ìí action url ì¶ê° 239 , convertActionUrl : function ($formEl){ 240 // console.log("convertActionUrl!", $formEl); 241 var action = $formEl.attr("action"); 242 var sessionKey = $.jCryption.getAESSessionKey($formEl); 243 var actionDomain = moduleJcryption.getHostNameFromForm($formEl); 244 var domain = window.location.hostname; 245 if(domain.indexOf("m.")==0){ 246 domain = domain.replace("m.",""); 247 } 248 if(domain.indexOf("www.")==0){ 249 domain = domain.replace("www.",""); 250 } 251 if(actionDomain.indexOf(domain)==-1 && moduleJcryption.checkSSLForm($formEl)>-1 && action.indexOf(sessionKey)==-1){ 252 action = action+"/"+sessionKey; 253 } 254 255 // firstmall ssl ì¬ì©ì 256 var thisRegex = new RegExp('gabiafreemall'); 257 if( thisRegex.test(action) ){ 258 var aPath = action.split("/"); 259 sGlAction = aPath[6].replace("-", "+"); 260 sGlAction = sGlAction.replace("_", "/"); 261 sGlAction = window.atob(sGlAction); 262 action = sGlAction; 263 }else{ 264 sGlAction = ''; 265 } 266 267 $formEl.attr("action",action); 268 } 269 // ìí¸í ìë¸ë° ì²ë¦¬ 270 , convertSubmit : function(thisDom){ 271 var $formEl = $(thisDom); 272 // submit ì ì© í¼ì¸ì§ ì²´í¬ 273 if(moduleJcryption.checkBindEventForm($formEl)){ 274 // console.log("already!", $formEl); 275 moduleJcryption.convertActionUrl($formEl); 276 return true; 277 }else{ 278 // SSL ì ì©í¼ì¸ì§ ì²´í¬ 279 if(moduleJcryption.checkSSLForm($formEl)>-1){ 280 // ì¤í¬ë¦½í¸ê° ë¡ëëìëì§ ì²´í¬ 281 if(typeof $.jCryption === "function"){ 282 // rsa í¼ ìì
283 $(".rsaForm").remove(); 284 285 // ìí¸í ì ì© 286 var AESEncryptionKey = $.jCryption.getAESEncryptionKey($formEl); 287 // console.log(AESEncryptionKey); 288 var hostName = moduleJcryption.getHostNameFromForm($formEl); 289 290 var $submitElement = $formEl.find(":input:submit"); 291 var $encryptedElement = $("<input />",{ 292 type:'hidden', 293 name:'jCryption' 294 }); 295 296 // ìí¸í submit ì ì© form 297 var $submitRSAForm = $("<form class='rsaForm'/>"); 298 var formAttrs = moduleJcryption.getAttributes($formEl); 299 for (var i in formAttrs){ 300 if(i!="id" && i!="name"){ 301 $submitRSAForm.attr(i,formAttrs[i]); 302 } 303 } 304 var remakeHandshakeUrl = handshakeUrl[moduleJcryption.checkSSLForm($formEl)]; 305 if(moduleJcryption.checkSSLForm($formEl)!=0){ 306 remakeHandshakeUrl = remakeHandshakeUrl+"/"+$.jCryption.getAESSessionKey($submitRSAForm); 307 } 308 309 $.jCryption.authenticate( 310 AESEncryptionKey, 311 hostName+getPublicKeyUrl[moduleJcryption.checkSSLForm($formEl)], 312 hostName+remakeHandshakeUrl, 313 function(AESEncryptionKey) { 314 var toEncrypt = $formEl.serialize(); 315 // console.log(toEncrypt); 316 // console.log($formEl); 317 if ($submitElement.is(":submit")) { 318 toEncrypt = toEncrypt + "&" + $submitElement.attr("name") + "=" + $submitElement.val(); 319 } 320 $encryptedElement.val($.jCryption.encrypt(toEncrypt, AESEncryptionKey)); 321 // console.log($submitRSAForm); 322 $submitRSAForm.append($encryptedElement); 323 $("body").append($submitRSAForm); 324 $submitRSAForm.data("jCryptionInit",true); 325 moduleJcryption.convertActionUrl($submitRSAForm); 326 if(sGlAction){ 327 var $encryptionKeyElement = $("<input />",{ 328 type:'hidden', 329 name:'encryptionKey', 330 value:AESEncryptionKey 331 }); 332 $submitRSAForm.append($encryptionKeyElement); 333 } 334 $submitRSAForm.submit(); 335 }, 336 function() { 337 // Authentication with AES Failed ... sending form without protection 338 confirm("Authentication with Server failed, are you sure you want to submit this form unencrypted?", function() { 339 $formEl.submit(); 340 }); 341 } 342 ); 343 }else{ 344 var delayTime = jcryptionReloadDelayTime; 345 console.log("íì ì¤í¬ë¦½í¸ê° ë¡ëëì§ ìììµëë¤. "+(delayTime/1000)+"ì´ í ë¤ì ìëí©ëë¤."); 346 setTimeout(function(){ 347 console.log($formEl,"리ë¡ë"+delayTime); 348 moduleJcryption.resetJcryptionSubmit(thisDom); 349 $formEl.submit(); 350 }, delayTime); 351 jcryptionReloadDelayTime += 1000; // 1ì´ì© ì¦ê° 352 // $formEl.submit(); 353 } 354 return false; 355 }else{ 356 return true; 357 } 358 } 359 } 360}; 361 362// ìí¸í ì ì© 363var initJcryption = function(){ 364 // 모ë í¼ ì리먼í¸ì ì´ë²¤í¸ë¥¼ ë°ì¸ë© íë¤ 365 $("body form").each(function (){ 366 var domEl = this; 367 moduleJcryption.convertJcryptionSubmit(domEl); 368 }); 369 370 // ìì´ë ì²´í¬ì ê²½ì° SSL íµì ì´ ììì¼ë¯ë¡ ê°ì ë¡ ì ì© 371 function setupJoinMemberPageCheckId(){ 372 var url = location.href; 373 var tmp_url = url.split("?"); 374 var domain = moduleJcryption.getHostNameFromUrl(tmp_url[0]); 375 var sub_url = tmp_url[0].replace(domain,""); 376 377 // íìê°ì íì´ì§ ì¼ ê²½ì° 378 if(sub_url=="/member/register"){ 379 380 // íì¬ íìê°ì í¼ì action ì íµí´ ì ë£/ë¬´ë£ SSLì íì¸íë¤. 381 var registFrmAction = $("#registFrm").attr("action"); 382 var registFrmHost = moduleJcryption.getHostNameFromUrl(registFrmAction); 383 if(registFrmHost.indexOf("http")>-1){ 384 var sslSubUrlIndex = 0; 385 if(registFrmHost == "https://ssl.gabiafreemall.com"){ 386 sslSubUrlIndex = 1; 387 } 388 var idCheckFormUrl = registFrmHost+arrCheckActions[sslSubUrlIndex]; 389 390 var idCheckCallbackUrl = domain+"/member/"+"../member_process/id_chk"; 391 var encodeIdCheckCallbackUrl = Base64.encode(idCheckCallbackUrl); 392 encodeIdCheckCallbackUrl = encodeIdCheckCallbackUrl.replace(/[\+]/g,"-"); 393 encodeIdCheckCallbackUrl = encodeIdCheckCallbackUrl.replace(/[\/]/g,"_"); 394 var idCheckFormAction = idCheckFormUrl+encodeIdCheckCallbackUrl; 395 396 $("input[name='userid']").unbind("blur"); 397 $("input[name='userid']").blur(function() { 398 399 if($(this).val()){ 400 // rsa í¼ ìì 401 $("#idchkform").remove();
402 $(".rsaForm").remove(); 403 $formEl = $("<form id='idchkform' method='post' target='actionFrame' action='"+idCheckFormAction+"'/>"); 404 var idval = $("<input type='hidden' name='userid' value='"+$(this).val()+"'>"); 405 $formEl.append(idval); 406 $("body").append($formEl); 407 408 // ìí¸í ì ì© 409 var AESEncryptionKey = $.jCryption.getAESEncryptionKey($formEl); 410 // console.log(AESEncryptionKey); 411 var hostName = moduleJcryption.getHostNameFromForm($formEl); 412 413 var $submitElement = $formEl.find(":input:submit"); 414 var $encryptedElement = $("<input />",{ 415 type:'hidden', 416 name:'jCryption' 417 }); 418 419 // ìí¸í submit ì ì© form 420 var $submitRSAForm = $("<form class='rsaForm'/>"); 421 var formAttrs = moduleJcryption.getAttributes($formEl); 422 for (var i in formAttrs){ 423 if(i!="id" && i!="name"){ 424 $submitRSAForm.attr(i,formAttrs[i]); 425 } 426 } 427 var remakeHandshakeUrl = handshakeUrl[moduleJcryption.checkSSLForm($formEl)]; 428 if(moduleJcryption.checkSSLForm($formEl)!=0){ 429 remakeHandshakeUrl = remakeHandshakeUrl+"/"+$.jCryption.getAESSessionKey($submitRSAForm); 430 } 431 432 $.jCryption.authenticate( 433 AESEncryptionKey, 434 hostName+getPublicKeyUrl[moduleJcryption.checkSSLForm($formEl)], 435 hostName+remakeHandshakeUrl, 436 function(AESEncryptionKey) { 437 var toEncrypt = $formEl.serialize(); 438 // console.log(toEncrypt); 439 // console.log($formEl); 440 if ($submitElement.is(":submit")) { 441 toEncrypt = toEncrypt + "&" + $submitElement.attr("name") + "=" + $submitElement.val(); 442 } 443 $encryptedElement.val($.jCryption.encrypt(toEncrypt, AESEncryptionKey)); 444 // console.log($submitRSAForm); 445 $submitRSAForm.append($encryptedElement); 446 $("body").append($submitRSAForm); 447 $submitRSAForm.data("jCryptionInit",true); 448 moduleJcryption.convertActionUrl($submitRSAForm); 449 $submitRSAForm.submit(); 450 }, 451 function() { 452 // Authentication with AES Failed ... sending form without protection 453 confirm("Authentication with Server failed, are you sure you want to submit this form unencrypted?", function() { 454 $formEl.submit(); 455 }); 456 } 457 ); 458 459 } 460 }); 461 } 462 } 463 } 464 setupJoinMemberPageCheckId(); 465} 466function callbackIdChk(json){ 467 var response = $.parseJSON(json); 468 var text = response.return_result; 469 var userid = response.userid; 470 $("#id_info").html(text); 471 $("input[name='userid']").val(userid); 472} 473 474 475// ë¹ë°ë²í¸ ê·ì¹ ì²´í¬ 476function init_check_password_validation(obj){ 477 obj.off("focusout"); 478 obj.on("focusout", function(){ 479 call_check_password_validation($(this)); 480 }); 481} 482 483function init_check_password_validation_data(data, password){ 484 485 var jsonObj = []; 486 487 jsonObj.push({ 488 name: 'password', 489 value: password 490 }); 491 492 for(i=0;i<data.length; i++){ 493 494 var formEl = data[i].name; 495 496 if(formEl.match(/^(mtype)/)){ 497 jsonObj.push({ 498 name: 'mtype', 499 value: data[i].value 500 }); 501 }else if(formEl.match(/^(member_|info_|provider_|manager_)*(seq)/)){ 502 jsonObj.push({ 503 name: 'seq', 504 value: data[i].value 505 }); 506 } 507 else if(formEl.match(/^(?!.*cell).*(phone)/) && formEl != 'mphone' && formEl != 'info_phone'){ // ê´ë¦¬ì&ì ì ì¬ ì ì¸ 508 if(formEl.match(/\W/)){ 509 jsonObj.push({ 510 name: 'phone[]', 511 value: data[i].value 512 }); 513 }else { 514 jsonObj.push({ 515 name: 'phone', 516 value: data[i].value 517 }); 518 } 519 }else if(formEl.match(/^\w*(cellphone)/) && formEl != 'mcellphone'){ // ê´ë¦¬ì&ì ì ì¬ ì ì¸ 520 if(formEl.match(/\W/)){ 521 jsonObj.push({ 522 name: 'cellphone[]', 523 value: data[i].value 524 }); 525 }else { 526 jsonObj.push({ 527 name: 'cellphone', 528 value: data[i].value 529 }); 530 } 531 }else if(formEl.match(/^\w*(birthday)/)){ 532 jsonObj.push({ 533 name: 'birthday', 534 value: data[i].value 535 }); 536 } 537 } 538 539 return jsonObj; 540} 541 542function call_check_password_validation(obj){ 543 var action = "/common/check_password_validation"; 544 545 var password = obj.val(); 546 var form = obj.closest("form"); 547 if (form.length == 0) { 548 form = $("form[name=registFrm]"); 549 } 550 var data = form.serializeArray(); 551 jsonObj = init_check_password_validation_data(data, password); 552 if(typeof password !== 'undefined' && password != ''){ 553 $.ajax({ 554 type: "post", 555 async: false, 556 url: action, 557 data: jsonObj, 558 success: function(result){
559 try{ 560 result = JSON.parse(result); 561 draw_check_password_validation(obj, result.alert_code); 562 }catch(e){ 563 init_draw_check_password_validation(obj); 564 obj.parent().find(".password_alert_msg").html(result); 565 } 566 } 567 }); 568 } 569} 570function draw_check_password_validation(obj, alert_code){ 571 init_draw_check_password_validation(obj); 572 var msg = ''; 573 if(alert_code != ''){ 574 msg = alert_code; 575 } 576 if(msg){ 577 obj.parent().find(".password_alert_msg").html(msg); 578 }else{ 579 obj.parent().find(".password_alert_msg").remove(); 580 } 581} 582function init_draw_check_password_validation(obj){ 583 if(obj.parent().find(".password_alert_msg").length == 0){ 584 var password_alert_msg = $('<div class="password_alert_msg" style="color:red;"></div>'); 585 obj.parent().append(password_alert_msg); 586 } 587} 588 589$(window).load(function() { 590 $(".class_check_password_validation").each(function(){ 591 init_check_password_validation($(this)); 592 }); 593});
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.