/* 
dependencies:
- JQuery/jquery-1.2.1.min
- JQuery/Plugins/jq-corner
- JQuery/Plugins/pager
- Common/roularta-commons-1.0.sp
*/

jQuery.noConflict( )


// jQuery
jQuery(document).ready(function() {
	Roularta.popup();
	Roularta.popup("a.rs_popup");
	Roularta.messagent();
  
  if(jQuery("p.more br") != "undefined"){
  	jQuery("p.more br").remove();	
  }     
	
	jQuery("div.sf-menu ul li ul li").hover(	
		function () {
			jQuery(this).parent().parent().addClass("hover");
		},
		function () {
			jQuery(this).parent().parent().removeClass("hover");
		}
	);

	// initieer pager
	if(jQuery('#articleText .page').length > 0) {
	 jQuery('#articleText').pager('.page', {
		navId: 'pagingId',
		textContainer: '#articleText',
		navAttachToElement: '#articleTools',
		scrollTo: '#articleText'
	 }); 
	}

    	//toolbox: dit moet na pager, anders is hoogte verkeerd
	if(jQuery('#toolBox').length > 0) {
	   initToolbox();
	}

	jQuery(".postcodeGoogleMaps").click(function() { 
		jQuery(this).css('color', 'black' ) 
		jQuery(this).attr({ value: "" });
	});
	
	jQuery("div dl").each(	
		function( intIndex ){		
			jQuery(this).children("dd:last").css("margin-bottom","0px");
	  	}	  
	);
	
    // append XML data to topJobsItems
	var topjobs = jQuery("div.topJobItems");
	var topjobsData;
	if(topjobs.length){
	  topjobsData = jQuery(topjobs).metadata();
          if(topjobsData.xml != null){
	     jQuery.get(topjobsData.xml, function(data){
		  // in case the XML url is offline/broken; topjobs is standard displayed none
		  if ( trim(data).length != 0 ) {
			topjobs.prepend(data);
			if(topjobsData.iframe == "true" ){
				jQuery("#topJobs a").each(function(){
					jQuery(this).click(function(){
						top.location.href = jQuery(this).attr('href');
						return false;
					});
				});
			}
			jQuery("#topJobs").fadeIn("slow");
		  }
	     });
          }
	}
	
	// append XML data to pollItems
	var poll = jQuery("div.pollItems");
	var pollData;
	if(poll.length){
		pollData = poll.metadata();
		jQuery.get(pollData.xml, function(data){
			poll.prepend(data);
			// in case the XML url is offline/broken; poll is standard displayed none
			if ( trim(data).length != 0 ) {
				jQuery("#poll").parents().fadeIn("slow");
				var form = poll.find('form[@name="pollform"]');
				var id = form.find('input[@name="pollid"]').attr('value');
                if(!CookieExists('ROULARTA_VOTE_'+id)){
					form.find('input[@name$="submitPoll"]').show();
					form.find('input[@type$="radio"]').removeAttr("disabled");
				} else {
					jQuery("#poll").append(pollData.errormessage);
				}
			}
		});
	}
	initSubMenu();	
	initColumns();
	initColumnsv2();
	initSections();
	initSearchBox();
	initGoogleFrame();
	

	function initMenu()
	{
		var nav = jQuery("#nav").get(0);	
		if(nav !== undefined)
		{			
			var el = nav.getElementsByTagName('li');
			for(var i = 0; i < el.length; i=i+1)
			{
				var ellink = el[i].getElementsByTagName('a')[0];
				var titlename = document.getElementsByTagName('Title')[0];
				if(ellink.innerHTML == titlename.innerHTML)
				{
					el[i].setAttribute("class","current");
					// IE gebruikt className ipv class
					el[i].setAttribute("className","current");
				}
		
			}
		}
	}

	
	function initSubMenu()
	{
		var subnav = jQuery("#nav ul.clearfix .current ul").get(0);	
		if(subnav !== undefined)
		{
			var nav = jQuery("#nav").get(0);
			nav.style.height = "52px";
			jQuery("#contact").get(0).style.height = "52px";
		
		var el = subnav.getElementsByTagName('li');
		for(var i = 0; i < el.length; i=i+1)
		{
			var ellink = el[i].getElementsByTagName('a')[0];
			
			var titlename = document.getElementsByTagName('Title')[0];
			if(ellink.innerHTML == titlename.innerHTML)
			{
				ellink.setAttribute("class","currentsub");
				// IE gebruikt className ipv class
				ellink.setAttribute("className","currentsub");

			}
		
		}
		}
	}

	

		

//slideshow article 
 jQuery("#slideshow_images ul li:not(:first)").hide();
 jQuery("#slideshow_captions ul li:not(:first)").hide();
 numImages = jQuery("#slideshow_images ul li").size();
 jQuery("#slideshow_navigation_label").text("1 / "+numImages);
 jQuery("#slideshow_navigation_label_prev").addClass("disabled");
 if(numImages == 1){
   jQuery("#slideshow_navigation_label_next").addClass("disabled");
 }
 
 jQuery("#slideshow_navigation_label_prev").bind(
  "click",
  function() {
   var current = jQuery("#slideshow_images ul li:visible");
   var size = jQuery(current).prevAll("li").size();
   if(size>0){
    var currentCaption = jQuery("#slideshow_captions ul li").get(size);
    jQuery(current).fadeOut("fast", function(){
     jQuery(this).prev("li").fadeIn("fast");    
    }); 
    jQuery(currentCaption).fadeOut("fast", function(){
     jQuery(this).prev("li").fadeIn("fast");    
    }); 
    jQuery("#slideshow_navigation_label").text(size+" / "+numImages);
    if(size == 1){
      jQuery("#slideshow_navigation_label_prev").addClass("disabled");
    }
    jQuery("#slideshow_navigation_label_next").removeClass("disabled");
   }
  }
 );
 
 jQuery("#slideshow_navigation_label_next").bind(
  "click",
  function() {
   var current = jQuery("#slideshow_images ul li:visible");
   var size = jQuery(current).nextAll("li").size();
   if(size>0){
    var currentCaption = jQuery("#slideshow_captions ul li").get(numImages-size-1);
    jQuery(current).fadeOut("fast", function(){
     jQuery(this).next("li").fadeIn("fast");
    
    }); 
    jQuery(currentCaption).fadeOut("fast", function(){
     jQuery(this).next("li").fadeIn("fast");
    
    }); 
    jQuery("#slideshow_navigation_label").text((numImages-size+1)+" / "+numImages);
    if(size == 1){
      jQuery("#slideshow_navigation_label_next").addClass("disabled");
    }
    jQuery("#slideshow_navigation_label_prev").removeClass("disabled");
   }
  }
 );

});
function initSearchBox(){
	var input = jQuery('input.postcodeGoogleMaps');
	if( jQuery(input).size() != 0){
        initialValue = jQuery(input).val();
		jQuery(input).attr('disabled','disabled');
		var cities = cityList;	
		Roularta.autoComplete(
			input,
			cities,
			function(){ /* on error */
				var inputVal = jQuery(this).val();
				var postcodeMetaData = jQuery(this).metadata();
				var success = false;
				if( postcodeMetaData.required == 'false'){
					if(inputVal == initialValue || inputVal.length == 0) {
						jQuery(this).val("");
						success = true;
					}
				} else {
					if(inputVal.length == 4 && !isNaN(inputVal)){
						/* volgende test is voor 'back' mogelijk te maken */
						success = true;
					}
				} 
				if(!success) {
					if(postcodeMetaData.errormessage != null){
						alert(postcodeMetaData.errormessage);
					}
					return false;
				} else {
					return true;
				}
				
			},
			function(){ /* on success */
				var inputVal = jQuery(this).val();
				var postcodeMetaData = jQuery(this).metadata();
				if (postcodeMetaData.returnValue != null && postcodeMetaData.returnValue == 'postcode') {
					var inputValSplitted = inputVal.split(" ");
					jQuery(this).val(inputValSplitted[0]);
				}
				var searchForm = jQuery(this).parents("form").get(0);
				var communityName = jQuery(searchForm).find('input[@name="communityName"]').get(0);
				jQuery(communityName).val(inputVal);
				var functie = jQuery(searchForm).find("#functie").get(0);
				var functionName = functie.options[functie.selectedIndex].text;
				jQuery(searchForm).find('input[@name="functionName"]').val(functionName);
				return true;
			}
		);
		
		jQuery(input).removeAttr('disabled');
		jQuery("#submitJobSearch").removeAttr('disabled');
	}	
}

