<div id='ds_search_box' style='padding-top:25px;'></div>    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
  
    <link type="text/css" rel="stylesheet" href="/reserve-stay/css/ply.css"/>
    
    <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css"/>
<!--<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>-->
<script src="https://code.jquery.com/ui/1.11.4/jquery-ui.min.js"
			  integrity="sha256-xNjb53/rY+WmG+4L6tTl9m6PpqknWZvRt0rO1SRnJzw="
			  crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script src="/reserve-stay/js/ply.min.js" type="text/javascript"></script>
<script src="/reserve-stay/js/ctws_front.js" type="text/javascript"></script>
<link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css">
 <!-- <script src="https://code.jquery.com/jquery-1.12.4.js"></script>-->
  <!--<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>-->
  <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"
			  integrity="sha256-VazP97ZCwtekAsvgPBSUwPFKdrwD3unUfSGVYrahUqU="
			  crossorigin="anonymous"></script>
<!--<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">-->
   <link type="text/css" rel="stylesheet" href="/reserve-stay/css/dsform.css"/>
   <script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script>
   <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css" />

   <style>.ctws-guest-popup .row {
    margin: 0px !important;
}</style>


<!-- new javascript-->
<script>
var $ = jQuery;
var appendDone =0; 
var todayDate = '2026-04-21';
function genratedateRangeCal(){
$.ajax({
                    url : "/reserve-stay/data_json.php?new=2",
                    type : "POST",
                    async:false,
                    //data : data,
                    dataType : 'json',
                    headers: {
                'X-Requested-With': 'XMLHttpRequest'
            },
                   success : function(result){
                   sale_room = JSON.parse(result['Salroom']);
                   lst_date = JSON.parse(result['last_date']);
                   sale_price = JSON.parse(result['SaleroomPrice']);
                   stop_room = JSON.parse(result['stoproomsal']);
                   fast_date = JSON.parse(result['fastfilldate']);
                   roomFill = JSON.parse(result['roomFill']);
                   //Proom_date = JSON.parse(result['price_date']);
                   hoffer_date = JSON.parse(result['RoomOfferDate']);
                   //console.log(result['Salroom']);
                  //alert(hoffer_date);
                  },
                  complete : function(){
                  	genrateDate();
                  	//setdateStartDate();
                  },
                 error : function () {
                        alert("error");
                   }
                });
                }
                function isInvalidDate(date, log) {
                 var flagDate ='';
					 flagDate =(stop_room.indexOf(date) != -1)?true:false;
					 console.log(this);
					 if(flagDate && stop_room.length>0){
					 	return true;
					 }else{
					 	flagDate =  (sale_room.indexOf(date) != -1)?true:false;
					 	
					 	if(!flagDate)
					 	return true;
					 }
				 //return (["1/5/2023", "2/5/2023", "3/5/2023"].indexOf(date) != -1)?true:false;
			   }
			   function setdateStartDate(){
			   		dateStr = sale_room[0].split('/');
			   		date = [dateStr[1]+"/"+dateStr[0]+"/"+dateStr[2]];
			   		moment1 =moment(new Date(todayDate));
			   		moment2 =moment(new Date(date));
			   		var flagCheck;
			   		
			   		flagCheck = moment1.isSameOrAfter(moment2);
			   		
			   		if(flagCheck){
			   			return moment1.format('DD-MM-YYYY');
			   		}else{
			   			return moment2.format('DD-MM-YYYY');
			   		}
			   		//moment1.isSameOrAfter(moment2);
			   }
			   function setdaeEndDate(){
			   		var setDate = setdateStartDate();
			   		newEndmoment1 =moment(setDate, "DD-MM-YYYY").add(6, 'days');
			   		moment1 =moment(new Date(newEndmoment1));
			   		moment2 =moment(new Date(lst_date));
			   		var flagCheck;
			   		flagCheck = moment1.isSameOrAfter(moment2);
			   		if(flagCheck)
			   		return moment(new Date(lst_date), "DD-MM-YYYY");
			   		else
			   		return moment(setDate, "DD-MM-YYYY").add(6, 'days');
			   }
                function genrateDate(){
                	$('input[name="daterange"]').daterangepicker({
                	"locale": {
        			"format": "DD/MM/YYYY"},
					 opens: 'center',
					 "showDropdowns": true,
					 minDate:setdateStartDate(),
					 maxDate:moment(new Date(lst_date)).format('DD-MM-YYYY'),
					 startDate:setdateStartDate(),
					 endDate:setdaeEndDate(),
					 autoApply:true,
					 isCustomDate: function(ele){
					 var currDate = moment(ele._d).format('D/M/YYYY');
					 var flagDate ='';
					 flagDate =(stop_room.indexOf(currDate) != -1)?true:false;
					
					 if(flagDate && stop_room.length>0){
					 	return "";
					 }else{
					 	flagDate =  (sale_room.indexOf(currDate) != -1)?true:false;
					 	
					 	if(!flagDate)
					 	return "periodNA";
					 }
					 },
					 isInvalidDate: function(ele) {
					 var currDate = moment(ele._d).format('D/M/YYYY');
					 var flagDate ='';
					 flagDate =(stop_room.indexOf(currDate) != -1)?true:false;
					 
					 if(flagDate && stop_room.length>0){
					 	return true;
					 }else{
					 	flagDate =  (sale_room.indexOf(currDate) != -1)?true:false;
					 	
					 	if(!flagDate)
					 	return true;
					 }
					 //return (["1/5/2023", "2/5/2023", "3/5/2023"].indexOf(currDate) != -1)?true:false;
					 //return (sale_room.indexOf(currDate) != -1)?false:true;
				 }
				   }, function(start, end, label) {
				   var temp = new Date(start);
				   var endDate = new Date(end);
				   var invalid = false;
				   while (temp.getTime() < endDate.getTime()) {
					 if (isInvalidDate(moment(temp).format('D/M/YYYY'), true)) {
					   invalid = true;
					 }
					 temp.setDate(temp.getDate() + 1);
				   }
	
				   if (invalid) {
					 alert('You have selected invalid date.');
					 this.setStartDate(setdateStartDate());
					 this.setEndDate(setdaeEndDate());
					 
				   }
				   $("#date1d").val(start.format('DD'));
				   $("#date1m").val(start.format('YYYYMM'));
				   $("#datef").val(start.format('DD/MM/YYYY'));
				   $("#date2d").val(end.format('DD'));
				   $("#date2m").val(end.format('YYYYMM'));
				   $("#datef1").val(end.format('DD/MM/YYYY'));
				    console.log("A new date selection was made: " + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD'));
				   });
				   $('input[name="daterange"]').on('show.daterangepicker', function(ev, picker) {
				   if(appendDone==0){
				   $('<div class="note_div"><div style="float: left; width: 100%; margin: 10px;font-size:10px"><div style="float:left;">Note:&nbsp;</div><div style="float:left;height:12px;width:12px;background-color:#27ae60;margin-top:2px;"></div><div style="float:left;">&nbsp;Available&nbsp;</div><div style="float:left;height:12px;width:12px;background-color:#ff0000;margin-top:2px;"></div><div style="float:left;">&nbsp;Not Available &nbsp;</div></div></div>').insertAfter(".drp-buttons");
					appendDone=1;
					}
				   });
				   
                }



$('#dataRangeCtws').on('show.daterangepicker', function () {
  setTimeout(() => {
    $('.daterangepicker td.off.ends').each(function () {
      $(this)
        .css({
          'visibility': 'hidden',
          'pointer-events': 'none'
        })
        .off(); // Remove any attached events
    });
  }, 10);
});
  </script>
  <style>
/* Disable interaction on "off" (trailing) dates */
/*.daterangepicker td.off {
  pointer-events: none !important;
  opacity: 0.3;
  background: none !important;
  cursor: not-allowed !important;
}*/
.daterangepicker td.off.ends {
  visibility: hidden !important;
  pointer-events: none !important;
}
.daterangepicker td.not-current-month {
  background-color: transparent !important;
}
</style>
<style>
.daterangepicker .calendar-table th, .daterangepicker .calendar-table td{border-radius: 0px !important;border:1px solid #fff !important;}
.daterangepicker .available {background: #27ae60;color: #fff;}
[class="off disabled"]  {background: #ff0000 !important;color: #fff !important;}
.daterangepicker .next.available,.daterangepicker .prev.available {background: #fff;}
</style>
<!-- End -->




    <script>
    $ = jQuery;
     jQuery(document).ready(function(){
    
        jQuery.ajax({
        url: '/reserve-stay/hotel2/ds_search_form_left_other.php',
        dataType: 'html',
        async: false,
        error: function(){
            alert("Error In Loading");
        },
        success: function(data){
            jQuery('#ds_search_box').html(data);
        },
        complete:function(){
        	genratedateRangeCal();
        }
    });
        });
    
    function frontajaxFormSubmit(paramlist_form){
    if(paramlist_form=="bookform" ){
        if($('#datef').val()=='Check In Dummy Don\'t use'){
            Ply.dialog("alert",err_checkin);
            return false;
        }
        if($('#datef1').val()=='Check Out Dummy Don\'t use'){
            Ply.dialog("alert",err_checkout);
            return false;
        }
        if($('#nights').val()==0){
            Ply.dialog("alert",err_nights);
            return false;
        }
        if($('#rooms').val()==0){
            Ply.dialog("alert",err_rooms);
            return false;
        }
        var wdate = $('#datef').val();
        var wdate1= $('#datef1').val();
        var dateFirst = wdate.split('/');
        var dateSecond = wdate1.split('/');
        var firstdate1 = dateFirst[2]+','+dateFirst[1]+','+dateFirst[0];
        var firstdate2 = dateSecond[2]+','+dateSecond[1]+','+dateSecond[0];
        var oneDay = 24*60*60*1000; // hours*minutes*seconds*milliseconds   
        var firstDate = new Date(firstdate1);
        var secondDate = new Date(firstdate2);
        var diffDays = Math.round((secondDate.getTime()-firstDate.getTime())/(oneDay));

        if ((diffDays)<=0){
            Ply.dialog("alert",err_departureOverArrival);
            return false;
        }
        for(var i=1;i<=$('#rooms').val();i++){
            //if($('#adults'+i).val()==0){
            if($('[name="room_adult['+i+']"]').val()==0){
                Ply.dialog("alert",err_adultForRoom+i+" !!!");
                return false;
            }
        }
//      $('html, body').animate({scrollTop:$('#right_column').offset()}, 'slow');
    }
    //var params = $('#'+paramlist_form).serialize();
    //$(".dropdown-toggle").removeClass("close-sh");
    //$("#search-panel").hide();
  //openPagePost(params);
  //if(paramlist_form=="bookform" || paramlist_form=="hotel_sort" || paramlist_form=="book_frm"){
    //ajaxSidebar();
  //}
  $("#"+paramlist_form).submit();
}
    </script>
  
<script>
$('.ctws-guest , .ctws-done').click(function(e){

    $('.ctws-guest-popup').toggleClass('ctws-popup-open' , function(){$(this).focus();});
    
    });

     function appendsomething(){
            var parElem = $("#ui-datepicker-div");
    //check if your div exists, append if not
    if( !parElem.find(".note_div").length ) {
        parElem.append('<div class="note_div"><div style="float: left; width: 100%; margin: 10px;font-size:10px"><div style="float:left;">Note:&nbsp;</div><div style="float:left;height:12px;width:12px;background-color:#27ae60;margin-top:6px;"></div><div style="float:left;">&nbsp;Available&nbsp;</div><div style="float:left;height:12px;width:12px;background-color:#FFC300;margin-top:6px;"></div><div style="float:left;">&nbsp;Offers&nbsp;</div><div style="float:left;height:12px;width:12px;background-color:#ff0000;margin-top:6px;"></div><div style="float:left;">&nbsp;Not Available &nbsp;</div><div style="float:left;height:12px;width:12px;background-color:#eb008c;margin-top:6px;"></div><div style="float:left;">&nbsp;Filling Fast</div></div></div>');
    }
          
        }
  // new code end
</script>
    {"id":9435,"date":"2025-03-14T16:58:45","date_gmt":"2025-03-14T13:28:45","guid":{"rendered":"https:\/\/alvahotel.com\/?page_id=9435"},"modified":"2025-03-27T11:32:48","modified_gmt":"2025-03-27T08:02:48","slug":"rooms","status":"publish","type":"page","link":"https:\/\/alvahotel.com\/ru\/rooms\/","title":{"rendered":"Rooms"},"content":{"rendered":"<p class=\"qtranxs-available-languages-message qtranxs-available-languages-message-ru\">\u0418\u0437\u0432\u0438\u043d\u0438\u0442\u0435, \u044d\u0442\u043e\u0442 \u0442\u0435\u0445\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0432 &ldquo;<a href=\"https:\/\/alvahotel.com\/en\/wp-json\/wp\/v2\/pages\/9435\" class=\"qtranxs-available-language-link qtranxs-available-language-link-en\" title=\"English\">\u0410\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u043a\u0438\u0439 \u0410\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439<\/a>&rdquo;. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.<\/p><p>[vc_row full_width=&#187;stretch_row_content_no_spaces&#187;][vc_column][vc_single_image image=&#187;9405&#8243; img_size=&#187;full&#187; alignment=&#187;center&#187;][\/vc_column][\/vc_row][vc_row][vc_column width=&#187;1\/6&#8243;][\/vc_column][vc_column width=&#187;2\/3&#8243; el_class=&#187;ctws-form-wrap ctws_form_up&#187;][vc_column_text][\/vc_column_text][\/vc_column][vc_column width=&#187;1\/6&#8243;][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text]<\/p>\n<h2 style=\"text-align: center;\"><strong>Our Rooms<\/strong><\/h2>\n<p style=\"text-align: center;\">We offer three room types\u2014Studio, One-Bedroom, and Suites\u2014each designed for comfort, style, and a memorable stay.<\/p>\n<p>[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column width=&#187;1\/2&#8243;][vc_images_carousel images=&#187;9446,9441,9442,9443,9444,9445&#8243; img_size=&#187;560&#215;375&#8243;][\/vc_column][vc_column width=&#187;1\/2&#8243;][vc_column_text]<\/p>\n<h3><strong>Suites<\/strong><\/h3>\n<p>Alva has 24 Suites. These Suites have been designed to meet the needs of the modern and demanding traveller. Contemporary in style, yet classic in its feel. Materials have been chosen to make one feel relaxed and at ease. Natural colours and stylish furnishings create a calm and relaxing atmosphere.<\/p>\n<p>The Alva Suites are suitable for couples or small families. The fully equipped kitchenette comes as a bonus offering a more comfortable stay.[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column width=&#187;1\/2&#8243;][vc_images_carousel images=&#187;9451,9456,9448,9449,9450,9452,9453,9455&#8243; img_size=&#187;560&#215;375&#8243;][\/vc_column][vc_column width=&#187;1\/2&#8243;][vc_column_text]<\/p>\n<h3><strong>Studio Rooms\u00a0<\/strong><\/h3>\n<p>There are 12 studio apartments all of which can accommodate from 1 to 3 persons. The studios are fully furnished with twin beds and an extra fold up bed for a 3rd person.[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column width=&#187;1\/2&#8243;][vc_images_carousel images=&#187;9457,9458,9459,9460,9461,9462,9463,9464,9466,9467&#8243; img_size=&#187;560&#215;375&#8243;][\/vc_column][vc_column width=&#187;1\/2&#8243;][vc_column_text]<\/p>\n<h3><strong>One Bedroom Apartments<\/strong><\/h3>\n<p>All 49 one bedroom apartments can accommodate 2 to 4 persons and have a separate bedroom with twin beds and a living room which features a sofa bed suitable for a 3rd person and a fold up bed for a 4th person.[\/vc_column_text][\/vc_column][\/vc_row][vc_row][vc_column width=&#187;1\/2&#8243;][vc_images_carousel images=&#187;9495,9496,9497,9498,9499,9500,9501,9502,9503&#8243; img_size=&#187;560&#215;375&#8243;][\/vc_column][vc_column width=&#187;1\/2&#8243;][vc_column_text]<\/p>\n<h3><strong>Studio Suites<\/strong><\/h3>\n<p>Discover our newly upgraded Studio Suite, a practical and comfortable option for up to three guests. Designed with simplicity and convenience in mind, the room offers all the essentials for a relaxing stay. With only 10 Studio Suites available, it&#8217;s a great choice for travelers looking for affordable comfort.[\/vc_column_text][\/vc_column][\/vc_row]<\/p>","protected":false},"excerpt":{"rendered":"<p>\u0418\u0437\u0432\u0438\u043d\u0438\u0442\u0435, \u044d\u0442\u043e\u0442 \u0442\u0435\u0445\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0432 &ldquo;\u0410\u043c\u0435\u0440\u0438\u043a\u0430\u043d\u0441\u043a\u0438\u0439 \u0410\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439&rdquo;. For the sake of viewer convenience, the content is shown below in the alternative language. You may click the link to switch the active language.[vc_row full_width=&#187;stretch_row_content_no_spaces&#187;][vc_column][vc_single_image image=&#187;9405&#8243; img_size=&#187;full&#187; alignment=&#187;center&#187;][\/vc_column][\/vc_row][vc_row][vc_column width=&#187;1\/6&#8243;][\/vc_column][vc_column width=&#187;2\/3&#8243; el_class=&#187;ctws-form-wrap ctws_form_up&#187;][vc_column_text][\/vc_column_text][\/vc_column][vc_column width=&#187;1\/6&#8243;][\/vc_column][\/vc_row][vc_row][vc_column][vc_column_text] Our Rooms We offer three room types\u2014Studio, One-Bedroom, and Suites\u2014each designed for comfort, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"_links":{"self":[{"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/pages\/9435"}],"collection":[{"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/comments?post=9435"}],"version-history":[{"count":9,"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/pages\/9435\/revisions"}],"predecessor-version":[{"id":9528,"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/pages\/9435\/revisions\/9528"}],"wp:attachment":[{"href":"https:\/\/alvahotel.com\/ru\/wp-json\/wp\/v2\/media?parent=9435"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}