mousefx_lock=new Array();
mousefx_to=new Array();

function mousefx(sourceId,smer,krok,pocetKroku,sub) {
	if (mousefx_lock[sourceId]==undefined) mousefx_lock[sourceId]=false;
	if (mousefx_lock[sourceId]) {
		//Při najetí na obrázek v FX elementu dojde k mouseover a mouseout eventu těsně za sebou - toto je ošetření
		window.clearTimeout(mousefx_to[sourceId]); 
		mousefx_lock[sourceId]=false; 
		return;
	}
	mousefx_lock[sourceId]=true;
	if (smer) mousefx_to[sourceId]=window.setTimeout("mousefx_step(2,1,'"+sourceId+"',"+krok+","+pocetKroku+","+(sub?"true":"false")+")",50);
	else mousefx_to[sourceId]=window.setTimeout("mousefx_step("+(pocetKroku-1)+",-1,'"+sourceId+"',"+krok+","+pocetKroku+","+(sub?"true":"false")+")",50);
}

function mousefx_step(frame,posun,sourceId,krok,pocetKroku,sub) {

	mousefx_lock[sourceId]=false;
	
	but=document.getElementById(sourceId);
	but.style.backgroundPosition="left -"+((frame-1)*krok)+"px";	

	if (sub) {
		but2=document.getElementById(sourceId+"_sub");
		if (but2) but2.style.backgroundPosition="right -"+((frame-1)*krok)+"px";
	}

	if ((frame<pocetKroku && posun>0) || (frame>1 && posun<0)) 
		window.setTimeout("mousefx_step("+(frame+posun)+","+posun+",'"+sourceId+"',"+krok+","+pocetKroku+","+(sub?"true":"false")+")",35);
	
	if (frame>1) but.style.cursor='pointer';

}

