var sDate = ''; var ChosenDate = new Date; var today = new Date; function jsOpenCalendar(args) { var strPageAddress = 'http://www.inmanswebstore.co.uk/Webstore/include/Calendar/Calendar.asp'; var strWindowName = 'DateSelector'; var intWidth = 200; var intHeight = 180; if (isIE == true) intWidth = 160, intHeight = 180; else if (isFirefox == true) if (isWindows == true) intWidth = 215, intHeight = 180; else intWidth = 260, intHeight = 180; else if (isSafari == true) intWidth = 260, intHeight = 180; else if (isNN == true) intWidth = 200, intHeight = 180; var intLeftPosition = (screen.width) ? (screen.width - intWidth) / 2 : 0; var intTopPosition = (screen.height) ? (screen.height - intHeight) / 2 : 0; var sfeatures; sfeatures = 'width=' + intWidth + ','; sfeatures += 'height=' + intHeight + ','; sfeatures += 'left=' + intLeftPosition + ','; sfeatures += 'top=' + intTopPosition + ','; sfeatures += 'toolbar=no,'; sfeatures += 'location=no,'; sfeatures += 'menubar=no,'; sfeatures += 'resizable=no,'; sfeatures += 'status=no,'; sfeatures += 'scrollbars=no'; alert("sfeatures=" + sfeatures); var win = window.open(strPageAddress + args, strWindowName, sfeatures); win.focus(); win.opener = window.self; } function jsCalendarUpdate() { document.getElementById(DateFieldId).value = sDate; } function CheckDate(CONTROL, past) { var strFormat = 'dd/mm/yyyy'; if (CONTROL.value.length == 0) return true; if (!isDate(CONTROL.value)) { alert("Date is not valid or is incorrect format") CONTROL.value = ''; return false; } if (past == 'false') { if (ChosenDate < today) { alert("Please enter a date which is in the future") CONTROL.value = ''; return false; } } CONTROL.value = FormatDate(CONTROL.value) return true; } function isDate(DateToCheck) { if (DateToCheck=="") { return true; } var m_strDate = FormatDate(DateToCheck); if (m_strDate == "") { return false; } var m_arrDate = m_strDate.split("/"); var m_DAY = m_arrDate[0]; var m_MONTH = m_arrDate[1]; var m_YEAR = m_arrDate[2]; if (m_YEAR.length > 4) { return false; } m_strDate = m_MONTH + "/" + m_DAY + "/" + m_YEAR; ChosenDate.setDate(m_DAY); ChosenDate.setMonth(m_MONTH - 1); ChosenDate.setFullYear(m_YEAR); var testDate=new Date(m_strDate); if (testDate.getMonth() + 1 == m_MONTH) { return true; } else { return false; } } function FormatDate(DateToFormat,FormatAs) { if (DateToFormat == "") { return ""; } if (!FormatAs) FormatAs="dd/mm/yyyy"; var strReturnDate; FormatAs = FormatAs.toLowerCase(); DateToFormat = DateToFormat.toLowerCase(); var arrDate var arrMonths = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"); var strMONTH; var Separator; while(DateToFormat.indexOf("st") >- 1) { DateToFormat = DateToFormat.replace("st", ""); } while(DateToFormat.indexOf("nd") >- 1) { DateToFormat = DateToFormat.replace("nd", ""); } while(DateToFormat.indexOf("rd") >- 1) { DateToFormat = DateToFormat.replace("rd", ""); } while(DateToFormat.indexOf("th") >- 1) { DateToFormat = DateToFormat.replace("th", ""); } if(DateToFormat.indexOf(".") >- 1){ Separator = "."; } if(DateToFormat.indexOf("-") >- 1) { Separator = "-"; } if(DateToFormat.indexOf("/") >- 1) { Separator = "/"; } if(DateToFormat.indexOf(" ") >- 1) { Separator = " "; } arrDate = DateToFormat.split(Separator); DateToFormat = ""; for(var iSD = 0;iSD < arrDate.length;iSD++) { if(arrDate[iSD]!="") { DateToFormat += arrDate[iSD] + Separator; } } DateToFormat = DateToFormat.substring(0,DateToFormat.length-1); arrDate = DateToFormat.split(Separator); if (arrDate.length < 3) { return ""; } var DAY = arrDate[0]; var MONTH = arrDate[1]; var YEAR = arrDate[2]; if(parseFloat(arrDate[1]) > 12) { DAY = arrDate[1]; MONTH = arrDate[0]; } if(parseFloat(DAY) && DAY.toString().length==4) { YEAR = arrDate[0]; DAY = arrDate[2]; MONTH = arrDate[1]; } for(var iSD = 0;iSD < arrMonths.length;iSD++) { var ShortMonth = arrMonths[iSD].substring(0,3).toLowerCase(); var MonthPosition = DateToFormat.indexOf(ShortMonth); if (MonthPosition > -1) { MONTH = iSD + 1; if(MonthPosition == 0) { DAY = arrDate[1]; YEAR = arrDate[2]; } break; } } var strTemp = YEAR.toString(); if(strTemp.length==2) { if(parseFloat(YEAR)>40) { YEAR = "19" + YEAR; } else{ YEAR = "20" + YEAR; } } if (parseInt(MONTH)< 10 && MONTH.toString().length < 2) { MONTH = "0" + MONTH; } if (parseInt(DAY)< 10 && DAY.toString().length < 2) { DAY = "0" + DAY; } switch (FormatAs) { case "dd/mm/yyyy": return DAY + "/" + MONTH + "/" + YEAR; case "mm/dd/yyyy": return MONTH + "/" + DAY + "/" + YEAR; case "dd/mmm/yyyy": return DAY + " " + arrMonths[MONTH -1].substring(0,3) + " " + YEAR; case "mmm/dd/yyyy": return arrMonths[MONTH -1].substring(0,3) + " " + DAY + " " + YEAR; case "dd/mmmm/yyyy": return DAY + " " + arrMonths[MONTH -1] + " " + YEAR; case "mmmm/dd/yyyy": return arrMonths[MONTH -1] + " " + DAY + " " + YEAR; } return DAY + "/" + strMONTH + "/" + YEAR;; }