var m_names = ["Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "November", "December"]; var s_id = ''; var si_id = ''; var no_months_done = 0; var all_dates = []; var latest_date = ''; var TheRooms = { rooms: [ {'id': 1, 'name': 'r'} ], print_rooms: function() { var i; var output = ""; for(i = 1; i <= this.rooms.length; i++) { output += this.room(i); } $("#the_rooms").html(output); }, 'room': function(id) { var roomname; roomname = "Rum"+id; var output; output = ""; output += ""; return output; } }; function toCorrectDate(date) { var mon = date.getMonth(); //if( mon.length = 1) mon = "0" + mon; var day = date.getDate(); //if( day.length = 1) day = "0" + day; var year = date.getFullYear(); var new_date = new Date(year, mon, day); return new_date; } function fetchArrivableDates(no_months, datefrom) { var fromdate = ""; if(datefrom.length > 5) { fromdate = "&datumfrom="+datefrom; } $.getJSON('/ajax/cbkalender.asp?no_months='+no_months + fromdate, function(cb_data) { s_id = cb_data.data[0][0]; si_id = cb_data.data[0][1]; $("#s_id").val(s_id); $("#si_id").val(si_id); latest_date = cb_data.data[1][0][1]; $.each(cb_data.data[1], function(key, val) { all_dates.push([ cb_data.data[1][key][0], cb_data.data[1][key][1] ]); if( cb_data.data[1][key][1] > latest_date ) { latest_date = cb_data.data[1][key][1]; } }); no_months_done += no_months; }); } function activateCalender() { $('#dateto, #datefrom').datepicker('option', 'showOn', "button"); $('#dateto, #datefrom').datepicker('option', 'buttonImage', "/bilder/design/icon_calender.gif"); $('#dateto, #datefrom').datepicker('option', 'buttonImageOnly', true ); fetchArrivableDates(2, latest_date); } function setupCalender() { fetchArrivableDates(2, ""); $('#datefrom').datepicker({ minDate : '0', monthNames : m_names, dateFormat : 'yy-mm-dd', firstDay : 1, maxDate : '+8m-1', beforeShowDay : function(data) { var this_date = new Date(data); var i = 0; for (i = 0; i < all_dates.length; i++) { var it_date = new Date(all_dates[i][1].replace("-", "/").replace("-", "/")); var diff = it_date - this_date; if( diff === 0 ) { if( all_dates[i][0] === true) { return [true, '']; } } } return [false, '']; }, onSelect : function(dateText, inst) { var current = $("#datefrom").datepicker('getDate'); var d = current.getDate(); var m = current.getMonth(); var y = current.getFullYear(); var mindate = new Date(y, m, d+1); var maxdate = new Date(y, m, d+7); $("#dateto").datepicker('setDate', mindate); $("#dateto").datepicker('option', 'minDate', mindate); $("#dateto").datepicker('option', 'maxDate', maxdate); }, onChangeMonthYear: function(year, month, inst) { if(no_months_done <= 9) { fetchArrivableDates(2, latest_date); } } }, $.datepicker.regional['sv']); $('#dateto').datepicker({ minDate : '+2', monthNames : m_names, dateFormat : 'yy-mm-dd', // 'dd MM', firstDay : 1, maxDate : '+14d-1' }, $.datepicker.regional['sv']); setTimeout("activateCalender();", 2000); $(".ui-datepicker").css('font-size', '65%'); $('#roomselect').change(function() { var i; var rooms = TheRooms.rooms.length; var new_rooms = parseInt($(this).val(), 10); if(new_rooms > rooms) { for(i = rooms; i < new_rooms; i += 1) { TheRooms.rooms.push({'id':i, 'name': 'r'}); } } else if(new_rooms < rooms) { for(i = rooms; i > new_rooms; i -= 1) { TheRooms.rooms.pop(); } } TheRooms.print_rooms(); }); $("#cb_snabbsok_form").bind("submit", function() { $.ajax({ url: '/cb.asp?ajax=1', data: $("#cb_snabbsok_form").serialize(), cache: false, type: 'POST', success: function(data) { $("#hiddenclicker").attr("href", data); $("#hiddenclicker").fancybox({ 'width' : 600, 'height' : 800, 'overlayShow' : true, 'autoScale' : false, 'autoDimensions' : true, 'overlayOpacity' : 0.6, 'showCloseButton' : true, 'type' : 'iframe' }); $("#hiddenclicker").trigger('click'); } }); return false; }); jQuery('#roomselect').yaselect(); } $(document).ready(function() { if($("#cb_snabbsok").length > 0) { setupCalender(); } });