/*var dest = new Array(4);
dest[0] = window.location.href;
dest[1] = "index.php?id=projects_current_czech";
dest[2] = "index.php?id=projects_current_ukraine";
dest[3] = "index.php?id=projects_current_slovakia";*/
/*function go(d) {
window.location.href = dest[d.selectedIndex];      
}*/
/*
function showhide(elId)
{
var el = document.getElementById(elId);
el.style.display = ('none' == el.style.display)? '':'none';
}
*/

var SDS = {}; 

SDS.aEv =  function(element, event, func, obj){
		if(obj!=null){
			var f = function(e){return func.apply(obj,[e,element])} 
		} else {var f = func;}
		if (element.addEventListener) {
			if (window.opera && (element == window)){
				element = document;
			}
			element.addEventListener(event, f, false);
		} else if (element.attachEvent) {
			element.attachEvent('on'+event,f);
		}
		return [element, event, func];
};

SDS.dEv = function(element, event, func){
  var flag = false;
  if(element.removeEventListener){
	element.removeEventListener(event, func, flag);
  } else if(element.detachEvent){
    element.detachEvent(event, func);
    element.detachEvent('on'+event, func);
  }
};

SDS.eID = function(id){
	return document.getElementById(id);
};

SDS.eClass = function (oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			arrReturnElements.push(oElement);
		}
	}
	return (arrReturnElements)
}


SDS.preventDef = function(e){
	var e = e || window.event;	
	if(e.preventDefault){
		e.preventDefault();
	} else {
		e.cancelBubble = true;
		e.returnValue = false;
	}	
	return false;
};

SDS.setDis = function(el,vis){
	if(!el || !el.style) return;
	el.style.display = vis?'block':'none';
};

SDS.setVis = function(el,vis){
	if(!el || !el.style) return;
	el.style.visibility = vis?'':'hidden';
};

SDS.mousePos = function(e) {
	var posx = 0;
	var posy = 0;
	if (!e) var e = window.event;
	if (e.pageX || e.pageY) 	{
		posx = e.pageX;
		posy = e.pageY;
	}
	else if (e.clientX || e.clientY) 	{
		posx = e.clientX + document.body.scrollLeft
			+ document.documentElement.scrollLeft;
		posy = e.clientY + document.body.scrollTop
			+ document.documentElement.scrollTop;
	}
	return { x: posx, y: posy };
}

SDS.elPos = function(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
	do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	return { x:curleft, y:curtop};
	}
}



SDS.updatePager = function(){
	SDS.pagerText.innerHTML = SDS.fNr+1+'/'+SDS.fCn;
	/*if(SDS.fNr == 1) SDS.setVis(SDS.prevF,false); else SDS.setVis(SDS.prevF,true);
	if(SDS.fNr == SDS.fCn) SDS.setVis(SDS.nextF,false); else SDS.setVis(SDS.nextF,true);*/
	/*alert(SDS.fNr);*/
	var i;
		for(i=0;i<SDS.featured.length;i++){
			if(i != SDS.fNr) {
				SDS.setDis(SDS.featured[i],false);
			} else {
				SDS.setDis(SDS.featured[i],true);
			}
		}
};

SDS.updateFSPager = function(){
	SDS.FSpagerText.innerHTML = SDS.fsNr+1+'/'+SDS.fsCn;
	/*if(SDS.fNr == 1) SDS.setVis(SDS.prevF,false); else SDS.setVis(SDS.prevF,true);
	if(SDS.fNr == SDS.fCn) SDS.setVis(SDS.nextF,false); else SDS.setVis(SDS.nextF,true);*/
	/*alert(SDS.fNr);*/
	var i;
		for(i=0;i<SDS.featureds.length;i++){
			if(i != SDS.fsNr) {
				SDS.setDis(SDS.featureds[i],false);
			} else {
				SDS.setDis(SDS.featureds[i],true);
			}
		}
};

SDS.displayPrevF = function(e){
	
	clearTimeout(SDS.pagerTimeout);
	if(SDS.fNr > 0){
		SDS.fNr -= 1;
	} else {
		SDS.fNr = SDS.fCn-1;
	}
	SDS.updatePager();
	
	SDS.preventDef(e);	
	return false;
};

SDS.displayNextF = function(e){
	
	clearTimeout(SDS.pagerTimeout);
	SDS.fNr = (SDS.fNr + 1) % SDS.fCn;
	SDS.updatePager();
	
	SDS.preventDef(e);	
	return false;
};

