diff --git a/modules/translations/index.js b/modules/translations/index.js index 18d1cda..7f3adf5 100644 --- a/modules/translations/index.js +++ b/modules/translations/index.js @@ -294,6 +294,7 @@ const translations = { 'booking.discount': 'Скидка', 'booking.total': 'Итого к оплате:', 'booking.submit': 'Отправить заявку', + 'booking.consent': 'Я согласен на обработку персональных данных в соответствии с', 'booking.sending': 'Отправка...', 'booking.success_sent': 'Заявка отправлена Рауфу Алексеевичу!', 'booking.send_error': 'Ошибка отправки', @@ -620,6 +621,7 @@ const translations = { 'booking.discount': 'Discount', 'booking.total': 'Total to pay:', 'booking.submit': 'Send Request', + 'booking.consent': 'I consent to the processing of personal data in accordance with the', 'booking.sending': 'Sending...', 'booking.success_sent': 'Request sent to Rauf Alekseevich!', 'booking.send_error': 'Sending Error', @@ -949,6 +951,7 @@ const translations = { 'booking.discount': 'Аскидка', 'booking.total': 'Зегьы ашәахә:', 'booking.submit': 'Азаиака аашьҭра', + 'booking.consent': 'Сара сақәшаӡом аперсоналтә дыррақәа аус адулара азы иаҳасабала', 'booking.sending': 'Иаашьҭуеит...', 'booking.success_sent': 'Азаиака Рауф Алексееви иахь иаашьҭын!', 'booking.send_error': 'Аашьҭра агха', diff --git a/public/css/style.css b/public/css/style.css index 7d8ceba..9ab3fa6 100644 --- a/public/css/style.css +++ b/public/css/style.css @@ -1202,6 +1202,82 @@ h1, h2, h3, h4 { color: rgba(255,255,255,0.4); font-size: clamp(0.75rem, 1.2vw, 0.85rem); } +.footer-legal { + margin-top: 8px; +} +.footer-legal a { + color: rgba(255,255,255,0.4); + text-decoration: none; + transition: color 0.3s; +} +.footer-legal a:hover { + color: var(--gold); +} +.footer-legal-divider { + margin: 0 8px; + color: rgba(255,255,255,0.15); +} + +/* Cookie Banner */ +.cookie-banner { + position: fixed; + bottom: 0; + left: 0; + right: 0; + z-index: 9999; + background: var(--dark); + border-top: 2px solid var(--gold); + padding: clamp(12px, 2vw, 18px) 0; + box-shadow: 0 -5px 30px rgba(0,0,0,0.3); + display: none; +} +.cookie-banner.show { + display: block; +} +.cookie-banner-content { + max-width: 1200px; + margin: 0 auto; + padding: 0 20px; + display: flex; + align-items: center; + justify-content: center; + gap: 20px; + flex-wrap: wrap; +} +.cookie-banner-text { + color: rgba(255,255,255,0.8); + font-size: clamp(0.8rem, 1.1vw, 0.9rem); + line-height: 1.5; + flex: 1; + min-width: 200px; +} +.cookie-banner-text i { + color: var(--gold); + margin-right: 8px; +} +.cookie-banner-text a { + color: var(--gold); + text-decoration: underline; +} +.cookie-banner-text a:hover { + color: #e6b84d; +} +.cookie-accept-btn { + background: var(--gold); + color: var(--dark); + border: none; + padding: clamp(8px, 1.5vw, 12px) clamp(20px, 3vw, 30px); + border-radius: 50px; + font-weight: 700; + font-size: clamp(0.8rem, 1vw, 0.9rem); + cursor: pointer; + transition: all 0.3s ease; + white-space: nowrap; +} +.cookie-accept-btn:hover { + background: #e6b84d; + transform: translateY(-2px); +} /* Animations */ @keyframes fadeInUp { diff --git a/public/index.html b/public/index.html index eb9781c..7ba8540 100644 --- a/public/index.html +++ b/public/index.html @@ -722,6 +722,11 @@ @@ -808,6 +813,13 @@
+
+ + +
@@ -874,6 +886,20 @@ }); }) .catch(function() {}); + + function acceptCookies() { + try { localStorage.setItem('cookie_consent', '1'); } catch(e) {} + document.getElementById('cookieBanner').classList.remove('show'); + } + + function initCookieBanner() { + try { + if (localStorage.getItem('cookie_consent') === '1') return; + } catch(e) {} + document.getElementById('cookieBanner').classList.add('show'); + } + + initCookieBanner(); })(); @@ -966,6 +992,16 @@
+ + diff --git a/public/privacy.html b/public/privacy.html new file mode 100644 index 0000000..b55e3aa --- /dev/null +++ b/public/privacy.html @@ -0,0 +1,280 @@ + + + + + + Политика конфиденциальности — Hotel 777 + + + + + + + + + +
+
+ +

