2020
Relative
Change uppercase
W
to lowercase w
if your weeks start on Sunday.(formatDate(now(), "WY") == formatDate(prop("Date"), "WY")) ? "This Week" : ((format(toNumber(formatDate(now(), "W")) - 1) + formatDate(prop("Date"), "Y") == formatDate(prop("Date"), "WY")) ? "Last Week" : ((format(toNumber(formatDate(now(), "W")) + 1) + formatDate(prop("Date"), "Y") == formatDate(prop("Date"), "WY")) ? "Next Week" : (and(now() > prop("Date"), formatDate(now(), "ll") != formatDate(prop("Date"), "ll")) ? "Past" : ((dateBetween(prop("Date"), now(), "weeks") < 5) ? ("+" + format(dateBetween(prop("Date"), now(), "weeks")) + " weeks") : "Later"))))
(formatDate(now(), "WY") == formatDate(prop("Date"), "WY"))
Checks to see if the current date's Week/Year format matches that of
Date
's Week/Year format.? "This Week"
If it does, display
This Week
: ((format(toNumber(formatDate(now(), "W")) - 1) + formatDate(prop("Date"), "Y") == formatDate(prop("Date"), "WY"))
Otherwise check to see if the current date's Week/Year format minus one week matches that of
Date
's Week/Year format.? "Last Week"
If it does, display
Last Week
: ((format(toNumber(formatDate(now(), "W")) + 1) + formatDate(prop("Date"), "Y") == formatDate(prop("Date"), "WY"))
Otherwise check to see if the current date's Week/Year format plus one week matches that of
Date
's Week/Year format.? "Next Week"
If it does, display
Next Week
: (and(now() > prop("Date"), formatDate(now(), "ll") != formatDate(prop("Date"), "ll"))
Otherwise check to see if both the current date is greater than
Date
and the current date's DD/MM/YYYY format does not match Date
's DD/MM/YYYY format.? "Past"
If both return
true
, display Past
((dateBetween(prop("Date"), now(), "weeks") < 5)
Otherwise check to see if the number of weeks between the current date and
Date
is less than 5.? ("+" + format(dateBetween(prop("Date"), now(), "weeks")) + " weeks")
If the number of weeks is less than 5, add one week and display
+# weeks
: "Later"))))
Otherwise display
Later
+ Overdue
(formatDate(now(), "WY") == formatDate(prop("Date"), "WY")) ? "This Week" : ((format(toNumber(formatDate(now(), "W")) + 1) + formatDate(prop("Date"), "Y") == formatDate(prop("Date"), "WY")) ? "Next Week" : (and(now() > prop("Date"), formatDate(now(), "ll") != formatDate(prop("Date"), "ll")) ? "Overdue" : ((dateBetween(prop("Date"), now(), "weeks") < 5) ? ("+" + format(dateBetween(prop("Date"), now(), "weeks")) + " weeks") : "Later")))
Original
if(year(prop("Date")) < year(now()), "Overdue", if(year(prop("Date")) > year(now()), if(toNumber(formatDate(prop("Date"), "W")) == toNumber(formatDate(now(), "W")), "This week", if(toNumber(formatDate(prop("Date"), "W")) + 52 - toNumber(formatDate(now(), "W")) == 1, "Next week", if(toNumber(formatDate(prop("Date"), "W")) + 52 - toNumber(formatDate(now(), "W")) == 2, "2 weeks", if(toNumber(formatDate(prop("Date"), "W")) + 52 - toNumber(formatDate(now(), "W")) == 3, "3 weeks", if(toNumber(formatDate(prop("Date"), "W")) + 52 - toNumber(formatDate(now(), "W")) == 4, "4 weeks", if(toNumber(formatDate(prop("Date"), "W")) + 52 - toNumber(formatDate(now(), "W")) >= 5, "Later", "")))))), if(toNumber(formatDate(prop("Date"), "W")) < toNumber(formatDate(now(), "W")), "Overdue", if(toNumber(formatDate(prop("Date"), "W")) == toNumber(formatDate(now(), "W")), "This week", if(toNumber(formatDate(prop("Date"), "W")) - toNumber(formatDate(now(), "W")) == 1, "Next week", if(toNumber(formatDate(prop("Date"), "W")) - toNumber(formatDate(now(), "W")) == 2, "2 weeks", if(toNumber(formatDate(prop("Date"), "W")) - toNumber(formatDate(now(), "W")) == 3, "3 weeks", if(toNumber(formatDate(prop("Date"), "W")) - toNumber(formatDate(now(), "W")) == 4, "4 weeks", if(toNumber(formatDate(prop("Date"), "W")) - toNumber(formatDate(now(), "W")) >= 5, "Later", "")))))))))