var request = null;
var last_shown_tooltip = "";
var current_shown_tooltip = "";
var tours_calendar_tooltip = false;

window.onresize = function()
{
	// Special offer
	if(document.getElementById('special_offer') != null)
	{
	//document.getElementById('special_offer').style.left = (document.body.clientWidth - document.getElementById('special_offer').clientWidth) + 'px';
	}
	// Calendar box
	if(document.getElementById('calendarBox') != null)
	{
	document.getElementById('calendarBox').style.left = (document.body.clientWidth - document.getElementById('calendarBox').clientWidth - 462) + 'px';
	}
	// Courses box
	if(document.getElementById('allCoursesBox') != null)
	{
		document.getElementById('allCoursesBox').style.left = (document.body.clientWidth - document.getElementById('allCoursesBox').clientWidth - 243) + 'px';
	}
};

function createRequest()
{
	try
	{
		request = new XMLHttpRequest();
	}
	catch(trymicrosoft)
	{
		try
		{
			request = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch(othermicrosoft)
		{
			try
			{
				request = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(faild)
			{
				request = null;
			}
		}
	}
	if(request == null)
	{
		alert("Ошибка создания объекта запроса!");
	}
}

function show_tooltip(tooltip_box_id, tours_calendar_tooltip_param)
{
	if(current_shown_tooltip != "")
	{
		if((tooltip_box_id != current_shown_tooltip) && (document.getElementById(current_shown_tooltip).style.visibility == 'visible'))
		{
			hide_tooltip();
			setTimeout(function(k){return function(){show_tooltip_after_close_prev(k)}}(tooltip_box_id, tours_calendar_tooltip_param),240);
			return 0;
		}
	}
	show_tooltip_after_close_prev(tooltip_box_id, tours_calendar_tooltip_param);
}

function show_tooltip_after_close_prev(tooltip_box_id, tours_calendar_tooltip_param)
{
	if(tours_calendar_tooltip_param)
	{
		tours_calendar_tooltip = true;
	}
	
	current_shown_tooltip = tooltip_box_id;
	
	document.getElementById(current_shown_tooltip).style.visibility = 'visible';
	$('div#' + tooltip_box_id).fadeIn(200);
	
	
	//if(!document.getElementById('content_without_tooltips').addEventListener("click",hide_tooltip,true))
	//{
		//var eventSubj = document.createEventObject();
		//document.getElementById('content_without_tooltips').fireEvent('onclick',eventSubj);
		//document.getElementById('content_without_tooltips').addEventListener("click",hide_tooltip,true);
		//document.getElementById('content_without_tooltips').attachEvent("onclick", hide_tooltip);
	//}
}

function hide_tooltip()
{
	if(document.getElementById(current_shown_tooltip) != null)
	{
		$('div#' + current_shown_tooltip).fadeOut(200);
		setTimeout("hide_tooltip_after_effects()",200);
	}
}

function hide_tooltip_after_effects()
{
		document.getElementById(current_shown_tooltip).style.visibility = 'hidden';
		
		if(tours_calendar_tooltip)
		{
			last_shown_tooltip = current_shown_tooltip;
			tours_calendar_tooltip = false;
			month_shift_toserver = 0;
			changeCalendar("");
		}
}

/*
function allCoursesBox()
{
	if(document.getElementById('allCoursesBox').style.visibility == 'hidden')
	{
		document.getElementById('allCoursesBox').style.visibility = 'visible';
	}
	else
	{
		document.getElementById('allCoursesBox').style.visibility = 'hidden';
	}
}

function calendarBox()
{
	if(document.getElementById('calendarBox').style.visibility == 'hidden')
	{
		document.getElementById('calendarBox').style.visibility = 'visible';
	}
	else
	{
		document.getElementById('calendarBox').style.visibility = 'hidden';
	}
}
*/

// Use AJAX to save user order
function sendTourOrder() {
	request = null;
	createRequest();
	if (request == null)
	{
		alert("Произошла техническая ошибка. В данный момент заказать тур невозможно. Приносим наши извинения!");
	}
	else {
		var toures_orders_form_name = "";
		var toures_orders_form_organization = "";
		var toures_orders_form_phone = "";
		var toures_orders_form_email = "";
		var toures_orders_form_comment = "";
		
		if(document.getElementById("toures_orders_form_name") != null)
		{
			toures_orders_form_name = document.getElementById("toures_orders_form_name").value;
		}
		
		if(document.getElementById("toures_orders_form_organization") != null)
		{
			toures_orders_form_organization = document.getElementById("toures_orders_form_organization").value;
		}
		
		if(document.getElementById("toures_orders_form_phone") != null)
		{
			toures_orders_form_phone = document.getElementById("toures_orders_form_phone").value;
		}
		
		if(document.getElementById("toures_orders_form_email") != null)
		{
			toures_orders_form_email = document.getElementById("toures_orders_form_email").value;
		}
		
		if(document.getElementById("toures_orders_form_comment") != null)
		{
			toures_orders_form_comment = document.getElementById("toures_orders_form_comment").value;
		}
		
		var for_alert = "";
		if(toures_orders_form_name == "")
		{
			for_alert = for_alert + "ФИО";
		}
		
		if(toures_orders_form_email == "")
		{
			if(for_alert != "")
			{
				for_alert = for_alert + ", ";
			}
			for_alert = for_alert + "E-mail";
		}
		
		if(toures_orders_form_comment == "")
		{
			if(for_alert != "")
			{
				for_alert = for_alert + ", ";
			}
			for_alert = for_alert + "Комментарии";
		}
		
		if(for_alert == "")
		{
			var url= "toures_orders.php";
			var params = "name=" + toures_orders_form_name + "&email=" + toures_orders_form_email + "&comment=" + toures_orders_form_comment;
			
			if(toures_orders_form_organization != "")
			{
				params = params + "&organization=" + toures_orders_form_organization;
			}
			
			if(toures_orders_form_phone != "")
			{
				params = params + "&phone=" + toures_orders_form_phone;
			}
			
			request.open("POST", url, true);
			request.onreadystatechange = sendTourOrderResult;
			request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
			request.send(params);
		}
		else
		{
			showTooltipForAlert('Вы не заполнили следующие обязательные поля: ' + for_alert);
		}
	}
}

function sendTourOrderResult() {
	if (request.readyState == 4) {
		if (request.status == 200) {
			if(request.responseText == "mail_fail")
			{
				showTooltipForAlert('Вы неправильно указали адрес e-mail!');
			}
			else
			{
				showTooltipForAlert(request.responseText);
				if(document.getElementById("toures_orders_form_name") != null)
				{
					document.getElementById("toures_orders_form_name").value = "";
				}
				
				if(document.getElementById("toures_orders_form_organization") != null)
				{
					document.getElementById("toures_orders_form_organization").value = "";
				}
				
				if(document.getElementById("toures_orders_form_phone") != null)
				{
					document.getElementById("toures_orders_form_phone").value = "";
				}
				
				if(document.getElementById("toures_orders_form_email") != null)
				{
					document.getElementById("toures_orders_form_email").value = "";
				}
				
				if(document.getElementById("toures_orders_form_comment") != null)
				{
					document.getElementById("toures_orders_form_comment").value = "";
				}
			}
		}
	}
}

// Use AJAX to subscribe user to multicasting
function addUserEmailForMulticasting() {
	request = null;
	createRequest();
	if (request == null)
	{
		alert("Произошла техническая ошибка. В данный момент заказать тур невозможно. Приносим наши извинения!");
	}
	else {
		var multicasting_user_email = "";
		
		if(document.getElementById("multicasting_user_email") != null)
		{
			multicasting_user_email = document.getElementById("multicasting_user_email").value;
		}
		
		if(multicasting_user_email != "")
		{
			var url= "multicasting.php";
			var params = "user_email=" + multicasting_user_email;
			
			request.open("POST", url, true);
			request.onreadystatechange = addUserEmailForMulticastingResult;
			request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
			request.send(params);
		}
		else
		{
			showTooltipForAlert('Вы не указали свой email.');
		}
	}
}

function addUserEmailForMulticastingResult() {
	if (request.readyState == 4) {
		if (request.status == 200) {
			showTooltipForAlert(request.responseText);
			if(document.getElementById("multicasting_user_email") != null)
			{
				document.getElementById("multicasting_user_email").value = "";
			}
		}
	}
}

function showTooltipForAlert(text_value)
{
	var versionOfInternetExplorer = getInternetExplorerVersion();
	if((versionOfInternetExplorer > 0) && (versionOfInternetExplorer < 7.0))
	{
		alert(text_value);
	}
	else
	{
		document.getElementById("tooltipForAlertContent").innerHTML = '<p style="margin: 0;">' + text_value + '</p>';
		document.getElementById("tooltipForAlert").style.display = "block";
	}
}

function closeTooltipForAlert()
{
	document.getElementById("tooltipForAlert").style.display = "none";
}


// Get IE version
function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
  var rv = -1; // Return value assumes failure.
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
    var ua = navigator.userAgent;
    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
    if (re.exec(ua) != null)
      rv = parseFloat( RegExp.$1 );
  }
  return rv;
}
