function trim(string){
	return string.replace(/(^\s+)|(\s+$)/g, "");
}

function emptyField(field, messageId, form){
	if (trim(form[field].value) == ''){
		$('#' + messageId).show();
		if (form[field].type == 'text')
			form[field].className = 'error';
		return true;
	}
	else
		return false;
}

function submitTransferForm(formname){
	var form = document.forms[formname];
	if ((form.transferto.value == form.transfertoDefault.value || form.transferto.value == '') && (form.transferfrom.value == form.transfertoDefault.value || form.transferfrom.value == '')) {
		$('#errorMessageTransfer').show();
		return false;
	}
	else if (form.transferto.value == form.transfertoDefault.value || form.transferto.value == '') {
		var fields = new Array('name','surname','email','passengersfrom','numberfrom','datefrom','hourfrom','minutefrom','captcha');
		var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessageEmail1','errorMessagePassfrom','errorMessageNumfrom','errorMessageDatefrom','errorMessageHourfrom','errorMessageMinutefrom','errorMessageCaptcha');
		for (var i in fields){
			if (emptyField(fields[i], messageIds[i], form))
				return false;
		}
	}
	else if (form.transferfrom.value == form.transfertoDefault.value || form.transferfrom.value == '') {
		var fields = new Array('name','surname','email','passengersto','numberto','dateto','hourto','minuteto','captcha');
		var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessageEmail1','errorMessagePassto','errorMessageNumto','errorMessageDateto','errorMessageHourto','errorMessageMinuteto','errorMessageCaptcha');
		for (var i in fields){
			if (emptyField(fields[i], messageIds[i], form))
				return false;
		}
	}
	else {
		var fields = new Array('name','surname','email','passengersfrom','passengersto','numberfrom','numberto','datefrom','dateto','hourfrom','minutefrom','hourto','minuteto','captcha');
		var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessageEmail1','errorMessagePassfrom','errorMessagePassto','errorMessageNumfrom','errorMessageNumto','errorMessageDatefrom','errorMessageDateto','errorMessageHourfrom','errorMessageMinutefrom','errorMessageHourto','errorMessageMinuteto','errorMessageCaptcha');
		for (var i in fields){
			if (emptyField(fields[i], messageIds[i], form))
				return false;
		}
		var datefrom = form.datefrom.value.split('/');
		var dateto = form.dateto.value.split('/');
		if (dateto[2] < datefrom[2]){
			$('#errorMessageDate').show();
			return false;
		}
		else if (dateto[2] == datefrom[2]){
			if (dateto[1] < datefrom[1]){
				$('#errorMessageDate').show();
				return false;
			}
			else if (dateto[1] == datefrom[1]){
				if (dateto[0] <= datefrom[0]){
					$('#errorMessageDate').show();
					return false;
				}
			}
		}
	}
	var email = form.email.value;
	var emailRegExp = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/;
	if(!emailRegExp.test(email)){
		$('#errorMessageEmail2').show();
		form.email.className = 'error';
		return false;
	}
}

function transferToggleFields1(value) {
	if (value == document.transferForm.transfertoDefault.value || value == '') {
		$("input[name='passengersto'], input[name='dateto']").attr({disabled : 'disabled', className : ''});
		$("select[name='hourto'], select[name='minuteto']").attr('disabled','disabled');
		$("#errorMessagePassto, #errorMessageDateto, #errorMessageHourto, #errorMessageMinuteto").hide();
		$(".righthide").css('visibility', 'hidden');
	}
	else {
		$("input[name='passengersto'], input[name='numberto'], select[name='hourto'], select[name='minuteto'], input[name='dateto']").attr('disabled','');
		$(".righthide").css('visibility', 'visible');
	}
}

function transferToggleFields2(value) {
	if (value == document.transferForm.transfertoDefault.value || value == '') {
		$("input[name='passengersfrom'], input[name='numberfrom'], input[name='datefrom']").attr({disabled : 'disabled', className : ''});
		$("select[name='hourfrom'], select[name='minutefrom']").attr('disabled', 'disabled');
		$("#errorMessagePassfrom, #errorMessageNumberfrom, #errorMessageDatefrom, #errorMessageHourfrom, #errorMessageMinutefrom").hide();
		$(".lefthide").css('visibility', 'hidden');
	}
	else {
		$("input[name='passengersfrom'], input[name='numberfrom'], select[name='hourfrom'], select[name='minutefrom'], input[name='datefrom']").attr('disabled','');
		$(".lefthide").css('visibility', 'visible');
	}
}

