/*
Tomasz Czerko
tcb@tcb.pl
*/
var wipe1_var = 0;
var wipe2_var = 0;
var time = 10;
var step = 3;
//var step = 1;
var step_r = 6;
var liczba_warstw = 28;
var warstwy_a = Array(0, 2, 6, 8, 11, 12, 15, 17, 19, 21, 23, 24, 25, 26, 27);
var dodatek = 3;
// obrazki duze

var agt=navigator.userAgent.toLowerCase();
var ns4 = (document.layers)? true:false;
var ie = (document.all)? true:false;
var nn6 = (!document.all && document.getElementsByTagName) ? true : false;

if (agt.indexOf('opera')!=-1) { ie=false; ns4=false; nn6=false; var op=true; }

if (ie) {
	step = 10;
	step_r = 20;
}
if (nn6) {
	step = 15;
	step_r = 30;
	dodatek = 0;
}

if(nn6){
	document.all = document.getElementsByTagName('*');
	ie = true;
}

function preload(imgObj,imgSrc) {
	if (document.images) {
		eval(imgObj+' = new Image()');
		eval(imgObj+'.src = "'+imgSrc+'"');
	}
}

function changeImage(layer,imgName,imgObj) {
	if (document.images) {
		if (document.layers && layer!=null) { 
			eval('document.layers["'+layer+'"].document.images["'+imgName+'"].src = '+imgObj+'.src');
		}
		else { 
			document.images[imgName].src = eval(imgObj+".src");
		}
   }
}

function ustaw(obrazek,blok){
	var x= 0;
	var y= 0;
	if (ns4) {
		x = eval('document.layers["'+obrazek+'"].pageX');
		y = eval('document.layers["'+obrazek+'"].pageY');
		eval('document.layers["'+blok+'"].left='+(x+dodatek)); 
		eval('document.layers["'+blok+'"].top='+y);
	}
	else if (ie) {
		x = eval('document.all.'+obrazek+'.offsetLeft');
		y = eval('document.all.'+obrazek+'.offsetTop');
		eval('document.all["'+blok+'"].style.left='+(x+dodatek)); 
		eval('document.all["'+blok+'"].style.top='+y);
	}
	else if (op) {
		x = window.innerWidth/2+10;
		eval('document.all["'+blok+'"].style.left='+x); 
		eval('document.all["'+blok+'"].style.top=83');
	}
	on_off(blok,1);
}

function init_g(arg) {
	ustaw('ref','pion');
	ustaw('ref','poziom');
	if (arg == '1') {
		on_off('poziom',0);
	}
	else {
		on_off('pion',0);
	}
}
function clipValues(obj,which) {
        if (ns4) {
                if (which=="t") return obj.clip.top
                if (which=="r") return obj.clip.right
                if (which=="b") return obj.clip.bottom
                if (which=="l") return obj.clip.left
        }
        else if (ie) {
                var clipv = obj.clip.split("rect(")[1].split(")")[0].split("px")
                if (which=="t") return Number(clipv[0])
                if (which=="r") return Number(clipv[1])
                if (which=="b") return Number(clipv[2])
                if (which=="l") return Number(clipv[3])
        }
}

function clipTo(obj,t,r,b,l) {
        if (ns4) {
                obj.clip.top = t;
                obj.clip.right = r;
                obj.clip.bottom = b;
                obj.clip.left = l;
        }
        else if (ie) obj.clip = "rect("+t+"px "+r+"px "+b+"px "+l+"px)";
}

function clipBy(obj,t,r,b,l) {
        if (ns4) {
                obj.clip.top = clipValues(obj,'t') + t
                obj.clip.right = clipValues(obj,'r') + r
                obj.clip.bottom = clipValues(obj,'b') + b;
                obj.clip.left = clipValues(obj,'l') + l
        }
        else if (ie) obj.clip = "rect("+(this.clipValues(obj,'t')+t)+"px "+(this.clipValues(obj,'r')+r)+"px "+Number(this.clipValues(obj,'b')+b)+"px "+Number(this.clipValues(obj,'l')+l)+"px)"
}

function warstwa(layer) {
	var block = null;
    if (ns4) {
		block = eval('document.layers["'+layer+'"]');
	}
	if (ie) {
		block = eval('document.all["'+layer+'"].style');
	}
	return block;
}

function zero(layer) {
	/*for (var i=0;i<liczba_warstw;i++) {
		temp = "blockDiv"+i;
		if (temp != layer) {
			var block = warstwa(temp);
			clipTo(block,0,0,0,0);
			on_off(temp,0);
		}
	}*/
	var ile = warstwy_a.length;
	var temp = '';
	var block = null;
	for(var i=0;i<ile;i++) {
		temp = "blockDiv"+warstwy_a[i];
		if (temp != layer) {
			var block = warstwa(temp);
			clipTo(block,0,0,0,0);
			on_off(temp,0);
		}
	}
}

function wipe1(layer,x,y) {
	if (op) {
		on_off(layer,0);
		return;
	}
	zero(layer);
	var block = warstwa(layer);
	if (wipe2_var) {
		clearTimeout(wipe2_var);
	}
	var r_t = clipValues(block,'r');
	var b_t = clipValues(block,'b');
	if (isNaN(r_t) || isNaN(b_t)) {
		clipTo(block,0,0,0,0);
		r_t = clipValues(block,'r');
		b_t = clipValues(block,'b');
	}
	var r_s = 0;
	var b_s = 0;
	if (r_t<x) {
		r_s = step;
	}
	if (b_t<=y) {
		b_s = step;
	}
	if (r_s > 0 || b_s > 0) {
			clipBy(block,0,r_s,b_s,0);
			wipe1_var = setTimeout("wipe1('"+layer+"','"+x+"','"+y+"')",time);
	}
}

function wipe2(layer) {
	if (op) {
		on_off(layer,0);
		return;
	}
	zero(layer);
	var block = warstwa(layer);
	if (wipe1_var) {
		clearTimeout(wipe1_var);
	}
	var r_t = clipValues(block,'r');
	var b_t = clipValues(block,'b');
	if (isNaN(r_t) || isNaN(b_t)) {
		clipTo(block,0,0,0,0);
		r_t = clipValues(block,'r');
		b_t = clipValues(block,'b');
	}
	var r_s = 0;
	var b_s = 0;
	if (r_t>0) {
		r_s = -step_r;
	}
	if (b_t>0) {
		b_s = -step_r;
	}
	if (r_s < 0 || b_s < 0) {
			clipBy(block,0,r_s,b_s,0);
			wipe2_var = setTimeout("wipe2('"+layer+"')",time);
	}
}

function on_off(warstwa,on_off) {
	if (on_off) {
		var stan = (ns4)? 'show':'visible';
	}
	else {
		var stan = (ns4)? 'hide':'hidden';
	}
	if (ns4) {
		eval('document.layers["'+warstwa+'"].visibility="'+stan+'"');
	}
	else {
		eval('document.all["'+warstwa+'"].style.visibility="'+stan+'"');
	}
}

