diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..ab079b2 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,26 @@ +# Changelog + +Все важные изменения этого проекта будут документированы в этом файле. + +## [Неопубликованное] + +### Добавлено +- Выпадающий список с предустановленными темами в форме "Задать вопрос": + - работа сайта + - запланированные мероприятия + - пройденные маршруты + - условия участия + - условия сотрудничества + - хочу предложить поездку + - контакты для связи + +### Изменено +- Обновлен чекбокс согласия на обработку персональных данных в обеих формах (вопросов и планирования поездок) +- Добавлен полный юридический текст согласия в соответствии с ФЗ №152 +- Включена информация о передаче данных третьим лицам для получения разрешений на полеты БВС +- Улучшено оформление блока согласия с подсветкой и детальной информацией +- Заменены радио-кнопки согласия на единый чекбокс в форме планирования поездок + +### Исправлено +- Исправлена проблема со сборкой Hugo на VPS (добавлен исключающий путь для scripts темы в .gitignore) +- Добавлена JavaScript валидация для новых элементов форм \ No newline at end of file diff --git a/content/ask.md b/content/ask.md index cba4637..cc822bf 100644 --- a/content/ask.md +++ b/content/ask.md @@ -69,7 +69,16 @@ disableComments = true
- +
@@ -77,6 +86,24 @@ disableComments = true
+
+ +
+ diff --git a/content/plan.md b/content/plan.md index edaa494..66e7f5b 100644 --- a/content/plan.md +++ b/content/plan.md @@ -49,6 +49,26 @@ disableComments = true messageDiv.textContent = error; document.querySelector('.travel-form-container').insertBefore(messageDiv, document.querySelector('.travel-form')); } + + // Русские сообщения валидации + const inputs = document.querySelectorAll('input[required], select[required], textarea[required]'); + inputs.forEach(function(input) { + input.addEventListener('invalid', function() { + if (input.type === 'checkbox') { + input.setCustomValidity('Пожалуйста, отметьте этот пункт для продолжения'); + } else if (input.type === 'email') { + input.setCustomValidity('Пожалуйста, введите корректный email адрес'); + } else if (input.tagName === 'SELECT') { + input.setCustomValidity('Пожалуйста, выберите один из вариантов'); + } else { + input.setCustomValidity('Пожалуйста, заполните это поле'); + } + }); + + input.addEventListener('input', function() { + input.setCustomValidity(''); + }); + }); }); @@ -86,24 +106,31 @@ disableComments = true -
- -
- - -
+
+
- +