function submitSubscriptionForm(form){
	var fields = new Array('name','surname','email');
	var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessageEmail1');
	for (var i in fields){
		if (emptyField(fields[i], messageIds[i], form))
			return false;
	}
	var email = form.email.value;
	var emailRegExp = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/;
	if(!emailRegExp.test(email)){
		$('#errorMessageEmail2').show();
		form.email.className = 'error';
		return false;
	}
}

function submitFeedbackForm(form){
	var fields = new Array('name','surname','email','subject','message','captcha');
	var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessageEmail1','errorMessageSubject','errorMessageMessage','errorMessageCaptcha');
	for (var i in fields){
		if (emptyField(fields[i], messageIds[i], form))
			return false;
	}
	var email = form.email.value;
	var emailRegExp = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/;
	if(!emailRegExp.test(email)){
		$('#errorMessageEmail2').show();
		form.email.className = 'error';
		return false;
	}
}

function addEventRequirement(lang){
	if (requestRequirementsRows < 5){
		requestRequirementsRows++;
		var table = document.getElementById('eventRequirementsTable');
		if (table.childNodes[0]){
			if (table.childNodes[0].nodeName.toLowerCase() == 'tbody'){
				table = table.childNodes[0];
			}
		}
		if (table.childNodes[1]){
			if (table.childNodes[1].nodeName.toLowerCase() == 'tbody'){
				table = table.childNodes[1];
			}
		}
		var newRow = table.appendChild(document.createElement("tr"));
		newRow.setAttribute('id','eventRequirementRow' + requestRequirementsRows);
		if (lang == 'ru')
			var htmlRow = '<td style="width:120px;padding-left:15px !important;"><input type="text" value="" style="width:75px;" id="dateFormRequirement' + requestRequirementsRows + '" name="requdate[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormRequirement' + requestRequirementsRows + '\').focus();"></td><td style="width:105px;" class="sel2a"><select name="requtime[]"><option value="00:00" selected="selected">00:00</option><option value="01:00">01:00</option><option value="02:00">02:00</option><option value="03:00">03:00</option><option value="04:00">04:00</option><option value="05:00">05:00</option><option value="06:00">06:00</option><option value="07:00">07:00</option><option value="08:00">08:00</option><option value="09:00">09:00</option><option value="10:00">10:00</option><option value="11:00">11:00</option><option value="12:00">12:00</option><option value="13:00">13:00</option><option value="14:00">14:00</option><option value="15:00">15:00</option><option value="16:00">16:00</option><option value="17:00">17:00</option><option value="18:00">18:00</option><option value="19:00">19:00</option><option value="20:00">20:00</option><option value="21:00">21:00</option><option value="22:00">22:00</option><option value="23:00">23:00</option></select></td><td style="width:115px;"><input type="text" value="" style="width:80px;" name="requcount[]"></td><td style="width:160px;" class="sel7"><select name="requplacement[]"><option value="" selected="selected">Выберите…</option><option value="Банкет">Банкет</option><option value="Кабаре">Кабаре</option><option value="П-образная рассадка">П-образная рассадка</option><option value="Фуршет-коктейль">Фуршет-коктейль</option><option value="Буфет без посадочных мест">Буфет без посадочных мест</option><option value="Буфет с посадочными местами">Буфет с посадочными местами</option></select></td><td style="width:160px;" class="sel7"><select name="requfood[]"><option value="" selected="selected">Выберите…</option><option value="Нет">Нет</option><option value="Банкет">Банкет</option><option value="Завтрак">Завтрак</option><option value="Буфет">Буфет</option><option value="Кофе-брейк">Кофе-брейк</option><option value="Фуршет/Коктейль">Фуршет/Коктейль</option><option value="Ужин">Ужин</option><option value="Ланч">Ланч</option><option value="Сэндвич-ланч">Сэндвич-ланч</option></select></td><td><img style="position:relative;top:5px;left:5px;cursor:pointer" src="/img/krest.gif" alt="" onclick="removeRequirements(this);"/></td>';
		if (lang == 'en')
			var htmlRow = '<td style="width:120px;padding-left:15px !important;"><input type="text" value="" style="width:75px;" id="dateFormRequirement' + requestRequirementsRows + '" name="requdate[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormRequirement' + requestRequirementsRows + '\').focus();"></td><td style="width:105px;" class="sel2a"><select name="requtime[]"><option value="00:00" selected="selected">00:00</option><option value="01:00">01:00</option><option value="02:00">02:00</option><option value="03:00">03:00</option><option value="04:00">04:00</option><option value="05:00">05:00</option><option value="06:00">06:00</option><option value="07:00">07:00</option><option value="08:00">08:00</option><option value="09:00">09:00</option><option value="10:00">10:00</option><option value="11:00">11:00</option><option value="12:00">12:00</option><option value="13:00">13:00</option><option value="14:00">14:00</option><option value="15:00">15:00</option><option value="16:00">16:00</option><option value="17:00">17:00</option><option value="18:00">18:00</option><option value="19:00">19:00</option><option value="20:00">20:00</option><option value="21:00">21:00</option><option value="22:00">22:00</option><option value="23:00">23:00</option></select></td><td style="width:115px;"><input type="text" value="" style="width:80px;" name="requcount[]"></td><td style="width:160px;" class="sel7"><select name="requplacement[]"><option value="" selected="selected">Select…</option><option value="Banquet">Banquet</option><option value="Cabaret">Cabaret</option><option value="U-shaped distribution">U-shaped distribution</option><option value="Cocktail">Cocktail</option><option value="Snack without seats">Snack without seats</option><option value="Snack with seats">Snack with seats</option></select></td><td style="width:160px;" class="sel7"><select name="requfood[]"><option value="" selected="selected">Select…</option><option value="None">None</option><option value="Banquet">Banquet</option><option value="Breakfast">Breakfast</option><option value="Snack">Snack</option><option value="Coffee Break">Coffee Break</option><option value="Cocktail">Cocktail</option><option value="Dinner">Dinner</option><option value="Lunch">Lunch</option><option value="Sandwich lunch">Sandwich lunch</option></select></td><td><img style="position:relative;top:5px;left:5px;cursor:pointer" src="/img/krest.gif" alt="" onclick="removeRequirements(this);"/></td>';
		if (lang == 'ua')
			var htmlRow = '<td style="width:120px;padding-left:15px !important;"><input type="text" value="" style="width:75px;" id="dateFormRequirement' + requestRequirementsRows + '" name="requdate[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormRequirement' + requestRequirementsRows + '\').focus();"></td><td style="width:105px;" class="sel2a"><select name="requtime[]"><option value="00:00" selected="selected">00:00</option><option value="01:00">01:00</option><option value="02:00">02:00</option><option value="03:00">03:00</option><option value="04:00">04:00</option><option value="05:00">05:00</option><option value="06:00">06:00</option><option value="07:00">07:00</option><option value="08:00">08:00</option><option value="09:00">09:00</option><option value="10:00">10:00</option><option value="11:00">11:00</option><option value="12:00">12:00</option><option value="13:00">13:00</option><option value="14:00">14:00</option><option value="15:00">15:00</option><option value="16:00">16:00</option><option value="17:00">17:00</option><option value="18:00">18:00</option><option value="19:00">19:00</option><option value="20:00">20:00</option><option value="21:00">21:00</option><option value="22:00">22:00</option><option value="23:00">23:00</option></select></td><td style="width:115px;"><input type="text" value="" style="width:80px;" name="requcount[]"></td><td style="width:160px;" class="sel7"><select name="requplacement[]"><option value="" selected="selected">Виберіть…</option><option value="Банкет">Банкет</option><option value="Кабаре">Кабаре</option><option value="П-подібна розсадка">П-подібна розсадка</option><option value="Фуршет-коктейль">Фуршет-коктейль</option><option value="Буфет без посадкових місць">Буфет без посадкових місць</option><option value="Буфет з посадковими місцями">Буфет з посадковими місцями</option></select></td><td style="width:160px;" class="sel7"><select name="requfood[]"><option value="">Виберіть…</option><option value="Немає" selected="selected">Немає</option><option value="Банкет">Банкет</option><option value="Сніданок">Сніданок</option><option value="Буфет">Буфет</option><option value="Кава-брейк">Кава-брейк</option><option value="Фуршет/Коктейль">Фуршет/Коктейль</option><option value="Вечеря">Вечеря</option><option value="Ланч">Ланч</option><option value="Сендвіч-ланч">Сендвіч-ланч</option></select></td><td><img style="position:relative;top:5px;left:5px;cursor:pointer" src="/img/krest.gif" alt="" onclick="removeRequirements(this);"/></td>';
		$('#eventRequirementRow' + requestRequirementsRows).html(htmlRow);
		$(function(){$('#eventRequirementRow' + requestRequirementsRows).jNice();});
		$('#dateFormRequirement' + requestRequirementsRows).datepicker();
		$('#eventRequirementRow' + requestRequirementsRows + ' div.jNiceSelectWrapper').css('z-index', 97 - requestRequirementsRows);
	}
	if (requestRequirementsRows >= 5) {
        $("#add-requirement-button-container").hide();
    }
}

