// Was alles ausgeführt werden muss wenn die Seite geladen ist
/*************************************************************/
addLoadEvent(setRubrikCount);
addLoadEvent(setScrollSpeed);
/*************************************************************/

// Feste breite des Rubrikbildes
var RubrikWidth = 100;
var BildZoom = 16;
var lastID = 0;
var lastSpeed = 0;
var newID = 0;
var newl = 0;

// Erstellt das Fischauge
/*$(document).ready(
	function()
	{	
		$('#dock-links').Fisheye(
			{
				maxWidth: 30,
				items: 'a',
				container: '.dock-links-container',
				itemWidth: 100,
				maxWidth: 0, // Es wird nichts vergrössert
				proximity: 80,
				alignment : 'center',
				valign: 'bottom',
				halign : 'center',
				itemsText: 'span'
			}
		)
	}
);*/

// Gibt die sehenden Rubriken aus
function setRubrikCount(){
	var RubrikPerSite = 9;
	
	if(document.getElementById('dock')){	
		var RubrikCount = RubrikPerSite + document.getElementById('dock').scrollLeft / RubrikWidth;
		var TotalCount = document.getElementById('intRubrikenCount').value;
		
		if(RubrikCount > TotalCount)
			RubrikCount = TotalCount;
		
		document.getElementById('rubrikencounter').innerHTML = "Rubriken " + (Math.round(RubrikCount) - (RubrikPerSite - 1)) + " bis " + Math.round(RubrikCount) + " von " + TotalCount;
	}
}

// Scrollt das Dock nach rechts
function right(){
	lastSpeed = scrollStep;
	scrollDivLeft('dock');
}

// Scrollt das Dock nach links
function left(){
	lastSpeed = scrollStep;
	scrollDivRight('dock');
}

// Stopt das Scrollen
function pause(){
	stopMe();
	scrollStep = lastSpeed;
}

// Zeigt das Menu mit den Unterrubriken an
function showSubRub(id, l){
	var check = document.getElementById("lstKantone");
	
	if(check){
		window.clearInterval(inter);
		
		var lstKantone = "";
		var aryIdList = getArrayFromList(document.getElementById("lstKantone").value, ",");
		
		if(aryIdList.length > 1){
			var lstBezirke = getBezirke();
			
			/*if(lstBezirke == "")
				alert("Es muss mindestens ein Bezirk ausgewählt werden");
			else
				window.location.href = strLink + "?view=result&type=multi&intRubrik=" + rid + "&lstBezirke=" + lstBezirke + "&lstKantone=" + document.getElementById("lstKantone").value;*/
		}else{
			var lstBezirke = "";
			
			for(var i=0;i<aryBezirke.length;i++){
				if(lstBezirke == "")
					lstBezirke = aryBezirke[i];	
				else
					lstBezirke = lstBezirke + "," + aryBezirke[i];
			}
			
			/*if(lstBezirke == "")
				alert("Es muss mindestens ein Bezirk ausgewählt werden");
			else
				window.location.href = strLink + "?view=result&type=single&intRubrik=" + rid + "&lstBezirke=" + lstBezirke + "&lstKantone=" + document.getElementById("lstKantone").value;*/
		}
		
		newID = id;
		newl = l;
		
		req.open("GET", '/custom/firmen/online/ajax/getSubMenu.cfm?lstKantone=' + document.getElementById("lstKantone").value + '&lstBezirke=' + lstBezirke + '&intRubrikID=' + id, true);
		req.onreadystatechange = getSubMenuHandle;
		req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		req.send(null);
	}else{
		disable(lastID);
	}
}

