    YAHOO.util.Event.onDOMReady(function(){

        var Event = YAHOO.util.Event,
            Dom = YAHOO.util.Dom,
            dialog,
            calendar;

        var showBtn = Dom.get("show");

        Event.on(showBtn, "click", function() {

            // Lazy Dialog Creation - Wait to create the Dialog, and setup document click listeners, until the first time the button is clicked.
            if (!dialog) {

                // Hide Calendar if we click anywhere in the document other than the calendar
                Event.on(document, "click", function(e) {
                    var el = Event.getTarget(e);
                    var dialogEl = dialog.element;
                    if (el != dialogEl && !Dom.isAncestor(dialogEl, el) && el != showBtn && !Dom.isAncestor(showBtn, el)) {
                        dialog.hide();
                    }
                });

                function resetHandler() {
                    // Reset the current calendar page to the select date, or 
                    // to today if nothing is selected.
                    var selDates = calendar.getSelectedDates();
                    var resetDate;
        
                    if (selDates.length > 0) {
                        resetDate = selDates[0];
                    } else {
                        resetDate = calendar.today;
                    }
        
                    calendar.cfg.setProperty("pagedate", resetDate);
                    calendar.render();
                }
        
                function closeHandler() {
                    dialog.hide();
                }

                dialog = new YAHOO.widget.Dialog("container", {
                    visible:false,
                    context:["show", "tl", "bl"],
                    buttons:[ {text:"Reset", handler: resetHandler, isDefault:true}, {text:"Close", handler: closeHandler}],
                    draggable:true,
                    close:true
                });
                dialog.setHeader('Delivery Date');
                dialog.setBody('<div id="cal"></div>');
                dialog.render(document.body);

                dialog.showEvent.subscribe(function() {
                    if (YAHOO.env.ua.ie) {
                        // Since we're hiding the table using yui-overlay-hidden, we 
                        // want to let the dialog know that the content size has changed, when
                        // shown
                        dialog.fireEvent("changeContent");
                    }
                });
            }


            if (!calendar) { currentTime = new Date();
if (currentTime.getDay() == 0) { currentTime.setDate(currentTime.getDate()+7); }
else { currentTime.setDate(currentTime.getDate()+7); }

var month = currentTime.getMonth() + 1
var day = currentTime.getDate()
var year = currentTime.getFullYear()
var date = month + '/' + day + '/' + year;

                calendar = new YAHOO.widget.Calendar("cal", {
                	pagedate: document.getElementById('date').value,
                	mindate: date,
                    iframe:false,          // Turn iframe off, since container has iframe support.
                    hide_blank_weeks:true  // Enable, to demonstrate how we handle changing height, using changeContent
                });
                

calendar.addWeekdayRenderer(1, myCustomRenderer);
calendar.addWeekdayRenderer(2, myCustomRenderer);
calendar.addWeekdayRenderer(7, myCustomRenderer);


calendar.addRenderer("10/11,10/12,10/13,10/14", myCustomHoliday);




calendar.renderEvent.subscribe(calendarLast().initArrows, calendar);






                calendar.render();
                
                calendar.selectEvent.subscribe(function() {
                    if (calendar.getSelectedDates().length > 0) {

                        var selDate = calendar.getSelectedDates()[0];
                        
        				var month = selDate.getMonth() + 1;
        				
                        //Dom.get("date").value = wStr + ", " + dStr + " " + mStr + " " + yStr;
                        Dom.get("date").value = month + '/'+selDate.getDate()+'/'+selDate.getFullYear();
                        Dom.get('secDate').value = month + '/'+selDate.getDate()+'/'+selDate.getFullYear();
                        Dom.get('checkoutID').style.display = 'block';
                        dialog.hide();
                    } else {
                        Dom.get("date").value = "";
                    }
                    dialog.hide();
                });

                calendar.renderEvent.subscribe(function() {
                    // Tell Dialog it's contents have changed, which allows 
                    // container to redraw the underlay (for IE6/Safari2)
                    dialog.fireEvent("changeContent");
                });
            }

            var seldate = calendar.getSelectedDates();

            if (seldate.length > 0) {
                // Set the pagedate to show the selected date if it exists
                calendar.cfg.setProperty("pagedate", seldate[0]);
                calendar.render();
            }

            dialog.show();
        });
    });

var calendarLast = function() {
	
	var addDays = function(date, days) {
		return YAHOO.widget.DateMath.add(date, YAHOO.widget.DateMath.DAY, days);
	};
	
	var showPreviousArrow = function(cal) {
		return showArrow(cal, cal.toDate(cal.cellDates[0]), 1);
	};

	var showNextArrow = function(cal) {
		return showArrow(cal, cal.toDate(cal.cellDates[cal.cellDates.length-1]), -1);
	};
	
	var showArrow = function(cal, startingDate, step) {
		if (!cal.isDateOOM(startingDate)) { //ie not overlapping
			return !cal.isDateOOB(addDays(startingDate, (-1 * step)));
		}
		for (var i=0; (i * step) < 7; i += step) { //iterate forwards for previous month check, backwards for next month check
			var date = addDays(startingDate, i);
			if (!cal.isDateOOM(date)) { //shortcut exit; as soon as we find an in month date we can supress the arrow
				return false;
			} else if (!cal.isDateOOB(date)) {
				return true;
			}
		}
		return false;
	};
	
	return {
		initArrows: function(type, args, cal) {
			if (!showPreviousArrow(cal)) {
				hideArrow(cal, cal.Style.CSS_NAV_LEFT);
			}

			if (!showNextArrow(cal)) {
				hideArrow(cal, cal.Style.CSS_NAV_RIGHT);
			}
		}
	};
};


var myCustomRenderer = function(workingDate, cell) {
	cell.innerHTML = "X";
	YAHOO.util.Dom.addClass(cell, "sunday");
	return YAHOO.widget.Calendar.STOP_RENDER;
}




var myCustomHoliday = function(workingDate, cell) {
	cell.innerHTML = "H";
	YAHOO.util.Dom.addClass(cell, "sunday");
	return YAHOO.widget.Calendar.STOP_RENDER;
}




