Skip to content

Commit f95520a

Browse files
authored
Removes etapes order control (#497)
1 parent 43143b2 commit f95520a

File tree

2 files changed

+20
-21
lines changed

2 files changed

+20
-21
lines changed

backend/lib/projets-validator.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,7 @@ const schemaCreation = Joi.object({
279279
'any.required': 'La clé "perimetres" est obligatoire',
280280
'any.custom': 'Le territoire n’est pas valide'
281281
}),
282-
etapes: Joi.array().items(etapesSchemaCreation).custom(validateEtapesDates).required().messages({
282+
etapes: Joi.array().items(etapesSchemaCreation).required().messages({
283283
'array.base': 'Les étapes doivent être dans un tableau',
284284
'any.required': 'La clé "etapes" est obligatoire'
285285
}),
@@ -517,7 +517,7 @@ const schemaUpdate = Joi.object({
517517
'array.base': 'Les périmètres doivent être dans un tableau',
518518
'any.custom': 'Le territoire n’est pas valide'
519519
}),
520-
etapes: Joi.array().items(etapesSchemaUpdate).custom(validateEtapesDates).messages({
520+
etapes: Joi.array().items(etapesSchemaUpdate).messages({
521521
'array.base': 'Les étapes doivent être dans un tableau'
522522
}),
523523
subventions: Joi.array().items(subventionsSchemaUpdate).allow(null).messages({

components/suivi-form/etapes.js

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -33,17 +33,15 @@ const Etapes = ({initialValue, etapes, handleEtapes, canBeDisponible}) => {
3333
}
3434

3535
const addStep = () => {
36-
if (startDate) {
37-
const currentStepIndex = statusKeys.indexOf(statutInput)
38-
const nextStepIndex = statusKeys.indexOf(statutInput) + 1
36+
const currentStepIndex = statusKeys.indexOf(statutInput)
37+
const nextStepIndex = statusKeys.indexOf(statutInput) + 1
3938

40-
etapes[currentStepIndex].date_debut = startDate
39+
etapes[currentStepIndex].date_debut = startDate
4140

42-
handleEtapes([...etapes, {statut: statusKeys[nextStepIndex], date_debut: ''}])
41+
handleEtapes([...etapes, {statut: statusKeys[nextStepIndex], date_debut: ''}])
4342

44-
setStatutInput(statusKeys[nextStepIndex])
45-
setStartDate('')
46-
}
43+
setStatutInput(statusKeys[nextStepIndex])
44+
setStartDate('')
4745
}
4846

4947
const onDelete = (etape, index) => {
@@ -99,17 +97,18 @@ const Etapes = ({initialValue, etapes, handleEtapes, canBeDisponible}) => {
9997
)
10098
)}
10199

102-
{(startDate && etapes.length < statusKeys.length) && (
103-
<Button
104-
label='Ajouter une étape'
105-
icon='add-circle-fill'
106-
iconSide='left'
107-
disabled={!canBeDisponible && etapes.at(-1).statut === 'realise'}
108-
onClick={addStep}
109-
>
110-
Ajouter l’étape suivante
111-
</Button>
112-
)}
100+
<Button
101+
label='Ajouter une étape'
102+
icon='add-circle-fill'
103+
iconSide='left'
104+
disabled={
105+
(!canBeDisponible && etapes.at(-1).statut === 'realise')
106+
|| etapes.at(-1).statut === 'obsolete'
107+
}
108+
onClick={addStep}
109+
>
110+
Ajouter l’étape suivante
111+
</Button>
113112

114113
<style jsx>{`
115114
.delete-button {

0 commit comments

Comments
 (0)