Политика конфиденциальности

+

Настоящая Политика определяет порядок обработки и защиты персональных данных пользователей сайта отеля Hotel 777

+
+ Вернуться на сайт +
+
+ +
+
+
+ Последнее обновление: июль 2026 г. +
+ +

1. Общие положения

+

Настоящая Политика конфиденциальности (далее — Политика) разработана в соответствии с Федеральным законом Российской Федерации от 27.07.2006 № 152-ФЗ «О персональных данных» и законодательством Республики Абхазия в области защиты персональных данных.

+

Политика действует в отношении всех персональных данных, которые сайт отеля Hotel 777 (далее — Сайт) может получить от Пользователя во время использования им Сайта, а также при заполнении форм бронирования и оставлении отзывов.

+

Использование Сайта означает безоговорочное согласие Пользователя с настоящей Политикой и указанными в ней условиями обработки его персональных данных.

+ +

2. Владелец Сайта (Оператор персональных данных)

+
+

Оператор

+
Рауф Алексеевич
+
Республика Абхазия, Гудаутский район, с. Мгудзырхуа, Набережная ул., 1
+
8 (940) 927-00-80
+
+ +

3. Какие данные мы собираем

+

При использовании Сайта мы можем собирать следующие категории персональных данных:

+ +

Мы не собираем паспортные данные, данные банковских карт, адреса электронной почты (кроме случаев, когда вы сами их предоставляете) и иную чувствительную информацию.

+ +

4. Цели обработки персональных данных

+

Собранные персональные данные используются исключительно для следующих целей:

+ +

Мы не передаём персональные данные третьим лицам, за исключением случаев, предусмотренных законодательством.

+ +

5. Файлы cookie

+

Сайт использует следующие типы файлов cookie:

+ +

Мы не используем маркетинговые и рекламные cookie, а также cookie третьих лиц для отслеживания Пользователей.

+

Пользователь может отключить cookie в настройках браузера, однако это может повлиять на функциональность Сайта. Продолжая использовать Сайт без изменения настроек браузера, Пользователь соглашается на использование файлов cookie.

+ +

6. Хранение и защита данных

+

Персональные данные хранятся в базе данных SQLite на сервере, расположенном на территории Российской Федерации, что соответствует требованиям Федерального закона № 152-ФЗ о локализации персональных данных граждан РФ.

+

Мы принимаем необходимые организационные и технические меры для защиты персональных данных от неправомерного доступа, уничтожения, изменения, блокирования, копирования и распространения, включая:

+ +

Срок хранения персональных данных определяется целями их обработки. Данные бронирований хранятся в течение всего периода деятельности отеля для внутреннего учёта.

+ +

7. Передача данных третьим лицам

+

Мы не продаём, не обмениваем и не передаём персональные данные Пользователей третьим лицам. Исключения составляют:

+ + +

8. Контактная информация

+
+

По всем вопросам, связанным с обработкой персональных данных

+
Рауф Алексеевич (владелец отеля)
+
8 (940) 927-00-80
+
Республика Абхазия, Гудаутский район, с. Мгудзырхуа, Набережная ул., 1
+
+ +
+

Законодательная основа

+

Настоящая Политика разработана в соответствии с Федеральным законом РФ от 27.07.2006 № 152-ФЗ «О персональных данных» и законодательством Республики Абхазия.

+
+
+
+ + + + diff --git a/public/terms.html b/public/terms.html new file mode 100644 index 0000000..8d5b398 --- /dev/null +++ b/public/terms.html @@ -0,0 +1,255 @@ + + + + + + Пользовательское соглашение — Hotel 777 + + + + + + + + + +
+
+ +

Пользовательское соглашение

+

