@@ -853,13 +853,16 @@ class ChallengeEditor extends Component {
853853 }
854854
855855 onUpdatePhaseDate ( phase , index ) {
856+ console . log ( 'onUpdatePhase' , phase , index )
856857 const { phases } = this . state . challenge
857858 let newChallenge = _ . cloneDeep ( this . state . challenge )
859+
858860 if ( phase . isBlur && newChallenge . phases [ index ] [ 'name' ] === 'Submission' ) {
859861 newChallenge . phases [ index ] [ 'duration' ] = _ . max ( [
860862 newChallenge . phases [ index - 1 ] [ 'duration' ] ,
861863 phase . duration
862864 ] )
865+ newChallenge . phases [ index ] [ 'scheduledStartDate' ] = moment ( phase . startDate ) . toISOString ( )
863866 newChallenge . phases [ index ] [ 'scheduledEndDate' ] =
864867 moment ( newChallenge . phases [ index ] [ 'scheduledStartDate' ] )
865868 . add ( newChallenge . phases [ index ] [ 'duration' ] , 'hours' )
@@ -872,8 +875,9 @@ class ChallengeEditor extends Component {
872875
873876 for ( let phaseIndex = index + 1 ; phaseIndex < phases . length ; ++ phaseIndex ) {
874877 if ( newChallenge . phases [ phaseIndex ] [ 'name' ] === 'Submission' ) {
875- newChallenge . phases [ phaseIndex ] [ 'scheduledStartDate' ] =
876- newChallenge . phases [ phaseIndex - 1 ] [ 'scheduledStartDate' ]
878+ console . log ( 'Setting submission phase scheduled start date' , moment ( phase . startDate ) . toISOString ( ) )
879+ newChallenge . phases [ index ] [ 'scheduledStartDate' ] = moment ( phase . startDate ) . toISOString ( )
880+
877881 newChallenge . phases [ phaseIndex ] [ 'duration' ] = _ . max ( [
878882 newChallenge . phases [ phaseIndex - 1 ] [ 'duration' ] ,
879883 newChallenge . phases [ phaseIndex ] [ 'duration' ]
@@ -890,6 +894,8 @@ class ChallengeEditor extends Component {
890894 if ( ! _ . isEqual ( newChallenge . phases [ index ] , phases [ index ] ) ) {
891895 this . setState ( { isPhaseChange : true } )
892896 }
897+ console . log ( 'Setting new state' , newChallenge )
898+ console . log ( 'isPhaseChange' , this . state . isPhaseChange )
893899 this . setState ( { challenge : newChallenge } )
894900
895901 setTimeout ( ( ) => {
@@ -937,17 +943,23 @@ class ChallengeEditor extends Component {
937943 if ( this . state . challenge . id ) {
938944 challenge . attachmentIds = _ . map ( attachments , item => item . id )
939945 }
946+ console . log ( 'Phase Data' , challenge . phases )
940947 challenge . phases = challenge . phases . map ( ( p ) => pick ( [
941948 'duration' ,
942949 'phaseId' ,
943950 'scheduledStartDate' ,
944951 'scheduledEndDate'
945952 ] , p ) )
953+
946954 if ( challenge . terms && challenge . terms . length === 0 ) delete challenge . terms
947955 delete challenge . attachments
948956 delete challenge . reviewType
949957 if ( ! isPhaseChange ) delete challenge . phases
950- return _ . cloneDeep ( challenge )
958+
959+ const cloned = _ . cloneDeep ( challenge )
960+ console . log ( 'CLONED' , cloned )
961+
962+ return cloned
951963 }
952964
953965 goToEdit ( challengeID ) {
0 commit comments