
// Instantiate series autocomplete on body load
var downloads = {
	init: function() {
		var seriesData = new YAHOO.widget.DS_JSArray(getSeriesNamesOnly());
		var categoriesBox = document.getElementById('categoriesBox');
		categoriesBox.selectedIndex = 0;
		YAHOO.util.Event.addListener("categoriesBox", "change", downloads.categoryChange);
		YAHOO.util.Event.addListener("downloadsForm", "submit", downloads.submitForm);
	},
	
	submitForm: function(e) {
		//YAHOO.util.Event.preventDefault(e);
		var errors = new Errors();
		var seriesBox = document.getElementById('seriesBox');
		var dlOptions = document.getElementsByName('options[]');
		if(seriesBox.selectedIndex < 0) {
			errors.add('You must choose a product series.');
		}
		var dlChosen = false;
		for(var i = 0; i < dlOptions.length; ++i) {
			if(dlOptions[i].checked) {
				dlChosen = true;	
			}
		}
		if(!dlChosen) {
			errors.add('You must choose at least one type of download');
		}
		if(errors.length > 0) {
			YAHOO.util.Event.stopEvent(e);
			errors.display();
			return false;
		}
		return true;
	},

	
	categoryChange: function(e) {
		//var freeFormSeriesBox = document.getElementById('freeFormSeries');
		var categoriesBox = document.getElementById('categoriesBox');
		var seriesBox = document.getElementById('seriesBox');
		//freeFormSeriesBox.value = '';
		var categoryId = categoriesBox.options[categoriesBox.selectedIndex].value;
		var newOptions;
		if(categoryId != '') {
			newOptions = getSeriesByCategoryId(categoryId);
		}
		else {
			newOptions = getSeries();
		}

		if(newOptions) {
			seriesBox.options.length = 0;
			for(var i = 0; i < newOptions.length; ++i) {
				seriesBox.options[i] = new Option(newOptions[i].seriesName, newOptions[i].seriesId);
			}
		}
		
	}

}
YAHOO.util.Event.addListener(window, "load", downloads.init);
