| | |
| | | #include <utility> |
| | | |
| | | enum class QuickRange { Today, Last7Days, ThisMonth, ThisYear }; |
| | | |
| | | using TP = std::chrono::system_clock::time_point; |
| | | class CToolUnits |
| | | { |
| | | public: |
| | |
| | | static bool IsLeap(int y); |
| | | static int DaysInMonth(int y, int m); |
| | | static void GetTodayYMD_Local(int& y, int& m, int& d); |
| | | static void CToolUnits::LocalCalendarMinusDays(int& y, int& m, int& d, int nDays); |
| | | static void LocalCalendarMinusDays(int& y, int& m, int& d, int nDays); |
| | | static std::pair<std::chrono::system_clock::time_point, |
| | | std::chrono::system_clock::time_point> |
| | | CToolUnits::CalcQuickRangeUtc(QuickRange r); |
| | | |
| | | CalcQuickRangeUtc(QuickRange r); |
| | | static bool containsCI(const std::string& hay, const std::string& needle); |
| | | static std::string TimePointToLocalString(const std::optional<TP>& tp, |
| | | const char* fmt = "%Y-%m-%d %H:%M:%S"); |
| | | static std::string TimePointToUtcString(const std::optional<TP>& tp, |
| | | const char* fmt = "%Y-%m-%d %H:%M:%S"); |
| | | static std::string TimePointToLocalStringMs(const std::optional<TP>& tp); |
| | | static std::string NowStrSec(); |
| | | }; |
| | | |