/**
 * @author Reflex
 */


	// przezroczystosc
	function chgOpacity(id, value) { 
		value/=100;
		with( document.getElementById(id).style ) {
			opacity = value;
			MozOpacity = value;
			KhtmlOpacity = value;
			filter = "alpha(opacity=" + (value*100) + ")"; 
		}
	}

	function chgOpacityRoll(id, value, height, rollidx) {
		if(rollidx<L1_rollidx) return;
		chgOpacity(id, value);
		document.getElementById(id).style.clip = 'rect(0px 3000px '+height+'px 0px)'; 
	}

	function createFadeEffect(id, opacStart, opacEnd, millisec, rollidx) { 
		//speed for each frame 
		var steps = 20;
		var speed = Math.round(millisec / steps); 
		var height = document.getElementById(id).offsetHeight;
		for(step=steps+1; step-->0; ) {
			o = (opacStart*(steps-step) + opacEnd*(step))/steps;
			h = height*step/steps;
			setTimeout("chgOpacityRoll('" + id + "', " + o + ", " + h + ", " + rollidx + ")",(step * speed)); 
		}
	} 
	
	var rule_added = false;
	function chgSlide(id, o) {
		//chgOpacity(id, 100-o);
		with(document.getElementById(id).style) {
			//width = (50- o/2)+'%';
			left = (-o)+'%';
			marginLeft = Math.round(-o/5)+'px';
			marginTop = Math.round(o/2)+'px';;
			paddingTop = (2-o/20)+'%';
		}
		siz_w = Math.max(Math.min(630-o*10,630),200);
		siz_h = Math.max(Math.min(75-o,55),32);
		siz_f = Math.max(Math.min(24-o/10,24),20);
		a_rule = 'height: '+siz_h+'px; width: '+siz_w+'px; font-size: '+siz_f+'px; line-height: '+(siz_h-5)+'px; ';
		a_elem =  '.M_sub_big a';
		var ss = document.styleSheets;
		var x = ss[ss.length-1];
		if(x.addRule) x.addRule(a_elem, a_rule);
		else if(x.insertRule) x.insertRule(a_elem + '{'+a_rule+' }', x.cssRules.length);
		if(rule_added) {
			if(x.removeRule) x.removeRule(x.rules.length-2);
			else if(x.deleteRule) x.deleteRule(x.cssRules.length-2);			
		}
		rule_added = true;
		//if(x.insertRule) alert(x.title + x.cssRules.length);
		//document.styleSheets[0].removeRule();
	}
	
	var slide_state = false;
	var ie6 = false;
	function slide(href, id) {
		if(ie6) return true;
		if(slide_state) return false;
		slide_state = true;
				
		var steps = 20;
		var millisec = 1000;
		var speed = Math.round(millisec / steps); 
		for(step=steps+1; step-->0; ) {
			o = Math.round(40 * step / steps);
			setTimeout("chgSlide('" + id + "', " + o + ")",(step * speed)); 
		}
		setTimeout("document.location = '" + href + "'", millisec); 
		setTimeout("undo_slide('"+id+"')", millisec+2000); 
		document.getElementById('main').style.visibility = 'hidden';
		return false;
	}
	
	function undo_slide(id) {
		chgSlide(id,0);
		var ss = document.styleSheets;
		var x = ss[ss.length-1];
		x.del = x.deleteRule? x.deleteRule : x.removeRule;
		var r = x.cssRules? x.cssRules : x.rules;
		for(i=r.length-1; i>=0; --i) x.del(i);
		slide_state = false;
		rule_added = false;
		document.getElementById('main').style.visibility = 'visible';
	}

	// ustawienia animacji
	var L_anim = 'progid:DXImageTransform.Microsoft.gradientWipe(duration=1.0,WipeStyle=1): ';
	var L_anim_moz = 1000;
	var L_anim_hide = 'progid:DXImageTransform.Microsoft.gradientWipe(duration=.3,WipeStyle=1,Motion=reverse): ';
	/* lista: http://www.permadi.com/tutorial/jsImgTransition/index.html */

	// zapamietane menu
	var L1_open = null;
	var LL_autoid = 0;
	var L1_rollidx = 0;

	// zmiana widocznosci
	function Aturn(C, Anim, Visibility) {
		ok = C && C.style;
		if(!ok) return;
		if( C.filters && C.filters[0] ) {
			if(ok) C.filters[0].Stop();
		}
		C.style.filter = Anim;
		ok = C.filters && C.filters[0];
		if(ok) C.filters[0].Apply();
		else if(Visibility=='visible') {
			if(!C.id) C.id = 'LL_autoid_'+(LL_autoid++);
			chgOpacity(C.id, 0);
			createFadeEffect(C.id, 0, 100, L_anim_moz, ++L1_rollidx);
		}
		C.style.visibility=Visibility;
		if(ok) C.filters[0].Play();
	}

	// pokazanie
	function Ashow(M) {
		if(M && M.nodeType!=1) M=M.nextSibling;
		if(M) Aturn(M, L_anim, 'visible');
	}

	// ukrycie
	function Ahide(M) {
		if(M && M.nodeType!=1) M=M.nextSibling;
		if(M) Aturn(M, L_anim_hide, 'hidden');
	}

	// otwieranie
	function L1open(M) {
		hideonly = (M==L1_open);
		if(L1_open) {
			Ahide(L1_open);
			L1_open = null;
		}
		if( !hideonly ) {
			Ashow(M);
			L1_open = M;
		}

	}
	function L1close() { if(L1_open) L1open(L1_open); }

