﻿function FormatDropDown(dd)
{
	var items = dd.getElements('option');
	var opt = new Element('optgroup',{'label':'Member Cities'});
	for(i=2;i<13;i++)
		opt.appendChild(items[i]);
	dd.insertBefore(opt,dd.options[2]);
	opt = new Element('optgroup',{'label':'Twin Cities'})
	for(i=13;i<15;i++)
		opt.appendChild(items[i]);
	dd.insertBefore(opt,dd.options[13]);
};
var _eventSearchController = new Class({
	initialize:function(ymd)
	{
		this.YMD=ymd;
		this.StartYear=$$('select[id$=EventSearchStartYear]')[0].addEvent('change',this.OnChange.bindWithEvent(this,0));
		this.StartMonth=$$('select[id$=EventSearchStartMonth]')[0].addEvent('change',this.OnChange.bindWithEvent(this,0));
		this.StartDay=$$('select[id$=EventSearchStartDay]')[0].addEvent('change',this.OnChange.bindWithEvent(this,2));
		this.EndYear=$$('select[id$=EventSearchEndYear]')[0].addEvent('change',this.OnChange.bindWithEvent(this,1));
		this.EndMonth=$$('select[id$=EventSearchEndMonth]')[0].addEvent('change',this.OnChange.bindWithEvent(this,1));
		this.EndDay=$$('select[id$=EventSearchEndDay]')[0].addEvent('change',this.OnChange.bindWithEvent(this,2));
	},
	OnChange:function(evt,a)
	{
		if(parseInt(this.StartYear.value)>parseInt(this.EndYear.value))
			this.EndYear.value=this.StartYear.value;
		if((parseInt(this.StartMonth.value)>parseInt(this.EndMonth.value))&(parseInt(this.StartYear.value)==parseInt(this.EndYear.value)))
			this.EndMonth.value=this.StartMonth.value;
		if((parseInt(this.StartMonth.value)==parseInt(this.EndMonth.value))&(parseInt(this.StartYear.value)==parseInt(this.EndYear.value))&(parseInt(this.StartDay.value)>parseInt(this.EndDay.value)))
			this.EndDay.value=this.StartDay.value;
		if(a==2)
			return;
		var days = (a==0)?this.StartDay:this.EndDay;
		var newDays=parseInt(this.YMD[(a==0)?this.StartYear.value:this.EndYear.value][(a==0)?this.StartMonth.value:this.EndMonth.value],10);
		if(days.options.length!=newDays)
		{
			var selectedDay=days.value;
			while(days.options.length>0)
				days.removeChild(days.lastChild);
			for(i=1;i<=newDays;i++)
				days.appendChild(new Element('option',{value:i,selected:(i==selectedDay)}).setHTML(i));
		}
	}
});



