@@ -1488,22 +1488,29 @@ async function update (currentUser, challengeId, data, isFull) {
1488
1488
1489
1489
// Only M2M can update url and options of discussions
1490
1490
if ( data . discussions && data . discussions . length > 0 ) {
1491
- for ( let i = 0 ; i < data . discussions . length ; i += 1 ) {
1492
- if ( _ . isUndefined ( data . discussions [ i ] . id ) ) {
1493
- data . discussions [ i ] . id = uuid ( )
1494
- if ( ! currentUser . isMachine ) {
1495
- _ . unset ( data . discussions , 'url' )
1496
- _ . unset ( data . discussions , 'options' )
1497
- }
1498
- } else if ( ! currentUser . isMachine ) {
1499
- const existingDiscussion = _ . find ( _ . get ( challenge , 'discussions' , [ ] ) , d => d . id === data . discussions [ i ] . id )
1500
- if ( existingDiscussion ) {
1501
- _ . assign ( data . discussions [ i ] , _ . pick ( existingDiscussion , [ 'url' , 'options' ] ) )
1502
- } else {
1503
- _ . unset ( data . discussions , 'url' )
1504
- _ . unset ( data . discussions , 'options' )
1491
+ if ( challenge . discussions && challenge . discussions . length > 0 ) {
1492
+ for ( let i = 0 ; i < data . discussions . length ; i += 1 ) {
1493
+ if ( _ . isUndefined ( data . discussions [ i ] . id ) ) {
1494
+ data . discussions [ i ] . id = uuid ( )
1495
+ if ( ! currentUser . isMachine ) {
1496
+ _ . unset ( data . discussions , 'url' )
1497
+ _ . unset ( data . discussions , 'options' )
1498
+ }
1499
+ } else if ( ! currentUser . isMachine ) {
1500
+ const existingDiscussion = _ . find ( _ . get ( challenge , 'discussions' , [ ] ) , d => d . id === data . discussions [ i ] . id )
1501
+ if ( existingDiscussion ) {
1502
+ _ . assign ( data . discussions [ i ] , _ . pick ( existingDiscussion , [ 'url' , 'options' ] ) )
1503
+ } else {
1504
+ _ . unset ( data . discussions , 'url' )
1505
+ _ . unset ( data . discussions , 'options' )
1506
+ }
1505
1507
}
1506
1508
}
1509
+ } else {
1510
+ for ( let i = 0 ; i < challenge . discussions . length ; i += 1 ) {
1511
+ data . discussions [ i ] . id = uuid ( )
1512
+ data . discussions [ i ] . name = data . discussions [ i ] . name . substring ( 0 , config . FORUM_TITLE_LENGTH_LIMIT )
1513
+ }
1507
1514
}
1508
1515
}
1509
1516
0 commit comments