function addEventLayout(lang, yesVal){
	if (requestLayoutRows < 5 && $("form [name='placement']:checked").val() == yesVal){
		requestLayoutRows++;
		var table = document.getElementById('eventLayoutTable');
		if (table.childNodes[0]){
			if (table.childNodes[0].nodeName.toLowerCase() == 'tbody'){
				table = table.childNodes[0];
			}
		}
		if (table.childNodes[1]){
			if (table.childNodes[1].nodeName.toLowerCase() == 'tbody'){
				table = table.childNodes[1];
			}
		}
		var newRow = table.appendChild(document.createElement("tr"));
		newRow.setAttribute('id','eventLayoutRow' + requestLayoutRows);
		if (lang == 'en')
			var htmlRow = '<td style="width:120px;padding-left:15px !important;"><input type="text" value="" style="width:75px;" id="dateFormLayoutFrom' + requestLayoutRows + '" name="laydatefrom[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormLayoutFrom' + requestLayoutRows + '\').focus();"></td><td style="width:120px;"><input type="text" value="" style="width:75px;" id="dateFormLayoutTo' + requestLayoutRows + '" name="laydateto[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormLayoutTo' + requestLayoutRows + '\').focus();"></td><td style="width:110px;"><input type="text" value="" style="width:75px;" name="layone[]"></td><td style="width:110px;"><input type="text" value="" style="width:75px;" name="laytwo1[]"></td><td style="width:110px;"><input type="text" value="" style="width:75px;" name="laytwo2[]"></td><td style="width:75px;"><input type="text" value="" style="width:75px;" name="laylux[]"></td><td><img style="position:relative;top:5px;left:5px;cursor:pointer" src="/img/krest.gif" alt="" onclick="removeLayout(this);"/></td>';
		if (lang == 'ru')
			var htmlRow = '<td style="width:120px;padding-left:15px !important;"><input type="text" value="" style="width:75px;" id="dateFormLayoutFrom' + requestLayoutRows + '" name="laydatefrom[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormLayoutFrom' + requestLayoutRows + '\').focus();"></td><td style="width:120px;"><input type="text" value="" style="width:75px;" id="dateFormLayoutTo' + requestLayoutRows + '" name="laydateto[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormLayoutTo' + requestLayoutRows + '\').focus();"></td><td style="width:90px;"><input type="text" value="" style="width:55px;" name="layone[]"></td><td style="width:130px;"><input type="text" value="" style="width:100px;" name="laytwo1[]"></td><td style="width:145px;"><input type="text" value="" style="width:110px;" name="laytwo2[]"></td><td style="width:60px;"><input type="text" value="" style="width:55px;" name="laylux[]"></td><td><img style="position:relative;top:5px;left:5px;cursor:pointer" src="/img/krest.gif" alt="" onclick="removeLayout(this);"/></td>';
		if (lang == 'ua')
			var htmlRow = '<td style="width:120px;padding-left:15px !important;"><input type="text" value="" style="width:75px;" id="dateFormLayoutFrom' + requestLayoutRows + '" name="laydatefrom[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormLayoutFrom' + requestLayoutRows + '\').focus();"></td><td style="width:120px;"><input type="text" value="" style="width:75px;" id="dateFormLayoutTo' + requestLayoutRows + '" name="laydateto[]"> <img class="dateImg" src="/img/cal.gif" width="16" height="15" alt="" onclick="document.getElementById(\'dateFormLayoutTo' + requestLayoutRows + '\').focus();"></td><td style="width:90px;"><input type="text" value="" style="width:55px;" name="layone[]"></td><td style="width:130px;"><input type="text" value="" style="width:90px;" name="laytwo1[]"></td><td style="width:145px;"><input type="text" value="" style="width:110px;" name="laytwo2[]"></td><td style="width:60px;"><input type="text" value="" style="width:55px;" name="laylux[]"></td><td><img style="position:relative;top:5px;left:5px;cursor:pointer" src="/img/krest.gif" alt="" onclick="removeLayout(this);"/></td>';
		$('#eventLayoutRow' + requestLayoutRows).html(htmlRow);
		$('#dateFormLayoutFrom' + requestLayoutRows).datepicker();
		$('#dateFormLayoutTo' + requestLayoutRows).datepicker();
	}
	if (requestLayoutRows >= 5) {
        $("#add-layout-button-container").hide();
    }
}

