// For debugging
/*
Ajax.Responders.register({
 onCreate: function(request, transport) {
   $('debug').innerHTML = '<p><strong>' + request.url + '</strong></p>';
 },
 onComplete: function(request, transport) {
   if (transport.responseText.match(/<html>/) != null) {
     $('debug').innerHTML = transport.responseText;
   } else {
     $('debug').innerHTML = '<p><strong>' + request.url 
       + '</strong></p><pre>' + transport.responseText.escapeHTML() 
       + '</pre>';
   }
 }
 });

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}
*/

// var siteUrl = "http://project1.instans.dk";
var siteUrl = "http://www.danske-vinduer.dk";

Event.observe(window, 'load', spacers, false);
Event.observe(window, 'load', resize, false);
Event.observe(window, 'load', init_beregner, false);
Event.observe(window, 'load', init_menu, false);

function init_menu() {
	// 3d showroom skal ?bne i nyt vindue
	if ($('infoMenu')) {
		var imenulinks = $('infoMenu').getElementsByTagName('a');
		var linknodes = $A(imenulinks);
		linknodes.each(function(link){
			if (link.href == "http://www.danske-vinduer.dk/showroom/index.htm") {
				link.target = "_blank";
			}
		});
	}
}



// Scriptaculous effects
Effect.OpenUp = function(element) {
	element = $(element);
	new Effect.BlindDown(element, arguments[1] || {});
}

Effect.CloseDown = function(element) {
	element = $(element);
	new Effect.BlindUp(element, arguments[1] || {});
}

Effect.Combo = function(element) {
  element = $(element);
  if(element.style.display == 'none') { new Effect.OpenUp(element, arguments[1] || {}); }
  else { new Effect.CloseDown(element, arguments[1] || {}); }
}

function init_beregner() {
	// Only fire, if on the correct page
	if ($('form_vareselect')) {

		// Hide non-relevant objects
		hideElementsByClassName("hideforajax_base");
		hideElementsByClassName("hideforajax");
		Element.hide('pdinfo');
		
		// Vis tilbeh?r for sidst sete vare igen
		last_pid = 1 * $("lastviewed").innerHTML;
		if (last_pid > 0){
			get_related_products(last_pid);
			// $('select_vare').value = last_pid;
			// load_traesort(last_pid);
		}

		// Attach behaviors to relevant elements
		$('select_vare').onchange = function() { 
				load_traesort(this.value);
		};

		$('link_billedselect').onclick = function() {
			Element.show('formcontainer_billedselect');
			$('formcontainer_billedselect').innerHTML = "Henter produktliste...";
			Element.hide('productimage');
			Element.hide('formcontainer_traesort');
			Element.hide('formcontainer_beregner');
			Element.hide('formcontainer_ikurv');
			Element.hide('form_vareselect');
			Element.hide('microcart');
			Element.hide('pdinfo');
			Element.hide('mc_sendtilbud');
			Element.hide('price_preview');
			Element.hide('deldays_preview');
			choose_image();
			return false;
		};
		
		load_microcart(); 
	}
}

function load_microcart() {
	$('productimage').innerHTML = "Henter indk?bskurv...";
	var url = siteUrl+'/cms/modules/cart/frontend/cart_actions.inc.php';
	var pars = 'action=showmicrocart&ajax=1';
	var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: update_microcart
					});
}

function update_microcart(originalRequest) {
	$('microcart').innerHTML = originalRequest.responseText;
	hideElementsByClassName("hideforajax");

	if (originalRequest.responseText.indexOf("Fragt") > -1) {
		Element.show('mc_sendtilbud');
	} else {
		Element.hide('mc_sendtilbud');
	}

	// Make sure zipcode is set, if user has entered it
	var cartid = $('cartid').innerHTML;
	setZipCode(cartid);	
	compare_cart_ids();
}

function compare_cart_ids(){
	// Compare cart-ID's
	cartAjax 	= $('cartid').innerHTML;
	cartGet		= $("getCartId").innerHTML;
	if (cartAjax != cartGet){
		var url = siteUrl+'/cms/modules/cart/frontend/cart_actions.inc.php';
		var pars = 'action=report_mismatch&ajax=1&cartAjax='+cartAjax+'&cartGet='+cartGet;
		var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars
					});
	} 
}

function reportSent(oR){
	alert(oR.responseText);
}

function setZipCode(cartid) {
	var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
	var pars = 'dothis=ajax_returnZipcode&cartid='+cartid;
	var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: updateZipCode
					});
}