SDS.displayPrevFS = function(e){
	
	clearTimeout(SDS.spagerTimeout);
	if(SDS.fsNr > 0){
		SDS.fsNr -= 1;
	} else {
		SDS.fsNr = SDS.fsCn-1;
	}
	SDS.updateFSPager();
	
	SDS.preventDef(e);	
	return false;
};

SDS.displayNextFS = function(e){
	
	clearTimeout(SDS.spagerTimeout);
	SDS.fsNr = (SDS.fsNr + 1) % SDS.fsCn;
	SDS.updateFSPager();
	
	SDS.preventDef(e);	
	return false;
};


SDS.PrevFshow = function(e){
	SDS.prevF.style.backgroundImage="url('img/prevf.png')";		
};

SDS.NextFshow = function(e){
	SDS.nextF.style.backgroundImage="url('img/nextf.png')";		
};

SDS.PrevFhide = function(e){
	SDS.prevF.style.backgroundImage="none";		
};

SDS.NextFhide = function(e){
	SDS.nextF.style.backgroundImage="none";		
};


//pager
//<a href="" id="prevFeatured">&lArr;</a> (<span id="fNr">1</span> of <span id="fCn">'.$featured_count.'</span>) <a href="" id="nextFeatured">&rArr;</a>

SDS.rotateF = function(e) {
	
	var i = SDS.fNr;
	
	SDS.fNr = ( (i+1) % SDS.fCn );
	SDS.updatePager(); 
	
	SDS.pagerTimeout = setTimeout(SDS.rotateF,5000);
};

SDS.rotateFS = function(e) {
	
	var i = SDS.fsNr;
	
	SDS.fsNr = ( (i+1) % SDS.fsCn );
	SDS.updateFSPager(); 
	
	SDS.spagerTimeout = setTimeout(SDS.rotateFS,5000);
};

SDS.cancelRot = function(e){
	
	clearTimeout(SDS.pagerTimeout);
	
	SDS.dEv(SDS.eID('featured-articles'),'click',SDS.cancelRot);
	
};

SDS.cancelRotS = function(e){
	
	clearTimeout(SDS.spagerTimeout);
	
	SDS.dEv(SDS.eID('featured-sites'),'click',SDS.cancelRotS);
	
};

SDS.changeImage = function(e){
	var targ;
	if (!e) var e = window.event;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3)
		targ = targ.parentNode;
	
	/*alert(targ.src);*/
	SDS.mainImg.src = targ.src.replace(/thumb_/,'lt_');
	SDS.mainImg.parentNode.href = targ.src.replace(/thumb_/,'');
	SDS.displayLoading(SDS.mainImg);
	SDS.aEv(SDS.mainImg,'load',SDS.hideLoading,null)
	SDS.preventDef(e);
	return false;
};

SDS.toggleTileover = function(e){
	var targ;
	if (!e) var e = window.event;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3)
		targ = targ.parentNode;
	
	SDS.counter += 1;
	
	//SDS.test.innerHTML = 'over: '+targ.style.background+' counter:'+SDS.counter;	
	/*alert(targ.style.backgroundImage);*/
	if(targ.style.background.match(/gm/)){
		//alert(targ.style.backgroundImage);
		targ.style.background=targ.style.background.replace(/gm/,'m');
	} else {
		//alert(targ.style.backgroundImage);
		targ.style.background=targ.style.background.replace(/cache.m/,'cache/gm');
	}
	SDS.dEv(targ,'mouseover',SDS.toggleTileover);
	SDS.aEv(targ,'mouseout',SDS.toggleTileout);
}

SDS.toggleTileout = function(e){
	var targ;
	if (!e) var e = window.event;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3)
		targ = targ.parentNode;
	
	//SDS.test.innerHTML = 'out: '+targ.style.background;	
	/*alert(targ.style.backgroundImage);*/
	if(targ.style.background.match(/gm/)){
		//alert(targ.style.backgroundImage);
		targ.style.background=targ.style.background.replace(/gm/,'m');
	} else {
		//alert(targ.style.backgroundImage);
		targ.style.background=targ.style.background.replace(/cache.m/,'cache/gm');
	}
	SDS.dEv(targ,'mouseout',SDS.toggleTileout);
	SDS.aEv(targ,'mouseover',SDS.toggleTileover);
}

SDS.imgToColor = function(e){
	var targ;
	if (!e) var e = window.event;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3)
		targ = targ.parentNode;

	targ.src = targ.src.replace(/thumbgray_/,'thumb_');
	SDS.handleSliderMouseover(e);
};