function removeRequirements(node) {
    if (requestRequirementsRows > 1) {
        node.parentNode.parentNode.parentNode.removeChild(node.parentNode.parentNode);
        requestRequirementsRows--;
        if (requestRequirementsRows < 5) {
            $("#add-requirement-button-container").show();
        }
    }
}

function removeLayout(node) {
    if (requestLayoutRows > 1) {
        node.parentNode.parentNode.parentNode.removeChild(node.parentNode.parentNode);
        requestLayoutRows--;
        if (requestLayoutRows < 5) {
            $("#add-layout-button-container").show();
        }
    }
}

function submitRequestForm(form, additional){
	if (additional) {
		var fields = new Array('name','surname','company','event','country','firstday','lastday','email','members');
		var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessageCompany','errorMessageEvent','errorMessageCountry','errorMessageFirstday','errorMessageLastday','errorMessageEmail1','errorMessageMembers');
	}
	else {
		var fields = new Array('name','company','event','country','firstday','lastday','email','members');
		var messageIds = new Array('errorMessageName','errorMessageCompany','errorMessageEvent','errorMessageCountry','errorMessageFirstday','errorMessageLastday','errorMessageEmail1','errorMessageMembers');
	}
	for (var i in fields){
		if (emptyField(fields[i], messageIds[i], form))
			return false;
	}
	if (trim(form.phone1.value) == '' || trim(form.phone2.value) == ''){
		$('#errorMessagePhone').show();
		form.phone1.className = 'error';
		form.phone2.className = 'error';
		return false;
	}
	if (trim(form.fax1.value) == '' || trim(form.fax2.value) == ''){
		$('#errorMessageFax').show();
		form.fax1.className = 'error';
		form.fax2.className = 'error';
		return false;
	}
	var email = form.email.value;
	var emailRegExp = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/;
	if(!emailRegExp.test(email)){
		$('#errorMessageEmail2').show();
		form.email.className = 'error';
		return false;
	}
}