function isNumeric(form_value) 
{ 
    if (form_value.match(/^\d+$/) == null) 
        return false; 
    else 
        return true; 
} 

function removeSelectForAutoComplete(input){

}

function submitJobSearchForm() {
	var postcode = jQuery("#postcode").val().substr(0, 4);
	if (isNumeric(postcode) && jQuery("#straal").val() == "") {
		var selectedOptions = jQuery("#straal").selectedOptions();
		jQuery("#straal").addOption("2", selectedOptions[0].text);
		jQuery("#straal").selectOptions("2", true);
	} 
}
function initGoogleFrame()
{
	var g = jQuery("[name=googleSearchFrame]").get(0);
	if(g !== undefined)
	{
		g.style.width = "650px";
	}
	
}
function initColumns() { //nodig voor Adicio-templates

var c1 = jQuery("#col1").get(0);
var c2 = jQuery("#col2").get(0);

var c1place = jQuery("#col1 .placeholder").get(0);
var c1multi = jQuery("#col1 .placeholder .multiholder").get(0);
var c2place = jQuery("#col2 .placeholder").get(0);
var c2multi = jQuery("#col2 .placeholder .multiholder").get(0);
if(c2multi !== undefined && c1multi !== undefined)
{
	var c1amount = c2multi.offsetHeight/jQuery("#col1 .placeholder .multiholder").children().size();
	var c2amount = c1multi.offsetHeight/jQuery("#col2 .placeholder .multiholder").children().size();


if(c1.offsetHeight > c2.offsetHeight)
{
	c2.style.height = c1.offsetHeight + "px";
	c2place.style.height = c1place.offsetHeight + "px";
	c2multi.style.height = c1multi.offsetHeight + "px";
	for(var i = 0; i < jQuery("#col2 .placeholder .multiholder").children().size(); i++)
	{	
		var wi2 = jQuery("#col2 .placeholder .multiholder .widget").get(i);
		var wi1 = jQuery("#col1 .placeholder .multiholder .widget").get(i);
		if(wi2 !== undefined)
		{
			if(wi1 !== undefined)
			{
				if(wi2.offsetHeight > wi1.offsetHeight)
				{
					
					wi1.style.height = wi2.offsetHeight + "px";
					wi2.style.height = wi2.offsetHeight + "px";
				}
				else
				{
					
					wi2.style.height = wi1.offsetHeight + "px";
					wi1.style.height = wi1.offsetHeight + "px";
			
				}
			}
			else
			{
				
				wi2.style.height = wi2.offsetHeight + "px";
			}
		}
		else
		{		
				if(wi1 !== undefined)
				{
					
					wi1.style.height = wi1.offsetHeight + "px";
				}	
		}
		
	}
}
else
{
	c1.style.height = c2.offsetHeight + "px";
	c1place.style.height = c2place.offsetHeight + "px";
	c1multi.style.height = c2multi.offsetHeight + "px";

	for(var i = 0; i < jQuery("#col1 .placeholder .multiholder").children().size(); i++)
	{
		var wi2 = jQuery("#col2 .placeholder .multiholder .widget").get(i);
		var wi1 = jQuery("#col1 .placeholder .multiholder .widget").get(i);
		if(wi2 !== undefined)
		{

			if(wi1 !== undefined)
			{
				if(wi2.offsetHeight > wi1.offsetHeight)
				{
					wi1.style.height = wi2.offsetHeight + "px";
					wi2.style.height = wi2.offsetHeight + "px";
				}
				else
				{
					
					wi2.style.height = wi1.offsetHeight + "px";
					wi1.style.height = wi1.offsetHeight + "px";
			
				}
			}
			else
			{
				
				wi2.style.height = wi2.offsetHeight + "px";
			}
		}
		else
		{
			if(wi1 !== undefined)
			{
				
				wi1.style.height = wi1.offsetHeight + "px";
			}
		}
	}

}
}
}