function updateZipCode(originalRequest) {
	$('input_postnummer').value = originalRequest.responseText;
}

function choose_image() {
	var kategori = $('ajax_kategori').value;
	var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
	var pars = 'dothis=ajax_returnVareBilledliste&kategori='+kategori;
	var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: update_formcontainerbilledselect
					});
}

function update_formcontainerbilledselect(originalRequest) {
	Element.hide('formcontainer_billedselect');
	var container = $('formcontainer_billedselect');
	container.innerHTML = originalRequest.responseText;

	// Modify behavior of submit button
	var submits = document.getElementsByClassName('billedselect_submit');
	submits.each(function(b) {
			b.onclick = function() {
				bForm = b.parentNode;				
				// Note that the image-forms and the drop-down selector has the same name. But only the selector has an id.
				$('select_vare').value = bForm.select_vare.value;
				load_productimage(bForm.select_vare.value);
				load_traesort(bForm.select_vare.value);
				Element.hide('formcontainer_billedselect');
				// Empty imagecontainer to stop loading images
				$('formcontainer_billedselect').InnerHTML = "";
				$('contentWrapper').style.height = "auto";
				$('menuWrapper').style.height = "auto";
				Element.show('form_vareselect');
				Element.show('formcontainer_traesort');
				Element.show('productimage');
				Element.show('price_preview');
				Element.show('deldays_preview');
				Element.show('microcart');
				Element.show('mc_sendtilbud');
				return false;
			};
	}) 

	
	// Fold out
	Element.show('formcontainer_billedselect');
	/*
	if ($('formcontainer_billedselect').style.display == "none") {
		new Effect.Combo('formcontainer_billedselect', {duration: 1, scaleX: false, scaleY: true, scaleContent: false});
	}
	*/
	resize();
	setTimeout("resize()",1000);
}

function fold_in(element_id_str) {
		if ($(element_id_str).style.display != "none") {
			new Effect.Combo(element_id_str, {duration: 0.5, scaleX: false, scaleY: true, scaleContent: false});
		}
}

function fold_out(element_id_str) {
		if ($(element_id_str).style.display == "none") {
			new Effect.Combo(element_id_str, {duration: 0.5, scaleX: false, scaleY: true, scaleContent: false});
		}
}

function hideElementsByClassName(className) {
		// Hide non-relevant objects
		tohide = $A(document.getElementsByClassName(className));
		tohide.each(function(e) {
			e.style.display = "none";
		})
}

function load_traesort(valgt) {
	// IMPLEMENT hide of detail divs
	fold_in('formcontainer_billedselect');

	load_productimage(valgt);
	load_traesortselector(valgt);
}

function load_productimage(productid) {
	Element.hide("related_products");
	Element.show("productimage");
	$('productimage').innerHTML = "Henter produktbillede...";
	Element.show('productimage');
	$('link_billedselect').innerHTML = "&raquo; V?lg i stedet varetype ud fra billeder - klik her";
	Element.hide('beregner_helpheading');
	Element.hide('beregner_helptext');
	var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
	var pars = 'dothis=ajax_returnProductimage&productid='+productid;
	var myAjax = new Ajax.Updater(
					{success: 'productimage'}, 
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onFailure: reportAjaxError
					});
}

function load_toBasket() {
	var vare_id = $('select_vare').value;
	var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
	var pars = 'dothis=ajax_returnFormBasket&vare_id='+vare_id;
	var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: update_toBasket
					});
}

function update_toBasket(originalRequest) {
	$('formcontainer_ikurv').innerHTML = originalRequest.responseText;

	// Change behavior of submit button
	$('submit_ikurv').onclick = function() {
		var valid = true;
		// Validate necessary input values
		
		// Check Zipcode
		if (!validate_zipcode()) {
			$('input_postnummer').value = "";
			alert("Postnummer skal v?re et tal p? fire cifre!");
			valid = false;
		}

		// Check ordered amount
		if (!validate_productAmount()) {
			$('productAmount').value = "";
			alert("Du skal bestille mindst 1 stk.");
			valid = false;
		}
		
				

		// Check if price/freight/deldays/description is calculated
		if ($('productCustomPrice').value == "" ||$('productFragt').value == "" ||$('productCustomDescription').value == "" ||$('productDeldays').value == "") {
			alert("Der er endnu ikke beregnet en pris. Indtast h?jde og bredde!");
			valid = false;
		}		
		
		if (valid) {
			add_to_cart();
		}
		return false;
	}
	
	// Show form
	fold_out('formcontainer_ikurv');
}

