1"use strict"; 2function isIntersecting(e) { 3 var t = window.pageYOffset 4 , i = t + window.innerHeight 5 , r = t + e.getBoundingClientRect().top 6 , n = r + e.height; 7 return r <= i && r >= t || n <= i && n >= t 8} 9function checkImages() { 10 targets.forEach(function(e) { 11 isIntersecting(e) && e.classList.contains("loading") && (e.src = e.getAttribute("data-src"), 12 e.onload = function() { 13 e.classList.remove("loading"), 14 e.removeAttribute("data-src") 15 } 16 ) 17 }) 18} 19"/" != window.location.pathname && ($(".price-list__price span").length ? $(".price-list__price span").each(function() { 20 $(this).text($(this).text().replace(/(оÑ|до|\d)(?= \d) /g, "$1 ")) 21}) : $(".price-list__price").length && $(".price-list__price").each(function() { 22 $(this).text($(this).text().replace(/(оÑ|до|\d)(?= \d) /g, "$1 ")) 23})); 24 25var app = new Vue({ 26 el: "#app", 27 data: function() { 28 return { 29 formSuccess: !1, 30 arrayImages: [] 31 } 32 }, 33 mounted: function() { 34 var e = this; 35 36 this.arrayImages = Array.from(document.querySelectorAll("img[data-src]")), 37 window.onload = function() { 38 setTimeout(function() { 39 checkImages(), 40 app.policy().then(function(e) { 41 Array.from(document.querySelectorAll(".form-checkbox label")).map(function(t, i) { 42 const personalText = "пеÑÑоналÑнÑÑ Ð´Ð°Ð½Ð½ÑÑ "; 43 if(!t.textContent.includes(personalText)) return; 44 console.log(t.textContent.replace(personalText, "")); 45 //t.innerHTML = t.textContent.replace(personalText, "") + '<a href="' + JSON.parse(e)[0].FILE.VALUE + '" target="_blank">' + personalText + '</a>' 46 }) 47 }), 48 setTimeout(function() { 49 app.bannerSlider(), 50 app.servicesSlider(), 51 app.sliderBg(), 52 app.worksSlider(), 53 app.reviewsSlider(), 54 app.doctorsSlider(), 55 app.sertificateSlider(), 56 app.gallerySlider(), 57 app.imageSkew(), 58 app.footnote(), 59 app.itemSkew(), 60 app.doctorsVideo(), 61 app.workImage(), 62 app.fliterItem(), 63 app.pageNavigationItemNoVue() 64 }, 500) 65 }, 900); 66 var e = document.getElementById("whatsapp-chat"); 67 e && (setTimeout(function() { 68 e.querySelector(".window").classList.add("open") 69 }, 5e3), 70 $(e).find(".whatsapp_img_icon, .close").on("click", function() { 71 $("#whatsapp-chat .window").toggleClass("open") 72 })) 73 } 74 , 75 window.addEventListener("scroll", function() { 76 document.querySelector("#fixed-nav") && (document.querySelector(".fixed-nav__wrap").style.height = document.getElementById("fixed-nav").clientHeight + "px", 77 document.querySelector(".fixed-nav__wrap").style.marginBottom = "-" + document.getElementById("fixed-nav").clientHeight + "px", 78 pageYOffset >= document.querySelector(".fixed-nav__wrap").offsetTop && pageYOffset > 80 ? document.getElementById("fixed-nav").classList.add("fixed") : document.getElementById("fixed-nav").classList.remove("fixed")) 79 }), 80 window.addEventListener("resize", function() { 81 e.imageSkew(), 82 e.itemSkew() 83 }), 84 window.addEventListener("scroll", checkImages), 85 setTimeout(function() { 86 window.removeEventListener("scroll", checkImages); 87 var e = document.querySelectorAll("img[data-src]"); 88 e.forEach(function(e) { 89 e.classList.contains("loading") && (e.src = e.getAttribute("data-src"), 90 e.onload = function() { 91 e.classList.remove("loading"), 92 e.removeAttribute("data-src") 93 } 94 ) 95 }) 96 }, 1e4) 97 }, 98 methods: { 99 pageNavigationItemNoVue: function() { 100 Array.from(document.querySelectorAll(".page-navigation__item-no-vue")).map(function(e, t) { 101 e.addEventListener("click", function() { 102 app.pageNavigation(this) 103 }) 104 }) 105 }, 106 workImage: function() { 107 Array.from(document.querySelectorAll(".cocoen")).map(function(e, t) { 108 new Cocoen(e) 109 }) 110 }, 111 policy: function() { 112 return new Promise(function(e, t) { 113 var i = "/template/policy.php" 114 , r = new XMLHttpRequest; 115 r.open("POST", i, !0), 116 r.onload = function() { 117 if (200 == this.status) 118 e(this.response); 119 else { 120 var i = new Error(this.statusText); 121 i.code = this.status, 122 t(i) 123 } 124 } 125 , 126 r.onerror = function() { 127 t(new Error("Network Error")) 128 } 129 , 130 r.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"), 131 r.send() 132 } 133 ) 134 }, 135 popUpOpen: function(e) { 136 document.querySelector("#popup .popup-content").insertAdjacentHTML("beforeend", '<img src="' + e.target.getAttribute("data-image") + '">'), 137 document.getElementById("popup").classList.add("open") 138 }, 139 popUpClose: function() { 140 document.getElementById("popup").classList.remove("open"), 141 document.getElementById("popup").querySelector(".popup-content").innerHTML = "" 142 }, 143 sertificateOpen: function(e) { 144 if ("IMG" === e.target.tagName) { 145 document.querySelector("#sertificate-popup .sertificate-popup__content").insertAdjacentHTML("beforeend", '<div class="sertificate-popup__slider swiper-container"><div class="swiper-wrapper"></div><div class="swiper-prev"></div><div class="swiper-next"></div></div>'), 146 Array.from(document.querySelectorAll(".sertificate-sl
146ider__item:not(.swiper-slide-duplicate) img")).map(function(e, t) { 147 document.querySelector(".sertificate-popup__slider .swiper-wrapper").insertAdjacentHTML("beforeend", '<div class="sertificate-popup__slide swiper-slide"><img src="' + e.getAttribute("src") + '"></div>') 148 }), 149 document.getElementById("sertificate-popup").classList.add("open"); 150 var t = new Swiper(".sertificate-popup__slider",{ 151 loop: !0, 152 slidesPerView: "auto", 153 autoHeight: !0, 154 spaceBetween: 0, 155 effect: "fade", 156 centeredSlides: !0, 157 shortSwipes: !1, 158 initialSlide: parseInt(e.target.getAttribute("data-key")), 159 longSwipes: !1, 160 fadeEffect: { 161 crossFade: !0 162 }, 163 navigation: { 164 nextEl: ".sertificate-popup__slider .swiper-next", 165 prevEl: ".sertificate-popup__slider .swiper-prev" 166 } 167 }); 168 t.on("init", function() { 169 this.el.querySelector(".swiper-wrapper").style.width = this.el.querySelector(".swiper-slide-active img").clientWidth + "px" 170 }), 171 t.on("transitionStart", function() { 172 this.el.querySelector(".swiper-wrapper").style.width = this.el.querySelector(".swiper-slide-active img").clientWidth + "px" 173 }) 174 } 175 }, 176 sertificateClose: function(e) { 177 document.getElementById("sertificate-popup").classList.remove("open"), 178 document.getElementById("sertificate-popup").querySelector(".sertificate-popup__slider").remove() 179 }, 180 doctorsVideo: function() { 181 Array.from(document.querySelectorAll(".doctors-list__video video")).map(function(e, t) { 182 e.onmouseover = function(t) { 183 e.play() 184 } 185 , 186 e.onmouseout = function(t) { 187 e.pause() 188 } 189 }) 190 }, 191 formOpen: function(e) { 192 console.log("T", t) 193 194 var t = e.target.getAttribute("data-form"); 195 if(t == '#appointment-doctor') { 196 let doctorName = e.target.getAttribute('data-doctor-name'); 197 let doctorPosition = e.target.getAttribute('data-doctor-position'); 198 if(doctorName) { 199 let doctorNameArr = doctorName.split(' '); 200 doctorNameArr[0] = '<span>' + doctorNameArr[0] + '</span>'; 201 let doctorNameHtml = doctorNameArr.join(' '); 202 $(t).find('.js-doctor-name').html(doctorNameHtml); 203 $(t).find('.js-doctor-field').val(doctorName); 204 } else { 205 $(t).find('.js-doctor-name').html(''); 206 $(t).find('.js-doctor-field').val(''); 207 } 208 if(doctorPosition) { 209 $(t).find('.js-doctor-position').html(doctorPosition); 210 } else { 211 $(t).find('.js-doctor-position').html(''); 212 } 213 } 214 215 216 document.querySelector(t).classList.add("open") 217 }, 218 formClose: function(e) { 219 document.querySelector("#inline.form-wrap.open") ? document.querySelector(".form.form-inline-active").reset() : document.querySelector(".form-wrap.open form") && document.querySelector(".form-wrap.open form").reset(), 220 $(document).find(".fl_input").trigger("blur.flowupLabelsEvt"); 221 app.formSuccess = !1, 222 document.querySelector(".form-wrap.open").classList.remove("open") 223 }, 224 jsCheckForm(el) { 225 let form = $(el), 226 hasErrors = false; 227 form.find('.js-required-field').each(function(){ 228 let thisField = $(this), 229 thisFieldWrap = thisField.closest('.fl_wrap'); 230 if(thisField.val() == ''){ 231 hasErrors = true; 232 if(thisFieldWrap.length) { 233 thisFieldWrap.addClass('error'); 234 } else { 235 thisField.addClass('error'); 236 } 237 } else { 238 if(thisFieldWrap.length) { 239 thisFieldWrap.removeClass('error'); 240 } else { 241 thisField.removeClass('error'); 242 } 243 } 244 }); 245 form.find('[type="email"]').each(function(){ 246 let thisField = $(this), 247 thisFieldWrap = thisField.closest('.fl_wrap'); 248 if(thisField.is('[required]') && thisField.val() == '' || thisField.val() != '' && !thisField.val().match(/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/)){ 249 hasErrors = true; 250 if(thisFieldWrap.length) { 251 thisFieldWrap.addClass('error'); 252 } else { 253 thisField.addClass('error'); 254 } 255 } else { 256 if(thisFieldWrap.length) { 257 thisFieldWrap.removeClass('error'); 258 } else { 259 thisField.removeClass('error'); 260 } 261 } 262 }); 263 form.find('.js-required-checkbox').each(function(){ 264 let thisCheckbox = $(this); 265 if(!thisCheckbox.is(':checked')){ 266 hasErrors = true; 267 thisCheckbox.addClass('error'); 268 } else { 269 thisCheckbox.removeClass('error'); 270 } 271 }); 272 273 if(hasErrors) { 274 form.addClass('_has-errors'); 275 console.log('errors in form'); 276 return false;
277 } else { 278 form.removeClass('_has-errors'); 279 } 280 281 return true; 282 }, 283 checkForm: function(e) { 284 if($(e.target).hasClass('js-validate-form') && !app.jsCheckForm(e.target)) return; 285 e.target.parentNode.classList.contains("form-popup") === !1 && (document.querySelector("#inline .form-success__content").innerHTML = e.target.parentNode.querySelector(".form-success__content").innerHTML, 286 document.querySelector("#inline").classList.add("open"), 287 e.target.classList.add("form-inline-active")); 288 var t = e.target.getAttribute("action") 289 , i = e.target.getAttribute("method") 290 , r = new FormData(e.target); 291 r.append("web_form_submit", e.target.web_form_submit), 292 window.fetch(t, { 293 method: i, 294 body: r 295 }).then(function(e) { 296 app.formSuccess = !app.formSuccess 297 })["catch"](function(e) { 298 console.log(e) 299 }) 300 }, 301 burger: function(e) { 302 e.target.classList.toggle("open"), 303 document.querySelector(".header-fixed").classList.toggle("close") 304 }, 305 callme: function(e) { 306 document.querySelector("#filialCall").classList.toggle("open") 307 }, 308 menuClick: function(e) { 309 window.innerWidth < 1200 ? (document.querySelector(".menu__item.active") && document.querySelector(".menu__item.active").classList.remove("active"), 310 e.target.parentNode.classList.add("active")) : location.href = e.target.href 311 }, 312 subMenuClick: function(e) { 313 window.innerWidth < 1200 ? (e.target.parentNode.classList.add("active"), 314 e.target.parentNode.parentNode.classList.add("active"), 315 document.querySelector(".menu").classList.add("active")) : location.href = e.target.href 316 }, 317 backMenuClick: function(e) { 318 document.querySelector(".menu").classList.remove("active"), 319 document.querySelector(".submenu__item.active").classList.remove("active"), 320 document.querySelector(".submenu.active").classList.remove("active") 321 }, 322 sectionBlock: function() { 323 var e = -1 324 , t = -1; 325 document.getElementsByClassName("fixed-nav__content") && (console.log(document.getElementsByClassName("fixed-nav__content").classList.contains("fixed-nav__content-menu")), 326 document.getElementsByClassName("fixed-nav__content").classList.contains("fixed-nav__content-menu") === !1 && (Array.from(document.getElementsByClassName("fixed-nav__item")).map(function(i, r) { 327 var n = document.getElementsByClassName("section-block")[r]; 328 void 0 !== n && pageYOffset >= n.offsetTop - window.innerHeight / 3 && e <= n.offsetTop && (e = n.offsetTop, 329 t = r) 330 }), 331 Array.from(document.getElementsByClassName("fixed-nav__item")).map(function(e, i) { 332 i === t ? e.classList.add("active") : e.classList.remove("active") 333 }))) 334 }, 335 bannerSlider: function() { 336 new Swiper(".banner-slider",{ 337 loop: !0, 338 slidesPerView: 1, 339 autoplay: { 340 delay: 5e3 341 }, 342 pagination: { 343 el: ".swiper-pagination" 344 }, 345 navigation: { 346 nextEl: ".banner-next", 347 prevEl: ".banner-prev" 348 } 349 }) 350 }, 351 servicesSlider: function() { 352 if (document.querySelector(".services-slider")) { 353 var e = new Swiper(".services-slider",{ 354 loop: !0, 355 slidesPerView: 1, 356 spaceBetween: 30, 357 autoplay: { 358 delay: 5e3 359 }, 360 pagination: { 361 el: ".swiper-pagination", 362 type: "fraction" 363 }, 364 navigation: { 365 nextEl: ".services-next", 366 prevEl: ".services-prev" 367 } 368 }); 369 e.el.querySelector(".swiper-pagination").classList.add("active"), 370 e.on("transitionEnd", function() { 371 e.el.querySelector(".swiper-pagination").classList.add("active") 372 }), 373 e.on("transitionStart", function() { 374 e.el.querySelector(".swiper-pagination").classList.remove("active") 375 }) 376 } 377 }, 378 sliderBg: function() { 379 if (document.querySelector(".slider-bg")) { 380 document.querySelector(".slider-bg").insertAdjacentHTML("beforeend", '<div class="slider-bg__prev"></div><div class="slider-bg__next"></div>'); 381 var e = new Swiper(".services-text",{ 382 loop: !0, 383 slidesPerView: 1, 384 direction: "horizontal", 385 effect: "fade", 386 simulateTouch: !1, 387 fadeEffect: { 388 crossFade: !0 389 } 390 }) 391 , t = new Swiper(".slider-bg",{ 392 loop: !0, 393 spaceBetween: 30, 394 autoplay: { 395 delay: 5e3 396 }, 397 pagination: { 398 el: ".swiper-pagination", 399 type: "fraction" 400 }, 401 navigation: { 402 nextEl: ".slider-bg__next", 403 prevEl: ".slider-bg__prev" 404 } 405 }); 406 t.el.querySelector(".swiper-pagination").classList.add("active"), 407 t.on("transitionEnd", function() { 408 t.el.querySelector(".swiper-pagination").classList.add("active") 409 }), 410 t.on("transitionStart", function() { 411 t.el.querySelector(".swiper-pagination").classList.remove("active") 412 }), 413 t.on("slidePrevTransitionStart", function() { 414 e.slidePrev() 415 }), 416 t.on("slideNextTransitionStart", function() { 417 e.slideNext() 418 }) 419 } 420 }, 421 worksSlider: function() { 422 if (document.querySelector(".works-slider")) { 423 var e = new Swiper(".works-slider",{ 424 loop: !0, 425 slidesPerView: 1, 426 spaceBetween: 0, 427 centeredSlides: !0, 428 autoplay: { 429 delay: 5e3 430 }, 431 pagination: { 432 el: ".swiper-pagination", 433 type: "fraction" 434 }, 435 navigation: { 436 nextEl: ".works-next", 437 prevEl: ".works-prev" 438 } 439 }); 440 e.el.querySelector(".swiper-pagination").classList.add("active"), 441 e.on("transitionEnd", function() { 442 e.el.querySelector(".swiper-pagination").classList.add("active") 443 }), 444 e.on("transitionStart", function() { 445 e.el.querySelector(".swiper-pagination").classList.remove("active") 446 }) 447 } 448 }, 449 reviewsSlider: function() {
450 if (document.querySelector(".reviews-slider")) { 451 new Swiper(".reviews-slider",{ 452 loop: !0, 453 slidesPerView: 3, 454 spaceBetween: 40, 455 autoplay: { 456 delay: 5e3 457 }, 458 navigation: { 459 nextEl: ".reviews-slider__wrap .swiper-next", 460 prevEl: ".reviews-slider__wrap .swiper-prev" 461 }, 462 breakpoints: { 463 1199: { 464 slidesPerView: 3, 465 spaceBetween: 30 466 }, 467 991: { 468 slidesPerView: 2, 469 spaceBetween: 30 470 }, 471 599: { 472 slidesPerView: 1, 473 spaceBetween: 30 474 } 475 } 476 }) 477 } 478 }, 479 doctorsSlider: function() { 480 if (document.querySelector(".doctors-slider")) { 481 new Swiper(".doctors-slider",{ 482 loop: false, 483 slidesPerView: 1, 484 spaceBetween: 10, 485 simulateTouch: false, 486 autoplay: { 487 delay: 5e3 488 }, 489 navigation: { 490 nextEl: ".doctors-slider__wrap .swiper-next", 491 prevEl: ".doctors-slider__wrap .swiper-prev" 492 }, 493 breakpoints: { 494 1199: { 495 slidesPerView: 3, 496 spaceBetween: 30 497 }, 498 991: { 499 slidesPerView: 2, 500 spaceBetween: 30 501 }, 502 599: { 503 slidesPerView: 1, 504 spaceBetween: 30 505 } 506 } 507 }) 508 } 509 }, 510 sertificateSlider: function() { 511 if (document.querySelector(".sertificate-slider")) { 512 new Swiper(".sertificate-slider",{ 513 loop: !0, 514 slidesPerView: "auto", 515 spaceBetween: 0, 516 centeredSlides: !0, 517 autoplay: { 518 delay: 5e3 519 }, 520 navigation: { 521 nextEl: ".sertificate-slider .swiper-next", 522 prevEl: ".sertificate-slider .swiper-prev" 523 }, 524 breakpoints: { 525 767: { 526 slidesPerView: 1 527 } 528 } 529 }) 530 } 531 }, 532 gallerySlider: function() { 533 if (document.querySelector(".gallery-slider")) { 534 new Swiper(".gallery-slider",{ 535 loop: !0, 536 slidesPerView: 1, 537 spaceBetween: 40, 538 centeredSlides: !0, 539 autoplay: { 540 delay: 5e3 541 }, 542 navigation: { 543 nextEl: ".gallery-slider .swiper-next", 544 prevEl: ".gallery-slider .swiper-prev" 545 } 546 }) 547 } 548 }, 549 priceOpen: function(e) { 550 e.target.parentNode.parentNode.classList.toggle("active"), 551 e.target.parentNode.parentNode.querySelectorAll(".price-list__price").forEach(function(e) { 552 return e.removeAttribute("style") 553 }); 554 var t = $(".price-section.active") 555 , i = $(".price-section:not(.active) .muve-price .cloneClinic"); 556 t.each(function(t, i) { 557 if (e.target.parentNode.parentNode == i && $(window).width() <= 500) { 558 var r = $(this).find(".price-list .street__main, .price-list .our-clinic"); 559 r.each(function() { 560 $(this).clone().addClass("cloneClinic").prependTo($(this).next()) 561 }) 562 } 563 }), 564 i.remove() 565 }, 566 price_but: function(e) { 567 var t = $(".street__button"); 568 t.each(function(t, i) { 569 if (e.target == i) { 570 var r, n, a = function(e, t, i) { 571 return e * t.outerWidth() - i 572 }, o = $(this).closest(".price-section").find(".streets__item .muve-price .price-list__price:first-child"), s = $(this).closest(".price-section").find(".price-list__item:not(.streets) .muve-price .price-list__price:first-child"), c = $(this).closest(".streets__item").find(".muve-price .price-list__price").length, l = parseInt(o.css("margin-left")); 573 parseInt(s.css("margin-left")); 574 return $(this).hasClass("left") ? (r = "+=" + o.outerWidth(), 575 n = "+=" + s.outerWidth(), 576 l >= 0 && (r = o.closest(".muve-price").outerWidth() - a(c, o, 0), 577 n = s.closest(".muve-price").outerWidth() - a(c, s, 0))) : (r = "-=" + o.outerWidth(), 578 n = "-=" + s.outerWidth(), 579 $(".muve-price").outerWidth() + 1 > a(c, o, l * -1) && (r = 0, 580 n = 0)), 581 o.animate({ 582 "margin-left": r 583 }, "fade"), 584 s.animate({ 585 "margin-left": n 586 }, "fade"), 587 !1 588 } 589 }) 590 }, 591 imageSkew: function() { 592 Array.from(document.querySelectorAll(".image-skew")).map(function(e, t) { 593 var i = e.querySelector("img").offsetHeight / 2 594 , r = 3.14 595 , n = 10; 596 e.hasAttribute("data-skew") && (n = e.getAttribute("data-skew"), 597 e.style.transform = "skewX(-" + n + "deg)", 598 e.querySelector(".image-skew__wrap").style.transform = "skewX(" + n + "deg)"); 599 var a = 90 - n; 600 n = n * r / 180, 601 a = a * r / 180; 602 var o = i * Math.sin(n) / Math.sin(a); 603 e.style.marginLeft = o + "px", 604 e.style.marginRight = o + "px", 605 e.querySelector(".image-skew__wrap").style.marginLeft = "-" + o + "px", 606 e.querySelector(".image-skew__wrap").style.marginRight = "-" + o + "px" 607 }) 608 }, 609 footnote: function() { 610 Array.from(document.getElementsByClassName("footnote__item")).map(function(e, t) { 611 var i = e.parentNode.querySelector("img").clientWidth 612 , r = e.parentNode.querySelector("img").clientHeight 613 , n = parseInt(e.getAttribute("data-top")) 614 , a = parseInt(e.getAttribute("data-left")); 615 n = 100 * n / r, 616 a = 100 * a / i, 617 e.style.top = n + "%", 618 e.style.left = a + "%", 619 a > 50 ? e.classList.add("footnote__item-right") : e.classList.remove("footnote__item-right") 620 }) 621 }, 622 fliterItem: function() { 623 Array.from(document.querySelectorAll(".filter-item")).map(function(e, t) { 624 e.addEventListener("click", function() { 625 document.querySelector(".filter-item.active").classList.remove("active"), 626 this.classList.add("active"), 627 app.pageNavigation(this) 628 console.log('click render') 629 }) 630 }) 631 }, 632 pageNavigation: function(e) { 633 var t = e; 634 if (t = e.classList.contains("filter-item") ? e : document.querySelector(".page-navigation__item").classList.contains("page-navigation__item-no-vue") ? e : e.target, 635 document.querySelector(".page-navigation__item.active") != t) { 636 t.classList.contains("more") || t.classList.contains("filter-item") || (document.querySelector(".page-navigation__item.active").classList.remove("active"), 637 t.classList.add("active")); 638 var i = t.getAttribute("data-page") 639 , r = new XMLHttpRequest 640 , n = new DOMParser 641 , a = ""; 642 r.open("GET", i, !0), 643 r.onload = function() { 644 r.status >= 200 && r.status < 400 && (a = n.parseFromString(r.responseText, "text/html"), 645 t.classList.contains("more") ? (document.querySelector(".ajax-block").innerHTML = document.querySelector(".ajax-block").innerHTML + a.querySelector(".ajax-block").innerHTML, 646 a.querySelector(".page-navigation .more") ? document.querySelector(".page-navigation .more").setAttribute("data-page", a.querySelector(".page-navigation .more").getAttribute("data-page")) : document.querySelector(".page-navigation").remove()) : (document.querySelector(".ajax-block").innerHTML = a.querySelector(".ajax-block").innerHTML, 647 document.querySelector(".page-navigation").classList.contains("page-navigation-no-vue") && (a.querySelector(".page-navigation") ? (document.querySelector(".page-navigation").innerHTML = a.querySelector(".page-navigation").innerHTML, 648 app.pageNavigationItemNoVue()) : document.querySelector(".page-navigation").innerHTML = "")), 649 document.querySelector(".ajax-block").hasAttribute("data-ajax") && "doctors-list" == document.querySelector(".ajax-block").getAttribute("data-ajax") && app.doctorsVideo(), 650 document.querySelector(".ajax-block").hasAttribute("data-ajax") && "work" == document.querySelector(".ajax-block").getAttribute("data-ajax") && app.workImage()) 651 } 652 , 653 r.send() 654 } 655 }, 656 itemSkew: function() { 657 Array.from(document.querySelectorAll(".block-skew")).map(function(e, t) { 658 var i = e.querySelector(".item-skew").offsetHeight / 2 659 , r = 3.14 660 , n = 10 661 , a = 1; 662 e.hasAttribute("data-skew") && (n = e.getAttribute("data-skew")), 663 e.hasAttribute("data-margin") && (a = e.getAttribute("data-margin")), 664 e.style.transform = "skewX(-" + n + "deg)", 665 e.querySelector(".item-skew").style.transform = "skewX(" + n + "deg)"; 666 var o = 90 - n; 667 n = n * r / 180, 668 o = o * r / 180; 669 var s = i * Math.sin(n) / Math.sin(o); 670 e.style.marginLeft = s * a + "px", 671 e.style.marginRight = s * a + "px", 672 e.querySelector(".item-skew").style.marginLeft = "-" + s + "px", 673 e.querySelector(".item-skew").style.marginRight = "-" + s + "px", 674 e.hasAttribute("data-width") && (e.style.width = 100 + o + "%") 675 }) 676 }, 677 678 679 } 680}); 681!function(e) { 682 var t = "portfilter" 683 , i = function(t) { 684 this.$element = e(t), 685 this.stuff = e("[data-tag]"), 686 this.target = this.$element.data("target") || "" 687 }; 688 i.prototype.filter = function(t) { 689 var i = [] 690 , r = this.target; 691 this.stuff.fadeOut("fast").promise().done(function() { 692 e(this).each(function() { 693 e(this).data("tag") != r && "all" != r || i.push(this) 694 }), 695 e(i).show() 696 }) 697 } 698 ; 699 var r = e.fn[t]; 700 e.fn[t] = function(r) { 701 return this.each(function() { 702 var n = e(this) 703 , a = n.data(t); 704 a || n.data(t, a = new i(this)), 705 "filter" == r && a.filter() 706 }) 707 } 708 , 709 e.fn[t].defaults = {}, 710 e.fn[t].Constructor = i, 711 e.fn[t].noConflict = function() { 712 return e.fn[t] = r, 713 this 714 } 715 , 716 e(document).on("click.portfilter.data-api", "[data-toggle^=portfilter]", function(t) { 717 e(this).portfilter("filter") 718 }) 719}(window.jQuery), 720jQuery(window).scroll(function() { 721 var e = jQuery(document).scrollTop(); 722 jQuery(document).width() < 1200 && e ? jQuery(".header-wrap").addClass("header-fixx") : jQuery(".header-wrap").removeClass("header-fixx") 723}); 724var placeholder = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" 725 , targets = document.querySelectorAll("img[data-src]");
726targets.forEach(function(e) { 727 e.src = placeholder, 728 e.classList.add("loading") 729}); 730function zeebha() { 731 document.getElementById("myDropdown").classList.toggle("show") 732}; 733window.onclick = function(ecv) { 734 if (!event.target.matches('.dropbtn')) { 735 var dropdowns = document.getElementsByClassName("dropdown-content"); 736 var i; 737 for (i = 0; i < dropdowns.length; i++) { 738 var openDropdown = dropdowns[i]; 739 if (openDropdown.classList.contains('show')) { 740 openDropdown.classList.remove('show') 741 } 742 } 743 } 744}; 745 746 747!function(factory) { 748 "function" == typeof define && define.amd ? define([ "jquery" ], factory) : factory("object" == typeof exports ? require("jquery") : jQuery); 749}(function($) { 750 var caretTimeoutId, ua = navigator.userAgent, iPhone = /iphone/i.test(ua), chrome = /chrome/i.test(ua), android = /android/i.test(ua); 751 $.mask = { 752 definitions: { 753 "9": "[0-9]", 754 a: "[A-Za-z]", 755 "*": "[A-Za-z0-9]" 756 }, 757 autoclear: !0, 758 dataName: "rawMaskFn", 759 placeholder: "_" 760 }, $.fn.extend({ 761 caret: function(begin, end) { 762 var range; 763 if (0 !== this.length && !this.is(":hidden")) return "number" == typeof begin ? (end = "number" == typeof end ? end : begin, 764 this.each(function() { 765 this.setSelectionRange ? this.setSelectionRange(begin, end) : this.createTextRange && (range = this.createTextRange(), 766 range.collapse(!0), range.moveEnd("character", end), range.moveStart("character", begin), 767 range.select()); 768 })) : (this[0].setSelectionRange ? (begin = this[0].selectionStart, end = this[0].selectionEnd) : document.selection && document.selection.createRange && (range = document.selection.createRange(), 769 begin = 0 - range.duplicate().moveStart("character", -1e5), end = begin + range.text.length), 770 { 771 begin: begin, 772 end: end 773 }); 774 }, 775 unmask: function() { 776 return this.trigger("unmask"); 777 }, 778 mask: function(mask, settings) { 779 var input, defs, tests, partialPosition, firstNonMaskPos, lastRequiredNonMaskPos, len, oldVal; 780 if (!mask && this.length > 0) { 781 input = $(this[0]); 782 var fn = input.data($.mask.dataName); 783 return fn ? fn() : void 0; 784 } 785 return settings = $.extend({ 786 autoclear: $.mask.autoclear, 787 placeholder: $.mask.placeholder, 788 completed: null 789 }, settings), defs = $.mask.definitions, tests = [], partialPosition = len = mask.length, 790 firstNonMaskPos = null, $.each(mask.split(""), function(i, c) { 791 "?" == c ? (len--, partialPosition = i) : defs[c] ? (tests.push(new RegExp(defs[c])), 792 null === firstNonMaskPos && (firstNonMaskPos = tests.length - 1), partialPosition > i && (lastRequiredNonMaskPos = tests.length - 1)) : tests.push(null); 793 }), this.trigger("unmask").each(function() { 794 function tryFireCompleted() { 795 if (settings.completed) { 796 for (var i = firstNonMaskPos; lastRequiredNonMaskPos >= i; i++) if (tests[i] && buffer[i] === getPlaceholder(i)) return; 797 settings.completed.call(input); 798 } 799 } 800 function getPlaceholder(i) { 801 return settings.placeholder.charAt(i < settings.placeholder.length ? i : 0); 802 } 803 function seekNext(pos) { 804 for (;++pos < len && !tests[pos]; ) ; 805 return pos; 806 } 807 function seekPrev(pos) { 808 for (;--pos >= 0 && !tests[pos]; ) ; 809 return pos; 810 } 811 function shiftL(begin, end) { 812 var i, j; 813 if (!(0 > begin)) { 814 for (i = begin, j = seekNext(end); len > i; i++) if (tests[i]) { 815 if (!(len > j && tests[i].test(buffer[j]))) break; 816 buffer[i] = buffer[j], buffer[j] = getPlaceholder(j), j = seekNext(j); 817 } 818 writeBuffer(), input.caret(Math.max(firstNonMaskPos, begin)); 819 } 820 } 821 function shiftR(pos) { 822 var i, c, j, t; 823 for (i = pos, c = getPlaceholder(pos); len > i; i++) if (tests[i]) { 824 if (j = seekNext(i), t = buffer[i], buffer[i] = c, !(len > j && tests[j].test(t))) break; 825 c = t; 826 } 827 } 828 function androidInputEvent() { 829 var curVal = input.val(), pos = input.caret(); 830 if (oldVal && oldVal.length && oldVal.length > curVal.length) { 831 for (checkVal(!0); pos.begin > 0 && !tests[pos.begin - 1]; ) pos.begin--; 832 if (0 === pos.begin) for (;pos.begin < firstNonMaskPos && !tests[pos.begin]; ) pos.begin++; 833 input.caret(pos.begin, pos.begin); 834 } else { 835 for (checkVal(!0); pos.begin < len && !tests[pos.begin]; ) pos.begin++; 836 input.caret(pos.begin, pos.begin); 837 }
838 tryFireCompleted(); 839 } 840 function blurEvent() { 841 checkVal(), input.val() != focusText && input.change(); 842 } 843 function keydownEvent(e) { 844 if (!input.prop("readonly")) { 845 var pos, begin, end, k = e.which || e.keyCode; 846 oldVal = input.val(), 8 === k || 46 === k || iPhone && 127 === k ? (pos = input.caret(), 847 begin = pos.begin, end = pos.end, end - begin === 0 && (begin = 46 !== k ? seekPrev(begin) : end = seekNext(begin - 1), 848 end = 46 === k ? seekNext(end) : end), clearBuffer(begin, end), shiftL(begin, end - 1), 849 e.preventDefault()) : 13 === k ? blurEvent.call(this, e) : 27 === k && (input.val(focusText), 850 input.caret(0, checkVal()), e.preventDefault()); 851 } 852 } 853 function keypressEvent(e) { 854 if (!input.prop("readonly")) { 855 var p, c, next, k = e.which || e.keyCode, pos = input.caret(); 856 if (!(e.ctrlKey || e.altKey || e.metaKey || 32 > k) && k && 13 !== k) { 857 if (pos.end - pos.begin !== 0 && (clearBuffer(pos.begin, pos.end), shiftL(pos.begin, pos.end - 1)), 858 p = seekNext(pos.begin - 1), len > p && (c = String.fromCharCode(k), tests[p].test(c))) { 859 if (shiftR(p), buffer[p] = c, writeBuffer(), next = seekNext(p), android) { 860 var proxy = function() { 861 $.proxy($.fn.caret, input, next)(); 862 }; 863 setTimeout(proxy, 0); 864 } else input.caret(next); 865 pos.begin <= lastRequiredNonMaskPos && tryFireCompleted(); 866 } 867 e.preventDefault(); 868 } 869 } 870 } 871 function clearBuffer(start, end) { 872 var i; 873 for (i = start; end > i && len > i; i++) tests[i] && (buffer[i] = getPlaceholder(i)); 874 } 875 function writeBuffer() { 876 input.val(buffer.join("")); 877 } 878 function checkVal(allow) { 879 var i, c, pos, test = input.val(), lastMatch = -1; 880 for (i = 0, pos = 0; len > i; i++) if (tests[i]) { 881 for (buffer[i] = getPlaceholder(i); pos++ < test.length; ) if (c = test.charAt(pos - 1), 882 tests[i].test(c)) { 883 buffer[i] = c, lastMatch = i; 884 break; 885 } 886 if (pos > test.length) { 887 clearBuffer(i + 1, len); 888 break; 889 } 890 } else buffer[i] === test.charAt(pos) && pos++, partialPosition > i && (lastMatch = i); 891 return allow ? writeBuffer() : partialPosition > lastMatch + 1 ? settings.autoclear || buffer.join("") === defaultBuffer ? (input.val() && input.val(""), 892 clearBuffer(0, len)) : writeBuffer() : (writeBuffer(), input.val(input.val().substring(0, lastMatch + 1))), 893 partialPosition ? i : firstNonMaskPos; 894 } 895 var input = $(this), buffer = $.map(mask.split(""), function(c, i) { 896 return "?" != c ? defs[c] ? getPlaceholder(i) : c : void 0; 897 }), defaultBuffer = buffer.join(""), focusText = input.val(); 898 input.data($.mask.dataName, function() { 899 return $.map(buffer, function(c, i) { 900 return tests[i] && c != getPlaceholder(i) ? c : null; 901 }).join(""); 902 }), input.one("unmask", function() { 903 input.off(".mask").removeData($.mask.dataName); 904 }).on("focus.mask", function() { 905 if (!input.prop("readonly")) { 906 clearTimeout(caretTimeoutId); 907 var pos; 908 focusText = input.val(), pos = checkVal(), caretTimeoutId = setTimeout(function() { 909 input.get(0) === document.activeElement && (writeBuffer(), pos == mask.replace("?", "").length ? input.caret(0, pos) : input.caret(pos)); 910 }, 10); 911 } 912 }).on("blur.mask", blurEvent).on("keydown.mask", keydownEvent).on("keypress.mask", keypressEvent).on("input.mask paste.mask", function() { 913 input.prop("readonly") || setTimeout(function() { 914 var pos = checkVal(!0);
915 input.caret(pos), tryFireCompleted(); 916 }, 0); 917 }), chrome && android && input.off("input.mask").on("input.mask", androidInputEvent), 918 checkVal(); 919 }); 920 } 921 }); 922}); 923$('.form-control_tel').mask('+7 (999) 999-9999'); 924 925$('.modal-window').click(function(e){ 926 e.preventDefault(); 927 e.stopPropagation(); 928 var page = $(this).attr('href'); 929 console.log(page); 930 var $dialog = $('.modal-block') 931 .html('<iframe style="border: 0px; " src="' + page + '" width="100%" height="100%"></iframe>') 932 .dialog({ 933 autoOpen: false, 934 modal: true, 935 height: 625, 936 width: 500, 937 title: "ÐÑиглаÑиÑÑ Ð´ÑÑга" 938 }); 939 $dialog.dialog('open'); 940}); 941 942(function ( $ ) { 943 944 $.fn.grtyoutube = function( options ) { 945 946 return this.each(function() { 947 948 // Get video ID 949 var getvideoid = $(this).attr("youtubeid"); 950 951 // Default options 952 var settings = $.extend({ 953 videoID: getvideoid, 954 autoPlay: true, 955 theme: "dark" 956 }, options ); 957 958 // Convert some values 959 if(settings.autoPlay === true) { settings.autoPlay = 1 } else if(settings.autoPlay === false) { settings.autoPlay = 0 } 960 if(settings.theme === "dark") { settings.theme = "grtyoutube-dark-theme" } else if(settings.theme === "light") { settings.theme = "grtyoutube-light-theme" } 961 962 // Initialize on click 963 if(getvideoid) { 964 $(this).on( "click", function() { 965 $("body").append('<div class="grtyoutube-popup '+settings.theme+'">'+ 966 '<div class="grtyoutube-popup-content">'+ 967 '<span class="grtyoutube-popup-close"></span>'+ 968 '<video src="'+getvideoid+'" autoplay width="400"></video>'+ 969 // '<iframe class="grtyoutube-iframe" src="https://www.youtube.com/embed/'+settings.videoID+'?rel=0&wmode=transparent&autoplay='+settings.autoPlay+'&iv_load_policy=3" ' + 970 // 'controls="0" frameborder="0" allowfullscreen frameborder="0" allow="autoplay; fullscreen"></iframe>'+ 971 '</div>'+ 972 '</div>'); 973 }); 974 } 975 976 977 // Close the box on click or escape 978 $(this).on('click', function (event) { 979 event.preventDefault(); 980 $(".grtyoutube-popup-close, .grtyoutube-popup").click(function(){ 981 $(".grtyoutube-popup").remove(); 982 }); 983 }); 984 985 $(document).keyup(function(event) { 986 if (event.keyCode == 27){ 987 $(".grtyoutube-popup").remove(); 988 } 989 }); 990 }); 991 }; 992 993}( jQuery )); 994$(".youtube-link").grtyoutube({ theme: "dark" }); 995const sliderThumbs = new Swiper('.works-slider-2 .swiper-container', { // иÑем ÑÐ»Ð°Ð¹Ð´ÐµÑ Ð¿ÑевÑÑ Ð¿Ð¾ ÑелекÑоÑÑ 996 // задаем паÑамеÑÑÑ 997 direction: 'horizontal', // веÑÑикалÑÐ½Ð°Ñ Ð¿ÑокÑÑÑка 998 slidesPerView: 2, // показÑваÑÑ Ð¿Ð¾ 3 пÑевÑÑ 999 spaceBetween: 15, // ÑаÑÑÑоÑние Ð¼ÐµÐ¶Ð´Ñ Ñлайдами 1000 navigation: { // задаем кнопки навигаÑии 1001 nextEl: '.works-next', // кнопка Next 1002 prevEl: '.works-prev' // кнопка Prev 1003 }, 1004 freeMode: true, // пÑи пеÑеÑаÑкивании пÑевÑÑ Ð²ÐµÐ´ÐµÑ ÑÐµÐ±Ñ ÐºÐ°Ðº пÑи ÑкÑолле 1005 breakpoints: { // ÑÑÐ»Ð¾Ð²Ð¸Ñ Ð´Ð»Ñ ÑазнÑÑ ÑазмеÑов окна бÑаÑзеÑа 1006 0: { // пÑи 0px и вÑÑе 1007 slidesPerView: 1, // показÑваÑÑ Ð¿Ð¾ 1 пÑевÑÑ 1008 }, 1009 767: { // пÑи 768px и вÑÑе 1010 slidesPerView: 1, // показÑваÑÑ Ð¿Ð¾ 1 пÑевÑÑ 1011 } 1012 } 1013}); 1014 1015$(document).ready(function() { 1016 $(".price-list-filial-name").click(function() { 1017 $(this).parent().toggleClass('open') 1018 }) 1019});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.