(function() {
// Ключ для хранения данных в localStorage
const STORAGE_KEY = 'hiddenForms_rec2365204351';
// Получаем сохраненные ID скрытых форм
function getHiddenForms() {
try {
const data = localStorage.getItem(STORAGE_KEY);
return data ? JSON.parse(data) : [];
} catch (e) {
return [];
}
}
// Сохраняем ID скрытой формы
function saveHiddenForm(formId) {
const hiddenForms = getHiddenForms();
if (!hiddenForms.includes(formId)) {
hiddenForms.push(formId);
localStorage.setItem(STORAGE_KEY, JSON.stringify(hiddenForms));
}
}
// Скрываем форму по ID
function hideForm(formId) {
const form = document.querySelector(`[data-form-id="${formId}"], #${formId}`);
if (form) {
form.style.display = 'none';
form.style.visibility = 'hidden';
form.style.height = '0';
form.style.overflow = 'hidden';
form.style.margin = '0';
form.style.padding = '0';
}
}
// Проверяем и скрываем формы при загрузке
function checkAndHideForms() {
const hiddenForms = getHiddenForms();
hiddenForms.forEach(formId => {
hideForm(formId);
});
}
// Инициализация при загрузке страницы
checkAndHideForms();
// Слушаем событие успешной отправки формы
document.addEventListener('tildaFormSuccess', function(e) {
// Определяем форму из события
const form = e.detail && e.detail.form ? e.detail.form : (e.target ? e.target.closest('form') : null);
if (!form) return;
// Проверяем, принадлежит ли форма к нашему блоку
const block = form.closest('#rec2365204351');
if (!block) return;
// Получаем ID формы
const formId = form.getAttribute('data-form-id') || form.id;
if (!formId) return;
// Сохраняем и скрываем форму
saveHiddenForm(formId);
hideForm(formId);
});
// Дополнительно: перехватываем стандартную отправку формы
// (на случай если событие tildaFormSuccess не сработает)
document.querySelectorAll('#rec2365204351 form').forEach(form => {
form.addEventListener('submit', function() {
// Даем время на AJAX запрос, затем скрываем форму
setTimeout(() => {
const formId = this.getAttribute('data-form-id') || this.id;
if (formId) {
saveHiddenForm(formId);
hideForm(formId);
}
}, 1000); // Задержка 1 секунда для завершения AJAX
});
});
})();