SDS.imgToGray = function(e){
	var targ;
	if (!e) var e = window.event;
	if (e.target) targ = e.target;
	else if (e.srcElement) targ = e.srcElement;
	if (targ.nodeType == 3)
		targ = targ.parentNode;

	targ.src = targ.src.replace(/thumb_/,'thumbgray_');
};

SDS.handleSliderMouseover = function(e){
	SDS.pos = SDS.mousePos(e);
	SDS.sliderpos = SDS.elPos(SDS.panel);
	//SDS.test.innerHTML = 'x:' + (SDS.pos.x - SDS.sliderpos.x) + ' y:' + (SDS.pos.y - SDS.sliderpos.y);
	var x = (SDS.pos.x - SDS.sliderpos.x);
	SDS.slider.style.left = Math.floor(x - x*SDS.sliderRatio) + "px";
}

SDS.handleSliderMouseout = function(e){
	//SDS.test.innerHTML = ':(';
}

SDS.displayLoading = function(el){
	SDS.loadingPos = SDS.elPos(el);
	SDS.loading.style.left = (SDS.loadingPos.x+10)+'px';
	SDS.loading.style.top = (SDS.loadingPos.y+10)+'px';
	SDS.loading.style.display = "block";
}

SDS.hideLoading = function(e){
	SDS.loading.style.display = "none";
}


