var EP_Comparison_Checked = new Image();
var EP_Comparison_CheckedHover = new Image();
var EP_Comparison_Unchecked = new Image();
var EP_Comparison_UncheckedHover = new Image();
EP_Comparison_Checked.src = '/graphics/checkbox_checked.gif';
EP_Comparison_CheckedHover.src = '/graphics/checkbox_checked_hover.gif';
EP_Comparison_Unchecked.src = '/graphics/checkbox_unchecked.gif';
EP_Comparison_UncheckedHover.src = '/graphics/checkbox_hover.gif';

function EP_Comparison_Click(category, product, target)
{
	if (!document.images) return false;
	if (!document.images[target]) return false;
	if (!EP_Comparison_Products[category]) EP_Comparison_Products[category] = new Array();
	if (!EP_Comparison_Products[category][product]) {
		document.images[target].src = EP_Comparison_CheckedHover.src;
		EP_Comparison_Products[category][product] = true;
	} else {
		document.images[target].src = EP_Comparison_UncheckedHover.src;
		EP_Comparison_Products[category][product] = false;
	}
	return false;
}

function EP_Comparison_HoverOn(category, product, target)
{
	self.status = 'Select this product for comparison';
	if (!document.images) return false;
	if (!document.images[target]) return false;
	if (!EP_Comparison_Products[category]) EP_Comparison_Products[category] = new Array();
	if (!EP_Comparison_Products[category][product]) document.images[target].src = EP_Comparison_UncheckedHover.src;
	else  document.images[target].src = EP_Comparison_CheckedHover.src;
	return true;
}

function EP_Comparison_HoverOff(category, product, target)
{
	self.status = '';
	if (!document.images) return false;
	if (!document.images[target]) return false;
	if (!EP_Comparison_Products[category]) EP_Comparison_Products[category] = new Array();
	if (!EP_Comparison_Products[category][product]) document.images[target].src = EP_Comparison_Unchecked.src;
	else document.images[target].src = EP_Comparison_Checked.src;
	return true;
}

function EP_Comparison_Submit(mainLink, resultLink, defLink)
{
	var product; var category; var result = ''; var lastCategory = 0; var multiple = false;
	for (category in EP_Comparison_Products) {
		for (product in EP_Comparison_Products[category]) {
			if (!EP_Comparison_Products[category][product]) continue;
			if (result != '') result += ',' + product;
			else result = product;
			if (lastCategory != 0 && lastCategory != category) multiple = true;
			lastCategory = category;
		}
	}
	if (result == '' && !defLink) return false;
	if (result == '') self.location = defLink;
	else {
		if (multiple) self.location = mainLink + '?Compare=' + escape(result).replace(/[+]/, '%2B');
		else self.location = resultLink + '?Compare=' + escape(result).replace(/[+]/, '%2B');
	}
	return false;
}

function EP_Comparison_CategorySubmit(category, resultLink, defLink)
{
	var product; var result = ''; 
	if (!EP_Comparison_Products[category]) EP_Comparison_Products[category] = new Array();
	for (product in EP_Comparison_Products[category]) {
		if (!EP_Comparison_Products[category][product]) continue;
		if (result != '') result += ',' + product;
		else result = product;
	}
	if (result == '' && !defLink) return false;
	if (result == '') self.location = defLink;
	else self.location = resultLink + '?Compare=' + escape(result).replace(/[+]/, '%2B');
	return false;
}

function EP_Comparison_Refresh()
{
	var imageName;
	for (category in EP_Comparison_Products) {
		for (product in EP_Comparison_Products[category]) {
			if (!EP_Comparison_Products[category][product]) continue;
			imageName = "Check_" + product.replace(/[^a-z0-9_]/ig, "_");
			document.images[imageName].src = EP_Comparison_Checked.src;
		}
	}
	return true;
}