/** * 공통 js */ function currentDate(gb){ var mydate=new Date() var year=mydate.getYear() if (year < 1000){ year+=1900 } var day=mydate.getDay() var month=mydate.getMonth()+1 if (month<10){ month="0"+month } var daym=mydate.getDate() if (daym<10){ daym="0"+daym } if(gb=='yyyymmdd'){ return year +""+ month +""+ daym; } else if(gb=='yyyy'){ return year; } else if(gb=='mm'){ return month; } else if(gb=='dd'){ return daym; } } function isDate(dateStr){ var dateInfo = dateStr.split("-"); var dateVar = new Date(dateInfo[0], parseInt(dateInfo[1])-1, dateInfo[2]); return (dateVar.getFullYear()==dateInfo[0] && (parseInt(dateVar.getMonth())+1)==dateInfo[1] && dateVar.getDate()==dateInfo[2]) ? true : false; } function isNull(obj){ return (typeof obj != "undefined" && obj!=null && obj != "")? false : true; } function checkHangul(name) { var reg = /^[가-힣]+$/; return reg.test(name); } function checkNum(num) { var reg = /^[0-9]+$/; return reg.test(num); } function checkDouble(num) { var reg = /^\d+\.?\d*$/; return reg.test(num); } function checkEmail(email) { var reg = /^[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*@[0-9a-zA-Z]([-_\.]?[0-9a-zA-Z])*\.[a-zA-Z]{2,3}$/i; return reg.test(email); } function checkPNum(pNum) { var reg = /^01([0|1|6|7|8|9]?)-([0-9]{3,4})-([0-9]{4})$/; return reg.test(pNum); } function checkTNum(tNum) { var reg = /^[0-9]{2,3}-[0-9]{3,4}-[0-9]{4}$/; return reg.test(tNum); } function isEmpty(str) { return str.trim() == "" ? true : false; } // 주민번호 체계 검사 function ssnConfirm(num) { if (num == '') { alert("주민등록번호를 정확하게 입력해주세요."); return false; } if (num.length != 13) { alert("주민등록번호를 '-' 를 제외한 13자리 숫자로 입력하세요."); return false; } if (isNaN(num)) { alert("주민등록번호는 숫자만 입력이 가능합니다."); return false; } var ssn1 = num.substring(0, 6); var ssn2 = num.substring(6, 13); var ssn = ssn1 + ssn2; var fgnFlag = ssn2.substring(0, 1); if (fgnFlag == "5" || fgnFlag == "6" || fgnFlag == "7" || fgnFlag == "8"){ if ((ssn1.length == 6) && (ssn2.length == 7)) { var sum=0; var odd=0; buf = new Array(13); for(i=0; i<13; i++) { buf[i]=parseInt(ssn.charAt(i)); } odd = buf[7]*10 + buf[8]; if(odd%2 != 0) { alert("잘못된 외국인 주민등록번호 입니다.\n\n다시 입력해 주세요."); return false; } if( (buf[11]!=6) && (buf[11]!=7) && (buf[11]!=8) && (buf[11]!=9) ) { alert("잘못된 외국인 주민등록번호 입니다.\n\n다시 입력해 주세요."); return false; } multipliers = [2,3,4,5,6,7,8,9,2,3,4,5]; for(i=0, sum=0; i<12; i++) { sum += (buf[i] *= multipliers[i]); } sum = 11 - (sum%11); if(sum >= 10) { sum -= 10; } sum += 2; if(sum >= 10) { sum -= 10; } if(sum != buf[12]) { alert("잘못된 외국인 주민등록번호 입니다.\n\n다시 입력해 주세요."); return false } return true; } }else{ if ((ssn1.length == 6) && (ssn2.length == 7)) { a = new Array(13); for (var i = 0; i < 13; i++) { a[i] = parseInt(ssn.charAt(i)); } var k = 11 - (((a[0] * 2) + (a[1] * 3) + (a[2] * 4) + (a[3] * 5) + (a[4] * 6) + (a[5] * 7) + (a[6] * 8) + (a[7] * 9) + (a[8] * 2) + (a[9] * 3) + (a[10] * 4) + (a[11] * 5)) % 11); if (k > 9) { k -= 10; } if (k == a[12]) { return true; } else { alert("잘못된 주민등록번호 입니다.\n\n다시 입력해 주세요."); return false; } } } } function isGeomjeonggosiNo(str) { var chkNum = ""; var chkLogic = {}; if (str.length == 18) { chkNum = str.substring(1, 18); if (!checkNum(chkNum)) { return false; } else { chkLogic[0] = (chkNum.substring(4, 5)) * 8; chkLogic[1] = (chkNum.substring(10, 11)) * 7; chkLogic[2] = (chkNum.substring(11, 12)) * 6; chkLogic[3] = (chkNum.substring(12, 13)) * 5; chkLogic[4] = (chkNum.substring(13, 14)) * 4; chkLogic[5] = (chkNum.substring(14, 15)) * 3; chkLogic[6] = (chkNum.substring(15, 16)) * 2; chkLogic[7] = (chkNum.substring(16, 17)) * 1; if (chkLogic[7] == 0) { chkLogic[7] = 10; } if ((chkLogic[0] + chkLogic[1] + chkLogic[2] + chkLogic[3] + chkLogic[4] + chkLogic[5] + chkLogic[6] + chkLogic[7]) % 11 == 0) { return true; } else { return false; } } } else { return false; } } function getCalcDayMonthCount(pStartDate, pEndDate, pType) { var strSDT = new Date(pStartDate.substring(0,4),pStartDate.substring(4,6)-1,pStartDate.substring(6,8)); var strEDT = new Date(pEndDate.substring(0,4),pEndDate.substring(4,6)-1,pEndDate.substring(6,8)); var strTermCnt = 0; if(pType == 'D') { strTermCnt = (strEDT.getTime()-strSDT.getTime())/(1000*60*60*24); } else { if(pEndDate.substring(0,4) == pStartDate.substring(0,4)) { strTermCnt = pEndDate.substring(4,6) * 1 - pStartDate.substring(4,6) * 1; } else { strTermCnt = Math.round((strEDT.getTime()-strSDT.getTime())/(1000*60*60*24*365/12)); } } return strTermCnt; }