function add_to_cart() {
	$('microcart').innerHTML = 'Opdaterer indk?bskurv';
	
	// Fetch variables to post
	var productId = $('select_vare').value;
	var productCustomPrice = $('productCustomPrice').value;
	var productFragt = $('productFragt').value;
	var productCustomDescription = $('productCustomDescription').value;
	productCustomDescription = escape(productCustomDescription);
	var productDeldays = $('productDeldays').value;
	var customerZipcode = $('input_postnummer').value;
	var productAmount = $('productAmount').value;

	// Add it
	var url = siteUrl+'/cms/modules/cart/frontend/cart_actions.inc.php';
	var pars = 'mode=cart&action=addtocart&ajax=1&CN=instans_cart_id&PTN=ddv_varer';
	pars = pars + "&productId=" + productId;
	pars = pars + "&productCustomPrice=" + productCustomPrice;
	pars = pars + "&productFragt=" + productFragt;
	pars = pars + "&productCustomDescription=" + productCustomDescription;
	pars = pars + "&productDeldays=" + productDeldays;
	pars = pars + "&customerZipcode=" + customerZipcode;
	pars = pars + "&productAmount=" + productAmount;
	pars = pars + "&fromPage=" + document.location;
	pars = pars + "&debugging=ajax";

	/*
	if (productFragt == 0 || $('productFragt').value == 0 || productFragt == "" || $('productFragt').value == ""){
		var cjsurl = siteUrl+'/cms/modules/cart/frontend/cart_actions.inc.php';
		var cjspars = 'mode=cart&action=debugfragt&ajax=1';
		var cjsmyAjax = new Ajax.Request(
						cjsurl, 
						{
							method: 'post', 
							parameters: cjspars
						});		
	}
	*/
	
	var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: update_cartStatus
					});
}

function update_cartStatus(originalRequest) {
	$('microcart').innerHTML = originalRequest.responseText;
	hideElementsByClassName("hideforajax");

	if (originalRequest.responseText.indexOf("Fragt") > -1) {
		Element.show('mc_sendtilbud');
	} else {
		Element.hide('mc_sendtilbud');
	}
	get_related_products();
	resize();
	compare_cart_ids();
}

/* START RELATEREDE PRODUKTER - AUGUST 2007 */

function get_related_products(pid){
	if (!pid){
		productId = $('select_vare').value;	
	} else {
		productId = pid;
	}
	// new Effect.Fade("productimage");
	var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
	var pars = 'dothis=ajax_returnRelatedProducts&productid='+productId;
	var myAjax = new Ajax.Request(
		url,
		{
			method: 'post', 
			parameters: pars, 
			onComplete: update_related_products
		}
	);
		
}

function update_related_products(originalRequest){
	Element.hide("productimage");
	$("related_products").innerHTML = originalRequest.responseText;
	Element.show("related_products");
	new Effect.Highlight("related_products");
}

/* END RELATEREDE PRODUKTER - AUGUST 2007 */


function load_traesortselector(productid) {
	var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
	var pars = 'dothis=ajax_returnFormTraesort&productid='+productid;
	var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: update_traesortselector
					});
}

function update_traesortselector(originalRequest) {
	var container = $('formcontainer_traesort');
	container.innerHTML = originalRequest.responseText;
	hideElementsByClassName("hideforajax");

	// Attach behaviors to relevant elements
	//	recalculateOnChange('select_traesort');
	$('select_traesort').onchange = function() { 
		var sprosser_locked = $('sprosser_locked').value;
/*		var traesort_value = $('select_traesort').value; */
		$('select_traesort').value = this.value;
		var traesort_value = this.value; 

		// P? tr?/alu elementer kan man ikke v?lge sprossetype, skal altid v?re standard
		if (traesort_value >= 3) {
			// S?t til alm. sprosser og disable felt
			$('select_sprosser').value = 1;
			//
			$('select_sprosser').disabled = true;
		} else {
			$('select_sprosser').value = 0;
			//
			if (sprosser_locked == "1"){
				$('select_sprosser').disabled = false;
			}
			if (sprosser_locked == "0"){
				$('select_sprosser').disabled = true;
			}
		}
		// P? tr?/alu elementer skal bundliste altid v?re alm. tr?. (CJS, 5/7-06)
		if (traesort_value >= 3) {
			// S?t til alu/tr? og disable felt, id 6 = "alm. tr?" i DDV_LISTER sql-tabel
			$('select_liste').value = 6;	
			//
			$('select_liste').disabled = true;
		} else {
			$('select_liste').disabled = false;
			$('select_liste').value = 2;	
		}
        if (traesort_value == 2 || traesort_value == 4){ // CJS, 5/12-2007
            $('select_maling').value = 10;
        } else {
            $('select_maling').value = 2;
        }
        if (traesort_value == 2){ // CJS, 5/12-2007
            $('select_liste').value = 6;
        } 
		calculate_price();
	};



	Element.show('formcontainer_traesort');
	load_beregner();
}

