Added localization support to DateTimeComponent

This commit is contained in:
Leon Styhre 2024-08-31 12:54:38 +02:00
parent d4a0f32dd0
commit 965ece8a85

View file

@ -12,6 +12,7 @@
#include "Log.h" #include "Log.h"
#include "Settings.h" #include "Settings.h"
#include "utils/LocalizationUtil.h"
#include "utils/StringUtil.h" #include "utils/StringUtil.h"
DateTimeComponent::DateTimeComponent() DateTimeComponent::DateTimeComponent()
@ -83,18 +84,24 @@ std::string DateTimeComponent::getDisplayString() const
std::string buf; std::string buf;
if (dur.getDays() > 0) if (dur.getDays() > 0) {
buf = std::to_string(dur.getDays()) + " day" + // Line break. buf = Utils::String::format(_np("theme", "%i day ago", "%i days ago", dur.getDays()),
(dur.getDays() > 1 ? "s" : "") + " ago"; dur.getDays());
else if (dur.getHours() > 0) }
buf = std::to_string(dur.getHours()) + " hour" + // Line break. else if (dur.getHours() > 0) {
(dur.getHours() > 1 ? "s" : "") + " ago"; buf = Utils::String::format(_np("theme", "%i hour ago", "%i hours ago", dur.getHours()),
else if (dur.getMinutes() > 0) dur.getHours());
buf = std::to_string(dur.getMinutes()) + " minute" + // Line break. }
(dur.getMinutes() > 1 ? "s" : "") + " ago"; else if (dur.getMinutes() > 0) {
else buf = Utils::String::format(
buf = std::to_string(dur.getSeconds()) + " second" + // Line break. _np("theme", "%i minute ago", "%i minutes ago", dur.getMinutes()),
(dur.getSeconds() > 1 || dur.getSeconds() == 0 ? "s" : "") + " ago"; dur.getMinutes());
}
else {
buf = Utils::String::format(
_np("theme", "%i second ago", "%i seconds ago", dur.getSeconds()),
dur.getSeconds());
}
return std::string(buf); return std::string(buf);
} }