1<!doctype html> 2 3<html lang="ru"> 4 5 <head> 6 7 <title>galereja - ÐонÑакÑÑ</title> 8 9 10 <link rel="canonical" href="https://www.historic-gallery.com/kontakty/"> 11 12 13 14 15 <link rel="preconnect" href="https://dss4hwpyv4qfp.cloudfront.net"><link rel="preconnect" href="https://site-1339227.mozfiles.com"> 16 <meta charset="utf-8" /> 17 <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0" /> 18 19 <link href="https://dss4hwpyv4qfp.cloudfront.net/designs/_shared/fonts/?family=Roboto+Slab:400,300,700&subset=latin,cyrillic,latin-ext" rel="stylesheet" type="text/css"> 20 <link rel="stylesheet" href="https://dss4hwpyv4qfp.cloudfront.net/designs/_shared/css/layout-shared.css?v=2.819" type="text/css" /> 21 <link rel="stylesheet" href="https://dss4hwpyv4qfp.cloudfront.net/designs/_shared/css/legacy-v1.css?v=2.819" type="text/css" /> 22 <link rel="stylesheet" href="https://dss4hwpyv4qfp.cloudfront.net/designs/picturesque-rustic/css/layout.css?v=2.819" type="text/css" /> 23 <link rel="stylesheet" href="https://dss4hwpyv4qfp.cloudfront.net/designs/picturesque-rustic/css/editable.css?v=2.819" type="text/css" /> 24 25 <link href="/favicon.png?0" rel="shortcut icon"> 26<link href="/favicon.png?0" rel="apple-touch-icon"> 27
27<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/jquery/2.2.4/jquery.min.js" ></script>
27 28
28<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/bannerplay/jquery.bannerplay.js?v=2.819" defer></script>
28 29
29<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/responsivevideos/jquery.responsivevideos.js?v=2.819" defer></script>
29 30
30<script src="https://dss4hwpyv4qfp.cloudfront.net/designs/_shared/js/bookings.js?v=2.819" defer></script>
30 31
31<script src="https://dss4hwpyv4qfp.cloudfront.net/designs/_shared/js/designfx.js?v=2.819" defer></script>
31 32
32<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/mozlive.js?v=2.819" ></script>
32 33
33<script>var FRONTEND_CDN = 'https://dss4hwpyv4qfp.cloudfront.net';</script>
33 34 35 36 37
37<script> 38 var mozCatalogUser = { 39 isLoggedIn: 0, 40 favorites: [] 41 } 42 </script>
42 43 44 45 46 <!-- Cookie bar --> 47
47<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/cookiebar/cookiebar.js?v=2.819"></script>
47 48
48<script> 49 $(document).ready(function() { 50 try { 51 cookieBar({ 52 theme: "light", 53 bannerPolicyLink: "", 54 language: "ru" 55 }); 56 } catch (e) {} 57 }); 58 </script>
58 59 60 61
61<script src="https://dss4hwpyv4qfp.cloudfront.net/m/localize/menu/ru/?v=2.819" defer></script>
vendor: 1 bytes, line 61
61
62<script src="https://dss4hwpyv4qfp.cloudfront.net/m/localize/cart/ru/?v=2.819" defer></script>
vendor: 1 bytes, line 62
62
63<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/component/cart.js?v=2.819" defer></script>
vendor: 1 bytes, line 63
63
64<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/component/variants.js?v=2.819" defer></script>
vendor: 1 bytes, line 64
64
65<script src="https://dss4hwpyv4qfp.cloudfront.net/libs/js/component/filter.js?v=2.819" defer></script>
65 66 67
67<script> 68 var mozPageMozApi = {"language":"ru","page":"kontakty"} 69 </script>
69 70 71 72 73 74 75 <style class="mz_customizer_style customizer"> 76 77 @media (forced-colors: active) { 78 :root { --color-header : Canvas } 79 :root { --color-title : CanvasText } 80 :root { --color-menu-text : LinkText } 81 :root { --color-menu-text-selected : CanvasText } 82 :root { --color-menu-accent : CanvasText } 83 :root { --color-submenu : Canvas } 84 :root { --color-submenu-text : LinkText }
85 :root { --color-submenu-text-selected : CanvasText } 86 :root { --color-submenu-accent : CanvasText } 87 :root { --color-link : LinkText } 88 :root { --color-button : ButtonFace } 89 :root { --color-button-text : ButtonText } 90 :root { --color-button-hover : ButtonFace } 91 :root { --color-button-text-hover : ButtonText } 92 :root { --color-sidemenu-text : LinkText } 93 :root { --color-sidemenu-text-hover : CanvasText } 94 :root { --color-h1 : CanvasText } 95 :root { --color-h2 : CanvasText } 96 :root { --color-h3 : CanvasText } 97 :root { --color-text : CanvasText } 98 :root { --color-text-strong : CanvasText } 99 :root { --color-price : CanvasText } 100 :root { --color-text-highlight : Canvas } 101 :root { --color-text-border : CanvasText } 102 :root { --color-background : Canvas } 103 :root { --color-section-bg-1 : Canvas } 104 :root { --color-section-bg-2 : Canvas } 105 :root { --color-section-bg-3 : Canvas } 106 :root { --color-footer : Canvas } 107 :root { --color-footer-text : CanvasText } 108 :root { --color-footer-link : LinkText } 109 :root { --color-footer-link-hover : CanvasText } 110 :root { --color-text-1 : CanvasText } 111 :root { --color-text-1-highlight : Canvas } 112 :root { --color-text-1-button : ButtonFace } 113 :root { --color-text-1-button-text : ButtonText } 114 } 115 116 </style> 117 <style class="mz_customizer_style customizer-fonts"> 118 </style> 119 120 121 122 123 124
124<script src="https://dss4hwpyv4qfp.cloudfront.net/designs/_shared/js/smoothscroll.js?v=2.819"></script>
124 125 126
126<script> 127 128 function initFrontpageLayout() { 129 // ensure banner content does not overlap with header 130 $('#bigbar-container').css("padding-top", $('#header').outerHeight()); 131 } 132 133 $(document).ready(function () { 134 135 if (!$('#bigbar').hasClass('inner')) { 136 137 // Resize on window size 138 $(window).on('resize load', function () { 139 initFrontpageLayout(); 140 }); 141 142 // Resize immediately 143 initFrontpageLayout(); 144 145 } 146 147 }); 148 149 </script>
149 150 151
151<script src="https://dss4hwpyv4qfp.cloudfront.net/designs/_shared/js/legacy-v1.js?v=2.819" defer></script>
151 152 153 </head> 154 155 <body class="design-boxed transparent-header footer-center " lang="ru"> 156 157 158 <div id="bigbar" class="inner is_behind"> 159 <div class="mz_component mz_banner moze-overlay-zone"> <div class="moze-banner slide" style="background-image: url('https://site-1339227.mozfiles.com/files/1339227/banners/33367781/01.JPG?1645429'); background-position: 50% 50%" data-pid="1645429"></div> 160 161 162<a class="moze-banner-slide-left" href="javascript:void(0);"></a> 163<a class="moze-banner-slide-right" href="javascript:void(0);"></a> 164 165</div> 166 <div id="bigbar-colorizer"></div> 167 </div> 168 <header id="top" class="inner over-bigbar legacy-sticky-menu "> 169 <div id="header"> 170 <div id="header-side"> 171 <div class="mz_component mz_lngselect moze-overlay-zone" id="languages"> <button class="menu-icon" href="javascript:;" aria-label="ÐÑÐ±Ð¾Ñ ÑзÑка" aria-haspopup="true" aria-controls="languages-menu"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 102 102"><path d="M51.61,1H50.39a50,50,0,0,0,0,100h1.22a50,50,0,0,0,0-100ZM33.86,10.46A47.3,47.3,0,0,0,27.27,22H17.92A44,44,0,0,1,33.86,10.46ZM13.49,28H25.18a80.06,80.06,0,0,0-3.13,20H7.11A43.47,43.47,0,0,1,13.49,28ZM12,71h-.2A43.57,43.57,0,0,1,7.11,54H22.05a82,82,0,0,0,2.31,17Zm3.51,6H26.14a49.63,49.63,0,0,0,7.72,14.54A44.19,44.19,0,0,1,15.51,77ZM48,94.61C41.81,93,36.23,86.45,32.55,77H48ZM48,71H30.58a73.76,73.76,0,0,1-2.52-17H48Zm0-23H28.06a72.89,72.89,0,0,1,3.41-20H48Zm0-26H33.83C37.46,14.18,42.49,8.83,48,7.39Zm40.51,6a43.47,43.47,0,0,1,6.38,20H80a80.06,80.06,0,0,0-3.13-20Zm-4.43-6H74.73a47.3,47.3,0,0,0-6.59-11.54A44,44,0,0,1,84.08,22ZM54,7.39C59.51,8.83,64.54,14.18,68.17,22H54ZM54,28H70.53a72.89,72.89,0,0,1,3.41,20H54Zm0,26H73.94a73.76,73.76,0,0,1-2.52,17H54Zm0,40.61V77H69.45C65.77,86.45,60.19,93,54,94.61Zm14.14-3.07A49.63,49.63,0,0,0,75.86,77H86.49A44.19,44.19,0,0,1,68.14,91.54ZM90.2,71H77.64A82,82,0,0,0,80,54H94.89A43.52,43.52,0,0,1,90.2,71Z"/></svg> RUS</button> 172 <ul id="languages-menu" role="menu"> 173 <li class="selected" role="none"> 174 <a href="/" hreflang="ru" role="menuitem" aria-label="Ð ÑÑÑкий" aria-current="true">RUS</a> 175 </li> 176 <li role="none"> 177 <a href="/nachalo-1/" hreflang="lv" role="menuitem" aria-label="LatvieÅ¡u" >LAT</a> 178 </li> 179 </ul> 180 </div> 181 </div> 182 <button id="menu-opener" aria-label="Ðлавное менÑ" class="mobile-menu-opener clearbutton"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 102 102"><path d="M4,25a3,3,0,0,1,0-6H98a3,3,0,0,1,0,6ZM4,54a3,3,0,0,1,0-6H98a3,3,0,0,1,0,6ZM4,83a3,3,0,0,1,0-6H98a3,3,0,0,1,0,6Z"/></svg></button> 183<button id="languages-opener" aria-label="ÐÑÐ±Ð¾Ñ ÑзÑка" class="mobile-menu-opener clearbutton"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 102 102"><path d="M51.61,1H50.39a50,50,0,0,0,0,100h1.22a50,50,0,0,0,0-100ZM33.86,10.46A47.3,47.3,0,0,0,27.27,22H17.92A44,44,0,0,1,33.86,10.46ZM13.49,28H25.18a80.06,80.06,0,0,0-3.13,20H7.11A43.47,43.47,0,0,1,13.49,28ZM12,71h-.2A43.57,43.57,0,0,1,7.11,54H22.05a82,82,0,0,0,2.31,17Zm3.51,6H26.14a49.63,49.63,0,0,0,7.72,14.54A44.19,44.19,0,0,1,15.51,77ZM48,94.61C41.81,93,36.23,86.45,32.55,77H48ZM48,71H30.58a73.76,73.76,0,0,1-2.52-17H48Zm0-23H28.06a72.89,72.89,0,0,1,3.41-20H48Zm0-26H33.83C37.46,14.18,42.49,8.83,48,7.39Zm40.51,6a43.47,43.47,0,0,1,6.38,20H80a80.06,80.06,0,0,0-3.13-20Zm-4.43-6H74.73a47.3,47.3,0,0,0-6.59-11.54A44,44,0,0,1,84.08,22ZM54,7.39C59.51,8.83,64.54,14.18,68.17,22H54ZM54,28H70.53a72.89,72.89,0,0,1,3.41,20H54Zm0,26H73.94a73.76,73.76,0,0,1-2.52,17H54Zm0,40.61V77H69.45C65.77,86.45,60.19,93,54,94.61Zm14.14-3.07A49.63,49.63,0,0,0,75.86,77H86.49A44.19,44.19,0,0,1,68.14,91.54ZM90.2,71H77.64A82,82,0,0,0,80,54H94.89A43.52,43.52,0,0,1,90.2,71Z"/></svg></button> </div> 184 <div id="bigbar-container"> 185 <div id="bigbar-overlay"> 186 <div id="bigbar-centerpiece"> 187 <div id="title"> 188 <a href="/"><div class="mz_component mz_wysiwyg mz_editable"> <div class="moze-wysiwyg-editor " > 189 ÐалеÑÐµÑ 190 </div> 191</div></a> 192 </div> 193 <div class="mz_component mz_menu moze-overlay-zone" id="menu"> 194 195 <ul role="menu"> 196 <li role="none"><a href="/" role="menuitem">ÐаÑало</a> </li> 197 <li role="none"><a href="/katalog/" role="menuitem">ÐаÑалог</a> </li> 198 <li role="none"><a href="/stranica/" role="menuitem">РнаÑ</a> </li> 199 <li class="selected" role="none"><a href="/kontakty/" role="menuitem" aria-current="true">ÐонÑакÑÑ</a> </li> 200 <li role="none"><a href="/galereja/" role="menuitem">ÐалеÑеÑ</a> </li> 201 </ul> 202</div> 203 </div> 204 </div> 205 </div> 206 </header> 207 208 <div id="belowfold"> 209 <div id="wrap"> 210 211 212 213 214 215
215<script> 216 217function webformFrontendFx(settings) 218{ 219 let defaults = { 220 component : null, 221 componentID : 0, 222 webform : null 223 }; 224 225 this.settings = $.extend(true, {}, defaults, settings); 226 227 this.serviceComboBox = null; 228 this.calendarComboBox = null; 229 230 this.widgetExists = false; 231 this.widgetInitData = null; 232 this.widgetStateData = null; 233 234 this.bookingRequest = { 235 service : null, 236 serviceID : null, 237 dateFrom : null, 238 dateTo : null, 239 timeFrom : null, 240 timeTo : null, 241 formatted : null 242 }; 243 244 this.init(); 245 this.initBooking(); 246} 247 248webformFrontendFx.prototype.init = function() 249{ 250 this.settings.webform 251 .off('submit') 252 .on('submit', () => this.submitForm()); 253} 254 255webformFrontendFx.prototype.initBooking = function() 256{ 257 this.serviceComboBox = this.settings.webform.find('select[id^="moze-webform-bookings-service-"]'); 258 this.calendarComboBox = this.settings.webform.find('select[id^="moze-webform-bookings-time-"]'); 259 260 if (this.serviceComboBox.length == 0 || this.calendarComboBox.length == 0) { 261 this.serviceComboBox = null; 262 this.calendarComboBox = null; 263 return; 264 } 265 266 this.widgetExists = true; 267 268 // Service combo box 269 270 this.serviceComboBox 271 .off('change') 272 .on('change', (event) => { 273 274 new mozLive3({ 275 source: { 276 id : this.settings.componentID, 277 name : this.settings.component.attr('data-name') 278 }, 279 action: 'webform-booking-init', 280 parameters: { 281 service: event.currentTarget.value 282 }, 283 response: { 284 callback: [ 285 (response) => { 286 this.widgetInitData = null; 287 if (response.error) { 288 console.warn(response.errorMessage); 289 return; 290 } 291 this.widgetInitData = response.data; 292 } 293 ] 294 } 295 }); 296 }) 297 .trigger('change'); 298 299 // Calendar combo box 300 301 this.calendarComboBox 302 .off('mousedown keydown') 303 .on('mousedown keydown', (event) => { 304 if ((event.type == 'mousedown') || 305 (event.type == 'keydown' && (event.key === ' ' || event.key === 'Enter'))) { 306 event.preventDefault(); 307 this.initBookingWidget(); 308 } 309 }); 310} 311 312webformFrontendFx.prototype.initBookingWidget = function() 313{ 314 if (!this.widgetExists || !this.widgetInitData) { 315 return; 316 } 317 318 let widgetOptions = { 319 320 type: this.widgetInitData.type, 321 unit: this.widgetInitData.unit, 322 323 maxFutureMonths: this.widgetInitData.maxFutureMonths, 324 minDaysRange: this.widgetInitData.minDaysRange, 325 maxDaysRange: this.widgetInitData.maxDaysRange, 326 327 mozLive3Parameters: { 328 componentID: this.settings.componentID, 329 componentName: this.settings.component.attr('data-name'), 330 serviceID: this.serviceComboBox.val(), 331 onWidgetInitializedAction: 'webform-booking-date-from', 332 onDateFromSelectedAction: 'webform-booking-time-from', 333 onTimeFromSelectedActions: 'webform-booking-date-to', 334 onDateToSelectedAction: 'webform-booking-time-to', 335 }, 336 337 localization: { 338 txtSelect: 'ÐÑбÑаÑÑ', 339 txtSelectTime: 'ÐÑбеÑиÑе вÑемÑ', 340 txtCancel: 'ÐÑмена', 341 txtCalendar: 'ÐалендаÑÑ', 342 txtNotSelected: 'Ðе вÑбÑано', 343 txtFrom: 'С', 344 txtTo: 'Ðо', 345 txtTitle: 'ÐÑбеÑиÑе даÑÑ Ð¸ вÑемÑ', 346 txtPreviousMonth: 'ÐÑедÑдÑÑий меÑÑÑ', 347 txtNextMonth: 'СледÑÑÑий меÑÑÑ', 348 txtMonthNames: [ 349 'ЯнваÑÑ', 350 'ФевÑалÑ', 351 'ÐаÑÑ', 352 'ÐпÑелÑ', 353 'Ðай', 354 'ÐÑнÑ', 355 'ÐÑлÑ', 356 'ÐвгÑÑÑ', 357 'СенÑÑбÑÑ', 358 'ÐкÑÑбÑÑ', 359 'ÐоÑбÑÑ', 360 'ÐекабÑÑ' 361 ], 362 txtDayNames: [ 363 'ÐÑ', 364 'Ðн', 365 'ÐÑ', 366 'СÑ', 367 'ЧÑ', 368 'ÐÑ', 369 'Сб', 370 ], 371 txtNightSingular: '%s ноÑÑ',
372 txtNightPlural: '%s ноÑей' 373 }, 374 375 onSubmit: (widget, result) => { 376 377 this.widgetStateData = widget.saveState(); 378 379 let deferred = $.Deferred(); 380 deferred.resolve(true); 381 382 // Fills the booking request data. 383 384 let selectedServiceID = this.serviceComboBox.val(), 385 selectedService = this.serviceComboBox.find('option[value="' + selectedServiceID + '"]').text(); 386 387 this.bookingRequest = result; 388 389 this.bookingRequest.serviceID = selectedServiceID; 390 this.bookingRequest.service = selectedService; 391 392 let option = $('<option>') 393 .html(this.bookingRequest.formatted); 394 395 this.calendarComboBox.find('option').remove(); 396 397 // Creates a request to draft a booking event. 398 399 new mozLive3({ 400 source: { 401 id : this.settings.componentID, 402 name : this.settings.component.attr('data-name') 403 }, 404 action: 'webform-booking-draft', 405 parameters: { 406 token: this.widgetInitData.draftToken, 407 booking: this.bookingRequest 408 }, 409 response: { 410 callback: [ 411 (response) => { 412 413 if (response.error) { 414 console.warn(response.errorMessage); 415 return; 416 } 417 418 if (response.data.success != true) { 419 alert('Booking not available anymore!'); 420 return; 421 } 422 423 this.calendarComboBox.append(option); 424 this.calendarComboBox[0].selectedIndex = 0; 425 } 426 ] 427 } 428 }); 429 430 return deferred.promise(); 431 } 432 }; 433 434 let widget = new BookingWidget(widgetOptions); 435 widget.show(this.widgetStateData); 436} 437 438webformFrontendFx.prototype.getFormData = function() 439{ 440 let result = {}; 441 442 this.settings.webform.find('[name^="moze-webform-ctrl-"]').each((index, ctrl) => { 443 444 let name = $(ctrl).attr('name'); 445 let value = ''; 446 447 if ($(ctrl).attr('type') == 'checkbox') { 448 value = $(ctrl).is(':checked') ? 1 : 0; 449 } 450 else { 451 value = $.trim($(ctrl).val()); 452 } 453 454 result[name] = value; 455 }); 456 457 // Checkbox groups submit their checked values as one comma separated string. 458 459 this.settings.webform.find('div.moze-checkboxgroup').each((index, group) => { 460 let values = []; 461 $(group).find('input[type="checkbox"]:checked').each((i, checkbox) => { 462 values.push($(checkbox).val()); 463 }); 464 result['moze-webform-ctrl-' + $(group).data('ctrl-id')] = values.join(', '); 465 }); 466 467 if (this.widgetExists) { 468 result.booking = this.bookingRequest; 469 } 470 471 return result; 472} 473 474webformFrontendFx.prototype.isSubmitting = function() 475{ 476 return this.settings.webform.find('input[type="submit"]').prop('disabled') === true; 477} 478 479webformFrontendFx.prototype.toggleSubmitting = function(isSubmitting) 480{ 481 this.settings.webform.find('input[type="submit"]').prop('disabled', isSubmitting); 482} 483 484webformFrontendFx.prototype.validateForm = function() 485{ 486 let result = true; 487 488 let requiredCtrls = this.settings.webform.find('[data-required]'); 489 requiredCtrls.removeClass('moze-formerror').removeAttr('aria-invalid'); 490 491 requiredCtrls.each((index, ctrl) => { 492 493 let subResult = true; 494 let validator = $(ctrl).data('required'); 495 496 switch (validator) { 497 case 'textbox': 498 subResult = $(ctrl).val() !== ''; 499 break; 500 case 'multiline': 501 subResult = $(ctrl).val() !== ''; 502 break; 503 case 'checkbox': 504 subResult = $(ctrl).is(':checked'); 505 break; 506 case 'checkboxgroup': 507 subResult = $(ctrl).find('input[type="checkbox"]:checked').length > 0; 508 break; 509 case 'combobox': 510 subResult = $(ctrl).find(':selected').attr('disabled') != 'disabled'; 511 break; 512 case 'email': 513 subResult = $.trim($(ctrl).val()).match(/^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,4})$/i) !== null; 514 break; 515 } 516 517 if (subResult === false) { 518 $(ctrl).addClass('moze-formerror').attr('aria-invalid', true); 519 } 520 521 result = result & subResult; 522 }); 523 524 if (this.widgetExists) { 525 526 let hasBookingRequest = 527 this.bookingRequest !== null && 528 this.bookingRequest.serviceID !== null; 529 530 this.calendarComboBox 531 .toggleClass('moze-formerror', !hasBookingRequest) 532 .attr('aria-invalid', !hasBookingRequest); 533 534 result = result & hasBookingRequest; 535 } 536 537 return result; 538} 539 540webformFrontendFx.prototype.updateSubmittedUrl = function() 541{ 542 try { 543 window.history.replaceState(window.history.state, '', 544 '/kontakty/params/submitted/' + this.settings.componentID + '/#webform-' + this.settings.componentID); 545 } 546 catch (e) { 547 console.log(e); 548 return; 549 } 550 551 // The Meta pixel does not track history changes by itself. 552 553 if (typeof fbq == 'function') { 554 try { 555 fbq('track', 'PageView'); 556 } 557 catch (e) { 558 console.log(e); 559 } 560 } 561} 562 563webformFrontendFx.prototype.triggerLeadEvents = function() 564{ 565 if (typeof gtag == 'function') { 566 try { 567 gtag('event', 'generate_lead'); 568 } 569 catch (e) { 570 console.log(e); 571 } 572 } 573 574 if (typeof fbq == 'function') { 575 try { 576 fbq('track', 'Lead'); 577 } 578 catch (e) { 579 console.log(e); 580 } 581 } 582} 583 584webformFrontendFx.prototype.submitForm = function() 585{ 586 if (this.isSubmitting()) { 587 return false;
588 } 589 590 if (!this.validateForm()) { 591 alert(this.settings.webform.data('failuremsg')); 592 let firstErrorTag = this.settings.webform.find('.moze-formerror').first(); 593 if (firstErrorTag.length) { 594 firstErrorTag.focus(); 595 } 596 return false; 597 } 598 599 this.toggleSubmitting(true); 600 601 const submitFormWithMozLive = (bookingEventRecID) => { 602 new mozLive3({ 603 source: { 604 id : this.settings.componentID, 605 name : this.settings.component.attr('data-name') 606 }, 607 action: 'webform-submit', 608 parameters: { 609 data : this.getFormData(), 610 event : bookingEventRecID 611 }, 612 response: { 613 callback: [ 614 (response) => { 615 616 // Errors are routed here as well (responseOnError) so that the form is unlocked 617 // and the visitor can try again. 618 619 if (response && response.error === true) { 620 if (response.reason == 'maintenance') { 621 alert('ÐÑ ÑейÑÐ°Ñ Ð½Ðµ можем обÑабоÑаÑÑ Ð²Ð°Ñ Ð·Ð°Ð¿ÑоÑ. ÐовÑоÑиÑе попÑÑÐºÑ Ð¿Ð¾Ð·Ð¶Ðµ.'); 622 } 623 this.toggleSubmitting(false); 624 return; 625 } 626 627 // The response is the component re-rendered in its submitted state. An empty one 628 // would wipe the form off the page, so fall back to a reload instead. 629 630 if (typeof response !== 'string' || response === '') { 631 window.location.reload(); 632 return; 633 } 634 635 if ($(response).attr('data-submit-ok') == '1') { 636 this.updateSubmittedUrl(); 637 this.triggerLeadEvents(); 638 } 639 640 this.settings.component.replaceWith(response); 641 } 642 ] 643 }, 644 responseOnError: true, 645 onError: () => { 646 alert('ÐÑоизоÑла оÑибка. ÐожалÑйÑÑа, обновиÑе ÑÑÑаниÑÑ Ð¸ попÑобÑйÑе Ñнова.'); 647 this.toggleSubmitting(false); 648 } 649 }); 650 }; 651 652 if (this.widgetExists) { 653 654 // The webform contains booking fields. 655 // We need to commit the draft booking first. 656 657 new mozLive3({ 658 source: { 659 id : this.settings.componentID, 660 name : this.settings.component.attr('data-name') 661 }, 662 action: 'webform-booking-commit', 663 parameters: { 664 component: this.settings.componentID, 665 token: this.widgetInitData.draftToken, 666 booking: this.bookingRequest 667 }, 668 response: { 669 callback: [ 670 (response) => { 671 672 // Errors are routed here as well (responseOnError) so that the form is unlocked 673 // and the visitor can try again. 674 675 if (response.error) { 676 if (response.reason == 'maintenance') { 677 alert('ÐÑ ÑейÑÐ°Ñ Ð½Ðµ можем обÑабоÑаÑÑ Ð²Ð°Ñ Ð·Ð°Ð¿ÑоÑ. ÐовÑоÑиÑе попÑÑÐºÑ Ð¿Ð¾Ð·Ð¶Ðµ.'); 678 } 679 else { 680 console.warn(response.errorMessage); 681 } 682 this.toggleSubmitting(false); 683 return; 684 } 685 if (response.data.success != true) { 686 alert('Booking not available anymore!'); 687 this.toggleSubmitting(false); 688 return; 689 } 690 submitFormWithMozLive(response.data.eventRecID); 691 } 692 ] 693 }, 694 responseOnError: true, 695 onError: () => { 696 alert('ÐÑоизоÑла оÑибка. ÐожалÑйÑÑа, обновиÑе ÑÑÑаниÑÑ Ð¸ попÑобÑйÑе Ñнова.'); 697 this.toggleSubmitting(false); 698 } 699 }); 700 } 701 else { 702 703 // No booking fields in the webform. 704 705 submitFormWithMozLive(null); 706 } 707 708 return false;
709} 710 711$(document).ready(() => { 712 $('div.mz_component.mz_form form.moze-form').each((index, form) => { 713 new webformFrontendFx({ 714 component : $(form).closest('div.mz_form'), 715 componentID : $(form).closest('div.mz_form').data('cid'), 716 webform : $(form) 717 }); 718 }); 719}); 720 721</script>
721 722 <main class="mz_component mz_grid" data-cid="33367667" data-pid="7204322"> 723 724 725 726 <div class="section section-customizable section-bg-none section-text-color-none section-height-s section-width-l" 727 data-row-id="6488026" 728 data-row-slice="form" 729 data-row-slice-variant="form-right-wide"> 730 731 <!-- slice-form --> 732 733 <div class="container"> 734 735 736 <div class="gridrow"> 737 738 <div class="column-4-12"> 739 <div class="mz_component mz_wysiwyg mz_editable"> <div class="moze-wysiwyg-editor " > 740 <h3> ЧаÑÑнÑй мÑзей.</h3><p> ÐаÑвиÑ. ÐилÑпе</p><img src="https://site-1339227.mozfiles.com/files/1339227/medium/14_sentjabrja.jpg" alt="14_sentjabrja.jpg"><img src="https://site-1339227.mozfiles.com/files/1339227/jemblema2.jpg?1620874606"><img src="https://site-1339227.mozfiles.com/files/1339227/medium/11_ijulja3.jpg"><div class="moze-maps" data-lat="56.3891843" data-lng="28.1168402" data-zoom="14" style="height: 480px; width: 100%;" data-staticimg="" data-query="Zilupe" contenteditable="false"></div> 741 </div> 742</div> 743 </div> 744 745 <div class="column-8-12"> 746 <div id="editable"> 747 <div class="mz_component mz_wysiwyg mz_editable"> <div class="moze-wysiwyg-editor " > 748 <h2>ÐбÑаÑÐ½Ð°Ñ ÑвÑзÑ</h2><p>ÐÑ Ð¼Ð¾Ð¶ÐµÑе ÑвÑзаÑÑÑÑ Ñ Ð½Ð°Ð¼Ð¸, заполнив ÑÑÑ ÑоÑмÑ.</p> 749 </div> 750</div> 751 <div id="webform-33367668" class="mz_component mz_editable mz_form" data-cid="33367668"><div class=""> 752 <form action="javascript:;" class="moze-form" method="post" data-failuremsg = "ÐожалÑйÑÑа, заполниÑе вÑе Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñе полÑ."> 753 754 755 756 <label for="moze-webform-ctrl-3694729">ÐÐ¼Ñ <span title="ÐбÑзаÑелÑное поле">*</span></label><br /> 757 <input id="moze-webform-ctrl-3694729" name="moze-webform-ctrl-3694729" type="text" data-required="textbox" required /> 758 759 760 761 762 763 764 765 766 <br> 767 768 769 770 771 772 773 774 775 <label for="moze-webform-ctrl-3694730">ÐдÑÐµÑ ÑлекÑÑонной поÑÑÑ <span title="ÐбÑзаÑелÑное поле">*</span></label><br /> 776 <input id="moze-webform-ctrl-3694730" name="moze-webform-ctrl-3694730" type="email" autocomplete="email" data-required="email" required /> 777 778 779 780 <br> 781 782 783 784 785 <label for="moze-webform-ctrl-3694731">СообÑение <span title="ÐбÑзаÑелÑное поле">*</span></label><br /> 786 <textarea id="moze-webform-ctrl-3694731" name="moze-webform-ctrl-3694731" data-required="multiline" required ></textarea> 787 788 789 790 791 792 793 794 <br> 795 796 797 798 <label for="moze-webform-ctrl-3901118"></label><br /> 799 <input id="moze-webform-ctrl-3901118" name="moze-webform-ctrl-3901118" type="text" /> 800 801 802 803 804 805 806 807 808 <br> 809 810 811 812 <label for="moze-webform-ctrl-3901119"></label><br /> 813 <input id="moze-webform-ctrl-3901119" name="moze-webform-ctrl-3901119" type="text" /> 814 815 816 817 818 819 820 821 822 <br> 823 824 825 <input class="mz_notforhumans" name="moze-webform-ctrl-slazds" tabindex="-1" type="search" autocomplete="off" /> 826 <input class="moze-formbutton" type="submit" value="ÐÑпÑавиÑÑ" /> 827 828 </form> 829 830 831</div></div> 832 </div> 833 </div> 834 835 836 </div> 837 838 </div> 839 840</div> 841 842 </main> 843 844 845 <div class="mz_component mz_catalogcart mz_catalogsidecart" data-name="maincatalogcartside" data-type="catalogcartside" data-page-type="2" data-catalog-layout="top" data-cart-id=""><div id="shopbar"> 846 <button id="shopbar-search" class="shopbar-search" aria-label="ÐоиÑк" aria-haspopup="dialog"> 847 <svg xmlns="http://www.w3.org/2000/svg"></svg> 848 </button> 849 <button id="shopbar-cart" class="shopbar-cart" aria-label="ÐоÑзина" aria-haspopup="dialog"> 850 <svg xmlns="http://www.w3.org/2000/svg"></svg>
851 <span class="moze-value-bubble">0</span> 852 </button> 853 </div> 854 855 856<div id="shopbar-sidecart" class="sliding-panel" role="dialog" aria-labelledby="cat-sidecart-heading"> 857 <div class="sliding-panel-header"> 858 <div class="mz_editable"> <h2 id="cat-sidecart-heading">ÐоÑзина</h2> 859 </div> 860 <button id="shopbar-sidecart-close" class="sliding-panel-close" aria-label="ÐакÑÑÑÑ"> 861 <svg xmlns="http://www.w3.org/2000/svg"></svg> 862 </button> 863 </div> 864 <div id="shopbar-sidecart-base" class="sliding-panel-body"> 865 866<p>ÐоÑзина пÑÑÑа.</p> 867 868 869 </div> 870</div> 871 872 873<div id="cat-search-panel" style="display: none" role="dialog"> 874 <form id="shopbar-searchform" action="/katalog/" class="moze-catalog-searchbox-sideform moze-form" method="post" role="search"> 875 <input aria-label="ÐоиÑк" class="search-query" type="text" value="" placeholder="ÐоиÑк"> 876 <button class="search-btn" aria-label="ÐоиÑк"></button> 877 <button class="close-btn" aria-label="ÐакÑÑÑÑ"><svg xmlns="http://www.w3.org/2000/svg"></svg></button> 878 </form> 879</div> 880
881<script> 882 $(document).ready(function() { 883 initShopWidget(); 884 initShopSidecart(); 885 }); 886</script>
886</div> 887 888 889 890 </div> 891 892 <footer id="bottom" class="mz_footer "> 893 894 <div id="footer"> 895 <div id="foottext"> 896 <div class="mz_component mz_wysiwyg mz_editable"> <div class="moze-wysiwyg-editor " > 897 </div> 898</div> 899 </div> 900 <div id="social" > 901 902 </div> 903 </div> 904 </footer> 905 906 907 908 <br><br> 909 </div> 910 911 912 <meta name="google-site-verification" content="-aEIo5ByhUH-d3J56JbmhTp7kFzCE8ajUnA_2ujBh0w" /> 913 914 <!-- Google Analytics Code --> 915
915<script>
vendor: 368 bytes, lines 915-920
915 916 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 917 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 918 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 919 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 920 ga('create', '
920UA-134623852-1
vendor: 48 bytes, lines 920-922
920', 'auto'); 921 ga('send', 'pageview'); 922
922</script>
922 923 924
924<script> 925 $(document).ready(function(){ 926 $(".mz_wysiwyg").responsiveVideos(); 927 }); 928 </script>
928 929 930 931 <link href="https://dss4hwpyv4qfp.cloudfront.net/apps/addons/sharebuttons/script/jquery.sharebuttons.css?v=2.819" rel="stylesheet" type="text/css"> 932
932<script src="https://dss4hwpyv4qfp.cloudfront.net/apps/addons/sharebuttons/script/jquery.sharebuttons.js?v=2.819"></script>
932 933
933<script> 934 $(document).ready(function() { 935 $("body").shareButtons({ 936 showFacebook: true, 937 showTwitter: true, 938 showPinterest: true, 939 showGplus: true, 940 showDraugiem: true, 941 showVkontakte: true, 942 language: "en", 943 }); 944 }); 945 </script>
945 946 947 948 949
949<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"09eebd7cd2a2442e91519aff79eb4007","r":1,"spa":2}' crossorigin="anonymous"></script>
949 950</body> 951 952</html>
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.