From d24f813f3f2a05c112e803e4256b53535895fc98 Mon Sep 17 00:00:00 2001 From: Jedidiah Barber Date: Wed, 14 Jul 2021 11:49:10 +1200 Subject: Initial mirror commit --- src/statistics/ScheduledPage.cpp | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 src/statistics/ScheduledPage.cpp (limited to 'src/statistics/ScheduledPage.cpp') diff --git a/src/statistics/ScheduledPage.cpp b/src/statistics/ScheduledPage.cpp new file mode 100644 index 0000000..5e2b558 --- /dev/null +++ b/src/statistics/ScheduledPage.cpp @@ -0,0 +1,35 @@ +#include "ScheduledPage.h" +#include "../dictionary/CardPack.h" + +ScheduledPage::ScheduledPage(const StatisticsParams* statParams): + TimeChartPage(statParams) +{ + init(); +} + +QList ScheduledPage::getDates(const CardPack* pack) const +{ + QList scheduled = pack->getScheduledDates(); + adjustScheduledRecords(scheduled); + return scheduled; +} + +void ScheduledPage::adjustScheduledRecords(QList& scheduled) +{ + const QDate curDate = QDate::currentDate(); + const QTime zeroTime = QTime(0, 0); + for(int i = 0; i < scheduled.size(); i++) + { + QDateTime& dateTime = scheduled[i]; + if(dateTime.date() < curDate) + dateTime = QDateTime(curDate, zeroTime); + else if(laterThisDay(dateTime)) + dateTime = QDateTime(curDate.addDays(1), zeroTime); + } +} + +bool ScheduledPage::laterThisDay(QDateTime& dateTime) +{ + return dateTime.date() == QDate::currentDate() && + dateTime > QDateTime::currentDateTime(); +} -- cgit