function strReplace(s, r, w)
{
	return s.split(r).join(w);
}

function addslashes(str) 
{
	str=str.replace(/\'/g,'\\\'');
	str=str.replace(/\"/g,'\\"');
	str=str.replace(/\\/g,'\\\\');
	str=str.replace(/\0/g,'\\0');
	return str;
}
function stripslashes(str) 
{
	str=str.replace(/\\'/g,'\'');
	str=str.replace(/\\"/g,'"');
	str=str.replace(/\\\\/g,'\\');
	str=str.replace(/\\0/g,'\0');
	return str;
}

function trim(str)
{ 
	return str.replace(/^\s+|\s+$/g, '');
}


function getObjValue(nid)
{
	if (document.getElementById(nid).type == "checkbox")
	{
		if (document.getElementById(nid).checked == true)
		{
			return document.getElementById(nid).value;
		}
	}
	else
	{
		return document.getElementById(nid).value;
	}
}

function getValFromUrl(url, varname)
{
	var vars = new Array();
	vars = url.split("&");
	var ret = "error";

	for (i = 0; i < vars.length; i++)
	{
		var value = new Array();
		value = vars[i].split("=");
		if (value[0] == varname)
		{
			ret = value[1];
		}
	}
	return ret;	
}

function makeRequest(url, param1, param2, param3, param4, param5, param6, param7, param8, param9, param10, param11, param12, param13, param14, param15, param16, param17, param18, param19, param20) 
{
	var http_request = false;

	if (window.XMLHttpRequest) 
	{ // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) 
		{
			http_request.overrideMimeType('text/html');
			// Читайте ниже об этой строке
		}
	} 
	else if (window.ActiveXObject) 
	{ // IE
		try 
		{
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} 
		catch (e) 
		{
			try 
			{
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} 
			catch (e) 
			{
			}
		}
	}

	if (!http_request) 
	{
		alert('Не вышло  Невозможно создать экземпляр класса XMLHTTP ');
		return false;
	}

	http_request.onreadystatechange = function() 
	{ 
		if (http_request.readyState == 4)
		{
            if (http_request.status == 200)
			{
				if (getValFromUrl(http_request.responseText, "answer") == "getDateTable")		//***Пришел ответ от генерации полей с датами
				{
					if (getValFromUrl(http_request.responseText, "error") != "")		//Возникли ошибки
					{

					}
					else
					{
						document.getElementById('dateFields').innerHTML = strReplace(getValFromUrl(http_request.responseText, "result"), "::ravno::", "=");
					}
				}
				else if (getValFromUrl(http_request.responseText, "answer") == "getTimeTable")		//***Пришел ответ от генерации полей со временем
				{
					if (getValFromUrl(http_request.responseText, "error") != "")		//Возникли ошибки
					{

					}
					else
					{
						document.getElementById('timeFields').innerHTML = strReplace(getValFromUrl(http_request.responseText, "result"), "::ravno::", "=");
					}
				}
				else if (getValFromUrl(http_request.responseText, "answer") == "getRandomPreview")		//***Пришел ответ от генерации превьюшек
				{
					if (getValFromUrl(http_request.responseText, "error") != "")		//Возникли ошибки
					{

					}
					else
					{
						var newHTML = strReplace(getValFromUrl(http_request.responseText, "result"), "::ravno::", "=");
						newHTML = strReplace(newHTML, "::amp::", "&");
						document.getElementById('randomPreview').innerHTML = newHTML;
					}
				}
				else if (getValFromUrl(http_request.responseText, "answer") == "getCalendarTable")		//***Пришел ответ от генерации Календаря
				{
					if (getValFromUrl(http_request.responseText, "error") != "")		//Возникли ошибки
					{

					}
					else
					{
						document.getElementById('calendarTable').innerHTML = strReplace(getValFromUrl(http_request.responseText, "result"), "::ravno::", "=");
					}
				}
				else if (getValFromUrl(http_request.responseText, "answer") == "sendOrder")		//***Пришел ответ от отправки заказа
				{
					document.getElementById('sendOrderButton').disabled = false;
					if (getValFromUrl(http_request.responseText, "error") != "")		//Возникли ошибки
					{
						alert(getValFromUrl(http_request.responseText, "error"));
					}
					else
					{
						document.getElementById('orderContentTable').innerHTML = "<p><strong>Бронирование фотостудии</strong><br />Ваш заказ принят. Мы свяжемся с вами для его подтверждения.</p>";
					}
					
				}
				else if (getValFromUrl(http_request.responseText, "answer") == "genTotal")		//***Пришел ответ от генерации цены
				{
					document.getElementById('sendOrderButton').disabled = false;
					if (getValFromUrl(http_request.responseText, "error") != "")		//Возникли ошибки
					{
						alert(getValFromUrl(http_request.responseText, "error"));
					}
					else
					{
						document.getElementById('total').innerHTML = getValFromUrl(http_request.responseText, "price");
					}
					
				}
			}
			else
			{
				alert('С запросом возникла проблема.');
			}
		}
	};


	//************** ОБРАБАТЫВАЕМ КЛИКИ
	if (url == "getDateTable")
	{
		http_request.open('POST', "getAnswer.php", true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Connection", "close");
		//http_request.send("q=getDateTable&p1=" + param1 + "&p2=" + param2 + "&p3=" + param3 + "&p4=" + param4 + "&p5=" + param5 + "&p6=" + param6 + "&p7=" + param7 + "&p8=" + param8 + "&p9=" + param9 + "&p10=" + param10);
		http_request.send("q=getDateTable");
	}

	if (url == "getTimeTable")
	{
		http_request.open('POST', "getAnswer.php", true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Connection", "close");
		http_request.send("q=getTimeTable");
	}

	if (url == "getRandomPreview")
	{
		http_request.open('POST', "getAnswer.php", true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Connection", "close");
		http_request.send("q=getRandomPreview");
	}

	if (url == "getCalendarTable")
	{
		http_request.open('POST', "getAnswer.php", true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Connection", "close");
		http_request.send("q=getCalendarTable&p1=" + param1);
	}

	if (url == "sendOrder")
	{
		http_request.open('POST', "getAnswer.php", true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Connection", "close");
		http_request.send("q=sendOrder&p1=" + param1 + "&p2=" + param2 + "&p3=" + param3 + "&p4=" + param4 + "&p5=" + param5 + "&p6=" + param6 + "&p7=" + param7 + "&p8=" + param8 + "&p9=" + param9 + "&p10=" + param10 + "&p11=" + param11);
		document.getElementById('sendOrderButton').disabled = true;
	}

	if (url == "genTotal")
	{
		http_request.open('POST', "getAnswer.php", true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Connection", "close");
		http_request.send("q=genTotal&p1=" + param1 + "&p2=" + param2 + "&p3=" + param3 + "&p4=" + param4 + "&p5=" + param5 + "&p6=" + param6 + "&p7=" + param7 + "&p8=" + param8);
		document.getElementById('sendOrderButton').disabled = true;
	}

	
}




//********************************************************************************



function alertContents(http_request) 
{
	if (http_request.readyState == 4) 
	{
		if (http_request.status == 200) 
		{
			alert(http_request.responseText);
		} 
		else 
		{
			alert('С запросом возникла проблема.');
		}
	}
}

function genTotal(day, month, year, timeFrom, timeTo, rent, assist, discount)
{
	makeRequest("genTotal", day, month, year, timeFrom, timeTo, rent, assist, discount);
	document.getElementById('total').innerHTML = "считаем...";
}
