@@ -216,17 +216,19 @@ function initBranchSelector() {
216
216
} ) ;
217
217
}
218
218
219
- function updateIssuesMeta ( url , action , issueIds , elementId , afterSuccess ) {
220
- $ . ajax ( {
221
- type : "POST" ,
222
- url : url ,
223
- data : {
224
- "_csrf" : csrf ,
225
- "action" : action ,
226
- "issue_ids" : issueIds ,
227
- "id" : elementId
228
- } ,
229
- success : afterSuccess
219
+ function updateIssuesMeta ( url , action , issueIds , elementId ) {
220
+ return new Promise ( function ( resolve ) {
221
+ $ . ajax ( {
222
+ type : "POST" ,
223
+ url : url ,
224
+ data : {
225
+ "_csrf" : csrf ,
226
+ "action" : action ,
227
+ "issue_ids" : issueIds ,
228
+ "id" : elementId
229
+ } ,
230
+ success : resolve ,
231
+ } )
230
232
} )
231
233
}
232
234
@@ -348,6 +350,10 @@ function uploadFile(file, callback) {
348
350
xhr . send ( formData ) ;
349
351
}
350
352
353
+ function reload ( ) {
354
+ window . location . reload ( ) ;
355
+ }
356
+
351
357
function initImagePaste ( target ) {
352
358
target . each ( function ( i , field ) {
353
359
field . addEventListener ( 'paste' , function ( event ) {
@@ -385,18 +391,20 @@ function initCommentForm() {
385
391
$ ( '.' + selector ) . dropdown ( 'setting' , 'onHide' , function ( ) {
386
392
hasLabelUpdateAction = $listMenu . data ( 'action' ) == 'update' ; // Update the var
387
393
if ( hasLabelUpdateAction ) {
394
+ var promises = [ ] ;
388
395
for ( var elementId in labels ) {
389
396
if ( labels . hasOwnProperty ( elementId ) ) {
390
397
var label = labels [ elementId ] ;
391
- updateIssuesMeta (
398
+ var promise = updateIssuesMeta (
392
399
label [ "update-url" ] ,
393
400
label [ "action" ] ,
394
401
label [ "issue-id" ] ,
395
402
elementId
396
403
) ;
404
+ promises . push ( promise ) ;
397
405
}
398
406
}
399
- location . reload ( ) ;
407
+ Promise . all ( promises ) . then ( reload ) ;
400
408
}
401
409
} ) ;
402
410
@@ -519,8 +527,7 @@ function initCommentForm() {
519
527
"" ,
520
528
$menu . data ( 'issue-id' ) ,
521
529
$ ( this ) . data ( 'id' ) ,
522
- function ( ) { location . reload ( ) ; }
523
- ) ;
530
+ ) . then ( reload ) ;
524
531
}
525
532
switch ( input_id ) {
526
533
case '#milestone_id' :
@@ -546,8 +553,7 @@ function initCommentForm() {
546
553
"" ,
547
554
$menu . data ( 'issue-id' ) ,
548
555
$ ( this ) . data ( 'id' ) ,
549
- function ( ) { location . reload ( ) ; }
550
- ) ;
556
+ ) . then ( reload ) ;
551
557
}
552
558
553
559
$list . find ( '.selected' ) . html ( '' ) ;
@@ -801,7 +807,7 @@ function initRepository() {
801
807
function ( data ) {
802
808
$editInput . val ( data . title ) ;
803
809
$issueTitle . text ( data . title ) ;
804
- location . reload ( ) ;
810
+ reload ( ) ;
805
811
} ) ;
806
812
return false ;
807
813
} ) ;
@@ -1786,7 +1792,7 @@ function u2fRegistered(resp) {
1786
1792
data : JSON . stringify ( resp ) ,
1787
1793
contentType : "application/json; charset=utf-8" ,
1788
1794
success : function ( ) {
1789
- window . location . reload ( ) ;
1795
+ reload ( ) ;
1790
1796
} ,
1791
1797
fail : function ( xhr , textStatus ) {
1792
1798
u2fError ( 1 ) ;
@@ -2073,9 +2079,7 @@ $(document).ready(function () {
2073
2079
return this . dataset . issueId ;
2074
2080
} ) . get ( ) . join ( ) ;
2075
2081
var url = this . dataset . url
2076
- updateIssuesMeta ( url , action , issueIDs , elementId , function ( ) {
2077
- location . reload ( ) ;
2078
- } ) ;
2082
+ updateIssuesMeta ( url , action , issueIDs , elementId ) . then ( reload ) ;
2079
2083
} ) ;
2080
2084
2081
2085
buttonsClickOnEnter ( ) ;
@@ -2912,7 +2916,7 @@ function updateDeadline(deadlineString) {
2912
2916
contentType : 'application/json' ,
2913
2917
type : 'POST' ,
2914
2918
success : function ( ) {
2915
- window . location . reload ( ) ;
2919
+ reload ( ) ;
2916
2920
} ,
2917
2921
error : function ( ) {
2918
2922
$ ( '#deadline-loader' ) . removeClass ( 'loading' ) ;
0 commit comments