@@ -473,9 +473,9 @@ document.getElementById('carOwnership').addEventListener('change', syncOwnerFiel
473473
474474document . getElementById ( 'addCarBtn' ) . addEventListener ( 'click' , ( ) => openCarModal ( null ) ) ;
475475document . getElementById ( 'carModalCancel' ) . addEventListener ( 'click' , closeCarModal ) ;
476- carModalOverlay . addEventListener ( 'click' , ( e ) => {
477- if ( e . target === carModalOverlay ) closeCarModal ( ) ;
478- } ) ;
476+ // Closing by clicking away asks first when the form has been filled in.
477+ // See nsModal.guard in dialog.js.
478+ nsModal . guard ( carModalOverlay , closeCarModal ) ;
479479
480480carForm . addEventListener ( 'submit' , async ( e ) => {
481481 e . preventDefault ( ) ;
@@ -1987,9 +1987,7 @@ function closeBookingModal() {
19871987
19881988document . getElementById ( 'addBookingBtn' ) . addEventListener ( 'click' , ( ) => openBookingModal ( null ) ) ;
19891989document . getElementById ( 'bookingModalCancel' ) . addEventListener ( 'click' , closeBookingModal ) ;
1990- bookingModalOverlay . addEventListener ( 'click' , ( e ) => {
1991- if ( e . target === bookingModalOverlay ) closeBookingModal ( ) ;
1992- } ) ;
1990+ nsModal . guard ( bookingModalOverlay , closeBookingModal ) ;
19931991
19941992bookingForm . addEventListener ( 'submit' , async ( e ) => {
19951993 e . preventDefault ( ) ;
@@ -3102,7 +3100,7 @@ function openPaymentModal(bookingId) {
31023100 paymentModalOverlay . hidden = false ;
31033101}
31043102document . getElementById ( 'paymentModalCancel' ) . addEventListener ( 'click' , ( ) => { paymentModalOverlay . hidden = true ; } ) ;
3105- paymentModalOverlay . addEventListener ( 'click' , ( e ) => { if ( e . target === paymentModalOverlay ) paymentModalOverlay . hidden = true ; } ) ;
3103+ nsModal . guard ( paymentModalOverlay , ( ) => { paymentModalOverlay . hidden = true ; } ) ;
31063104
31073105document . getElementById ( 'paymentForm' ) . addEventListener ( 'submit' , async ( e ) => {
31083106 e . preventDefault ( ) ;
@@ -3143,7 +3141,7 @@ function openDepositModal(bookingId, booking) {
31433141 depositModalOverlay . hidden = false ;
31443142}
31453143document . getElementById ( 'depositModalCancel' ) . addEventListener ( 'click' , ( ) => { depositModalOverlay . hidden = true ; } ) ;
3146- depositModalOverlay . addEventListener ( 'click' , ( e ) => { if ( e . target === depositModalOverlay ) depositModalOverlay . hidden = true ; } ) ;
3144+ nsModal . guard ( depositModalOverlay , ( ) => { depositModalOverlay . hidden = true ; } ) ;
31473145
31483146document . getElementById ( 'depositForm' ) . addEventListener ( 'submit' , async ( e ) => {
31493147 e . preventDefault ( ) ;
@@ -3186,7 +3184,7 @@ function openRefundModal(bookingId, booking) {
31863184 refundModalOverlay . hidden = false ;
31873185}
31883186document . getElementById ( 'refundModalCancel' ) . addEventListener ( 'click' , ( ) => { refundModalOverlay . hidden = true ; } ) ;
3189- refundModalOverlay . addEventListener ( 'click' , ( e ) => { if ( e . target === refundModalOverlay ) refundModalOverlay . hidden = true ; } ) ;
3187+ nsModal . guard ( refundModalOverlay , ( ) => { refundModalOverlay . hidden = true ; } ) ;
31903188document . getElementById ( 'refundDeduction' ) . addEventListener ( 'input' , updateRefundPreview ) ;
31913189
31923190document . getElementById ( 'refundForm' ) . addEventListener ( 'submit' , async ( e ) => {
@@ -3260,7 +3258,7 @@ async function openServiceModal(car) {
32603258}
32613259
32623260document . getElementById ( 'serviceModalCancel' ) . addEventListener ( 'click' , ( ) => { serviceModalOverlay . hidden = true ; } ) ;
3263- serviceModalOverlay . addEventListener ( 'click' , ( e ) => { if ( e . target === serviceModalOverlay ) serviceModalOverlay . hidden = true ; } ) ;
3261+ nsModal . guard ( serviceModalOverlay , ( ) => { serviceModalOverlay . hidden = true ; } ) ;
32643262
32653263document . getElementById ( 'serviceForm' ) . addEventListener ( 'submit' , async ( e ) => {
32663264 e . preventDefault ( ) ;
@@ -3300,7 +3298,7 @@ function openPickupModal(bookingId, booking) {
33003298 pickupModalOverlay . hidden = false ;
33013299}
33023300document . getElementById ( 'pickupModalCancel' ) . addEventListener ( 'click' , ( ) => { pickupModalOverlay . hidden = true ; } ) ;
3303- pickupModalOverlay . addEventListener ( 'click' , ( e ) => { if ( e . target === pickupModalOverlay ) pickupModalOverlay . hidden = true ; } ) ;
3301+ nsModal . guard ( pickupModalOverlay , ( ) => { pickupModalOverlay . hidden = true ; } ) ;
33043302
33053303document . getElementById ( 'pickupForm' ) . addEventListener ( 'submit' , async ( e ) => {
33063304 e . preventDefault ( ) ;
@@ -3354,7 +3352,7 @@ function openReturnModal(bookingId, booking) {
33543352 returnModalOverlay . hidden = false ;
33553353}
33563354document . getElementById ( 'returnModalCancel' ) . addEventListener ( 'click' , ( ) => { returnModalOverlay . hidden = true ; } ) ;
3357- returnModalOverlay . addEventListener ( 'click' , ( e ) => { if ( e . target === returnModalOverlay ) returnModalOverlay . hidden = true ; } ) ;
3355+ nsModal . guard ( returnModalOverlay , ( ) => { returnModalOverlay . hidden = true ; } ) ;
33583356document . getElementById ( 'returnEndKm' ) . addEventListener ( 'input' , updateReturnKmPreview ) ;
33593357
33603358document . getElementById ( 'returnForm' ) . addEventListener ( 'submit' , async ( e ) => {
0 commit comments