var xmlhttp = null; 
var gotLoader;
var innerStuff;

function loadGoogleMaps(address, firm, sd) {
      if (GBrowserIsCompatible()) {	
		var geocoder = new GClientGeocoder();
		  geocoder.getLatLng(
		    address,
		    function(point) {
		      if (!point) {
		        //alert(address);
		      } else {
		      	//alert(point);
		      	var map = new GMap2(document.getElementById("map"));
				map.addControl(new GSmallMapControl());

				point=new GLatLng(52.4869,13.52997);



		        map.setCenter(point, 15);
		        var marker = new GMarker(point);
		        map.addOverlay(marker);
		        
		        GEvent.addListener(marker,"click", function() {
     	    		var myHtml = "<h1>"+firm+"</h1>"+address.replace(", ", "<br />");
     	    		map.openInfoWindowHtml(point, myHtml);
    	  		});


		      }
		    }
		  );
		}
}
	
	
function loadurl(dest,obj,params,loader) {

	try 
	{
	    xmlhttp = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	}

	catch (e) 
	{
   		alert('Es konnt keine Verbindung hergestellt werden.');
	}

	

	 xmlhttp.onreadystatechange = function(){

 		// 0=Uninitialised 1=Loading 2=Loaded 3=Interactive 4=done

		if ((xmlhttp.readyState==4)&&(xmlhttp.status==200)&&(xmlhttp.responseText)) {

			//document.getElementById(loader).innerHTML=innerStuff;
			//gotLoader=0;
    		document.getElementById(obj).innerHTML = xmlhttp.responseText;
			
		}else if((xmlhttp.readyState<=3)&&(!gotLoader)){
			//gotLoader=1;
			//innerStuff=document.getElementById(loader).innerHTML;
			//document.getElementById(loader).innerHTML='<img style=\"float:left;margin-bottom:4px;\" src=\"images/loading.gif\" alt=\"...\" />&nbsp;'+innerStuff;
		}

	 }


 
 xmlhttp.open('POST', dest+'?'+params, true);

// send the request. if this is a POST request we would have
// sent post variables: send('name=aleem&gender=male)
// Moz is fine with just send(); but
// IE expects a value here, hence we do send(null);
 xmlhttp.send(params);


}



function checkCityList(){
	
	if((document.getElementById('countryID').value=='')&&(document.getElementById('cityID').value=='')){
	 if((document.getElementById('firstCountry'))&&(document.getElementById('firstCountry').value!='')){
	  document.getElementById('countryID').value=document.getElementById('firstCountry').value;
	 }else if(document.getElementById('firstCity').value!=''){
	  document.getElementById('cityID').value=document.getElementById('firstCity').value;
	 }else{
	  return false;
	 }
	}

}

function checkCitySelect(){
	if((!document.getElementById('countrySelect').value)&&(!document.getElementById('citySelect').value)){
		alert("Please choose either a country or a city");return false;
	}else if(!document.getElementById('citySelect').value){
		document.getElementById('countryID').value=document.getElementById('countrySelect').value;
		return true;
	}else{
		document.getElementById('cityID').value=document.getElementById('citySelect').value;
		return true;
	}	
	
}


 function findPos(obj) {
			var curleft = curtop = 0;
			if (obj.offsetParent) {
				curleft = obj.offsetLeft
				curtop = obj.offsetTop
				while (obj = obj.offsetParent) {
					curleft += obj.offsetLeft
					curtop += obj.offsetTop
				}
			}
		return [curleft,curtop];
		}

   		function hideTooltip() {
   		
    		document.getElementById('tippopup').style.visibility='hidden';
    		
        }
        
        function showTooltip(obj,e,head,inhalt) {
        
        	position=findPos(obj);
			document.getElementById('tippopup').style.top=position[1]+"px";
			document.getElementById('tippopup').style.left=position[0]+20+"px"; 

	
	        document.getElementById('tippopuphead').innerHTML=head;
            document.getElementById('tippopupinhalt').innerHTML=inhalt.replace('\n','<br>');

            document.getElementById('tippopup').style.visibility='visible'; 
            obj.onmouseout=hideTooltip;
            
        }
        




function setOpacity(mydiv,opacity) {
    mydiv.style.opacity=opacity/100;
    mydiv.style.MozOpacity=opacity/100;
    mydiv.style.filter='alpha(opacity='+opacity+')';
    if (opacity>1) {mydiv.style.display = 'block';} else {mydiv.style.display = 'none';}
}

