window.addEvent('domready', function() {
	setOptimalBGResolution();
});
window.addEvent('load', function() {
	setFooterPosition();
});
window.addEvent('resize', function() {
	setOptimalBGResolution();
	//setFooterPosition();
});
function setOptimalBGResolution() {
	var res	= getOptimalResolution();
	if (res) {
		if (document.body.className) {
			document.body.id	= document.body.className +'-'+res.replace('x', '-');
		}
		else {
			document.body.id	= 'default-'+res.replace('x', '-');
		}
	}
}
function getOptimalResolution() {
	/* jakmile se pomer proporci vychyli z tolerance vuci nejlepsimu pomeru, rozliseni neberem */
	var tolerance				= 0;
	var resolutions				= getAvailableResolutions();
	var xA						= document.documentElement.clientWidth;
	var yA						= document.documentElement.clientHeight;
	var sizes					= new Array;
	var rBSizes					= new Array;
	var resolutionsByDivs		= new Array;
	var resolutionsBestByDivs	= new Array;
	var expoHeight;
	var menuBottomHeight		= 20;
	if (!$('menubottom')) {
		menuBottomHeight	= 0;
	}
	/*sort by proportions*/
	/*alert(xA +' x '+ yA);*/
	for (i=0;i<resolutions.length;i++) {
		sizes														= resolutions[i].split('x');
		resolutionsByDivs[resolutionsByDivs.length]					= new Array;
		resolutionsByDivs[resolutionsByDivs.length-1]['resolution']	= resolutions[i];
		resolutionsByDivs[resolutionsByDivs.length-1]['proportions']= Math.abs(sizes[0]/sizes[1] - xA/yA);
	}
	resolutionsByDivs = resolutionsByDivs.sort(function(a,b){return parseFloat(a['proportions'])-parseFloat(b['proportions'])});
	var best = resolutionsByDivs[0]['proportions'];
	/*filter only best proportions*/
	for (i=0;i<resolutionsByDivs.length;i++) {
/*alert('best: '+best+'\n'+resolutionsByDivs[i]['resolution'] +' :: '+ resolutionsByDivs[i]['proportions']);*/
		if (Math.abs(best - resolutionsByDivs[i]['proportions']) > tolerance) {
			break;
		}
		resolutionsBestByDivs[resolutionsBestByDivs.length]	= resolutionsByDivs[i]['resolution'];
	}
	
	/* reset scrollbar */
	var layoutHeight	= $('layout').getStyle('height').toFloat()-menuBottomHeight;
	expoHeight	= yA > layoutHeight ? yA : layoutHeight;
	$('expo-container').setStyle('height', expoHeight+'px');
	
	/*choose closest higher*/
	resolutionsBestByDivs = resolutionsBestByDivs.sort();
	for (i = 0; i < resolutionsBestByDivs.length; i++) {
		rBSizes	= resolutionsBestByDivs[i].split('x');
		if (rBSizes[0] >= xA) {
			return resolutionsBestByDivs[i];
			break;
		}
	}
	return false;
}
function getAvailableResolutions() {
	var out	= new Array;
	$$(".data .resolution").each( function(el) {
		out[out.length]= el.innerHTML;
	} );
	return out;
}
function setFooterPosition() {
	if (!isIE6()) return;
	/* zabrani stavu, kdy se pata nacte na spodek tela skrolovatelne stranky - na IE6 se potom scrollem pata pohybuje se strankou */
	if (document.documentElement.clientHeight > 670) {
		$('footer').setStyle('position', 'absolute');
		$('footer').setStyle('bottom', 0);
	}
}
