1 if (typeof L10n != 'object') 2 document.write('<script type="text/javascript" src="/data/js/language/L10n_KR.js"></script>'); 3 4 // í¨ìë¶ë§ ë°ë¡ í¸ì¶ 5 document.write('<script type="text/javascript" src="/app/javascript/js/common-function.js?dummy=20210713191300"></script>'); 6 7 window.Firstmall = window.Firstmall || {}; 8 9 $(function(){ 10 try { 11 var target = $(window); 12 var target_events = []; 13 var callback = function(e) { 14 if(['input', 'textarea', 'select'].indexOf(e.target.tagName.toLowerCase()) === -1 && !e.target.isContentEditable) e.preventDefault(); 15 else e.stopPropagation(); 16 }; 17 18 if(Firstmall.Config.Security.PreventDrag) target_events.push('selectstart'); 19 if(Firstmall.Config.Security.PreventContextMenu) 20 { 21 target_events.push('contextmenu'); 22 $('body').css('-webkit-touch-callout','none'); 23 } 24 target.on(target_events.join(' '), callback); 25 } catch(ex) { 26 if(ex instanceof TypeError) 1;/* jQuery 1 related exception($(window).on is not exists) */ 27 else console.log('An exception occured while set contextmenu prevent event: ', ex); 28 } 29 }); 30 31 $(function(){ 32 var cartVersion = $('input[name=cart_version]').val(); //18-05-03 ì¹´í¸ ì¤í¨ ë²ì gcns jhs add 33 /* ì¤íì¼ì ì© */ 34 apply_input_style(); 35 36 // jstree ê°ì²´ë¥¼ ì¬ì©íë íì´ì§ììë jQuery 구ë²ì ì ì¬ì©íë¯ë¡ on í¨ìê° ìì´ ìì¸ ì²ë¦¬ 37 if(typeof $.jstree !== "object") { 38 //ìíëì¤íë ì´ì ëììí´ë¦ì -> ëìììëì¤íì¤ì ëì´ìì´ì¼í¨ 39 $(document).on('click', ".goodsDisplayVideoWrap", function() { 40 $(this).find("img").addClass("hide"); 41 $(this).find(".thumbnailvideo").hide(); 42 $(this).find(".mobilethumbnailvideo").hide(); 43 $(this).find("iframe").removeClass("hide"); 44 $(this).find("embed").removeClass("hide"); 45 46 var iframe = $(this).find("iframe"); 47 iframe.attr('src', iframe.attr('data-src')); 48 }); 49 50 //ëììë£ê¸°ì ëììí´ë¦ì-> ëìììëì¤íì¤ì ëì´ìì´ì¼í¨ 51 $(document).on('click', ".DisplayVideoWrap", function() { 52 $(this).find("img").addClass("hide"); 53 $(this).find(".thumbnailvideo").hide(); 54 $(this).find(".mobilethumbnailvideo").hide(); 55 $(this).find("iframe").removeClass("hide"); 56 $(this).find("embed").removeClass("hide"); 57 58 var iframe = $(this).find("iframe"); 59 iframe.attr('src', iframe.attr('data-src')); 60 }); 61 } 62 63 //18-05-03 gcns jhs add ì¥ë°êµ¬ë ê°ì 64 if(cartVersion >= 3){ 65 if (typeof gl_operation_type != 'undefined' && gl_operation_type == 'light') { // ë°ìíì¤í¨ 66 // ì ì²´ ì í 67 $('.btn_select_all').attr('checked',true); 68 $("form#cart_form .btn_select_all").change(function() { 69 if($(this).is(":checked")){ 70 $("form#cart_form input[name='cart_option_seq[]']").each(function(){ 71 $(this).attr("checked",true); 72 }); 73 cnt = $("form#cart_form input[name='cart_option_seq[]']").length; 74 }else{ 75 $("form#cart_form input[name='cart_option_seq[]']").each(function(){ 76 $(this).removeAttr("checked"); 77 }); 78 } 79 }); 80 $("form#cart_form .btn_select_all").change(); 81 82 $('input[name*="cart_option_seq[]"]').live('click',function(){ 83 checkBoxCheck(); 84 setPriceInfoCheck(); 85 }); 86 } else if(gl_set_mode == 'mobile'){ // ì ì©ì¤í¨-모ë°ì¼ 87 // ì ì²´ ì í 88 $('.btn_select_all').attr('checked',true); 89 $("form#cart_form .btn_select_all").change(function() { 90 if($(this).is(":checked")){ 91 $("form#cart_form input[name='cart_option_seq[]']").each(function(){ 92 /** 93 * 20210408 : kjw 94 * ë°°ì¡ ê°ë¥ ìí ì¬ë¶ì ë°ë¥¸ í ë리 ìì ë³ê²½ë¡ì§ ì¶ê° 95 */ 96 var ship_possible_flag = $("input[name='ship_possible["+$(this).val()+"]']").val(); 97 $(this).attr("checked",true); 98 $(this).closest("div").addClass("ez-checkbox-on"); 99 if(ship_possible_flag == "N") { 100 $("#cart_goods_" + $(this).val()).css('outline','2px solid #F15F5F'); 101 } else { 102 $("#cart_goods_" + $(this).val()).css('outline','2px solid #769dff'); 103 } 104 }); 105 cnt = $("form#cart_form input[name='cart_option_seq[]']").length; 106 }else{ 107 $("form#cart_form input[name='cart_option_seq[]']").each(function(){ 108 $(this).removeAttr("checked"); 109 $(this).closest("div").removeClass("ez-checkbox-on"); 110 }); 111 112 $(".cart_goods").css('outline',''); 113 } 114 }); 115 $("form#cart_form .btn_select_all").change(); 116 117 $('input[name*="cart_option_seq[]"]').live('click',function(){ 118 checkBoxCheck(); 119 setPriceInfoCheck(); 120 }); 121 } else{ // ì ì©ì¤í¨-pc
122 $('.chk_select_all').attr('checked',true); 123 var chkSt = $('.chk_select_all').is(":checked"); 124 checked_all_order(chkSt); 125 //setPriceInfo(); 126 127 $('input[name*="cart_option_seq[]"]').live('click',function(){ 128 checkBoxCheck(); 129 setPriceInfoCheck(); 130 }); 131 } 132 } 133 //18-05-03 gcns jhs add ì¥ë°êµ¬ë ê°ì 134 135 }); 136 137 $(window).load(function() { 138 /* ì¤íì¼ì ì© */ 139 chk_small_goods_image(); 140 }); 141 142 String.prototype.replaceAll = function (str1,str2){ 143 var str = this; 144 var result = str.replace(eval("/"+str1+"/gi"),str2); 145 return result; 146 } 147 148 //íµê³ìë²ë¡ íµê³ë°ì´í° ì ë¬ ì¬ì©ìí¨ 149 function statistics_firstmall(act,goods_seq,order_seq,review_point) 150 { 151 return; 152 /* 153 var url = '/_firstmallplus/statistics'; 154 var allFormValues = "act="+act+"&goods_seq="+goods_seq; 155 if( order_seq ) allFormValues += "&order_seq="+order_seq; 156 if( review_point ) allFormValues += "&review_point="+review_point; 157 158 if(act == 'order' && !order_seq) return false; 159 if(act == 'review' && !review_point) return false; 160 if(!goods_seq) return false; 161 $.ajax({ 162 cache:false, 163 timeout:1000, 164 type:"POST", 165 url:url, 166 data:allFormValues, 167 error:function(){}, 168 success:function(response){} 169 }); 170 return true; 171 */ 172 } 173 174 // ì¬ìí ì§ê¸ ì¡°ê±´ ìì¸ 2015-05-14 pjm 175 $(".gift_log").bind('click', function(){ 176 $.ajax({ 177 type: "post", 178 url: "./gift_use_log", 179 data: "order_seq="+$(this).attr('order_seq')+"&item_seq="+$(this).attr('item_seq'), 180 success: function(result){ 181 if (result){ 182 $("#gift_use_lay").html(result); 183 //ì¬ìí ì´ë²¤í¸ ì ë³´ 184 openDialog(getAlert('mo023'), "gift_use_lay", {"width":"450","height":"250"}); 185 } 186 } 187 }); 188 }); 189 190 191 //문ìì´ ë°ì´í¸ ì²´í¬(utf-8ë ê°ë¥) 192 String.prototype.byteLength = function(mode){ 193 mode = (!mode) ? 'euc-kr' : mode; 194 text = this; 195 byte = 0; 196 switch(mode){ 197 case 'utf-8' : 198 for(byte=i=0;char=text.charCodeAt(i++);byte+=char>>11?3:char>>7?2:1); 199 break; 200 201 default : 202 for(byte=i=0;char=text.charCodeAt(i++);byte+=char>>7?2:1); 203 204 } 205 return byte 206 }; 207 208 209 /* 210 * form RSA ìí¸í íë¡ì¸ì¤ 211 * - form ë´ì fileì´ ìì ê²½ì° ê¸°ì¡´ íë¡ì¸ì¤ììë file ë°ì´í° ì ì¡ì ëìíì§ ììì. 212 * íì¸ë submit ìì¸ ì¬í 213 * - front script ë 벨ìì formì ìì±í í bodyì ì¶ê°íì§ ìê³ submit 214 * -> ì´ ê²½ì°ë https://www.w3.org/TR/html5/forms.html#constraints 4.10.22.3 를 ìë°íì¬ ì¼ë¶ ë¸ë¼ì°ì ìì submitì´ ë°ìíì§ ìì. 215 * - ajaxë iframeì íµí´ ìë¡ì´ íì´ì§ë¥¼ ìì±í í document.sslForm.submit() 를 íµí´ submit 216 * -> DOM ê°ì²´ë¡ submit í¸ì¶ê³¼ ëì¼ 217 * - ì¤í¬ë¦½í¸ í¸ì¶ê³¼ ë°ì¸ë©ì´ ì´ë£¨ì´ì§ê¸° ì $(document).ready() ì ëìì submit 218 */ 219 // RSA ì ì ë³ì ì ì¸ 220 var getPublicKeyUrl = ["/ssl/getRSAPublicKey","/RSA/ssl/getRSAPublicKey"]; 221 var handshakeUrl = ["/ssl/getRSAHandShake","/RSA/ssl/getRSAHandShake"]; 222 var arrCheckActions = ["/ssl/relayRsa?action=", "/RSA/ssl/setRSAReturnPost/"]; 223 var jcryptionReloadDelayTime = 500; // 0.5 ì´ í ë¤ì 리ë¡ë, ì§ì° ë°ì ì 1ì´ì© ì¦ê° 224 var sGlSessionKey = ''; 225 var sGlAction = ''; 226 227 // ëì ì¤í¬ë¦½í¸ í¸ì¶ 228 $.loadScript = function (url, callback) {$.ajax({url: url,dataType: 'script',success: callback,async: true});} 229 $(window).load(function(){ 230 // order_price_calculate 주문ì ê³ì° í¨ììì ssl íµì ì ì´ì©íê³ ìì§ ìê³ íì¬ íì´ì§ê° 주문ì ìì± íì´ì§ë¼ë©´ ssl_urlë¡ ì¹í 231 if( window.location.pathname.indexOf('/order/settle') > -1 232 && order_price_calculate.toString().indexOf("/common/ssl_action")==-1){ 233 order_price_calculate = function () { 234 var f = $("form#orderFrm"); 235 action = "/order/calculate?mode="+gl_mode; 236 // ssl ì ì©
237 $.ajax({ 238 async: false, 239 'url' : '/common/ssl_action', 240 'data' : {'action':action}, 241 'type' : 'get', 242 'dataType' : 'html', 243 'success' : function(res) { 244 action = res; 245 } 246 }); 247 f.attr("action",action); 248 f.attr("target","actionFrame"); 249 // jCryption ì¬ì ì© ì¤í¨ì orderFrm ì ssl ë§í¬ê° ì기ì js ìììì ì¬ì ì¸ 250 moduleJcryption.resetJcryptionSubmit(f[0]); 251 f.submit(); 252 }; 253 } 254 255 // jquery ë²ì ì´ 1.7 ì´í ì¼ê²½ì° ê´ë¦¬ììì ì¬ì©ì¤ì´ë¯ë¡ https ê°í를 ì ì¸íë¤. 256 if($().jquery >= "1.7"){ 257 $.loadScript("/app/javascript/plugin/jcryption/jquery.jcryption.3.1.0_custom.js", function(){ 258 initJcryption(); 259 }); 260 } 261 // ajax í¸ì¶ í ìë¡ ìì±ë formìë ì ì© 262 $(document).ajaxComplete(function() { 263 // 모ë í¼ ì리먼í¸ì ì´ë²¤í¸ë¥¼ ë°ì¸ë© íë¤ 264 $("body form").each(function (){ 265 var domEl = this; 266 moduleJcryption.convertJcryptionSubmit(domEl); 267 }); 268 }); 269 }); 270 // ìí¸í ì ì© ê¸°ë¥ ëª¨ëí 271 var moduleJcryption = { 272 // í¼ìì íë¡í ì½ì í¬í¨í host nameì ì»ëë¤. 273 getHostNameFromForm : function (formObj) { 274 var formActionUrl = formObj.attr("action"); 275 return moduleJcryption.getHostNameFromUrl(formActionUrl); 276 } 277 , getHostNameFromUrl : function (url){ 278 var arr = url.split("/"); 279 var result = arr[0]+"//"+arr[2]; 280 return result; 281 } 282 // SSL ì ì© í¼ì¸ì§ ì¬ë¶ íì¸ 283 , checkSSLForm : function (formObj){ 284 var formActionUrl = formObj.attr("action"); 285 if(formActionUrl){ 286 for(var i in arrCheckActions){ 287 if(formActionUrl.indexOf(arrCheckActions[i])>-1){ 288 return i; 289 } 290 } 291 } 292 return -1; 293 } 294 // ì´ë²¤í¸ê° ë°ì¸ë ë í¼ì¸ì§ íì¸ 295 , checkBindEventForm : function (formObj){ 296 var data = (formObj.data("jCryptionInit") === true); 297 if(data){ 298 return true; 299 } 300 return false; 301 } 302 // ì´ë²¤í¸ê° ì¹íë ë í¼ì¸ì§ íì¸ 303 , checkBindEventJcryptionForm : function (formObj){ 304 var data = (formObj.data("jCryptionAlready") === true); 305 if(data){ 306 return true; 307 } 308 return false; 309 } 310 // ìì±ì íì¸íë¤ 311 , getAttributes : function ( $node ) { 312 var attrs = {}; 313 $.each( $node[0].attributes, function ( index, attribute ) { 314 attrs[attribute.name] = attribute.value; 315 } ); 316 317 return attrs; 318 } 319 , destroyJcryptionSubmit : function(domEl){ 320 $(domEl).data("jCryptionInit",false); 321 $(domEl).data("jCryptionAlready",false); 322 $(domEl).off("submit"); 323 } 324 , resetJcryptionSubmit : function(domEl){ 325 moduleJcryption.destroyJcryptionSubmit(domEl); 326 moduleJcryption.convertJcryptionSubmit(domEl); 327 } 328 , convertJcryptionSubmit : function(domEl){ 329 // ì´ë¯¸ ì¹íë í¼ì ì¤ë³µ ì¹ííì§ ìì. 330 if(moduleJcryption.checkBindEventJcryptionForm($(domEl))){ 331 // console.log("already submit convert ", $(domEl)); 332 }else{ 333 // console.log("submit convert event binding!", $(domEl)); 334 $(domEl).data("jCryptionAlready",true); 335 // URL ì´ SSL ì ì© í¼ì¸ì§ íì¸ 336 // console.log($(domEl),$(domEl).attr("action"),moduleJcryption.checkSSLForm($(domEl))); 337 if(moduleJcryption.checkSSLForm($(domEl))>-1){ 338 // 기본 dom ê°ì²´ë¥¼ ì°ì ì¹íí í jquery ê°ì²´ submit ì´ë²¤í¸ ë°ì¸ë©. 339 // jqueryê°ì²´ ìë¸ë°ì´ ë°ìíë¤ë©´ preventDefault ë¡ ì¸í´ domê°ì²´ì ìë¸ë°ì ë°ìíì§ ìì. 340 domEl.submit = function (event){ 341 // console.log("DOM el submit"); 342 moduleJcryption.convertSubmit(domEl); 343 }; 344 // validate íë¬ê·¸ì¸ì´ ì ì©ëì´ ìì ì ë³ëì submithandle를 ì´ì©íë¯ë¡ jquery ê°ì²´ ë°ì¸ë© ì ì¸ 345 if(typeof $(domEl).data("validator") !== "undefined"){ 346 }else{ 347 $(domEl).on("submit", function(event){ 348 // console.log("jquery el submit"); 349 event.preventDefault(); 350 moduleJcryption.convertSubmit(domEl); 351 }); 352 } 353 } 354 } 355 } 356 // ì¸ì í¤ ì ì§ë¥¼ ìí action url ì¶ê° 357 , convertActionUrl : function ($formEl){ 358 // console.log("convertActionUrl!", $formEl); 359 var action = $formEl.attr("action"); 360 var sessionKey = $.jCryption.getAESSessionKey($formEl); 361 var actionDomain = moduleJcryption.getHostNameFromForm($formEl); 362 var domain = window.location.hostname; 363 if( domain.indexOf("m.") == 0 ){ 364 domain = domain.replace("m.",""); 365 } 366 if( actionDomain.indexOf(domain) == -1 && moduleJcryption.checkSSLForm($formEl) > -1 && action.indexOf(sessionKey) == -1 ){ 367 action = action + "/" + sessionKey; 368 } 369 370 // firstmall ssl ì¬ì©ì 371 var thisRegex = new RegExp('gabiafreemall'); 372 if( thisRegex.test(action) ){ 373 var aPath = action.split("/"); 374 sGlAction = aPath[6].replace("-", "+"); 375 sGlAction = sGlAction.replace("_", "/"); 376 sGlAction = window.atob(sGlAction); 377 action = sGlAction; 378 }else{ 379 sGlAction = ''; 380 } 381 $formEl.attr("action", action); 382 } 383 // ìí¸í ìë¸ë° ì²ë¦¬ 384 , convertSubmit : function(thisDom){ 385 var $formEl = $(thisDom); 386 // submit ì ì© í¼ì¸ì§ ì²´í¬ 387 if(moduleJcryption.checkBindEventForm($formEl)){ 388 // console.log("already!", $formEl); 389 moduleJcryption.convertActionUrl($formEl); 390 return true; 391 }else{ 392 // SSL ì ì©í¼ì¸ì§ ì²´í¬ 393 if(moduleJcryption.checkSSLForm($formEl)>-1){ 394 // ì¤í¬ë¦½í¸ê° ë¡ëëìëì§ ì²´í¬ 395 if(typeof $.jCryption === "function"){ 396 // rsa í¼ ìì
397 $(".rsaForm").remove(); 398 399 // ìí¸í ì ì© 400 var AESEncryptionKey = $.jCryption.getAESEncryptionKey($formEl); 401 // console.log(AESEncryptionKey); 402 var hostName = moduleJcryption.getHostNameFromForm($formEl); 403 404 var $submitElement = $formEl.find(":input:submit"); 405 var $encryptedElement = $("<input />",{ 406 type:'hidden', 407 name:'jCryption' 408 }); 409 410 // ìí¸í submit ì ì© form 411 var $submitRSAForm = $("<form class='rsaForm'/>"); 412 var formAttrs = moduleJcryption.getAttributes($formEl); 413 for (var i in formAttrs){ 414 if(i!="id" && i!="name"){ 415 $submitRSAForm.attr(i,formAttrs[i]); 416 } 417 } 418 var remakeHandshakeUrl = handshakeUrl[moduleJcryption.checkSSLForm($formEl)]; 419 if(moduleJcryption.checkSSLForm($formEl)!=0){ 420 remakeHandshakeUrl = remakeHandshakeUrl+"/"+$.jCryption.getAESSessionKey($submitRSAForm); 421 } 422 423 $.jCryption.authenticate( 424 AESEncryptionKey, 425 hostName+getPublicKeyUrl[moduleJcryption.checkSSLForm($formEl)], 426 hostName+remakeHandshakeUrl, 427 function(AESEncryptionKey) { 428 var toEncrypt = $formEl.serialize(); 429 // console.log(toEncrypt); 430 // console.log($formEl); 431 if ($submitElement.is(":submit")) { 432 toEncrypt = toEncrypt + "&" + $submitElement.attr("name") + "=" + $submitElement.val(); 433 } 434 $encryptedElement.val($.jCryption.encrypt(toEncrypt, AESEncryptionKey)); 435 // console.log($submitRSAForm.html()); 436 $submitRSAForm.append($encryptedElement); 437 $("body").append($submitRSAForm); 438 $submitRSAForm.data("jCryptionInit",true); 439 moduleJcryption.convertActionUrl($submitRSAForm); 440 if(sGlAction){ 441 var $encryptionKeyElement = $("<input />",{ 442 type:'hidden', 443 name:'encryptionKey', 444 value:AESEncryptionKey 445 }); 446 $submitRSAForm.append($encryptionKeyElement); 447 } 448 $submitRSAForm.submit(); 449 }, 450 function() { 451 // Authentication with AES Failed ... sending form without protection 452 confirm("Authentication with Server failed, are you sure you want to submit this form unencrypted?", function() { 453 $formEl.submit(); 454 }); 455 } 456 ); 457 }else{ 458 var delayTime = jcryptionReloadDelayTime; 459 console.log("íì ì¤í¬ë¦½í¸ê° ë¡ëëì§ ìììµëë¤. "+(delayTime/1000)+"ì´ í ë¤ì ìëí©ëë¤."); 460 setTimeout(function(){ 461 console.log($formEl,"리ë¡ë"+delayTime); 462 moduleJcryption.resetJcryptionSubmit(thisDom); 463 $formEl.submit(); 464 }, delayTime); 465 jcryptionReloadDelayTime += 1000; // 1ì´ì© ì¦ê° 466 // $formEl.submit(); 467 } 468 return false; 469 }else{ 470 return true; 471 } 472 } 473 } 474 }; 475 476 // ìí¸í ì ì© 477 var initJcryption = function(){ 478 // 모ë í¼ ì리먼í¸ì ì´ë²¤í¸ë¥¼ ë°ì¸ë© íë¤ 479 $("body form").each(function (){ 480 var domEl = this; 481 moduleJcryption.convertJcryptionSubmit(domEl); 482 }); 483 484 // ìì´ë ì²´í¬ì ê²½ì° SSL íµì ì´ ììì¼ë¯ë¡ ê°ì ë¡ ì ì© 485 function setupJoinMemberPageCheckId(){ 486 var url = location.href; 487 var tmp_url = url.split("?"); 488 var domain = moduleJcryption.getHostNameFromUrl(tmp_url[0]); 489 var sub_url = tmp_url[0].replace(domain,""); 490 491 // íìê°ì íì´ì§ ì¼ ê²½ì° 492 if(sub_url=="/member/register"){ 493 494 // íì¬ íìê°ì í¼ì action ì íµí´ ì ë£/ë¬´ë£ SSLì íì¸íë¤. 495 var registFrmAction = $("#registFrm").attr("action"); 496 var registFrmHost = moduleJcryption.getHostNameFromUrl(registFrmAction); 497 if(registFrmHost.indexOf("http")>-1){ 498 var sslSubUrlIndex = 0; 499 if(registFrmHost == "https://ssl.gabiafreemall.com"){ 500 sslSubUrlIndex = 1; 501 } 502 var idCheckFormUrl = registFrmHost+arrCheckActions[sslSubUrlIndex]; 503 504 var idCheckCallbackUrl = domain+"/member/"+"../member_process/id_chk"; 505 var encodeIdCheckCallbackUrl = Base64.encode(idCheckCallbackUrl); 506 encodeIdCheckCallbackUrl = encodeIdCheckCallbackUrl.replace(/[\+]/g,"-"); 507 encodeIdCheckCallbackUrl = encodeIdCheckCallbackUrl.replace(/[\/]/g,"_"); 508 var idCheckFormAction = idCheckFormUrl+encodeIdCheckCallbackUrl; 509 510 $("input[name='userid']").unbind("blur"); 511 $("input[name='userid']").blur(function() { 512 513 if($(this).val()){ 514 // rsa í¼ ìì 515 $("#idchkform").remove();
516 $(".rsaForm").remove(); 517 $formEl = $("<form id='idchkform' method='post' target='actionFrame' action='"+idCheckFormAction+"'/>"); 518 var idval = $("<input type='hidden' name='userid' value='"+$(this).val()+"'>"); 519 $formEl.append(idval); 520 $("body").append($formEl); 521 522 // ìí¸í ì ì© 523 var AESEncryptionKey = $.jCryption.getAESEncryptionKey($formEl); 524 // console.log(AESEncryptionKey); 525 var hostName = moduleJcryption.getHostNameFromForm($formEl); 526 527 var $submitElement = $formEl.find(":input:submit"); 528 var $encryptedElement = $("<input />",{ 529 type:'hidden', 530 name:'jCryption' 531 }); 532 533 // ìí¸í submit ì ì© form 534 var $submitRSAForm = $("<form class='rsaForm'/>"); 535 var formAttrs = moduleJcryption.getAttributes($formEl); 536 for (var i in formAttrs){ 537 if(i!="id" && i!="name"){ 538 $submitRSAForm.attr(i,formAttrs[i]); 539 } 540 } 541 var remakeHandshakeUrl = handshakeUrl[moduleJcryption.checkSSLForm($formEl)]; 542 if(moduleJcryption.checkSSLForm($formEl)!=0){ 543 remakeHandshakeUrl = remakeHandshakeUrl+"/"+$.jCryption.getAESSessionKey($submitRSAForm); 544 } 545 546 $.jCryption.authenticate( 547 AESEncryptionKey, 548 hostName+getPublicKeyUrl[moduleJcryption.checkSSLForm($formEl)], 549 hostName+remakeHandshakeUrl, 550 function(AESEncryptionKey) { 551 var toEncrypt = $formEl.serialize(); 552 // console.log(toEncrypt); 553 // console.log($formEl); 554 if ($submitElement.is(":submit")) { 555 toEncrypt = toEncrypt + "&" + $submitElement.attr("name") + "=" + $submitElement.val(); 556 } 557 $encryptedElement.val($.jCryption.encrypt(toEncrypt, AESEncryptionKey)); 558 // console.log($submitRSAForm); 559 $submitRSAForm.append($encryptedElement); 560 $("body").append($submitRSAForm); 561 $submitRSAForm.data("jCryptionInit",true); 562 moduleJcryption.convertActionUrl($submitRSAForm); 563 $submitRSAForm.submit(); 564 }, 565 function() { 566 // Authentication with AES Failed ... sending form without protection 567 confirm("Authentication with Server failed, are you sure you want to submit this form unencrypted?", function() { 568 $formEl.submit(); 569 }); 570 } 571 ); 572 573 } 574 }); 575 } 576 } 577 } 578 setupJoinMemberPageCheckId(); 579 } 580 function callbackIdChk(json){ 581 var response = $.parseJSON(json); 582 var text = response.return_result; 583 var userid = response.userid; 584 $("#id_info").html(text); 585 $("input[name='userid']").val(userid); 586 } 587 588 // í¬ë¡ì¤ëë©ì¸ ì© iframe 리ì¬ì´ì§ 589 $(document).ready(function(){ 590 // console.log($("iframe").height()); 591 var message_frame_resize = function (event) { 592 if (event.origin !== "https://"+window.location.hostname) { 593 return; 594 } 595 var iframe = document.getElementById(event.data.id); 596 if (iframe) { 597 iframe.style.height = event.data.height + "px"; 598 } 599 }; 600 if (window.addEventListener) { 601 window.addEventListener("message", message_frame_resize, false); 602 } else if (window.attachEvent) { 603 window.attachEvent("onmessage", message_frame_resize); 604 } 605 }); 606 607 608 609// ë¹ë°ë²í¸ ê·ì¹ ì²´í¬ 610function init_check_password_validation(obj){ 611 obj.off("focusout"); 612 obj.on("focusout", function(){ 613 call_check_password_validation($(this)); 614 }); 615} 616 617function init_check_password_validation_data(data, password){ 618 619 var jsonObj = []; 620 621 jsonObj.push({ 622 name: 'password', 623 value: password 624 }); 625 626 for(i=0;i<data.length; i++){ 627 628 var formEl = data[i].name; 629 630 if(formEl.match(/^(mtype)/)){ 631 jsonObj.push({ 632 name: 'mtype', 633 value: data[i].value 634 }); 635 }else if(formEl.match(/^(member_|info_|provider_|manager_)*(seq)/)){ 636 jsonObj.push({ 637 name: 'seq', 638 value: data[i].value 639 }); 640 } 641 else if(formEl.match(/^(?!.*cell).*(phone)/) && formEl != 'mphone' && formEl != 'info_phone'){ // ê´ë¦¬ì&ì ì ì¬ ì ì¸ 642 if(formEl.match(/\W/)){ 643 jsonObj.push({ 644 name: 'phone[]', 645 value: data[i].value 646 }); 647 }else { 648 jsonObj.push({ 649 name: 'phone', 650 value: data[i].value 651 }); 652 } 653 }else if(formEl.match(/^\w*(cellphone)/) && formEl != 'mcellphone'){ // ê´ë¦¬ì&ì ì ì¬ ì ì¸ 654 if(formEl.match(/\W/)){ 655 jsonObj.push({ 656 name: 'cellphone[]', 657 value: data[i].value 658 }); 659 }else { 660 jsonObj.push({ 661 name: 'cellphone', 662 value: data[i].value 663 }); 664 } 665 }else if(formEl.match(/^\w*(birthday)/)){ 666 jsonObj.push({ 667 name: 'birthday', 668 value: data[i].value 669 }); 670 } 671 } 672 673 return jsonObj; 674} 675 676function call_check_password_validation(obj){ 677 var action = "/common/check_password_validation"; 678 679 var password = obj.val(); 680 var form = obj.closest("form"); 681 if (form.length == 0) { 682 form = $("form[name=registFrm]"); 683 } 684 685 // ì¤ëª ì¸ì¦ì´ë 기í ì¬ì ì ìí´ ë°ì´í°ê° disabled ëì´ìì ê²½ì° 686 // ì ìì ì¼ë¡ ë°ì´í°ë¥¼ serialize íì§ ëª» íë¯ë¡ disabled ìì±ì ìì ì ê±° 687 form.find(":disabled").each(function () { 688 $(this).attr("disabled", false); 689 // ì ê±° í ë¤ì ìë³µì ìí´ ìì ë°ì´í° ì§ì 690 $(this).attr("data-passcheck-disabled", '1'); 691 }); 692 693 // í¼ ë°ì´í° ì ì¥ 694 var data = form.serializeArray(); 695 696 // ë¤ì disabled ì²ë¦¬ 697 form.find("[data-passcheck-disabled]").each(function () { 698 $(this).attr("disabled", true); 699 $(this).removeAttr("data-passcheck-disabled"); 700 }); 701 702 jsonObj = init_check_password_validation_data(data, password); 703 if(typeof password !== 'undefined' && password != ''){ 704 $.ajax({ 705 type: "post", 706 async: false, 707 url: action, 708 data: jsonObj, 709 success: function(result){
710 try{ 711 result = JSON.parse(result); 712 draw_check_password_validation(obj, result.alert_code); 713 }catch(e){ 714 init_draw_check_password_validation(obj); 715 obj.parent().find(".password_alert_msg").html(result); 716 } 717 } 718 }); 719 } 720} 721function draw_check_password_validation(obj, alert_code){ 722 init_draw_check_password_validation(obj); 723 var msg = ''; 724 if(alert_code != ''){ 725 msg = getAlert(alert_code); 726 } 727 if(msg){ 728 obj.parent().find(".password_alert_msg").html(msg); 729 }else{ 730 obj.parent().find(".password_alert_msg").remove(); 731 } 732} 733function init_draw_check_password_validation(obj){ 734 if(obj.parent().find(".password_alert_msg").length == 0){ 735 var password_alert_msg = $('<div class="password_alert_msg" style="color:red;"></div>'); 736 obj.parent().append(password_alert_msg); 737 } 738} 739 740 741$(window).load(function() { 742 $(".class_check_password_validation").each(function(){ 743 init_check_password_validation($(this)); 744 }); 745}); 746 747 748// $(document).ready(function(){ 749// $(".btn-location").click(function(){ 750// event.preventDefault(); 751// $(".area_nav .tabs").html(''); 752// $(".link_area").trigger('click'); 753// 754// var category_num = $(this).data("categorynum") ? $(this).data("categorynum") : 0; 755// var theme_num = $(this).data("theme") ? $(this).data("theme") : 0; 756// 757// $.ajax({ 758// type : "POST", // HTTP method type(GET, POST) íìì´ë¤. 759// url : "/service/location_list_", // 컨í¸ë¡¤ë¬ìì ë기ì¤ì¸ URL 주ìì´ë¤. 760// data : { 761// category_num : $(this).data("categorynum") ? $(this).data("categorynum") : 0, 762// }, 763// success : function(res){ 764// console.log(theme_num); 765// location_callback(res, category_num, null, theme_num); 766// loadingStop($("#ajaxLoadingLayer")); 767// }, 768// error : function(XMLHttpRequest, textStatus, errorThrown){ // ë¹ë기 íµì ì´ ì¤í¨í ê²½ì° error ì½ë°±ì¼ë¡ ë¤ì´ìµëë¤. 769// alert("ì§ìì 보를 ë¶ë¬ì¬ ì ììµëë¤. ê´ë¦¬ììê² ë¬¸ì íì¸ì"); 770// } 771// }); 772// }); 773// });
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.