jwf-year-calendar
Version:
A full react version of Paul-DS' js-year-calendar, https://github.com/year-calendar/js-year-calendar. Built with support from JWF Process Solutions Ltd.
59 lines (58 loc) • 1.7 kB
JavaScript
export const isAfter = (test, reference) => {
if (test && reference) {
if (test.year > reference.year) {
return true;
}
if (test.month > reference.month && test.year === reference.year) {
return true;
}
if (test.day >= reference.day && test.month === reference.month && test.year === reference.year) {
return true;
}
}
return false;
};
export const isBefore = (test, reference) => {
if (test && reference) {
if (test.year < reference.year) {
return true;
}
if (test.month < reference.month && test.year === reference.year) {
return true;
}
if (test.day <= reference.day && test.month === reference.month && test.year === reference.year) {
return true;
}
}
return false;
};
export const isEqual = (test, reference) => {
if (test && reference) {
if (test.month === reference.month && test.day === reference.day && test.year === reference.year) {
return true;
}
}
return false;
};
export const isBetweenDates = (test, start, end) => {
if (start && end) {
if (isAfter(test, start) && isBefore(test, end)) {
return true;
}
if (isAfter(test, end) && isBefore(test, start)) {
return true;
}
}
return false;
};
export const relevantEvents = (date, events) => {
const e = [];
if (events) {
for (let i = 0; i < events.length; i += 1) {
if (isBetweenDates(date, events[i].startDate, events[i].endDate)) {
e.push(events[i]);
}
}
}
return e;
};