/* *openPilotLog - A FOSS Pilot Logbook Application *Copyright (C) 2020-2022 Felix Turowsky * *This program is free software: you can redistribute it and/or modify *it under the terms of the GNU General Public License as published by *the Free Software Foundation, either version 3 of the License, or *(at your option) any later version. * *This program is distributed in the hope that it will be useful, *but WITHOUT ANY WARRANTY; without even the implied warranty of *MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *GNU General Public License for more details. * *You should have received a copy of the GNU General Public License *along with this program. If not, see . */ #ifndef ADATETIME_H #define ADATETIME_H #include #include "src/opl.h" namespace ADateTime { /*! * \brief toString formats a QDateTime object into a string in a uniform way. * \return */ inline const QString toString (const QDateTime& date_time, OPL::DateTimeFormat format) { switch (format) { case OPL::DateTimeFormat::Default: return date_time.toString(Qt::ISODate); case OPL::DateTimeFormat::Backup: return date_time.toString(QStringLiteral("yyyy_MM_dd_T_hh_mm")); default: return QString(); } } inline QDateTime fromString(const QString& date_time_string) { auto date_time = QDateTime::fromString(date_time_string, QStringLiteral("yyyy-MM-ddhh:mm")); date_time.setTimeZone(QTimeZone::utc()); return date_time; } } #endif // ADATETIME_H