function initInputs()
{
	var inputs = document.getElementsByTagName("input");
	for (var i=0; i<inputs.length; i++)
	{
		if (inputs[i].type == "text" && (inputs[i].name == "search"))
		{
			inputs[i].onfocus = function ()
			{
				if (this.value == "vul een dorp in")
					this.value = "";
			}
			inputs[i].onblur = function ()
			{
				if (this.value == "" && this.name == "search") this.value = "vul een dorp in";
			}
		}
	}
}

function initTabs()
{
	var sets = document.getElementsByTagName("ul");
	for (var i = 0; i < sets.length; i++)
	{
		if (sets[i].className.indexOf("tabset") != -1)
		{
			var tabs = [];
			var links = sets[i].getElementsByTagName("a");
			for (var j = 0; j < links.length; j++)
			{
				if (links[j].className.indexOf("tab") != -1)
				{
					tabs.push(links[j]);
					links[j].tabs = tabs;
					var c = document.getElementById(links[j].rel.substr(links[j].rel.indexOf("#") + 1));

					//reset all tabs on start
					if (c) if (links[j].className.indexOf("active") != -1) c.style.display = "block";
					else c.style.display = "none";

					links[j].onclick = function ()
					{
						var c = document.getElementById(this.rel.substr(this.rel.indexOf("#") + 1));
						if (c)
						{
							//reset all tabs before change
							for (var i = 0; i < this.tabs.length; i++)
							{
								document.getElementById(this.tabs[i].rel.substr(this.tabs[i].rel.indexOf("#") + 1)).style.display = "none";
								this.tabs[i].className = this.tabs[i].className.replace("active", "");
							}
							this.className += " active";
							c.style.display = "block";
							return false;
						}
					}
				}
			}
		}
	}
}
function widthFix() 
{ 
	if(document.getElementById("page").clientHeight < document.documentElement.clientHeight)
	{
		var _body = document.getElementsByTagName("body");
		document.getElementById("page").style.minHeight = document.documentElement.clientHeight + "px";
	}
  	if (navigator.userAgent.indexOf("Firefox/3.0") != -1)
	{
		var main = document.getElementById("main");
		main.style.width = "941px";
	}
	if (navigator.userAgent.indexOf("Opera") != -1 || navigator.userAgent.indexOf("Safari") != -1)
	{
		var main = document.getElementById("main");
		main.style.width = "939px";
	}
} 
if (window.addEventListener) 
{
	window.addEventListener("load", initTabs, false);
	window.addEventListener("load", initInputs, false);
	window.addEventListener("load", widthFix, false);
}
else if (window.attachEvent) 
{	
	window.attachEvent("onload", initTabs);
	window.attachEvent("onload", initInputs);
}

function changeRegionMenu(gebied){
	/*$("select.leeg").css({display:'none'});*/
	$("select.Oostenrijk").css({display:'none'});
	$("select.Duitsland").css({display:'none'});
	$("select.Frankrijk").css({display:'none'});
	$("select.Italie").css({display:'none'});	
	$("select.Zwitserland").css({display:'none'});	
	$("select.Noorwegen").css({display:'none'});	
	$("select.Zweden").css({display:'none'});	
	$("select.Finland").css({display:'none'});	
	$("select.Tsjechië").css({display:'none'});	
	$("select."+gebied).css({display:'inline'});
}

function changeRegionMenuWeerblok(gebied){
	$("select.leeg").css({display:'none'});
	$("select.Oostenrijk").css({display:'none'});
	$("select.Duitsland").css({display:'none'});
	$("select.Frankrijk").css({display:'none'});
	$("select.Italie").css({display:'none'});	
	$("select.Zwitserland").css({display:'none'});	
	$("select.Noorwegen").css({display:'none'});	
	$("select.Zweden").css({display:'none'});	
	$("select.Finland").css({display:'none'});	
	$("select.Tsjechië").css({display:'none'});	
	$("select."+gebied).css({display:'inline'});
}

function changeRegionIFrame(gebied){
	Set_Cookie( 'mygebied', gebied, 30, '/', '', '' );
	$("iframe.weeriframe").attr({src: "http://www.sneeuwverwachting.nl/verwachting/blokSneeuwhoogteHome.asp?regio="+gebied});
}

function changeRegionIFrameWeerblok(gebied){
	Set_Cookie( 'mygebied', gebied, 30, '/', '', '' );
	$("iframe.weeriframe").attr({src: "http://www.sneeuwverwachting.nl/verwachting/blokSneeuwhoogteHome.asp?regio="+gebied});
	$('#weerblokDorp').html('Weersverwachting '+gebied);
}

