Repousser un projet en bloc, sauf ce dont on ne décide pas
Glisser la barre résumé décale toutes les phases du même nombre de jours, écarts conservés : un projet engagé glisse souvent, et le faire phase par phase les déformait. Restent en place ce qui est terminé — on ne réécrit pas le passé — et les phases à date imposée, nouveau booléen `fixed` pour ce qui est délégué ou tenu du dehors. D'où le format en version 6 : sans l'incrément, un binaire antérieur effacerait ces dates imposées à la première sauvegarde. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -40,6 +40,7 @@ export function creerPanneau(refs, rappels) {
|
||||
formulaire.end.value = phase.end;
|
||||
formulaire.status.value = STATUTS.includes(phase.status) ? phase.status : 'todo';
|
||||
formulaire.milestone.checked = phase.milestone;
|
||||
formulaire.fixed.checked = phase.fixed;
|
||||
// Ouverture sur l'aperçu si la phase est commentée, sur la saisie sinon :
|
||||
// on ouvre une phase bloquée pour relire pourquoi, une phase vierge pour
|
||||
// y écrire quelque chose.
|
||||
@@ -77,6 +78,7 @@ export function creerPanneau(refs, rappels) {
|
||||
end: fin,
|
||||
status: formulaire.status.value,
|
||||
milestone: jalon,
|
||||
fixed: formulaire.fixed.checked,
|
||||
notes: formulaire.notes.value,
|
||||
});
|
||||
|
||||
@@ -170,6 +172,7 @@ export function creerPanneau(refs, rappels) {
|
||||
// serait le pire moment pour changer d'état.
|
||||
if (formulaire.notes !== actif) blocNotes.definir(phase.notes);
|
||||
if (formulaire.milestone !== actif) formulaire.milestone.checked = phase.milestone;
|
||||
if (formulaire.fixed !== actif) formulaire.fixed.checked = phase.fixed;
|
||||
champFin.hidden = phase.milestone;
|
||||
},
|
||||
|
||||
@@ -198,6 +201,7 @@ function sontEgales(a, b) {
|
||||
a.end === b.end &&
|
||||
a.status === b.status &&
|
||||
a.milestone === b.milestone &&
|
||||
a.fixed === b.fixed &&
|
||||
a.notes === b.notes
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user