Условия использования сайта отеля Hotel 777. Пожалуйста, внимательно ознакомьтесь перед бронированием.

+
+ Вернуться на сайт +
+
+ +
+
+
+ Последнее обновление: июль 2026 г. +
+ +

1. Общие положения

+

1.1. Настоящее Пользовательское соглашение (далее — Соглашение) регулирует отношения между владельцем сайта отеля Hotel 777 (далее — Администрация) и физическим лицом (далее — Пользователь) по использованию сайта, расположенного в сети Интернет по адресу домена, на котором размещён данный сайт (далее — Сайт).

+

1.2. Использование Сайта, включая просмотр страниц, заполнение форм бронирования и оставление отзывов, означает полное и безоговорочное принятие Пользователем условий настоящего Соглашения.

+

1.3. В случае несогласия с условиями Соглашения Пользователь обязан немедленно прекратить использование Сайта.

+ +

2. Предмет Соглашения

+

2.1. Сайт предоставляет Пользователю информационные услуги по ознакомлению с предложениями отеля Hotel 777, а также возможность направить заявку на бронирование номеров.

+

2.2. Сайт не является публичной офертой. Информация о номерах, ценах и услугах носит ознакомительный характер. Окончательные условия бронирования и проживания согласовываются сторонами индивидуально при подтверждении заявки Администрацией по телефону.

+ +

3. Права и обязанности Пользователя

+

Пользователь обязуется:

+ +

Пользователь имеет право:

+ + +

4. Права и обязанности Администрации

+

Администрация обязуется:

+ +

Администрация имеет право:

+ + +

5. Условия бронирования

+

5.1. Заявка на бронирование, отправленная через форму на Сайте, не является подтверждением бронирования. Бронирование считается подтверждённым только после того, как Администрация свяжется с Пользователем по указанному в заявке телефону и устно согласует все условия.

+

5.2. Цены, указанные на Сайте, носят информационный характер. Окончательная стоимость проживания согласовывается при подтверждении бронирования.

+

5.3. Отель вправе отказать в бронировании без объяснения причин.

+

5.4. Условия оплаты и аннуляции бронирования обсуждаются индивидуально при подтверждении бронирования по телефону.

+ +

6. Ответственность сторон

+

6.1. Администрация не несёт ответственности за убытки и/или упущенную выгоду Пользователя или третьих лиц, возникшие в результате использования или невозможности использования Сайта.

+

6.2. Администрация не несёт ответственности за временные сбои и перерывы в работе Сайта, вызванные техническими неполадками, действиями третьих лиц или форс-мажорными обстоятельствами.

+

6.3. Пользователь несёт полную ответственность за достоверность предоставленных им персональных данных и содержания отзывов.

+ +

7. Разрешение споров

+

7.1. Все споры и разногласия, возникающие между Пользователем и Администрацией, разрешаются путём переговоров.

+

7.2. При невозможности урегулирования спора путём переговоров, спор подлежит разрешению в порядке, установленном законодательством Российской Федерации и Республики Абхазия.

+ +

8. Заключительные положения

+

8.1. Настоящее Соглашение регулируется и толкуется в соответствии с законодательством Российской Федерации и Республики Абхазия.

+

8.2. Признание какого-либо положения Соглашения недействительным не влечёт недействительности остальных его положений.

+

8.3. Все вопросы и предложения, связанные с настоящим Соглашением, Пользователь может направить Администрации по контактным данным, указанным ниже.

+ +

9. Реквизиты Администрации

+
+

Владелец отеля

+
Рауф Алексеевич
+
8 (940) 927-00-80
+
Республика Абхазия, Гудаутский район, с. Мгудзырхуа, Набережная ул., 1
+
+
+
+ + + + diff --git a/server.js b/server.js index 61884f8..b6fd03e 100644 --- a/server.js +++ b/server.js @@ -458,6 +458,14 @@ app.get('/admin', (req, res) => { res.sendFile(path.join(__dirname, 'public', 'admin.html')); }); +app.get('/privacy', (req, res) => { + res.sendFile(path.join(__dirname, 'public', 'privacy.html')); +}); + +app.get('/terms', (req, res) => { + res.sendFile(path.join(__dirname, 'public', 'terms.html')); +}); + async function convertImages() { const imgDir = path.join(__dirname, 'public', 'img'); if (!fs.existsSync(imgDir)) {