implement unified checkout address layout with fulfillment type selection and enhanced form validation

This commit is contained in:
Alaguraj0361 2026-04-10 17:45:59 +05:30
parent c6738e71d7
commit 3bc6298559

View File

@ -153,7 +153,7 @@
}); });
// 3. Custom Validation on Submit // 3. Custom Validation on Submit
if (submitBtn) { if (submitBtn && document.querySelector('form.checkout_autoformat')) {
submitBtn.addEventListener('click', function(e) { submitBtn.addEventListener('click', function(e) {
const form = document.querySelector('form.checkout_autoformat'); const form = document.querySelector('form.checkout_autoformat');
if (!form) return; if (!form) return;
@ -239,6 +239,8 @@
containers.forEach(c => { containers.forEach(c => {
c.querySelectorAll('input, select').forEach(i => i.removeAttribute('required')); c.querySelectorAll('input, select').forEach(i => i.removeAttribute('required'));
}); });
// Safety: Always enable button for pickup
if (submitBtn) submitBtn.disabled = false;
} else { } else {
containers.forEach(c => c.style.display = ''); containers.forEach(c => c.style.display = '');
if (addrHeader) addrHeader.style.display = ''; if (addrHeader) addrHeader.style.display = '';
@ -295,7 +297,7 @@
Uber Delivery Fee: $${data.result.fee} (Distance Based) Uber Delivery Fee: $${data.result.fee} (Distance Based)
</div> </div>
</div>`; </div>`;
if (submitBtn) submitBtn.disabled = false; if (submitBtn &amp;&amp; document.querySelector('input[name="street"]')) submitBtn.disabled = false;
} else { } else {
msgDiv.className = 'alert alert-danger my-3 animated fadeIn'; msgDiv.className = 'alert alert-danger my-3 animated fadeIn';
msgDiv.style.display = ''; msgDiv.style.display = '';
@ -306,7 +308,7 @@
${data.result?.error || "This specific address is outside the Uber delivery radius."} ${data.result?.error || "This specific address is outside the Uber delivery radius."}
</div> </div>
</div>`; </div>`;
if (submitBtn) submitBtn.disabled = true; if (submitBtn &amp;&amp; document.querySelector('input[name="street"]')) submitBtn.disabled = true;
} }
}).catch(err => { }).catch(err => {
console.error("Uber API Error:", err); console.error("Uber API Error:", err);
@ -409,7 +411,7 @@
} else { } else {
msgBox.className = 'alert alert-danger my-3'; msgBox.className = 'alert alert-danger my-3';
msgBox.innerHTML = `<strong>✕ Uber Direct: Invalid Operation</strong><br/>${data.result?.error || "Outside delivery radius."}`; msgBox.innerHTML = `<strong>✕ Uber Direct: Invalid Operation</strong><br/>${data.result?.error || "Outside delivery radius."}`;
document.querySelector('button[type="submit"]')?.setAttribute('disabled', 'disabled'); if (billingGrid) document.querySelector('button[type="submit"]')?.setAttribute('disabled', 'disabled');
} }
}); });
} }