/*
	---------------------------------------
	 Standard Funktionen
	---------------------------------------
*/
	// Get elements by class name
	function getElementsByClassName(classname,tag) {
		if(!tag) tag = "*";
		var elements =  document.getElementsByTagName(tag);
		var total_elements = elements.length;
		var regexp = new RegExp('\\b' + classname + '\\b');
		var class_items = new Array()
		
		for(var i=0;i<total_elements;i++) { 
			var this_item = elements[i];
			if(regexp.test(this_item.className)) {
				class_items.push(this_item);
			}
		}
		return class_items;
	}
		
//	==============================================
// 	 Bilder/Texte ein-/ausblenden
//	==============================================	

	function fadeFx(element) {
		if(element.length < 1) { return; }
		
		// Element teilen
		var el_array = element.split("_");
		
		// Anzahl Zeichen finden
		var anz_zeichen = el_array[1].length;
		
		// Positionen laden
		var pos_1 = el_array[1].charAt(0);
		var pos_2 = el_array[1].charAt(1);
		
		// Check auf Element-Zeichen
		if(anz_zeichen == 4) {
			$elname = el_array[0] + '_' + pos_1 + pos_2 + '00';
		} else if(anz_zeichen == 3) {
			$elname = el_array[0] + '_' + pos_1 + '00';
		} else if(anz_zeichen == 2) {
			$elname = el_array[0] + '_00';
		} else {
			//nix
		}
		
		// Bild ausblenden, Leerbild einblenden		
		if(document.getElementById(element).style.display == "block") {
			// Bild ausblenden
			var div = $(element).setStyles({
				display:'none',
				opacity: 0
			});
			new Fx.Style(div, 'opacity', {
				changeTransition: Fx.Transitions.Back.easeOut,
				duration: 400
			} ).start(1,0);
			
			// Leer.gif einblenden
			var leerdiv = $($elname).setStyles({
				display:'block',
				opacity: 0
			});
			new Fx.Style(leerdiv, 'opacity', {duration: 400} ).start(1,0);
		// Bild einblenden, Leerbild ausblenden
		} else {
			// Leer.gif ausblenden
			var leerdiv = $($elname).setStyles({
				display:'none',
				opacity: 0
			});
			new Fx.Style(leerdiv, 'opacity', {duration: 400} ).start(0,1);
						
			// Bild einblenden
			var div = $(element).setStyles({
				display:'block',
				opacity: 0
			});
			new Fx.Style(div, 'opacity', {
				changeTransition: Fx.Transitions.Back.easeOut,
				duration: 400
			} ).start(0,1);
		}
	}

//	==============================================
// 	 Objekte ein- / ausblenden
//	==============================================
	function Hide(name) {
		if(name == 'all') {
			document.getElementById('lfs_01').style.display = 'none'; 			
			document.getElementById("fs_01_a").style.color= '#666';

			document.getElementById('lfs_02').style.display = 'none';
			document.getElementById("fs_02_a").style.color= '#666';

			document.getElementById('lfs_03').style.display = 'none';
			document.getElementById("fs_03_a").style.color= '#666';

			document.getElementById('lfs_04').style.display = 'none';
			document.getElementById("fs_04_a").style.color= '#666';

			document.getElementById('lfs_05').style.display = 'none';
			document.getElementById("fs_05_a").style.color= '#666';

			document.getElementById('lfs_06').style.display = 'none';
			document.getElementById("fs_06_a").style.color= '#666';

			document.getElementById('lfs_07').style.display = 'none';
			document.getElementById("fs_07_a").style.color= '#666';

			document.getElementById('lfs_08').style.display = 'none';
			document.getElementById("fs_08_a").style.color= '#666';

			document.getElementById('lfs_09').style.display = 'none';
			document.getElementById("fs_09_a").style.color= '#666';

			document.getElementById('lfs_10').style.display = 'none';
			document.getElementById("fs_10_a").style.color= '#666';

			document.getElementById('lfs_11').style.display = 'none';
			document.getElementById("fs_11_a").style.color= '#666';

			document.getElementById('lfs_13').style.display = 'none';
			document.getElementById("fs_13_a").style.color= '#666';

			document.getElementById('lfs_14').style.display = 'none';
			document.getElementById("fs_14_a").style.color= '#666';

		} else {
			document.getElementById(name).style.display = 'none';
		}
	}

	function active(name) {
			document.getElementById(name).style.color= '#f08a00';
	}

//	==============================================
// 	 Fading
//	==============================================
	function opacity(id, opacStart, opacEnd, millisec) {
		// Fading-Geschwindigkeit
		var speed = Math.round(millisec / 100);
		var timer = 0;
	
		// Ein- oder ausblenden?
		if(opacStart > opacEnd) {
			var i="";
			for(i = opacStart; i >= opacEnd; i--) {
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
				timer++;
			}
		} else if(opacStart < opacEnd) {
			for(i = opacStart; i <= opacEnd; i++)
				{
				setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
				timer++;
			}
		}
	}
	
	// Opazität für verschiedene Browser ausgeben
	function changeOpac(opacity, id) {
		var object = document.getElementById(id).style;
		object.opacity = (opacity / 100);
		object.MozOpacity = (opacity / 100);
		object.KhtmlOpacity = (opacity / 100);
		object.filter = "alpha(opacity=" + opacity + ")";
	}
			
//	==============================================
// 	 Loading Message ausblenden
//	==============================================
	function hideLoadingMessage() {
		opacity('modal', 85, 0, 300);
		Hide('modal');
		opacity('loading', 100, 0, 300);
		Hide('loading');
	}

//	==============================================
// 	 Loading Message einblenden
//	==============================================	
	function loading() {
		// Show loading dialog
		if(document.getElementById("loading")) {
			document.getElementById("modal").style.display = "block";
			document.getElementById("loading").style.display = "block";
		} else {
			window.setTimeout("loading()", 50);
		}
	}
	loading();
			
	function init() {
		hideLoadingMessage();
		rankingsPush();
	}
	window.onload=init;