function initWeerblok(){
	oordLand = Get_Cookie("mijn_oord_land");
	if (!oordLand) oordDorp = "rowa";
	oordDorpnaam = Get_Cookie("mijn_oord_dorp_naam");
	if (!oordDorpnaam) oordDorpnaam = "Abtenau";
	oordDorpcode = Get_Cookie("mijn_oord_dorp_code");
	if (!oordDorpcode) oordDorpcode = "1486";
	
	switch(oordLand) {
	case "rowa":
	  oordLand = "Oostenrijk"
	  break;
	case "rowd":
	  oordLand = "Duitsland"
	  break;
	case "rowf":
	  oordLand = "Frankrijk"
	  break;
	case "rowi":
	  oordLand = "Italie"
	  break;
	case "rowch":
	  oordLand = "Zwitserland"
	  break;
	case "rown":
	  oordLand = "Noorwegen"
	  break;
	case "rows":
	  oordLand = "Zweden"
	  break;
	case "rowfi":
	  oordLand = "Finland"
	  break;
	case "rowcz":
	  oordLand = "Tsjechië"
	  break;
	default:
	  oordLand = "Oostenrijk"
	}

	$("#landmenu").val(oordLand);
	changeRegionMenuWeerblok(oordLand);
	$("select."+oordLand).val(oordDorpnaam);
	
	//$("#weerblokDorp").html("Weersverwachting "+oordDorpnaam);
	
	$("#accordion-weather").accordion({
		header: "h3",
		activate: 0,
		//autoHeight: false,
		change: initTooltip()
	});
	$("#accordion-weather").bind('accordionchange', function(event, ui) {
		ui.newHeader.addClass("acc-headeractive"); // jQuery object, activated header
		ui.oldHeader.removeClass("acc-headeractive"); // jQuery object, previous header
		//ui.newContent // jQuery object, activated content
		//ui.oldContent // jQuery object, previous content
	});
	$("#accordion-loader").css({'display' : 'none'});
	$("#accordion-weather").css({'visibility' : 'visible','height' : 'auto'});	
	
	
}

function weerblokIE6fix(){
	$("#accordion-weather").toggle;
}

function initWeerblokWidget(){
	oordLand = Get_Cookie("mijn_oord_land");
	if (!oordLand) oordDorp = "rowa";
	oordDorp = Get_Cookie("mijn_oord_dorp");
	if (!oordDorp) oordDorp = "Abtenau";
	
	switch(oordLand) {
	case "rowa":
	  oordLand = "Oostenrijk"
	  break;
	case "rowd":
	  oordLand = "Duitsland"
	  break;
	case "rowf":
	  oordLand = "Frankrijk"
	  break;
	case "rowi":
	  oordLand = "Italie"
	  break;
	case "rowch":
	  oordLand = "Zwitserland"
	  break;
	case "rown":
	  oordLand = "Noorwegen"
	  break;
	case "rows":
	  oordLand = "Zweden"
	  break;
	case "rowfi":
	  oordLand = "Finland"
	  break;
	case "rowcz":
	  oordLand = "Tsjechië"
	  break;
	  
	default:
	  oordLand = "Oostenrijk"
	}

	$j("#landmenu").val(oordLand);
	changeRegionMenuWeerblok(oordLand);
	$j("select."+oordLand).val(oordDorp);
	
	$j("#weerblokDorp").html("Weersverwachting "+oordDorp);
	$j("#accordion-weather").accordion({ header: "h3"/*,autoHeight: false*/ });
	$j("#accordion-weather").bind('accordionchange', function(event, ui) {
		ui.newHeader.addClass("acc-headeractive"); // jQuery object, activated header
		ui.oldHeader.removeClass("acc-headeractive"); // jQuery object, previous header
		//ui.newContent // jQuery object, activated content
		//ui.oldContent // jQuery object, previous content
	});
	$j("#accordion-loader").css({'display' : 'none'});
	$j("#accordion-weather").css({'visibility' : 'visible','height' : 'auto'});

	//$j("#weerblokwrap").load("http://www.sneeuwverwachting.nl/xml/"+widgetTime+".asp?widget=true");
}

function initTooltip(timeOut){
	if (timeOut == undefined)
		timeOut = 0;

	setTimeout("toolTip()",timeOut);
}
function toolTip(){
		$('#accordion-weather span.uitleg').cluetip({
			tracking: true,
			splitTitle: '|',
			positionBy: 'mouse',
			topOffset: '0',
			leftOffset: '15',
			width: 150,
			hoverIntent: {    
				  sensitivity:  1,
				  interval:     300,
				  timeout:      0
			},
			onShow: tweedagenSlide()
		})	
}

function tweedagenSlide(){
	$("#weerBox-2dagen-ul-next").click(function(){
		$("#li-toggle").removeClass("hidden");
		$("#weerBox-2dagen-ul").animate( { left:"-164"}, 500 );
    });	
	$("#weerBox-2dagen-ul-previous").click(function(){
		$("#weerBox-2dagen-ul").animate( { left:"0"}, 500, function(){ 
			$("#li-toggle").addClass("hidden");} 
		);
    });	
}


