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:
@@ -16,6 +16,10 @@ function adminMerchantDetail() {
|
||||
error: null,
|
||||
merchantId: null,
|
||||
|
||||
// Modal state
|
||||
showDeleteMerchantModal: false,
|
||||
showDeleteMerchantFinalModal: false,
|
||||
|
||||
// Subscription state
|
||||
platforms: [],
|
||||
subscriptions: [],
|
||||
@@ -239,8 +243,8 @@ function adminMerchantDetail() {
|
||||
return formatted;
|
||||
},
|
||||
|
||||
// Delete merchant
|
||||
async deleteMerchant() {
|
||||
// Prompt delete merchant (first step of double confirm)
|
||||
promptDeleteMerchant() {
|
||||
merchantDetailLog.info('Delete merchant requested:', this.merchantId);
|
||||
|
||||
if (this.merchant?.store_count > 0) {
|
||||
@@ -248,17 +252,16 @@ function adminMerchantDetail() {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!confirm(`Are you sure you want to delete merchant "${this.merchant.name}"?\n\nThis action cannot be undone.`)) {
|
||||
merchantDetailLog.info('Delete cancelled by user');
|
||||
return;
|
||||
}
|
||||
this.showDeleteMerchantModal = true;
|
||||
},
|
||||
|
||||
// Second confirmation for safety
|
||||
if (!confirm(`FINAL CONFIRMATION\n\nAre you absolutely sure you want to delete "${this.merchant.name}"?`)) {
|
||||
merchantDetailLog.info('Delete cancelled by user (second confirmation)');
|
||||
return;
|
||||
}
|
||||
// Confirm first step, show final confirmation
|
||||
confirmDeleteMerchantStep() {
|
||||
this.showDeleteMerchantFinalModal = true;
|
||||
},
|
||||
|
||||
// Delete merchant
|
||||
async deleteMerchant() {
|
||||
try {
|
||||
const url = `/admin/merchants/${this.merchantId}?confirm=true`;
|
||||
window.LogConfig.logApiCall('DELETE', url, null, 'request');
|
||||
|
||||
Reference in New Issue
Block a user