function recalculateOnChange(obj_id) {
	$(obj_id).onchange = function() { 
		calculate_price();
	};
}




function load_beregner() {
	var kategori = $('ajax_kategori').value;
	var productid = $('select_vare').value;
	
	var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
	var pars = 'dothis=ajax_returnFormBeregner&kategori='+kategori+'&productid='+productid;
	var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: update_beregner
					});
}

function update_beregner(originalRequest) {
	var container = $('formcontainer_beregner');
	container.innerHTML = originalRequest.responseText;
	hideElementsByClassName("hideforajax");

	// Set default values
	setPriceDeliveryDefaults();

	// Make sure zipcode is set, if user has entered it
	var cartid = $('cartid').innerHTML;
	setZipCode(cartid);

	// Enable relevant "beregner" form fielde
	$('input_width').disabled = false;
	$('input_height').disabled = false;

	// add behavior to elements
	$('input_width').onblur = function() {
		$('input_width').value = $('input_width').value.replace(/,/g,".");
		$('input_width').value = Math.round($('input_width').value*2)/2;
		if ($('input_width').value == "0" ||isNaN($('input_width').value)) {
			$('input_width').value = "";
		}
		if ($('input_width').value == "") {
			setPriceDeliveryDefaults();	
			return;
		}

		if ($('input_width').value > 1000) {
			$('input_width').value = "";
			setPriceDeliveryDefaults();	
			alert('Beregneren kan desv?rre ikke h?ndtere vinduer over 10 meter - ring venligst til os i stedet.');
			return;
		
		}
		if ($('input_height').value != "") {
			calculate_price();
		}
	}
	$('input_height').onblur = function() {
		$('input_height').value = $('input_height').value.replace(/,/g,".");
		$('input_height').value = Math.round($('input_height').value*2)/2;
		if ($('input_height').value == "0" ||isNaN($('input_height').value)) {
			$('input_height').value = "";
		}
		if ($('input_height').value == "") {
			setPriceDeliveryDefaults();
			return;
		}
		if ($('input_height').value > 1000) {
			$('input_height').value = "";
			setPriceDeliveryDefaults();	
			alert('Beregneren kan desv?rre ikke h?ndtere vinduer over 10 meter - ring venligst til os i stedet.');
			return;
		
		}
		if ($('input_width').value != "") {
			calculate_price();
		}
	}
	
	// KOMMENTERET UD 12/9-07 af CJS/MP
	/*
	$('input_postnummer').onblur = function() {
		if (validate_zipcode()) {
			calculate_price();
		} else {
			$('input_postnummer').value = "";
			alert("Postnummer skal v?re et tal p? fire cifre!");
			return;
		}
	}
	*/
	
	recalculateOnChange('select_rude');
	recalculateOnChange('select_glas');
	recalculateOnChange('select_maling');
	recalculateOnChange('select_sprosser');
	recalculateOnChange('select_liste');
	recalculateOnChange('select_antallister');
	recalculateOnChange('select_noedaabning');
	recalculateOnChange('select_rist');
	recalculateOnChange('select_vendebeslag');
	recalculateOnChange('select_antalvendebeslag');
	recalculateOnChange('select_retning');
	recalculateOnChange('select_not');

	Element.show('formcontainer_beregner');
//	fold_out('formcontainer_beregner');
	Element.show('pdinfo');
	load_toBasket();
//	setTimeout("resize()",2500);

	/// Hvis det er d?re, skal not som default v?re "ingen not"
	if($("kategoritype")){ /// kategoritype er et hidden field
		if ($("kategoritype").value == 2){ /// 2 = d?re, 1 = vinduer
			$("select_not").value = 3;
		}
	}

	resize();
}

