// onload event coupler
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') { 
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

/*---- positioning of the grey floating backgroundelement at the rightcolumn ----*/
function setFloaterHeight(){
	var floaterDiv = document.getElementById("floaterRight");
	
	if ( floaterDiv.offsetHeight > 0 ){
		var rightColHeight = document.getElementById("rightCol").offsetHeight;		
		floaterDiv.style.top = rightColHeight + "px";
	}else{
		return false;
	}
	
}

//-- change language
function setLanguage(_lang) {
    window.location.href = window.location.pathname.replace(/\/(nl|en|es|fr|de)/, "/" + _lang) + window.location.search;
}


addLoadEvent(function() {
    initRollover();
    initPNGRollover();
    //setFloaterHeight();
});
	


function feedbackContacted(_value) {
    if (_value == 1) {
        $("#feedback_rating_label").show();
        $("#feedback_remarks_label").show();
        $("#feedback_chooseotherdealer_label").hide();
    } else if (_value == -1) {
        $("#feedback_rating_label").hide();
        $("#feedback_remarks_label").hide();
        $("#feedback_chooseotherdealer_label").hide();
    } else {
        $("#feedback_rating_label").hide();
        $("#feedback_remarks_label").show();
        $("#feedback_chooseotherdealer_label").show();
    }
    
    feedbackSubmitCheck();
}

function feedbackChooseDealer(_value) {
    if (_value == 1) {
        $("#dealerList").show();
        $("#selectedDealer").show();
        map.checkResize();
        centerMap();
    } else {
        $("#dealerList").hide();
        $("#selectedDealer").hide();
    }
    
    feedbackSubmitCheck();
}

function feedbackSubmitCheck() {
    fc       = $("#feedback_contacted").val();
    disabled = true;
    
    if (fc == 1 && $("#feedback_rating").val() != '') {
        disabled = false;
    } else if (fc == 0 && $("#feedback_chooseotherdealer").val() == 1 && $("#dealer_id").val() != '') {
        disabled = false;
    } else if (fc == 0 && $("#feedback_chooseotherdealer").val() == 0) {
        disabled = false;
    }
    
    $("#feedback_submit").attr("disabled", disabled);
    
}





/* FAQ accordion */
function openFAQ(_id) {
	
	$('dl#faq dd').hide();
	$('dl#faq dt').removeClass('active');
	
	$('dd#answer_'+_id).show();
	$('dt#question_'+_id).addClass('active');
	
	this.blur();
		
}

/* Color Selector */
function showProducts (_product_ids, _all_products) {
	var all_products = _all_products.split(',');
	for (var i = 0; i < all_products.length; i++) {
		var product = document.getElementById('productItem_' + all_products[i]);
		product.style.display = 'none';
	}
	
	var products = _product_ids.split(',');
	for (var i = 0; i < products.length; i++) {
		if (i % 2 == 0) {
			product.className = 'productItem first';
		} else {
			product.className = 'productItem';
		}

		var product = document.getElementById('productItem_' + products[i]);
		product.style.display = 'block';
	}
}

function sendContactform() {
    
    form = document.getElementById('faqform');
    ret  = [];
    
    for (var i = 0; i < form.elements.length; i++) {
        if (form.elements[i].getAttribute('validation') == 'required' && form.elements[i].value == '') {
            ret.push(form.elements[i].getAttribute('message'));
        }
    }
    
    if (ret.length) {
        alert(ret.join('\n'));
    } else {
        $('#faqform').submit();
    }
    
}