fix: replace all native confirm() dialogs with styled modal macros
Some checks failed
Some checks failed
Migrated ~68 native browser confirm() calls across 74 files to use the project's confirm_modal/confirm_modal_dynamic Jinja2 macros, providing consistent styled confirmation dialogs instead of plain browser popups. Modules updated: core, tenancy, cms, marketplace, messaging, billing, customers, orders, cart. Uses danger/warning/info variants and double-confirm pattern for destructive delete operations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -26,6 +26,10 @@ function adminMerchants() {
|
||||
loading: false,
|
||||
error: null,
|
||||
|
||||
// Modal state
|
||||
showDeleteMerchantModal: false,
|
||||
merchantToDelete: null,
|
||||
|
||||
// Search and filters
|
||||
filters: {
|
||||
search: '',
|
||||
@@ -192,23 +196,19 @@ function adminMerchants() {
|
||||
window.location.href = `/admin/merchants/${merchantId}/edit`;
|
||||
},
|
||||
|
||||
// Delete merchant
|
||||
async deleteMerchant(merchant) {
|
||||
// Prompt delete merchant modal
|
||||
promptDeleteMerchant(merchant) {
|
||||
if (merchant.store_count > 0) {
|
||||
merchantsLog.warn('Cannot delete merchant with stores');
|
||||
Utils.showToast(`Cannot delete "${merchant.name}" because it has ${merchant.store_count} store(s). Please delete or reassign the stores first.`, 'warning');
|
||||
return;
|
||||
}
|
||||
this.merchantToDelete = merchant;
|
||||
this.showDeleteMerchantModal = true;
|
||||
},
|
||||
|
||||
const confirmed = confirm(
|
||||
`Are you sure you want to delete "${merchant.name}"?\n\nThis action cannot be undone.`
|
||||
);
|
||||
|
||||
if (!confirmed) {
|
||||
merchantsLog.info('Delete cancelled by user');
|
||||
return;
|
||||
}
|
||||
|
||||
// Delete merchant
|
||||
async deleteMerchant(merchant) {
|
||||
try {
|
||||
merchantsLog.info('Deleting merchant:', merchant.id);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user