function validate_zipcode() {
	var valid = true;

	$('input_postnummer').value = Number($('input_postnummer').value);

	var pnr = $('input_postnummer').value;
	if (pnr.length != 4 ||isNaN(pnr)) {
		var valid = false;
	}
	return valid;
}

function validate_productAmount() {
	var valid = true;

	$('productAmount').value = Number($('productAmount').value);

	var pnr = $('productAmount').value;
	if (pnr < 1 ||isNaN(pnr)) {
		var valid = false;
	}
	return valid;
}


function calculate_price() {
	// Validate form
	if ($('input_width').value == '' || $('input_height').value == '') {
		setPriceDeliveryDefaults();
		return;
	}
	
	// S?t statusbeskeder
	$('span_price').innerHTML = "Opdaterer pris...";
	$('span_deldays').innerHTML = "";
	$('span_deldays_date').innerHTML = "Opdaterer leveringstid...";

	
	// Hent variabler til prisberegning
	var vare = $('select_vare').value;
	var bredde = $('input_width').value;
	var hoejde = $('input_height').value;
	var rude = $('select_rude').value;
	var traesort = $('select_traesort').value;
	var glas = $('select_glas').value;
	var maling = $('select_maling').value;
	var sprosser = $('select_sprosser').value;
	var lister = $('select_liste').value;
	var antal_liste = $('select_antallister').value;
	var noedaabning = $('select_noedaabning').value;
	var rist = $('select_rist').value;
	var vendebeslag = $('select_vendebeslag').value;
	var antal_beslag = $('select_antalvendebeslag').value;
	var retning = $('select_retning').value;
	var nottype = $('select_not').value;
	var postnummer = $('input_postnummer').value;

	if (
		vare != '' && 
		bredde != '' && 
		hoejde != '' && 
		rude  != '' && 
		traesort != '' && 
		glas != '' && 
		maling != '' && 
		sprosser != '' && 
		lister != '' && 
		antal_liste != '' && 
		noedaabning != '' && 
		rist != '' && 
		vendebeslag != '' && 
		antal_beslag != '' && 
		retning != '' &&
		nottype != ''
		) { 
		// kalkuleringsgrundlag ok, beregn!
		var url = siteUrl+'/includes/plugins/ddv_beregner/beregner.php';
		var pars = 'dothis=ajax_returnPrice&vare='+vare+'&form_beregner_traesort='+traesort+'&input_width='+bredde+'&input_height='+hoejde+'&select_rude='+rude+'&select_glas='+glas+'&select_maling='+maling+'&select_sprosser='+sprosser+'&select_liste='+lister+'&select_antalliste='+antal_liste+'&select_noedaabning='+noedaabning+'&select_rist='+rist+'&select_vendebeslag='+vendebeslag+'&select_antalvendebeslag='+antal_beslag+'&select_retning='+retning+'&input_postnummer='+postnummer+'&select_not='+nottype;
		var myAjax = new Ajax.Request(
					url, 
					{
						method: 'post', 
						parameters: pars, 
						onComplete: update_price
					});

	}
}

function update_price(originalRequest) {
	// Parse result
	var result_arr = originalRequest.responseText.split("___");
	if (result_arr[0] == "error") {
		setPriceDeliveryDefaults();
		alert(result_arr[1]);
		return;
	}

	var stykpris = result_arr[0];
	var stykpris_net = result_arr[1];
	var fragtpris = result_arr[2];
	var fragtpris_net = result_arr[3];
	var deldate = result_arr[4];
	var deldays = result_arr[5];
	var stykpris_unformatted = result_arr[6];
	var fragtpris_unformatted = result_arr[7];
	var customDescription = result_arr[8];

	$('span_price_default').innerHTML = "";
	$('span_deldays_date_default').innerHTML = ""; 

	$('span_price').innerHTML = stykpris;
	$('span_price_preview').innerHTML = stykpris;
	$('span_price_net').innerHTML = "("+stykpris_net+" ekskl. moms)";
	$('span_price_net_preview').innerHTML = "("+stykpris_net+" ekskl. moms)";
	$('span_deldays').innerHTML = "("+deldays+" dage)";
	$('span_deldays_preview').innerHTML = "("+deldays+" dage)";
	$('span_deldays_date').innerHTML = deldate;
	$('span_deldays_date_preview').innerHTML = deldate;
	
	// Values used only for posting to basket
	$('productCustomPrice').value = stykpris_unformatted;
	$('productFragt').value = fragtpris_unformatted;
	$('productCustomDescription').value = customDescription;
	$('productDeldays').value = deldays;
	
	if ($('input_width').value != "" && $('input_height').value != "" && $('select_vare').value != 0) {
		Form.enable('form_ikurv');
	} else {
		Form.disable('form_ikurv');
	}
}

