1/************************************************************ 2 3File Name : web.Util.js 4Description : ì¹ íì´ì§ ìì± ì íìí ê³µíµ ì¤í¬ë¦½í¸ë¥¼ ë¡ëí©ëë¤. 5 6*************************************************************/ 7 8function webUtil() { } 9 10//Description : íë¼ë¯¸í° valueì Null ì¬ë¶ë¥¼ ì²´í¬ í©ëë¤. Null ì¼ ê²½ì° true ë°í Nullì´ ìëê²½ì° false ë°í 11webUtil.IsNull = function (value) { return (value != undefined) ? !/[^\s]/g.test(value) : true; } 12 13//Description : íë¼ë¯¸í° valueì ìë¤ ê³µë°± 문ì를 ì ê±°í ë´ì©ì ë°íí©ëë¤. 14webUtil.Trim = function (value) { return value.replace(/^\s*|\s*$/g, ""); }; 15 16//Description : íë¼ë¯¸í° originStringì targetChar 문ì(ì´)를 replaceChar 문ì(ì´)ë¡ ì¹íí 결과를 ë°íí©ëë¤. 17webUtil.Replace = function (originString, targetChar, replaceChar) { var strTmp = new String; for (i = 0; i < originString.length; i++) if (originString.charAt(i) != targetChar) strTmp = strTmp + originString.charAt(i); elsestrTmp = strTmp + replaceChar; return strTmp; }; 18 19//Description : íë¼ë¯¸í° valueê° ì«ìííë¡ ë³íê°ë¥í ê°ì¸ì§ ì²´í¬í©ëë¤. ê°ë¥íë¤ë©´ true ìëë¼ë©´ false를 ë°íí©ëë¤. 20webUtil.IsNumeric = function (value) { var ValidChars = ",0123456789"; var IsNumber = true; var Char; if (typeof (value) == "undefined") return false; if (typeof (value) != "number" && value == "") return false; for (i = 0; i < value.length && IsNumber == true; i++) { Char = value.charAt(i); if (ValidChars.indexOf(Char) == -1) { IsNumber = false; } } return IsNumber; }; 21 22//Description : íë¼ë¯¸í° numì ìì size ë§í¼ 0ì ë¶ì¬ì ë°íí©ëë¤. 23webUtil.GetPadZeros = function (num, size) { var str = num.toString(); while (str.length < size) str = "0" + str; return str; }; 24 25//Description : íë¼ë¯¸í° originì íë¼ë¯¸í° pos(ì릿ì) ë§í¼ ë°ì¬ë¦¼ í ê°ì ë°íí©ëë¤. 26webUtil.Round = function (origin, pos) { var digits = Math.pow(10, pos); var sign = 1; if (origin < 0) { sign = -1; } origin = origin * sign; var num = Math.round(origin * digits) / digits; num = num * sign; return num.toFixed(pos); } 27 28webUtil.CheckPeriod = function (sDate, eDate) { if (webUtil.Replace(sDate, "-") - webUtil.Replace(eDate, "-") > 0) return false; else return true; }; 29webUtil.CheckPeriodLang = function (sDate, eDate, Msg) { if (webUtil.Replace(sDate, "-") - webUtil.Replace(eDate, "-") > 0) { alert(Msg); return false; } else return true; }; 30 31webUtil.isDate = function (ymd) { var errCode = 0; var days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; if (ymd.length < 8) errCode = 1; var y = ymd.substring(0, 4); var m = ymd.substring(4, 6); var d = ymd.substring(6, 8); if (y % 1000 != 0 && y % 4 == 0) days[1] = 29; if (d > days[m - 1] || d < 1) errCode = 1; if (m < 1 || m > 12) errCode = 1; if (m % 1 != 0 || y % 1 != 0 || d % 1 != 0) errCode = 1; if (errCode == 1) return false; else return true; }; 32//Description : íë¼ë¯¸í° date1ê³¼ date2ê°ì (ë ì§ì)차를 ë°íí©ëë¤. ë°ííì ì intì ëë¤. 33webUtil.DateDiff = function (date1, date2) { var d1 = webUtil.Replace(date1, '-', ''); var d2 = webUtil.Replace(date2, '-', ''); if (d1.length < 8) return -1; if (d2.length < 8) return -1; d1 = d1.substring(0, 4) + "/" + d1.substring(4, 6) + "/" + d1.substring(6); d2 = d2.substring(0, 4) + "/" + d2.substring(4, 6) + "/" + d2.substring(6); var sDate = new Date(d1); var eDate = new Date(d2); var timeSpan = (eDate - sDate) / 86400000; var daysApart = Math.abs(Math.round(timeSpan)); return daysApart; }; 34//Description : íë¼ë¯¸í° date1ìì date2를 ëº ì°¨ë¥¼ ë°íí©ëë¤. ë°ííì ì intì ëë¤. 35webUtil.DateSubtract = function (date1, date2) { if (date1.length < 8) return -1; if (date2.length < 8) return -1; date1 = date1.substring(0, 4) + "/" + date1.substring(4, 6) + "/" + date1.substring(6); date2 = date2.substring(0, 4) + "/" + date2.substring(4, 6) + "/" + date2.substring(6); var sDate = new Date(date1); var eDate = new Date(date2); var timeSpan = (sDate - eDate) / 86400000; var daysApart = Math.round(timeSpan); return daysApart; }; 36//Description : íë§ë¦¬ì»¤ data1ìì data2를 ëº ì°¨ì ì´ë ì§ì¤í¸ë§(00ì¼ 00ì 00ë¶)ì ì¶ë ¥í©ëë¤
37webUtil.DateDiffToDayTimeString = function (date1, date2) { if (date1.length < 8) return -1; if (date2.length < 8) return -1; date1 = date1.substring(0, 4) + "-" + date1.substring(4, 6) + "-" + date1.substring(6, 8) + 'T' + date1.substring(8, 10) + ':' + date1.substring(10, 12); date2 = date2.substring(0, 4) + "-" + date2.substring(4, 6) + "-" + date2.substring(6, 8) + 'T' + date2.substring(8, 10) + ':' + date2.substring(10, 12); var sDate = new Date(date1); var eDate = new Date(date2); var timeSpan = (eDate - sDate) / 60000; var day = Math.floor(timeSpan / (60 * 24)); var hour = Math.floor(timeSpan % (60 * 24) / 60); var minutes = (timeSpan % 60); return (day > 0 ? day + 'ì¼ ' : '') + hour + 'ìê° ' + minutes + 'ë¶'; }; 38 39webUtil.ConvertDayToString = function (gubun, nDate, ymd, day) { var dt = new Date(day.substring(0, 4), day.substring(5, 7) - 1, day.substring(8, 10)); var y, m, d; var formattedDate; switch (ymd.toLowerCase()) { case "yy": { dt.setFullYear(dt.getFullYear() + nDate); break; } case "mm": { dt.setMonth(dt.getMonth() + nDate); break; } case "dd": { dt.setDate(dt.getDate() + nDate); break; } } y = dt.getFullYear(); m = dt.getMonth() + 1; d = dt.getDate(); formattedDate = y + gubun; formattedDate += m < 10 ? "0" + m : m; formattedDate += gubun; formattedDate += d < 10 ? "0" + d : d; return formattedDate; }; 40webUtil.DateToString = function (date) { var dateString = date.getFullYear(); dateString += "-"; if (date.getMonth() + 1 < 10) dateString += "0"; dateString += date.getMonth() + 1; dateString += "-"; if (date.getDate() < 10) dateString += "0"; dateString += date.getDate(); return dateString; } 41webUtil.DateAdd = function (objDate, strInterval, intIncrement) { if (typeof (objDate) == "string") { objDate = new Date(objDate); if (isNaN(objDate)) { throw ("DateAdd: Date is not a valid date"); } } else if (typeof (objDate) != "object" || objDate.constructor.toString().indexOf("Date()") == -1) { throw ("DateAdd: First parameter must be a date object"); } if (strInterval != "M" && strInterval != "D" && strInterval != "Y" && strInterval != "h" && strInterval != "m" && strInterval != "uM" && strInterval != "uD" && strInterval != "uY" && strInterval != "uh" && strInterval != "um" && strInterval != "us") { throw ("DateAdd: Second parameter must be M, D, Y, h, m, uM, uD, uY, uh, um or us"); } if (typeof (intIncrement) != "number") { throw ("DateAdd: Third parameter must be a number"); } switch (strInterval) { case "M": objDate.setMonth(parseInt(objDate.getMonth()) + parseInt(intIncrement)); break; case "D": objDate.setDate(parseInt(objDate.getDate()) + parseInt(intIncrement)); break; case "Y": objDate.setYear(parseInt(objDate.getYear()) + parseInt(intIncrement)); break; case "h": objDate.setHours(parseInt(objDate.getHours()) + parseInt(intIncrement)); break; case "m": objDate.setMinutes(parseInt(objDate.getMinutes()) + parseInt(intIncrement)); break; case "s": objDate.setSeconds(parseInt(objDate.getSeconds()) + parseInt(intIncrement)); break; case "uM": objDate.setUTCMonth(parseInt(objDate.getUTCMonth()) + parseInt(intIncrement)); break; case "uD": objDate.setUTCDate(parseInt(objDate.getUTCDate()) + parseInt(intIncrement)); break; case "uY": objDate.setUTCFullYear(parseInt(objDate.getUTCFullYear()) + parseInt(intIncrement)); break; case "uh": objDate.setUTCHours(parseInt(objDate.getUTCHours()) + parseInt(intIncrement)); break; case "um": objDate.setUTCMinutes(parseInt(objDate.getUTCMinutes()) + parseInt(intIncrement)); break; case "us": objDate.setUTCSeconds(parseInt(objDate.getUTCSeconds()) + parseInt(intIncrement)); break; } return objDate; } 42 43//íë¼ë¯¸í°ë¡ ë°ì obj(json datetime format)를 ë ìì¼(yyyymmdd) ë°ì´í°ë¡ ë³íí©ëë¤. ë ìì¼ ì¬ì´ì 구ë¶ì seperator를 ë¼ìë£ì ì ììµëë¤. 44webUtil.FormatDateJson = function (obj, seperator) { if (webUtil.IsNull(obj)) return ""; var date = eval(obj.replace(/\/Date\((.*?)\)\//gi, "new Date($1)")); var currdate = date.getDate(); if (currdate <= 9) currdate = "0" + date.getDate(); var currmonth = date.getMonth(); currmonth++; var curryear = date.getFullYear(); if (curryear == "1900") return ""; else return curryear + seperator + webUtil.GetPadZeros(currmonth, 2) + seperator + currdate; }; 45 46webUtil.IsTelChar = function (value) { var Char_pattern = /[^-()]/; var IsChar = true; if (value == "") return false; if (Char_pattern.test(value)) { IsChar = false; } return IsChar; }; 47webUtil.IsChar = function (value) { var Char_pattern = /[<>'"&@]/; var IsChar = true; if (value == "") return false; if (Char_pattern.test(value)) { IsChar = false; } return IsChar; }; 48webUtil.IsEngNum = function (value) { var EnNum_pattern = /[^a-zA-Z0-9]/; var IsEngNum = true; var Char; if (value == "") return false; if (EnNum_pattern.test(value)) { IsEngNum = false; } return IsEngNum; }; 49webUtil.IsKor = function (value) { var IsKor = true; for (var i = 0; i < value.length; i++) { var ch = value.charCodeAt(i); if (!((0xAC00 <= ch && ch <= 0xD7A3) || (0x3131 <= ch && ch <= 0x318E))) { IsKor = false; } } return IsKor; }; 50 51//StringBuilderì 기ë¥ì ì ê³µí©ëë¤. 52//íë¼ë¯¸í° value를 ê°ì§ê³ ìë¡ì´ Array를 ìì±í©ëë¤. 53webUtil.StringBuilder = function (value) { this.strings = new Array(""); this.append(value); }; 54//íë¼ë¯¸í° value를 Arrayì ì¶ê°í©ëë¤. 55webUtil.StringBuilder.prototype.append = function (value) { if (value) { this.strings.push(value); } }; 56//Array를 ì´ê¸°í í©ëë¤. 57webUtil.StringBuilder.prototype.clear = function () { this.strings.length = 1; }; 58//Arrayì ì ë ¥ë ë´ì©ì 문ìì´ë¡ ë°íí©ëë¤. 59webUtil.StringBuilder.prototype.toString = function () { return this.strings.join(""); }; 60 61//ì«ìë§ ì ë ¥ ê°ë¥í©ëë¤.
62webUtil.numberCheck = function(obj) { var val = obj.value; var re = /[^0-9|.]/gi; obj.value = val.replace(re, ''); }; 63 64webUtil.NumberWithComma = function (number) { var parts = number.toString().split("."); parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ","); return parts.join("."); } 65webUtil.GetStringLength = function (checkStr) { var ilength = 0; var tmpStr = new String(checkStr); var onechar; for (var i = 0; i < tmpStr.length; i++) { onechar = tmpStr.charAt(i); if (escape(onechar).length > 4) { ilength += 2; } else { ilength += 1; } } return ilength; }; 66webUtil.CharAllowCheck = function (element, lantype, chartype) { var text = element.value || ''; var result = new webUtil.StringBuilder(); for (var i = 0; i < text.length; i++) { var ch = text.substring(i, i + 1); if (lantype == "N" && chartype == "T") { if (webUtil.IsNumeric(ch) || webUtil.IsTelChar(ch)) { result.append(ch); } } else if (lantype == "K") { if (webUtil.IsChar(ch)) result.append(ch); } else if (lantype == "E") { if ((Utils.IsEngNum(ch) || webUtil.IsChar(ch)) && !webUtil.IsKor(ch)) { result.append(ch); } } } if (element.value != result.toString()) { element.value = result.toString(); } }; 67webUtil.Right = function (str, len) { str = str.toString(); if (str == null) return null; if (str.length <= len) return str; if (len == 0) return ""; return str.substring(str.length - len, str.length); } 68webUtil.Left = function (str, len) { str = str.toString(); if (str == null) return null; if (str.length <= len) return str; if (len == 0) return ""; return str.substring(0, len); } 69webUtil.Mid = function (str, sidx, len) { str = str.toString(); if (str == null) return null; if (len == 0) return ""; if (sidx == 0) return null; sidx = sidx - 1; return str.substring(sidx, sidx + len); } 70 71//ê³µíµ Popup í¨ì 72webUtil.OpenPopup = function (url, popupName, width, height, scrollbars, resizable) { 73 var positionX = (screen.width) ? (screen.width - width) / 2 : 100; 74 var positionY = (screen.height) ? (screen.height - height) / 2 : 100; 75 76 var winOptions = "width=" + width; 77 winOptions += ",height=" + height; 78 winOptions += ",left=" + positionX; 79 winOptions += ",top=" + positionY; 80 winOptions += ",scrollbars=" + scrollbars; 81 winOptions += ",toolbar=no,location=no,directories=no"; 82 winOptions += ",resizable=" + resizable; 83 winOptions += ",status=no"; 84 85 var obj = window.open(url, popupName, winOptions); 86} 87 88//ê³µíµ Ajax Call í¨ì 89webUtil.AjaxCall = function (target_url, parameters, success_function, error_function, isAsync) { 90 91 $.ajax({ 92 type: "POST", 93 url: target_url, 94 async: isAsync, 95 //processData: false, 96 data: parameters, 97 //dataType: isJson ? "json" : "", 98 //contentType: "application/json;charset=utf-8", 99 success: function (data) { 100 if (data == null) { 101 alert("ë°ì´í° ë¡ë ì¤í¨"); 102 return; 103 } 104 105 if ($.isFunction(success_function)) 106 success_function(data); 107 }, 108 error: function (obj, text, error) { 109 if ($.isFunction(error_function)) 110 error_function(obj, text, error); 111 } 112 }); 113} 114 115function Faild(obj, text, error) { 116 alert(obj); 117 alert(text); 118 alert(error); 119} 120 121//ì문,ì«ì,ë©ìì§ë¥¼ ì ííì¬ íì© 122function checkEngNumValue(strValue, msg, num) 123{ 124 strValue = String(strValue).replace(/^\s+|\s+$/g, ""); 125 126 if (num == 1) { //ì문과 ì«ììì 127 var strReg = /^[A-Za-z0-9]+$/; 128 } else if (num == 2 ) { //ì«ììì -, ììì í¬í¨ 129 var strReg = /^[-]?\d+(?:[.]\d+)?$/; 130 } 131 132 if (!strReg.test(strValue)) 133 { 134 alert(msg); 135 return "N"; 136 } 137} 138 139//모ë°ì¼ ëë°ì´ì¤ì¸ì§ ì²´í¬ 140function checkMobileDevice() { 141 var mobileKeyWords = new Array('Android', 'iPhone', 'iPad', 'iPod', 'BlackBerry', 'Windows CE', 'SAMSUNG', 'LG', 'MOT', 'SonyEricsson'); 142 for (var info in mobileKeyWords) { 143 if (navigator.userAgent.match(mobileKeyWords[info]) != null) { 144 return true; 145 146 } 147 } 148 return false; 149}
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.