var dateFormat = function () {
var token = /d{1,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|[LloZ]|"[^"]*"|'[^']*'/g,
timezone = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,
timezoneClip = /[^-+\dA-Z]/g,
pad = function (value, length) {
value = String(value);
length = parseInt(length) || 2;
while (value.length < length)
value = "0" + value;
return value;
};
// Regexes and supporting functions are cached through closure
return function (date, mask) {
// Treat the first argument as a mask if it doesn't contain any numbers
if (
arguments.length == 1 &&
(typeof date == "string" || date instanceof String) &&
!/\d/.test(date)
) {
mask = date;
date = undefined;
}
date = date ? new Date(date) : new Date();
if (isNaN(date))
throw "invalid date";
var dF = dateFormat;
mask = String(dF.masks[mask] || mask || dF.masks["default"]);
var d = date.getDate(),
D = date.getDay(),
m = date.getMonth(),
y = date.getFullYear(),
H = date.getHours(),
M = date.getMinutes(),
s = date.getSeconds(),
L = date.getMilliseconds(),
o = date.getTimezoneOffset(),
flags = {
d: d,
dd: pad(d),
ddd: dF.i18n.dayNames[D],
dddd: dF.i18n.dayNames[D + 7],
m: m + 1,
mm: pad(m + 1),
mmm: dF.i18n.monthNames[m],
mmmm: dF.i18n.monthNames[m + 12],
yy: String(y).slice(2),
yyyy: y,
h: H % 12 || 12,
hh: pad(H % 12 || 12),
H: H,
HH: pad(H),
M: M,
MM: pad(M),
s: s,
ss: pad(s),
l: pad(L, 3),
L: pad(L > 99 ? Math.round(L / 10) : L),
t: H < 12 ? "a" : "p",
tt: H < 12 ? "am" : "pm",
T: H < 12 ? "A" : "P",
TT: H < 12 ? "AM" : "PM",
Z: (String(date).match(timezone) || [""]).pop().replace(timezoneClip, ""),
o: (o > 0 ? "-" : "+") + pad(Math.floor(Math.abs(o) / 60) * 100 + Math.abs(o) % 60, 4)
};
return mask.replace(token, function ($0) {
return ($0 in flags) ? flags[$0] : $0.slice(1, $0.length - 1);
});
};
}();
// Some common format strings
dateFormat.masks = {
"default": "ddd mmm d yyyy HH:MM:ss",
shortDate: "m/d/yy",
mediumDate: "mmm d, yyyy",
longDate: "mmmm d, yyyy",
fullDate: "dddd, mmmm d, yyyy",
shortTime: "h:MM TT",
mediumTime: "h:MM:ss TT",
longTime: "h:MM:ss TT Z",
isoDate: "yyyy-mm-dd",
isoTime: "HH:MM:ss",
isoDateTime: "yyyy-mm-dd'T'HH:MM:ss",
isoFullDateTime: "yyyy-mm-dd'T'HH:MM:ss.lo"
};
// Internationalization strings
dateFormat.i18n = {
dayNames: [
"Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat",
"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec",
"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"
]
};
// For convenience...
Date.prototype.format = function (mask) {
return dateFormat(this, mask);
}
var tday = new Date();
tday.setDate(3);tday.setMonth(9-1);tday.setYear(2010);
function initialiseInputs() {
var dfl = $$('input.datefield');
if (dfl.length > 0)
for (i = 0; i< dfl.length; i++){
dfl[i].value = ''; //clear cache
var sd = datePickerController.getDatePicker(dfl[i].id);
sd.setRangeLow(tday.format('yyyymmdd'));
sd.setDisabledDays(disabledDays);
sd.setDisabledDates(disabledDates);
sd.disableTodayButton();
//datePickerController.addEvent(dfl[i], "change", setDescription);
Event.observe(dfl[i], 'change', function(e) {
setDescription(e);
});
}
}
function setDescription(e){
//alert(e.target.id);
var x = e.target.value;
if (x == ''){return;}
var dt = datePickerController.getDatePicker(e.target.id);
dt = (dt.date);
var y = dt.format('dddd, mmmm d, yyyy');
$(e.target.id + '_desc').innerHTML=y;
}
Event.observe(window, 'load', function() {
adddatepart();
tday.setDate(tday.getDate()+leadDay);
datePickerController.create();
initialiseInputs();
});
//datePickerController.addEvent(window, 'load', initialiseInputs);
//datePickerController.addEvent(window, 'unload', removeInputEvents);
function checkform(f){
var sl = $(f).select('select[name="productpr"]');
if (sl.length > 0){
if (sl[0].getValue() == -1){
alert("Please select Product");
return false;
}
}
//!isNaN(v)
var dfl = f.select('input.datefield');
if (dfl.length > 0)
for (i = 0; i< dfl.length; i++){
if (dfl[0].getValue() == ''){
alert("Please pick a delivery date.");
return false;
}else {
//dfl[0].getValue()
if (f.select('input[name=product]').length > 0){
f.select('input[name=product]')[0].value = ", Delivery (" + $(dfl[0].id+'_desc').innerHTML + ")";
} else {
if (f.select('input[name="product[]"]').length > 0){
f.select('input[name="product[]"]')[0].value = ", Delivery (" + $(dfl[0].id+'_desc').innerHTML + ")";
}
}
}
}
return true;
}
var apt = 1;
function adddatepart() {
var dfl = $$('p.datehere');
if (dfl.length > 0)
for (i = 0; i< dfl.length; i++){
dfl[i].innerHTML =
"Click calendar to select date"+
'';
}
}