1var dimodeLib = { 2 3 /* 4 ì´ ê°ì²´ë ì ì ê°ì²´ë¡ 모ë ê³³ìì ì ê·¼ì´ ê°ë¥í©ëë¤. 5 */ 6 7 replaceAll: function (str, searchStr, replaceStr) { 8 9 /* 10 ì´ ë©ìëë ì 체를 ë³ê²½(replace)í©ëë¤. 11 */ 12 13 if (str && typeof str === 'string') 14 return str.split(searchStr).join(replaceStr); 15 16 return ''; 17 }, 18 19 log: function (message) { 20 21 /* 22 ì´ ë©ìëë ë¡ê·¸ë¥¼ íìí©ëë¤. 23 */ 24 25 try { 26 console.log(message); 27 } 28 catch (e) { 29 alert(message); 30 } 31 }, 32 33 isNullOrEmpty: function (paramValue) { 34 35 /* 36 ì´ ë©ìëë ê°ì´ ë¹ ê° í¹ì null í¹ì undefined ì¸ì§ ì²´í¬í©ëë¤. 37 */ 38 39 var returnValue = null; 40 41 paramValue = $.trim(paramValue); 42 43 if (paramValue == '' || paramValue == null || paramValue == 'null' || paramValue == undefined) { 44 returnValue = true; 45 } 46 else { 47 returnValue = false; 48 } 49 50 return returnValue; 51 }, 52 53 // ì´ë¯¸ì§ íì¥ì ë°°ì´ 54 imgArray: ['jpg', 'png', 'gif', 'jpeg'], 55 56 base64_encode: function (str) { 57 58 /* 59 ì´ ë©ìëë base64 ë¡ ìí¸í(encode)í©ëë¤. 60 */ 61 62 return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, function (match, p1) { 63 return String.fromCharCode('0x' + p1); 64 })); 65 }, 66 67 base64_decode: function (str) { 68 69 /* 70 ì´ ë©ìëë base64 ë¡ ë³µí¸í(decode)í©ëë¤. 71 */ 72 73 return decodeURIComponent(Array.prototype.map.call(atob(str), function (c) { 74 return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2); 75 }).join('')); 76 }, 77 78 htmlEncode: function (value) { 79 80 /* 81 ì´ ë©ìëë í ì¤í¸ë¥¼ htmlë¡ ìí¸í(encode)í©ëë¤. 82 */ 83 84 return $('<div/>').text(value).html(); 85 }, 86 htmlDecode: function (value) { 87 88 /* 89 ì´ ë©ìëë í ì¤í¸ë¥¼ htmlë¡ ë³µí¸í(decode)í©ëë¤. 90 */ 91 92 return $('<div/>').html(value).text(); 93 }, 94 95 removeParameters: function (url) { 96 97 /* 98 ì´ ë©ìëë 주ì(url)ì 매ê°ë³ì를 ì ê±°í©ëë¤. 99 */ 100 101 url = url.split('?'); 102 url = url[0]; 103 return url; 104 }, 105 106 interval: null, 107 timer: {}, 108 timeOut: {}, 109 110 processPop: function (type) { 111 112 /* 113 ì´ ë©ìëë ë ì´ì´ë¡ Process ë´ì©ì ëìëë¤. 114 */ 115 116 if (type === 'show') { 117 clearTimeout(dimodeLib.timeOut['processPop']); 118 119 var popHtml = ''; 120 if ($('body').find('#processPop').length < 1) 121 $('body').prepend('<div id="processPop"><div id="processPopWrapper"></div></div>') 122 123 popHtml = '<div class="message">'; 124 125 for (var i = 0; i < 5; i++) { 126 popHtml += '<span></span>'; 127 } 128 129 popHtml += '</div>'; 130 popHtml += '<div class="text">ë¡ë© ì¤ì ëë¤.</div>'; 131 132 var i = 0; 133 $('#processPop').stop().css('opacity', 1); 134 $('#processPop .message span').removeClass('transition'); 135 clearInterval(dimodeLib.interval); 136 $('#processPop > #processPopWrapper').html(popHtml); 137 $('#processPop').show(); 138 139 dimodeLib.interval = setInterval(function () { 140 if ($('#processPop .message span').length + 1 == i) 141 i = 0; 142 143 $('#processPop .message span:eq(' + i + ')').toggleClass('transition'); 144 i += 1; 145 }, 70); 146 147 //setTimeout(function () { 148 // if ($('#processPop').is(':visible')) 149 // $('#processPop').fadeOut(210); 150 //}, 7600); 151 } 152 else if (type == 'hide') { 153 if ($('#processPop').length) { 154 clearTimeout(dimodeLib.timeOut['processPop']); 155 dimodeLib.timeOut['processPop'] = setTimeout(function () { 156 $('#processPop').stop().fadeOut(420, function () { 157 clearInterval(dimodeLib.interval); 158 }); 159 }, 210); 160 } 161 } 162 }, 163 164 bandMessage: function (type, message, time) { 165 166 /* 167 ì´ ë©ìëë ë ì´ì´ë¡ Band ë©ìì§ë¥¼ ëìëë¤. 168 */ 169 170 clearTimeout(dimodeLib.timeOut['bandMessage']); 171 172 var messageHtml = ''; 173 if ($('body').find('#bandMessage').length < 1) 174 $('body').prepend('<div id="bandMessage"><div id="bandMessageWrapper" class="container"></div></div>') 175 176 messageHtml = '<div class="message text-center alert alert-' + type + '">'; 177 messageHtml += '<a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>'; 178 messageHtml += message; 179 messageHtml += '</div>'; 180 181 $('#bandMessage > #bandMessageWrapper').html(messageHtml); 182 $('#bandMessage .message').hide().stop().fadeIn(300); 183 184 if (time === undefined) 185 time = 3000; 186 187 if (time !== 0) { 188 dimodeLib.timeOut['bandMessage'] = setTimeout(function () { 189 $('#bandMessage .message').stop().fadeOut(720); 190 }, time); 191 } 192 }, 193
194 bandMessageCookie: function (type, text, time) { 195 196 /* 197 ì´ ë©ìëë ë ì´ì´ë¡ Band ë©ìì§ë¥¼ ëìëë¤. 198 ì¿ í¤ë¡ ì ì¥íì¬ ì¤í í ë°ë¡ ë¤ì íì´ì§ìì ì¤íí©ëë¤. 199 */ 200 201 var args = { 202 type: type, 203 text: text, 204 time: time 205 }; 206 207 $.cookie('bandMessage', JSON.stringify(args), { expires: 1, path: '/' }); 208 }, 209 210 addLoadEvent: function (func) { 211 var oldonload = window.onload; 212 if (typeof window.onload != 'function') { 213 window.onload = func; 214 } 215 else { 216 window.onload = function () { 217 oldonload(); 218 func(); 219 } 220 } 221 }, 222 223 focusToEnd: function (inputSelector) { 224 225 /* 226 ì´ ë©ìëë input 맨 ëì í¬ì»¤ì¤ ë§ì¶¥ëë¤. 227 */ 228 229 if (inputSelector != undefined) { 230 var searchInput = $(inputSelector); 231 if (searchInput.val() != undefined) { 232 var strLength = searchInput.val().length * 2; 233 234 searchInput.focus(); 235 searchInput[0].setSelectionRange(strLength, strLength); 236 } 237 } 238 }, 239 240 isEmailValidate: function (paramEmail) { 241 242 /* 243 ì´ ë©ìëë ì´ë©ì¼ íìì´ ë§ëì§ ì²´í¬í©ëë¤. 244 */ 245 246 var regex = /^([a-zA-Z0-9_.+-])+\@(([a-zA-Z0-9-])+\.)+([a-zA-Z0-9]{2,4})+$/; 247 return regex.test(paramEmail); 248 }, 249 250 removeElements: function (paramText, paramSelector) { 251 252 /* 253 ì´ ë©ìëë í¹ì ìì(element)를 ì ê±°í©ëë¤. 254 */ 255 256 var wrappedElement = $("<div>" + paramText + "</div>"); 257 258 if (paramSelector == "all") { 259 return wrappedElement.text(); 260 } 261 else { 262 wrappedElement.find(paramSelector).remove(); 263 return wrappedElement.html(); 264 } 265 }, 266 267 googleMapInsert: function (paramMapData, paramTarget) { 268 /* 269 ì´ ë©ìëë 구ê¸ë§µì ì ë ¥í©ëë¤. 270 */ 271 272 if (!dimodeLib.isNullOrEmpty(paramMapData.mapAddr)) { 273 // ìëì ê²½ë ê° ëª¨ë ìëì§ ì²´í¬ 274 if (paramMapData.mapLat != 0 && paramMapData.mapLng != 0) { 275 276 // ìëì ê²½ë ì¤ì 277 var myLatlng = new google.maps.LatLng(paramMapData.mapLat, paramMapData.mapLng); 278 279 // ì§ë ìµì 280 var mapOptions = { 281 zoom: paramMapData.mapZoom, // íëí ìì¹ 282 center: myLatlng, // ìë ê²½ë ì ë ¥ 283 mapTypeId: google.maps.MapTypeId.ROADMAP, 284 disableDoubleClickZoom: true, 285 scrollwheel: false 286 } 287 288 // ì§ë í¬ê¸° ì¤ì 289 paramTarget.css('width', paramMapData.mapWidth).css('height', paramMapData.mapHeight); 290 291 // ì§ë ì ì© 292 var mark = function (map) { 293 // ë§ì»¤(íìì ) 294 var marker = new google.maps.Marker({ 295 position: myLatlng, 296 map: map 297 }); 298 299 // ë§ì»¤(íìì ) ë±ì¥ 300 var infowindow = new google.maps.InfoWindow(); 301 302 // ë§íì ì¬ì©í ê²½ì° 303 /* 304 var markerTitle = ""; // ë§íì íì´í 305 var markerMaxWidth = ; // ë§íì ìµë í¬í¤ 306 var contentString = "";// ë§íì ë´ì© 307 308 google.maps.event.addListener(marker, 'click', function () { 309 infowindow.open(map, marker); 310 }); 311 312 var infowindow = new google.maps.InfoWindow( 313 { 314 content: contentString, 315 maxWidth: markerMaxWidth 316 } 317 );*/ 318 }; 319 320 mark(new google.maps.Map(paramTarget[0], mapOptions)); 321 322 //if (paramTarget.substring(0, 1) === '.') { 323 // var target = paramTarget.replace('.', ''); 324 // var classes = document.getElementsByClassName(target); 325 326 // if (classes.length) { 327 // mark(new google.maps.Map(classes[0], mapOptions)); 328 // } 329 // else { 330 // return false; 331 // } 332 //} 333 //else { 334 // var target = paramTarget.replace('#', ''); 335 // var id = document.getElementById(target); 336 // if (!dimodeLib.isNullOrEmpty(id)) 337 // mark(new google.maps.Map(id, mapOptions)); 338 // else 339 // return false; 340 //} 341 } 342 } 343 }, 344 345 //WayM KakaoMap S
346 kakaoMapInsert: function (paramMapData, paramTarget) { 347 if (!dimodeLib.isNullOrEmpty(paramMapData.mapAddr)) { 348 // ìëì ê²½ë ê° ëª¨ë ìëì§ ì²´í¬ 349 if (paramMapData.mapLat != 0 && paramMapData.mapLng != 0) { 350 // ì§ë í¬ê¸° ì¤ì 351 paramTarget.css('width', paramMapData.mapWidth).css('height', paramMapData.mapHeight); 352 353 //var targetId = paramTarget.attr('id').replace(new RegExp('#', 'g'), '<br />'); 354 355 var mapContainer = paramTarget[0], // ì§ë를 íìí div 356 mapOption = { 357 center: new kakao.maps.LatLng(paramMapData.mapLat, paramMapData.mapLng), // ì§ëì ì¤ì¬ì¢í 358 level: paramMapData.mapZoom * -1// ì§ëì íë ë 벨 359 }; 360 361 var map = new kakao.maps.Map(mapContainer, mapOption); // ì§ë를 ìì±í©ëë¤ 362 363 var zoomControl = new kakao.maps.ZoomControl(); 364 map.addControl(zoomControl, kakao.maps.ControlPosition.RIGHT); 365 366 // ë§ì»¤ê° íìë ìì¹ì ëë¤ 367 var markerPosition = new kakao.maps.LatLng(paramMapData.mapLat, paramMapData.mapLng); 368 369 // ë§ì»¤ë¥¼ ìì±í©ëë¤ 370 var marker = new kakao.maps.Marker({ 371 position: markerPosition 372 }); 373 374 // ë§ì»¤ê° ì§ë ìì íìëëë¡ ì¤ì í©ëë¤ 375 marker.setMap(map); 376 } 377 } 378 }, 379 //WayM KakaoMap E 380 381 382 getColors: function (paramColorType, paramIndex) { 383 384 /* 385 ì´ ë©ìëë ììì ì¡°í©ì ê°ì ¸ìµëë¤. 386 */ 387 388 var colorArray = new Array(); 389 390 switch (paramColorType) { 391 case 'rob': 392 colorArray = ['#296FAB', '#D80027', '#FF8A00']; 393 break; 394 case 'orange': 395 colorArray = ['#EB5606', '#FE8F02', '#FFA800']; 396 break; 397 case 'blue': 398 colorArray = ['#1a87cf', '#0088cc', '#276b8c', '#1368a6', '#1570a6', '#8183c3']; 399 break; 400 case 'rainbow': 401 colorArray = ['#d90f42', '#fb9b00', '#1dc4ac', '#0096cc', '#003c9e', '#00137a', '#6e1a1f']; 402 break; 403 } 404 405 var i = paramIndex % (colorArray.length); 406 407 return colorArray[i]; 408 }, 409 410 addArgument: function (paramSearch, paramArgKey, paramArgValue) { 411 412 /* 413 ì´ ë©ìëë URLì 매ê°ë³ì를 ì¶ê°í©ëë¤. 414 ì´ë¯¸ ê°ì´ ìì ê²½ì° ìì í©ëë¤. 415 */ 416 417 var search = paramSearch; 418 var searchArray = []; 419 420 if (!dimodeLib.isNullOrEmpty(search)) { 421 search = search.replace('?', ''); 422 searchArray = search.split('&'); 423 424 for (var i in searchArray) { 425 var key = searchArray[i].split('=')[0]; 426 if (key == paramArgKey) 427 searchArray.splice(i, 1); 428 } 429 } 430 431 searchArray.push(paramArgKey + '=' + paramArgValue); 432 return '?' + searchArray.join('&'); 433 }, 434 435 removeArgument: function (paramSearch, paramArgKey) { 436 437 /* 438 ì´ ë©ìëë URLì 매ê°ë³ì를 ìì í©ëë¤. 439 */ 440 441 var search = paramSearch; 442 var searchArray = []; 443 444 if (!dimodeLib.isNullOrEmpty(search)) { 445 search = search.replace('?', ''); 446 searchArray = search.split('&'); 447 448 for (var i in searchArray) { 449 var key = searchArray[i].split('=')[0]; 450 451 if (key == paramArgKey) 452 searchArray.splice(i, 1); 453 } 454 } 455 456 if (searchArray.length) 457 return '?' + searchArray.join('&'); 458 else 459 return ''; 460 }, 461 462 isValidated: function (paramSelector) { 463 464 /* 465 ì´ ë©ìëë ì í¨ì± ê²ì¬ë¥¼ í©ëë¤. 466 */ 467 468 var required = $(paramSelector).find('.required'); 469 470 for (var i = 0; i < required.length; i++) { 471 var eachElem = required.eq(i); 472 var value = ''; 473 var tagName = eachElem[0].tagName; 474 475 switch (tagName) { 476 case 'SELECT': 477 value = eachElem.find('option:selected').val(); 478 break; 479 480 case 'INPUT': 481 switch (eachElem.attr('type')) { 482 case 'radio': 483 var name = eachElem.attr('name'); 484 value = $(paramSelector).find('input.required[type=radio][name=' + name + ']:checked').val(); 485 break; 486 case 'checkbox': 487 var name = eachElem.attr('name'); 488 value = $(paramSelector).find('input.required[type=c
488heckbox][name=' + name + ']:checked').val(); 489 break; 490 default: 491 value = eachElem.val(); 492 break; 493 } 494 break; 495 496 default: 497 value = eachElem.val(); 498 break; 499 } 500 501 if (dimodeLib.isNullOrEmpty(value)) { 502 var alertMessage = eachElem.attr('data-alert'); 503 504 if (!dimodeLib.isNullOrEmpty(alertMessage)) 505 dimodeLib.bandMessage('warning', alertMessage); 506 else 507 dimodeLib.bandMessage('warning', 'íìí목ì ì ë ¥í´ì£¼ì¸ì.'); 508 509 eachElem.focus(); 510 return false; 511 } 512 else if (tagName == 'INPUT') { 513 var compareLength = value.length; 514 var maxLength = eachElem.attr('data-max-length'); 515 var minLength = eachElem.attr('data-min-length'); 516 var type = eachElem.attr('type'); 517 var check = eachElem.attr('data-check'); 518 var checkFor = eachElem.attr('data-check-for'); 519 520 switch (type) { 521 case 'email': 522 if (!dimodeLib.isEmailValidate(value)) { 523 dimodeLib.bandMessage('warning', 'ì¬ë°ë¥¸ ì´ë©ì¼ íìì´ ìëëë¤.'); 524 eachElem.focus(); 525 return false; 526 } 527 break; 528 } 529 530 if (!dimodeLib.isNullOrEmpty(check)) { 531 var checkResult = ''; 532 533 switch (check) { 534 case 'duplicated': 535 switch (checkFor) { 536 case 'id': 537 $.ajax({
538 url: '/Account/IdCheck/', 539 type: 'POST', 540 async: false, 541 data: 'paramId=' + value, 542 success: function (response) { 543 checkResult = response; 544 }, 545 error: function () { 546 checkResult = 'error'; 547 } 548 }) 549 break; 550 551 case 'email': 552 $.ajax({ 553 url: '/Account/EmailCheck/', 554 type: 'POST', 555 async: false, 556 data: 'paramEmail=' + value, 557 success: function (response) { 558 checkResult = response; 559 }, 560 error: function () { 561 checkResult = 'error'; 562 } 563 }) 564 break; 565 } 566 break; 567 } 568 569 if (checkResult == 'error') { 570 dimodeLib.bandMessage('danger', 'ì¤ë¥ê° ììµëë¤.', 0); 571 eachElem.focus(); 572 return false; 573 } 574 else if (checkResult !== "validated") { 575 switch (checkFor) { 576 case 'email': 577 dimodeLib.bandMessage('warning', 'ì¤ë³µ ì´ë©ì¼ì ëë¤. ë¤ë¥¸ ì´ë©ì¼ 주ì를 ì ë ¥í´ì£¼ì¸ì.'); 578 break; 579 580 case 'id': 581 dimodeLib.bandMessage('warning', 'ì¤ë³µ ìì´ëì ëë¤. ë¤ë¥¸ ìì´ë를 ì ë ¥í´ì£¼ì¸ì.'); 582 break; 583 } 584 eachElem.focus(); 585 return false; 586 } 587 } 588 589 if (compareLength > maxLength) { 590 dimodeLib.bandMessage('warning', 'ìµë ' + maxLength + 'ìê¹ì§ ì ë ¥í ì ììµëë¤(íì¬ : ' + compareLength + 'ì).'); 591 eachElem.focus(); 592 return false; 593 } 594 else if (compareLength < minLength) { 595 dimodeLib.bandMessage('warning', 'ìµì ' + minLength + 'ìë ì ë ¥í´ì¼ í©ëë¤(íì¬ : ' + compareLength + 'ì).'); 596 eachElem.focus(); 597 return false; 598 } 599 } 600 } 601 602 return true; 603 }, 604 605 dieTimeout: null, 606 607 die: function (paramTarget) { 608 paramTarget.addClass('hide die'); 609 610 dimodeLib.dieTimeout = setTimeout(function () { 611 if (paramTarget.hasClass('hide')) 612 paramTarget.remove(); 613 }, 5720); 614 615 dimodeLib.bandMessage('success', 'ìì íììµëë¤. <a class="revival" onclick="dimodeLib.revival()">ëì´ë¦¬ê¸°</a>'); 616 }, 617 618 revival: function () { 619 clearTimeout(dimodeLib.dieTimeout); 620 $('.die').removeClass('hide'); 621 $('.die').removeClass('die'); 622 dimodeLib.bandMessage('success', '복구íììµëë¤.'); 623 }, 624 625 deviceCheck: { 626 Android: navigator.userAgent.match(/Android/i), 627 BlackBerry: navigator.userAgent.match(/BlackBerry/i), 628 iOS: navigator.userAgent.match(/iPhone|iPad|iPod/i), 629 Opera: navigator.userAgent.match(/Opera Mini/i), 630 Windows: navigator.userAgent.match(/IEMobile/i), 631 }, 632 633 rgb2hex: function (rgb) { 634 if (rgb.search("rgb") == -1) { 635 return rgb; 636 } 637 else { 638 rgb = rgb.match(/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*(\d+))?\)$/); 639 function hex(x) { 640 return ("0" + parseInt(x).toString(16)).slice(-2); 641 } 642 643 return "#" + hex(rgb[1]) + hex(rgb[2]) + hex(rgb[3]); 644 } 645 }, 646 647 getRandomNumber: function (startNum, endNum) { 648 endNum += 1; 649 return Math.floor(Math.random() * (startNum - endNum)) + endNum; 650 }, 651 652 modal: { 653 checkHasMore: function (paramApplySelector, paramCount1, paramCount2) { 654 if (paramCount1 === 0 || paramCount2 === undefined) 655 $(paramApplySelector + ' .more-area').hide(); 656 else if (Number(paramCount1) === Number(paramCount2)) 657 $(paramApplySelector + ' .more-area').hide(); 658 else 659 $(paramApplySelector + ' .more-area').show(); 660 }, 661
662 drawLine: function (paramModalSelector, time) { 663 setTimeout(function () { 664 var leftArea = $(paramModalSelector).find('.left-area'); 665 var rightArea = $(paramModalSelector).find('.right-area'); 666 667 if (leftArea.height() > rightArea.height()) 668 leftArea.css('border-right', '1px solid #e5e5e5') 669 else 670 rightArea.css('border-left', '1px solid #e5e5e5') 671 }, time); 672 }, 673 674 applyToElem: function (paramModalSelector, paramObj) { 675 $(paramModalSelector + ' .style-input').each(function () { 676 var attr = $(this).attr('data-attr'); 677 var measure = $(this).attr('data-measure'); 678 var value = $(this).val(); 679 680 if (!dimodeLib.isNullOrEmpty(value) && value.indexOf('%') === -1) { 681 switch (measure) { 682 case 'px': 683 value = value.replace('px', '') + 'px'; 684 break; 685 case 'percent': 686 value = value.replace('%', '') + '%'; 687 break; 688 } 689 } 690 691 paramObj.css(attr, value); 692 }); 693 }, 694 695 applyToModal: function (paramApplyTarget, paramElem) { 696 var style = paramElem.attr('style'); 697 var styleObj = {}; 698 699 if (style !== undefined) { 700 var styles = style.split(';'); 701 for (var i in styles) { 702 if (!dimodeLib.isNullOrEmpty(styles[i])) { 703 var styleArr = styles[i].split(':'); 704 if (styleArr.length === 2) { 705 var key = styleArr[0].trim(); 706 var value = styleArr[1].replace('px', '').trim(); 707 styleObj[key] = value; 708 } 709 } 710 } 711 } 712 713 if (styleObj['width'] == undefined) 714 styleObj['width'] = ''; 715 716 if (styleObj['height'] == undefined)
717 styleObj['height'] = ''; 718 719 $(paramApplyTarget + ' .style-input').each(function () { 720 var attr = $(this).attr('data-attr'); 721 722 if (!dimodeLib.isNullOrEmpty(attr)) { 723 var value = '' 724 725 if (styleObj[attr] != undefined) { 726 value = styleObj[attr]; 727 } 728 else { 729 value = paramElem.css(attr); 730 if (!dimodeLib.isNullOrEmpty(value)) { 731 if (value.indexOf('rgb') != '-1') { 732 if (value == 'rgba(0, 0, 0, 0)') { 733 value = ''; 734 } 735 else { 736 var rgbaArr = (dimodeLib.replaceAll(value, ', ', ',').split(' ')); 737 if (rgbaArr.length > 1) 738 value = rgbaArr[0]; 739 740 value = dimodeLib.rgb2hex(value); 741 } 742 } 743 else if (attr == 'border-style') { 744 var valueArr = value.split(' '); 745 746 if (valueArr.length > 1) { 747 for (var i in valueArr) { 748 if (valueArr[i] != 'none') { 749 value = valueArr[i]; 750 break; 751 } 752 } 753 } 754 } 755 756 value = value.replace('px', ''); 757 } 758 } 759 760 $(this).val(value); 761 } 762 }); 763 } 764 765 /* 766 //WayM 2024-09-12 S 767 applyToModal: function (paramApplyTarget, paramElem) { 768 var style = paramElem.attr('style'); 769 var styleObj = {}; 770 771 if (style !== undefined) { 772 var styles = style.split(';'); 773 for (var i in styles) { 774 if (!dimodeLib.isNullOrEmpty(styles[i])) { 775 var styleArr = styles[i].split(':'); 776 if (styleArr.length >= 2) { 777 var key = styleArr[0].trim(); 778 var valueRest = ''; 779 for (var j = 1; j < styleArr.length; j++) { 780 valueRest += styleArr[j].trim(); 781 } 782 valueRest = valueRest.replace('px', '').trim(); 783 styleObj[key] = valueRest; 784 } 785 } 786 } 787 } 788 789 if (styleObj['width'] == undefined) 790 styleObj['width'] = ''; 791 792 if (styleObj['height'] == undefined)
793 styleObj['height'] = ''; 794 795 $(paramApplyTarget + ' .style-input').each(function () { 796 var attr = $(this).attr('data-attr'); 797 798 if (!dimodeLib.isNullOrEmpty(attr)) { 799 var value = '' 800 801 for (var key in styleObj) { 802 if (styleObj.hasOwnProperty(key)) { 803 if (key == attr) { 804 value = styleObj[key]; 805 break; 806 } 807 } 808 } 809 810 if (!dimodeLib.isNullOrEmpty(value)) { 811 if (value.indexOf('rgb') != '-1') { 812 if (value == 'rgba(0, 0, 0, 0)') { 813 value = ''; 814 } 815 else { 816 var rgbaArr = (dimodeLib.replaceAll(value, ', ', ',').split(' ')); 817 if (rgbaArr.length > 1) 818 value = rgbaArr[0]; 819 820 value = dimodeLib.rgb2hex(value); 821 } 822 } 823 else if (attr == 'border-style') { 824 var valueArr = value.split(' '); 825 826 if (valueArr.length > 1) { 827 for (var i in valueArr) { 828 if (valueArr[i] != 'none') { 829 value = valueArr[i]; 830 break; 831 } 832 } 833 } 834 } 835 836 value = value.replace('px', ''); 837 } 838 839 //ìì ê²½ì° ì´ê¸°í ê° ì¤ì 840 //if (attr == 'background-size') { 841 // if (value == '') { 842 // value = 'cover'; 843 // } 844 //} else if (attr == 'background-position') { 845 // if (value == '') { 846 // value = 'center center'; 847 // } 848 //} 849 850 $(this).val(value); 851 } 852 }); 853 } 854 */ 855 //WayM 2024-09-12 E 856 }, 857 858 numberFormat: function (paramNumber) { 859 return paramNumber.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ","); 860 }, 861 862 file: { 863 getImagePath: function (paramFileU) { 864 var returnValue = ''; 865 866 if (!dimodeLib.isNullOrEmpty(paramFileU)) { 867 $.ajax({
868 url: '/File/GetFilePath/', 869 async: false, 870 type: 'POST', 871 data: 'paramFileU=' + paramFileU, 872 success: function (response) { 873 returnValue = response; 874 }, 875 error: function () { 876 dimodeLib.bandMessage('danger', 'ì¤ë¥ê° ììµëë¤.#2', 0); 877 } 878 }); 879 } 880 881 return returnValue; 882 }, 883 884 getExtension: function (paramValue) { 885 var nameArr = paramValue.split('.'); 886 return nameArr[nameArr.length - 1]; 887 } 888 }, 889 890 getUrlParam: function (paramKey) { 891 var returnValue = ''; 892 var url = location.href; 893 894 if (url.split('?').length > 1) { 895 var paramTxt = url.split('?')[1]; 896 paramTxt = paramTxt.replace('?', ''); 897 var params = paramTxt.split('&'); 898 899 for (var i in params) { 900 if (params[i].split('=')[0] == paramKey) { 901 returnValue = params[i].split('=')[1]; 902 break; 903 } 904 } 905 } 906 return returnValue; 907 }, 908 909 getDate: function (date) { 910 var returnValue = ''; 911 var now = date ? date : new Date(); 912 var dd = now.getDate(); 913 var mm = now.getMonth() + 1; 914 var yyyy = now.getFullYear(); 915 console.log(yyyy); 916 917 918 if (dd < 10) 919 dd = '0' + dd; 920 921 if (mm < 10) 922 mm = '0' + mm; 923 924 returnValue = yyyy + '' + mm + '' + dd; 925 return returnValue; 926 }, 927 928 openPop: function (url, target, opt) { 929 if (window.cordova && cordova.InAppBrowser) 930 cordova.InAppBrowser.open(url, target ? target : '_blank', 'location=yes,EnableViewPortScale=yes'); 931 else 932 window.open(url, '', opt ? opt : ''); 933 }, 934 935 renew: function (val) { 936 return val ? JSON.parse(JSON.stringify(val)) : ''; 937 }, 938 939 resizeIframe: function (obj) { 940 var func = function () { 941 var height = obj.contentWindow.document.body.scrollHeight; 942 943 if (height > $(obj).parent().height()) 944 height = $(obj).parent().height(); 945 946 obj.style.height = height + 'px'; 947 } 948 func(); 949 950 setTimeout(function () { 951 func(); 952 }, 420); 953 }, 954 isJson: function (val) { 955 try { 956 JSON.parse(val); 957 return true; 958 } 959 catch (e) { 960 return false; 961 } 962 }, 963 getParsedJson: function (val) { 964 try { 965 return JSON.parse(val); 966 } 967 catch (e) { 968 return val; 969 } 970 }, 971 getDateFormat: function (value) { 972 if (value) { 973 var date, year, month, day; 974 975 if (typeof value === 'string') 976 value = value.substring(0, 10); 977 978 if (typeof value.getMonth === 'function' || typeof value === 'string' && dimodeLib.validatedDate(value.length)) { 979 date = new Date(value); 980 year = date.getFullYear(); 981 month = '' + (date.getMonth() + 1); 982 day = '' + date.getDate(); 983 984 if (month.length < 2) 985 month = '0' + month; 986 987 if (day.length < 2) 988 day = '0' + day; 989 990 return [year, month, day].join('-'); 991 } 992 } 993 994 return value; 995 }, 996 validatedDate: function (value) { 997 value = dimodeLib.replaceAll(value, '-', ''); 998 999 if (value && value.length >= 8 && Number(value)) { 1000 var year = Number(value.substr(0, 4)); 1001 var month = Number(value.substr(4, 2)); 1002 var day = Number(value.substr(6, 2)); 1003 var dayCond = day > 0; 1004 var short = [1, 3, 5, 7, 8, 10, 12]; 1005 var shorter = [4, 6, 9, 11]; 1006 var shortest = [2]; 1007 var isLeapYear = year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0); 1008 var februaryDay = isLeapYear ? 29 : 28; 1009 1010 if (short.indexOf(month) >= 0) 1011 dayCond = dayCond && day <= 31; 1012 else if (shorter.indexOf(month) >= 0) 1013 dayCond = dayCond && day <= 30; 1014 else if (shortest.indexOf(month) >= 0) 1015 dayCond = dayCond && day <= februaryDay; 1016 1017 return year >= 1900 && year < 3000 && (month >= 1 && month <= 12) && dayCond; 1018 } 1019 1020 return false; 1021 }, 1022 processLine: function (status) { 1023 switch (status) { 1024 case 'start': 1025 if (!$('#processLine').length) 1026 $(document.body).append('<div id="processLine" class="process-line dimode-theme background"></div>'); 1027 1028 $('#processLine').attr('data-status', 'init'); 1029 setTimeout(function () { 1030 $('#processLine').attr('data-status', 'start'); 1031 1032 clearTimeout(dimodeLib.timer['processLine1']); 1033 clearTimeout(dimodeLib.timer['processLine2']); 1034 clearTimeout(dimodeLib.timer['processLine3']); 1035 1036 dimodeLib.timer['processLine1'] = setTimeout(function () { 1037 if ($('#processLine').attr('data-status') !== 'init') 1038 $('#processLine').attr('data-status', 'ing'); 1039 }, 2500); 1040 1041 dimodeLib.timer['processLine2'] = setTimeout(function () { 1042 if ($('#processLine').attr('data-status') !== 'init') 1043 $('#processLine').attr('data-status', 'init'); 1044 }, 57500); 1045 }); 1046 break; 1047 1048 case 'end': 1049 setTimeout(function () { 1050 if ($('#processLine').attr('data-status') !== 'init') { 1051 $('#processLine').attr('data-status', 'end'); 1052 1053 dimodeLib.timer['processLine3'] = setTimeout(function () { 1054 $('#processLine').attr('data-status', 'init'); 1055 }, 500); 1056 } 1057 }); 1058 break; 1059 } 1060 }, 1061 isHolyDay: function (d) { 1062 var year = d.getFullYear();
1063 var month = d.getMonth() + 1; 1064 var date = d.getDate(); 1065 var lunarDate; 1066 var solars = [ 1067 { month: 1, date: 1 }, 1068 { month: 3, date: 1 }, 1069 { month: 5, date: 1 }, 1070 { month: 5, date: 5 }, 1071 { month: 6, date: 6 }, 1072 { month: 8, date: 15 }, 1073 { month: 10, date: 3 }, 1074 { month: 10, date: 9 }, 1075 { month: 12, date: 25 } 1076 ]; 1077 var lunars = [ 1078 { month: 12, date: 30 }, 1079 { month: 1, date: 1 }, 1080 { month: 1, date: 2 }, 1081 { month: 4, date: 8 }, 1082 { month: 8, date: 14 }, 1083 { month: 8, date: 15 }, 1084 { month: 8, date: 16 } 1085 ]; 1086 1087 for (var i in solars) { 1088 if (solars[i].month === month && solars[i].date === date) 1089 return true; 1090 } 1091 1092 lunarDate = lunar.getResult(year, month, date); 1093 1094 for (var j in lunars) { 1095 if (lunars[j].month === lunarDate.getMonth() + 1 && lunars[j].date === lunarDate.getDate()) 1096 return true; 1097 } 1098 1099 return false; 1100 }, 1101 getByteCount: function (str) { 1102 var returnValue = 0; 1103 1104 for (var i = 0; i < str.length; i += 1) { 1105 var c = str.charAt(i); 1106 1107 if (c.charCodeAt() <= 255) 1108 returnValue += 1; 1109 else 1110 returnValue += 2; 1111 } 1112 1113 return returnValue; 1114 }, 1115 getSunday: function (d) { 1116 var date; 1117 1118 if (typeof d.getMonth === 'function' && typeof d.getMonth === 'function') 1119 date = d; 1120 else 1121 date = new Date(d); 1122 1123 for (var i = 0; i < 7; i += 1) { 1124 if (date.getDay() === 0) 1125 return dimodeLib.getDateFormat(date); 1126 1127 date.setDate(date.getDate() - 1); 1128 } 1129 1130 return null; 1131 }, 1132};
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.