function changeRegionAjax(land, gebiedcode, gebied){
	Set_Cookie( 'mijn_oord_land', land, 30, '/', '', '' );
	Set_Cookie( 'mijn_oord_dorp_code', gebiedcode, 30, '/', '', '' );
	Set_Cookie( 'mijn_oord_dorp_naam', gebied, 30, '/', '', '' );
	/* change title (h2) to selected village */
	//$("#weerblokDorp").html("Weersverwachting "+gebied);
	
	/* replace spaces in gebied for _GET values -> JQuery load method fix; gebied.replace doesnt work! */
	/*var pieces = gebied.split(" ");
	gebied = pieces[0];
	for (var i=1;i<pieces.length;i++)
		gebied += "%20"+pieces[i];*/

	/* re-fill weather box contents (and maintain accordion by replacing individually) */
	//$("#ajax-load").load("/xml/weerblok-content.asp?land="+land+"&dorp="+gebiedcode+" #weerblok-all");

	$("#weerblokDorp").load("/xml/weerblok-content.asp?land="+land+"&dorp="+gebiedcode+" #weerblokDorp-wrap");
	$("#weerBox-2dagen").load("/xml/weerblok-content.asp?land="+land+"&dorp="+gebiedcode+" #weerBox-2dagen");
	$("#weerBox-5dagen").load("/xml/weerblok-content.asp?land="+land+"&dorp="+gebiedcode+" #weerBox-5dagen");
	$("#weerBox-hoogtes").load("/xml/weerblok-content.asp?land="+land+"&dorp="+gebiedcode+" #weerBox-hoogtes");
	$("#weerBox-wind").load("/xml/weerblok-content.asp?land="+land+"&dorp="+gebiedcode+" #weerBox-wind");
	//$("#weerBox-wind").html($("#ajax-load #weerBox-wind").html())
	$("#weerBox-hoogtes").load("/xml/weerblok-content.asp?land="+land+"&dorp="+gebiedcode+" #weerBox-hoogtes", function(){
		initTooltip(500);
	});
}

function changeRegionAjaxWidget(land, gebied){
	var widgetDate = new Date; // Generic JS date object
	var widgetTime = widgetDate.getTime(); // Returns milliseconds since the epoch
	
	Set_Cookie( 'mijn_oord_land', land, 30, '/', '', '' );
	Set_Cookie( 'mijn_oord_dorp', gebied, 30, '/', '', '' );
	
	/* change title (h2) to selected village */
	//$j("#weerblokDorp").html("Weersverwachting "+gebied);
	
	/* re-fill weather box contents (and maintain accordion by replacing individually) */
	//var testlink = "http://www.sneeuwverwachting.nl/xml/"+widgetTime+".asp?widget=true&land="+land+"&dorp="+gebied+" #weerBox-2dagen";
	//var testlink = "http://www.sneeuwverwachting.nl/xml/"+widgetTime+".asp?widget=true #weerBox-2dagen";
	$j("#weerBox-2dagen").load("/xml/"+widgetTime+".asp?widget=true #weerBox-2dagen");
	$j("#weerBox-5dagen").load("/xml/"+widgetTime+".asp?widget=true #weerBox-5dagen");
	$j("#weerBox-hoogtes").load("/xml/"+widgetTime+".asp?widget=true #weerBox-hoogtes");
	$j("#weerBox-wind").load("/xml/"+widgetTime+".asp?widget=true #weerBox-wind");
	$j("#weerBox-hoogtes").load("/xml/"+widgetTime+".asp?widget=true #weerBox-hoogtes");
	//alert(testlink);
}

function changeWeerblokDorp(dorp){
	$('#weerblokDorp').html = 'Weersverwachting '+dorp;
}

function Set_Cookie( name, value, expires, path, domain, secure ) 
{
// set time, it's in milliseconds
var today = new Date();
today.setTime( today.getTime() );

/*
if the expires variable is set, make the correct 
expires time, the current script below will set 
it for x number of days, to make it for hours, 
delete * 24, for minutes, delete * 60 * 24
*/
if ( expires )
{
expires = expires * 1000 * 60 * 60 * 24;
}
var expires_date = new Date( today.getTime() + (expires) );

document.cookie = name + "=" +escape( value ) +
( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 
( ( path ) ? ";path=" + path : "" ) + 
( ( domain ) ? ";domain=" + domain : "" ) +
( ( secure ) ? ";secure" : "" );
}

// this fixes an issue with the old method, ambiguous values 
// with this test document.cookie.indexOf( name + "=" );
function Get_Cookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f
	
	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );
		
		
		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');
	
		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}			

