app/Resources/views/page/rooms_view.html.twig line 1

Open in your IDE?
  1. {% extends 'base.html.twig' %}
  2. {% set metaParams = {
  3.     'title': room.title,
  4.     'description': room.text|slice(3,300),
  5.     'keywords': room.text|slice(3,300),
  6.     'ogImage': room.ogImage
  7. } %}
  8. {% block meta %}
  9.     {% include 'parts/meta.html.twig' with metaParams %}
  10. {% endblock %}
  11. {% block title %}{{ parent() }} {{ room.title }}{% endblock %}
  12. {% set roomActive = true %}
  13. {% block stylesheets %}
  14.     <style>
  15.         .item-slick {
  16.             background-size: cover;
  17.             background-position: center;
  18.         }
  19.     </style>
  20. {% endblock %}
  21. {% block body %}
  22.     <div class="room-slider">
  23.         <div class="room-title">
  24.             {{ room.title }}<br>
  25.         </div>
  26.     </div>
  27.     <div class="" style="overflow:hidden;">
  28.         <div class="slider-for">
  29.             {% for item in room.images|json_decode %}
  30.                 <div class="item-slick" style="background-image:url({{ item }});"></div>
  31.             {% endfor %}
  32.         </div>
  33.         <div class="slider-nav" style="top: -125px;">
  34.             {% for item in room.images|json_decode %}
  35.                 <div><img src="{{ item }}" alt="" style="width: 150px;"></div>
  36.             {% endfor %}
  37.         </div>
  38.     </div>
  39.     {#<div class="carousel-detail">#}
  40.     {#{% set hash = 0 %}#}
  41.     {#{% for item in room.images|json_decode %}#}
  42.     {#<div data-image="{{ item|get_thumb }}" class="item hash{{ hash}} {% if hash == 0  %}active{% endif %}"#}
  43.     {#{% if room.images|json_decode|length <= 6 %}#}
  44.     {#style="flex:  50%;height: 25vh;overflow:hidden;background-image:url({{ item|get_thumb }});"#}
  45.     {#{% elseif room.images|json_decode|length >= 7 %}#}
  46.     {#style="flex-basis:  33.3%"#}
  47.     {#{% endif %}#}
  48.     {#href="#hash{{ hash}}"></div>#}
  49.     {#{% set hash = hash + 1 %}#}
  50.     {#{% endfor %}#}
  51.     {#</div>#}
  52.     <section style="margin: 0;">
  53.         <div class="container">
  54.             <div class="details-section-ravis">
  55.                 <ul>
  56.                     {% for item in room.room %}
  57.                         <li><img src="{{ asset('img/check.png') }}" alt=""><i class="{{ item.iconInfo }}"></i></li>
  58.                     {% endfor %}
  59.                 </ul>
  60.             </div>
  61.             <div class="details-section-info">
  62.                 <div class="row">
  63.                     <div class="col-lg-8 col-sm-12">
  64.                         <div class="room-info">
  65.                             {{ room.text|raw }}
  66.                         </div>
  67.                         <div class="form-booking" style="margin: 25px 15px;">
  68.                             <form action="{{ path('reservation_room') }}" method="get">
  69.                                 <input type="hidden" name="room-type" value="{{ room.roomType }}">
  70.                                 <button class="btn-ramada hvr-sweep-to-right">Book</button>
  71.                             </form>
  72.                         </div>
  73.                     </div>
  74.                     <div class="col-lg-4 col-sm-12">
  75.                         <div class="form-reserve">
  76.                             <div class="main-title">
  77.                                 <h5>{{ 'Reserved Room'|trans }}</h5>
  78.                             </div>
  79.                             <div class="input-daterange">
  80.                                 <form action="#!" id="form" method="get">
  81.                                     <div class="booking-fields form-group ">
  82.                                         <input id="form-arrival" placeholder="Check in"
  83.                                                class="datepicker-fields form-control check-in" type="text"
  84.                                                name="date"/>
  85.                                     </div>
  86.                                     <div class="booking-fields form-group " style="">
  87.                                         <input id="form-departure" placeholder="Check out"
  88.                                                class="datepicker-fields form-control check-out" type="text"
  89.                                         />
  90.                                         <input type="hidden" name="nights" id="nights">
  91.                                     </div>
  92.                                     <div class="form-group">
  93.                                         <select name="adults" id="adults" class="form-control">
  94.                                             <option value="">{{ 'Adult'|trans }}</option>
  95.                                             <option value="">1</option>
  96.                                             <option value="">2</option>
  97.                                             <option value="">3</option>
  98.                                             <option value="">4</option>
  99.                                             <option value="">5</option>
  100.                                         </select>
  101.                                     </div>
  102.                                     <div class="form-group">
  103.                                         <select name="children" id="children" class="form-control">
  104.                                             <option value="">{{ 'Child'|trans }}</option>
  105.                                             <option value="">1</option>
  106.                                             <option value="">2</option>
  107.                                             <option value="">3</option>
  108.                                             <option value="">4</option>
  109.                                             <option value="">5</option>
  110.                                         </select>
  111.                                     </div>
  112.                                     <div class="form-group ">
  113.                                         <button type="submit"
  114.                                                 class="btn-ramada-2 hvr-sweep-to-right">{{ 'Book'|trans }}</button>
  115.                                     </div>
  116.                                 </form>
  117.                             </div>
  118.                         </div>
  119.                     </div>
  120.                 </div>
  121.             </div>
  122.         </div>
  123.     </section>
  124.     {#{% if other %}#}
  125.     <section>
  126.         <div class="container">
  127.             <div class="main-title">
  128.                 <h5> {{ 'Other Rooms'|trans }}</h5>
  129.             </div>
  130.             {% set totalServices = other|length %}
  131.             {% set currentRow = 0 %}
  132.             {% set serviceCount = 0 %}
  133.             {% for item in other %}
  134.                 {% if currentRow == 0 %}
  135.                     <div class="row mt-4">
  136.                 {% endif %}
  137.                 <div class="col-md-4">
  138.                     <a href="{{ path('rooms_view_page', {'slug':item.id}) }}">
  139.                         <div style="background-image: linear-gradient(rgba(0, 0, 0, 0.36),rgba(30, 30, 30, 0.47058823529411764)),url({{ item.ogImage }})"
  140.                              class="rooms-item">
  141.                             <p>{{ item.title }}
  142.                                 <br>
  143.                             </p>
  144.                         </div>
  145.                     </a>
  146.                 </div>
  147.                 {% set currentRow = currentRow + 1 %}
  148.                 {% set serviceCount = serviceCount + 1 %}
  149.                 {% if currentRow == 3 or serviceCount == totalServices %}
  150.                     {% set currentRow = 0 %}
  151.                     </div>
  152.                 {% endif %}
  153.             {% endfor %}
  154.         </div>
  155.     </section>
  156.     {#{% endif %}#}
  157. {% endblock %}
  158. {% block javascripts %}
  159.     {{ parent() }}
  160.     <script>
  161.         // booking
  162.         jQuery('#form').submit(function () {
  163.             var arrival = new Date(jQuery('#form-arrival').val());
  164.             var arrivalMonth = arrival.getMonth() + 1;
  165.             if (arrivalMonth < 10) {
  166.                 arrivalMonth = "0" + arrivalMonth;
  167.             }
  168.             var arrivalDate = arrival.getFullYear() + "-" + arrivalMonth + "-" + arrival.getDate();
  169.             // var adults = jQuery('#adults').val();
  170.             // var children = jQuery('#children').val();
  171.             var departure = new Date(jQuery('#form-departure').val());
  172.             var nights = (departure - arrival) / (1000 * 60 * 60 * 24);
  173.             jQuery('#nights').val(nights);
  174.             jQuery(this).attr("action", "/{{ app.request.locale }}/booking/?date=" + arrivalDate + "&nights=" + nights);
  175.         });
  176.         // $(window).ready(function () {
  177.         //     // The slider being synced must be initialized first
  178.         //     $('#carousel').flexslider({
  179.         //         animation: "slide",
  180.         //         controlNav: "thumbnails",
  181.         //         animationLoop: true,
  182.         //         itemWidth: 230,
  183.         //         itemMargin: 5,
  184.         //         asNavFor: '#slider'
  185.         //     });
  186.         //
  187.         //     $('#slider').flexslider({
  188.         //         animation: "slide",
  189.         //         controlNav: false,
  190.         //         animationLoop: true,
  191.         //         slideshow: false,
  192.         //         sync: "#carousel"
  193.         //     });
  194.         // });
  195.         $('.slider-for').slick({
  196.             slidesToShow: 1,
  197.             slidesToScroll: 1,
  198.             arrows: true,
  199.             fade: true,
  200.             asNavFor: '.slider-nav'
  201.         });
  202.         $('.slider-nav').slick({
  203.             slidesToShow: 10,
  204.             slidesToScroll: 1,
  205.             asNavFor: '.slider-for',
  206.             dots: false,
  207.             centerMode: false,
  208.             focusOnSelect: true,
  209.             responsive: [
  210.                 {
  211.                     breakpoint: 1200,
  212.                     settings: {
  213.                         slidesToShow: 4,
  214.                         slidesToScroll: 1
  215.                     }
  216.                 },
  217.                 {
  218.                     breakpoint: 991,
  219.                     settings: {
  220.                         slidesToShow: 4,
  221.                         slidesToScroll: 1
  222.                     }
  223.                 },
  224.                 {
  225.                     breakpoint: 578,
  226.                     settings: {
  227.                         slidesToShow: 2,
  228.                         slidesToScroll: 1
  229.                     }
  230.                 }
  231.                 ]
  232.         });
  233.         // $(document).ready(function () {
  234.         //     let height = window.innerHeight - 200;
  235.         //     let _class = document.querySelectorAll('.item-slick');
  236.         //     if (height <= 400) {
  237.         //         for (let i = 0; i <= _class.length - 1; i++) {
  238.         //             _class[i].style.height = 470 + 'px'
  239.         //         }
  240.         //
  241.         //     } else {
  242.         //         for (let i = 0; i <= _class.length - 1; i++) {
  243.         //             _class[i].style.height = height + 'px';
  244.         //         }
  245.         //     }
  246.         //
  247.         // })
  248.     </script>
  249. {% endblock %}