SDS.init = function(e){
	SDS.counter = 0;
	SDS.preloadImages = new Array();
	if( SDS.eID('mainpage-mosaic') != null ){
		SDS.mTiles = SDS.eClass(document,'div','mosaic-tile');
		var i;
		for(i=0;i<SDS.mTiles.length;i++){
			var image = new Image;
			var loc = SDS.mTiles[i].style.background.match(/g?m\d{2}.jpg/)
			/*alert(loc[0]);*/
			if(loc[0].match(/^g/)){
				
				image.src = 'mosaic/cache/'+loc[0].replace(/^g/,'');
			
			} else {
				image.src = 'mosaic/cache/g'+loc[0];
			
			}
					 
			SDS.preloadImages.push(image);
			
			SDS.aEv(SDS.mTiles[i],'mouseover',SDS.toggleTileover, null);
		}
			
	}
	
	/*featured slideshows*/
	if( (SDS.eID('mainpage-left') != null)
		&& (SDS.eID('featured-articles') != null) 
	){
	
	SDS.featdiv = SDS.eID('featured-articles');
		
	var tmp =  SDS.featdiv.getElementsByTagName('div');
	SDS.featured = new Array();
	if(SDS.featdiv){
		var i;
		for(i=0;i<tmp.length;i++){
			SDS.featured.push(tmp[i]);
		}
	}
	
	SDS.fNr = 0;
	SDS.fCn =  SDS.featured.length;
	
	SDS.pager = document.createElement('div');
	SDS.pager.id = 'home-featured-pager';
	SDS.prevF = document.createElement('div');
	SDS.prevF.id = 'home-prevF';
	SDS.nextF = document.createElement('div');
	SDS.nextF.id = 'home-nextF';
	SDS.pagerText = document.createElement('div');
	SDS.pagerText.id = 'home-pager-text'; 
	
	
	SDS.pager.appendChild(SDS.prevF);
	SDS.pager.appendChild(SDS.pagerText);
	SDS.pager.appendChild(SDS.nextF);
	SDS.eID('featured-articles').appendChild(SDS.pager);
	/*SDS.eID('featured-articles').appendChild(SDS.nextF);
	SDS.eID('featured-articles').appendChild(SDS.prevF);*/
	
	
	SDS.aEv(SDS.prevF,'click',SDS.displayPrevF,null);
	SDS.aEv(SDS.nextF,'click',SDS.displayNextF,null);
	SDS.aEv(SDS.prevF,'dblclick',SDS.preventDef,null);
	SDS.aEv(SDS.nextF,'dblclick',SDS.preventDef,null);
	SDS.aEv(SDS.eID('featured-articles'),'click',SDS.cancelRot,null);
	
	SDS.updatePager();
	
	SDS.pagerTimeout = setTimeout(SDS.rotateF,5000);
	}
	
	/*featured SITES slideshows*/
	if( (SDS.eID('mainpage-left') != null)
		&& (SDS.eID('featured-sites') != null) 
	){
	
	SDS.featsdiv = SDS.eID('featured-sites');
		
	var tmp =  SDS.featsdiv.getElementsByTagName('div');
	SDS.featureds = new Array();
	if(SDS.featsdiv){
		var i;
		for(i=0;i<tmp.length;i++){
			SDS.featureds.push(tmp[i]);
		}
	}
	
	SDS.fsNr = 0;
	SDS.fsCn =  SDS.featureds.length;
	
	if(SDS.fsCn > 1){
		
	SDS.spager = document.createElement('div');
	SDS.spager.id = 'home-featured-spager';
	SDS.prevFS = document.createElement('div');
	SDS.prevFS.id = 'home-prevFS';
	SDS.nextFS = document.createElement('div');
	SDS.nextFS.id = 'home-nextFS';
	SDS.FSpagerText = document.createElement('div');
	SDS.FSpagerText.id = 'home-spager-text'; 
	
	
	SDS.spager.appendChild(SDS.prevFS);
	SDS.spager.appendChild(SDS.FSpagerText);
	SDS.spager.appendChild(SDS.nextFS);
	SDS.eID('featured-sites').appendChild(SDS.spager);
	/*SDS.eID('featured-articles').appendChild(SDS.nextF);
	SDS.eID('featured-articles').appendChild(SDS.prevF);*/
	
	
	SDS.aEv(SDS.prevFS,'click',SDS.displayPrevFS,null);
	SDS.aEv(SDS.nextFS,'click',SDS.displayNextFS,null);
	SDS.aEv(SDS.prevFS,'dblclick',SDS.preventDef,null);
	SDS.aEv(SDS.nextFS,'dblclick',SDS.preventDef,null);
	SDS.aEv(SDS.eID('featured-articles'),'click',SDS.cancelRotS,null);
	
	SDS.updateFSPager();
	
	SDS.spagerTimeout = setTimeout(SDS.rotateFS,5000);
	}
	
	}
	
	/*image slideshow*/
	if( (SDS.eID('main-img') != null) && (SDS.eID('thumb-panel-slider') != null) ){
		SDS.mainImg = SDS.eID('main-img');
		/*alert(SDS.mainImg.parentNode.href);*/
		SDS.slider = SDS.eID('thumb-panel-slider');	
		SDS.panel = SDS.eID('thumb-panel');
		
		SDS.sliderWidth = 0;
		
		var tmp =  SDS.slider.getElementsByTagName('a');
		SDS.thumbs = new Array();
		var i;
		var debug = "0";
		for(i=0;i<tmp.length;i++){
			SDS.thumbs.push(tmp[i].firstChild);
			SDS.aEv(SDS.thumbs[i],'click',SDS.changeImage, null);
			SDS.aEv(SDS.thumbs[i],'mouseover',SDS.imgToColor, null);
			SDS.aEv(SDS.thumbs[i],'mouseout',SDS.imgToGray, null);
			SDS.sliderWidth += SDS.thumbs[i].width+2;
			debug += " + "+(SDS.thumbs[i].width+2);
		}
		SDS.sliderWidth -= 2;
		
		
		
		if(SDS.sliderWidth>475){
			SDS.slider.style.width = (SDS.sliderWidth+10)+'px';
			/*SDS.slider.style.height = '77px';*/
			SDS.slider.style.position = 'absolute';
			SDS.slider.style.overflow = 'hidden';
			SDS.panel.style.width = '475px';
			/*SDS.panel.style.height = '81px';*/
			SDS.panel.style.overflow = 'hidden';
			
			SDS.sliderRatio = SDS.sliderWidth/475;
			SDS.aEv(SDS.slider,'mousemove',SDS.handleSliderMouseover, null);
			SDS.aEv(SDS.slider,'mouseout',SDS.handleSliderMouseout, null);
		}
		
	} else if( (SDS.eID('main-img') != null) && (SDS.eID('blog-left') != null) ){
		SDS.mainImg = SDS.eID('main-img');
		SDS.thumbs = SDS.eClass(SDS.eID('blog-left'),'img','thumb');
		var i;
		for(i=0;i<SDS.thumbs.length;i++){
			SDS.aEv(SDS.thumbs[i],'click',SDS.changeImage, null);
		}
	}
	
	SDS.loading = document.createElement('div');
	SDS.loading.id = 'loading';
	SDS.eID('footer').appendChild(SDS.loading); 
	
		
	SDS.test = document.createElement('div');
	SDS.test.id = 'SDS-test'; 
	
	/*SDS.eID('footer').appendChild(SDS.test);*/
	SDS.test.innerHTML = debug;
};

SDS.aEv(window, 'load', SDS.init,null);
