function openWindow(url,w,h)
{
	return !window.open(url,'fullSizePhoto','width='+w+',height='+h);
}

function setRequired(formField)
{
	cls.add(formField,'required');
	checkForm.checkField(formField);
	fieldHolder = formField.parentNode;
	spans = fieldHolder.getElementsByTagName('span');
	for (var i = 0; i < spans.length; i++)
	{
		if (cls.has(spans[i],'hint'))
		{
			// already required;
			return;
		}
	}
	requiredImg = document.createElement('img');
	requiredImg.src = 'img/ico-required.gif';
	requiredImg.alt = msg.REQUIRED;
	requiredImg.width = '10';
	requiredImg.height = '10';
	hintSpan = document.createElement('span');
	cls.add(hintSpan,'hint');
	hintSpan.appendChild(requiredImg);
	hintSpan.appendChild(document.createTextNode(" "+msg.REQUIRED+"\n"));
	fieldHolder.appendChild(hintSpan);
}

function unsetRequired(formField)
{
	cls.remove(formField,'required');
	checkForm.checkField(formField);
	fieldHolder = formField.parentNode;
	spans = fieldHolder.getElementsByTagName('span');
	for (var i = 0; i < spans.length; i++)
	{
		if (cls.has(spans[i],'hint'))
		{
			fieldHolder.removeChild(spans[i]);
		}
	}
}

function hideFormPart(partId)
{
	var formPart = document.getElementById(partId);
	inputs = formPart.getElementsByTagName('input');
	for (var i = 0; i < inputs.length; i++)
	{
		cls.add(inputs[i],'noValidation');
	}
	formPart.style.display = 'none';
}

function showFormPart(partId)
{
	var formPart = document.getElementById(partId);
	inputs = formPart.getElementsByTagName('input');
	for (var i = 0; i < inputs.length; i++)
	{
		cls.remove(inputs[i],'noValidation');
		checkForm.checkField(inputs[i]);
	}
	formPart.style.display = '';	// default
}

function updateFormOrderFor()
{
	var clientButton = document.getElementById('clientRadio');
	var myselfButton = document.getElementById('myselfRadio');
	if (myselfButton.checked)
	{
		// vypnout jednu cast
		setRequired(document.getElementById('passengerPhoneField'));
		setRequired(document.getElementById('passengerEmailField'));
		hideFormPart('clientFormPart');
	} else
	{
		// zapnout
		unsetRequired(document.getElementById('passengerPhoneField'));
		unsetRequired(document.getElementById('passengerEmailField'));
		showFormPart('clientFormPart');
	}
}

function updateFormPickupType()
{
	var addressButton = document.getElementById('addressRadio');
	var airportButton = document.getElementById('airportRadio');
	if (airportButton.checked)
	{
		showFormPart('airportFormPart');
		hideFormPart('addressFormPart');
	} else
	{
		showFormPart('addressFormPart');
		hideFormPart('airportFormPart');
	}
}

function updateRideBack()
{
	var noButton = document.getElementById('noRideBackRadio');
	var yesButton = document.getElementById('rideBackRadio');
	if (yesButton.checked)
	{
		showFormPart('rideBackFormPart');
	} else
	{
		hideFormPart('rideBackFormPart');
	}
}

function updateRideBackPickupType()
{
	var rbAddressButton = document.getElementById('rbPickupAddressRadio');
	var rbAirportButton = document.getElementById('rbPickupAirportRadio');
	if (rbAirportButton.checked)
	{
		showFormPart('rbPickupAirportFormPart');
		hideFormPart('rbPickupAddressFormPart');
		var destAirportButton = document.getElementById('rbAirportRadio');
		if (destAirportButton.checked)
		{
			var rbDestAddressButton = document.getElementById('rbAddressRadio');
			rbDestAddressButton.checked = true;
		}
		hideFormPart('rbAirportPart');
	} else
	{
		// enable dest airport
		showFormPart('rbAirportPart');
		showFormPart('rbPickupAddressFormPart');
		hideFormPart('rbPickupAirportFormPart');
	}
}

function updateRideBackType()
{
	var rbAddressButton = document.getElementById('rbAddressRadio');
	var rbAirportButton = document.getElementById('rbAirportRadio');
	if (rbAirportButton.checked)
	{
		hideFormPart('rbDestinationFormPart');
		var srcAirportButton = document.getElementById('rbPickupAirportRadio');
		if (srcAirportButton.checked)
		{
			var rbSrcAddressButton = document.getElementById('rbPickupAddressRadio');
			rbSrcAddressButton.checked = true;
		}
		hideFormPart('rbPickupAirportPart');
	} else
	{
		showFormPart('rbPickupAirportPart');
		showFormPart('rbDestinationFormPart');
	}
}

function initOrderForm()
{
	updateFormOrderFor();
	updateFormPickupType();
	updateRideBack();
	updateRideBackType();
	updateRideBackPickupType();
}

$(function(){
	$('#clientRadio,#myselfRadio').bind('click blur focus',function(){
		updateFormOrderFor();
	});
	$('#addressRadio,#airportRadio').bind('click blur focus',function(){
		updateFormPickupType();
	});
	$('#noRideBackRadio,#rideBackRadio').bind('click blur focus',function(){
		updateRideBack();
	});
	$('#rbPickupAddressRadio,#rbPickupAirportRadio').bind('click blur focus',function(){
		updateRideBackPickupType();
	});
	$('#rbAddressRadio,#rbAirportRadio').bind('click blur focus',function(){
		updateRideBackType();
	});
	$('#orderForm').each(function(){
		initOrderForm();
	});
	$('#headerImageFader').crossSlide({
		sleep: 3,
		fade: 1
	},[
		{src: path.BASE_URL + 'img/title/' + 'mb-1.jpg'},
		{src: path.BASE_URL + 'img/title/' + 'mb-2.jpg'},
		{src: path.BASE_URL + 'img/title/' + 'superb.jpg'},
		{src: path.BASE_URL + 'img/title/' + 'mb-3.jpg'},
		{src: path.BASE_URL + 'img/title/' + 'a6.jpg'},
		{src: path.BASE_URL + 'img/title/' + 'viano.jpg'},
		{src: path.BASE_URL + 'img/title/' + 'mago2.jpg'}
	]);
	$('a.newWin').bind('click', function(){
		return !window.open($(this).attr('href'), '_blank');
	});
});