/**
*
*  URL encode / decode
*  http://www.webtoolkit.info/
*
**/
 
var url_encode = {
 
	// public method for url encoding
	encode : function (string) {
		return escape(this._utf8_encode(string));
	},
 
	// public method for url decoding
	decode : function (string) {
		return this._utf8_decode(unescape(string));
	},
 
	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
 
		}
 
		return string;
	}
 
}

function checkMandatories(formular){
		var fehler=false;
		$(formular).find(".mandatory").each(function(i){

			if($(this).attr("type")=="checkbox"){

				if($(this).attr("checked")== false && $(this).attr("disabled")==false){
					fehler=true;
					try {
						$(this).next().animate( { backgroundColor:"white", color:"#006bb3" }, { queue:true, duration:250 } );
						$(this).next().animate( { backgroundColor:"#ff0000", color:"white" }, { queue:true, duration:250 } );
						$(this).next().animate( { backgroundColor:"white", color:"#006bb3" }, { queue:true, duration:250 } );
						$(this).next().animate( { backgroundColor:"#ff0000", color:"white" }, { queue:true, duration:300 } );
					} catch(e){}
					show_hinweis("Bitte überprüfen Sie die Pflichtfelder.");
				} else {
					try {	
						$(this).next().animate( { backgroundColor:"transparent", color:"black" }, { queue:true, duration:250 } );
					} catch(e){}
				}
			} else {
				if($(this).val()=="" && $(this).attr("disabled")==false){
					fehler=true;
					try {
						$(this).animate( { backgroundColor:"white", color:"black" }, { queue:true, duration:250 } );
						$(this).animate( { backgroundColor:"#ff0000", color:"#006bb3" }, { queue:true, duration:250 } );
						$(this).animate( { backgroundColor:"white", color:"#006bb3" }, { queue:true, duration:250 } );
						$(this).animate( { backgroundColor:"#ff0000", color:"white" }, { queue:true, duration:300 } );
					} catch(e){}
				} else {
					try {
						$(this).animate( { backgroundColor:"white", color:"black" }, { queue:true, duration:500 } );
					} catch(e){}
				}
			}
		});
		return fehler;
}

function init(){



	if($("#hinweis_text").text() != "")show_hinweis($("#hinweis_text").html());
		
}




$(document).ready(function(){
	


//  _______________________________________________________________


  init();
  $("a[rel='lightbox']").fancybox();


});

function hinweis_aus() {
  //document.getElementById("hinweis").style.visibility = "hidden";
	$("#hinweis").animate({"top":-$("#hinweis").height()},300, "easeInBack");

}

function show_hinweis(hinweis, decode){
	if(decode)hinweis = $.url.decode(hinweis);
	$("#hinweis_text").html(hinweis);
	document.getElementById("hinweis").style.visibility = "visible";
	//$("#hinweis").css("z-index",100);
	var posY =  ($(window).height() / 2) - ($("#hinweis_text").height() / 2);
	$("#hinweis").css("top",-$("#hinweis").height());
	//$("#hinweis").css("z-index",100);
	$("#hinweis").animate({"top":posY},800, "easeOutBounce");
}
