summaryrefslogtreecommitdiff
path: root/src/common/time_zone.h
diff options
context:
space:
mode:
authorlat9nq <22451773+lat9nq@users.noreply.github.com>2023-05-23 18:32:28 -0400
committerlat9nq <22451773+lat9nq@users.noreply.github.com>2023-06-05 15:15:11 -0400
commit3979c7daa478199cff7bc985fceabcf30fadbc3b (patch)
tree52f24a4fed679dbac23aedfa29f2fc79e3d34870 /src/common/time_zone.h
parent011438fa9580c9b03934c7267760674355b83c1d (diff)
common: Move system time zone string detection
Moves it from Settings to Common::TimeZone, since this algorithm doesn't depend on the setting. It also lets us use it in other libraries. common: Various fixes time_zone: Don't double up the std::abs Too many absolute values were causing mirrored time zones to resolve as the same.
Diffstat (limited to 'src/common/time_zone.h')
-rw-r--r--src/common/time_zone.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/common/time_zone.h b/src/common/time_zone.h
index 99cae6ef2..f574d5c04 100644
--- a/src/common/time_zone.h
+++ b/src/common/time_zone.h
@@ -3,15 +3,21 @@
#pragma once
+#include <array>
#include <chrono>
#include <string>
namespace Common::TimeZone {
+[[nodiscard]] const std::array<const char*, 46>& GetTimeZoneStrings();
+
/// Gets the default timezone, i.e. "GMT"
[[nodiscard]] std::string GetDefaultTimeZone();
/// Gets the offset of the current timezone (from the default), in seconds
[[nodiscard]] std::chrono::seconds GetCurrentOffsetSeconds();
+/// Searches time zone offsets for the closest offset to the system time zone
+[[nodiscard]] std::string FindSystemTimeZone();
+
} // namespace Common::TimeZone