function showInfoBox(id){

	if(!currentID){
		currentID="info_benefits";
	}
	
	if(currentID!=id){
		speed=2; // kleinere zahlen schneller
		step=2;
		temp=0;
			
		currentdiv=document.getElementById(currentID);
		
		for (i=0;i<=100;i=i+step) {
		    	setTimeout("setOpacity(currentdiv,"+(100-i)+")",i*speed+temp);
		}		
	}

	if(currentID!=id){
		mydiv=document.getElementById(id);
		setOpacity(mydiv,0);
				
		speed=10; // kleinere zahlen schneller
		step=2;
		temp=0;
			
		for (i=0;i<=100;i=i+step) {
		    	setTimeout("setOpacity(mydiv,"+i+")",i*speed+temp);
		}
	}

}


function checkAccessLevel(type){


	selected_access=radioWert(document.become_member.access_level);
	selected_membership=radioWert(document.become_member.membership_level);
	access_membership=selected_access.split("_");
	

	if(access_membership[1]!=selected_membership){
		if(type=="membership"){
			document.getElementById(selected_access).checked=false;
			document.getElementById(access_membership[0]+"_"+selected_membership).checked=true;
			
			
			
		}else{
			document.getElementById(selected_membership).checked=false;
			document.getElementById(access_membership[1]).checked=true;

			newPreis=preis[access_membership[1]][access_membership[0]];
			selected_membership=access_membership[1];			
		}
	}
	
	newPreis=preis[selected_membership][access_membership[0]];
	document.getElementById('priceholder').innerHTML=number_format(newPreis, 0, 0)+"&nbsp;&euro;";
	document.getElementById('membershipholder').innerHTML=selected_membership;	
	
	if(access_membership[0]!="AllCities"){
		document.getElementById('town_select_container').style.display='block';
		document.getElementById('membershipholder').innerHTML+=" (10 Cities)";
		checkSelectedTowns();
	}else{
		document.getElementById('town_select_container').style.display='none';
		document.getElementById('membershipholder').innerHTML+=" (All Cities)";
		document.getElementById('selected_towns_holder').innerHTML="&nbsp;";
		document.getElementById('additional_towns_holder').innerHTML="&nbsp;";
		document.getElementById('additional_towns_priceholder').innerHTML="&nbsp;";
		additionalTowns=0;
	}
	
	checkTotalPrice();
	
	//alert(newPreis);
	//alert(access_membership[0]+selected_membership);
	//alert(access_membership[1]);
	//alert(selected_membership);
}

function checkSelectedTowns(){

	
	selected_membership=radioWert(document.become_member.membership_level);
	
	anzahlSelectedTowns=checkboxAnzahl(document.become_member.elements['selected_towns[]']);
	additionalTowns=0;
	
	if(anzahlSelectedTowns>10){
		additionalTowns=(anzahlSelectedTowns-10)
		anzahlSelectedTowns=10;
	}

	document.getElementById('selected_towns_holder').innerHTML=anzahlSelectedTowns+" / 10 cities";
	
	if(additionalTowns>0){
		document.getElementById('additional_towns_holder').innerHTML="<hr style='border-top:1px solid #000;margin-top:4px;' />"+additionalTowns+" additional";
		document.getElementById('additional_towns_priceholder').innerHTML=number_format((preis[selected_membership]['AdditionalCity']*additionalTowns), 0, 0)+"&nbsp;&euro;";
	}else{
		document.getElementById('additional_towns_holder').innerHTML="&nbsp;";
		document.getElementById('additional_towns_priceholder').innerHTML="&nbsp;";
	}

	checkTotalPrice();
}

function checkTotalPrice(){
	selected_access=radioWert(document.become_member.access_level);
	selected_membership=radioWert(document.become_member.membership_level);
	access_membership=selected_access.split("_");
	newPreis=preis[selected_membership][access_membership[0]];
	
	totalPrice=(parseInt(preis[selected_membership]['AdditionalCity']*additionalTowns)+(newPreis));
	totalcontainer=document.getElementById('totalsumholder');
	totalcontainer.innerHTML=number_format(totalPrice,0,"",".")+"&nbsp;&euro";

}

function radioWert(rObj) {
    for (var i=0; i<rObj.length; i++) if (rObj[i].checked) return rObj[i].value;
    return false;
}

function checkboxAnzahl(rObj) {
	var c=0;
    for (var i=0; i<rObj.length; i++) if (rObj[i].checked) c++;
    return c;
}

