var emptyFields = [];
function showDetailedFields() {
	var elt = $(this);
	var display = "block";
	var detailedId = "#" + elt.attr("id") + "_" + elt.val() + "_detailed";

	if (elt.attr("id")) {
		$("." + elt.attr("id") + "_detailed").css("display","none");
	}
	if (elt.find("option").length == 0) {
		if (elt.attr("type") == "radio") {
			$("#order-form input[type=radio]").each(function(){
				$("#" + $(this).attr("id") + "_detailed").css("display","none");
			});
		} else {
			display = (elt.attr("checked")) ? "block" : "none";
		}
		detailedId = "#" + elt.attr("id") + "_detailed";

	}
	if ($(detailedId).length > 0) {
		$(detailedId).css("display",display);
	}
}

function showOrderForm() {
	if ($(this).attr("formName")) {
		var formName = $(this).attr("formName");
		var formTitle = $(this).parent().parent().find("td:eq(1)").html();
		$.post(
			"/orderforms/orderformprocess.php",
			{"formName" : formName},
			function(response) {
				$("body").append(
					"<div id='orderForm'>"
					+ "<div class='order_form_header'>"
					+ "<img class='close_window btn' src='/dsg/close.png' alt='закрыть' title='закрыть'/>"
					+ "<h2>" + formTitle + "</h2>"
					+ "</div>"
					+ response
					+ "</div>"
				);
				$("#order-form").submit(sendOrderForm);
			}
		);
	}
	
	return false;
}

function validateOrderForm() {
	$("#order-form select,#order-form input[type=text]").each(function() {
		if ($(this).attr("required") && !(/[\d\wа-я]{3,50}/.test($(this).val()))) {
			emptyFields.push($(this).parent().parent().find("div.field_name:not(span.redstar)").text());
		}
	});
	return (emptyFields.length > 0) ? false : true;
}

function sendOrderForm() {
	if (validateOrderForm()) {
		var url = $("#order-form").attr("action");
		var fData = {};
		$("#order-form select,#order-form input,#order-form textarea").each(function() {
			if ($(this).find("option").length > 0 || $(this).attr("type") == "text" || $(this).attr("type") == "textarea" || $(this).attr("type") == "hidden") {
				fData[$(this).attr("name")] = $(this).val();
			} else {
				if ($(this).attr("checked")) {
					fData[$(this).attr("name")] = $(this).val();
				}	
			}			
		});
		$.post(
			url,
			fData,
			function(response) {
				$("#order-form").html("<h3>" + response + "</h3>");
				setTimeout(function(){
					$("#orderForm").remove();
				},1500);
			}
		);
	} else {
		var fields = emptyFields.join("\n");
		alert("Необходимо заполнить следующие поля: \n" + fields);
		emptyFields = [];
	}
	return false;
}

function closeOrderForm() {
	$("#orderForm").remove();
}

$("#order-form select").live("change",showDetailedFields);
$("#order-form input[type=radio],#order-form input[type=checkbox]").live("click",showDetailedFields);

$(document).ready(function() {
	$("a.order_form").bind("click",showOrderForm);
	$("img.close_window").live("click",closeOrderForm);
});