var gal_one_canfade = true;
function gal_one(src, href) {
	if(!document.getElementById('gal_one_disp')) {
		tmp=document.createElement('div'); tmp.id = 'gal_one_disp';
		tmp.style.display='none';
		tmp.innerHTML = '<table><tr><td valign="middle" align="center"><div id="gal_one_disp_div"></div></td></tr></table>';
		tmp.onclick = function(){
			if (gal_one_canfade) {
				Effect.Fade('gal_one_disp_div', {
					afterFinish: function() {
						$('gal_one_disp').hide();
					}
				});
				gal_one_canfade = false;
			}
		};
		document.body.appendChild(tmp);
	}
	
	$('gal_one_disp').show();
	$('gal_one_disp_div').update('<img src="' + src + '" /><br/>'+
		'Kliknij, aby powrócić do listy<br/><a href="' + href + '">Więcej...</a>');
	Effect.Appear('gal_one_disp_div');
	gal_one_canfade = true;
	return false;
}

var gal = {0:0};
var gal_stop_fade = false;
function gal_two(gal_id, img_id, href, upd) {
	if(!document.getElementById('gal_one_disp')) {
		tmp=document.createElement('div'); tmp.id = 'gal_one_disp';
		tmp.style.display='none';
		tmp.innerHTML = '<table class="gal_one_disp_table"><tr><td valign="middle" align="center"><div id="gal_one_disp_div"></div></td></tr></table>';
		tmp.onclick = function(){
			if (gal_one_canfade && !gal_stop_fade) {
				Effect.Fade('gal_one_disp_div', {
					afterFinish: function() {
						$('gal_one_disp').hide();
					}
				});
				gal_one_canfade = false;
			}
			gal_stop_fade = false;
		};
		document.body.appendChild(tmp);
	}
	
	src = gal[gal_id][img_id]['src'];
	desc = gal[gal_id][img_id]['desc'];
	src_p=gal[gal_id][img_id-1]['src']; 
	src_n=gal[gal_id][img_id+1]['src'];
	
	img_p = typeof(src_p)!='undefined'? '<img src="' + src_p + '" height="100" onclick="return gal_two('+gal_id+','+(img_id-1)+',\'\',true); return false;" /><br/>': '';
	img_n = typeof(src_n)!='undefined'? '<img src="' + src_n + '" height="100" onclick="return gal_two('+gal_id+','+(img_id+1)+',\'\',true); return false;" /><br/>': '';
	
	if(!upd) $('gal_one_disp').show();
	$('gal_one_disp_div').update(
		'<table style="width: auto; margin: 0 auto;"><tr><td colspan="3">'+
		'<b>'+desc+'</b><br/>'+
		'</td></tr><tr><td>'+
		img_p+
		'</td><td>'+
		'<img src="' + src + '" /><br/>'+
		'</td><td>'+
		img_n+
		'</td></tr>'+
		'<tr><td colspan="3">'+
		'Kliknij, aby powrócić do listy<br/><a href="' + href + '">Więcej...</a>'+
		'</td></tr></table>'
		);
	if(!upd) Effect.Appear('gal_one_disp_div');
	if(upd) gal_stop_fade = true;
	gal_one_canfade = true;
	return false;
}
	
	
function InvokeAjaxWebservice(url,func) 
{
	var xmlHttpReq = false;
	if (window.XMLHttpRequest) { xmlHttpReq = new XMLHttpRequest(); }
		else if (window.ActiveXObject) try { xmlHttpReq = new ActiveXObject("Msxml2.XMLHTTP"); }   
			 catch(err) { try { xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP"); } catch(err2) {} }
	xmlHttpReq.open('GET', url, true);
	xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xmlHttpReq.onreadystatechange = function() {
		if (xmlHttpReq.readyState == 4) 
			func(xmlHttpReq.responseText);
	}
	xmlHttpReq.send(null);
}
