We suggest using Yahoo UI calendar, but are open to other suggestions. The calendar must render quickly and we imagine it would be javascript.
We wish to
(a) display selected dates on a three-month rolling calendar,
An array of dates will be made available from PHP script. The dates will be rendered on calendar. There may be single dates e.g.
array('2007-01-01'=>'yellow'
,'2007-05-04'=>'green'
,'2007-06-07'=>'red')
or may be a range of dates e.g.
array(
array('2007-01-01','2007-01-04')=>'yellow'
,array('2007-02-04','2007-02-08')=>'red'
)
The above is just to give you an idea using pseudo-code. You can determine your own specification for providing the dates and colours and then how you use these elements to render the calendar. The dates will come from a database.
(b) use a pop-up calendar to complete form input boxes.
You make it clear that start of period must be clicked and then the end of period. The two dates are completed into input boxes. The calendar must show an error message if the dates overlap any other selected periods.