| function togglePasswordVisibility() { |
| const passwordField = document.getElementById('password'); |
| const toggleIcon = document.getElementById('toggle-password'); |
|
|
| if (passwordField.type === 'password') { |
| passwordField.type = 'text'; |
| toggleIcon.innerHTML = '<img src="https://pdf813.netlify.app/chat/img/icon/icons8-closed-eye-50.png" alt="Hide Password" />'; |
|
|
| } else { |
| passwordField.type = 'password'; |
| toggleIcon.innerHTML = '<img src="https://pdf813.netlify.app/chat/img/icon/icons8-eye-48.png" alt="Show Password" />'; |
| } |
|
|
| } |
|
|
| |
| const form = document.getElementById('login-form'); |
| const emailInput = document.getElementById('email'); |
| const passwordInput = document.getElementById('password'); |
| const emailError = document.getElementById('email-error'); |
| const passwordError = document.getElementById('password-error'); |
| const loginBtn = document.getElementById('login-btn'); |
|
|
| form.addEventListener('submit', function (event) { |
| event.preventDefault(); |
| let hasError = false; |
|
|
| |
| emailError.textContent = ''; |
| passwordError.textContent = ''; |
|
|
| |
| if (emailInput.value.trim() === '') { |
| emailError.textContent = 'Please fill in the email field'; |
| hasError = true; |
| } else if (!validateEmail(emailInput.value)) { |
| emailError.textContent = 'Email is not valid'; |
| hasError = true; |
| } |
|
|
| |
| if (passwordInput.value.trim() === '') { |
| passwordError.textContent = 'Please fill in the password field'; |
| hasError = true; |
| } |
|
|
| if (hasError) return; |
|
|
| |
| loginBtn.disabled = true; |
| loginBtn.innerHTML = 'Logging in... <div class="spinner" id="spinner"></div>'; |
| const spinner = document.getElementById('spinner'); |
| spinner.style.display = 'inline-block'; |
|
|
| |
| setTimeout(function () { |
| |
| let loginSuccess = false; |
| if (!loginSuccess) { |
| emailError.textContent = 'Email not found or incorrect password'; |
| passwordError.textContent = 'Please try again'; |
| spinner.style.display = 'none'; |
| loginBtn.disabled = false; |
| loginBtn.innerText = "Login"; |
| } else { |
| window.location.href = '/dashboard'; |
| } |
| }, 3000); |
| }); |
|
|
| function validateEmail(email) { |
| const regex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/; |
| return regex.test(email); |
| } |