var price_clean = 0;
var price_finish = 0;
var material_only = 0;

function calculateCombi(thisform, combi_id)
{
	if(!thisform)
	{
		return;
	}

	calculateGarden(thisform);
}
function calculateRadio(thisform, radio_id)
{
	if(!thisform)
	{
		return;
	}

	calculateGarden(thisform);
}
function calculateText(thisform, elem_id)
{
	if(!thisform)
	{
		return;
	}

	calculateGarden(thisform);
}

function calculateGarden(thisform, recalculate_changebles)
{
	var square = parseFloat(document.getElementById("garden_square").value);
	if(square > 150)
	{
		alert("150 vierkante meters is de maximale oppervlakte.");
		document.getElementById("garden_square").value = "150.00";
		square = 150;
	}
	var square_default = parseFloat(document.getElementById("garden_square_default").value);
	document.getElementById("garden_option_result_clean").value = (price_clean * square).toFixed(2);
	document.getElementById("garden_option_result_finish").value = (price_finish * square).toFixed(2);

	document.getElementById("result_garden_size").innerHTML = square.toFixed(2);

	if(recalculate_changebles)
	{
		var elems_changable = $("input[id^='changable_garden_option_']");
		for(var i = 0; i < elems_changable.length; i ++)
		{
			var default_value = elems_changable[i].value;
			var value_element_id = new String(elems_changable[i].id).replace(/changable_/, "");

			var changable_value = Math.round(default_value * square / square_default);
			document.getElementById(value_element_id).value = changable_value;

			var option_id = new String(elems_changable[i].id).substr(new String(elems_changable[i].id).lastIndexOf("_") + 1);
		}
		calculateGarden(thisform);
		return;
	}

	var som = (1 == material_only ? parseFloat(document.getElementById("_garden_option_result_design").value) : 0);
	var elems = $("input[id^='garden_option_result_']");
	for(var i = 0; i < elems.length; i ++)
	{
		som += parseFloat(elems[i].value);
		//$("#result_materials").append(" " + elems[i].id + "=" + som);
	}

	var elems = $("td[id^='garden_option_result_']");

	for(var i = 0; i < elems.length; i ++)
	{
		var order_by = new String(elems[i].id).replace(/garden_option_result_/g, "");
		var type = document.getElementById("option_type_" + order_by).value;

		switch(type)
		{
			case "text":
				var text_id = "garden_option_text_value_" + order_by;
				var work_id = "garden_option_text_work_" + order_by;
				var hidden_id = "garden_option_text_unitprice_" + order_by;

				if(document.getElementById("changable_garden_option_text_value_" + order_by))
				{
					var changeble = true;
				} else
				{
					var changeble = false;
				}

				var text_value = parseFloat(document.getElementById(text_id).value) * parseFloat(document.getElementById(hidden_id).value);
				var text_work = parseFloat(document.getElementById("garden_option_text_work_" + order_by).value);
				if(changeble)
				{
					text_work *= square/square_default;
				}

				var one_result = text_value + (1 == material_only ? 0 : text_work);
				break;


			case "radio":
				var radio_id = "garden_option_radio_default_" + order_by;
				var oRadio = thisform.elements[radio_id];

				var changeble = false;

				//$("#result_materials").append("=" + radio_id + "<br/>");
				if(oRadio.length)
				{
					for(var ir = 0; ir < oRadio.length; ir ++)
					{
						if(oRadio[ir].checked)
						{
							var radio_value = parseFloat(oRadio[ir].value);
							var radio_work = parseFloat(document.getElementById("garden_option_radio_work_" + order_by + "_" + ir).value);
							break;
						}
					}
				} else
				{
					var radio_value = parseFloat(document.getElementById("garden_option_radio_default_" + order_by + "_0").value);
					var radio_work = parseFloat(document.getElementById("garden_option_radio_work_" + order_by + "_0").value);
				}
				if(changeble)
				{
					radio_work *= square/square_default;
				}

				var one_result = radio_value + (1 == material_only ? 0 : radio_work);
				break;


			case "combi":
				var combi_radio_id = "garden_option_combi_radio_default_" + order_by;
				var oCombiRadio = thisform.elements[combi_radio_id];

				if(document.getElementById("changable_garden_option_combi_text_value_" + order_by))
				{
					var changeble = true;
				} else
				{
					var changeble = false;
				}

				//$("#result_materials").append(oCombiRadio.length + "<br/>");
				if(oCombiRadio.length)
				{
					for(var ir = 0; ir < oCombiRadio.length; ir ++)
					{
						if(oCombiRadio[ir].checked)
						{
							var combi_radio_value = parseFloat(oCombiRadio[ir].value);
							var combi_radio_work = parseFloat(document.getElementById("garden_option_combi_radio_work_" + order_by + "_" + ir).value);
							break;
						}
					}
				} else
				{
					var combi_radio_value = parseFloat(document.getElementById("garden_option_combi_radio_default_" + order_by + "_0").value);
					var combi_radio_work = parseFloat(document.getElementById("garden_option_combi_radio_work_" + order_by + "_0").value);
				}
				if(changeble)
				{
					combi_radio_work *= square/square_default;
				}

				var text_value = parseFloat(document.getElementById("garden_option_combi_text_value_" + order_by).value);
				var one_result = combi_radio_value * text_value + (1 == material_only ? 0 : combi_radio_work);
				break;

		}

		elems[i].innerHTML = one_result.toFixed(2);
		som += parseFloat(elems[i].innerHTML);
	}

	som *= ( (parseFloat(document.getElementById("_garden_option_result_post_percent").value)/100) + 1);

	document.getElementById("result_price").innerHTML = som.toFixed(2);
	if (document.getElementById("result_lease")) {
		document.getElementById("result_lease").innerHTML = (som * 0.02).toFixed(2);
	}

	if(0 == square)
	{
		var price_per_meter = 0;
	} else
	{
		var price_per_meter = som / square;
	}

	document.getElementById("result_meter_price").innerHTML = price_per_meter.toFixed(2);
}