function setPriceDeliveryDefaults() {
	// Change text in price/delivery spans
	$('span_price').innerHTML = "Indtast h?jde og bredde for at beregne pris.";
	$('span_price_preview').innerHTML = $('spacegif').innerHTML;
	$('span_price_default').innerHTML = "Indtast h?jde og bredde for at beregne pris.";
	$('span_price_net').innerHTML = $('spacegif').innerHTML;
	$('span_price_net_preview').innerHTML = $('spacegif').innerHTML;
	
	$('span_deldays').innerHTML = "Indtast h?jde og bredde for at beregne leveringstid.";
	$('span_deldays_preview').innerHTML = $('spacegif').innerHTML;
	$('span_deldays_date_default').innerHTML = "Indtast h?jde og bredde for at beregne leveringstid.";
	$('span_deldays_date').innerHTML = $('spacegif').innerHTML;
	$('span_deldays_date_preview').innerHTML = $('spacegif').innerHTML;

	$('span_price_preview_label').innerHTML = "Stk. pris inkl. moms";
	$('span_deldays_preview_label').innerHTML = "Forventet leveringsdato";

	// Disable "put i kurv"
	if ($('form_ikurv')) {
		Form.disable('form_ikurv');
	}
}

function reportAjaxError(request) {
	alert('Beklager. Der opstod en fejl p? siden.'+'Request: '+request.responseText);
}

function resize(){
	H_CONTENT 	= $("contentWrapper").offsetHeight;
	H_MENU 		= $("menuWrapper").offsetHeight - 23;
	var H = Math.max(H_CONTENT, H_MENU);


	if ($('formcontainer_beregner') && Element.visible('formcontainer_beregner')) {
		var H_BEREGNER = $("formcontainer_beregner").offsetHeight + 250;
		H = Math.max(H, H_BEREGNER);
	}		

	if ($('formcontainer_billedselect') && Element.visible('formcontainer_billedselect')) {
		var H_BILLEDCONT = $("formcontainer_billedselect").offsetHeight + 150;
		H = Math.max(H, H_BILLEDCONT);
	}		

	if ($('beregnertabel') && Element.visible('beregnertabel')) {
		var H_BEREGNERTABEL = $("beregnertabel").offsetHeight + 100;
		H = Math.max(H, H_BEREGNERTABEL);
	}		
	$("menuWrapper").style.height = H + 23 + "px";
	$("contentWrapper").style.height = H -2 + "px";
}

function spacers(){
	A = document.getElementsByClassName("dotSpacer");
	A.each(function(OBJ){OBJ.innerHTML="<img src='/includes/images/nada.gif'>"});
}

function show_gallery_image(mediumURL, largeURL, alt, x, y){
	$("mediumsize_container").style.height = y + "px";
	$("mediumsize_container").style.height = y + "px";
	$("alttext").style.display = "none";
	if ($("printerfriendly")) {
		$("printerfriendly").style.display = "none";
	}
	new Effect.Fade(
		'current_image', {
			duration: 0.2, 
      		from: 1, 
			to: 0, 
			afterFinish: function(){
				gallery_finishcallback(mediumURL, largeURL, alt);
			}
		}
	);
}

function gallery_finishcallback(mediumURL, largeURL, alt){
	$("current_image").src = mediumURL;
	if (largeURL != ""){
		$("current_image").style.cursor = "hand";
		$("current_image").alt = "Billedet findes i en st?rre udgave - klik her for at se den store udgave.";
		$("current_image").onclick = function(){
			window.open(largeURL, "", "");
		}
		alt += "<br/><a href='"+largeURL+"' target='_blank'>Billedet findes i en st?rre udgave - klik her for at se den store udgave.";
	} else {
		$("current_image").style.cursor = "default";
		$("current_image").alt = "";
		$("current_image").onclick = function(){
		}
	}
	new Effect.Appear(
		'current_image', {
			duration: 0.2, 
      		from: 0, 
			to: 1,
			afterFinish: function(){
				$("alttext").innerHTML = alt;
				$("alttext").style.display = "block";
				if ($("printerfriendly")) {
					$("printerfriendly").style.display = "block";
				}
				setTimeout("resize()",1000);
			}
		}
	);}