function number_format(zahl, kommastellen, fix){

	if(!kommastellen) kommastellen = 0;
    	var neu = '';

		// Runden
    	var f = Math.pow(10, kommastellen);
	    zahl = '' + parseInt( zahl * f + (.5 * (zahl > 0 ? 1 : -1)) ) / f ;

    	// Komma ermittlen
	    var idx = zahl.indexOf('.');

    	// fehlende Nullen einf�gen
	    if(fix)
    	{
	         zahl += (idx == -1 ? '.' : '' )
        	 + f.toString().substring(1);
    	}
    	
	    // Nachkommastellen ermittlen
    	idx = zahl.indexOf('.');
	    if( idx == -1) idx = zahl.length;
    	else neu = ',' + zahl.substr(idx + 1, kommastellen);

	    // Tausendertrennzeichen
    	while(idx > 0)
	    {
        	if(idx - 3 > 0)
    	    neu = "." + zahl.substring( idx - 3, idx) + neu;
	        else
        	neu = zahl.substring(0, idx) + neu;
    	    idx -= 3;
	    }
	    
    	return neu;
    	
}



		function hideForms(formOne, formTwo){
			document.getElementById(formOne).style.visibility='hidden';
			document.getElementById(formTwo).style.visibility='hidden';			
		}
		
		function showForms(formOne, formTwo){
			document.getElementById(formOne).style.visibility='';
			document.getElementById(formTwo).style.visibility='';			
		}

		try {
			document.execCommand("BackgroundImageCache", false, true);
		} 
		catch(err) {}
			

		
		
		
		
		
		$(document).ready(function(){
		
		    $(".lightbox").lightbox();
			
			$("<div class=\"lupe\"><img src=\"/images/magnifier.gif\" alt=\"\" /></div>").insertAfter($("a.lightbox img.frame"));
			$("<br class=\"clear\" /><br />").insertAfter($("a.lightbox:last"));
			
			$("p.teammember").click(function () {
		    		$("div.memberinfos").slideUp("medium");
					$("div."+this.id).slideDown("medium");
		    });

			$("#news_items a").click(function(){
				$(".news_details").slideUp("medium");
				$("#"+this.rel).slideDown("medium");
				$("#news_items a").removeClass("active");
				$(this).addClass("active")
			});

			

		    $("#logo_academy").mouseover(function(){		      
		      $("#home_content").show();
		      $("#home_arrow").stop();		      
		      $("#home_arrow").animate({ 
		        top: "250px"
		      }, 600 );
		      $(".home_content").hide();
		      $("#home_academy").show();
		    });

		    $("#logo_offshoring").mouseover(function(){
			  $("#home_content").show();
			  $("#home_arrow").stop();		    	
		      $("#home_arrow").animate({ 
		        top: "150px"
		      }, 600 );
		      $(".home_content").hide();
		      $("#home_offshoring").show();
		    });
		    
		    $("#logo_consultants").mouseover(function(){
		      $("#home_content").show();
		      $("#home_arrow").stop();
		      $("#home_arrow").animate({ 
		        top: "40px"
		      }, 600 );
		      $(".home_content").hide();
		      $("#home_consultants").show();
		    });
		    

		});
 
 
		function makeScrollable(wrapper, scrollable){
		  // Get jQuery elements
		  var wrapper = $(wrapper), scrollable = $(scrollable);
		
		  // Hide images until they are not loaded
		  scrollable.hide();
		  var loading = $('<div class="loading">Loading...</div>').appendTo(wrapper);
		
		  // Set function that will check if all images are loaded
			  var interval = setInterval(function(){
			  var images = scrollable.find('img');
			  var completed = 0;
			
			    	// Counts number of images that are succesfully loaded
				    images.each(function(){
				      if (this.complete) completed++;
				    });
				    
			
				    if (completed == images.length){
				      clearInterval(interval);
				      // Timeout added to fix problem with Chrome
				      setTimeout(function(){
				
				        loading.hide();
				        // Remove scrollbars
				        wrapper.css({overflow: 'hidden'});                                              
				
				        scrollable.slideDown('slow', function(){
				          enable();
				        });
				      }, 1000);
				    }
			  }, 100);
		
				function enable(){
					
				  var wrapperWidth = wrapper.width();
				  var wrapperHeight = wrapper.height();
				  var scrollableHeight = scrollable.outerHeight();
				  var wrapperOffset = wrapper.offset();
				  var top = 0;
				  scrollInterval="";
				  
				  $("#news_button_down").mouseenter(
				  	function(){
							scrollInterval=setInterval(function(){if(top<(scrollableHeight-290)){top = top+10;wrapper.animate({scrollTop:top},100);}},100);
				  	}
				  );

				  $("#news_button_down").mouseleave(function(){clearInterval(scrollInterval)});				  
				  $("#news_button_up").mouseenter(function(){
					  	scrollInterval=setInterval(function(){if(top>0){top = top-10;wrapper.animate({scrollTop:top},100);}},100);
				  });
				    
				  $("#news_button_up").mouseleave(function(){clearInterval(scrollInterval)});
				   
				}

		}
		
		$(function(){
		  makeScrollable("div.news_content", "div.news_items");
		});
 


