﻿/* Form script */
citybreakjq(document).ready(function () {

	citybreakjq('.cb_termsandconditions').colorbox({ iframe: true, innerWidth: 480, innerHeight: 400 });

	citybreakjq('#CB_form_datefrom').datePicker({
		createButton: false,
		showYearNavigation: false,
		horizontalOffset: -1,
		verticalOffset: 19

	}).bind('click', function () {
		if (!citybreakjq(this).hasClass('cb_disabled')) {
			citybreakjq(this).dpDisplay();
			return false;
		}
	}).bind('dpClosed', function (e, selectedDates) {
		var d = selectedDates[0];
		if (d) {
			d = new Date(d);
			citybreakjq('#CB_form_dateto').dpSetStartDate(d.CB_addDays2(1).asString());
			citybreakjq('#CB_form_dateto').dpSetSelected(d.CB_addDays2(1).asString());
		}

	});

	citybreakjq('#Citybreak_trigger_from').click(function () {
		citybreakjq('#CB_form_datefrom').dpDisplay();
	});

	citybreakjq('#CB_form_datefrom').val(new Date().asString()).trigger('change');

	citybreakjq('#CB_form_dateto').datePicker({
		createButton: false,
		showYearNavigation: false,
		horizontalOffset: -1,
		verticalOffset: 19

	}).bind('click', function () {
		if (!citybreakjq(this).hasClass('cb_disabled')) {
			citybreakjq(this).dpDisplay();
			return false;
		}
	}).bind('dpClosed', function (e, selectedDates) {

	});

	citybreakjq('#Citybreak_trigger_to').click(function () {
		citybreakjq('#CB_form_dateto').dpDisplay();
	});
	citybreakjq('#CB_form_dateto').val(new Date().CB_addDays2(1).asString()).trigger('change');

	if (citybreakjq('#Citybreak_nodates').attr('checked')) {
		citybreakjq('#Citybreak_bookingform select, #Citybreak_bookingform input[type="text"]').attr('disabled', 'disabled');
		citybreakjq('#CB_form_datefrom').datePicker().dpSetDisabled(true).addClass('cb_disabled');
		citybreakjq('#CB_form_dateto').datePicker().dpSetDisabled(true).addClass('cb_disabled');
		citybreakjq('#CB_form_datefrom').val('');
		citybreakjq('#CB_form_dateto').val('');
		citybreakjq.uniform.update("#Citybreak_bookingform select");
		citybreakjq('#CB_srch_btn1').hide();
		citybreakjq('#CB_srch_btn2').show();
	}

	citybreakjq('#Citybreak_nodates').click(function () {
		if (citybreakjq(this).attr('checked')) {
			citybreakjq('#Citybreak_bookingform select, #Citybreak_bookingform input[type="text"]').attr('disabled', 'disabled');
			citybreakjq('#CB_form_datefrom').dpSetDisabled(true).addClass('cb_disabled');
			citybreakjq('#CB_form_dateto').dpSetDisabled(true).addClass('cb_disabled');
			citybreakjq('#CB_form_datefrom').val('');
			citybreakjq('#CB_form_dateto').val('');
			citybreakjq.uniform.update("#Citybreak_bookingform select");
			citybreakjq('#CB_srch_btn1').hide();
			citybreakjq('#CB_srch_btn2').show();
		} else {
			citybreakjq('#Citybreak_bookingform select, #Citybreak_bookingform input[type="text"]').removeAttr('disabled');
			citybreakjq('#CB_form_datefrom').dpSetDisabled(false).removeClass('cb_disabled');
			citybreakjq('#CB_form_dateto').dpSetDisabled(false).removeClass('cb_disabled');
			citybreakjq('#CB_form_datefrom').val(new Date().asString()).trigger('change');
			citybreakjq('#CB_form_dateto').val(new Date().CB_addDays2(1).asString()).trigger('change');
			citybreakjq.uniform.update("#Citybreak_bookingform select");
			citybreakjq('#CB_srch_btn2').hide();
			citybreakjq('#CB_srch_btn1').show();
		}
	});
	var CB_PlacementString = function () {

		var element = citybreakjq('#CB_searchstring');
		if (element.length > 0) {
			var count = citybreakjq('#CB_numRooms').val();
			var str = "";
			for (var i = 1; i <= count; i++) {
				if (str.length > 0) {
					str += "r";
				}
				str += citybreakjq('#CB_numAdults' + i).val();
				var children = citybreakjq('#CB_numChild' + i).val();

				var validChildrenExists = false;
				var nrValidChildren = 1;

				for (var j = 1; j <= children; j++) {
					var cstr = "";

					var childAge = citybreakjq('#CB_childage' + i + '' + j).val();

					if (nrValidChildren > 1) {
						cstr += "c";
					}

					if (citybreak.isNumber(childAge)) {

						if (!validChildrenExists) {
							str += "a";
							validChildrenExists = true;
						}						

						if (childAge < 17) {
							cstr += citybreakjq('#CB_childage' + i + '' + j).val();
						} else {
							cstr += 17;
							citybreakjq('#CB_childage' + i + '' + j).val(17)
						}

						str += cstr;

						nrValidChildren++;
					}

				}
			}
			element.val(str);
		}
	}


	citybreakjq("#Citybreak_bookingform select, #Citybreak_bookingform input").live('change', function () {
		CB_PlacementString();
	});

	citybreakjq('#CB_SearchButton').click(function () {

		if (CB_accommodationSearchForm_isValid('#CB_form_datefrom', '#CB_form_dateto', '#Citybreak_nodates')) {
			cb_formcreate();
		}

	});

	citybreakjq('#CB_SearchButtonNodates').click(function () {
		if (citybreakjq("input[name=cb_showon]:checked").val() == 'map') {
			window.location = '/en/Stay/s/AccommodationResult/Map';
		} else {
			window.location = '/en/Stay/s/AccommodationResult/';
		}
	});
	function cb_formcreate() {
		var datefrom = citybreakjq('#CB_form_datefrom').val();
		var dateto = citybreakjq('#CB_form_dateto').val();

		var tdatefrom = citybreakjq.format(Date.fromString(datefrom), citybreakjq.cultures.en.calendars.standard.patterns.d);
		var tdateto = citybreakjq.format(Date.fromString(dateto), citybreakjq.cultures.en.calendars.standard.patterns.d);

		citybreakjq('#Citybreak_bookingform .cb_copy').append('<form id="citybreak_searchform" action="/en/Bo/s/AccommodationSearch/Search" method="post"></form>');
		var cb_addDateFrom = citybreakjq('<input value="' + tdatefrom + '" name="start" type="hidden" />');
		var cb_addDateTo = citybreakjq('<input value="' + tdateto + '" name="end" type="hidden" />');
		var cb_p = citybreakjq('<input value="' + citybreakjq('#CB_searchstring').val() + '" name="p" type="hidden" />');
		var cb_acc = citybreakjq('<input value="' + citybreakjq('#CB_accommodationtype').val() + '" name="filter" type="hidden" />');
		var cb_show = citybreakjq('<input value="' + citybreakjq('input[name="cb_showon"]:checked').val() + '" name="showas" type="hidden" />');

		citybreakjq('#citybreak_searchform').append(cb_addDateFrom);
		citybreakjq('#citybreak_searchform').append(cb_addDateTo);
		citybreakjq('#citybreak_searchform').append(cb_p);

		citybreakjq('#citybreak_searchform').append(cb_acc);
		citybreakjq('#citybreak_searchform').append(cb_show);

		citybreakjq('#citybreak_searchform').submit();
	}

});
//function CB_onRoomChange() {
//	var CB_selected = citybreakjq("#CB_numRooms option:selected");
//	var CB_numopt = citybreakjq("#CB_numRooms option").size();
//	var CB_selval = CB_selected.val();
//	for (var i = 0; i < CB_numopt; i++) {
//		if ((i + 1) <= CB_selval) {
//			citybreakjq("#CB_room_hd" + (i + 1)).slideDown("fast");
//			citybreakjq("#CB_form_room" + (i + 1)).slideDown("fast");
//		}
//		if (CB_selval == 1) {
//			citybreakjq("#CB_room_hd1").slideUp("fast");
//		}
//		if ((i + 1) > CB_selval) {
//			citybreakjq("#CB_room_hd" + (i + 1)).slideUp("fast");
//			citybreakjq("#CB_form_room" + (i + 1)).slideUp("fast");
//		}
//	}
//}
//function CB_onChildChange(CB_numsel) {
//	var CB_selected = citybreakjq("#CB_numChild" + CB_numsel + " option:selected");
//	var CB_numopt = citybreakjq("#CB_numChild" + CB_numsel + " option").size();
//	var CB_selval = CB_selected.val();
//	for (var i = 0; i < CB_numopt; i++) {
//		if (i <= CB_selval) {
//			citybreakjq("#CB_room_childage_cont" + CB_numsel + " .cb_children").show();
//			citybreakjq("#CB_room_childage_cont" + CB_numsel + " .cb_childage_show" + i).show();
//		}
//		if (CB_selval == 0) {
//			citybreakjq("#CB_room_childage_cont" + CB_numsel + " .cb_children").hide();
//		}
//		if (i > CB_selval) {
//			citybreakjq("#CB_room_childage_cont" + CB_numsel + " .cb_childage_show" + i).hide();
//		}
//	}
//}