function initColumnsv2() { 
	var c1 = jQuery("#col1").get(0);
	var c2 = jQuery("#col2").get(0);
	
	var c1place  = jQuery("#col1 .placeholder").get(0);
	var c1widget = jQuery("#col1 .placeholder .widget")
	var c2place  = jQuery("#col2 .placeholder").get(0);
	var c2widget = jQuery("#col2 .placeholder .widget")
	var cMost;
	var cLess;
	if(c1widget.length >= c2widget.length) {
		cMost = c1widget;
		cLess = c2widget;
	}
	else {
		cMost = c2widget;
		cLess = c1widget;
	}
	
	
	for(var i = 0; i < cMost.length; i++){
		if(cLess.get(i) !== undefined){
			if(cLess.get(i).offsetHeight > cMost.get(i).offsetHeight) { 
				cMost.get(i).style.height = cLess.get(i).offsetHeight + "px";
				cLess.get(i).style.height = cLess.get(i).offsetHeight + "px";
				
			}
			else {
				cLess.get(i).style.height = cMost.get(i).offsetHeight + "px";
				cMost.get(i).style.height = cMost.get(i).offsetHeight + "px";
			}
		}
	}

}







//TODO MAAK VAN DEZE EN HIERBOVEN EN DAARBOVEN 1 FUNCTIE!!!!
function initSections() { 
for(var i = 0; i < jQuery("#sectionviewer .component").children().size(); i++)
	{	
		var wi2 = jQuery("#sectionviewer div.component div.col_320").get(i);
		var wi1 = jQuery("#sectionviewer div.component div.colrn_320").get(i);
		if(wi2 !== undefined)
		{
			if(wi1 !== undefined)
			{
				if(wi2.offsetHeight > wi1.offsetHeight)
				{
					wi1.style.height = wi2.offsetHeight + "px";
					wi2.style.height = wi2.offsetHeight + "px";
				}
				else
				{
					
					wi2.style.height = wi1.offsetHeight + "px";
					wi1.style.height = wi1.offsetHeight + "px";
			
				}
			}
			else
			{
				wi2.style.height = wi2.offsetHeight + "px";
			}
		}
		else
		{
			if(wi1 !== undefined)
			{
				wi1.style.height = wi1.offsetHeight + "px";	
			}
		}
		
	}
}



function trim(value) {
  value = value.replace(/^\s+/,'');
  value = value.replace(/\s+$/,'');
  return value;
}

sfHover = function() {
	if(jQuery("#nav").get(0) != null){
 var sfEls = jQuery("#nav").get(0).getElementsByTagName("LI");
 for (var i=0; i<sfEls.length; i++) {
 sfEls[i].onmouseover=function() {
 this.className+=" sfhover";
 }
 sfEls[i].onmouseout=function() {
 this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
 }
 }
}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);


 