@@ -534,15 +534,15 @@ API - Library - Modal
534
534
api . modal = { } ;
535
535
536
536
/**
537
- * Pop a Confirm Modal in Bootstrap
538
- * @param {* } pMessage
539
- * @param {* } pCallbackMethod
540
- * @param {* } pCallbackParams
541
- * @param {* } pIconType
542
- * @param {* } pShowCancelMessageType
543
- * @param {* } pCancelMessage
544
- */
545
- api . modal . confirm = function ( pMessage , pCallbackMethod , pCallbackParams , pIconType , pShowCancelMessageDialogType , pCancelMessage ) {
537
+ * Pop a Confirm Modal in Bootstrap
538
+ * @param {* } pMessage
539
+ * @param {* } pCallbackMethod
540
+ * @param {* } pCallbackParams
541
+ * @param {* } pIconType
542
+ * @param {* } pCancellationCallbackMethod
543
+ * @param {* } pCancellationCallbackParams
544
+ */
545
+ api . modal . confirm = function ( pMessage , pCallbackMethod , pCallbackParams , pIconType , pCancellationCallbackMethod , pCancellationCallbackParams ) {
546
546
// Set the body of the Modal - Empty the container first
547
547
var msgObj ;
548
548
if ( typeof pMessage == "string" ) {
@@ -588,16 +588,14 @@ api.modal.confirm = function (pMessage, pCallbackMethod, pCallbackParams, pIconT
588
588
} ) ;
589
589
590
590
$ ( "#modal-confirm" ) . find ( "[name=cancel-confirm]" ) . once ( "click" , function ( ) {
591
- $ ( "#modal-confirm" ) . modal ( 'hide' ) ;
592
- if ( pShowCancelMessageDialogType == "success" ) {
593
- api . modal . success ( pCancelMessage ) ;
594
- } else if ( pShowCancelMessageDialogType == "warning" ) {
595
- api . modal . warning ( pCancelMessage ) ;
596
- } else if ( pShowCancelMessageDialogType == "information" ) {
597
- api . modal . information ( pCancelMessage ) ;
598
- } else if ( pShowCancelMessageDialogType == "error" ) {
599
- api . modal . error ( pCancelMessage ) ;
600
- }
591
+ // Must wait for the async transition to finsh before invoking the callback function that may be a cascade confirm
592
+ $ ( "#modal-confirm" ) . modal ( 'hide' ) . delay ( 100 ) . queue ( function ( ) {
593
+ // https://stackoverflow.com/questions/10860171/run-function-after-delay
594
+ if ( pCancellationCallbackMethod != null ) {
595
+ pCancellationCallbackMethod ( pCancellationCallbackParams ) ;
596
+ $ ( this ) . dequeue ( ) ;
597
+ }
598
+ } ) ;
601
599
} ) ;
602
600
603
601
$ ( "#modal-confirm" ) . modal ( "show" ) ;
0 commit comments