CINXE.COM
Квартиры Санкт-Петербурга со сдачей в 2024 году от застройщика ЛСР
<!DOCTYPE html> <html lang="ru" translate="no" class=""> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, maximum-scale=1.0" /> <meta name="cmsmagazine" content="f2d72d3408f63252b7c735ac5b026ced"> <link type="text/plain" rel="author" href="/humans.txt"> <meta name="format-detection" content="telephone=no" /> <meta name="format-detection" content="address=no" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="robots" content="index, follow" /> <meta name="description" content="Продажа квартир в жилых комплексах Санкт-Петербурга со сдачей в 2024 году. Купить квартиру в новостройке от застройщика ООО ЛСР Недвижимость СЗ. Цены, условия покупки, планировки, ход строительства." /> <link href="/bitrix/cache/css/s1/lsr/template_d745c899a8023b02e5cac6c4699f4977/template_d745c899a8023b02e5cac6c4699f4977_v1.css?1733014845990547" type="text/css" data-template-style="true" rel="stylesheet" /> <script src="/bitrix/js/main/jquery/jquery-1.12.4.min.js?169714595497163"></script> <title>Квартиры Санкт-Петербурга со сдачей в 2024 году от застройщика ЛСР</title> <link type="image/ico" rel="shortcut icon" href="/favicons/favicon.ico" /> <link rel="manifest" href="/frontend/build/assets/json/manifest.json" /> <link rel="preconnect" href="https://fonts.gstatic.com" /> <link as="script" rel="preload" href="/frontend/build/js/bundle.js?version=4.4.13" /> <link href="/frontend/build/js/bundle.js?version=4.4.13" rel="preload" as="script"> <link rel="canonical" href="https://www.lsr.ru/spb/kvartiry-v-novostroikah/2024/" /> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-NM5GJ96M');</script> <!-- End Google Tag Manager --> <script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Главная","item":"https://www.lsr.ru/spb/"},{"@type":"ListItem","position":2,"name":"Квартиры","item":"https://www.lsr.ru/spb/kvartiry-v-novostroikah/"},{"@type":"ListItem","position":3,"name":"Сдача в 2024","item":"https://www.lsr.ru/spb/kvartiry-v-novostroikah/2024/"}]}</script></head> <body data-js-App='{"lang":"ru","isAuth":false,"tplPath":"\/local\/templates\/lsr","googleCaptchaKey":null,"yandexMapsKey":"de3743b5-31ca-4bca-9ae4-2aa3e5358eb1","svgSpriteRevision":null,"routerUrls":{"parkingCard":"ajax\/selector_parking.php","qualityModal":"ajax\/quality_modal.php"}}' > <div id="panel" style="position:absolute;width:100%"></div> <div class="pageLayout "> <div class="pageLayout__header"> <header class="header" data-js-Header=""> <div class="header__container container"> <div class="header__logoWrapper"> <a class="logo logo--isPrimary" rel="home" href="/spb/"> <img class="logo__img" src="/frontend/build/assets/images/logos/lsr.svg" alt="Логотип" width="87" height="28" loading="lazy" decoding="async" /> </a> <div id="headerCityLinkWrapper" class="header__cityLinkWrapper"> <div class="popover popover--isMinWidth200" data-js-Popover='{"placement":"bottom-start","events":["click"],"offset":{"mainAxis":16,"crossAxis":0,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":false}'> <button draggable="false" type="button" class="btn btn--isLink btn--isSizeAuto" data-js-PopoverToggleBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-navigation"></use> </svg> </span> </span> <span class="btn__label">Санкт-Петербург</span> </button> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <div class="cityList"> <ul class="cityList__list"> <li class="cityList__item"> <a href="/spb/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium isDisabled" data-js-PopoverCloseEl="true"> <span class="btn__label">Санкт-Петербург</span> </a> </li> <li class="cityList__item"> <a href="/msk/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium " data-js-PopoverCloseEl="true"> <span class="btn__label">Москва</span> </a> </li> <li class="cityList__item"> <a href="/ekb/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium " data-js-PopoverCloseEl="true"> <span class="btn__label">Екатеринбург</span> </a> </li> </ul> </div> </div> </div> </div> </div> <div class="header__menuBtnWrapper"> <div class="menuBtn"> <button draggable="false" type="button" class="btn btn--isDark btn--isWithIcon btn--isSizeMedium" title="Показать" data-js-HeaderToggleBtn="true"> <div class="menuBtn__iconContainer"> <span class="icon icon--isSize14 icon--isOpen icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-building"></use> </svg> </span> <span class="icon icon--isSize14 icon--isClose icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-close"></use> </svg> </span> </div> <div class="menuBtn__labelContainer"> <span class="menuBtn__label menuBtn__label--isOpen">Объекты</span> <span class="menuBtn__label menuBtn__label--isClose">Закрыть</span> </div> </button> </div> </div> <div class="header__menuWrapper " data-js-HeaderMenu=""> <div class="header__mobilePopoverWrapper"> <div class="popover popover--isFullWidth" data-js-Popover='{"placement":"bottom","events":["click"],"offset":{"mainAxis":16,"crossAxis":0,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px"}'> <button draggable="false" type="button" class="btn btn--isFullWidth btn--isOutline btn--isSizeLarge" data-js-PopoverToggleBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-user"></use> </svg> </span> </span> <span class="btn__label">Войти</span> </button> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <div class="accountList"> <p class="accountList__heading">Вход в личный кабинет</p> <ol class="accountList__list"> <li class="accountList__item"> <a href="#agentEntry" class="btn btn--isSecondaryLink btn--isAccount btn--isSizeMedium " data-js-PopoverCloseEl="true" data-js-modal-open=""> <span class="btn__label">Я агент</span> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-briefcase"></use> </svg> </span> </span> </a> </li> <li class="accountList__item"> <a href="#userEntryForm" class="btn btn--isSecondaryLink btn--isAccount btn--isSizeMedium" data-js-PopoverCloseEl="true" data-js-modal-open=""> <span class="btn__label">Я пользователь</span> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-emotion-happy"></use> </svg> </span> </span> </a> </li> </ol> </div> </div> </div> <div id="mobileHeaderCityLinkWrapper" class="header__mobileHeaderCityLinkWrapper"> <div class="popover popover--isFullWidth popover--isActiveRotateIcon popover--isTertiary" data-js-Popover="{"placement":"bottom-start","events":["click"],"offset":{"mainAxis":8,"crossAxis":0,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":true}"> <button draggable="false" type="button" class="btn btn--isFullWidth btn--isOpenBtn btn--isOutline btn--isOnlyIcon btn--isSizeLarge" data-js-PopoverToggleBtn="true"> <span> <span class="isColorSilverChalice">Регион: </span> <span class="btn__label">Санкт-Петербург</span> </span> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <div class="cityList cityList--isPrimary"> <ul class="cityList__list"> <li class="cityList__item"> <a href="/spb/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium isDisabled" data-js-PopoverCloseEl="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-checkmark"></use> </svg> </span> </span> <span class="btn__label">Санкт-Петербург</span> </a> </li> <li class="cityList__item"> <a href="/msk/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium " data-js-PopoverCloseEl="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-checkmark"></use> </svg> </span> </span> <span class="btn__label">Москва</span> </a> </li> <li class="cityList__item"> <a href="/ekb/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium " data-js-PopoverCloseEl="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-checkmark"></use> </svg> </span> </span> <span class="btn__label">Екатеринбург</span> </a> </li> </ul> </div> </div> </div> </div> </div> <div class="header__navWrapper"> <nav class="nav"> <ul class="nav__list"> <li class="nav__item"> <a href="/spb/o_kompanii/" class="btn btn--isLink btn--isSizeMedium " title="О нас"> <span class="btn__label">О нас</span> </a> </li> <li class="nav__item"> <a href="/spb/novosti/" class="btn btn--isLink btn--isSizeMedium " title="Новости"> <span class="btn__label">Новости</span> </a> </li> <li class="nav__item"> <a href="/spb/usloviya-pokupki/" class="btn btn--isLink btn--isSizeMedium " title="Как купить"> <span class="btn__label">Как купить</span> </a> </li> <li class="nav__item"> <a href="/spb/kachestvo/" class="btn btn--isLink btn--isSizeMedium " title="Квартирономика"> <span class="btn__label">Квартирономика</span> </a> </li> <li class="nav__item"> <a href="/spb/offers/" class="btn btn--isLink btn--isSizeMedium btn--isCustomPrimaryLink" title="Акции"> <span class="btn__label">Акции</span> </a> </li> <li class="nav__item"> <a href="/spb/kontakty/" class="btn btn--isLink btn--isSizeMedium " title="Контакты"> <span class="btn__label">Контакты</span> </a> </li> <li class="nav__item"> <a href="/spb/online/" class="btn btn--isLink btn--isSizeMedium btn--isOnline " title="Онлайн"> <span class="btn__label">Онлайн</span> </a> </li> <li class="nav__item"> <a href="/spb/dolshchikam/" class="btn btn--isLink btn--isSizeMedium " title="Дольщикам"> <span class="btn__label">Дольщикам</span> </a> </li> </ul> </nav> </div> <div class="header__sectionWrapper" data-js-HeaderSectionWrapper=""> <div class="header__sectionInnerWrapper container"> <div class="menu" data-js-Tabs='{"activeTabName":"tab-1","onPointerOverEvent":true}'> <div id="accordionGroup1" class="menu__contentWrapper " data-js-TabsContentList=""> <div class="menu__contentSection menu__contentSection--isFirst" data-js-TabsContent="tab-1"> <div class="accordion accordion--isPrimary" data-js-Accordion='{"accordionGroupSelector":"#accordionGroup1","isWholeSummaryClickable":true,"transitionDuration":500,"mq":"tablet","isOpen":false}'> <div class="accordion__summary" data-js-AccordionSummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Жилые комплексы</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-AccordionBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-AccordionContent=""> <div class="accordion__contentInner"> <div class="menu__sectionLinkWrapper "> <span class="menu__sectionLinkHeading">Комфорт</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/tsvetnoy-gorod-pejzazhnyj-kvartal/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Пейзажный квартал"> <span class="btn__label">Пейзажный квартал</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/pulkovo-lake/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Пулково Lake"> <span class="btn__label">Пулково Lake</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/lsr-rzhevskij-park/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="ЛСР. Ржевский парк"> <span class="btn__label">ЛСР. Ржевский парк</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/morskaya-milya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Морская миля"> <span class="btn__label">Морская миля</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/tsvetnoy-gorod/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Цветной город"> <span class="btn__label">Цветной город</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/ruchi/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Ручьи"> <span class="btn__label">Ручьи</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/oktyabrskaya-naberezhnaya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Октябрьская набережная"> <span class="btn__label">Октябрьская набережная</span> </a> </li> </ol> </div> <div class="menu__sectionLinkWrapper "> <span class="menu__sectionLinkHeading">Бизнес-класс</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/tsivilizatsiya-na-neve/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Цивилизация на Неве"> <span class="btn__label">Цивилизация на Неве</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/izmajlovskij/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Измайловский"> <span class="btn__label">Измайловский</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/lsr-bolshaya-ohta/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="ЛСР. Большая Охта"> <span class="btn__label">ЛСР. Большая Охта</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/morskaya-naberezhnaya-main/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Морская набережная"> <span class="btn__label">Морская набережная</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/neopark/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="NEOPARK"> <span class="btn__label">NEOPARK</span> </a> </li> </ol> </div> <div class="menu__sectionLinkWrapper "> <span class="menu__sectionLinkHeading">Элитные</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/neva-residence/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="NEVA RESIDENCE"> <span class="btn__label">NEVA RESIDENCE</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/zhilye-kompleksy/neva-haus/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="NEVA HAUS"> <span class="btn__label">NEVA HAUS</span> </a> </li> </ol> </div> <div class="menu__contentSectionLinkWrapper"> <a href="/spb/zhilye-kompleksy/" class="btn btn--isProjectFilter btn--isOutline btn--isSizeLarge " title="Фильтр проектов"> <span class="btn__label">Фильтр проектов</span> </a> <a class="mapLink" href="/spb/map/"> <span class="mapLink__label">Искать на карте</span> </a> </div> </div> </div> </div> </div> <div class="menu__contentSection menu__contentSection--isSecond" data-js-TabsContent="tab-2"> <div class="accordion accordion--isPrimary" data-js-Accordion='{"accordionGroupSelector":"#accordionGroup1","isWholeSummaryClickable":true,"transitionDuration":500,"mq":"tablet","isOpen":false}'> <div class="accordion__summary" data-js-AccordionSummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Квартиры и апартаменты</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-AccordionBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-AccordionContent=""> <div class="accordion__contentInner"> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Квартиры</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/studii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Студии"> <span class="btn__label">Студии</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/evroplanirovki/1-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="1-комнатные евро"> <span class="btn__label">1-комнатные евро</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/1-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="1-комнатные"> <span class="btn__label">1-комнатные</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/evroplanirovki/2-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="2-комнатные евро"> <span class="btn__label">2-комнатные евро</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/2-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="2-комнатные"> <span class="btn__label">2-комнатные</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/evroplanirovki/3-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="3-комнатные евро"> <span class="btn__label">3-комнатные евро</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/3-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="3-комнатные"> <span class="btn__label">3-комнатные</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/evroplanirovki/4-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="4-комнатные евро"> <span class="btn__label">4-комнатные евро</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/4-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="4-комнатные"> <span class="btn__label">4-комнатные</span> </a> </li> </ol> </div> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Апартаменты</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/apartamenty/evroplanirovki/2-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="2-комнатные евро"> <span class="btn__label">2-комнатные евро</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/apartamenty/2-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="2-комнатные"> <span class="btn__label">2-комнатные</span> </a> </li> </ol> </div> <div class="menu__contentSectionLinkWrapper"> <a href="/spb/kvartiry-v-novostroikah/" class="btn btn--isProjectFilter btn--isOutline btn--isSizeLarge " title="Фильтр квартир"> <span class="btn__label">Фильтр квартир</span> </a> </div> </div> </div> </div> </div> <div class="menu__contentSection menu__contentSection--isThird" data-js-TabsContent="tab-3"> <div class="accordion accordion--isPrimary" data-js-Accordion='{"accordionGroupSelector":"#accordionGroup1","isWholeSummaryClickable":true,"transitionDuration":500,"mq":"tablet","isOpen":false}'> <div class="accordion__summary" data-js-AccordionSummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Коммерция</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-AccordionBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-AccordionContent=""> <div class="accordion__contentInner"> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Комфорт</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/tsivilizatsiya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Цивилизация"> <span class="btn__label">Цивилизация</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/novaya-okhta/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Новая Охта"> <span class="btn__label">Новая Охта</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/tsvetnoy-gorod-kvartal-26/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Цветной город, квартал 26"> <span class="btn__label">Цветной город, квартал 26</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/tsvetnoy-gorod-pejzazhnyj-kvartal/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Пейзажный квартал"> <span class="btn__label">Пейзажный квартал</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/tsvetnoy-gorod-kvartal-29/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Цветной город, квартал 29"> <span class="btn__label">Цветной город, квартал 29</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/tsvetnoy-gorod-duopark/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Цветной город, DUOPARK"> <span class="btn__label">Цветной город, DUOPARK</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/ruchi-ochered-1/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Ручьи, очередь 1"> <span class="btn__label">Ручьи, очередь 1</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/zapovednyj-park/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Заповедный парк"> <span class="btn__label">Заповедный парк</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/morskaya-milya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Морская миля"> <span class="btn__label">Морская миля</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/lsr-rzhevskij-park/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="ЛСР. Ржевский парк"> <span class="btn__label">ЛСР. Ржевский парк</span> </a> </li> </ol> </div> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Бизнес-класс</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/riviere-noire/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="RIVIERE NOIRE"> <span class="btn__label">RIVIERE NOIRE</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/morskaya-naberezhnaya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Морская набережная. Бульвар, очередь 1"> <span class="btn__label">Морская набережная. Бульвар, очередь 1</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/kommercheskaya-nedvizhimost/morskaya-naberezhnaya-seaview-ochered-2/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Морская набережная. SeaView, очередь 2"> <span class="btn__label">Морская набережная. SeaView, очередь 2</span> </a> </li> </ol> </div> <div class="menu__contentSectionLinkWrapper"> <a href="/spb/kommercheskaya-nedvizhimost/" class="btn btn--isProjectFilter btn--isOutline btn--isSizeLarge " title="Фильтр помещений"> <span class="btn__label">Фильтр помещений</span> </a> </div> </div> </div> </div> </div> <div class="menu__contentSection menu__contentSection--isFourth" data-js-TabsContent="tab-4"> <div class="accordion accordion--isPrimary" data-js-Accordion='{"accordionGroupSelector":"#accordionGroup1","isWholeSummaryClickable":true,"transitionDuration":500,"mq":"tablet","isOpen":false}'> <div class="accordion__summary" data-js-AccordionSummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Машино-место</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-AccordionBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-AccordionContent=""> <div class="accordion__contentInner"> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Комфорт</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/parking/shuvalovskiy/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Шуваловский"> <span class="btn__label">Шуваловский</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/parking/kalina-park-2/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Калина-парк 2"> <span class="btn__label">Калина-парк 2</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/parking/yuzhnaya-akvatoriya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Южная акватория"> <span class="btn__label">Южная акватория</span> </a> </li> </ol> </div> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Бизнес-класс</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/parking/tri-vetra/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Три ветра"> <span class="btn__label">Три ветра</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/parking/tsivilizatsiya-na-neve/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Цивилизация на Неве"> <span class="btn__label">Цивилизация на Неве</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/parking/morskaya-naberezhnaya-seaview-ochered-2/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Морская набережная. SeaView, очередь 2"> <span class="btn__label">Морская набережная. SeaView, очередь 2</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/parking/lsr-bolshaya-ohta/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="ЛСР. Большая Охта"> <span class="btn__label">ЛСР. Большая Охта</span> </a> </li> </ol> </div> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Элитные</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/parking/smolnyy-park-2-ochered/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Смольный парк II очередь"> <span class="btn__label">Смольный парк II очередь</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/parking/neva-haus/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="NEVA HAUS"> <span class="btn__label">NEVA HAUS</span> </a> </li> <li class="menu__sectionItem"> <a href="/spb/parking/zoologicheskii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Зоологический, 2-4"> <span class="btn__label">Зоологический, 2-4</span> </a> </li> </ol> </div> </div> </div> </div> </div> <div class="menu__contentSection menu__contentSection--isFifth" data-js-TabsContent="tab-5"> <div class="accordion accordion--isPrimary" data-js-Accordion='{"accordionGroupSelector":"#accordionGroup1","isWholeSummaryClickable":true,"transitionDuration":500,"mq":"tablet","isOpen":false}'> <div class="accordion__summary" data-js-AccordionSummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Кладовые</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-AccordionBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-AccordionContent=""> <div class="accordion__contentInner"> <div class="menu__sectionLinkWrapper menu__sectionLinkWrapper--isRowSpan2"> <span class="menu__sectionLinkHeading">Комфорт</span> <ol class="menu__sectionLinkList"> <li class="menu__sectionItem"> <a href="/spb/kladovki/morskaya-milya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Морская миля"> <span class="btn__label">Морская миля</span> </a> </li> </ol> </div> </div> </div> </div> </div> </div> <div class="menu__sectionWrapper" data-js-TabsList=""> <span class="menu__sectionWrapperHeading">Ключевые разделы</span> <ol class="menu__sectionWrapperList"> <li class="menu__sectionWrapperItem"> <a href="/spb/zhilye-kompleksy/" class="btn btn--isTertiaryLink btn--isSectionWrapperLink btn--isSizeMedium btn--isRedHover" data-js-TabsItem="tab-1"> <span class="btn__label">Жилые комплексы</span> </a> </li> <li class="menu__sectionWrapperItem"> <a href="/spb/kvartiry-v-novostroikah/" class="btn btn--isTertiaryLink btn--isSectionWrapperLink btn--isSizeMedium btn--isRedHover" data-js-TabsItem="tab-2"> <span class="btn__label">Квартиры и апартаменты</span> </a> </li> <li class="menu__sectionWrapperItem"> <a href="/spb/kommercheskaya-nedvizhimost/" class="btn btn--isTertiaryLink btn--isSectionWrapperLink btn--isSizeMedium btn--isRedHover" data-js-TabsItem="tab-3"> <span class="btn__label">Коммерция</span> </a> </li> <li class="menu__sectionWrapperItem"> <a href="/spb/parking/" class="btn btn--isTertiaryLink btn--isSectionWrapperLink btn--isSizeMedium btn--isRedHover" data-js-TabsItem="tab-4"> <span class="btn__label">Машино-места</span> </a> </li> <li class="menu__sectionWrapperItem"> <a href="/spb/kladovki/" class="btn btn--isTertiaryLink btn--isSectionWrapperLink btn--isSizeMedium btn--isRedHover" data-js-TabsItem="tab-5"> <span class="btn__label">Кладовые</span> </a> </li> </ol> </div> <div class="menu__feedbackBtnWrapper" data-js-HeaderElToHide=""> <a href="#message" class="btn btn--isOutline btn--isSizeLarge" data-js-modal-open=""> <span class="btn__label">Связаться с нами</span> </a> </div> <div class="menu__informationWrapper" data-js-HeaderElToHide=""> <p class="menu__information"> <span class="menu__informationText">Проектные декларации и подлежащая раскрытию информация о застройщике и проектах строительства размещены на сайте ЕИСЖС</span> <a href="https://xn--80az8a.xn--d1aqf.xn--p1ai/" class="btn btn--isSecondaryLink btn--isInformationLink btn--isSizeMedium "> <span class="btn__label"> наш.дом.рф.</span> </a> </p> </div> <div class="menu__socialLinkListWrapper" data-js-HeaderElToHide=""> <ul class="socialLinkList"> <li class="socialLinkList__item" title="Вк Сбп"> <a href="https://vk.com/lsr.petersburg" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/a06/u8is0wr36j9gz6nc2kw9cycuvwi2mfd4/VK.com-logo 1.svg" alt="Вк Сбп" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Youtube Спб"> <a href="https://www.youtube.com/user/lsrestate" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/770/z894l2pru375x5dvuj4tkw4a24h5o8z9/YouTube_Logo_2017 1.svg" alt="Youtube Спб" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Телеграм Спб"> <a href="https://t.me/lsr_spb" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/9e1/z0br8clx9maqhqdhy8lbh9m156t9hu0v/telega-round.svg" alt="Телеграм Спб" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Дзен СПБ"> <a href="https://dzen.ru/lsrspb " target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/2c7/46gogd8r1dd81hu6x44oe5hy9bjzihuv/Yandex_Zen_logo_icon_Good.svg" alt="Дзен СПБ" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Одноклассники СПб"> <a href="https://ok.ru/lsr.petersburg" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/853/jcbfdllxa8l3l2m9vbbk33qjg8ffxzg9/Odnoklassniki.svg" alt="Одноклассники СПб" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> </ul> </div> <div class="menu__primaryCardLinkSliderWrapper" data-js-HeaderElToHide=""> <div class="primaryCardLinkSlider"> <div class="slider"> <div class="slider__container swiper primaryCardLinkSliderContainer" data-js-slider=""> <div class="slider__wrapper swiper-wrapper"> <!-- --> </div> </div> </div> </div> </div> </div> </div> </div> <div class="header__menuWrapperBar"></div> </div> <div class="header__telWrapper"> <a href="tel:88003250101" class="btn btn--isPrimaryLink btn--isSizeMedium"> <span class="btn__label">8 (800) 325-01-01</span> </a> </div> <ol class="header__userList"> <li class="header__userItem header__userItem--isWithTip"> <a class="faveLink " data-js-FavouriteFaveLink="" href="/spb/favorites/" title="Избранное" aria-label="Избранное"> <div class="faveLink__iconContainer"> <span class="icon icon--isActive icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-heart-fill"></use> </svg> </span> <span class="icon icon--isInactive icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-heart-stroke"></use> </svg> </span> </div> <span class="faveLink__counter" data-js-FavouriteFaveLinkCounter=""></span> </a> <div class="tip tip--isArrowTop"> <span class="label l3">Избранное</span> </div> </li> <li class="header__userItem header__userItem--isAccountBtn header__userItem--isWithTip"> <div class="popover" data-js-Popover="{"placement":"bottom-end","events":["click"],"offset":{"mainAxis":16,"crossAxis":0,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px"}"> <button draggable="false" type="button" class="btn btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-PopoverToggleBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-user"></use> </svg> </span> </span> </button> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <div class="accountList"> <p class="accountList__heading">Вход в личный кабинет</p> <ol class="accountList__list"> <li class="accountList__item"> <a href="#agentEntry" class="btn btn--isSecondaryLink btn--isAccount btn--isSizeMedium " data-js-PopoverCloseEl="true" data-js-modal-open=""> <span class="btn__label">Я агент</span> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-briefcase"></use> </svg> </span> </span> </a> </li> <li class="accountList__item"> <a href="#userEntryForm" class="btn btn--isSecondaryLink btn--isAccount btn--isSizeMedium" data-js-PopoverCloseEl="true" data-js-modal-open=""> <span class="btn__label">Я пользователь</span> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-emotion-happy"></use> </svg> </span> </span> </a> </li> </ol> </div> </div> </div> <div class="tip tip--isArrowTop"> <span class="label l3">Личный кабинет</span> </div> </li> <li class="header__userItem header__userItem--isBurgerBtn"> <button class="burgerBtn" data-js-HeaderToggleBtn="true" title="Показать"> <div class="burgerBtn__lines"> <span class="burgerBtn__line"></span> <span class="burgerBtn__line"></span> <span class="burgerBtn__line"></span> </div> </button> </li> </ol> </div> </header> </div> <main class="pageLayout__main"> <div class="pageLayout__sections"> <div class="customContainer customContainer--isColorWildSand" data-js-sticky> <section class="section" data-js-viewtoggle=""> <div class="section__wrap container"> <div class="section__content" data-js-groupselect> <div class="breadcrumbs isHiddenTablet"> <ul class="breadcrumbs__list"> <li class="breadcrumbs__list-item"> <a href="/spb/" class="btn btn--isSizeMedium "> <span class="btn__label">Главная</span> </a> </li> <li class="breadcrumbs__list-item"> <a href="/spb/kvartiry-v-novostroikah/" class="btn btn--isSizeMedium "> <span class="btn__label">Квартиры</span> </a> </li> <li class="breadcrumbs__list-item"> <a href="/spb/kvartiry-v-novostroikah/2024/" class="btn btn--isSizeMedium "> <span class="btn__label">Сдача в 2024</span> </a> </li> </ul> </div> <h1 class="isHiddenTablet">Квартиры со сдачей в 2024 году в Санкт-Петербурге</h1> <div data-js-ParamSearch=""><form data-js-ParamSearch class="paramSearch paramSearch--isShort" data-action="/ajax/search/spb/"> <div class="breadcrumbs "> <ul class="breadcrumbs__list"> <li class="breadcrumbs__list-item"> <a href="/spb/" class="btn btn--isSizeMedium "> <span class="btn__label">Главная</span> </a> </li> <li class="breadcrumbs__list-item"> <a href="/spb/kvartiry-v-novostroikah/" class="btn btn--isSizeMedium "> <span class="btn__label">Квартиры</span> </a> </li> <li class="breadcrumbs__list-item"> <a href="/spb/kvartiry-v-novostroikah/2024/" class="btn btn--isSizeMedium "> <span class="btn__label">Сдача в 2024</span> </a> </li> </ul> </div><div class="paramSearch__title h1 isMb0 isVisibleTablet">Квартиры со сдачей в 2024 году в Санкт-Петербурге</div><div class="paramSearch__selector paramSearch__selector--isExtended isMb0">Выберите <div data-js-ParamSearch-trigger="" id="paramSearch-selector" data-js-select='{ "id":"paramSearch-selector", "extraClasses":{"isBigFirstType":true}, "name":"paramSearch-selector", "options":[ {"label":"квартиру","value":"living"},{"label":"помещение","value":"commerce"},{"label":"паркинг","value":"parking"},{"label":"кладовую","value":"pantry"} ], "value":"living", "placeholder":"жилую недвижимость"}'> </div> </div> <div class="paramSearch__selector paramSearch__selector--isShort isMb0">Выберите <div data-js-ParamSearch-trigger="" id="paramSearch-selector" data-js-select='{ "id":"paramSearch-selector", "extraClasses":{"isBigFirstType":true}, "name":"paramSearch-selector", "options":[ {"label":"квартиру","value":"living"},{"label":"помещение","value":"commerce"},{"label":"паркинг","value":"parking"},{"label":"кладовую","value":"pantry"} ], "value":"living", "placeholder":"жилую недвижимость"}'> </div> </div> <div id="living" data-count="701 квартиру" data-js-paramsearch-block class="paramSearch__params isActive" data-action="/ajax/search/spb/" data-url="/spb/kvartiry-v-novostroikah/" > <div> <p class="label l3">Комнатность</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type6" name="type[6]" value="6" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">С</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type7" name="type[7]" value="7" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">1</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type8" name="type[8]" value="8" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type9" name="type[9]" value="9" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">3</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type10" name="type[10]" value="10" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">4+</span> </label> </li> </ul> </fieldset> </div> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[3.8,11.5], "range":{"min":3.1,"max":100.2}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-living-price" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="3.1" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="100.2" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery13" name="delivery[13]" value="13" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Сдан</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery28" name="delivery[28]" value="28" checked /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2024</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery30" name="delivery[30]" value="30" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2026+</span> </label> </li> </ul> </fieldset> </div> <div class="paramSearch__group paramSearch__group--isCancelAutoHide"> <div class="paramSearch__selectWrapper" id="select-opt"> <p class="label l3">Отделка</p> <div data-js-select='{"id":"opt","name":"opt","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":false,"options":[{"label":"White box","value":"13"},{"label":"\u0411\u0435\u0437 \u043e\u0442\u0434\u0435\u043b\u043a\u0438","value":"3"},{"label":"\u0421 \u043e\u0442\u0434\u0435\u043b\u043a\u043e\u0439","value":4}]}' id="fs-living-opt" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Меблировка</p> <div data-js-select='{"id":"furniture","name":"furniture","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":false,"options":[{"label":"\u0421 \u043a\u0443\u0445\u043d\u0435\u0439","value":"kitchen"}]}' id="fs-living-furniture"> </div> </div> </div> </div> <div id="commerce" data-count="92 помещения" data-js-ParamSearch-block="" class="paramSearch__params " data-action="/ajax/search/spb/" data-url="/spb/kommercheskaya-nedvizhimost/" > <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[12.2,42.3], "range":{"min":12.2,"max":42.3}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-commerce-price" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="12.2" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="42.3" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery13" name="delivery[13]" value="13" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Сдан</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery28" name="delivery[28]" value="28" checked /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2024</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery30" name="delivery[30]" value="30" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2026+</span> </label> </li> </ul> </fieldset> </div> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{"step":0.1,"margin":1,"connect":true,"valueType":"oneDecimal","isPercent":false,"range":{"min":48,"max":183},"start":[48,184]}' id="rs-commerce-area" > <p class="label l3">Площадь, м<sup>2</sup></p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="area_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="48" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="area_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="183" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div class="paramSearch__group paramSearch__group--isContentsOnTablet"> <div class="paramSearch__selectWrapper"> <p class="label l3">Жилые комплексы</p> <div data-js-select='{"id":"obj[]","name":"obj[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041f\u0435\u0439\u0437\u0430\u0436\u043d\u044b\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","value":"118"},{"label":"\u041b\u0421\u0420. \u0420\u0436\u0435\u0432\u0441\u043a\u0438\u0439 \u043f\u0430\u0440\u043a","value":"210"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, \u043a\u0432\u0430\u0440\u0442\u0430\u043b 29","value":"119"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, \u043a\u0432\u0430\u0440\u0442\u0430\u043b 26","value":"116"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, DUOPARK","value":"120"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043c\u0438\u043b\u044f","value":"198"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. SeaView, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 2","value":"195"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. \u0411\u0443\u043b\u044c\u0432\u0430\u0440, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 1","value":"140"},{"label":"\u0420\u0443\u0447\u044c\u0438, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 1","value":"121"},{"label":"\u0426\u0438\u0432\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f","value":"36"},{"label":"RIVIERE NOIRE","value":"98"},{"label":"\u0417\u0430\u043f\u043e\u0432\u0435\u0434\u043d\u044b\u0439 \u043f\u0430\u0440\u043a","value":"142"},{"label":"\u041d\u043e\u0432\u0430\u044f \u041e\u0445\u0442\u0430","value":"60"}]}' id="fs-commerce-obj" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Метро</p> <div data-js-select='{"id":"subway[]","name":"subway[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0410\u0432\u0442\u043e\u0432\u043e","value":"1"},{"label":"\u0410\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f","value":"3"},{"label":"\u0413\u0440\u0430\u0436\u0434\u0430\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"12"},{"label":"\u041a\u0438\u0440\u043e\u0432\u0441\u043a\u0438\u0439 \u0417\u0430\u0432\u043e\u0434","value":"18"},{"label":"\u041b\u0430\u0434\u043e\u0436\u0441\u043a\u0430\u044f","value":"22"},{"label":"\u041b\u0435\u043d\u0438\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"23"},{"label":"\u041b\u043e\u043c\u043e\u043d\u043e\u0441\u043e\u0432\u0441\u043a\u0430\u044f","value":"26"},{"label":"\u041d\u043e\u0432\u043e\u0447\u0435\u0440\u043a\u0430\u0441\u0441\u043a\u0430\u044f","value":"33"},{"label":"\u041e\u0437\u0435\u0440\u043a\u0438","value":"36"},{"label":"\u041f\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0430\u044f","value":"39"},{"label":"\u041f\u043b\u043e\u0449\u0430\u0434\u044c \u041b\u0435\u043d\u0438\u043d\u0430","value":"43"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0430\u044f","value":"46"},{"label":"\u041f\u0440\u043e\u0441\u043f\u0435\u043a\u0442 \u0411\u043e\u043b\u044c\u0448\u0435\u0432\u0438\u043a\u043e\u0432","value":"48"},{"label":"\u041f\u0440\u043e\u0441\u043f\u0435\u043a\u0442 \u041f\u0440\u043e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u044f","value":"50"},{"label":"\u0423\u043b\u0438\u0446\u0430 \u0414\u044b\u0431\u0435\u043d\u043a\u043e","value":"60"},{"label":"\u0427\u0451\u0440\u043d\u0430\u044f \u0420\u0435\u0447\u043a\u0430","value":"62"}]}' id="fs-commerce-subway" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Районы</p> <div data-js-select='{"id":"location[]","name":"location[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0412\u0441\u0435\u0432\u043e\u043b\u043e\u0436\u0441\u043a\u0438\u0439","value":"43"},{"label":"\u0412\u0430\u0441\u0438\u043b\u0435\u043e\u0441\u0442\u0440\u043e\u0432\u0441\u043a\u0438\u0439","value":"2"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0433\u0432\u0430\u0440\u0434\u0435\u0439\u0441\u043a\u0438\u0439","value":"7"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0441\u0435\u043b\u044c\u0441\u043a\u0438\u0439","value":"8"},{"label":"\u041d\u0435\u0432\u0441\u043a\u0438\u0439","value":"12"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0438\u0439","value":"15"}]}' id="fs-commerce-location" > </div> </div> </div> </div> <div id="parking" data-count="350 машино-мест" data-js-ParamSearch-block="" class="paramSearch__params" data-action="/ajax/search/spb/" data-url="/spb/parking/" > <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[0.2,4.4], "range":{"min":0.2,"max":4.4}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-parking-price" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="0.2" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="4.4" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery13" name="delivery[13]" value="13" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Сдан</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> </ul> </fieldset> </div> <div class="paramSearch__group paramSearch__group--isContentsOnTablet"> <div class="paramSearch__selectWrapper"> <p class="label l3">Жилые комплексы</p> <div data-js-select='{"id":"obj[]","name":"obj[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. SeaView, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 2","value":"195"},{"label":"\u0426\u0438\u0432\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u041d\u0435\u0432\u0435","value":"88"},{"label":"\u041b\u0421\u0420. \u0411\u043e\u043b\u044c\u0448\u0430\u044f \u041e\u0445\u0442\u0430","value":"209"},{"label":"NEVA HAUS","value":"83"},{"label":"\u0422\u0440\u0438 \u0432\u0435\u0442\u0440\u0430","value":"76"},{"label":"\u0428\u0443\u0432\u0430\u043b\u043e\u0432\u0441\u043a\u0438\u0439","value":"61"},{"label":"\u0421\u043c\u043e\u043b\u044c\u043d\u044b\u0439 \u043f\u0430\u0440\u043a II \u043e\u0447\u0435\u0440\u0435\u0434\u044c","value":"37"},{"label":"\u042e\u0436\u043d\u0430\u044f \u0430\u043a\u0432\u0430\u0442\u043e\u0440\u0438\u044f","value":"95"},{"label":"\u0417\u043e\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439, 2-4","value":"175"},{"label":"\u041a\u0430\u043b\u0438\u043d\u0430-\u043f\u0430\u0440\u043a 2","value":"64"}]}' id="fs-parking-obj" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Метро</p> <div data-js-select='{"id":"subway[]","name":"subway[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0411\u0435\u0433\u043e\u0432\u0430\u044f","value":"73"},{"label":"\u041a\u043e\u043c\u0435\u043d\u0434\u0430\u043d\u0442\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"19"},{"label":"\u041a\u0440\u0435\u0441\u0442\u043e\u0432\u0441\u043a\u0438\u0439 \u043e\u0441\u0442\u0440\u043e\u0432","value":"20"},{"label":"\u041b\u0430\u0434\u043e\u0436\u0441\u043a\u0430\u044f","value":"22"},{"label":"\u041b\u0435\u043d\u0438\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"23"},{"label":"\u041b\u0435\u0441\u043d\u0430\u044f","value":"24"},{"label":"\u041d\u043e\u0432\u043e\u0447\u0435\u0440\u043a\u0430\u0441\u0441\u043a\u0430\u044f","value":"33"},{"label":"\u041f\u043b\u043e\u0449\u0430\u0434\u044c \u041b\u0435\u043d\u0438\u043d\u0430","value":"43"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0430\u044f","value":"46"},{"label":"\u0421\u043f\u043e\u0440\u0442\u0438\u0432\u043d\u0430\u044f","value":"56"},{"label":"\u0421\u0442\u0430\u0440\u0430\u044f \u0414\u0435\u0440\u0435\u0432\u043d\u044f","value":"57"},{"label":"\u0423\u043b\u0438\u0446\u0430 \u0414\u044b\u0431\u0435\u043d\u043a\u043e","value":"60"},{"label":"\u0427\u0435\u0440\u043d\u044b\u0448\u0435\u0432\u0441\u043a\u0430\u044f","value":"63"}]}' id="fs-parking-subway" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Районы</p> <div data-js-select='{"id":"location[]","name":"location[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0412\u0430\u0441\u0438\u043b\u0435\u043e\u0441\u0442\u0440\u043e\u0432\u0441\u043a\u0438\u0439","value":"2"},{"label":"\u041a\u0430\u043b\u0438\u043d\u0438\u043d\u0441\u043a\u0438\u0439","value":"4"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0433\u0432\u0430\u0440\u0434\u0435\u0439\u0441\u043a\u0438\u0439","value":"7"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0441\u0435\u043b\u044c\u0441\u043a\u0438\u0439","value":"8"},{"label":"\u041d\u0435\u0432\u0441\u043a\u0438\u0439","value":"12"},{"label":"\u041f\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0438\u0439","value":"13"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0438\u0439","value":"15"},{"label":"\u0426\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u0439","value":"18"}]}' id="fs-parking-location" > </div> </div> </div> </div> <div id="pantry" data-count="5 кладовых" data-js-ParamSearch-block="" class="paramSearch__params" data-action="/ajax/search/spb/" data-url="/spb/kladovki/" > <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[0.7,1], "range":{"min":0.7,"max":1}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-pantry-price" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="0.7" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="1" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> </ul> </fieldset> </div> <div class="paramSearch__group paramSearch__group--isContentsOnTablet"> <div class="paramSearch__selectWrapper"> <p class="label l3">Жилые комплексы</p> <div data-js-select='{"id":"obj[]","name":"obj[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043c\u0438\u043b\u044f","value":"198"}]}' id="fs-pantry-obj" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Метро</p> <div data-js-select='{"id":"subway[]","name":"subway[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0410\u0432\u0442\u043e\u0432\u043e","value":"1"},{"label":"\u041a\u0438\u0440\u043e\u0432\u0441\u043a\u0438\u0439 \u0417\u0430\u0432\u043e\u0434","value":"18"},{"label":"\u041b\u0435\u043d\u0438\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"23"}]}' id="fs-pantry-subway" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Районы</p> <div data-js-select='{"id":"location[]","name":"location[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0441\u0435\u043b\u044c\u0441\u043a\u0438\u0439","value":"8"}]}' id="fs-pantry-location" > </div> </div> </div> </div> <div class="paramSearch__buttonsWrapper"> <a class="mapLink mapLink--isIconOnlyOnMobile" href="/spb/map/"> <span class="mapLink__label">Искать на карте</span> <div class="tip tip--isArrowRight isVisibleTablet" data-js-tip=""> <label class="label l3">Нажмите, чтобы искать на карте</label> </div> </a> <button draggable="false" type="button" class="btn btn--isOutline btn--isSizeLarge btn--isHideInShortPV" href="#mw-paramSearch" data-js-modal-open="" id="allFiltersButton" > <span class="btn__label">Все фильтры</span> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-equalizer"></use> </svg> </span> </span> </button> <button draggable="false" type="button" class="btn btn--isSizeLarge btn--isShowInShortPV" href="#mw-paramSearch" data-js-modal-open="" > <span class="btn__label">Все фильтры</span> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-equalizer"></use> </svg> </span> </span> </button> <button draggable="false" type="button" class="btn btn--isSizeLarge btn--isHideInShortPV " data-domain="spb" data-action="/ajax/search/spb/" id="searchButton" > <span class="btn__label"> 701 квартиру </span> </button> </div> <div id="mw-paramSearch" class="modal modal--isPV modal--isCard2 isDisplayNone" data-js-modal data-js-groupselect > <header class="modal__header"> <div class="modal__headerItem modal__headerItem--clearBtn"> <div class="isVisibleTablet"> <button id="resetButtonPopupMobile" draggable="false" type="button" class="btn btn--isBright btn--isFitContent btn--isSizeMedium"> <span class="btn__label">Сброс</span> </button> </div> </div> <div class="h4 modal__title isMb0">Все параметры</div> <div class="modal__headerItem modal__headerItem--closeBtn"> <div class="isHiddenTablet"> <button draggable="false" type="button" class="btn btn--isRound btn--isOutline btn--isOnlyIcon btn--isSizeLarge" data-fancybox-close="true" title="Закрыть"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-close"></use> </svg> </span> </span> </button> </div> <div class="isVisibleTablet"> <button draggable="false" type="button" class="btn btn--isRound btn--isOutline btn--isOnlyIcon btn--isSizeLarge" data-fancybox-close="true" title="Закрыть"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-arrow-left"></use> </svg> </span> </span> </button> </div> </div> </header> <div class="modalShowFilters" data-js-Tabs='{"activeTabName":"living","onPointerOverEvent":false}'> <div class="modalShowFilters__item modalShowFilters__item--isRow modalShowFilters__heading"> <ul class="modalShowFilters__menu" data-js-TabsList="" style="overflow-x: auto"> <li class="modalShowFilters__menu-item isActive" data-js-TabsItem="living"> <span>Жилая</span> </li> <li class="modalShowFilters__menu-item" data-js-TabsItem="commerce"> <span>Коммерческая</span> </li> <li class="modalShowFilters__menu-item" data-js-TabsItem="parking"> <span>Паркинги</span> </li> <li class="modalShowFilters__menu-item" data-js-TabsItem="pantry"> <span>Кладовые</span> </li> </ul> </div> <div data-js-TabsContentList="" class="modalShowFilters__tabsContainer"> <div data-js-TabsContent="living" class="modalShowFilters__tab isActive"> <input type="hidden" name="last_delivery" value="30"> <div class="modalShowFilters__grid"> <div> <p class="label l3">Комнатность</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type6" name="type[6]" value="6" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">С</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type7" name="type[7]" value="7" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">1</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type8" name="type[8]" value="8" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type9" name="type[9]" value="9" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">3</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="type10" name="type[10]" value="10" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">4+</span> </label> </li> </ul> </fieldset> </div> <input name="price[min]" value="3.8" type="text" style="display: none"> <input name="price[max]" value="11.5" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[3.8,11.5], "range":{"min":3.1,"max":100.2}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-living-price-popup" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="3.1" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="100.2" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery13" name="delivery[13]" value="13" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Сдан</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery28" name="delivery[28]" value="28" checked /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2024</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery30" name="delivery[30]" value="30" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2026+</span> </label> </li> </ul> </fieldset> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Районы</p> <div data-js-select='{"id":"location[]","name":"location[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0410\u0434\u043c\u0438\u0440\u0430\u043b\u0442\u0435\u0439\u0441\u043a\u0438\u0439","value":"1"},{"label":"\u0412\u0441\u0435\u0432\u043e\u043b\u043e\u0436\u0441\u043a\u0438\u0439","value":"43"},{"label":"\u0412\u0430\u0441\u0438\u043b\u0435\u043e\u0441\u0442\u0440\u043e\u0432\u0441\u043a\u0438\u0439","value":"2"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0433\u0432\u0430\u0440\u0434\u0435\u0439\u0441\u043a\u0438\u0439","value":"7"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0441\u0435\u043b\u044c\u0441\u043a\u0438\u0439","value":"8"},{"label":"\u041c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u0438\u0439","value":"11"},{"label":"\u041d\u0435\u0432\u0441\u043a\u0438\u0439","value":"12"},{"label":"\u041f\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0438\u0439","value":"13"},{"label":"\u041f\u0443\u0448\u043a\u0438\u043d\u0441\u043a\u0438\u0439","value":"16"}]}' id="fs-living-location-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Метро</p> <div data-js-select='{"id":"subway[]","name":"subway[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0410\u0432\u0442\u043e\u0432\u043e","value":"1"},{"label":"\u0410\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f","value":"3"},{"label":"\u0411\u0430\u043b\u0442\u0438\u0439\u0441\u043a\u0430\u044f","value":"4"},{"label":"\u0413\u0440\u0430\u0436\u0434\u0430\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"12"},{"label":"\u0417\u0432\u0451\u0437\u0434\u043d\u0430\u044f","value":"16"},{"label":"\u041a\u0438\u0440\u043e\u0432\u0441\u043a\u0438\u0439 \u0417\u0430\u0432\u043e\u0434","value":"18"},{"label":"\u041a\u0440\u0435\u0441\u0442\u043e\u0432\u0441\u043a\u0438\u0439 \u043e\u0441\u0442\u0440\u043e\u0432","value":"20"},{"label":"\u041b\u0430\u0434\u043e\u0436\u0441\u043a\u0430\u044f","value":"22"},{"label":"\u041b\u0435\u043d\u0438\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"23"},{"label":"\u041b\u043e\u043c\u043e\u043d\u043e\u0441\u043e\u0432\u0441\u043a\u0430\u044f","value":"26"},{"label":"\u041c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u0430\u044f","value":"29"},{"label":"\u041d\u043e\u0432\u043e\u0447\u0435\u0440\u043a\u0430\u0441\u0441\u043a\u0430\u044f","value":"33"},{"label":"\u041f\u043b\u043e\u0449\u0430\u0434\u044c \u041b\u0435\u043d\u0438\u043d\u0430","value":"43"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0430\u044f","value":"46"},{"label":"\u041f\u0440\u043e\u0441\u043f\u0435\u043a\u0442 \u0411\u043e\u043b\u044c\u0448\u0435\u0432\u0438\u043a\u043e\u0432","value":"48"},{"label":"\u0421\u043f\u043e\u0440\u0442\u0438\u0432\u043d\u0430\u044f","value":"56"},{"label":"\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0438\u043d\u0441\u0442\u0438\u0442\u0443\u0442","value":"58"},{"label":"\u0423\u043b\u0438\u0446\u0430 \u0414\u044b\u0431\u0435\u043d\u043a\u043e","value":"60"},{"label":"\u0424\u0440\u0443\u043d\u0437\u0435\u043d\u0441\u043a\u0430\u044f","value":"61"},{"label":"\u0427\u043a\u0430\u043b\u043e\u0432\u0441\u043a\u0430\u044f","value":"64"}]}' id="fs-living-subway-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Жилые комплексы</p> <div data-js-select='{"id":"obj[]","name":"obj[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041f\u0435\u0439\u0437\u0430\u0436\u043d\u044b\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","value":"118"},{"label":"\u041f\u0443\u043b\u043a\u043e\u0432\u043e Lake","value":"221"},{"label":"\u041b\u0421\u0420. \u0420\u0436\u0435\u0432\u0441\u043a\u0438\u0439 \u043f\u0430\u0440\u043a","value":"210"},{"label":"\u0420\u0443\u0447\u044c\u0438, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 2","value":"199"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, \u043a\u0432\u0430\u0440\u0442\u0430\u043b 29","value":"119"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, \u043a\u0432\u0430\u0440\u0442\u0430\u043b 26","value":"116"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043c\u0438\u043b\u044f","value":"198"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. SeaView, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 2","value":"195"},{"label":"\u0426\u0438\u0432\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u041d\u0435\u0432\u0435","value":"88"},{"label":"\u0418\u0437\u043c\u0430\u0439\u043b\u043e\u0432\u0441\u043a\u0438\u0439","value":"208"},{"label":"\u041b\u0421\u0420. \u0411\u043e\u043b\u044c\u0448\u0430\u044f \u041e\u0445\u0442\u0430","value":"209"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. \u0411\u0443\u043b\u044c\u0432\u0430\u0440, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 2","value":"194"},{"label":"NEVA RESIDENCE","value":"143"},{"label":"NEVA HAUS","value":"83"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. \u0411\u0443\u043b\u044c\u0432\u0430\u0440, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 1","value":"140"},{"label":"\u041e\u043a\u0442\u044f\u0431\u0440\u044c\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f","value":"145"},{"label":"NEOPARK","value":"113"}]}' id="fs-living-obj-popup" > </div> </div> <input name="area[min]" value="19" type="text" style="display: none"> <input name="area[max]" value="60" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{"step":0.1,"margin":1,"connect":true,"valueType":"oneDecimal","isPercent":false,"range":{"min":19,"max":204},"start":[19,60]}' id="rs-living-area-popup" > <p class="label l3">Площадь, м<sup>2</sup></p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="area_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="19" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="area_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="204" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div class="paramSearch__selectWrapper" id="select-opt"> <p class="label l3">Отделка</p> <input id="opt3" name="opt[3]" value="3" type="checkbox" style="display: none"> <input id="opt4" name="opt[4]" value="4" type="checkbox" style="display: none"> <input id="opt13" name="opt[13]" value="13" type="checkbox" style="display: none"> <div data-js-select='{"id":"opt","name":"opt","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":false,"options":[{"label":"White box","value":"13"},{"label":"\u0411\u0435\u0437 \u043e\u0442\u0434\u0435\u043b\u043a\u0438","value":"3"},{"label":"\u0421 \u043e\u0442\u0434\u0435\u043b\u043a\u043e\u0439","value":4}]}' id="fs-living-opt-popup" > </div> </div> <input name="floor[min]" value="1" type="text" style="display: none"> <input name="floor[max]" value="25" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{"step":1,"margin":1,"connect":true,"valueType":"wholeNumber","range":{"min":1,"max":25},"start":[1,25]}' id="rs-living-floor-popup" > <p class="label l3">Этаж</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="floor_range[min]" type="text" data-js-rangeSliderLowerValue="" value="1" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="floor_range[max]" type="text" data-js-rangeSliderHigherValue="" value="25" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Дополнительно</p> <fieldset class="checkerGroup checkerGroup--isSmall"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" id="floor[nfirst]" name="floor[nfirst]" type="checkbox" value="1" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Не первый этаж</span> </label> </li> <li class="checkerGroup__item"><label class="checkbox"> <input class="checkbox__input" id="floor[nlast]" name="floor[nlast]" type="checkbox" value="1" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Не последний этаж</span></label> </li> </ul> </fieldset> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Меблировка</p> <input id="furnish" name="furnish" value="furnish" type="checkbox" style="display: none"> <input id="nofurnish" name="nofurnish" value="nofurnish" type="checkbox" style="display: none"> <input id="kitchen" name="kitchen" value="kitchen" type="checkbox" style="display: none"> <div data-js-select='{"id":"furniture","name":"furniture","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":false,"options":[{"label":"\u0421 \u043a\u0443\u0445\u043d\u0435\u0439","value":"kitchen"}]}' id="fs-living-furniture-popup"> </div> </div> </div> <div class="isMtD52T40M20"> <p class="label l3">Дополнительные параметры</p> <div class="modalShowFilters__item modalShowFilters__item--isRow modalShowFilters__tagsList"> <label class="checkbox checkbox--isButton" style="border-color: var(--colorAlizarinCrimson)"> <input class="checkbox__input" id="isspecialprice" name="isspecialprice" type="checkbox" value="on" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Спецпредложение</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="euroflat" name="euroflat" type="checkbox" value="1" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Европланировка</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="species" name="species" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Видовая</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="separatebathroom" name="separatebathroom" type="checkbox" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Раздельный санузел</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="masterbedroom" name="masterbedroom" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Мастер-спальня</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="severalbathrooms" name="severalbathrooms" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2+ санузла</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="wardrobe" name="wardrobe" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Гардеробная</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="largewindows" name="largewindows" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Увеличенные окна</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="highceiling" name="highceiling" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Высокие потолки</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="balcony" name="balcony" type="checkbox" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Балкон</span> </label><label class="checkbox checkbox--isButton checkbox--isWithIcon"> <input class="checkbox__input" id="elite" name="elite" type="checkbox" value="1" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-star"></use> </svg> </span> <span>Элит</span> </span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="issauna" name="issauna" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Сауна</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="isfireplace" name="isfireplace" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Камин</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="ispatio" name="ispatio" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Патио</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="istwolevel" name="istwolevel" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Двухуровневая</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="ismezzaninefloor" name="ismezzaninefloor" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Антресольный этаж</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="iscornerglazing" name="iscornerglazing" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Угловое остекление</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="isbathroomwindow" name="isbathroomwindow" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Окна в ванной</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="terrace" name="terrace" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Терраса</span> </label><label class="checkbox checkbox--isButton"> <input class="checkbox__input" id="ispenthouse" name="ispenthouse" type="checkbox" disabled /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Пентхауз</span> </label> </div> </div> </div> <div data-js-TabsContent="commerce" class="modalShowFilters__tab "> <div class="modalShowFilters__grid"> <input type="hidden" name="premiseType" value="2"> <input type="hidden" name="last_delivery" value="30"> <input name="price[min]" value="12.2" type="text" style="display: none"> <input name="price[max]" value="42.3" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[12.2,42.3], "range":{"min":12.2,"max":42.3}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-commerce-price-popup" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="12.2" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="42.3" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery13" name="delivery[13]" value="13" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Сдан</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery28" name="delivery[28]" value="28" checked /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2024</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery30" name="delivery[30]" value="30" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2026+</span> </label> </li> </ul> </fieldset> </div> <input name="area[min]" value="48" type="text" style="display: none"> <input name="area[max]" value="184" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{"step":0.1,"margin":1,"connect":true,"valueType":"oneDecimal","isPercent":false,"range":{"min":48,"max":183},"start":[48,184]}' id="rs-commerce-area-popup" > <p class="label l3">Площадь, м<sup>2</sup></p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="area_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="48" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="area_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="183" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Жилые комплексы</p> <div data-js-select='{"id":"obj[]","name":"obj[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041f\u0435\u0439\u0437\u0430\u0436\u043d\u044b\u0439 \u043a\u0432\u0430\u0440\u0442\u0430\u043b","value":"118"},{"label":"\u041b\u0421\u0420. \u0420\u0436\u0435\u0432\u0441\u043a\u0438\u0439 \u043f\u0430\u0440\u043a","value":"210"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, \u043a\u0432\u0430\u0440\u0442\u0430\u043b 29","value":"119"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, \u043a\u0432\u0430\u0440\u0442\u0430\u043b 26","value":"116"},{"label":"\u0426\u0432\u0435\u0442\u043d\u043e\u0439 \u0433\u043e\u0440\u043e\u0434, DUOPARK","value":"120"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043c\u0438\u043b\u044f","value":"198"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. SeaView, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 2","value":"195"},{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. \u0411\u0443\u043b\u044c\u0432\u0430\u0440, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 1","value":"140"},{"label":"\u0420\u0443\u0447\u044c\u0438, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 1","value":"121"},{"label":"\u0426\u0438\u0432\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f","value":"36"},{"label":"RIVIERE NOIRE","value":"98"},{"label":"\u0417\u0430\u043f\u043e\u0432\u0435\u0434\u043d\u044b\u0439 \u043f\u0430\u0440\u043a","value":"142"},{"label":"\u041d\u043e\u0432\u0430\u044f \u041e\u0445\u0442\u0430","value":"60"}]}' id="fs-commerce-obj-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Метро</p> <div data-js-select='{"id":"subway[]","name":"subway[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0410\u0432\u0442\u043e\u0432\u043e","value":"1"},{"label":"\u0410\u043a\u0430\u0434\u0435\u043c\u0438\u0447\u0435\u0441\u043a\u0430\u044f","value":"3"},{"label":"\u0413\u0440\u0430\u0436\u0434\u0430\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"12"},{"label":"\u041a\u0438\u0440\u043e\u0432\u0441\u043a\u0438\u0439 \u0417\u0430\u0432\u043e\u0434","value":"18"},{"label":"\u041b\u0430\u0434\u043e\u0436\u0441\u043a\u0430\u044f","value":"22"},{"label":"\u041b\u0435\u043d\u0438\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"23"},{"label":"\u041b\u043e\u043c\u043e\u043d\u043e\u0441\u043e\u0432\u0441\u043a\u0430\u044f","value":"26"},{"label":"\u041d\u043e\u0432\u043e\u0447\u0435\u0440\u043a\u0430\u0441\u0441\u043a\u0430\u044f","value":"33"},{"label":"\u041e\u0437\u0435\u0440\u043a\u0438","value":"36"},{"label":"\u041f\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0430\u044f","value":"39"},{"label":"\u041f\u043b\u043e\u0449\u0430\u0434\u044c \u041b\u0435\u043d\u0438\u043d\u0430","value":"43"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0430\u044f","value":"46"},{"label":"\u041f\u0440\u043e\u0441\u043f\u0435\u043a\u0442 \u0411\u043e\u043b\u044c\u0448\u0435\u0432\u0438\u043a\u043e\u0432","value":"48"},{"label":"\u041f\u0440\u043e\u0441\u043f\u0435\u043a\u0442 \u041f\u0440\u043e\u0441\u0432\u0435\u0449\u0435\u043d\u0438\u044f","value":"50"},{"label":"\u0423\u043b\u0438\u0446\u0430 \u0414\u044b\u0431\u0435\u043d\u043a\u043e","value":"60"},{"label":"\u0427\u0451\u0440\u043d\u0430\u044f \u0420\u0435\u0447\u043a\u0430","value":"62"}]}' id="fs-commerce-subway-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Районы</p> <div data-js-select='{"id":"location[]","name":"location[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0412\u0441\u0435\u0432\u043e\u043b\u043e\u0436\u0441\u043a\u0438\u0439","value":"43"},{"label":"\u0412\u0430\u0441\u0438\u043b\u0435\u043e\u0441\u0442\u0440\u043e\u0432\u0441\u043a\u0438\u0439","value":"2"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0433\u0432\u0430\u0440\u0434\u0435\u0439\u0441\u043a\u0438\u0439","value":"7"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0441\u0435\u043b\u044c\u0441\u043a\u0438\u0439","value":"8"},{"label":"\u041d\u0435\u0432\u0441\u043a\u0438\u0439","value":"12"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0438\u0439","value":"15"}]}' id="fs-commerce-location-popup" > </div> </div> </div> </div> <div data-js-TabsContent="parking" class="modalShowFilters__tab "> <div class="modalShowFilters__grid"> <input type="hidden" name="premiseType" value="3"> <input name="price[min]" value="0.2" type="text" style="display: none"> <input name="price[max]" value="4.4" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[0.2,4.4], "range":{"min":0.2,"max":4.4}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-parking-price-popup" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="0.2" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="4.4" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery13" name="delivery[13]" value="13" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Сдан</span> </label> </li> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> </ul> </fieldset> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Жилые комплексы</p> <div data-js-select='{"id":"obj[]","name":"obj[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043d\u0430\u0431\u0435\u0440\u0435\u0436\u043d\u0430\u044f. SeaView, \u043e\u0447\u0435\u0440\u0435\u0434\u044c 2","value":"195"},{"label":"\u0426\u0438\u0432\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u043d\u0430 \u041d\u0435\u0432\u0435","value":"88"},{"label":"\u041b\u0421\u0420. \u0411\u043e\u043b\u044c\u0448\u0430\u044f \u041e\u0445\u0442\u0430","value":"209"},{"label":"NEVA HAUS","value":"83"},{"label":"\u0422\u0440\u0438 \u0432\u0435\u0442\u0440\u0430","value":"76"},{"label":"\u0428\u0443\u0432\u0430\u043b\u043e\u0432\u0441\u043a\u0438\u0439","value":"61"},{"label":"\u0421\u043c\u043e\u043b\u044c\u043d\u044b\u0439 \u043f\u0430\u0440\u043a II \u043e\u0447\u0435\u0440\u0435\u0434\u044c","value":"37"},{"label":"\u042e\u0436\u043d\u0430\u044f \u0430\u043a\u0432\u0430\u0442\u043e\u0440\u0438\u044f","value":"95"},{"label":"\u0417\u043e\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439, 2-4","value":"175"},{"label":"\u041a\u0430\u043b\u0438\u043d\u0430-\u043f\u0430\u0440\u043a 2","value":"64"}]}' id="fs-parking-obj-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Метро</p> <div data-js-select='{"id":"subway[]","name":"subway[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0411\u0435\u0433\u043e\u0432\u0430\u044f","value":"73"},{"label":"\u041a\u043e\u043c\u0435\u043d\u0434\u0430\u043d\u0442\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"19"},{"label":"\u041a\u0440\u0435\u0441\u0442\u043e\u0432\u0441\u043a\u0438\u0439 \u043e\u0441\u0442\u0440\u043e\u0432","value":"20"},{"label":"\u041b\u0430\u0434\u043e\u0436\u0441\u043a\u0430\u044f","value":"22"},{"label":"\u041b\u0435\u043d\u0438\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"23"},{"label":"\u041b\u0435\u0441\u043d\u0430\u044f","value":"24"},{"label":"\u041d\u043e\u0432\u043e\u0447\u0435\u0440\u043a\u0430\u0441\u0441\u043a\u0430\u044f","value":"33"},{"label":"\u041f\u043b\u043e\u0449\u0430\u0434\u044c \u041b\u0435\u043d\u0438\u043d\u0430","value":"43"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0430\u044f","value":"46"},{"label":"\u0421\u043f\u043e\u0440\u0442\u0438\u0432\u043d\u0430\u044f","value":"56"},{"label":"\u0421\u0442\u0430\u0440\u0430\u044f \u0414\u0435\u0440\u0435\u0432\u043d\u044f","value":"57"},{"label":"\u0423\u043b\u0438\u0446\u0430 \u0414\u044b\u0431\u0435\u043d\u043a\u043e","value":"60"},{"label":"\u0427\u0435\u0440\u043d\u044b\u0448\u0435\u0432\u0441\u043a\u0430\u044f","value":"63"}]}' id="fs-parking-subway-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Районы</p> <div data-js-select='{"id":"location[]","name":"location[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0412\u0430\u0441\u0438\u043b\u0435\u043e\u0441\u0442\u0440\u043e\u0432\u0441\u043a\u0438\u0439","value":"2"},{"label":"\u041a\u0430\u043b\u0438\u043d\u0438\u043d\u0441\u043a\u0438\u0439","value":"4"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0433\u0432\u0430\u0440\u0434\u0435\u0439\u0441\u043a\u0438\u0439","value":"7"},{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0441\u0435\u043b\u044c\u0441\u043a\u0438\u0439","value":"8"},{"label":"\u041d\u0435\u0432\u0441\u043a\u0438\u0439","value":"12"},{"label":"\u041f\u0435\u0442\u0440\u043e\u0433\u0440\u0430\u0434\u0441\u043a\u0438\u0439","value":"13"},{"label":"\u041f\u0440\u0438\u043c\u043e\u0440\u0441\u043a\u0438\u0439","value":"15"},{"label":"\u0426\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u0439","value":"18"}]}' id="fs-parking-location-popup" > </div> </div> <input name="floor[min]" value="-3" type="text" style="display: none"> <input name="floor[max]" value="6" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{"step":1,"margin":1,"connect":true,"valueType":"wholeNumber","range":{"min":-3,"max":6},"start":[-3,6]}' id="rs-parking-floor-popup" > <p class="label l3">Этаж</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="floor_range[min]" type="text" data-js-rangeSliderLowerValue="" value="-3" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="floor_range[max]" type="text" data-js-rangeSliderHigherValue="" value="6" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> </div> <div class="isMtD52T40M20"> <div class="modalShowFilters__item modalShowFilters__item--isRow modalShowFilters__tagsList"> <label class="checkbox checkbox--isButton checkbox--isWithIcon"> <input class="checkbox__input" id="elite" name="elite" type="checkbox" value="1" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-star"></use> </svg> </span> <span>Элит</span> </span> </label> <label class="checkbox checkbox--isButton checkbox--isWithIcon"> <input class="checkbox__input" id="rent" name="rent" type="checkbox" value="on" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-star"></use> </svg> </span> <span>Аренда</span> </span> </label> </div> </div> </div> <div data-js-TabsContent="pantry" class="modalShowFilters__tab "> <div class="modalShowFilters__grid"> <input type="hidden" name="premiseType" value="4"> <input name="price[min]" value="0.7" type="text" style="display: none"> <input name="price[max]" value="1" type="text" style="display: none"> <div class="rangeSlider rangeSlider--isSmall" data-js-rangeSlider='{ "start":[0.7,1], "range":{"min":0.7,"max":1}, "step":0.1, "margin":0.1, "connect":true, "valueType":"oneDecimal", "isPercent":false}' id="rs-pantry-price-popup" > <p class="label l3">Стоимость, млн ₽</p> <div class="rangeSlider__inner"> <div class="rangeSlider__values"> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputLower" name="price_range[min]" type="text" autoComplete="off" data-js-rangeSliderLowerValue="" value="0.7" /> <input class="rangeSliderInput rangeSliderInput--isRangeSliderInputHigher" name="price_range[max]" type="text" autoComplete="off" data-js-rangeSliderHigherValue="" value="1" /> </div> <div class="rangeSlider__wrapper" data-js-rangeSliderContainer=""></div> </div> </div> <div> <p class="label l3">Срок сдачи</p> <fieldset class="checkerGroup"> <ul class="checkerGroup__list"> <li class="checkerGroup__item"> <label class="checkbox"> <input class="checkbox__input" type="checkbox" id="delivery31" name="delivery[31]" value="31" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">2025</span> </label> </li> </ul> </fieldset> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Жилые комплексы</p> <div data-js-select='{"id":"obj[]","name":"obj[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041c\u043e\u0440\u0441\u043a\u0430\u044f \u043c\u0438\u043b\u044f","value":"198"}]}' id="fs-pantry-obj-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Метро</p> <div data-js-select='{"id":"subway[]","name":"subway[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u0410\u0432\u0442\u043e\u0432\u043e","value":"1"},{"label":"\u041a\u0438\u0440\u043e\u0432\u0441\u043a\u0438\u0439 \u0417\u0430\u0432\u043e\u0434","value":"18"},{"label":"\u041b\u0435\u043d\u0438\u043d\u0441\u043a\u0438\u0439 \u043f\u0440\u043e\u0441\u043f\u0435\u043a\u0442","value":"23"}]}' id="fs-pantry-subway-popup" > </div> </div> <div class="paramSearch__selectWrapper"> <p class="label l3">Районы</p> <div data-js-select='{"id":"location[]","name":"location[]","placeholder":"\u041d\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043e","extraClasses":{"isSmall":true},"isMulti":true,"isSearchable":true,"options":[{"label":"\u041a\u0440\u0430\u0441\u043d\u043e\u0441\u0435\u043b\u044c\u0441\u043a\u0438\u0439","value":"8"}]}' id="fs-pantry-location-popup" > </div> </div> </div> </div> </div> <div class="modalShowFilters__item modalShowFilters__item--isRow modalShowFilters__footer"> <button draggable="false" type="button" class="btn btn--isOutline btn--isSizeLarge" id="resetButtonPopup"> <span class="btn__label">Сбросить фильтр</span> </button> <button draggable="false" type="button" class="btn btn--isSizeLarge" data-domain="spb" data-action="/ajax/search/spb/" id="searchButtonPopup"> <span class="btn__label isHiddenMobile"> 701 квартиру </span> <span class="btn__label isVisibleMobile"> 701 кв. </span> </button> <a class="mapLink" data-js-ParamSearchSlave='{"hideEvent": "pv::visibility:mapLink"}' href="/spb/map/"> <span class="mapLink__label">Искать на карте</span> </a> </div> </div> </div> </form></div> <div class="flexFlow flexFlow--isJustifyContentCenter isMt32 isMb16"> <span class="h2 isTextCenter"> Найдено 701 квартира </span> </div> <div class="gridFlow gridFlow--isListingHeading gridFlow--isMb32 gridFlow--isColumns-1 isFullWidth isMt24"> <div class="gridFlow__item gridFlow__item--isFlex isAlignItemsCenter"> <label class="checkbox checkbox--isSwitch" id="grouprequired-checkbox" data-js-ParamSearchSlave='{"hideEvent": "pv::visibility:useGroup"}'> <input id="grouprequired" class="checkbox__input" type="checkbox" name="grouprequired" data-obj="" tabindex="-1" autoComplete="off" value="1" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Объединять по типам</span> </label> </div> <div class="gridFlow__item gridFlow__item--isOnMobileWide gridFlow__item--isOnMobileOrder-1"> <div class="sortSelect"> <label class="sortSelect__label label l2 isColorSilverChalice">Сортировка:</label> <div class="sortSelect__input" id="sortSelect" data-js-select='{ "id":"", "name":"", "options":[{"label":"Цена по возрастанию","value":"price-asc"}, {"label":"Цена по убыванию","value":"price-desc"}], "placeholder":"Цена по возрастанию", "extraClasses":{"isWithInnerLabel":true,"isSortSelect":true,"isSmall":true}}'> </div> </div> </div> <div class="gridFlow__item gridFlow__item--isFlex isJustifyContentEnd"> <fieldset class="toggleView checkerGroup isFitWidth isMl16" data-js-viewToggle-part="trigger" data-js-ParamSearchSlave='{"hideEvent": "pv::visibility:viewSwitch"}' id="searchResultsHeader__viewToggle"> <div class="checkerGroup__list"> <div class="checkerGroup__item"> <label class="radio radio--isChecked"> <input class="radio__input" id="view" name="view" type="radio" tabindex="-1" autoComplete="off" checked="" value="line" /> <span role="presentation" class="radio__emulator"></span> <span role="tooltip" class="radio__label"> <span role="presentation" class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-line-view" /> </svg> </span> </span> </label> <div class="tip tip--isArrowTop"> <label class="label l3">Вид списком</label> </div> </div> <div class="checkerGroup__item"> <label class="radio"> <input class="radio__input" id="view" name="view" type="radio" tabindex="-1" autoComplete="off" value="grid" /> <span role="presentation" class="radio__emulator"></span> <span role="tooltip" class="radio__label"> <span role="presentation" class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-grid-view" /> </svg> </span> </span> </label> <div class="tip tip--isArrowTop"> <label class="label l3">Вид плиткой</label> </div> </div> </div> </fieldset> </div> </div> <div class="lifeComplexList" data-js-viewToggle-part="list"> <div class="rrMarkup" data-js-rrMarkup='{"id": "0"}'> <div data-retailrocket-markup-block="671a5a54c945d2e22202dd78" data-design="list" > </div> </div> <div class="lifeComplex" data-js-LifeComplex data-obj-id="199" data-action="/ajax/search/spb/"> <div class="lifeComplex__cover"> <a href="/spb/zhilye-kompleksy/ruchi-ochered-2/" target="_blank" class="lifeComplex__img" style="background-image:url(https://cdn.static.lsr.ru/upload/kelnik.estate/c68/6uqlp5duijgy5d99lmnyx4zvndnvgwrd/2500х2000-ruchi.webp)"></a> <div class="lifeComplex__placement"> <label class="label l3">Расположение</label> <div class="metro"> <div class="metro__item"> <span class="icon icon--isMetro icon--isSizeAuto" style="--iconBg:#df1e42;--iconColor:#df1e42"> <svg class="icon__src"> <use href="#icon-saint-petersburg-metro"></use> </svg> </span> <label class="metro__label">Академическая</label> <div class="metro__wayIcon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-"></use> </svg> </span> </div> <label class="metro__distanceTime"></label> </div> </div> </div> <a href="/spb/zhilye-kompleksy/ruchi-ochered-2/" target="_blank" class="h4 lifeComplex__title">Ручьи, очередь 2</a> <ol class="lifeComplex__tags"> <div class="tag tag--isSmall" style="background-color: #df1e42"> <img class="tag__img" src="/upload/kelnik.estate/d34/5ull8yl1rjuk53mbc5kruiwi2xhedxw8/30. Fire.svg" width="14" height="14" loading="lazy" decoding="async" alt="" /> <span style="color: #ffffff">Скидка на квартиры 15%</span> </div> </ol> <div class="lifeComplex__buttonsWrapper"> <div class="lifeComplex__secondaryBtn"> <button draggable="false" type="button" class="btn btn--isDark btn--isSizeLarge" data-js-LifeComplex-part="trigger" data-action="/ajax/search/spb/" data-obj="199"> <span class="btn__label">562 квартиры от 3.8 млн ₽ </span> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> </div> <div class="lifeComplex__tertiaryBtn"> <button draggable="false" type="button" class="btn btn--isWithIcon btn--isOutline btn--isSizeLarge" href="#mw-uniq-genplan" data-js-modalwindow-trigger="open" data-object-id="199" data-object-type="flat"> <span>Выбрать дом на генплане</span> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-arrow-right-s"></use> </svg> </span> </button> </div> </div> </div> <div class="lifeComplex__list " data-js-LifeComplex-part="list"> <div class="gridFlow gridFlow--isFlatListing gridFlow--isHideInGrid gridFlow--isGapSm gridFlow--isColumns-1 isHiddenSmallDesktop isP16X isMt16 isAlignItemsCenter isHeight32"> <span class="label l3">Планировка</span> <div class="gridFlow__item gridFlow__item--isGapSm"> <a class="sortLink sortLink--desc" data-sort="type"> <span class="label l3">Комнатность</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <a class="sortLink sortLink--desc" data-sort="area"> <span class="label l3">Площадь</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <a class="sortLink sortLink--desc" data-sort="price" data-direction="asc"> <span class="label l3">Цена</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> </div> <div class="gridFlow__item"> <a class="sortLink sortLink--desc" data-sort="floor"> <span class="label l3">Корпус</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <a class="sortLink sortLink--desc" data-sort="delivery"> <span class="label l3">Этаж</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> </div> <div class="gridFlow__item"> <a class="sortLink sortLink--desc" data-sort="delivery"> <span class="label l3">Сдача</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <span class="label l3">Отделка</span> <span class="label l3">Меблировка</span> </div> </div> <div class="listingStack listingStack--isGap16 isP16Y" data-js-listingResults="flats"></div> </div> <div class="b-build-card__results" style="display: none"> <form id="obj-199" action="/ajax/search/spb/" data-loaded="false"> <input type="hidden" name="ob[page]" value="1"> <input type="hidden" name="ob[id]" value="199"> <input type="hidden" name="ob[sort]" value="price"> <input type="hidden" name="ob[order]" value="asc"> <input type="hidden" name="a" value="types"> <input type="hidden" data-group="group" name="group[t]" value="false"> <div class="b-minimap-build_id-place"></div> <input type="hidden" name="object" value="199"> <a href="#corpuses" data-theme="selector" data-object-id="199" data-object-type="flat" class="b-sort__select j-popup j-select-btn"> Выбрать корпуса в комплексе </a> <div class="b-sort j-sort-nav"> <button type="button" class="b-sort__button j-sort-dropdown"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__button-arr"> <use xlink:href="#up-arrow"></use> </svg> <svg class="b-icon__arrow b-sort__arrow"> <use xlink:href="#arrow"></use> </svg> <div class="b-sort__dropdown"> <div data-device="mobile" data-sort="price" data-direction="asc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> <div data-device="mobile" data-sort="price" data-direction="desc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> </div> </button> <button type="button" class="b-sort__button j-sort-dropdown"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__button-arr"> <use xlink:href="#up-arrow"></use> </svg> <svg class="b-icon__arrow b-sort__arrow"> <use xlink:href="#arrow"></use> </svg> <div class="b-sort__dropdown"> <div data-device="mobile" data-sort="delivery" data-direction="asc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> <div data-device="mobile" data-sort="delivery" data-direction="desc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> </div> </button> <button type="button" class="b-sort__button j-sort-dropdown"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__button-arr"> <use xlink:href="#up-arrow"></use> </svg> <svg class="b-icon__arrow b-sort__arrow"> <use xlink:href="#arrow"></use> </svg> <div class="b-sort__dropdown"> <div data-device="mobile" data-sort="floor" data-direction="asc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> <div data-device="mobile" data-sort="floor" data-direction="desc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> </div> </button> <buttom type="button" class="b-sort__panel-btn j-sort-nav-btn">Сортировать квартиры</buttom> <div class="row b-sort__panel"> <button type="button" class="b-sort__close j-sort-close">✕</button> <div class="col-32 col-push-2 col-post-2 col-md-15"> <div class="b-sort__title">Сортировать квартиры</div> <div class="b-sort__buttons"> <button type="button" data-device="mobile-panel" data-sort="price" data-direction="asc" class="b-sort__button b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="period" data-direction="asc" class="b-sort__button b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="floor" data-direction="asc" class="b-sort__button b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="price" data-direction="desc" class="b-sort__button b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="period" data-direction="desc" class="b-sort__button b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="floor" data-direction="desc" class="b-sort__button b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> </div> </div> </div> </div> <table data-action="" class="row b-building__table b-building__table_sort_types j-fixed-header"> <thead> <tr> <td class="col-bg-3 col-bg-prefix-1 col-lg-3 col-xlg-3 col-xlg-prefix-1 b-building_has_plan">Планировка</td> <td class="col-bg-4 col-lg-4 col-xlg-4 b-building__type"> <a href="javascript:;" data-sort="type" class="j-sort b-building__sort">Тип</a> </td> <td class="col-bg-3 col-lg-3 col-xlg-3 b-building__type b-building__type-house"> <a href="#house-popup" data-theme="house" data-object-id="199" data-object-type="flat" class="b-building__house j-popup j-object-minimap"> <div class="b-building__house-cnt"> <svg class="b-icon__house "> <use xlink:href="#house"></use> </svg> <span>Выбрать дом</span> <div class="b-building__house-tooltip">Выбрать дом на плане комплекса </div> </div> </a> </td> <td class="col-bg-2 col-xlg-2 b-building__type"> <a href="javascript:;" data-sort="floor" class="j-sort b-building__sort">Этаж</a> </td> <td class="col-bg-3 col-lg-3 col-xlg-3"> <a href="javascript:;" data-sort="area" class="j-sort b-building__sort">Площадь, м²</a> </td> <td class="col-bg-3 col-lg-3 col-xlg-3"> <a href="javascript:;" data-sort="delivery" class="j-sort b-building__sort">Срок сдачи</a> </td> <td class="col-bg-2 col-xlg-2 b-building__header_decor">Отделка</td> <td class="col-bg-8 col-lg-4 col-xlg-4"> <a href="javascript:;" data-sort="price" data-direction="asc" class="j-sort b-building__sort b-building__sort_style_asc">Стоимость, ₽</a> </td> <td class="col-bg-5 col-xlg-4 b-building__with-link"></td> </tr> </thead> <tbody> </tbody> </table> </form> </div> </div> <div class="rrMarkup" data-js-rrMarkup='{"id": "1"}'> <div data-retailrocket-markup-block="671a5ac8c945d2e22202dd83" data-design="list" > </div> </div> <div class="lifeComplex" data-js-LifeComplex data-obj-id="119" data-action="/ajax/search/spb/"> <div class="lifeComplex__cover"> <a href="/spb/zhilye-kompleksy/tsvetnoy-gorod-kvartal-29/" target="_blank" class="lifeComplex__img" style="background-image:url(https://cdn.static.lsr.ru/upload/kelnik.estate/19a/abu36v0oty8x3tdfy2qiaofc1tznl8un/2560х1440-tsvetnoy-gorod.webp)"></a> <div class="lifeComplex__placement"> <label class="label l3">Расположение</label> <div class="metro"> <div class="metro__item"> <span class="icon icon--isMetro icon--isSizeAuto" style="--iconBg:#df1e42;--iconColor:#df1e42"> <svg class="icon__src"> <use href="#icon-saint-petersburg-metro"></use> </svg> </span> <label class="metro__label">Академическая</label> <div class="metro__wayIcon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-"></use> </svg> </span> </div> <label class="metro__distanceTime"></label> </div> <div class="metro__item"> <span class="icon icon--isMetro icon--isSizeAuto" style="--iconBg:#df1e42;--iconColor:#df1e42"> <svg class="icon__src"> <use href="#icon-saint-petersburg-metro"></use> </svg> </span> <label class="metro__label">Гражданский проспект</label> <div class="metro__wayIcon"> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-"></use> </svg> </span> </div> <label class="metro__distanceTime"></label> </div> </div> </div> <a href="/spb/zhilye-kompleksy/tsvetnoy-gorod-kvartal-29/" target="_blank" class="h4 lifeComplex__title">Цветной город, квартал 29</a> <ol class="lifeComplex__tags"> <div class="tag tag--isSmall" style="background-color: #df1e42"> <img class="tag__img" src="/upload/kelnik.estate/d34/5ull8yl1rjuk53mbc5kruiwi2xhedxw8/30. Fire.svg" width="14" height="14" loading="lazy" decoding="async" alt="" /> <span style="color: #ffffff">Скидка на квартиры 15%</span> </div> </ol> <div class="lifeComplex__buttonsWrapper"> <div class="lifeComplex__secondaryBtn"> <button draggable="false" type="button" class="btn btn--isDark btn--isSizeLarge" data-js-LifeComplex-part="trigger" data-action="/ajax/search/spb/" data-obj="119"> <span class="btn__label">139 квартир от 4.3 млн ₽ </span> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </span> </button> </div> <div class="lifeComplex__tertiaryBtn"> <button draggable="false" type="button" class="btn btn--isWithIcon btn--isOutline btn--isSizeLarge" href="#mw-uniq-genplan" data-js-modalwindow-trigger="open" data-object-id="119" data-object-type="flat"> <span>Выбрать дом на генплане</span> <span class="icon icon--isSizeAuto"> <svg class="icon__src"> <use href="#icon-arrow-right-s"></use> </svg> </span> </button> </div> </div> </div> <div class="lifeComplex__list " data-js-LifeComplex-part="list"> <div class="gridFlow gridFlow--isFlatListing gridFlow--isHideInGrid gridFlow--isGapSm gridFlow--isColumns-1 isHiddenSmallDesktop isP16X isMt16 isAlignItemsCenter isHeight32"> <span class="label l3">Планировка</span> <div class="gridFlow__item gridFlow__item--isGapSm"> <a class="sortLink sortLink--desc" data-sort="type"> <span class="label l3">Комнатность</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <a class="sortLink sortLink--desc" data-sort="area"> <span class="label l3">Площадь</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <a class="sortLink sortLink--desc" data-sort="price" data-direction="asc"> <span class="label l3">Цена</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> </div> <div class="gridFlow__item"> <a class="sortLink sortLink--desc" data-sort="floor"> <span class="label l3">Корпус</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <a class="sortLink sortLink--desc" data-sort="delivery"> <span class="label l3">Этаж</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> </div> <div class="gridFlow__item"> <a class="sortLink sortLink--desc" data-sort="delivery"> <span class="label l3">Сдача</span> <span role="presentation" class="icon"> <svg class="icon__src"> <use href="#icon-chevron-arrow-down"></use> </svg> </span> </a> <span class="label l3">Отделка</span> <span class="label l3">Меблировка</span> </div> </div> <div class="listingStack listingStack--isGap16 isP16Y" data-js-listingResults="flats"></div> </div> <div class="b-build-card__results" style="display: none"> <form id="obj-119" action="/ajax/search/spb/" data-loaded="false"> <input type="hidden" name="ob[page]" value="1"> <input type="hidden" name="ob[id]" value="119"> <input type="hidden" name="ob[sort]" value="price"> <input type="hidden" name="ob[order]" value="asc"> <input type="hidden" name="a" value="types"> <input type="hidden" data-group="group" name="group[t]" value="false"> <div class="b-minimap-build_id-place"></div> <input type="hidden" name="object" value="119"> <a href="#corpuses" data-theme="selector" data-object-id="119" data-object-type="flat" class="b-sort__select j-popup j-select-btn"> Выбрать корпуса в комплексе </a> <div class="b-sort j-sort-nav"> <button type="button" class="b-sort__button j-sort-dropdown"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__button-arr"> <use xlink:href="#up-arrow"></use> </svg> <svg class="b-icon__arrow b-sort__arrow"> <use xlink:href="#arrow"></use> </svg> <div class="b-sort__dropdown"> <div data-device="mobile" data-sort="price" data-direction="asc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> <div data-device="mobile" data-sort="price" data-direction="desc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> </div> </button> <button type="button" class="b-sort__button j-sort-dropdown"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__button-arr"> <use xlink:href="#up-arrow"></use> </svg> <svg class="b-icon__arrow b-sort__arrow"> <use xlink:href="#arrow"></use> </svg> <div class="b-sort__dropdown"> <div data-device="mobile" data-sort="delivery" data-direction="asc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> <div data-device="mobile" data-sort="delivery" data-direction="desc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> </div> </button> <button type="button" class="b-sort__button j-sort-dropdown"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__button-arr"> <use xlink:href="#up-arrow"></use> </svg> <svg class="b-icon__arrow b-sort__arrow"> <use xlink:href="#arrow"></use> </svg> <div class="b-sort__dropdown"> <div data-device="mobile" data-sort="floor" data-direction="asc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> <div data-device="mobile" data-sort="floor" data-direction="desc" class="b-sort__dropdown-item b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__cnt"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </div> </div> </div> </button> <buttom type="button" class="b-sort__panel-btn j-sort-nav-btn">Сортировать квартиры</buttom> <div class="row b-sort__panel"> <button type="button" class="b-sort__close j-sort-close">✕</button> <div class="col-32 col-push-2 col-post-2 col-md-15"> <div class="b-sort__title">Сортировать квартиры</div> <div class="b-sort__buttons"> <button type="button" data-device="mobile-panel" data-sort="price" data-direction="asc" class="b-sort__button b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="period" data-direction="asc" class="b-sort__button b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="floor" data-direction="asc" class="b-sort__button b-sort__dropdown-item_sort_asc j-sort"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="price" data-direction="desc" class="b-sort__button b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__ttl">По цене</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="period" data-direction="desc" class="b-sort__button b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__ttl">По сроку</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> <button type="button" data-device="mobile-panel" data-sort="floor" data-direction="desc" class="b-sort__button b-sort__dropdown-item_sort_desc j-sort"> <div class="b-sort__ttl">По этажу</div> <svg class="b-icon__up-arrow b-sort__direction-arr"> <use xlink:href="#up-arrow"></use> </svg> </button> </div> </div> </div> </div> <table data-action="" class="row b-building__table b-building__table_sort_types j-fixed-header"> <thead> <tr> <td class="col-bg-3 col-bg-prefix-1 col-lg-3 col-xlg-3 col-xlg-prefix-1 b-building_has_plan">Планировка</td> <td class="col-bg-4 col-lg-4 col-xlg-4 b-building__type"> <a href="javascript:;" data-sort="type" class="j-sort b-building__sort">Тип</a> </td> <td class="col-bg-3 col-lg-3 col-xlg-3 b-building__type b-building__type-house"> <a href="#house-popup" data-theme="house" data-object-id="119" data-object-type="flat" class="b-building__house j-popup j-object-minimap"> <div class="b-building__house-cnt"> <svg class="b-icon__house "> <use xlink:href="#house"></use> </svg> <span>Выбрать дом</span> <div class="b-building__house-tooltip">Выбрать дом на плане комплекса </div> </div> </a> </td> <td class="col-bg-2 col-xlg-2 b-building__type"> <a href="javascript:;" data-sort="floor" class="j-sort b-building__sort">Этаж</a> </td> <td class="col-bg-3 col-lg-3 col-xlg-3"> <a href="javascript:;" data-sort="area" class="j-sort b-building__sort">Площадь, м²</a> </td> <td class="col-bg-3 col-lg-3 col-xlg-3"> <a href="javascript:;" data-sort="delivery" class="j-sort b-building__sort">Срок сдачи</a> </td> <td class="col-bg-2 col-xlg-2 b-building__header_decor">Отделка</td> <td class="col-bg-3 col-xlg-3 b-building__header_decor">Меблировка</td> <td class="col-bg-8 col-lg-4 col-xlg-4"> <a href="javascript:;" data-sort="price" data-direction="asc" class="j-sort b-building__sort b-building__sort_style_asc">Стоимость, ₽</a> </td> <td class="col-bg-5 col-xlg-4 b-building__with-link"></td> </tr> </thead> <tbody> </tbody> </table> </form> </div> </div> </div> <div id="mw-uniq-genplan" data-js-modalWindow="true" class="genplanPopover modal modal--isGenplan isInvisible fancybox__content"> </div> <div class="row b-search__seo-block j-search-seo b-typo-reset isMt16"> <!--TODO сделать миграцию--> <p> Не хотите долго ждать новоселья — купите квартиру от «ЛСР. Недвижимость — СЗ» со сроком сдачи в 2024 году. В каталоге есть предложения продажи студий, одно- и многокомнатных квартир в строящихся ЖК Санкт-Петербурга с разными сроками сдачи. Выбирайте понравившуюся квартиру и бронируйте онлайн — сервис доступен круглосуточно. </p> <div class="h2">Условия покупки</div> <p> Купить квартиру в новостройке со сроком сдачи в 2024 году можно с полным расчетом или в ипотеку. Мы работаем с ведущими банками и поддерживаем все типы ипотечных программ. Дополнительно для наших клиентов действуют акции от застройщика: кешбэк, скидка при покупке жилой недвижимости клиентами из других городов, трейд-ин и другие предложения. </p> <p> Используйте фильтры, чтобы подобрать квартиру в ЖК, который будет сдан в 2024 году, выбрать вариант отделки, задать параметры поиска по цене и количеству комнат. </p> <p> ЛСР — это рациональные планировки, высокое качество жилой недвижимости, экологичность и эргономика, которые создают новый формат комфорта. Оставьте заявку на обратный звонок, мы перезвоним и ответим на любые вопросы. </p> </div> </div> </div> </section> <!-- lsrtodo: другие предложения --> <div class="j-search-result-similar"> </div> <div class="isFullWidth isFlexRow isJustifyContentCenter"> <button draggable="false" type="button" class="btn btn--isFitContent btn--isFilterAbsolute btn--isSizeLarge" data-js-stickyElement="" data-js-modal-open="" href="#mw-paramSearch"> <span class="btn__label">Фильтры</span> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-equalizer"></use> </svg> </span> </span> </button> </div> </div> </div> </main> <div class="pageLayout__footer"> <footer class="footer"> <div class="container"> <div class="footer__container"> <div class="footer__topRow"> </div> <div class="footer__middleRow"> <div class="footer__middleRowNav"> <div class="footer__logoLsrWrapper"> <a class="logo logo--isSecondary" rel="home" href="/spb/"> <img class="logo__img" src="/frontend/build/assets/images/logos/lsr.svg" alt="Логотип" width="87" height="28" loading="lazy" decoding="async" /> </a> </div> <div class="footer__menuBtnWrapper"> <a href="/spb/zhilye-kompleksy/" class="btn btn--isDark btn--isSizeMedium " title="Объекты"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-building"></use> </svg> </span> </span> <span class="btn__label">Объекты</span> </a> </div> <div class="footer__navWrapper"> <nav class="nav nav--isPrimary"> <ul class="nav__list"> <li class="nav__item"> <a href="/spb/o_kompanii/" class="btn btn--isLink btn--isSizeMedium " title="О нас"> <span class="btn__label">О нас</span> </a> </li> <li class="nav__item"> <a href="/spb/novosti/" class="btn btn--isLink btn--isSizeMedium " title="Новости"> <span class="btn__label">Новости</span> </a> </li> <li class="nav__item"> <a href="/spb/usloviya-pokupki/" class="btn btn--isLink btn--isSizeMedium " title="Как купить"> <span class="btn__label">Как купить</span> </a> </li> <li class="nav__item"> <a href="/spb/kachestvo/" class="btn btn--isLink btn--isSizeMedium " title="Квартирономика"> <span class="btn__label">Квартирономика</span> </a> </li> <li class="nav__item"> <a href="/spb/offers/" class="btn btn--isLink btn--isSizeMedium " title="Акции"> <span class="btn__label">Акции</span> </a> </li> <li class="nav__item"> <a href="/spb/kontakty/" class="btn btn--isLink btn--isSizeMedium " title="Контакты"> <span class="btn__label">Контакты</span> </a> </li> <li class="nav__item"> <a href="/spb/online/" class="btn btn--isLink btn--isSizeMedium btn--isOnline " title="Онлайн"> <span class="btn__label">Онлайн</span> </a> </li> <li class="nav__item"> <a href="/spb/dolshchikam/" class="btn btn--isLink btn--isSizeMedium " title="Дольщикам"> <span class="btn__label">Дольщикам</span> </a> </li> </ul> </nav> </div> <div class="footer__telWrapper"> <a href="tel:88003250101" class="btn btn--isPrimaryLink btn--isSizeMedium"> <span class="btn__label">8 (800) 325-01-01</span> </a> </div> <div class="footer__feedbackBtnWrapper"> <a href="#message_form" class="btn btn--isSizeLarge" data-js-modal-open=""> <span class="btn__label">Напишите нам</span> </a> </div> </div> <div class="footer__middleRowMenu"> <div class="footer__middleRowMenuLinks"> <div id="footerCityLinkWrapper" class="footer__cityLinkWrapper"> <div class="popover popover--isMinWidth200" data-js-Popover='{"placement":"bottom-start","events":["click"],"offset":{"mainAxis":16,"crossAxis":0,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":false}'> <button draggable="false" type="button" class="btn btn--isLink btn--isSizeAuto" data-js-PopoverToggleBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-navigation"></use> </svg> </span> </span> <span class="btn__label">Санкт-Петербург</span> </button> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <div class="cityList"> <ul class="cityList__list"> <li class="cityList__item"> <a href="/spb/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium isDisabled" data-js-PopoverCloseEl="true"> <span class="btn__label">Санкт-Петербург</span> </a> </li> <li class="cityList__item"> <a href="/msk/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium " data-js-PopoverCloseEl="true"> <span class="btn__label">Москва</span> </a> </li> <li class="cityList__item"> <a href="/ekb/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isCityLink btn--isSizeMedium " data-js-PopoverCloseEl="true"> <span class="btn__label">Екатеринбург</span> </a> </li> </ul> </div> </div> </div> </div> <p class="footer__information"> <span class="footer__informationText">Проектные декларации и подлежащая раскрытию информация о застройщике и проектах строительства размещены на сайте ЕИСЖС</span> <a href="https://xn--80az8a.xn--d1aqf.xn--p1ai/" rel="nofollow" target="_blank" class="btn btn--isSecondaryLink btn--isInformationLink btn--isSizeMedium "> <span class="btn__label"> наш.дом.рф.</span> </a> </p> <div class="footer__copyrightWrapper"> <span class="footer__copyright">© 2024, Группа ЛСР. <br />Все права защищены. </span> </div> <div class="footer__logoIdaWrapper"> <div class="logo logo--isTertiary"> <img class="logo__img" src="/frontend/build/assets/images/logos/ida-project.svg" alt="Логотип" width="100" height="28" loading="lazy" decoding="async" /> </div> <span class="footer__logoIdaMotto">Лучшие цифровые <br />продукты для недвижимости </span> </div> </div> <div id="accordionGroup0" class="footer__middleRowMenuSections"> <div class="accordion accordion--isSecondary" data-js-accordion="{"> <div class="accordion__summary" data-js-accordionsummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Условия покупки</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-accordionbtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-accordioncontent=""> <div class="accordion__contentInner"> <ol class="footer__sectionLinkList"> <li class="footer__sectionItem"> <a href="/spb/usloviya-pokupki/ipoteka/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Рассрочка"> <span class="btn__label">Ипотека</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/usloviya-pokupki/rassrochka-na-gotovye-kvartiry/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Рассрочка"> <span class="btn__label">Рассрочка</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/usloviya-pokupki/100-oplata/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="100% оплата"> <span class="btn__label">100% оплата</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/usloviya-pokupki/materinskii-kapital/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Материнский капитал"> <span class="btn__label">Материнский капитал</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/usloviya-pokupki/voennaya-ipoteka/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Военная ипотека"> <span class="btn__label">Военная ипотека</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/usloviya-pokupki/subsidii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Субсидии"> <span class="btn__label">Субсидии</span> </a> </li> </ol> </div> </div> </div> <div class="accordion accordion--isSecondary" data-js-accordion="{"> <div class="accordion__summary" data-js-accordionsummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Район</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-accordionbtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-accordioncontent=""> <div class="accordion__contentInner"> <ol class="footer__sectionLinkList"> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/admiraltejskij/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Адмиралтейский"> <span class="btn__label">Адмиралтейский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/vasileostrovskiy/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Василеостровский"> <span class="btn__label">Василеостровский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/vsevolozhskij/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Всеволожский"> <span class="btn__label">Всеволожский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/krasnogvardeiskii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Красногвардейский"> <span class="btn__label">Красногвардейский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/krasnoselskii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Красносельский"> <span class="btn__label">Красносельский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/moskovskii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Московский"> <span class="btn__label">Московский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/nevskii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Невский"> <span class="btn__label">Невский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/petrogradskii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Петроградский"> <span class="btn__label">Петроградский</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/pushkinskiy/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Пушкинский"> <span class="btn__label">Пушкинский</span> </a> </li> </ol> </div> </div> </div> <div class="accordion accordion--isSecondary" data-js-accordion="{"> <div class="accordion__summary" data-js-accordionsummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Метро</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-accordionbtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-accordioncontent=""> <div class="accordion__contentInner"> <ol class="footer__sectionLinkList"> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-avtovo/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Автово"> <span class="btn__label">Автово</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-akademicheskaya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Академическая"> <span class="btn__label">Академическая</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-baltijskaja/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Балтийская"> <span class="btn__label">Балтийская</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-grazhdanskiy-prospekt/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Гражданский проспект"> <span class="btn__label">Гражданский проспект</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-zvezdnaya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Звездная"> <span class="btn__label">Звездная</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-krestovskij-ostrov/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Крестовский остров"> <span class="btn__label">Крестовский остров</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-leninskij-prospekt/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Ленинский проспект"> <span class="btn__label">Ленинский проспект</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-moskovskaya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Московская"> <span class="btn__label">Московская</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-primorskaya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Приморская"> <span class="btn__label">Приморская</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-sportivnaya/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Спортивная"> <span class="btn__label">Спортивная</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-ulica-dybenko/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Улица Дыбенко"> <span class="btn__label">Улица Дыбенко</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/metro-tekhnologicheskij-institut/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Технологический институт"> <span class="btn__label">Технологический институт</span> </a> </li> </ol> </div> </div> </div> <div class="accordion accordion--isSecondary" data-js-accordion="{"> <div class="accordion__summary" data-js-accordionsummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Комнатность</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-accordionbtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-accordioncontent=""> <div class="accordion__contentInner"> <ol class="footer__sectionLinkList"> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/studii/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Студии"> <span class="btn__label">Студии</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/1-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="1-комнатные"> <span class="btn__label">1-комнатные</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/2-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="2-комнатные"> <span class="btn__label">2-комнатные</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/3-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="3-комнатные"> <span class="btn__label">3-комнатные</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/4-komnatnye/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="4-комнатные"> <span class="btn__label">4-комнатные</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Все квартиры"> <span class="btn__label">Все квартиры</span> </a> </li> </ol> </div> </div> </div> <div class="accordion accordion--isSecondary" data-js-accordion="{"> <div class="accordion__summary" data-js-accordionsummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Готовность</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-accordionbtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-accordioncontent=""> <div class="accordion__contentInner"> <ol class="footer__sectionLinkList"> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/sdannye-doma/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Готовые"> <span class="btn__label">Готовые</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/stroyaschiesya-doma/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Строящиеся"> <span class="btn__label">Строящиеся</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/2024/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Сдаются в 2024"> <span class="btn__label">Сдаются в 2024</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/2025/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Сдаются в 2025"> <span class="btn__label">Сдаются в 2025</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/2026plus/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Сдаются в 2026 и позже"> <span class="btn__label">Сдаются в 2026 и позже</span> </a> </li> </ol> </div> </div> </div> <div class="accordion accordion--isSecondary" data-js-accordion="{"> <div class="accordion__summary" data-js-accordionsummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Отделка</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-accordionbtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-accordioncontent=""> <div class="accordion__contentInner"> <ol class="footer__sectionLinkList"> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/s-otdelkoi/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Квартиры с отделкой"> <span class="btn__label">Квартиры с отделкой</span> </a> </li> </ol> </div> </div> </div> <div class="accordion accordion--isSecondary" data-js-accordion="{"> <div class="accordion__summary" data-js-accordionsummary=""> <span class="accordion__summaryInner"> <span class="accordion__title">Класс</span> <button draggable="false" type="button" class="btn btn--isAccordion btn--isBlank btn--isOnlyIcon btn--isSizeMedium" data-js-accordionbtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeAuto"> </span> </span> </button> </span> </div> <div class="accordion__content" data-js-accordioncontent=""> <div class="accordion__contentInner"> <ol class="footer__sectionLinkList"> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/komfort-class/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="ЖК комфорт-класса"> <span class="btn__label">ЖК комфорт-класса</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/biznes-class/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="ЖК бизнес-класса"> <span class="btn__label">ЖК бизнес-класса</span> </a> </li> <li class="footer__sectionItem"> <a href="/spb/kvartiry-v-novostroikah/elitnye-doma/" class="btn btn--isSecondaryLink btn--isSectionLink btn--isSizeMedium " title="Элитная недвижимость"> <span class="btn__label">Элитная недвижимость</span> </a> </li> </ol> </div> </div> </div> </div> <br> </div> </div> <div class="footer__bottomRow"> <div class="socialLinkSlider"> <div class="slider"> <div class="slider__container swiper socialLinkSliderContainer" data-js-slider=""> <div class="slider__wrapper swiper-wrapper"> <div class="slider__slide swiper-slide socialLinkSlider__apps"> <p class="socialLinkSlider__heading">Скачайте приложение по ссылке или QR</p> <ol class="socialLinkSlider__linkList"> <li class="socialLinkSlider__linkItem"> <div class="appLink"> <div class="popover popover--isSquare" data-js-Popover="{"placement":"left","events":["click"],"offset":{"mainAxis":-75,"crossAxis":-30,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":false,"mq":"min-width:641px"}"> <a class="btn btn--isHollow btn--isSizeAuto" href="https://play.google.com/store/apps/details?id=ru.lsr.android" data-js-PopoverToggleBtn="true" title="Доступно в Google Play"> <div class="appLink__btnContainer"> <div class="appLink__btnImgContainer"> <img class="appLink__storeImg" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/logos/google-play.svg" width="18" height="22" /> <img class="appLink__StoreLabel" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/google-play-link.svg" width="60" height="18" /> </div> <img class="appLink__storeQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code.jpg" width="36" height="40" /> </div> </a> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <img class="appLink__storeFullQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code-full.jpg" width="144" height="144" /> </div> </div> </div> </li> <li class="socialLinkSlider__linkItem"> <div class="appLink"> <div class="popover popover--isSquare" data-js-Popover="{"placement":"left","events":["click"],"offset":{"mainAxis":-75,"crossAxis":-30,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":false,"mq":"min-width:641px"}"> <a class="btn btn--isHollow btn--isSizeAuto" href="https://apps.apple.com/ru/app/%D0%BB%D1%81%D1%80/id1474955418" data-js-PopoverToggleBtn="true" title="Доступно в App Store"> <div class="appLink__btnContainer"> <div class="appLink__btnImgContainer appLink__btnImgContainer--isLinkSlider"> <img class="appLink__storeImg" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/logos/appstore.svg" width="18" height="22" /> <img class="appLink__StoreLabel" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/appstore-link.svg" width="60" height="18" /> </div> <img class="appLink__storeQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code.jpg" width="36" height="40" /> </div> </a> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <img class="appLink__storeFullQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code-full.jpg" width="144" height="144" /> </div> </div> </div> </li> <li class="socialLinkSlider__linkItem"> <div class="appLink"> <div class="popover popover--isSquare" data-js-Popover="{"placement":"left","events":["click"],"offset":{"mainAxis":12,"crossAxis":-30,"alignmentAxis":0},"flip":{"fallbackAxisSideDirection":"start"},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":false,"mq":"min-width:641px"}"> <a class="btn btn--isHollow btn--isSizeAuto" href="https://www.rustore.ru/catalog/app/ru.lsr.android" data-js-PopoverToggleBtn="true" title="Доступно в RuStore"> <div class="appLink__btnContainer"> <div class="appLink__btnImgContainer appLink__btnImgContainer--isLinkSlider"> <img class="appLink__storeImg" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/logos/rustor.svg" width="18" height="18" /> <img class="appLink__StoreLabel" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/rustore-link.svg" width="76" height="18" /> </div> <img class="appLink__storeQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code.jpg" width="36" height="40" /> </div> </a> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <img class="appLink__storeFullQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code-full.jpg" width="144" height="144" /> </div> </div> </div> </li> </ol> </div> <div class="slider__slide swiper-slide"> <div class="applicationLinkForm" data-js-ApplicationLinkForm='{"csrfUrl":"/ajax/csrf.php"}'> <form autoComplete="off" class="form" id="appForm" data-js-form='{"url":"/ajax/app.php","method":"POST","isLiveValidation":true,"isOpenErrorModal":true}' novalidate="" action="/ajax/app.php"> <div class="form__header"> <p class="applicationLinkForm__heading"> <span class="applicationLinkForm__headingText applicationLinkForm__headingText--isInactive"> Получите ссылку на приложение в СМС</span> <span class="applicationLinkForm__headingText applicationLinkForm__headingText--isActive"> Ссылка отправлена! Проверьте сообщения</span> </p> </div> <div class="form__body"> <div class="form__row form__row--isFirstRow form__row--isColumns-2"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isHidden"> <input class="formInput" id="field0" name="message_bot" type="email" autoComplete="off" inputMode="email" data-js-ApplicationLinkFormEmailInput="true" value="" /> <input id="csrf" name="csrf" type="hidden" tabindex="-1" value="a979bc85af8c9f4767ab237869abcba3" /> </div> <div data-js-form-block="" class="form__block"> <label title="Телефон" class="formLabel formLabel--isHidden formLabel--isRequired"> <span class="formLabel__label">Телефон</span> </label> <input class="formInput formInput--isHeight40" id="field1" name="phone" type="tel" placeholder="+7 (000) 000-00-00" required="" autoComplete="tel" data-js-input-required="phone" title="Номер должен начинаться с +7 (9...) и содержать 10 цифр" inputMode="tel" data-js-InputMask="phone" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isCustomPrimary btn--isRound btn--isSubmitBtn btn--isOnlyIcon btn--isSizeLarge" data-js-ApplicationLinkFormSubmitBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-page-next"></use> </svg> </span> </span> </button> </div> </div> </div> <div class="form__row form__row--isSecondRow form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="button" class="btn btn--isCustomPrimary btn--isFullWidth btn--isRetryBtn btn--isSizeLarge" data-js-ApplicationLinkFormRetryBtn="true"> <span class="btn__label">Ввести номер заново</span> </button> </div> </div> </div> </div> </form> </div> </div> <div class="slider__slide slider__slide--isPrimary swiper-slide"> <p class="socialLinkSlider__heading"> <span class="socialLinkSlider isColorAlizarinCrimson">Подписывайтесь </span> <span>на нас в социальных сетях</span> </p> <div class="socialLinkSlider__sliderContainer"> <ul class="socialLinkList"> <li class="socialLinkList__item" title="Вк Сбп"> <a href="https://vk.com/lsr.petersburg" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/126/pmlj9a5sdjfhd30kpmztls6x94f6kuss/VK.com-logo 1.svg" alt="Вк Сбп" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Youtube Спб"> <a href="https://www.youtube.com/user/lsrestate" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/bad/8fmqugwc2obnux5bvrlawg8htsr2bl60/YouTube_Logo_2017 1.svg" alt="Youtube Спб" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Телеграм Спб"> <a href="https://t.me/lsr_spb" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/9c5/2jxk4osym7w82ym3zs9odil33ypknpm8/telega-round.svg" alt="Телеграм Спб" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Дзен СПБ"> <a href="https://dzen.ru/lsrspb " target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/700/z06yn8jpesvb82p6ry3nvz1t3wn6yny4/Yandex_Zen_logo_icon_Good.svg" alt="Дзен СПБ" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> <li class="socialLinkList__item" title="Одноклассники СПб"> <a href="https://ok.ru/lsr.petersburg" target="_blank" class="btn btn--isWidthIcon btn--isRound btn--isOutline btn--isSizeLarge "> <img class="socialLinkList__img" src="/upload/kelnik.icons/bbe/k73czm2hnv63lpqgubevderuxk5zphkk/Odnoklassniki.svg" alt="Одноклассники СПб" width="16" height="16" loading="lazy" decoding="async" /> </a> </li> </ul> <span class="icon icon--isColorAlizarinCrimson icon--isSizeMax"> <svg class="icon__src"> <use href="#icon-message"></use> </svg> </span> </div> </div> </div> </div> </div> </div> </div> </div> </div> <div id="appPopup" class="modal modal--isCustomPadding3 modal--isForm isDisplayNone" data-js-modal=""> <div class="isCustomH4 isHiddenMobile isMb16 isTextCentered">Больше возможностей <br />в мобильном приложении </div> <div class="isCustomH4 isVisibleMobile isMb24 isTextCentered">Больше <br />возможностей <br />в приложении </div> <ul class="isTextCentered ul"> <li>удобный поиск</li> <li>запись к менеджеру на консультацию</li> <li>запись на экскурсию на объект</li> </ul> <div class="isColorWildSandBg isBorderRadius16 isP24 isMb16 isMtAuto"> <p class="label l2 isMb32 bold isHiddenMobile">Скачивайте приложение по ссылке или QR</p> <p class="label l2 isMb32 bold isVisibleMobile">Скачивайте приложение по ссылке</p> <div class="flexFlow flexFlow--isGap8"> <div class="flexFlow__item flexFlow__item--isOnTabletFlexGrow"> <div class="appLink appLink--isPopup"> <div class="popover popover--isSquare" data-js-Popover='{"placement":"left","events":["click"],"offset":{"mainAxis":0,"crossAxis":-30,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":false}'> <button draggable="false" type="button" class="btn btn--isHollow btn--isSizeAuto" data-js-PopoverToggleBtn="true"> <div class="appLink__btnContainer"> <div class="appLink__btnImgContainer"> <img class="appLink__storeImg" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/logos/google-play.svg" width="18" height="22" /> <img class="appLink__StoreLabel" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/google-play-link.svg" width="60" height="18" /> </div> <img class="appLink__storeQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code.jpg" width="36" height="40" /> </div> </button> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <img class="appLink__storeFullQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code-full.jpg" width="144" height="144" /> </div> </div> </div> </div> <div class="flexFlow__item flexFlow__item--isOnTabletFlexGrow"> <div class="appLink appLink--isPopup"> <div class="popover popover--isSquare" data-js-Popover='{"placement":"left","events":["click"],"offset":{"mainAxis":0,"crossAxis":-30,"alignmentAxis":0},"arrowPadding":16,"arrowSize":"28px","isToggleBtnLabelChange":false}'> <button draggable="false" type="button" class="btn btn--isHollow btn--isSizeAuto" data-js-PopoverToggleBtn="true"> <div class="appLink__btnContainer"> <div class="appLink__btnImgContainer appLink__btnImgContainer--isLinkSlider"> <img class="appLink__storeImg" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/logos/appstore.svg" width="18" height="22" /> <img class="appLink__StoreLabel" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/appstore-link.svg" width="60" height="18" /> </div> <img class="appLink__storeQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code.jpg" width="36" height="40" /> </div> </button> <div class="popover__container" data-js-PopoverContainer=""> <div class="popover__arrow" data-js-PopoverArrow=""></div> <img class="appLink__storeFullQr" loading="lazy" decoding="async" alt="" src="/frontend/build/assets/images/social-links/qr-code-full.jpg" width="144" height="144" /> </div> </div> </div> </div> </div> </div> <div class="isColorWildSandBg isBorderRadius16 isP24"> <div class="applicationLinkForm" data-js-ApplicationLinkForm=""> <form autoComplete="off" class="form" id="appForm" data-js-form='{"url":"/ajax/app.php","method":"POST","isLiveValidation":true,"isOpenErrorModal":true}' novalidate="" action="/ajax/app.php"> <input type="hidden" name="csrf" value="a979bc85af8c9f4767ab237869abcba3"> <div class="form__header"> <p class="applicationLinkForm__heading"> <span class="applicationLinkForm__headingText applicationLinkForm__headingText--isInactive"> Получите ссылку на приложение в СМС</span> <span class="applicationLinkForm__headingText applicationLinkForm__headingText--isActive"> Ссылка отправлена! Проверьте сообщения</span> </p> </div> <div class="form__body"> <div class="form__row form__row--isFirstRow form__row--isColumns-2"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isHidden"> <input class="formInput" id="field0" name="message_bot" type="email" autoComplete="off" inputMode="email" data-js-ApplicationLinkFormEmailInput="true" value="" /> </div> <div data-js-form-block="" class="form__block"> <label title="Телефон" class="formLabel formLabel--isHidden formLabel--isRequired" for="field1"> <span class="formLabel__label">Телефон</span> </label> <input class="formInput formInput--isHeight40" id="field1" name="phone" type="tel" placeholder="+7 (000) 000-00-00" required="" autoComplete="tel" data-js-input-required="phone" title="Номер должен начинаться с +7 (9...) и содержать 10 цифр" inputMode="tel" data-js-InputMask="phone" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isCustomPrimary btn--isRound btn--isSubmitBtn btn--isOnlyIcon btn--isSizeLarge" data-js-ApplicationLinkFormSubmitBtn="true"> <span class="btn__icon"> <span class="icon icon--isSizeSmall"> <svg class="icon__src"> <use href="#icon-page-next"></use> </svg> </span> </span> </button> </div> </div> </div> <div class="form__row form__row--isSecondRow form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="button" class="btn btn--isCustomPrimary btn--isFullWidth btn--isRetryBtn btn--isSizeLarge" data-js-ApplicationLinkFormRetryBtn="true"> <span class="btn__label">Ввести номер заново</span> </button> </div> </div> </div> </div> </form> </div> </div> </div> <div id="cmcallckform" class="comagicCallbackForm" data-js-comagiccallbackform='{"dataLayer":{"successSubmit":"flatSuccessTransaction"}}'></div> </footer> </div> <div class="overlay" role="presentation" data-js-Overlay=""></div> <div class="cookieConsent" data-js-cookieConsent='{}'> <p class="cookieConsent__text label isAdaptiveOnTabletL1">Мы используем файлы cookie, чтобы улучшить работу сайта и его удобство. <br />Продолжая использовать сайт lsr.ru, вы соглашаетесь на использование файлов cookie </p> <button draggable="false" type="button" class="btn btn--isDark btn--isWidthFitContent3 btn--isCookieConsentCloseBtn btn--isSizeLarge" data-js-cookieConsentCloseBtn=""> <span class="btn__label">Хорошо</span> </button> </div> </div> <div id="message_form" class="modal modal--isCustomPadding3 modal--isForm isDisplayNone" data-js-modal='{"bubbleAfterClose":"popupForm::close","bubbleAfterDone":"popupForm::open"}'> <form autoComplete="off" class="form form--isFullHeight form--isPositionRelative" id="messageForm" data-js-form='{"url":"/ajax/requests/message.php","method":"post","isLiveValidation":true}' novalidate="" action="/ajax/requests/message.php" data-js-DynamicForm='{"hash":"message","csrfUrl":"/ajax/csrf.php","activeStep":"0","steps":{"0":{"id":"0","successId":"2","errorId":"1"},"1":{"id":"1","closeReset":"form"},"2":{"id":"2","dataLayerCase":"flatSuccessTransaction","closeReset":"form","timer":{"time":3,"action":"close"}}}}'> <div class="form__body"> <div class="flexFlow flexFlow--isGap32 flexFlow--isFlexDirectionColumn flexFlow--isAlignItemsStretch flexFlow--isFullHeight"> <div class="flexFlow__item flexFlow__item--isFlexGrow isFlexColumn isFlexGrow isMbAuto isOverflowXauto"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isCustomH4 isTextCentered">Напишите нам</div> </div> </div> </div> <div class="isFlexGrow" data-js-DynamicFormStep="0"> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="ФИО полностью" class="formLabel formLabel--isFontSize13" for="name"> <span class="formLabel__label">ФИО полностью</span> </label> <input class="formInput" id="name" name="name" type="text" placeholder="Введите ФИО" required="" autoComplete="name" data-js-input-required="true" title="Введите ФИО" inputMode="text" data-js-InputMask="fullName" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Телефон" class="formLabel formLabel--isFontSize13" for="tel"> <span class="formLabel__label">Телефон</span> </label> <input class="formInput" id="tel" name="phone" type="tel" placeholder="+7 (000) 000-00-00" required="" autoComplete="off" data-js-input-required="phone" title="Телефон" data-js-InputMask="phone" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Электронная почта" class="formLabel formLabel--isFontSize13" for="email"> <span class="formLabel__label">Электронная почта</span> </label> <input class="formInput" id="email" name="email" type="email" placeholder="mail@example.com" required="" autoComplete="email" data-js-input-required="email" title="Введите адрес электронной почты" inputMode="email" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Сообщение (необязательно)" class="formLabel formLabel--isFontSize13" for="msg"> <span class="formLabel__label">Сообщение (необязательно)</span> </label> <textarea class="formInput" id="msg" name="message" placeholder="Сообщение (необязательно)" autoComplete="off" title="Сообщение (необязательно)"></textarea> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div data-js-Captcha=""> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isWithCaptcha"> <label title="Код с картинки" class="formLabel" for="captchaText"> <span class="formLabel__label">Код с картинки</span> </label> <input id="captchaKey" name="captchaKey" type="hidden" tabindex="-1" data-js-CaptchaKey="" value="123456" /> <input class="formInput" id="captchaText" name="captchaText" type="text" placeholder="0 0 0 0" required="" autoComplete="off" data-js-input-required="true" title="Введите капчу с изображения" inputMode="text" data-js-InputMask="captcha" data-js-CaptchaText="" value="" /> <img class="isCaptchaImg" src="" width="80" height="48" loading="lazy" decoding="async" alt="Код с картинки" data-js-CaptchaImg="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> </div> <div class="form__row form__row--isHidden form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <input id="site" name="site" type="hidden" tabindex="-1" value="/spb" /> <input id="link" name="link" type="hidden" tabindex="-1" value="/spb/kvartiry-v-novostroikah/2024/" /> <input id="csrf" name="csrf" type="hidden" tabindex="-1" value="a979bc85af8c9f4767ab237869abcba3" /> </div> </div> </div> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="2"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered h2">Заявка отправлена. <br />Мы скоро свяжемся <br />с вами </div> </div> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="1"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered">Что-то пошло не так... <br />Попробуйте отправить <br />форму ещё раз </div> </div> </div> </div> <div class="flexFlow__item"> <div data-js-DynamicFormStep="0"> <div class="form__row form__row--isMb24 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label class="isVisuallyHidden" for="extra[3]"> <span class="isVisuallyHidden__label">Согласие на обработку персональных данных </span> </label> <label class="checkbox checkbox--isALignItemsCenter checkbox--isRequired"> <input class="checkbox__input" id="extra[3]" name="extra[3]" type="checkbox" tabindex="-1" required="" autoComplete="off" data-js-input-required="checkbox" value="on" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label"> Я даю <a class="btn btn--isCustomPrimaryLink btn--isPrivatePolicyLink btn--isWrap" href="https://privacy.lsr.ru/doc/000000004/soglasie" target="_blank">согласие на обработку моих персональных данных</a> и подтверждаю, что ознакомился с <a class="btn btn--isCustomPrimaryLink btn--isPrivatePolicyLink btn--isWrap" href="https://privacy.lsr.ru/doc/000000004/privacy" target="_blank">Политикой в отношении обработки персональных данных в «ЛСР. Недвижимость-Северо-Запад, ООО» </a> и <a class="btn btn--isCustomPrimaryLink btn--isPrivatePolicyLink btn--isWrap" href="https://privacy.lsr.ru/doc/000000004/sved" target="_blank">сведениями о реализуемых требованиях к защите персональных данных</a> </span> </label> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isSizeLarge"> <span class="btn__label">Отправить</span> </button> </div> </div> </div> </div> <div class="isInvisible isTextCentered" data-js-DynamicFormStep="2"> <span class="label l2">Форма автоматически закроется <span class="isColorAlizarinCrimson"> через <span data-js-DynamicFormTimer="2"></span>...</span> </span> </div> <div class="isInvisible" data-js-DynamicFormStep="1"> <button draggable="false" type="button" class="btn btn--isSizeLarge" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Отправить ещё раз</span> </button> </div> </div> </div> </div> </form> </div> <noscript> <div class="noScriptWarning">Please turn on JavaScript.</div> </noscript> <div id="userEntryForm" class="modal modal--isCustomPadding3 modal--isForm isDisplayNone" data-js-modal='{"bubbleAfterClose":"popupForm::close","bubbleAfterDone":"popupForm::open"}'> <form autoComplete="off" class="form form--isFullHeight form--isPositionRelative" data-js-form='{"url":"/ajax/lk.php","method":"POST","isLiveValidation":true}' novalidate="" action="/ajax/lk.php" data-js-DynamicForm='{"csrfUrl":"/ajax/csrf.php","hash":"authorization_client","activeStep":"0","steps":{"0":{"id":"0","closeReset":"form","isValidateBeforeNextStep":true,"errorId":"1","dataLayerCaseSuccess":"authorizationClientFormSuccess","successId":"0","timer":{"time":0,"action":"redirect"}},"1":{"id":"1","closeReset":"form"}}}'> <div class="form__body"> <div class="flexFlow flexFlow--isGap32 flexFlow--isFlexDirectionColumn flexFlow--isAlignItemsStretch flexFlow--isFullHeight"> <div class="flexFlow__item flexFlow__item--isFlexGrow isFlexColumn isFlexGrow isMbAuto isOverflowXauto isPrD24T12M16"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isCustomH4 isTextCentered">Войти</div> </div> </div> </div> <div class="isFlexGrow" data-js-DynamicFormStep="0"> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Телефон" class="formLabel" for="phone"> <span class="formLabel__label">Телефон</span> </label> <input class="formInput" id="login" name="login" type="tel" placeholder="+7 (000) 000-00-00" required="" autoComplete="tel" data-js-input-required="phone" title="Номер должен начинаться с +7 (9...) и содержать 10 цифр" inputMode="tel" data-js-InputMask="phone" data-js-DynamicFormInput="login" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isMb16 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Пароль" class="formLabel" for="password"> <span class="formLabel__label">Пароль</span> </label> <input class="formInput" id="password" name="password" type="password" placeholder="XXXXXXXX" required="" autoComplete="password" data-js-input-required="password" title="Введите свой пароль" inputMode="password" data-js-InputMask="password" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <a href="#recoveryPassword" class="btn btn--isCustomPrimaryLink btn--isFontWeight500 btn--isSizeAuto " data-js-modal-open='{"closeAll":true}'> <span>Забыли пароль?</span> </a> <p data-js-DynamicFormErrorTextEl="true"></p> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label class="checkbox checkbox--isALignItemsCenter checkbox--isChecked"> <input class="checkbox__input" id="remember" name="rememberMe" type="checkbox" tabindex="-1" autoComplete="off" checked="" value="on" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label">Запомнить меня</span> </label> </div> </div> </div> <div class="form__row form__row--isHidden form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <input id="action" name="action" type="hidden" tabindex="-1" value="authorization" /> <input id="__s" name="__s" type="hidden" tabindex="-1" value="" /> <input id="site" name="site" type="hidden" tabindex="-1" value="/spb" /> <input type="hidden" name="csrf" value="a979bc85af8c9f4767ab237869abcba3"> </div> </div> </div> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="1"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered">Не удалось войти <br />что-то пошло не так... <br />Попробуйте отправить <br />форму ещё раз </div> </div> </div> </div> <div class="flexFlow__item isPrD24T12M16 isOnMobileSmallMinlineNegative12"> <div data-js-DynamicFormStep="0"> <div class="form__row form__row--isGap8 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isSizeLarge"> <span class="btn__label">Войти</span> </button> </div> </div> </div> <div class="isTextCentered"> <span>Нет аккаунта? </span> <a role="button" href="#register" class="btn btn--isCustomPrimaryLink btn--isFontWeight500 btn--isSizeAuto" data-js-modal-open='{"closeAll":true}'> <span>Зарегистрируйтесь</span> </a> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="1"> <button draggable="false" type="button" class="btn btn--isSizeLarge" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Отправить ещё раз</span> </button> </div> </div> </div> </div> </form> </div> <div id="recoveryPassword" class="modal modal--isCustomPadding3 modal--isForm isDisplayNone" data-js-modal='{"bubbleAfterClose":"popupForm::close","bubbleAfterDone":"popupForm::open"}'> <form id="recoveryPasswordForm" autoComplete="off" class="form form--isFullHeight form--isPositionRelative" data-js-form='{"url":"/ajax/lk.php","method":"post","isLiveValidation":true,"validateOnlySelector":"[data-js-DynamicFormStep].isVisible"}' novalidate="" data-js-DynamicForm='{"csrfUrl":"/ajax/csrf.php","activeStep":"0","steps":{"0":{"id":"0","closeReset":"form","isValidateBeforeNextStep":true,"successId":"1","errorInputId":"login","errorId":"4"},"1":{"id":"1","successId":"2","errorId":"4","closeReset":"form"},"2":{"id":"2","successId":"3","errorId":"4","closeReset":"form"},"3":{"dataLayerCase":"recoveryPasswordFormSuccess","id":"3","closeReset":"form","timer":{"time":3,"action":"close"}},"4":{"id":"4","closeReset":"form"}}}'> <div class="form__body"> <div class="flexFlow flexFlow--isGap32 flexFlow--isFlexDirectionColumn flexFlow--isAlignItemsStretch flexFlow--isFullHeight"> <div class="flexFlow__item flexFlow__item--isFlexGrow isFlexColumn isFlexGrow isMbAuto isOverflowXauto isPrD24T12M16"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isCustom2H4 isTextCentered">Восстановление пароля</div> </div> </div> </div> <div class="isVisible isFlexGrow" data-js-DynamicFormStep="0"> <div class="isPlaceCenter isMtNegative20 isMb52 isTextCentered isPdline30"> <span>Укажите телефон или e-mail, на который зарегистрирован ваш аккаунт — мы вышлем ссылку на восстановление пароля.</span> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Телефон или email" class="formLabel" for="login"> <span class="formLabel__label">Телефон или email</span> </label> <input class="formInput" id="login" name="login" type="text" placeholder="+7 (000) 000-00-00 / mail@example.com" required="" autoComplete="tel" data-js-input-required="text" title="Номер должен начинаться с +7 (9...) и содержать 10 цифр" inputMode="text" data-js-DynamicFormInput="login" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason="default"> <span title="Вам придёт код для восстановления пароля" class="form__msgText">Вам придёт код для восстановления пароля</span> </div> <p class="dynamicFormError" data-js-DynamicFormErrorTextEl="true"></p> <div class="isColorAlizarinCrimson label l3 isDisplayNone" data-js-DynamicFormLimitTimerTextEl="">Следующий запрос можно отправить через:</div> </div> </div> </div> <div class="form__row form__row--isHidden form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <input type="hidden" name="action" value="resetPassword" /> <input type="hidden" name="csrf" value="a979bc85af8c9f4767ab237869abcba3" /> <input type="hidden" name="step" value="0" tabindex="-1" data-js-DynamicFormStepInput /> </div> </div> </div> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="1"> <div class="form__row form__row--isMb32 form__row--isMtNegative20 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isMinlineAuto isPlaceCenter isTextCentered text t2 isColorScorpion"> <div> <span>Код выслан на</span> <span data-js-DynamicFormPhoneTextEl="">+ 7 (900) 000-00-00</span> </div> <button draggable="false" type="button" class="btn btn--isPrimaryLink btn--isSizeAuto" title="Изменить номер" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Изменить номер</span> </button> </div> </div> </div> </div> <div class="isFlexGrow"> <div class="verificationCode" data-js-verificationCode='{"inputsQty":5,"formId":"recoveryPasswordForm"}'> <p class="verificationCode__label label l3">Введите код</p> <div class="verificationCode__inputsWrapper"> <input class="formInput formInput--isForNumbers" type="text" placeholder="1" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="2" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="3" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="4" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="5" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput" id="code" name="code" type="text" autoComplete="off" data-js-mainInput="" value="" /> </div> <p class="verificationCode__timerWrapper isInvisible">Новый код будет доступен <span class="verificationCode__timer" data-js-timer="">через 3...</span></p> <p class="verificationCode__error isInvisible" data-js-error="">Неверно введен код, запросите новый код</p> <div class="isColorAlizarinCrimson label l3 isMt16 isOnlyEmptyDisplayNone" data-js-DynamicFormErrorTextEl=""></div> </div> </div> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="2"> <div class="isPlaceCenter isMtNegative20 isMb32"> <span>Ваш <span data-js-DynamicFormPhoneTextEl="" data-js-DynamicFormEmailTextEl=""> </span> подтвержден</span> <button draggable="false" type="button" class="btn btn--isCustomPrimaryLink btn--isFontWeight500 btn--isSizeAuto" data-js-DynamicFormStepSelectionBtn="0">Изменить <span data-js-DynamicFormLabelTextEl="">номер</span> </button> </div> <div class="form__row form__row--isMb16 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Придумайте новый пароль" class="formLabel" for="password"> <span class="formLabel__label">Придумайте новый пароль</span> </label> <input class="formInput" id="password1" name="password" type="password" placeholder="XXXXXXXX" required="" autoComplete="off" data-js-input-required="password" title="Придумайте новый пароль" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason="default"> <span title="Пароль должен быть больше 6 символов, содержать буквы и цифры" class="form__msgText">Пароль должен быть больше 6 символов, содержать буквы и цифры</span> </div> </div> </div> </div> <div class="form__row form__row--isMb16 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Повторите пароль" class="formLabel" for="password"> <span class="formLabel__label">Повторите пароль</span> </label> <input class="formInput" id="password2" name="password_confirm" type="password" placeholder="XXXXXXXX" required="" autoComplete="off" data-js-input-required="passwordCompare" title="Повторите пароль" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> <div class="isColorAlizarinCrimson label l3 isMt16 isOnlyEmptyDisplayNone" data-js-DynamicFormErrorTextEl=""></div> </div> </div> </div> <input type="hidden" name="__s" value="" /> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="3"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered">Пароль успешно<br/>Восстановлен</div> </div> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="4"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered">Что-то пошло не так...<br/>Попробуйте отправить<br/>форму ещё раз</div> </div> </div> </div> <div class="flexFlow__item isPrD24T12M16 isOnMobileSmallMinlineNegative12"> <div class="isVisible" data-js-DynamicFormStep="0"> <div class="form__row form__row--isGap8 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isSizeLarge"> <span class="btn__label">Отправить</span> </button> </div> </div> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="1"> <div class="form__row form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="button" class="btn btn--isOutline btn--isSizeLarge" data-js-newCodeBtn=""> <span class="btn__label">Запросить новый код</span> </button> </div> </div> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="2"> <div class="form__row form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isOutline btn--isSizeLarge"> <span class="btn__label">Подтвердить</span> </button> </div> </div> </div> </div> <div class="isInvisible isTextCentered" data-js-DynamicFormStep="3"> <span class="label l2">Форма автоматически закроется <span class="isColorAlizarinCrimson"> через <span data-js-DynamicFormTimer="3"></span>...</span> </span> </div> <div class="isInvisible" data-js-DynamicFormStep="4"> <button draggable="false" type="button" class="btn btn--isSizeLarge" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Отправить ещё раз</span> </button> </div> </div> </div> </div> </form> </div> <div id="agentEntry" class="modal modal--isCustomPadding3 modal--isForm isDisplayNone" data-js-modal='{"bubbleAfterClose":"popupForm::close","bubbleAfterDone":"popupForm::open"}'> <form id="agentEntryForm" autoComplete="off" class="form form--isFullHeight form--isPositionRelative" data-js-form='{"url":"/ajax/lk_agency.php","method":"POST","isLiveValidation":true}' novalidate="" action="/ajax/lk_agency.php" data-js-DynamicForm='{"csrfUrl":"/ajax/csrf.php","hash":"authorization_client-agents","activeStep":"0","steps":{"0":{"id":"0","successId":"1","errorId":"2"},"1":{"id":"1","closeReset":"step","successId":"1","errorId":"2","dataLayerCaseSuccess":"authorizationAgentFormSuccessEntry","timer":{"time":0,"action":"redirect"}},"2":{"id":"2","closeReset":"form"}}}'> <div class="form__body"> <div class="flexFlow flexFlow--isGap32 flexFlow--isFlexDirectionColumn flexFlow--isAlignItemsStretch flexFlow--isFullHeight"> <div class="flexFlow__item flexFlow__item--isFlexGrow isFlexColumn isFlexGrow isMbAuto isOverflowXauto"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isCustomH4 isTextCentered">Войти</div> </div> </div> </div> <div class="isFlexGrow" data-js-DynamicFormStep="0"> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Телефон" class="formLabel" for="login"> <span class="formLabel__label">Телефон</span> </label> <input class="formInput" id="login" name="login" type="tel" placeholder="+7 (000) 000-00-00" required="" autoComplete="tel" data-js-input-required="phone" title="Номер должен начинаться с +7 (9...) и содержать 10 цифр" inputMode="tel" data-js-InputMask="phone" data-js-DynamicFormPhoneInput="" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason="info"> <span title="Вам придёт СМС с кодом для авторизации" class="form__msgText"> Вам придёт СМС с кодом для авторизации</span> </div> <p data-js-DynamicFormErrorTextEl="true"></p> </div> </div> </div> <input id="step" name="step" type="hidden" tabindex="-1" data-js-DynamicFormStepInput="" value="0" /> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="1"> <div class="form__row form__row--isMb32 form__row--isMtNegative20 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isMinlineAuto isPlaceCenter isTextCentered text t2 isColorScorpion"> <div> <span>Код выслан на</span> <span data-js-DynamicFormLoginTextEl="">+ 7 (900) 000-00-00</span> </div> <button draggable="false" type="button" class="btn btn--isPrimaryLink btn--isSizeAuto" title="Изменить номер" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Изменить номер</span> </button> </div> </div> </div> </div> <div class="isFlexGrow"> <div class="verificationCode" data-js-verificationCode='{"inputsQty":5,"formId":"agentEntryForm"}'> <p class="verificationCode__label label l3">Введите код</p> <div class="verificationCode__inputsWrapper"> <input class="formInput formInput--isForNumbers" type="text" placeholder="1" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="2" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="3" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="4" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="5" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput" id="code" name="code" type="text" autoComplete="off" data-js-mainInput="" value="" /> </div> <p class="verificationCode__timerWrapper isInvisible">Новый код будет доступен <span class="verificationCode__timer" data-js-timer="">через 3...</span> </p> <p class="verificationCode__error isInvisible" data-js-error="">Неверно введен код, запросите новый код</p> </div> <div class="isColorAlizarinCrimson label l3 isMt16 isOnlyEmptyDisplayNone" data-js-DynamicFormErrorTextEl=""></div> <div class="form__row form__row--isHidden form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <input id="action" name="action" type="hidden" tabindex="-1" value="authorization" /> <input id="csrf" name="csrf" type="hidden" tabindex="-1" value="a979bc85af8c9f4767ab237869abcba3" /> <input id="site" name="site" type="hidden" tabindex="-1" value="/spb"> <input js-cookie-input-hidden type="hidden" name="hash" value=""> </div> </div> </div> </div> </div> <div class="isInvisible isFlexGrow" data-js-DynamicFormStep="2"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered">Не удалось войти <br />что-то пошло не так... <br />Попробуйте отправить <br />форму ещё раз </div> </div> </div> </div> <div class="flexFlow__item isPrD24T12M16 isOnMobileSmallMinlineNegative12"> <div data-js-DynamicFormStep="0"> <div class="form__row form__row--isGap8 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isSizeLarge"> <span class="btn__label">Запросить код для входа</span> </button> </div> </div> </div> <div class="isTextCentered"> <span>Нет аккаунта? </span> <a href="https://partner.lsr.ru/" class="btn btn--isCustomPrimaryLink btn--isFontWeight500 btn--isSizeAuto "> <span>Узнайте, как стать партнером</span> </a> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="1"> <div class="form__row form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="button" class="btn btn--isOutline btn--isSizeLarge" data-js-newCodeBtn=""> <span class="btn__label">Запросить новый код</span> </button> </div> </div> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="2"> <button draggable="false" type="button" class="btn btn--isSizeLarge" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Отправить ещё раз</span> </button> </div> </div> </div> </div> </form> </div> <div id="register" class="modal modal--isCustomPadding3 modal--isForm isDisplayNone" data-js-modal='{"bubbleAfterClose":"popupForm::close","bubbleAfterDone":"popupForm::open","closeAll":true}'> <form id="registerForm" autoComplete="off" class="form form--isFullHeight form--isPositionRelative" data-js-form='{"url":"/ajax/lk.php","method":"POST","isLiveValidation":false,"validateOnlySelector":"[data-js-DynamicFormStep].isVisible"}' novalidate="" action="/ajax/lk.php" data-js-DynamicForm='{"csrfUrl":"/ajax/csrf.php","hash":"authorization_client","activeStep":"0","steps":{"0":{"id":"0","dataLayerCase":"registerFormOpen","successId":"5","errorId":"4","isValidateBeforeNextStep":true},"1":{"id":"1","dataLayerCase":"registerFormPhoneSend","successId":"5","errorId":"4","closeReset":"form"},"3":{"id":"3","dataLayerCase":"registerFormPhoneConfirmed","successId":"5","errorId":"4","closeReset":"form"},"4":{"id":"4","closeReset":"form"},"5":{"id":"5","closeReset":"form","dataLayerCase":"registerFormSuccess","timer":{"time":3,"action":"close"}}}}'> <div class="form__body"> <div class="flexFlow flexFlow--isGap32 flexFlow--isFlexDirectionColumn flexFlow--isAlignItemsStretch flexFlow--isFullHeight"> <div class="flexFlow__item flexFlow__item--isFlexGrow isVisible isFlexColumn isFlexGrow isMbAuto isOverflowXauto isPrD24T12M16" data-js-DynamicFormStep="0"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isCentered"> <div class="isMb16"> <div class="tag"> <span>Шаг 1 из 2</span> </div> </div> <div class="isCustomH4 isTextCentered">Регистрация</div> </div> </div> </div> <div class="isFlexGrow"> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Телефон" class="formLabel formLabel--isFontSize13" for="tel"> <span class="formLabel__label">Телефон</span> </label> <input class="formInput" id="tel" name="phone" type="tel" placeholder="+7 (000) 000-0000" required="" autoComplete="off" data-js-input-required="phone" title="Телефон" data-js-InputMask="phone" value="" /> <div role="tooltip" class="form__msg" data-js-DynamicFormErrorTextEl="true" data-js-form-input-msg="" data-css-reason="info"> <span title="Вам придёт СМС с кодом для регистрации" class="form__msgText"> Вам придёт СМС с кодом для регистрации</span> </div> <p class="dynamicFormError" data-js-DynamicFormErrorTextEl="true"></p> <div class="isColorAlizarinCrimson label l3 isDisplayNone" data-js-DynamicFormLimitTimerTextEl="">Следующую заявку можно отправить через:</div> </div> </div> </div> <div class="form__row form__row--isHidden form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <input id="action" name="action" type="hidden" tabindex="-1" value="registration" /> <input id="csrf" name="csrf" type="hidden" tabindex="-1" value="a979bc85af8c9f4767ab237869abcba3" /> <input id="region" name="region" type="hidden" tabindex="-1" value="/spb" /> <input id="step" name="step" type="hidden" tabindex="-1" data-js-DynamicFormStepInput="true" value="0" /> </div> </div> </div> </div> </div> <div class="flexFlow__item flexFlow__item--isFlexGrow isInvisible isFlexColumn isFlexGrow isMbAuto isOverflowXauto isPrD24T12M16" data-js-DynamicFormStep="5"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isCentered"> <div class="isMb16"> <div class="tag"> <span>Успешно</span> </div> </div> <div class="isCustomH4 isTextCentered">Регистрация</div> </div> </div> </div> <div class="isFlexGrow"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered">Профиль успешно <br /> зарегистрирован </div> </div> </div> </div> <div class="flexFlow__item flexFlow__item--isFlexGrow isInvisible isFlexColumn isFlexGrow isMbAuto isOverflowXauto isPrD24T12M16" data-js-DynamicFormStep="4"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isCentered"> <div class="isMb16"> <div class="tag"> <span>Ошибка</span> </div> </div> <div class="isCustomH4 isTextCentered">Регистрация</div> </div> </div> </div> <div class="isFlexGrow"> <div class="isFullHeight isPlaceCenter"> <div class="isTextCentered">Что-то пошло не так... <br />Попробуйте отправить <br />форму ещё раз </div> </div> </div> </div> <div class="flexFlow__item flexFlow__item--isFlexGrow isInvisible isFlexColumn isFlexGrow isMbAuto isOverflowXauto isPrD24T12M16" data-js-DynamicFormStep="1"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isCentered"> <div class="isMb16"> <div class="tag"> <span>Шаг 1 из 2</span> </div> </div> <div class="isCustomH4 isTextCentered">Регистрация</div> </div> </div> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isMinlineAuto isPlaceCenter isTextCentered text t2 isColorScorpion"> <div> <span>Код выслан на</span> <span data-js-DynamicFormPhoneTextEl="">+ 7 (900) 000-00-00</span> </div> <button draggable="false" type="button" class="btn btn--isPrimaryLink btn--isSizeAuto" title="Изменить номер" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Изменить номер</span> </button> </div> </div> </div> </div> <div class="isFlexGrow"> <div class="verificationCode" data-js-verificationCode='{"inputsQty":5,"formId":"registerForm"}'> <p class="verificationCode__label label l3">Введите код</p> <div class="verificationCode__inputsWrapper"> <input class="formInput formInput--isForNumbers" type="text" placeholder="1" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="2" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="3" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="4" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput formInput--isForNumbers" type="text" placeholder="5" autoComplete="off" data-js-input="" data-js-InputMask="number" maxlength="1" inputmode="numeric" value="" /> <input class="formInput" id="sms-code" name="sms-code" type="text" autoComplete="off" data-js-mainInput="" value="" /> </div> <p class="verificationCode__timerWrapper isInvisible">Новый код будет доступен <span class="verificationCode__timer" data-js-timer="">через 3...</span> </p> <p class="verificationCode__error isInvisible" data-js-error="">Неверно введен код, запросите новый код</p> </div> <div class="isColorAlizarinCrimson label l3 isMt16 isOnlyEmptyDisplayNone" data-js-DynamicFormErrorTextEl=""></div> </div> </div> <div class="flexFlow__item flexFlow__item--isFlexGrow isInvisible isFlexColumn isFlexGrow isMbAuto isOverflowXauto isPrD24T12M16" data-js-DynamicFormStep="3"> <div class="form__row form__row--isMb52 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block form__block--isCentered"> <div class="isMb16"> <div class="tag"> <span>Шаг 2 из 2</span> </div> </div> <div class="isCustomH4 isTextCentered">Регистрация</div> </div> </div> <div class="form__col"> <div data-js-form-block="" class="form__block"> <div class="isMinlineAuto isPlaceCenter isTextCentered text t2 isColorScorpion"> <div> <span>Ваш номер </span> <span data-js-DynamicFormPhoneTextEl="">+ 7 (900) 000-00-00</span> <span> подтвержден</span> </div> <button draggable="false" type="button" class="btn btn--isPrimaryLink btn--isSizeAuto" title="Изменить номер" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Изменить номер</span> </button> </div> </div> </div> </div> <div class="isFlexGrow"> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Фамилия" class="formLabel formLabel--isFontSize13" for="secondName"> <span class="formLabel__label">Фамилия</span> </label> <input class="formInput" id="secondName" name="lastname" type="text" placeholder="Введите фамилию" required="" autoComplete="off" data-js-input-required="true" title="Введите фамилию" data-js-InputMask="name" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> <span title="Допустимо использовать только буквы" class="form__msgText">Допустимо использовать только буквы</span> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Имя" class="formLabel formLabel--isFontSize13" for="name"> <span class="formLabel__label">Имя</span> </label> <input class="formInput" id="name" name="name" type="text" placeholder="Введите имя" required="" autoComplete="off" data-js-input-required="true" title="Введите имя" data-js-InputMask="name" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> <span title="Допустимо использовать только буквы" class="form__msgText">Допустимо использовать только буквы</span> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Отчество (необязательно)" class="formLabel formLabel--isFontSize13" for="name"> <span class="formLabel__label">Отчество <span class="isColorSilverChalice"> (необязательно)</span> </span> </label> <input class="formInput" id="name" name="patronymic" type="text" placeholder="Введите отчество" autoComplete="off" title="Введите отчество" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Придумайте пароль" class="formLabel formLabel--isFontSize13" for="password"> <span class="formLabel__label">Придумайте пароль</span> </label> <input class="formInput" id="password" name="password" type="password" placeholder="ХХХХХХХХ" required="" autoComplete="off" data-js-input-required="password" title="Придумайте пароль" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason="default"> <span title="Пароль должен быть больше 6 символов, содержать буквы и цифры" class="form__msgText">Пароль должен быть больше 6 символов, содержать буквы и цифры</span> </div> </div> </div> </div> <div class="form__row form__row--isMb32 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label title="Повторите пароль" class="formLabel formLabel--isFontSize13" for="password1"> <span class="formLabel__label">Повторите пароль</span> </label> <input class="formInput" id="password1" name="password_confirm" type="password" placeholder="ХХХХХХХХ" required="" autoComplete="off" data-js-input-required="passwordCompare" title="Повторите пароль" value="" /> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="isColorAlizarinCrimson label l3 isMt16 isOnlyEmptyDisplayNone" data-js-DynamicFormErrorTextEl=""></div> </div> </div> <div class="flexFlow__item isPrD24T12M16 isOnMobileSmallMinlineNegative12"> <div data-js-DynamicFormStep="0"> <div class="form__row form__row--isGap8 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isSizeLarge"> <span class="btn__label">Запросить код</span> </button> <div class="flexFlow flexFlow--isJustifyContentCenter isMt24"> <p class="isMb0">Уже есть аккаунт?</p> <a role="button" href="#userEntryForm" class="btn btn--isPrimaryLink btn--isSizeMedium" data-js-modal-open='{"closeAll":true}'> <span class="btn__label">Войти</span> </a> </div> </div> </div> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="1"> <div class="form__row form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="button" class="btn btn--isNewCodeBtn btn--isOutline btn--isSizeLarge" data-js-newCodeBtn=""> <span class="btn__label">Запросить новый код</span> </button> </div> </div> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="3"> <div class="form__row form__row--isMb24 form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <label class="isVisuallyHidden" for="agree-reg-success"> <span class="isVisuallyHidden__label">Согласие на обработку персональных данных </span> </label> <label class="checkbox checkbox--isALignItemsCenter checkbox--isRequired"> <input class="checkbox__input" id="agree-reg-success" name="reg-success" type="checkbox" tabindex="-1" required="" autoComplete="off" data-js-input-required="checkbox" value="on" /> <span role="presentation" class="checkbox__emulator"></span> <span role="tooltip" class="checkbox__label"> <span>Я согласен(-на) c </span> <a href="/upload/kelnik.estate/8c2/processing-of-personal-data.pdf" target="_blank" class="btn btn--isCustomPrimaryLink btn--isFontWeight500 btn--isSizeAuto "> <span> <span>условиями </span> <br class="isHiddenOnlyTablet" /> <span>обработки персональных данных</span> </span> </a> </span> </label> <div role="tooltip" class="form__msg" data-js-form-input-msg="" data-css-reason=""> </div> </div> </div> </div> <div class="form__row form__row--isColumns-1"> <div class="form__col"> <div data-js-form-block="" class="form__block"> <button draggable="false" type="submit" class="btn btn--isSizeLarge"> <span class="btn__label">Отправить</span> </button> </div> </div> </div> </div> <div class="isInvisible" data-js-DynamicFormStep="4"> <button draggable="false" type="button" class="btn btn--isSizeLarge" data-js-DynamicFormStepSelectionBtn="0"> <span class="btn__label">Отправить ещё раз</span> </button> </div> <div class="isInvisible isTextCentered" data-js-DynamicFormStep="5"> <span class="label l2">Вы будете перенаправлены в личный кабинет <span class="isColorAlizarinCrimson">через <span data-js-DynamicFormTimer="5"></span>... </span> </span> </div> </div> </div> </div> </form> </div> <script src="/frontend/build/js/bundle.js?version=4.4.13"></script> </body> </html> <script> $(document).ready(function() { (function(){ const $tabs = $('#main_tabs').find('li'); let $activeTab = $('#main_tabs').find('li.isActive'); let textBtn = $activeTab.data('text-btn'); let urlBtn = $activeTab.data('url-btn'); const CLASSES = { isActive: "is-active", isHiddenMobile: "is-hidden-mob", isHiddenDesktop: "is-hidden-desk", isDisplayNone: "isDisplayNone" } // скрываемые карточки let hideableCards = Array.from($('.projectList .projectCard.is-active')); let hideableCardsMob = Array.from($('.projectList .projectCard.is-active')); // кнопка Показать/Скрыть все const $buttonDropdown = $('#main_cards #showObjectMore'); // флаг состояния списка (открыт / закрыт) let isDropdownOpened = false; // количество видимых карточек - берётся из активного таба let limitDesktop = parseInt($activeTab.data('max-visible-desktop')); let limitMobile = parseInt($activeTab.data('max-visible-mobile')); // проверка на мобильное устройство, флаг мобильности const mobileMaxWidth = 669; let isMobile = false; $buttonDropdown.on('click', (evt) => { evt.preventDefault(); checkMobile(); let limitDesktop = parseInt($activeTab.data('max-visible-desktop')); let limitMobile = parseInt($activeTab.data('max-visible-mobile')); if (isDropdownOpened) { isDropdownOpened = false; $buttonDropdown.find('span').text('Смотреть ещё'); if (isMobile) { hideableCardsMob.slice(limitMobile, hideableCardsMob.length).forEach((item) => { item.classList.add(CLASSES.isHiddenMobile); }); } else { hideableCards.slice(limitDesktop, hideableCards.length).forEach((item) => { item.classList.add(CLASSES.isHiddenDesktop); }); } setTimeout(function(){ $('html, body').animate({ scrollTop: $($buttonDropdown).offset().top - 300 }, 200); }, 200); } else { isDropdownOpened = true; $buttonDropdown.find('span').text('Скрыть'); if (isMobile) { hideableCardsMob.slice(limitMobile, hideableCardsMob.length).forEach((item) => { item.classList.remove(CLASSES.isHiddenMobile); }); } else { hideableCards.slice(limitDesktop, hideableCards.length).forEach((item) => { item.classList.remove(CLASSES.isHiddenDesktop); }); } } }); const operateDropdown = () => { checkMobile(); if (!isMobile) { if (limitDesktop > 0 && hideableCards.length > limitDesktop) { $buttonDropdown.show(); $buttonDropdown.find('span').text('Смотреть ещё'); isDropdownOpened = false; hideableCards.slice(limitDesktop, hideableCards.length).forEach((item) => { item.classList.add(CLASSES.isHiddenDesktop); }); } } else { if (limitMobile > 0 && hideableCardsMob.length > limitMobile) { $buttonDropdown.show(); $buttonDropdown.find('span').text('Смотреть ещё'); isDropdownOpened = false; hideableCardsMob.slice(limitMobile, hideableCardsMob.length).forEach((item) => { item.classList.add(CLASSES.isHiddenMobile); }); } } $('.btnSelectON > span').text(textBtn); Array.from($('.projectList .projectCard')).forEach((item) => { let id = $(item).data('id'); $(item).find('.btnSelectON').attr('href', '/spb' + urlBtn + '?obj%5B%5D=' + id); }); let pinned = $('.projectList__fixedColumn').find('.projectCard'); if (pinned.length) { if (pinned.hasClass('is-active')) { $('.projectList__fixedColumn').removeClass(CLASSES.isDisplayNone); } else { $('.projectList__fixedColumn').addClass(CLASSES.isDisplayNone); } } }; const cancelDropdown = () => { $buttonDropdown.hide(); hideableCardsMob.forEach((item) => { item.classList.remove(CLASSES.isHiddenMobile); }); hideableCards.forEach((item) => { item.classList.remove('is-hidden-desk'); }); }; const hideCardsByLimit = (evt) => { cancelDropdown(); limitDesktop = parseInt(evt.target.getAttribute('data-max-visible-desktop')); limitMobile = parseInt(evt.target.getAttribute('data-max-visible-mobile')); hideableCards = Array.from($('.projectList .projectCard')); hideableCardsMob = Array.from($('.projectList .projectCard')); textBtn = evt.target.getAttribute('data-text-btn'); urlBtn = evt.target.getAttribute('data-url-btn'); operateDropdown(); if (evt.target.getAttribute('data-tab')) { let arrId = []; let tabId = parseInt(evt.target.getAttribute('data-tab')); if (evt.target.getAttribute('data-tab') !== 'all') { arrId.push(tabId); } $activeTab = $(evt.target); $tabs.removeClass('isActive'); $activeTab.addClass('isActive'); limitDesktop = parseInt($activeTab.data('max-visible-desktop')); limitMobile = parseInt($activeTab.data('max-visible-mobile')); textBtn = $activeTab.data('text-btn'); urlBtn = $activeTab.data('url-btn'); hideableCards.forEach((item) => { let arTabId = $(item).data('tab-content'); let key; $(item).removeClass('is-active'); if (arrId.length) { for (key in arTabId) { if ($.inArray(arTabId[key], arrId) !== -1) { $(item).addClass('is-active'); } } } else { $(item).addClass('is-active'); } let price = $(item).data('living-price'); if (tabId === 40000) { price = $(item).data('commerce-price'); } else if (tabId === 20000) { price = $(item).data('parking-price'); } else if (tabId === 3000) { price = $(item).data('pantry-price'); } $(item).find('.projectCard__price span').html('от ' + price + ' млн ₽'); }); cancelDropdown(); hideableCards = Array.from($('.projectList .projectCard.is-active')); hideableCardsMob = Array.from($('.projectList .projectCard.is-active')); operateDropdown(); } }; $tabs.on('click', (evt) => { hideCardsByLimit(evt); }); const checkMobile = () => { isMobile = window.matchMedia(`(max-width: ${mobileMaxWidth}px)`).matches; }; const checkHasHidden = () => { checkMobile(); let hideable = isMobile ? hideableCardsMob : hideableCards; if (hideable.length < 1) { $buttonDropdown.hide(); } else { $buttonDropdown.show(); } }; const initObject = () => { let arrId = []; arrId.push(parseInt($activeTab.data('tab'))); limitDesktop = parseInt($activeTab.data('max-visible-desktop')); limitMobile = parseInt($activeTab.data('max-visible-mobile')); hideableCards.forEach((item) => { let arTabId = $(item).data('tab-content'); let key; $(item).removeClass('is-active'); if (arrId.length) { for (key in arTabId) { if ($.inArray(arTabId[key], arrId) !== -1) { $(item).addClass('is-active'); } } } else { $(item).addClass('is-active'); } }); cancelDropdown(); hideableCards = Array.from($('.projectList .projectCard.is-active')); hideableCardsMob = Array.from($('.projectList .projectCard.is-active')); operateDropdown(); } checkHasHidden(); if ($('.main-section-object').length) { initObject(); } $('#selectTypeObjectMobile').on('click', (e) => { setTimeout(function () { let valueSelect = App.SelectCollection.collection.find(x => x.instance.id === "selectTypeObjectMobile").ref.current.ref.current.props.value.value; $('#main_tabs li[data-tab="'+valueSelect+'"]').click(); }, 200); }); //todo yura очень плохое решение. исправить // _lsrtodo[front]: 368#J2 $('#citySelectorH').on('click', (e) => { setTimeout(function () { let valueSelect = App.SelectCollection.collection.find(x => x.instance.id === "citySelectorH").ref.current.ref.current.props.value.value; if (valueSelect != undefined) { window.location.href = 'https://' + window.location.host + valueSelect; } }, 200); }); }()); }) let pvTypes = { 'living': 'жилую недвижимость', 'commerce': 'коммерческую недвижимость', 'parking': 'паркинг', 'pantry': 'кладовые' }; let pvTypesMobile = { 'living': 'квартиру', 'commerce': 'помещение', 'parking': 'паркинг', 'pantry': 'кладовую' }; let desktop = $(window).width() > 767; $(window).resize(function() { if ($(window).width() > 767 && desktop) { desktop = true; } else if ($(window).width() <= 767 && !desktop) { desktop = false; } }); // _lsrtodo[front]: 368#J5 const setButtonText = (text) => { if (typeof text == 'undefined') { return; } if (text === 'Нет вариантов') { $('#searchButton').addClass('btn--isDisabled'); $('#searchButtonPopup').addClass('btn--isDisabled'); } else if ($('#searchButton').addClass('btn--isDisabled')) { $('#searchButton').removeClass('btn--isDisabled'); $('#searchButtonPopup').removeClass('btn--isDisabled'); } $('#searchButton').find('span').text(text); $('#searchButtonPopup').find('.isHiddenMobile').text(text); let split = text.split(' '); let short; if (split[1][2] === 'а') { short = split[1].slice(0, 2) + '.'; } else { short = split[1].slice(0, 3) + '.'; } if (split[1] === 'вариантов') { short = 'кв.'; text = text.replace(split[1], short); } //text = text.replace(split[1], short); $('#searchButtonPopup').find('.isVisibleMobile').text(text); } // lsrtodo: sdelat krasivo // _lsrtodo[front]: 368#J3 $(document).on('click', '.formSelect__menu', (e) => { let target = $(e.target); if (!target.hasClass('formSelect__optionContent') && !target.hasClass('formSelect__option')) { return; } if ($(window).width() > 767 && desktop) { desktop = true; } else if ($(window).width() <= 767 && !desktop) { desktop = false; } desktop = false; let tabtxt = target.text(); let currentActiveTab = $('div[data-js-paramsearch-block].isActive'); let activeTab = false; let activeTypes = desktop ? pvTypes : pvTypesMobile; $.each(activeTypes, function( i, l ){ if (l === tabtxt) { activeTab = i; } }); if (!activeTab) return; if (desktop) { App.SelectCollection.collection.find(x => x.instance.id === "paramSearch-selector-mobile").ref.current.ref.current.setValue({ value: activeTab, label: pvTypesMobile[activeTab] }, "set-value"); } else { App.SelectCollection.collection.find(x => x.instance.id === "paramSearch-selector").ref.current.ref.current.setValue({ value: activeTab, label: pvTypesMobile[activeTab] }, "set-value"); } currentActiveTab.removeClass('isActive'); $('#' + activeTab).addClass('isActive'); $('.modalShowFilters__menu-item[data-js-tabsitem=' + activeTab + ']').trigger('click'); $('#redirect span').text($('#' + activeTab).data('count')); $('#searchButton').data('redirect', $('#' + activeTab).data('redirect')); $('#searchButtonPopup').data('redirect', $('#' + activeTab).data('redirect')); $('.breadcrumbs__list-item').eq(1).text(); if (typeof $('#living').data('redirect') == 'undefined') { window.history.pushState(null, null, $('div[data-js-paramsearch-block].isActive').data('url') + '?' + inputsSerialized()); } switcherTypes(); setButtonText($('#' + activeTab).data('count')); searchButtonClick(e); }); // _lsrtodo[front]: 368#6 $('.modalShowFilters__menu-item').on('click', function(e) { let target = $(e.target); if (target.prop('tagName') == 'SPAN') { target = target.parent(); } let id = target.data('js-tabsitem'); $('div[data-js-paramsearch-block].isActive').removeClass('isActive'); $('#' + id).addClass('isActive'); // let values = {'commerce': 'коммерческую недвижимость', 'living': 'жилую недвижимость', 'pantry': 'кладовые', 'parking': 'паркинг'}; const values = {'commerce': 'помещение', 'living': 'квартиру', 'pantry': 'кладовые', 'parking': 'паркинг'}; App.SelectCollection.collection.find(x => x.instance.id === 'paramSearch-selector').ref.current.ref.current.setValue({ value: id, label: values[id] }, "set-value"); // App.SelectCollection.collection.find(x => x.instance.id === 'paramSearch-selector-mobile').ref.current.ref.current.setValue({ value: id, label: values[id] }, "set-value"); setButtonText($('#' + id).data('count')); switcherTypes(); $('#searchButton').data('redirect', $('#' + id).data('redirect')); $('#searchButtonPopup').data('redirect', $('#' + id).data('redirect')); }); // _lsrtodo[front]: 368#J4 const switcherTypes = () => { const pv = document.querySelector("[data-js-ParamSearch]"); /** * Toggle view switch or grouping checkbox visibility * @param type{"view"|"grouping"|"map"|"filters"} * @param isVisible{boolean} */ function $toggleVisibility(type, isVisible) { const events = { view: "pv::visibility:viewSwitch", grouping: "pv::visibility:useGroup", map: "pv::visibility:mapLink", } if (!events[type]) console.error("[footer] unexpected event type: "+type); const event = new CustomEvent(events[type], { detail: { isVisible } }) pv.dispatchEvent(event) } const SELECTORS = { viewSwitch: "#searchResultsHeader__viewToggle", } if (typeof $('#living').data('redirect') == 'undefined') { resetInputs(false); window.history.pushState(null, null, $('div[data-js-paramsearch-block].isActive').data('url') + '?' + inputsSerialized()); } $toggleVisibility("view", false) $toggleVisibility("grouping", false) $toggleVisibility("map", false); $('#grouprequired').prop('checked', false); $(SELECTORS.viewSwitch).find('[value=line]').prop('checked', true); if (window.location.href.toString().includes('kvartiry-v-novostroikah')) { $toggleVisibility("view", true) $toggleVisibility("grouping", true) $toggleVisibility("map", true); } if (window.location.href.toString().includes('kommercheskaya-nedvizhimost')) { $toggleVisibility("view", true) } } // _lsrtodo[front]: 368#D1 $('input[name=view]').on('change', function() { if (this.value === 'line') { $toggleVisibility("grouping", true) } else { $toggleVisibility("grouping", false) } $('#mw-uniq-genplan').remove(); $('.lifeComplexList').empty(); $('.j-search-result-similar').empty(); send(e, false); }); // _lsrtodo[front]: 368#J7 $('#grouprequired').on('change', function() { setTimeout(function () { window.history.pushState(null, null, window.location.href.split('?')[0] + '?' + inputsSerialized()); $('.lifeComplexList').empty(); $('.j-search-result-similar').empty(); send(e, false); }, 300); }); // _lsrtodo[front]: 368#J8 let sortvalue = false; $('#sortSelect').on('click', (e) => { if ($(e.target).hasClass('formSelect__optionContent') || ($(e.target).hasClass('formSelect__option'))) { setTimeout(function () { sortvalue = App.SelectCollection.collection.find(x => x.instance.id === "sortSelect").ref.current.ref.current.props.value.value; window.history.pushState(null, null, window.location.href.split('?')[0] + '?' + inputsSerialized() + '&sort=' + sortvalue); sendTimeout(e, sortvalue); }, 100); } }); $('body').on('click', '#searchButton', (e) => { e.preventDefault(); searchButtonClick(e); }); $('#searchButtonPopup').on('click', (e) => { e.preventDefault(); searchButtonClick(e); }); $('#resetButtonPopup').on('click', (e) => { e.preventDefault(); resetInputs(); }); $('#resetButtonPopupMobile').on('click', (e) => { e.preventDefault(); resetInputs(); }); // _lsrtodo[front]: 368#J9 const searchButtonClick = (e) => { let redirectButton = $(e.target).data('redirect'); let redirectDiv = $('div[data-js-paramsearch-block]').data('redirect'); let reqData = inputsSerialized(); const pvModal = $('#mw-paramSearch'); if (pvModal.hasClass('fancybox__content')) { pvModal.children('button[data-fancybox-close="true"]').trigger('click'); } if (redirectButton) { // открываем url в отдельном окне reqData = reqData.replace('mappage=true&', ''); // Настя: в сафари может не прокатить window.open(redirectButton + '?' + reqData, '_self'); } else if (!redirectButton && !redirectDiv) { setTimeout(function () { window.history.pushState(null, null, $('div[data-js-paramsearch-block].isActive').data('url') + '?' + reqData); $('#mw-uniq-genplan').remove(); $('.lifeComplexList').empty(); $('.j-search-result-similar').empty(); send(e, false); }, 300); } } // _lsrtodo[front]: 368#D1 $(document).on('click', '.j-search-switch', function(e) { //$switch($(e.currentTarget)); }); // _lsrtodo[front]: 368#J11 const inputsSerialized = (modal = false) => { let form = $('div.modalShowFilters__tab.isActive'); let id = $('div[data-js-paramsearch-block].isActive').attr('id'); let inputs = form.find('input'); //return; $('#opt3').prop('checked', false); $('#opt4').prop('checked', false); $('#opt13').prop('checked', false); $('#furnish').prop('checked', false); $('#nofurnish').prop('checked', false); $('#kitchen').prop('checked', false); inputs.each((i, item) => { let el = $(item); if (!el.val().length) { delete inputs[i]; return; } if (el.attr('name') === 'opt' && el.val()) { $('#opt' + el.val()).prop('checked', true); delete inputs[i]; } if (el.attr('name') === 'furniture' && el.val()) { $('#' + el.val()).prop('checked', true); delete inputs[i]; } if (el.attr('name') === 'furniture' && el.val()) { $('#' + el.val()).prop('checked', true); delete inputs[i]; } if (el.attr('name') === 'obj[]' && el.attr('id') !== 'obj[]') { delete inputs[i]; } if (id === 'parking' && el.attr('name') === 'build[]' && el.attr('id') !== 'build[]') { delete inputs[i]; } if (modal && (el.attr('name') === 'obj[]' || el.attr('id') !== 'obj[]' || el.attr('name') === 'build[]' || el.attr('id') !== 'build[]')) { delete inputs[i]; } if (el.attr('name') === 'subway[]' && el.attr('id') !== 'subway[]') { delete inputs[i]; } if (el.attr('name') === 'location[]' && el.attr('id') !== 'location[]') { delete inputs[i]; } }); inputs = inputs.slice(); inputs = inputs.serialize(); if ($('#grouprequired').is(':checked')) { inputs += '&grouprequired=1'; } return inputs; }; // _lsrtodo[front]: 368#J12 const openModalMap = (e) => { const GENPLAN_ID = "#mw-uniq-genplan"; let $target = $(e.target); let id = $target.data('object-id'); let type = $target.data('object-type'); $(GENPLAN_ID).html(''); $.ajax({ url : '/ajax/get_minimap.php', type : 'post', dataType : 'json', data : 'object=' + id + '&type=' + type, beforeSend: function() { window.App.LoaderModel.show(); }, success: function(data) { $('#mw-uniq-genplan').html(data.html); // add active buildings let builds = $('.modalShowFilters__tab.isActive').find('input[name="build[]"]'); builds.each((i, item) => { let id = $(item).attr('value'); $('.f-panzoom__pin[data-js-pin=' + id + ']').toggleClass('isActivePopup'); $('.interactiveMap__polygon[id=' + id + ']').toggleClass('isActivePopup'); }); $('.f-panzoom__pin').on('click', function(e) { let pin = $(e.target).parent().parent(); pin.toggleClass('isActivePopup'); let id = pin.data('js-pin'); $('.interactiveMap__polygon[id=' + id + ']').toggleClass('isActivePopup'); }); $('.interactiveMap__polygon').on('click', function(e) { let polygon = $(e.target); polygon.toggleClass('isActivePopup'); let id = polygon.attr('id'); $('.f-panzoom__pin[data-js-pin=' + id + ']').toggleClass('isActivePopup'); }); $('.minimap-search').on('click', function(e) { $('button[data-js-modalwindow-trigger="close"]').trigger('click'); let url = $('div[data-js-paramsearch-block].isActive').data('url') + '?' + inputsSerialized(true); url += '&obj[]=' + id; $('.f-panzoom__pin.isActivePopup').each((i, item) => { url += '&build[]=' + $(item).data('js-pin'); }); window.open(url, '_blank'); }); //bindMiniMap(); }, complete: function() { window.App.LoaderModel.hide(); const map = window.App.InteractiveMapModelCollection.find(el => el.instance.id === GENPLAN_ID); if (map) { map.init() } } }); }; // _lsrtodo[front]: 368#J13 $('button[data-js-modalwindow-trigger]').on('click', function(e) { openModalMap(e); }); // _lsrtodo[front]: 368#J14 const send = (e, form = true) => { console.log('function SEND'); let requestData = form ? inputsSerialized() : ((window.location.href).split('?')[1] || ''); if (sortvalue) { requestData += '&sort=' + sortvalue; } let divAppend = $('.lifeComplexList'); let target = $(e.target); if (typeof target.data('action') == 'undefined') { target = $('form[data-js-paramsearch]'); } if (typeof $('#living').data('redirect') == 'undefined') { form = false; } let url = target.data('action') + (form ? 'form/' : ''); $.ajax({ url : url, type : 'post', dataType : 'json', data : requestData, beforeSend: function() { window.App.LoaderModel.show(); if (form) { disabledInputs(); } else { $('.h2').html(''); } }, success: function(data) { if (1) { let button_text; if (parseInt(data.data.count) > 0) { button_text = data.data.count; if (!$('input[name=mappage]').length) { //button_text += ' в ' + data.data.cnt_obj + ' ЖК'; } } else { button_text = data.data.count; } setButtonText(button_text); if (requestData.includes('premiseType=3')) { let select = App.SelectCollection.collection.find(el => el.instance.id === "fs-parking-build"); let selectPopup = App.SelectCollection.collection.find(el => el.instance.id === "fs-parking-build-popup"); if (select == 'undefined') { if (data.data.buildings) { select.ref.current.stateActions.setSelectDisabled(false); selectPopup.ref.current.stateActions.setSelectDisabled(false); let buildings = data.data.buildings; let currentOptions = select.ref.current.ref.current.props.value; select.ref.current.data.selectOptions.length = 0; selectPopup.ref.current.data.selectOptions.length = 0; Object.keys(buildings).forEach((item) => { select.ref.current.data.selectOptions.push({value: buildings[item]['ID'], label: buildings[item]['NAME']}); selectPopup.ref.current.data.selectOptions.push({value: buildings[item]['ID'], label: buildings[item]['NAME']}); }); if (currentOptions !== '') { select.ref.current.ref.current.setState({selectValue: currentOptions}); selectPopup.ref.current.ref.current.setState({selectValue: currentOptions}); } else { select.ref.current.ref.current.clearValue(); selectPopup.ref.current.ref.current.clearValue(); } } else { // lsrtodo doesnt work select.ref.current.ref.current.clearValue(); selectPopup.ref.current.ref.current.clearValue(); select.ref.current.data.selectOptions.length = 0; selectPopup.ref.current.data.selectOptions.length = 0; select.ref.current.stateActions.setSelectDisabled(true); selectPopup.ref.current.stateActions.setSelectDisabled(true); } } } unDisabledInputs(data); if ($('input[name=mappage]').length) { App.InteractiveYandexMapModelCollection.collection[0].reInitMarkers(data.data.objectIds); return; } } if (!form) { let button_text; if (parseInt(data.cnt) > 0) { button_text = data.cnt + ' ' + data.cnt_word; if (!$('input[name=mappage]').length) { //button_text += ' в ' + data.cnt_obj + ' ЖК'; } } else { button_text = data.count; } setButtonText(button_text); if (data.cnt) { data.object_link = data.object_link || ''; $('.h2').html(data.cnt_preword + ' ' + data.cnt + ' ' + data.cnt_suffword + ' ' + data.object_link); } else { $('.h2').html('Квартиры не найдены'); } $('.breadcrumbs').html(data.breadcrumb); } if (data.html) { divAppend.empty(); divAppend.append(data.html); $('button[data-js-lifecomplex-part="trigger"]').on('click', function(e) { appendTimeout(e); }); $('button[data-js-group-part="trigger"]').on('click', function(e) { appendTimeout(e); }); $('button[data-js-modalwindow-trigger]').on('click', function(e) { openModalMap(e); }); $('[data-js-listinggroupsummary]').on('click', function(e) { appendTimeout(e); }); } $('.listPagination__item').on('click', function(e) { appendTimeout(e); }); $('a.sortLink').unbind(); $('a.sortLink').on('click', function(e) { sortInObject(e); }); }, complete: function() { window.App.LoaderModel.hide(); } }); // _lsrtodo[front]: 368#J17 if (typeof $('#living').data('redirect') == 'undefined' && $('input[name=mappage]').length == 0) { $.ajax({ url : url + 'similar/', type : 'post', dataType: 'json', data : requestData, success : function(data) { const resultBlock = document.querySelector('.j-search-result-similar'); resultBlock.innerHTML = data.html; //that.init($('.j-search-result')); $('button[data-js-lifecomplex-part="trigger"]').on('click', function(e) { appendTimeout(e); }); $('button[data-js-group-part="trigger"]').on('click', function(e) { appendTimeout(e); }); $('button[data-js-modalwindow-trigger]').on('click', function(e) { openModalMap(e); }); } }); } } // _lsrtodo[front]: 368#D1 & 368#W1 $.fn.onAny = function(cb){ for(var k in this[0]) if(k.search('on') === 0) this.on(k.slice(2), function(e){ cb.apply(this,[e]); }); return this; }; // _lsrtodo[front]: 368#J18 setTimeout(function () { $('div[data-js-paramsearch-block]').find('.checkbox__input').on('click', (evt) => { if ($(evt.target).parent().find('input').is(':disabled')) { return; } sendTimeout(evt); }); $('div[data-js-paramsearch-block]').find('.formSelect').on('click', (evt) => { if ($(evt.target).hasClass('formSelect__option') || $(evt.target).hasClass('formSelect__optionContent')) { sendTimeout(evt); } }); $('div[data-js-paramsearch-block]').find('.rangeSlider--isSmall').find('input').on('change', (evt) => { rangeSliderUpdate(evt, false); sendTimeout(evt); }); $('.modalShowFilters').find('.checkbox__input').on('click', (evt) => { if ($(evt.target).parent().find('input').is(':disabled')) { return; } sendTimeout(evt); }); let popupselect = setInterval(function(){ if ($('.modalShowFilters').find('.formSelect').length) { clearInterval(popupselect); $('.modalShowFilters').find('.formSelect').on('click', (evt) => { if ($(evt.target).hasClass('formSelect__option') || $(evt.target).hasClass('formSelect__optionContent')) { sendTimeout(evt); } }); } }, 500); $('.modalShowFilters').find('.rangeSlider--isSmall').find('input').on('change', (evt) => { rangeSliderUpdate(evt, true); sendTimeout(evt); }); $('a.sortLink').on('click', function(e) { sortInObject(e); }); }, 2300); const sendTimeout = (e, sort = false) => { setTimeout(function () { if (!sort) { duplicateChangedValue(e); } setTimeout(function () { $('#mw-uniq-genplan').remove(); $('.lifeComplexList').empty(); $('.j-search-result-similar').empty(); send(e, !sort); }, 200); }, 100); } const rangeSliderUpdate = (e, popup = false) => { let target = $(e.target); let current = target.closest('.rangeSlider'); let id = '#' + current.attr('id'); let currentrange = App.RangeSliderCollection.findByQuerySelector(id); if (!popup) { id += '-popup'; } let explode = id.split('-'); let name = explode[2]; let inputMin = $(id).parent().find('input[name="' + name + '[min]"]'); let inputMax = $(id).parent().find('input[name="' + name + '[max]"]'); inputMin.val(currentrange.sliderValues[0]); inputMax.val(currentrange.sliderValues[1]); } // _lsrtodo[front]: 368#J6 const duplicateChangedValue = (e) => { let target = $(e.target); if ($('#mw-paramSearch').hasClass('fancybox__content')) { if (target.attr('type') === 'checkbox') { $('.paramSearch__params.isActive').find('input[id="' + target.attr('id') + '"]').prop('checked', target.is(':checked')); } else if (target.attr('type') === 'text') { let current = target.closest('.rangeSlider'); let currentrange = App.RangeSliderCollection.findByQuerySelector('#' + current.attr('id')); let range = App.RangeSliderCollection.findByQuerySelector('#' + (current.attr('id')).slice(0, -6)); if (typeof range === 'undefined') { return; } range.updateState(range.cfg.range.min, currentrange.sliderValues[0]); range.updateState(range.cfg.range.max, currentrange.sliderValues[1]); } else { let selectid = (target.closest('.formSelect')).parent().attr('id'); if (typeof selectid === 'undefined') { return; } let newid = selectid.slice(0, -6); let currentfsoptions = App.SelectCollection.collection.find(x => x.instance.id === selectid).ref.current.ref.current.props.value; let newfs = App.SelectCollection.collection.find(x => x.instance.id === newid); if (typeof newfs === 'undefined') { return; } newfs.ref.current.ref.current.setState({ selectValue: currentfsoptions }) } } else { if (target.attr('type') === 'checkbox') { let form = $('.modalShowFilters__tab.isActive'); form.find('input[id="' + target.attr('id') + '"]').prop('checked', target.is(':checked')); } else if (target.attr('type') === 'text') { let current = target.closest('.rangeSlider'); let currentrange = App.RangeSliderCollection.findByQuerySelector('#' + current.attr('id')); let range = App.RangeSliderCollection.findByQuerySelector('#' + current.attr('id') + '-popup'); if (typeof range === 'undefined') { return; } range.updateState(range.cfg.range.min, currentrange.sliderValues[0]); range.updateState(range.cfg.range.max, currentrange.sliderValues[1]); } else { let selectid = (target.closest('.formSelect')).parent().attr('id'); if (typeof selectid === 'undefined') { return; } let newid = selectid + '-popup'; let currentfsoptions = App.SelectCollection.collection.find(x => x.instance.id === selectid).ref.current.ref.current.props.value; let newfs = App.SelectCollection.collection.find(x => x.instance.id === newid).ref.current.ref.current; newfs.setState({ selectValue: currentfsoptions }) } } } let formParamSearch = $('form[data-js-paramsearch]'); // _lsrtodo[front]: 368#J19 $('.btn[data-js-lifecomplex-part="trigger"]').on('click', function(e) { appendTimeout(e); }); // _lsrtodo[front]: 368#J20 $('.listPagination__item').on('click', function(e) { appendTimeout(e); }); // _lsrtodo[front]: 368#J21 $('[data-js-listingGroupSummary]').on("click", function(e) { appendTimeout(e); }); const appendTimeout = (e, sorting = false) => { const SELECTORS = { paramSearch: { form: "form[data-js-paramsearch]" }, lifeComplex: { instance: "[data-js-lifecomplex]" }, flat: { instance: "[data-js-listingCard]", group: "[data-js-listingGroup]", resultsContainerOld: ".buildObjectList--isFlat", resultsContainer: "[data-js-listingResults=\"flats\"]", groupResults: "[data-js-listingGroupResults]" }, commerce: { resultsContainerOld: ".buildObjectList--isCommerce", resultsContainer: "[data-js-listingResults=\"commerce\"]" }, parking: { resultsContainerOld: ".buildObjectList--isParking", resultsContainer: "[data-js-listingResults=\"parking\"]" }, pantries: { resultsContainerOld: ".buildObjectList--isPantries", resultsContainer: "[data-js-listingResults=\"pantries\"]" }, common: { listingCard: "[data-js-listingCard]", resultsContainer: "[data-js-listingResults]", resultsContainerOld: ".buildObjectList", groupSummary: "[data-js-listingGroupSummary]" } } function getGroupAccordionModel(e) { const accordion = $(e.target).closest(SELECTORS.flat.group); if (!accordion.is(SELECTORS.flat.group)) return null; const groupId = accordion.data("js-listinggroup"); if (!groupId) return null; return window.App.AccordionModelCollection.collection.find(el => { const elId = $(el.instance).data("js-listinggroup") return groupId === elId; }) } setTimeout(function () { let target = $(e.target); let main = target; let divAppend; let type = 0; if (target.data('js-group-part') !== 'trigger') { let parent = target.parent(); if (parent.data('js-group-part') === 'trigger') { target = parent; } } if (target.data('js-group-part') === 'trigger') { divAppend = $('div[data-js="list"][data-id="' + target.data('id') + '"]'); if (typeof target.data('ids') !== 'undefined' && target.data('ids')) { if (target.hasClass('opened')) { target.removeClass('opened'); divAppend.empty(); return; } else { target.addClass('opened'); } } } else { main = target.closest('.lifeComplex'); // divAppend = main.find('.buildObjectList--isFlat').first(); divAppend = main.find(SELECTORS.flat.resultsContainer).first(); if (!divAppend.length) { divAppend = main.find(SELECTORS.flat.resultsContainerOld).first(); } type = 1; if (divAppend.length === 0) { divAppend = main.find(SELECTORS.commerce.resultsContainer); if (divAppend.length === 0) { divAppend = main.find(SELECTORS.parking.resultsContainerOld); } type = 2; } if (divAppend.length === 0) { divAppend = main.find(SELECTORS.parking.resultsContainer); if (divAppend.length === 0) { divAppend = main.find(SELECTORS.parking.resultsContainerOld); } type = 3; } if (divAppend.length === 0) { divAppend = main.find(SELECTORS.pantries.resultsContainer); if (divAppend.length === 0) { divAppend = main.find(SELECTORS.pantries.resultsContainerOld); } type = 4; } } let action = main.data('action'); if (!action) { action = target.data('action'); } if (!action) { action = $(SELECTORS.paramSearch.form).data('action'); } let objID = main.data('obj-id'); if (typeof objID === 'undefined') { objID = target.data('obj-id'); } let requestData = inputsSerialized(); let a = 'types'; let requestDataString = requestData; let obj = target.closest(SELECTORS.lifeComplex.instance); let sort = obj.find('.sortLink--isActive'); let obsort = sort.data('sort'); let oborder = sort.data('direction'); let page = 1; if (target.data('page')) { page = target.data('page'); } else if (target.parent().data('page')) { page = target.parent().data('page'); } requestDataString += '&ob[page]=' + page; if (!sorting) { requestDataString += '&ob[sort]=' + obsort + '&ob[order]=' + oborder; } else { requestDataString += '&' + sorting; } requestDataString += '&group[t]=false' + '&ob[id]=' + objID + '&object=' + objID; if (target.data('js-group-part') === 'trigger') { a = 'flats'; requestDataString += '&a=flats&ot[id]=' + target.data('id'); let otpage = 1; if (target.data('page')) { otpage = target.data('page'); } else if (target.parent().data('page')) { otpage = target.parent().data('page'); } requestDataString += '&ot[page]=' + otpage; } if (type === 3) { a = 'flats'; requestDataString += '&premiseType=3&a=flats'; } if (type === 4) { a = 'flats'; requestDataString += '&premiseType=4&a=flats'; } if (a === 'types') { requestDataString += '&a=types'; } if (sortvalue && a !== 'flats' && a !== 'types') { requestDataString += '&sort=' + sortvalue; } if ($('input[name=view]:checked').val() === 'grid') { requestDataString += '&limit=12'; } const model = getGroupAccordionModel(e); function updateContentHeight() { if (model && model.states.isOpen) { const contentWrapper = model.contentElement; contentWrapper.style.setProperty("--contentHeight", `auto`); contentWrapper.style.setProperty("--contentHeight", `${contentWrapper.offsetHeight}px`) } } $.ajax({ url : action, type : 'post', dataType : 'json', data : requestDataString, beforeSend: function() { window.App.LoaderModel.show(); }, success: function(res) { // CLEAR ALL CONTENT divAppend.find(SELECTORS.common.listingCard).remove(); divAppend.find('[data-js-flat]').remove(); divAppend.find('.buildObject__wrapper').remove(); divAppend.find('script').remove(); divAppend.find('.listPagination').remove(); if (a === 'types') { divAppend.find(SELECTORS.flat.group).remove(); divAppend.find('.buildObjectList--isFlat[data-js=list]').remove(); } if (target.data('js-group-part') === 'trigger') { divAppend.find(SELECTORS.flat.groupResults).remove(); divAppend.empty(); } // INSERT HTML if (res.html) { if (target.data('js-group-part') === 'trigger') { divAppend.html(res.html); if (res.pagination) { divAppend.append(res.pagination); $('.listPagination__item').on('click', function(e) { // closeGroup(); appendTimeout(e); }); divAppend.find('.listPagination__item').attr('data-id', target.data('id')); divAppend.find('.listPagination__item').attr('data-obj-id', target.data('obj-id')); } } else { divAppend.append(res.html); if (res.pagination) { divAppend.append(res.pagination); $('.listPagination__item').on('click', function(e) { appendTimeout(e); }); } } $('.btn[data-js-group-part="trigger"]').unbind(); $('.btn[data-js-group-part="trigger"]').on('click', function(e) { appendTimeout(e); }); $('[data-js-listingGroupSummary]').unbind(); $('[data-js-listingGroupSummary]').on("click", function(e) { appendTimeout(e); }); $('html, body').animate({ scrollTop: divAppend.offset().top - $('header').height() }, 600); } $('a.sortLink').unbind(); $('a.sortLink').on('click', function(e) { sortInObject(e); }); }, complete: function() { window.App.LoaderModel.hide(); updateContentHeight(); } }) }, 300); } // Клик по кнопки сброса фильтра //this.$reset.on('click', this.bindClickReset.bind(this)); // _lsrtodo[front]: 368#J15 const disabledInputs = () => { let form = $('div[data-js-paramsearch-block].isActive'); let id = form.attr('id'); let inputs = form.find('input'); inputs.each((i, item) => { let el = $(item); if (el.attr('name') && (el.attr('name')).includes('opt')) { return; } if (el.attr('type') === 'checkbox') { el.prop('disabled', true); } }); let selects = form.find('.formSelect'); selects.each((i, item) => { $(item).addClass('formSelect--isDisabled'); }); let sliders = form.find('.rangeSlider'); sliders.each((i, item) => { $(item).addClass('rangeSlider--isDisabled'); }); // form = $('div.modalShowFilters__tab[data-js-tabscontent="' + id + '"]'); inputs = form.find('input'); inputs.each((i, item) => { let el = $(item); if (el.attr('name') && (el.attr('name')).includes('opt')) { return; } if (el.attr('type') === 'checkbox') { el.prop('disabled', true); } }); selects = form.find('.formSelect'); selects.each((i, item) => { $(item).addClass('formSelect--isDisabled'); }); sliders = form.find('.rangeSlider'); sliders.each((i, item) => { $(item).addClass('rangeSlider--isDisabled'); }); } // _lsrtodo[front]: 368#J10 const resetInputs = (send = true) => { let sliders = ['rs-living-price', 'rs-living-price-popup', 'rs-living-area-popup', 'rs-living-floor-popup']; let formPopup = $('.modalShowFilters__tab[data-js-tabscontent="living"]'); if ($('#commerce').hasClass('isActive')) { sliders = ['rs-premise-price', 'rs-commerce-area', 'rs-premise-price-popup', 'rs-commerce-area-popup']; formPopup = $('.modalShowFilters__tab[data-js-tabscontent="commerce"]'); } else if ($('#parking').hasClass('isActive')) { sliders = ['rs-parking-price', 'rs-parking-price-popup', 'rs-parking-floor-popup']; formPopup = $('.modalShowFilters__tab[data-js-tabscontent="parking"]'); } else if ($('#pantry').hasClass('isActive')) { sliders = ['rs-pantry-price', 'rs-pantry-price-popup']; formPopup = $('.modalShowFilters__tab[data-js-tabscontent="pantry"]'); } sliders.forEach((item) => { let range = App.RangeSliderCollection.findByQuerySelector('#' + item); if (typeof range === 'undefined') { return; } range.updateState(range.cfg.range.min, 0); range.updateState(range.cfg.range.max, 1); let name = item.split('-'); name = name[2]; $('div[data-js-paramsearch-block].isActive').find('input[name="' + name + '[min]"]').val(range.cfg.range.min); $('div[data-js-paramsearch-block].isActive').find('input[name="' + name + '[max]"]').val(range.cfg.range.max); formPopup.find('input[name="' + name + '[min]"]').val(range.cfg.range.min); formPopup.find('input[name="' + name + '[max]"]').val(range.cfg.range.max); }); formPopup.find('input[name="build[]"]').remove(); let form = $('div[data-js-paramsearch-block].isActive'); let inputs = form.find('input[type=checkbox]'); inputs.each((i, item) => { let el = $(item); el.prop('disabled', false); el.removeAttr('checked'); }); let selects = form.find('div[data-js-select]'); selects.each((i, item) => { let itemId = $(item).attr('id'); App.SelectCollection.collection.find(x => x.instance.id === itemId).ref.current.ref.current.clearValue(); }); inputs = formPopup.find('input[type=checkbox]'); inputs.each((i, item) => { let el = $(item); el.prop('disabled', false); el.removeAttr('checked'); }); selects = formPopup.find('div[data-js-select]'); selects.each((i, item) => { let itemId = $(item).attr('id'); App.SelectCollection.collection.find(x => x.instance.id === itemId).ref.current.ref.current.clearValue(); }); if (send) { sendTimeout(e, false); } } // _lsrtodo[front]: 368#J15 const unDisabledInputs = (data) => { let type = 1; let sliderForm = ['rs-living-price', 'rs-living-price-popup', 'rs-living-area-popup', 'rs-living-floor-popup']; if ($('#commerce').hasClass('isActive')) { $type = 2; sliderForm = ['rs-premise-price', 'rs-commerce-area', 'rs-premise-price-popup', 'rs-commerce-area-popup']; } else if ($('#parking').hasClass('isActive')) { $type = 3; sliderForm = ['rs-parking-price', 'rs-parking-price-popup', 'rs-parking-floor-popup']; } else if ($('#pantry').hasClass('isActive')) { $type = 4; sliderForm = ['rs-pantry-price', 'rs-pantry-price-popup']; } let form = $('div[data-js-paramsearch-block].isActive'); let id = form.attr('id'); let selects = form.find('.formSelect'); selects.each((i, item) => { $(item).removeClass('formSelect--isDisabled'); }); let sliders = form.find('.rangeSlider'); sliders.each((i, item) => { $(item).removeClass('rangeSlider--isDisabled'); }); let checkboxes = form.find('input[type=checkbox]'); if (data.data.visible) { (data.data.visible).forEach((vis) => { checkboxes.each((i, item) => { let el = $(item); if ((el.attr('name')) === vis) { el.prop('disabled', false); } }); }); } form = $('div.modalShowFilters__tab[data-js-tabscontent="' + id + '"]'); selects = form.find('.formSelect'); selects.each((i, item) => { $(item).removeClass('formSelect--isDisabled'); }); sliders = form.find('.rangeSlider'); sliders.each((i, item) => { $(item).removeClass('rangeSlider--isDisabled'); }); let sliderTypes = ['price', 'area', 'floor']; sliderForm.forEach((item) => { let range = App.RangeSliderCollection.findByQuerySelector('#' + item); if (typeof range === 'undefined') { return; } sliderTypes.forEach((type) => { if (item.includes(type)) { let min = form.find('input[name="' + type + '[min]"]').val(); if (min < data.data[type].min) { range.updateState(data.data[type].min, 0); } else { range.updateState(min, 0); } let max = form.find('input[name="' + type + '[max]"]').val(); if (max > data.data[type].max) { range.updateState(data.data[type].max, 1); } else { range.updateState(max, 1); } } }); }); checkboxes = form.find('input[type=checkbox]'); if (data.data.visible) { (data.data.visible).forEach((vis) => { checkboxes.each((i, item) => { let el = $(item); if ((el.attr('name')) === vis) { el.prop('disabled', false); } }); }); } form.find('input[name="floor[nfirst]"]').prop('disabled', false); form.find('input[name="floor[nlast]"]').prop('disabled', false); } // _lsrtodo[front]: 368#J16 const sortInObject = (e) => { e.preventDefault(); let $target = $(e.target); let sort = $target.data('sort'); if (sort === undefined) { $target = $target.parent(); sort = $target.data('sort'); } let direction = $target.data('direction'); if (direction === undefined) { direction = 'desc'; } let ascClass = 'sortLink--asc'; let descClass = 'sortLink--desc'; let activeClass = 'sortLink--isActive'; let $allSorts = $target.parents().find('a.sortLink'); $allSorts.each(function() { $(this) .removeClass(activeClass) .removeClass(ascClass) .addClass(descClass); }); $target.addClass(activeClass); if (direction === 'asc') { $target.data('direction', 'desc'); $target.removeClass(ascClass); $target.addClass(descClass); direction = 'desc'; } else { $target.data('direction', 'asc'); $target.removeClass(descClass); $target.addClass(ascClass); direction = 'asc'; } let string = 'ob[sort]=' + sort + '&ob[order]=' + direction + '&ob[page]=1'; appendTimeout(e, string); } </script> <!-- Google Tag Manager (noscript) --> <noscript> <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NM5GJ96M" height="0" width="0" style="display:none;visibility:hidden"></iframe> </noscript> <!-- End Google Tag Manager (noscript) --> </body> </html>