// Wenn die Antwort mit dem Menu kommt
function getSubMenuHandle(){
	switch(req.readyState) {
		case 4:
			if(req.status!=200) {
				// alert("Fehler: " + req.status); 
			}else{
				var check = document.getElementById("dockDiv");
				
				if(check){
					document.getElementById("dockDiv").innerHTML = req.responseText;
			
					var lstDiv = document.getElementsByTagName("div");
					
					for(var i=0;i<lstDiv.length;i++){
						if(lstDiv[i].id.substr(0,4) == "sub_"){
							lstDiv[i].style.display = 'none';
						}
					}
					
					if(lastID != 0){
						document.getElementById('img_rub_' + lastID).style.width = (document.getElementById('img_rub_' + lastID).width - BildZoom) + 'px';
						document.getElementById('img_rub_' + lastID).style.marginLeft = '0px';
						document.getElementById('img_rub_' + lastID).style.marginRight = '0px';	
						lastID = 0;
					}
					
					document.getElementById('sub_' + newID).style.display = 'block';
					document.getElementById('sub_' + newID).style.marginLeft = (newl - document.getElementById("dock").scrollLeft) + 'px';
					
					
					document.getElementById('img_rub_' + newID).style.marginLeft = (BildZoom / 2 * -1) + 'px';
					document.getElementById('img_rub_' + newID).style.marginRight = (BildZoom / 2 * -1) + 'px';
					document.getElementById('img_rub_' + newID).style.width = (document.getElementById('img_rub_' + newID).width + BildZoom) + 'px';
					
					lastID = newID;
				}else{
					lastID = 0;
				}
			}
		break;	
	default:
		return false;
		break;     
	}
}

// Blendet das Menu nach 1.5 Sekunden aus
function disableSubRub(id){
	inter = window.setInterval("disable(" + id + ")", 1500);
	
}

// Blendet das Menu sofort aus
function disable(id){
	var check = document.getElementById('sub_' + id);
	
	if(check){
		document.getElementById('sub_' + id).style.display = 'none';
		document.getElementById('img_rub_' + id).style.width = (document.getElementById('img_rub_' + id).width - BildZoom) + 'px';
		document.getElementById('img_rub_' + id).style.marginLeft = '0px';
		document.getElementById('img_rub_' + id).style.marginRight = '0px';	
		lastID = 0;
		window.clearInterval(inter);
	}else{
		lastID = 0;
		window.clearInterval(inter);
	}
}

/*******************************************************************************************************************************/
/**************************************************** Horizontal Scrollen ******************************************************/
/*******************************************************************************************************************************/

var scrollStep = 3;
var scrollTime = 4;
var scrollStepPlus = 0.02;

var timerLeft = "";
var timerRight = "";

function setScrollSpeed(){
	
	if(document.Platform.browser.toLowerCase() == "ie"){
		switch(navigator.userAgent.substr(navigator.userAgent.indexOf('MSIE') + 5,1)){
			case "7": 
				scrollStep = 5;
				scrollTime = 80;
				scrollStepPlus = 1;
				break;
			case "8": 
				scrollStep = 5;
				scrollTime = 30;
				scrollStepPlus = 1;
				break;
			default:
				scrollStep = 1;
				scrollTime = 50;
				scrollStepPlus = 1;
				break;
		}
	}
}

function scrollDivLeft(id){
	setRubrikCount();
	clearTimeout(timerRight) 
	
	scrollStep = scrollStep + scrollStepPlus;

	document.getElementById(id).scrollLeft += scrollStep;
	timerRight = setTimeout("scrollDivLeft('"+id+"')", scrollTime)
}

function scrollDivRight(id){
	setRubrikCount();
	clearTimeout(timerLeft)
	
	scrollStep = scrollStep + scrollStepPlus;
	
	document.getElementById(id).scrollLeft -= scrollStep
	timerLeft = setTimeout("scrollDivRight('"+id+"')", scrollTime)
}

function stopMe(){
	clearTimeout(timerRight) 
	clearTimeout(timerLeft)
}

document.Browser = {
	IE:     navigator.userAgent.indexOf('MSIE') > -1,
	Opera:  navigator.userAgent.indexOf('Opera') > -1,
	WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1,
	Gecko:  navigator.userAgent.indexOf('Gecko') > -1 && navigator.userAgent.indexOf('KHTML') == -1,
	MobileSafari: !!navigator.userAgent.match(/Apple.*Mobile.*Safari/),
	Safari:navigator.userAgent.indexOf('Safari') > -1,
	Firefox:navigator.userAgent.indexOf('Firefox') > -1
};

document.Platform = {
	isMac: !!(navigator.appVersion.match(/(Macintosh|Mac OS X)/)),
	isWin: !!(navigator.appVersion.match(/(Windows)/)),
	browser: (document.Browser.IE ? 'ie' : ((document.Browser.Opera) ? 'opera' : ((document.Browser.Safari) ? 'safari' : ((document.Browser.Firefox || document.Browser.Gecko) ? 'firefox' : '') ) ) )
};
