mirror of
https://github.com/wekan/wekan.git
synced 2025-12-19 17:00:13 +01:00
Fix flagging of dates (i.e. due date only flagged when before end date)
This commit is contained in:
parent
6a23f73d94
commit
a8146e61f3
3 changed files with 41 additions and 37 deletions
|
|
@ -220,12 +220,16 @@ class CardReceivedDate extends CardDate {
|
||||||
classes() {
|
classes() {
|
||||||
let classes = 'received-date ';
|
let classes = 'received-date ';
|
||||||
const dueAt = this.data().dueAt;
|
const dueAt = this.data().dueAt;
|
||||||
if (dueAt) {
|
const endAt = this.data().endAt;
|
||||||
if (this.date.get().isBefore(this.now.get(), 'minute') &&
|
const startAt = this.data().startAt;
|
||||||
this.now.get().isBefore(dueAt)) {
|
const theDate = this.date.get();
|
||||||
|
// if dueAt, endAt and startAt exist & are > receivedAt, receivedAt doesn't need to be flagged
|
||||||
|
if (((startAt) && (theDate.isAfter(dueAt))) ||
|
||||||
|
((endAt) && (theDate.isAfter(endAt))) ||
|
||||||
|
((dueAt) && (theDate.isAfter(dueAt))))
|
||||||
|
classes += 'long-overdue';
|
||||||
|
else
|
||||||
classes += 'current';
|
classes += 'current';
|
||||||
}
|
|
||||||
}
|
|
||||||
return classes;
|
return classes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -253,12 +257,17 @@ class CardStartDate extends CardDate {
|
||||||
classes() {
|
classes() {
|
||||||
let classes = 'start-date' + ' ';
|
let classes = 'start-date' + ' ';
|
||||||
const dueAt = this.data().dueAt;
|
const dueAt = this.data().dueAt;
|
||||||
if (dueAt) {
|
const endAt = this.data().endAt;
|
||||||
if (this.date.get().isBefore(this.now.get(), 'minute') &&
|
const theDate = this.date.get();
|
||||||
this.now.get().isBefore(dueAt)) {
|
const now = this.now.get();
|
||||||
|
// if dueAt or endAt exist & are > startAt, startAt doesn't need to be flagged
|
||||||
|
if (((endAt) && (theDate.isAfter(endAt))) ||
|
||||||
|
((dueAt) && (theDate.isAfter(dueAt))))
|
||||||
|
classes += 'long-overdue';
|
||||||
|
else if (theDate.isBefore(now, 'minute'))
|
||||||
|
classes += 'almost-due';
|
||||||
|
else
|
||||||
classes += 'current';
|
classes += 'current';
|
||||||
}
|
|
||||||
}
|
|
||||||
return classes;
|
return classes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -286,17 +295,15 @@ class CardDueDate extends CardDate {
|
||||||
classes() {
|
classes() {
|
||||||
let classes = 'due-date' + ' ';
|
let classes = 'due-date' + ' ';
|
||||||
|
|
||||||
// if endAt exists & is < dueAt, dueAt doesn't need to be flagged
|
|
||||||
const endAt = this.data().endAt;
|
const endAt = this.data().endAt;
|
||||||
const theDate = this.date.get();
|
const theDate = this.date.get();
|
||||||
const now = this.now.get();
|
const now = this.now.get();
|
||||||
|
// if the due date is after the end date, green - done early
|
||||||
if ((endAt !== 0) &&
|
if ((endAt) && (theDate.isAfter(endAt)))
|
||||||
(endAt !== null) &&
|
|
||||||
(endAt !== '') &&
|
|
||||||
(endAt !== undefined) &&
|
|
||||||
(theDate.isBefore(endAt)))
|
|
||||||
classes += 'current';
|
classes += 'current';
|
||||||
|
// if there is an end date, don't need to flag the due date
|
||||||
|
else if (endAt)
|
||||||
|
classes += '';
|
||||||
else if (now.diff(theDate, 'days') >= 2)
|
else if (now.diff(theDate, 'days') >= 2)
|
||||||
classes += 'long-overdue';
|
classes += 'long-overdue';
|
||||||
else if (now.diff(theDate, 'minute') >= 0)
|
else if (now.diff(theDate, 'minute') >= 0)
|
||||||
|
|
@ -330,15 +337,12 @@ class CardEndDate extends CardDate {
|
||||||
classes() {
|
classes() {
|
||||||
let classes = 'end-date' + ' ';
|
let classes = 'end-date' + ' ';
|
||||||
const dueAt = this.data.dueAt;
|
const dueAt = this.data.dueAt;
|
||||||
if (dueAt) {
|
const theDate = this.date.get();
|
||||||
const diff = dueAt.diff(this.date.get(), 'days');
|
// if dueAt exists & is after endAt, endAt doesn't need to be flagged
|
||||||
if (diff >= 2)
|
if ((dueAt) && (theDate.isAfter(dueAt, 'minute')))
|
||||||
classes += 'long-overdue';
|
classes += 'long-overdue';
|
||||||
else if (diff > 0)
|
else
|
||||||
classes += 'due';
|
|
||||||
else if (diff <= 0)
|
|
||||||
classes += 'current';
|
classes += 'current';
|
||||||
}
|
|
||||||
return classes;
|
return classes;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -43,12 +43,12 @@
|
||||||
&.start-date
|
&.start-date
|
||||||
time
|
time
|
||||||
&::before
|
&::before
|
||||||
content: "\f08b" // symbol: fa-sign-out
|
content: "\f251" // symbol: fa-hourglass-start
|
||||||
|
|
||||||
&.received-date
|
&.received-date
|
||||||
time
|
time
|
||||||
&::before
|
&::before
|
||||||
content: "\f251" // symbol: fa-hourglass-start
|
content: "\f08b" // symbol: fa-ign-out
|
||||||
|
|
||||||
time
|
time
|
||||||
&::before
|
&::before
|
||||||
|
|
|
||||||
|
|
@ -38,13 +38,6 @@ template(name="cardDetails")
|
||||||
else
|
else
|
||||||
a.js-start-date {{_ 'add'}}
|
a.js-start-date {{_ 'add'}}
|
||||||
|
|
||||||
.card-details-item.card-details-item-due
|
|
||||||
h3.card-details-item-title {{_ 'card-due'}}
|
|
||||||
if dueAt
|
|
||||||
+cardDueDate
|
|
||||||
else
|
|
||||||
a.js-due-date {{_ 'add'}}
|
|
||||||
|
|
||||||
.card-details-item.card-details-item-end
|
.card-details-item.card-details-item-end
|
||||||
h3.card-details-item-title {{_ 'card-end'}}
|
h3.card-details-item-title {{_ 'card-end'}}
|
||||||
if endAt
|
if endAt
|
||||||
|
|
@ -52,6 +45,13 @@ template(name="cardDetails")
|
||||||
else
|
else
|
||||||
a.js-end-date {{_ 'add'}}
|
a.js-end-date {{_ 'add'}}
|
||||||
|
|
||||||
|
.card-details-item.card-details-item-due
|
||||||
|
h3.card-details-item-title {{_ 'card-due'}}
|
||||||
|
if dueAt
|
||||||
|
+cardDueDate
|
||||||
|
else
|
||||||
|
a.js-due-date {{_ 'add'}}
|
||||||
|
|
||||||
.card-details-items
|
.card-details-items
|
||||||
.card-details-item.card-details-item-members
|
.card-details-item.card-details-item-members
|
||||||
h3.card-details-item-title {{_ 'members'}}
|
h3.card-details-item-title {{_ 'members'}}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue