refresh page after input new address

This commit is contained in:
Bayu Lukman Yusuf 2026-02-26 14:20:07 +07:00
parent 0dfdfb2912
commit a60ca44ca1
1 changed files with 32 additions and 6 deletions

View File

@ -122,7 +122,7 @@
<div class="col-sm-6"> <div class="col-sm-6">
<div class="position-relative"> <div class="position-relative">
<label class="form-label">{{ __('addresses.phone') }}</label> <label class="form-label">{{ __('addresses.phone') }}</label>
<input type="tel" class="form-control new-phone" required> <input type="number" class="form-control new-phone" required>
<div class="invalid-feedback">{{ __('addresses.please_enter_phone') }}</div> <div class="invalid-feedback">{{ __('addresses.please_enter_phone') }}</div>
</div> </div>
</div> </div>
@ -169,7 +169,7 @@
<div class="col-sm-6"> <div class="col-sm-6">
<div class="position-relative"> <div class="position-relative">
<label class="form-label">{{ __('addresses.zip_code') }}</label> <label class="form-label">{{ __('addresses.zip_code') }}</label>
<input type="text" class="form-control new-zip" required> <input type="number" class="form-control new-zip" required>
<div class="invalid-feedback">{{ __('addresses.please_enter_zip_code') }}</div> <div class="invalid-feedback">{{ __('addresses.please_enter_zip_code') }}</div>
</div> </div>
</div> </div>
@ -1066,7 +1066,7 @@
// Get postal code // Get postal code
const zipInput = isNewAddress ? const zipInput = isNewAddress ?
form.querySelector('#new-zip') : form.querySelector('.postal_code'); form.querySelector('.new-zip') : form.querySelector('.postal_code');
if (zipInput) submitData.postal_code = zipInput.value; if (zipInput) submitData.postal_code = zipInput.value;
// Get latitude // Get latitude
@ -1122,9 +1122,34 @@
if (isNewAddress) { if (isNewAddress) {
// Close modal and reload page // Close modal and reload page
setTimeout(() => { setTimeout(() => {
const modal = bootstrap.Modal.getInstance(newAddressModal); // Try multiple methods to close the modal
if (modal) modal.hide(); try {
reloadAddresses(); // Method 1: Using Bootstrap 5 API if available
if (typeof bootstrap !== 'undefined' && bootstrap.Modal) {
const modal = bootstrap.Modal.getInstance(newAddressModal);
if (modal) modal.hide();
} else {
// Method 2: Using jQuery if available
if (typeof $ !== 'undefined') {
$(newAddressModal).modal('hide');
} else {
// Method 3: Using native DOM manipulation
newAddressModal.style.display = 'none';
document.body.classList.remove('modal-open');
const backdrop = document.querySelector('.modal-backdrop');
if (backdrop) backdrop.remove();
}
}
} catch (error) {
console.warn('Error closing modal:', error);
// Fallback: hide modal manually
newAddressModal.style.display = 'none';
}
// Refresh page after successful submission
setTimeout(() => {
window.location.reload();
}, 500);
}, 1500); }, 1500);
} else { } else {
// Close the edit form and show preview after delay // Close the edit form and show preview after delay
@ -1143,6 +1168,7 @@
reloadAddresses(); reloadAddresses();
}, 2000); }, 2000);
} }
} else { } else {
// Show error message in form // Show error message in form
const errorElement = form.querySelector(isNewAddress ? const errorElement = form.querySelector(isNewAddress ?