function bgcolor(tdName, checkboxName) {
	var el = document.getElementById(tdName);
	if ( document.getElementById(checkboxName).checked == false) {
		el.style.border = 'dotted 1px #555555';
		el.style.background = '';
	} else {
		el.style.border = 'solid 1px red';
		el.style.background = '#CECECE';
	}
}


function bekrafta(meddelande, forward_url) {
	if(confirm(meddelande)) location.href = forward_url;
}

function toggle(obj) {
	var el = document.getElementById(obj);
	if(document.getElementById(obj)) {
   	if ( el.style.display != 'none' ) {
   		el.style.display = 'none';
   	}
   	else {
   		el.style.display = '';
   	}
   }
}

function toggle_on(obj) {
	var el = document.getElementById(obj);
	if(document.getElementById(obj)) {
  		el.style.display = '';
   }
}

function toggle_off(obj) {
	var el = document.getElementById(obj);
	if(document.getElementById(obj)) {
  		el.style.display = 'none';
   }
}

function toggle_timeout(obj, timeout) {
	var el = document.getElementById(obj);
	if(document.getElementById(obj)) {
   	if ( el.style.display != 'none' ) {
   		el.style.display = 'none';
   	}
   	else {
   		el.style.display = '';
   	}
   }
	if(!timeout) setTimeout("toggle_timeout('"+obj+"', '1')", 4000);
}

function enableInput(step1,step2,step3,step4) {
	if(step1) document.getElementById('step1').disabled = false;
	if(step2) document.getElementById('step2').disabled = false;
	if(step3) document.getElementById('step3').disabled = false;
	if(step4) document.getElementById('step4').disabled = false;
	document.getElementById('enableHigherStep').value = "1";
	document.getElementById('reasonForHigherStep').value = "";
}

function enableInputRevert(step1,step2,step3,step4) {
	document.getElementById('step1').disabled = step1;
	document.getElementById('step2').disabled = step2;
	document.getElementById('step3').disabled = step3;
	document.getElementById('step4').disabled = step4;
	document.getElementById('step1').checked = false;
	document.getElementById('step2').checked = false;
	document.getElementById('step3').checked = false;
	document.getElementById('step4').checked = false;
	document.getElementById('reasonForHigherStep').value = "";
	document.getElementById('enableHigherStep').value = "0";
}

function disable(f) {
   var button = f.elements['submit'];
   button.value = "...laddar nästa steg. Vänta!";
   button.disabled=true;
	return true;    
}

function calcPrice(start_sum, input_id, cancelationFee, invoiceFee) {
	var start_sum = parseFloat(start_sum, 10);
	var current_sum = document.getElementById('calculate').value;
	var current_sum = stripCharacter(current_sum, ' ');
	var current_sum = stripCharacter(current_sum, '.00');
	var current_sum = parseFloat(current_sum, 10);
	var invoiceFee = parseFloat(invoiceFee, 10);
	var cancelationFee = parseFloat(cancelationFee, 10);
			
	if(input_id == "cancelationFee") {
		if(document.getElementById(input_id).checked === true) {
			if(cancelationFee > 0) toggle_on('avbextra1');
			if(cancelationFee > 0) toggle_on('avbextra2');
			var result = eval(current_sum) + eval(cancelationFee); 
		} else {
			toggle_off('avbextra1');
			toggle_off('avbextra2');
			var result = eval(current_sum) - eval(cancelationFee);
		}
	}
	
	if(input_id == "invoiceFee") {
		if(document.getElementById(input_id).checked === true) {
			if(invoiceFee > 0) toggle_on('invextra1');
			if(invoiceFee > 0) toggle_on('invextra2');
			//var result = eval(current_sum) + eval(invoiceFee); 
			if(document.getElementById("cancelationFee").checked === true) {
				var result = eval(start_sum) + eval(invoiceFee) + eval(cancelationFee);
			} else {
				var result = eval(start_sum) + eval(invoiceFee);
			}
		} else {
			toggle_off('invextra1');
			toggle_off('invextra2');
			if(document.getElementById("card").checked === true) {
				if(document.getElementById("cancelationFee").checked === true) {
					var result = eval(start_sum) + eval(cancelationFee);
				} else {
					var result = eval(start_sum);
				}
			} else {
				var result = eval(current_sum) - eval(invoiceFee); 
			}
		}
	}
	
	var result = formatMoney(result, "", ' ','.');
	document.getElementById('calculate').value = result; 
}

function isThousands(position) {
	if (Math.floor(position/3)*3==position) return true;
	return false;
};

function stripCharacter(words,character) {
	//documentation for this script at http://www.shawnolson.net/a/499/
	var spaces = words.length;
	for(var x = 1; x<spaces; ++x){
	words = words.replace(character, "");
	}
	return words;
}

function formatMoney (theNumber,theCurrency,theThousands,theDecimal) {
	var theDecimalDigits =
	Math.round((theNumber*100)-(Math.floor(theNumber)*100));
	theDecimalDigits= ""+ (theDecimalDigits + "0").substring(0,2);
	theNumber = ""+Math.floor(theNumber);
	var theOutput = theCurrency;
	for (x=0; x<theNumber.length; x++) {
	theOutput += theNumber.substring(x,x+1);
	if (isThousands(theNumber.length-x-1) && (theNumber.length-x-1
	!=0)) {
	theOutput += theThousands;
	};
	};
	theOutput += theDecimal + theDecimalDigits;
	return theOutput;
}

function formfocus() {
	if(document.forms.length > 0) {
		var formElements = ["text", "", "", "select-one", "select-multiple", "textarea"];
		var form = document.forms[document.forms.length-1];
		for (var j = 0; j < form.elements.length; j++) {
			var field = form.elements[j];
			for(var x = 0; x < formElements.length; x++)
			{
				if (field.getAttribute("type") == formElements[x])
				{
					field.focus();
					return false;
				}
			}
		}
	}
}

function SetAllCheckBoxes(FormName, FieldName, CheckValue)
{
	if(!document.forms[FormName])
		return;
	var objCheckBoxes = document.forms[FormName].elements[FieldName];
	if(!objCheckBoxes)
		return;
	var countCheckBoxes = objCheckBoxes.length;
	if(!countCheckBoxes)
		objCheckBoxes.checked = CheckValue;
	else
		// set the check value for all check boxes
		for(var i = 0; i < countCheckBoxes; i++)
			objCheckBoxes[i].checked = CheckValue;
}