function calculateGardenStandard(thisform)
{
	material_only = (document.getElementById("material_only").checked ? 1 : 0);
	document.getElementById("div_price_design").style.display = (document.getElementById("material_only").checked ? "block" : "none");
	calculateGarden(thisform);

	document.getElementById("result_standard_price").innerHTML = document.getElementById("result_price").innerHTML;
}


function showOptionsComment(element_id, image)
{
	var offsets = _getOffsets(element_id);

	var full_path = "../images/info/" + image + ".jpg";
	var html_image = "<img src=\"" + full_path + "\" border=\"0\" width=\"100\" />";

	var scrollTop = document.getElementById("div_main_right").scrollTop;
	//alert(scrollTop);

	$("#div_hidden").html(html_image);
	$("#div_hidden").css("left", offsets[0] + document.getElementById(element_id).offsetWidth + 5 + "px");
	$("#div_hidden").css("top", offsets[1] - scrollTop + document.getElementById(element_id).offsetHeight + "px");
	$("#div_hidden").css("display", "block");
}

function hideOptionsComment()
{
	$("#div_hidden").css("display", "none");
}

function gardenOrder(garden_id)
{
	var radiochecked = new Array();

	var post_query = "garden_id=" + garden_id;
	post_query += "&material_only=" + material_only;
	post_query += "&garden_square=" + trim(document.getElementById("result_garden_size").innerHTML);
	post_query += "&garden_design=" + document.getElementById("_garden_option_result_design").value;
	post_query += "&garden_clean_per_meter=" + price_clean;
	post_query += "&garden_finish_per_meter=" + price_finish;
	post_query += "&garden_unexpected=" + document.getElementById("garden_option_result_unexpected").value;
	post_query += "&garden_post=" + document.getElementById("garden_option_result_post").value;
	post_query += "&garden_post_percent=" + document.getElementById("_garden_option_result_post_percent").value;
	post_query += "&garden_standard_price=" + trim(document.getElementById("result_standard_price").innerHTML);
	post_query += "&garden_price_per_meter=" + trim(document.getElementById("result_meter_price").innerHTML);
	post_query += "&garden_total_price=" + trim(document.getElementById("result_price").innerHTML);
	post_query += "&garden_note=" + trim(document.getElementById("garden_note").value);

	var formname = document.getElementById("form_garden_design");

	for(var ia = 0; ia < formname.elements.length; ia ++)
	{
		if("text" == formname.elements[ia].type || "hidden" == formname.elements[ia].type)
		{
			var element_id = formname.elements[ia].getAttribute("id");
			if(-1 == new String(element_id).indexOf("_work_"))
			{
				//var warning_id = new String(element_id).replace(prefix, "").replace("_verplicht", "");
				post_query += "&" + element_id + "=" + trim(formname.elements[ia].value);
			}
		}
		if("radio" == formname.elements[ia].type)
		{
			var element_id = formname.elements[ia].getAttribute("id");
			var hoofd_radio_id = new String(element_id).substr(0, new String(element_id).lastIndexOf("_"));
			if(radiochecked[hoofd_radio_id])
			{
				continue;
			}

			var radios = formname.elements[hoofd_radio_id];
			if(radios.length)
			{
				for(var ii = 0; ii < radios.length; ii ++)
				{
					if(radios[ii].checked)
					{
						post_query += "&" + hoofd_radio_id + "=" + ii;
						radiochecked[hoofd_radio_id] = 1;
			//$("#result_materials").append(ii + "<br/>");
						break;
					}
				}
			} else
			{
				post_query += "&" + hoofd_radio_id + "=0";
				radiochecked[hoofd_radio_id] = 1;
			}
		}

	}
	//alert(post_query);

	$.post("../bestellen/bestel.php", post_query,
		function(reply)
		{
			if("ok" == trim(reply))
			{
				//alert("Bestellen");
				document.location.href = "../bestellen/";
				//loadPage("td_main_right", "../bestellen/index.php", "&content=1");
				//document.getElementById("result_send").innerHTML = "<br/>";
			} else
			{
				alert(reply);
			}
		}
	);
}

function confirmOrder(order_id)
{
	var confirm_buttons = $("span[id^='confirm_order_']");
	for(var ci = 0; ci < confirm_buttons.length; ci ++)
	{
		confirm_buttons[ci].innerHTML = "Even gedult alstublieft...";
	}

	var post_query = "order_id=" + order_id;
	$.post("../bestellen/bestel.php", post_query,
		function(reply)
		{
			if("ok" == reply)
			{
				document.location.href = "../bestellen/confirmed.php";
			} else
			{
				alert(reply);
			}
		}
	);
}


function deleteOrder(type, id)
{
	if(confirm("Weet u zeker dat u deze tuin wilt verwijderen uit uw favorieten?"))
	{
			$.post("../includes/get_order_delete_results.php", { id: id },
			function(reply)
			{
				if("ok" == reply)
				{
					//alert("Favoriet is verwijderd.");
					loadPage("div_main_left", "../" + type + "/menu.php", "&showSubMenu=favorieten");
				} else
				{
					alert(reply);
					//handleAjaxError('deleteOrder(' + id + ')');
				}
			}
		);
	}
}


function showGardenInfo(id)
{
	document.getElementById('tabelmain').style.background = 'url(../images/bg/bg_text.jpg) no-repeat top center';
	loadPage("div_main_left", "../tuin/garden_left.php", "&id=" + id);
	loadPage("div_main_right", "../tuin/garden_right.php", "&id=" + id);
}
