var defaultVal = '';

if (typeof Kizman == "undefined") var Kizman = new Object();
Kizman = {
	setLang:function(langId, url){$.post('/Index/SetLang/',{langId:langId},function(response){document.location.href = url;});}
	
	,setDestination:function(url){
		if(url.length > 0){
			//document.location.href = url;
            window.open(url, '_blank');
		}
	}
	
	,alert: function(title){
		var items = title.split('@@##@@');
		var html = '';
		for(var i=0;i<items.length;i++){
			html += '<div class="ui-widget"><div style="padding: 0pt 0.7em;" class="ui-state-error ui-corner-all"> <p><span style="float: left; margin-right: 0.3em;" class="ui-icon ui-icon-alert"></span><strong>' + items[i] + '</strong></p></div></div>';
		}
		$("#dialog").html(html);
		$("#dialog").dialog({
			modal: true,
			buttons: {
				ok: function() {
					$(this).dialog('close');
				}
			}
		});
	}
	
	,alertWithCallback: function(title, callback){
		var items = title.split('@@##@@');
		var html = '';
		for(var i=0;i<items.length;i++){
			html += '<div class="ui-widget"><div style="padding: 0pt 0.7em;" class="ui-state-error ui-corner-all"> <p><span style="float: left; margin-right: 0.3em;" class="ui-icon ui-icon-alert"></span><strong>' + items[i] + '</strong></p></div></div>';
		}
		$("#dialog").html(html);
		$("#dialog").dialog({
			modal: true,
			buttons: {
				ok: function() {
					$(this).dialog('close');
					eval(callback);
				}
			}
		});
	}
	
	,alertAndHighlight: function(title){
		var items = title.split('@@##@@');
		var html = '';
		for(var i=0;i<items.length;i++){
			var item = items[i].split('#@#');	
			$('#' + item[0]).addClass('error');
			html += '<div class="ui-widget"><div style="padding: 0pt 0.7em;" class="ui-state-error ui-corner-all"> <p><span style="float: left; margin-right: 0.3em;" class="ui-icon ui-icon-alert"></span><strong>' + item[1] + '</strong></p></div></div>';
		}
		$("#dialog").html(html);
		$("#dialog").dialog({
			modal: true,
			buttons: {
				ok: function() {
					$(this).dialog('close');
				}
			}
		});
	}
	
	,message: function(title){
		var items = title.split('@@##@@');
		var html = '';
		for(var i=0;i<items.length;i++){
			html += '<p><span class="ui-icon ui-icon-circle-check" style="float:left; margin:0 7px 50px 0;"></span><strong>' + items[i] + '</strong></p>';
		}
		$("#dialog").html(html);
		$("#dialog").dialog({
			modal: true,
			buttons: {
				ok: function() {
					$(this).dialog('close');
				}
			}
		});
	}
	
	,messageWithCallback: function(title, callback){
		var items = title.split('@@##@@');
		var html = '';
		for(var i=0;i<items.length;i++){
			html += '<p><span class="ui-icon ui-icon-circle-check" style="float:left; margin:0 7px 50px 0;"></span><strong>' + items[i] + '</strong></p>';
		}
		$("#dialog").html(html);
		$("#dialog").dialog({
			modal: true,
			buttons: {
				ok: function() {
					$(this).dialog('close');
					eval(callback);
				}
			}
		});
	}
	
	,loadingStart: function(){$('#loading_div').fadeIn();}
	
	,loadingEnd: function(){$('#loading_div').fadeOut();}
	
	,setSearchDates:function(type){if(type){$('#fromDate').slideUp();$('#fromDateAn').slideUp();$('#fromDateTitle').slideUp();$('#toDate').slideUp();$('#toDateAn').slideUp();$('#toDateTitle').slideUp();}else{$('#fromDate').slideDown();$('#fromDateAn').slideDown();$('#fromDateTitle').slideDown();$('#toDate').slideDown();$('#toDateAn').slideDown();$('#toDateTitle').slideDown();}}
	
	,search:function(text, from, to, no){
		Kizman.loadingStart();
		var text = $('#' + text).val();
		var default1Val = $('#defaultSearchText').val();
		if(default1Val == text){ text = ''; }
		$.post(
			'/Search/SearchAction/',
			{text:text, from: $('#' + from).val(), to: $('#' + to).val(), no: $('#' + no).attr('checked'), foundedId: $('#foundedId').val()},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					document.location.href=res[1];
				}else{
					Kizman.alert(res[1]);
				}
			}
		);
	}
	
	,initSearch: function(){
		var dates1 = $('#fromDate, #toDate').datepicker({
			regional: $('#langSelector select').val(),
            dateFormat: 'dd/mm/yy',
			defaultDate: "now",
			minDate: "now",
			changeMonth: true,
			numberOfMonths: 1,
			onSelect: function(selectedDate) {
				var option = this.id == "fromDate" ? "minDate" : "maxDate";
				var instance = $(this).data("datepicker");
				var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
				dates1.not(this).datepicker("option", option, date);
			}
		});
		
		var dates2 = $('#fromDateAjanlat, #toDateAjanlat').datepicker({
			regional: $('#langSelector select').val(),
            dateFormat: 'dd/mm/yy',
			defaultDate: "now",
			minDate: "now",
			changeMonth: true,
			numberOfMonths: 1,		
			onSelect: function(selectedDate) {
				var option = this.id == "fromDateAjanlat" ? "minDate" : "maxDate";
				var instance = $(this).data("datepicker");
				var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
				dates2.not(this).datepicker("option", option, date);
			}
		});
		
		var dates3 = $('#fromDateBo, #toDateBo').datepicker({
			regional: $('#langSelector select').val(),
            dateFormat: 'dd/mm/yy',
			defaultDate: "now",
			minDate: "now",
			changeMonth: true,
			numberOfMonths: 1,
			onSelect: function(selectedDate) {
				var option = this.id == "fromDateBo" ? "minDate" : "maxDate";
				var instance = $(this).data("datepicker");
				var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
				dates3.not(this).datepicker("option", option, date);
			}
		});
		
		/* var dates = $('#fromDatePa').datepicker({
			regional: $('#langSelector select').val(),
			defaultDate: "now+1",
			minDate: "now+1",
			changeMonth: true,
			numberOfMonths: 1,
			onSelect: function(selectedDate) {
				var option = this.id == "fromDatePa" ? "minDate" : "maxDate";
				var instance = $(this).data("datepicker");
				var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
				dates.not(this).datepicker("option", option, date);
			}
		}); */
		
		var default1Val = $('#defaultSearchText').val();
		$('#searchField').focus(function(){if($(this).val() == default1Val){ $(this).val(''); }}).blur(function(){if($(this).val() == ''){ $(this).val(default1Val); }});
	}
	
	,initAutocomplete: function(){
		$("#searchField").autocomplete({
			source: function(request, response) {
				$.ajax({
					url: "/Search/getItems",
					dataType: "json",
					data: {text: request.term},
					success: function(data) {
						response($.map(data.items, function(item) {
							return {
								label: item.name,
								value: item.value,
								id: item.id
							}
						}))
					}
				})
			},
			minLength: 2,
			/*delay:1500,*/
			select: function(event, ui) {						
				$('#foundedId').val(ui.item.id);			
			},		
			open: function() {
				$(this).removeClass("ui-corner-all").addClass("ui-corner-top");
			},
			close: function() {
				$(this).removeClass("ui-corner-top").addClass("ui-corner-all");
			}
		});
		
		$("#programField").autocomplete({
			source: function(request, response) {
				$.ajax({
					url: "/Programs/getItems",
					dataType: "json",
					data: {text: request.term},
					success: function(data) {
						response($.map(data.items, function(item) {
							return {
								label: item.name,
								value: item.value,
								id: item.id
							}
						}))
					}
				})
			},
			minLength: 2,
			select: function(event, ui) {						
				$('#programId').val(ui.item.id);			
			},		
			open: function() {
				$(this).removeClass("ui-corner-all").addClass("ui-corner-top");
			},
			close: function() {
				$(this).removeClass("ui-corner-top").addClass("ui-corner-all");
			}
		});
		
		$("#packageField").autocomplete({
			source: function(request, response) {
				$.ajax({
					url: "/Programs/getItems",
					dataType: "json",
					data: {text: request.term},
					success: function(data) {
						response($.map(data.items, function(item) {
							return {
								label: item.name,
								value: item.value,
								id: item.id
							}
						}))
					}
				})
			},
			minLength: 2,
			select: function(event, ui) {						
				$('#packageId').val(ui.item.id);			
			},		
			open: function() {
				$(this).removeClass("ui-corner-all").addClass("ui-corner-top");
			},
			close: function() {
				$(this).removeClass("ui-corner-top").addClass("ui-corner-all");
			}
		});
	}
	
	,initLeftSearch: function(){
		var sbheight = $("#subContainer").height();
		sbheight-=249;		
		//$("#dynamicHeight").css({"height":sbheight+"px"});
	}
	
	,initSearchValue: function(){
		
	}
	
	,handleSearchKeyPress: function(evt){		
		var charCode = evt.which;
		if ( charCode == 13) {
			//Kizman.search('searchField', 'fromDate', 'toDate', 'noDate');
		} else {
			$('#foundedId').val('');
		}
	}
	
	,initFancy: function(){
		$(".fancy").fancybox({
			'frameWidth'		: '500',
			'frameHeight'		: '400',					
			'type'				: 'iframe'
		});			
	}
	
	,Send2Frend: function(){
		Kizman.loadingStart();
		$('#send2frendError').html('');
		$.post(
			'/Index/send2frend/',
			{url:$('#url').val(), email:$('#send2Frendemail').val(), message:$('#send2Frendmessage').val()},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					$('#fancy_outer').hide();
					$('#fancy_overlay').hide();
					$('#fancy_title').hide();
					$('#fancy_loading').hide();
					$('#fancy_ajax').remove();

					var html = '<p><span class="ui-icon ui-icon-circle-check" style="float:left; margin:0 7px 50px 0;"></span><strong>' + res[1] + '</strong></p>';					
					$("#dialog").html(html);
					$("#dialog").dialog({
						modal: true,
						buttons: {
							ok: function() {
								$(this).dialog('close');
								window.parent.document.location.href = $('#url').val();
							}
						}
					});					
				}else{
					var items = res[1].split('@@##@@');
					var html = '';
					for(var i=0;i<items.length;i++){
						html += '<div class="ui-widget"><div style="padding: 0pt 0.7em;" class="ui-state-error ui-corner-all"> <p><span style="float: left; margin-right: 0.3em;" class="ui-icon ui-icon-alert"></span><strong>' + items[i] + '</strong></p></div></div>';
					}
					$('#send2frendError').html(html);
				}
			}
		);
	}
	
	,Newsletter: function(message){
		Kizman.loadingStart();
		$('#send2frendError').html('');
		$.post(
			'/Index/newsletter/',
			{email:$('#newsletteremail').val(), name:$('#newslettername').val(), type:$('#newsletterType').val()},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					$('#fancy_outer').hide();
					$('#fancy_overlay').hide();
					$('#fancy_title').hide();
					$('#fancy_loading').hide();
					$('#fancy_ajax').remove();

					var html = '<p><span class="ui-icon ui-icon-circle-check" style="float:left; margin:0 7px 50px 0;"></span><strong>' + res[1] + '</strong></p>';
					$("#dialog").html(html);
					$("#dialog").dialog({
						modal: true,
						buttons: {
							ok: function() {
								$(this).dialog('close');
								window.parent.document.location.reload();
							}
						}
					});					
				}else{
					var items = res[1].split('@@##@@');
					var html = '';
					for(var i=0;i<items.length;i++){
						html += '<div class="ui-widget"><div style="padding: 0pt 0.7em;" class="ui-state-error ui-corner-all"> <p><span style="float: left; margin-right: 0.3em;" class="ui-icon ui-icon-alert"></span><strong>' + items[i] + '</strong></p></div></div>';
					}
					$('#send2frendError').html(html);
				}
			}
		);
	}
	
	,indexNarrowSearch: function(valueType, value){
		Kizman.loadingStart();
		var star = new Array();
		var type = new Array();
		var paytype = new Array();
		var service = new Array();
		
		var valueArray = value.split(',');
		
		switch(valueType){
			case 'star':			
				for(var i=0;i<valueArray.length;i++){
					star.push(valueArray[i]);
				}
				break;
			case 'type':
				for(var i=0;i<valueArray.length;i++){
					type.push(valueArray[i]);
				}
				break;
			case 'paytype':
				for(var i=0;i<valueArray.length;i++){
					paytype.push(valueArray[i]);
				}
				break;
			case 'service':			
				for(var i=0;i<valueArray.length;i++){
					service.push(valueArray[i]);
				}
				break;
		}
		
		$.post(
			'/Search/Properties/',
			{star:star, type:type, paytype:paytype, service:service, clear:'1'},
			function(response){
				Kizman.loadingEnd();
				document.location.href = '/Search/text/';
			}
		);
	}
	
	,clearSearchProps: function(){
		Kizman.loadingStart();
		var star = new Array();
		var type = new Array();
		var paytype = new Array();
		var service = new Array();
		
		$.post(
			'/Search/Properties/',
			{star:star, type:type, paytype:paytype, service:service, clear:'1'},
			function(response){
				Kizman.loadingEnd();
				document.location.href = '/Search/text/';
			}
		);
		return true;
	}
	
	,clearSearchPropsAndRedirect: function(url){
		Kizman.loadingStart();
		var star = new Array();
		var type = new Array();
		var paytype = new Array();
		var service = new Array();
		
		$.post(
			'/Search/Properties/',
			{star:star, type:type, paytype:paytype, service:service, clear:'1'},
			function(response){
				Kizman.loadingEnd();
				document.location.href = url;
			}
		);		
	}
	
    ,eraseSearch: function(){
		Kizman.loadingStart();
		var star = new Array();
		var type = new Array();
		var paytype = new Array();
		var service = new Array();
		/*
        $('p.option input:checked').each(function(){
			switch($(this).attr('name')){
				case 'star':
					star.push($(this).val());
					break;
				case 'type':
					type.push($(this).val());
					break;
				case 'paytype':
					paytype.push($(this).val());
					break;
				case 'service':
					service.push($(this).val());
					break;
			}		
		});	
        */	
		$.post(
			'/Search/Properties/',
			{star:star, type:type, paytype:paytype, service:service},
			function(response){
				Kizman.loadingEnd();
				document.location.reload();
			}
		);
	}
    
	,refreshSearch: function(){
		Kizman.loadingStart();
		var star = new Array();
		var type = new Array();
		var paytype = new Array();
		var service = new Array();
		$('p.option input:checked').each(function(){
			switch($(this).attr('name')){
				case 'star':
					star.push($(this).val());
					break;
				case 'type':
					type.push($(this).val());
					break;
				case 'paytype':
					paytype.push($(this).val());
					break;
				case 'service':
					service.push($(this).val());
					break;
			}		
		});		
		$.post(
			'/Search/Properties/',
			{star:star, type:type, paytype:paytype, service:service},
			function(response){
				Kizman.loadingEnd();
				document.location.reload();
			}
		);
	}
	
	,handleBannerClick: function(bannerId, url){
		$.post(
			'/Index/SetBannerClick/',
			{bannerId:bannerId},
			function(){
				document.location.href = url;
			}
		);		
	}
	
	,initProgram: function(){
		var dates = $('#fromDateProgram, #toDateProgram').datepicker({
			regional: $('#langSelector select').val(),
            dateFormat: 'dd/mm/yy',
			defaultDate: "now",
			changeMonth: true,
			numberOfMonths: 1,		
			onSelect: function(selectedDate) {
				var option = this.id == "fromDateProgram" ? "minDate" : "maxDate";
				var instance = $(this).data("datepicker");
				var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
				dates.not(this).datepicker("option", option, date);
			}
		});
		
		defaultVal = $('#defaultProgramText').val();
		$('#programField').focus(function(){if($(this).val() == defaultVal){ $(this).val(''); }}).blur(function(){if($(this).val() == ''){ $(this).val(defaultVal); }});
	}
	
	,handleProgramKeyPress: function(evt){		
		var charCode = evt.which;
		if ( charCode == 13) {
			//Kizman.search('searchField', 'fromDate', 'toDate', 'noDate');
		} else {			
			$('#programId').val('');
		}
	}
	
	,program:function(text, from, to){
		var text = $('#' + text).val();
		if(defaultVal == text){ text = ''; }
		var programType = [];
		$('.programSetCheck :checked').each(function() {
			programType.push($(this).val());
		});
		
		$.post(
			'/Programs/programList/',
			{text:text, from: $('#' + from).val(), to: $('#' + to).val(), programId: $('#programId').val(), programType: programType},
			function(response){
				if(response != 'empty'){
					document.location.href='/programs';
				}
			}
		);
	}
	
	,initPackage: function(){
		var dates = $('#arriveDate').datepicker({
			regional: $('#langSelector select').val(),
            dateFormat: 'dd/mm/yy',
			defaultDate: "now",
			changeMonth: true,
			numberOfMonths: 1,		
			onSelect: function(selectedDate) {
				var option = this.id == "arriveDate" ? "minDate" : "maxDate";
				var instance = $(this).data("datepicker");
				var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
				dates.not(this).datepicker("option", option, date);
			}
		});
		
		defaultVal = $('#defaultPackageText').val();
		$('#packageField').focus(function(){if($(this).val() == defaultVal){ $(this).val(''); }}).blur(function(){if($(this).val() == ''){ $(this).val(defaultVal); }});
	}
	
	,package:function(text, arrive){
		var text = $('#' + text).val();
		if(defaultVal == text){ text = ''; }		
		$.post(
			'/Packagecategories/packageList/',
			{text:text, packageId: $('#packageId').val(), category:  $('#category').val(), arrive: $('#' + arrive).val(), interval: $('#interval').val(), star: $('#star').val(), min: $('#min').val(), max: $('#max').val()},
			function(response){
				if(response != 'empty'){
					document.location.href='/packagecategories';
				}
			}
		);
	}
	
	,conference:function(){
	
		$.post(
			'/Conference/searchList/',
			{
				name:  $('#name').val(), 
				persons:  $('#persons').val(), 
				rooms:  $('#rooms').val(), 
				area:  $('#area').val(), 
				county:  $('#county').val(), 
				region:  $('#region').val(), 

			},
			function(response){
				if(response != 'empty'){
					document.location.href='/Conference';
				}
			}
		);
	}
	
	,removeAllError: function(){
		$('.errorMessage').removeClass('error');
	}
	
	,validateConferenceOfferFirst: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
		$.post(
			'/Conference/ValidateOfferFirst/',
			{
				fromDate:$('#fromDateAjanlat').val(),
				toDate:$('#toDateAjanlat').val(), 
				participant:$('#participant').val(), 
				rooms_needed:$('#rooms_needed').val(), 
				catering_needed:$('#catering_needed').val(), 
				accomodation_needed:$('#accomodation_needed').val(), 
				equipments_needed:$('#equipments_needed').val(), 
				user_comment:$('#user_comment').val()

			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					$('#formSend').slideDown();
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,validateConferenceOfferSecond: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
		$.post(
			'/Conference/ValidateOfferSecond/',
			{
				conference_id:$('#conference_id').val(), 
				fromDate:$('#fromDateAjanlat').val(),
				toDate:$('#toDateAjanlat').val(), 
				participant:$('#participant').val(), 
				rooms_needed:$('#rooms_needed').val(), 
				catering_needed:$('#catering_needed').val(), 
				accomodation_needed:$('#accomodation_needed').val(), 
				equipments_needed:$('#equipments_needed').val(), 
				user_comment:$('#user_comment').val(),
				name:$('#name').val(),
				email:$('#email').val(),
				country:$('#countryOffer').val(),
				zip:$('#zip').val(),
				city:$('#city').val(),
				address:$('#address').val(),
				phone:$('#phone').val()
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					Kizman.message(res[1]);
					$('#formSend').slideUp('slow', function(){$('#offerData').slideUp('slow');});
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,validateAjanlatFirst: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
		$.post(
			'/Booking/ValidateAjanlatFirst/',
			{
				fromDate:$('#fromDateAjanlat').val(),
				toDate:$('#toDateAjanlat').val(), 
				diff:$('#diff').val(), 
				adult:$('#adult').val(), 
				child:$('#child').val(),
				paytype:$('#paytype').val(),
				pet:$('#pet').val(),
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					$('#formSend').slideDown();
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,validateAjanlatSecond: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
		$.post(
			'/Booking/ValidateAjanlatSecond/',
			{
				hotelId:$('#hotel_id').val(), 
				fromDate:$('#fromDateAjanlat').val(), 
				toDate:$('#toDateAjanlat').val(), 
				diff:$('#diff').val(), 
				adult:$('#adult').val(), 
				child:$('#child').val(),
				paytype:$('#paytype').val(),
				pet:$('#pet').val(),
				name:$('#name').val(),
				email:$('#email').val(),
				country:$('#countryOffer').val(),
				zip:$('#zip').val(),
				city:$('#city').val(),
				address:$('#address').val(),
				phone:$('#phone').val()
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					Kizman.message(res[1]);
					$('#formSend').slideUp('slow', function(){$('#offerData').slideUp('slow');});
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,validateBookingFirst: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
		$.post(
			'/Booking/ValidateBookingFirst/',
			{
				hotel_id:$('#hotel_id').val(),
				fromDate:$('#fromDateBo').val(),
				toDate:$('#toDateBo').val(),				
				adult:$('#adultBo').val(), 
				child:$('#childBo').val(),
				paytype:$('#paytypeBo').val(),
				pet:$('#petBo').val(),
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					$('#bookingFormSend').slideDown();
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,validateBookingSecond: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
		var rooms = new Array();
		
		$('.roomtypeselect').each(function(){
			if($(this).val() > 0){
				rooms.push($(this).attr('roomtype') + '_' + $(this).val());
			}
		});		
		
		$.post(
			'/Booking/ValidateBookingSecond/',
			{
				hotel_id:$('#hotel_id').val(),
				resignationAccept:$('#resignationAccept').attr('checked'),
				resignationOpen:$('#resignationOpen').val(),
				rooms:rooms,
				fromDate:$('#fromDateBo').val(),
				toDate:$('#toDateBo').val(),				
				adult:$('#adultBo').val(), 
				child:$('#childBo').val(),
				paytype:$('#paytypeBo').val(),
				pet:$('#petBo').val(),
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					$('#bookingFormSendLast').slideDown();
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,validateBookingLast: function(simpleMessage, waitMessage){
		Kizman.loadingStart();
		Kizman.removeAllError();
		
		$('#lastButton').val(waitMessage);
		
		var rooms = new Array();
		
		$('.roomtypeselect').each(function(){
			if($(this).val() > 0){
				rooms.push($(this).attr('roomtype') + '_' + $(this).val());
			}
		});		
		
		$.post(
			'/Booking/ValidateBookingLast/',
			{
				hotel_id:$('#hotel_id').val(),
				resignationAccept:$('#resignationAccept').attr('checked'),
				resignationOpen:$('#resignationOpen').val(),
				rooms:rooms,
				fromDate:$('#fromDateBo').val(),
				toDate:$('#toDateBo').val(),				
				adult:$('#adultBo').val(), 
				child:$('#childBo').val(),
				paytype:$('#paytypeBo').val(),
				pet:$('#petBo').val(),
				name:$('#nameBo').val(),
				email:$('#emailBo').val(),
				country:$('#countryBooking').val(),
				zip:$('#zipBo').val(),
				city:$('#cityBo').val(),
				address:$('#addressBo').val(),
				phone:$('#phoneBo').val()
			},
			function(response){
				Kizman.loadingEnd();
				$('#lastButton').val(simpleMessage);
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					Kizman.message(res[1]);
					$('#bookingFormSendLast').slideUp('slow', function(){$('#bookingFormSend').slideUp('slow', function(){$('#bookingOfferData').slideUp('slow');});});
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,initGaleries: function(relation, imageTitle){
		$("a[rel=" + relation + "]").fancybox({			
			'titlePosition' 	: 'over',
			'titleFormat'       : function(title, currentArray, currentIndex, currentOpts) {
				return '<span id="fancybox-title-over">' + imageTitle + ' ' +  (currentIndex + 1) + ' / ' + currentArray.length + '</span>';
			}
		});
	}
	
	,inArray: function(elem, array){
		for(var i=0;i<array.length;i++){
			if(array[i]==elem){return i;}
		}
		
		return -1;
	}
	
	,getHotelRatings: function(page, id){
		$('#hotelRating').html('<img src="/img/admin/loadanim.gif" />');
		$.post(
			'/Review/get2Hotel',
			{id:id, page:page},
			function(response){
				$('#hotelRating').html(response);
			}
		);
	}
	
	,initCity: function(){
		var dates = $('#fromDateCity, #toDateCity').datepicker({
			regional: $('#langSelector select').val(),
			defaultDate: "now",
			changeMonth: true,
			numberOfMonths: 1,		
			onSelect: function(selectedDate) {
				var option = this.id == "toDateCity" ? "minDate" : "maxDate";
				var instance = $(this).data("datepicker");
				var date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings);
				dates.not(this).datepicker("option", option, date);
			}
		});
	}
	
	,citySearch:function(text, from, to){
		/* $.post(
			'/Programs/programList/',
			{text:text, from: $('#' + from).val(), to: $('#' + to).val(), programId: $('#programId').val(), programType: programType},
			function(response){
				if(response != 'empty'){
					document.location.href='/programs';
				}
			}
		); */
	}
	
	,validatePackingFirst: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
		$.post(
			'/Booking/ValidatePackageFirst/',
			{
				resignationAccept:$('#resignationAccept').attr('checked'),
				resignationOpen:$('#resignationOpen').val(),
				fromDate:$('#fromDatePa').val(),
				packet:$('#packetBo').val(), 
				paytype:$('#paytypeBo').val(),
				pet:$('#petBo').val(),
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					$('#bookingFormSendLast').slideDown();
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	
	,validatePackingLast: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
				
		$.post(
			'/Booking/ValidatePackageLast/',
			{
				package_id:$('#package_id').val(),
				resignationAccept:$('#resignationAccept').attr('checked'),
				resignationOpen:$('#resignationOpen').val(),
				fromDate:$('#fromDatePa').val(),			
				packet:$('#packetBo').val(), 
				paytype:$('#paytypeBo').val(),
				pet:$('#petBo').val(),
				name:$('#nameBo').val(),
				email:$('#emailBo').val(),
				country:$('#countryBooking').val(),
				zip:$('#zipBo').val(),
				city:$('#cityBo').val(),
				address:$('#addressBo').val(),
				phone:$('#phoneBo').val()
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					Kizman.message(res[1]);
					$('#bookingFormSendLast').slideUp('slow', function(){$('#bookingOfferData').slideUp('slow', function(){});});
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,WinnerRegistration: function(hash){
		Kizman.loadingStart();
		Kizman.removeAllError();
		
		$.post(
			'/Winner/Registration/',
			{
				hash:hash,
				name:$('#name').val(),
				email:$('#email').val(),
				phone:$('#phone').val(),
				postaddress:$('#postaddress').val(),
				newsletter:$('#newsletter').attr('checked')
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					Kizman.messageWithCallback(res[1], 'document.location.href="/"');
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,RegFirstValidation: function(){
		Kizman.loadingStart();
		Kizman.removeAllError();
				
		$.post(
			'/Registration/ValidateFirst/',
			{
				name:$('#name').val(),
				email1:$('#email1').val(),			
				email2:$('#email2').val(), 
				pw1:$('#pw1').val(),
				pw2:$('#pw2').val(),
				phone:$('#phone').val(),
				commission:$('#commission').val(),
				country:$('#country').val(),
				zip:$('#zip').val(),
				city:$('#city').val(),
				address:$('#address').val(),
				pay_name:$('#pay_name').val(),
				pay_country:$('#pay_country').val(),
				pay_zip:$('#pay_zip').val(),
				pay_city:$('#pay_city').val(),
				pay_address:$('#pay_address').val(),
				periodic_payment:$('#periodic_payment').val(),
				szamlaszam:$('#szamlaszam').val(),
				adoszam:$('#adoszam').val(),
				readterms:$('#readterms').val(),
				resignationAccept:$('#resignationAccept').attr('checked'),
				state_id:$('#state').val(),
				pay_state_id:$('#pay_state').val()
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					document.location.href="/Registration/Hotel/";
				}else{
					Kizman.alertAndHighlight(res[1]);
				}
			}
		);
	}
	
	,RegSecondValidation: function(messageWait, messageSave){
		Kizman.loadingStart();
		$('#secondButton').html(messageWait);
		Kizman.removeAllError();
				
		tinyMCE.triggerSave(true,true);
		
		var services = new Array();
		var languages = new Array();
		var pay_types = new Array();
		var creditcards = new Array();
		
		$('input[name=services[]]:checked').each(function(){services.push($(this).val());});
		$('input[name=languages[]]:checked').each(function(){languages.push($(this).val());});
		$('input[name=pay_types[]]:checked').each(function(){pay_types.push($(this).val());});
		$('input[name=creditcards[]]:checked').each(function(){creditcards.push($(this).val());});
		
		$.post(
			'/Registration/ValidateSecond/',
			{
				name:$('#name').val(),
				stars:$('#stars').val(),			
				type:$('#type').val(), 
				details:$('#details').val(),
				zip:$('#zip').val(),
				city_id:$('#field_city_id').val(),
				address:$('#address').val(),
				services:services,
				always_open:$('#always_open').val(),
				open_from_mouth:$('#open_from_mouth').val(),
				open_from_day:$('#open_from_day').val(),
				open_to_mouth:$('#open_to_mouth').val(),
				open_to_day:$('#open_to_day').val(),
				price_with_ifa:$('#price_with_ifa').val(),
				ifa_price:$('#ifa_price').val(),
				room_price_breakfast:$('#room_price_breakfast').val(),
				smoking:$('#smoking').val(),
				pet:$('#pet').val(),
				arrival:$('#arrival').val(),
				departure:$('#departure').val(),
				languages:languages,
				pay_types:pay_types,
				creditcards:creditcards,
				advance:$('#advance').val(),
                state_id:$('#state').val()
			},
			function(response){
				Kizman.loadingEnd();
				var res = response.split('##@@##');
				if(res[0] == 'ok'){
					document.location.href="/Registration/Finish/";
				}else{
					Kizman.alertAndHighlight(res[1]);
					$('#secondButton').html(messageSave);
				}
			}
		);
	}
	
	,initTooltip: function(){
		$('.tooltipHandler[title]').tooltip({});
	}
}
