Join the world’s #1 Tutor LMS community
`;
const container = wrapper.firstElementChild;
const closeBtn = wrapper.querySelector('[platform-toast-close]');
if (closeBtn) {
closeBtn.addEventListener('click', (e) => {
e.preventDefault();
e.stopPropagation();
container.remove();
});
}
return wrapper;
}
};
const isValidEmail = (email) => {
return String(email)
.toLowerCase()
.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,}))$/
);
};
document.querySelectorAll('.email-subscribe-form').forEach((form) => {
const ajax_url = "https://tutorlms.com/wp-admin/admin-ajax.php"
form.addEventListener('submit', async (e) => {
e.preventDefault();
const btnSubmit = form.querySelector('button[type="submit"]');
const spinner = btnSubmit?.querySelector('.platform-spinner-border');
const emailInput = form.querySelector('input[name="email"]');
const email = emailInput?.value?.trim() || '';
if (!isValidEmail(email)) {
toast.error('Please enter valid email address');
return;
}
const formData = new FormData(form);
try {
btnSubmit?.setAttribute('disabled', 'disabled');
spinner?.classList.remove('platform-d-none');
const response = await fetch(ajax_url, {
method: 'POST',
body: formData,
credentials: 'same-origin'
});
const res = await response.json();
if (res.success) {
toast.success(res.data);
form.reset();
} else {
toast.error(res.data);
}
} catch (err) {
console.error(err);
} finally {
btnSubmit?.removeAttribute('disabled');
spinner?.classList.add('platform-d-none');
}
});
});
});