function submitCallbackForm(form){
	var fields = new Array('name','surname','phone');
	var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessagePhone');
	for (var i in fields){
		if (emptyField(fields[i], messageIds[i], form))
			return false;
	}
}

function requestEnableFields() {
	$("#eventLayoutTable input:disabled").attr('disabled','');
    $("#request-layout-container").show();
}

function requestDisableFields() {
	$("#eventLayoutTable input").attr('disabled','disabled');
    $("#request-layout-container").hide();
}

function submitCareerForm(form) {
	var fields = new Array('name','surname','email','position','captcha');
	var messageIds = new Array('errorMessageName','errorMessageSurname','errorMessageEmail1','errorMessagePosition','errorMessageCaptcha');
	for (var i in fields){
		if (emptyField(fields[i], messageIds[i], form))
			return false;
	}
	var email = form.email.value;
	var emailRegExp = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/;
	if(!emailRegExp.test(email)){
		$('#errorMessageEmail2').show();
		form.email.className = 'error';
		return false;
	}
}

function submitWeddingForm(form){
	var fields = new Array('name', 'surname', 'phone', 'email', 'address', 'number', 'perperson');
	var messageIds = new Array('errorMessageName', 'errorMessageSurname', 'errorMessagePhone', 'errorMessageEmail1', 'errorMessageAddress', 'errorMessageNumber', 'errorMessagePerperson');
	for (var i in fields){
		if (emptyField(fields[i], messageIds[i], form))
			return false;
	}
	var email = form.email.value;
	var emailRegExp = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.([a-z]){2,4})$/;
	if(!emailRegExp.test(email)){
		$('#errorMessageEmail2').show();
		form.email.className = 'error';
		return false;
	}
}

function recountSum() {	
	var sum = $('#sum1').val() * 200 + $('#sum2').val() * 120;
	$('#price').val(sum);
	$('#priceValue').html(sum);
}
