templates/layout.html.twig line 1

Open in your IDE?
  1. {% set this_path = app.request.get('_route')|default('home') %}
  2. {% set header_menu_items = [
  3.     {route: 'home', title: 'Home'},
  4.     {route: 'services', title: 'Services'},
  5.     {route: 'why', title: 'Why hire experts?'},
  6.     {route: 'about', title: 'About us'},
  7.     {route: 'news', title: 'In the news'},
  8.     {route: 'faq', title: 'FAQs'},
  9.     {route: 'ethics', title: 'Ethics'},
  10.     {route: 'contact', title: 'Contact'}
  11. ] %}
  12. {% set footer_menu_items = [
  13.     {route: 'services', title: 'Services'},
  14.     {route: 'why', title: 'Why hire experts?'},
  15.     {route: 'about', title: 'About us'},
  16.     {route: 'news', title: 'In the news'},
  17.     {route: 'faq', title: 'FAQs'},
  18.     {route: 'ethics', title: 'Ethics'},
  19.     {route: 'contact', title: 'Contact'}
  20. ] %}
  21. {% set languages = [
  22.     {name: 'English', code: 'en'},
  23.     {name: 'Español', code: 'es'},
  24.     {name: 'Italiano', code: 'it'},
  25.     {name: 'Русский', code: 'ru'}
  26. ] %}
  27. {% set social_items = [
  28.     {image: asset('images/facebook.svg'), alt: 'Facebook', link: 'http://www.facebook.com/pages/WikiExperts/126293534162358'},
  29.     {image: asset('images/twitter.svg'), alt: 'Twitter', link: 'https://twitter.com/wikiexperts'},
  30.     {image: asset('images/linkedin.svg'), alt: 'Likedin', link: 'http://www.linkedin.com/company/wikiexperts'}
  31. ] %}
  32. <!doctype html>
  33. <html lang="{{ app.request.locale }}">
  34. <head>
  35.     <meta charset="UTF-8">
  36.     <meta name="viewport"
  37.           content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  38.     <meta http-equiv="X-UA-Compatible" content="ie=edge">
  39.     <title>{% block title %}{{ title|default(false) ? title ~ ' - WikiExperts' : 'WikiExperts' }}{% endblock %}</title>
  40.     <meta name="description" content="{{ meta_description|default(metaInfo.meta.description) }}">
  41.     <meta property="og:description" content="{{ meta_description|default(metaInfo.meta.description) }}">
  42.     <meta name="twitter:description" content="{{ meta_description|default(metaInfo.meta.description) }}">
  43.     <meta name="title" content="{{ meta_title|default(metaInfo.meta.title) }}">
  44.     <meta property="og:title" content="{{ meta_title|default(metaInfo.meta.title) }}">
  45.     <meta name="twitter:title" content="{{ meta_title|default(metaInfo.meta.title) }}">
  46.     <meta property="og:image" content="{{ absolute_url(asset('img/wikiexperts.jpg')) }}">
  47.     <meta name="twitter:image" content="{{ absolute_url(asset('img/wikiexperts.jpg')) }}">
  48.     <meta name="keywords" content="{{ meta_keywords|default(metaInfo.meta.keywords) }}">
  49.     {% block stylesheets %}
  50.         {{ encore_entry_link_tags('index') }}
  51.     {% endblock %}
  52.     {% block javascripts %}
  53.     {% endblock %}
  54. </head>
  55. <body class="lang-{{ app.request.locale }}">
  56. {% block body %}
  57. {% block header %}
  58.     <header class="header-wrap">
  59.         <div class="header container">
  60.             <a href="{{ path('home') }}" class="header__logo">
  61.                 <img src="{{ asset('/images/logo.svg') }}" alt="WikiExperts logo">
  62.             </a>
  63.             <nav class="header__nav-menu">
  64.                 <ul class="header__menu-list">
  65.                     <li class="header__menu-item header__menu-item--lang">
  66.                         <button class="header__mobile-lang-toggle">{{ 'Language'|trans }} <span></span></button>
  67.                         <ul class="header__lang-mobile-list">
  68.                             {% for lang in languages %}
  69.                                 {% if lang.code == app.request.locale %}
  70.                                     <li class="header__lang-mobile-item">
  71.                                         <span>{{ lang.name }}</span>
  72.                                     </li>
  73.                                 {% endif %}
  74.                             {% endfor %}
  75.                             {% block mobile_lang %}
  76.                                 {% for lang in languages %}
  77.                                     {% if lang.code != app.request.locale %}
  78.                                         <li class="header__lang-mobile-item">
  79.                                             <a href="{{ path(this_path, {_locale: lang.code}) }}">{{ lang.name }}</a>
  80.                                         </li>
  81.                                     {% endif %}
  82.                                 {% endfor %}
  83.                             {% endblock %}
  84.                         </ul>
  85.                     </li>
  86.                     {% for item in header_menu_items %}
  87.                         <li class="header__menu-item">
  88.                             {% if item.route == app.request.get('_route')|default('') %}
  89.                                 <span>{{ item.title|trans }}</span>
  90.                             {% else %}
  91.                                 <a href="{{ path(item.route) }}">{{ item.title|trans }}</a>
  92.                             {% endif %}
  93.                         </li>
  94.                     {% endfor %}
  95.                 </ul>
  96.             </nav>
  97.             <div class="header__lang-menu">
  98.                 <button class="header__lang-toggle">
  99.                     {% for lang in languages %}
  100.                         {% if lang.code == app.request.locale %}
  101.                             <span class="header__lang-active">{{ lang.code }}</span>
  102.                         {% endif %}
  103.                     {% endfor %}
  104.                     <span class="header__lang-arrow"></span>
  105.                 </button>
  106.                 <ul class="header__lang-list">
  107.                     {% for lang in languages %}
  108.                         {% if lang.code == app.request.locale %}
  109.                             <li class="header__lang-item">
  110.                                 <span>{{ lang.name }}</span>
  111.                             </li>
  112.                         {% endif %}
  113.                     {% endfor %}
  114.                     {% block lang %}
  115.                         {% for lang in languages %}
  116.                             {% if lang.code != app.request.locale %}
  117.                                 <li class="header__lang-item">
  118.                                     <a href="{{ path(this_path, {_locale: lang.code}) }}">{{ lang.name }}</a>
  119.                                 </li>
  120.                             {% endif %}
  121.                         {% endfor %}
  122.                     {% endblock %}
  123.                 </ul>
  124.             </div>
  125.             <button class="header__mobile-toggle">
  126.                 <span></span>
  127.             </button>
  128.         </div>
  129.     </header>
  130. {% endblock %}
  131.     <main>
  132.         {% block content %}{% endblock %}
  133.     </main>
  134. {% block footer %}
  135.     <footer class="footer-wrap">
  136.         <div class="footer container">
  137.             <div class="footer__block-top">
  138.                 <a href="{{ path('home') }}" class="header__logo">
  139.                     <img src="{{ asset('/images/logo.svg') }}" alt="WikiExperts logo">
  140.                 </a>
  141.                 <nav class="footer__nav-menu">
  142.                     <ul class="footer__menu-list">
  143.                         {% for item in footer_menu_items %}
  144.                             <li class="footer__menu-item">
  145.                                 <a href="{{ path(item.route) }}">{{ item.title|trans }}</a>
  146.                             </li>
  147.                         {% endfor %}
  148.                     </ul>
  149.                 </nav>
  150.                 <ul class="footer__social-list">
  151.                     {% for item in social_items %}
  152.                         <li class="footer__social-item">
  153.                             <a href="{{ item.link }}" target="_blank">
  154.                                 <img src="{{ item.image }}" alt="{{ item.alt }}">
  155.                             </a>
  156.                         </li>
  157.                     {% endfor %}
  158.                 </ul>
  159.             </div>
  160.             <div class="footer__block-bottom">
  161.                 <p>
  162.                     Wikipedia is a registered trademark of Wikimedia Foundation which is not affiliated with
  163.                     WikiExperts.
  164.                 </p>
  165.                 <p>© 2011-{{ "now"|date('Y') }} WikiExperts, All rights reserved.</p>
  166.             </div>
  167.         </div>
  168.     </footer>
  169. {% endblock %}
  170. {% block after_footer %}
  171.     <div class="video-window">
  172.         <div class="video-window__close">
  173.             <button class="video-window__cross"></button>
  174.         </div>
  175.         <div class="video-window__window-wrap">
  176.             <div class="video-window__wrap">
  177.                 <iframe class="video-window__frame" src="https://www.youtube.com/embed/" allowfullscreen></iframe>
  178.             </div>
  179.         </div>
  180.     </div>
  181.     <div class="preloader">
  182.         <div class="preloader__wrapper">
  183.             <svg width="357" height="354" viewBox="0 0 357 354" fill="none" xmlns="http://www.w3.org/2000/svg">
  184.                 <path d="M200.316 332.103C200.316 343.996 190.467 353.649 178.302 353.649C166.137 353.649 156.288 343.996 156.288 332.103C156.288 326.097 157.917 314.132 161.518 303.677C163.318 298.449 165.604 293.624 168.407 290.112C171.209 286.601 174.494 284.443 178.302 284.443C182.11 284.443 185.395 286.601 188.197 290.112C191 293.624 193.285 298.449 195.086 303.677C198.687 314.132 200.316 326.097 200.316 332.103Z"
  185.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  186.                 <path d="M156.29 21.8968C156.29 10.0042 166.139 0.350639 178.304 0.350639C190.469 0.350639 200.317 10.0042 200.317 21.8968C200.317 27.9034 198.689 39.8676 195.088 50.3229C193.287 55.5506 191.002 60.3759 188.199 63.8878C185.396 67.3993 182.111 69.557 178.304 69.557C174.496 69.557 171.211 67.3993 168.408 63.8878C165.605 60.3759 163.32 55.5506 161.52 50.3229C157.919 39.8676 156.29 27.9034 156.29 21.8968Z"
  187.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  188.                 <path d="M189.882 258.808C189.882 265.739 184.36 271.347 177.56 271.347C170.76 271.347 165.237 265.739 165.237 258.808C165.237 255.287 166.158 248.259 168.194 242.118C169.212 239.047 170.501 236.224 172.075 234.175C173.65 232.125 175.472 230.897 177.56 230.897C179.648 230.897 181.469 232.125 183.044 234.175C184.619 236.224 185.908 239.047 186.926 242.118C188.962 248.259 189.882 255.287 189.882 258.808Z"
  189.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  190.                 <path d="M166.725 95.1919C166.725 88.2479 172.038 82.653 178.55 82.653C185.063 82.653 190.376 88.2479 190.376 95.1919C190.376 98.7144 189.491 105.744 187.535 111.886C186.556 114.957 185.318 117.781 183.805 119.831C182.29 121.882 180.544 123.103 178.55 123.103C176.557 123.103 174.81 121.882 173.296 119.831C171.783 117.781 170.545 114.957 169.566 111.886C167.61 105.744 166.725 98.7144 166.725 95.1919Z"
  191.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  192.                 <path d="M79.9164 299.423C71.2755 307.553 57.5173 307.02 49.1869 298.209C40.8565 289.399 41.1258 275.665 49.7667 267.535C54.131 263.428 63.9395 256.428 74.0023 251.887C79.0337 249.617 84.1047 247.974 88.5758 247.603C93.0464 247.232 96.8634 248.136 99.4706 250.894C102.078 253.651 102.76 257.505 102.128 261.936C101.495 266.367 99.5544 271.321 96.9891 276.199C91.8584 285.956 84.2807 295.316 79.9164 299.423Z"
  193.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  194.                 <path d="M276.084 54.5774C284.725 46.4465 298.483 46.98 306.813 55.7906C315.143 64.6013 314.874 78.3345 306.233 86.4654C301.869 90.5721 292.061 97.5723 281.998 102.112C276.966 104.382 271.895 106.026 267.424 106.397C262.954 106.768 259.137 105.864 256.529 103.106C253.922 100.349 253.24 96.4947 253.872 92.064C254.505 87.6329 256.446 82.6787 259.011 77.8004C264.142 68.0438 271.719 58.6841 276.084 54.5774Z"
  195.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  196.                 <path d="M126.279 241.666C121.228 246.419 113.379 246.278 108.746 241.378C104.113 236.478 104.431 228.653 109.481 223.9C112.047 221.487 117.794 217.333 123.656 214.591C126.587 213.22 129.523 212.214 132.088 211.945C134.656 211.675 136.791 212.148 138.212 213.651C139.634 215.155 139.982 217.308 139.562 219.85C139.143 222.389 137.965 225.254 136.422 228.093C133.336 233.771 128.844 239.253 126.279 241.666Z"
  197.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  198.                 <path d="M229.717 112.334C234.768 107.581 242.617 107.721 247.25 112.621C251.883 117.522 251.565 125.347 246.515 130.1C243.949 132.513 238.202 136.667 232.34 139.409C229.409 140.779 226.474 141.786 223.908 142.055C221.34 142.324 219.205 141.852 217.784 140.349C216.362 138.845 216.014 136.691 216.434 134.15C216.853 131.61 218.031 128.745 219.574 125.906C222.66 120.229 227.152 114.747 229.717 112.334Z"
  199.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  200.                 <path d="M55.2826 79.1514C47.1323 70.5312 47.667 56.8058 56.4988 48.4953C65.3307 40.1847 79.0967 40.4535 87.247 49.0737C91.3635 53.4276 98.3805 63.2126 102.931 73.2514C105.207 78.2707 106.855 83.3296 107.227 87.79C107.598 92.2499 106.692 96.0578 103.928 98.6588C101.164 101.26 97.3002 101.94 92.8589 101.31C88.4172 100.679 83.4511 98.7424 78.5612 96.1833C68.7812 91.0648 59.3991 83.5053 55.2826 79.1514Z"
  201.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  202.                 <path d="M300.713 274.849C308.864 283.469 308.329 297.194 299.497 305.505C290.665 313.815 276.899 313.546 268.749 304.926C264.633 300.572 257.616 290.787 253.065 280.749C250.789 275.729 249.141 270.67 248.77 266.21C248.398 261.75 249.304 257.942 252.068 255.341C254.832 252.74 258.696 252.06 263.137 252.69C267.579 253.321 272.545 255.257 277.435 257.817C287.215 262.935 296.597 270.495 300.713 274.849Z"
  203.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  204.                 <path d="M113.177 125.405C108.414 120.366 108.554 112.536 113.466 107.914C118.378 103.292 126.222 103.609 130.986 108.647C133.406 111.206 137.569 116.94 140.317 122.788C141.691 125.712 142.7 128.64 142.97 131.2C143.24 133.761 142.767 135.891 141.26 137.309C139.752 138.728 137.594 139.075 135.046 138.656C132.5 138.238 129.629 137.062 126.783 135.523C121.092 132.445 115.597 127.964 113.177 125.405Z"
  205.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  206.                 <path d="M242.819 228.595C247.582 233.634 247.442 241.464 242.53 246.086C237.618 250.708 229.774 250.391 225.01 245.353C222.591 242.794 218.427 237.06 215.679 231.212C214.305 228.288 213.296 225.36 213.026 222.8C212.756 220.238 213.229 218.109 214.737 216.69C216.244 215.272 218.403 214.925 220.95 215.344C223.496 215.762 226.367 216.937 229.213 218.477C234.904 221.555 240.399 226.036 242.819 228.595Z"
  207.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  208.                 <path d="M21.8708 194.376C9.99658 194.03 0.646774 183.947 1.00128 171.841C1.35578 159.735 11.2797 150.214 23.1539 150.56C29.1509 150.735 41.0484 152.704 51.382 156.592C56.5488 158.536 61.2998 160.951 64.7242 163.843C68.1484 166.734 70.2063 170.066 70.0954 173.855C69.9844 177.643 67.7351 180.85 64.1475 183.537C60.5597 186.224 55.6755 188.358 50.4038 189.998C39.8602 193.278 27.8678 194.55 21.8708 194.376Z"
  209.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  210.                 <path d="M334.129 159.623C346.003 159.969 355.353 170.052 354.999 182.158C354.644 194.263 344.72 203.785 332.846 203.439C326.849 203.264 314.952 201.295 304.618 197.407C299.451 195.462 294.7 193.048 291.276 190.156C287.852 187.264 285.794 183.933 285.905 180.144C286.016 176.356 288.265 173.149 291.852 170.462C295.44 167.775 300.325 165.641 305.596 164.001C316.14 160.721 328.132 159.448 334.129 159.623Z"
  211.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  212.                 <path d="M95.5916 186.241C88.6507 186.039 83.2006 180.402 83.3977 173.67C83.5949 166.938 89.3656 161.628 96.3065 161.83C99.8313 161.933 106.84 163.05 112.928 165.247C115.972 166.345 118.761 167.704 120.767 169.324C122.773 170.945 123.948 172.784 123.887 174.85C123.827 176.916 122.547 178.684 120.449 180.185C118.352 181.685 115.488 182.879 112.385 183.799C106.178 185.637 99.1164 186.344 95.5916 186.241Z"
  213.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  214.                 <path d="M260.408 167.758C267.349 167.96 272.799 173.597 272.602 180.329C272.405 187.061 266.634 192.371 259.694 192.169C256.169 192.066 249.16 190.949 243.072 188.752C240.028 187.654 237.239 186.294 235.233 184.675C233.227 183.054 232.052 181.215 232.113 179.149C232.173 177.083 233.453 175.315 235.551 173.814C237.648 172.314 240.512 171.119 243.615 170.2C249.822 168.362 256.884 167.655 260.408 167.758Z"
  215.                       fill="#00628D" stroke="#00628D" stroke-width="0.701241"/>
  216.             </svg>
  217.         </div>
  218.     </div>
  219. {% endblock %}
  220. {% block bottom_scripts %}
  221.     {{ encore_entry_script_tags('index') }}
  222.     <script>
  223.         const google_recaptcha_site_key = '{{ google_recaptcha_enabled == 'true' ? google_recaptcha_site_key : '' }}';
  224.         const google_recaptcha_enabled = {{ google_recaptcha_enabled == 'true' ? 'true' : 'false' }};
  225.     </script>
  226.     <script>
  227.         $.validator.messages.contact_name = '{{ 'The name must contain only letters and spaces.'|trans }}';
  228.         $.validator.messages.email = '{{ 'This value is not a valid email address.'|trans }}';
  229.         $.validator.messages.phone = '{{ 'The value is not valid phone number.'|trans }}';
  230.         $.validator.messages.required = '{{ 'This value should not be blank.'|trans }}';
  231.         $.validator.messages.maxlength = '{{ "This value is too long. It should have {{ limit }} characters or less."|trans|replace({'{{ limit }}': '{0}'}) }}';
  232.         $.validator.messages.url = '{{ 'This value is not a valid URL.'|trans }}';
  233.     </script>
  234. {% endblock %}
  235. {% endblock %}
  236. </body>
  237. </html>