summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--language/anope.en_US.po64
-rw-r--r--src/misc.cpp52
2 files changed, 56 insertions, 60 deletions
diff --git a/language/anope.en_US.po b/language/anope.en_US.po
index 140107614..d1e779309 100644
--- a/language/anope.en_US.po
+++ b/language/anope.en_US.po
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Anope\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2024-11-08 14:24+0000\n"
-"PO-Revision-Date: 2024-11-08 13:58+0000\n"
+"POT-Creation-Date: 2024-11-13 02:41+0000\n"
+"PO-Revision-Date: 2024-11-13 02:45+0000\n"
"Last-Translator: Sadie Powell <sadie@witchery.services>\n"
"Language-Team: English\n"
"Language: en_US\n"
@@ -1429,6 +1429,36 @@ msgstr ""
msgid ". %s is still online."
msgstr ""
+#, c-format
+msgid "1 day"
+msgid_plural "%lld days"
+msgstr[0] ""
+msgstr[1] ""
+
+#, c-format
+msgid "1 hour"
+msgid_plural "%lld hours"
+msgstr[0] ""
+msgstr[1] ""
+
+#, c-format
+msgid "1 minute"
+msgid_plural "%lld minutes"
+msgstr[0] ""
+msgstr[1] ""
+
+#, c-format
+msgid "1 second"
+msgid_plural "%lld seconds"
+msgstr[0] ""
+msgstr[1] ""
+
+#, c-format
+msgid "1 year"
+msgid_plural "%lld years"
+msgstr[0] ""
+msgstr[1] ""
+
msgid "<unknown>"
msgstr ""
@@ -7331,12 +7361,6 @@ msgstr ""
msgid "[{pattern | nick} [SECRET]]"
msgstr ""
-msgid "day"
-msgstr ""
-
-msgid "days"
-msgstr ""
-
msgid "does not expire"
msgstr ""
@@ -7375,40 +7399,16 @@ msgstr ""
msgid "expires momentarily"
msgstr ""
-msgid "hour"
-msgstr ""
-
-msgid "hours"
-msgstr ""
-
#, c-format
msgid "letters: %s, words: %s, lines: %s, smileys: %s, actions: %s"
msgstr ""
-msgid "minute"
-msgstr ""
-
-msgid "minutes"
-msgstr ""
-
msgid "not assigned yet"
msgstr ""
-msgid "second"
-msgstr ""
-
-msgid "seconds"
-msgstr ""
-
msgid "vhost"
msgstr ""
-msgid "year"
-msgstr ""
-
-msgid "years"
-msgstr ""
-
msgid "{MODIFY|VIEW} [block name item name item value]"
msgstr ""
diff --git a/src/misc.cpp b/src/misc.cpp
index 0b760ea76..565081b1e 100644
--- a/src/misc.cpp
+++ b/src/misc.cpp
@@ -308,36 +308,32 @@ Anope::string Anope::Duration(time_t t, const NickCore *nc)
time_t minutes = (t / 60) % 60;
time_t seconds = (t) % 60;
- if (!years && !days && !hours && !minutes)
- return Anope::ToString(seconds) + " " + (seconds != 1 ? Language::Translate(nc, _("seconds")) : Language::Translate(nc, _("second")));
- else
+ Anope::string buffer;
+ if (years)
{
- bool need_comma = false;
- Anope::string buffer;
- if (years)
- {
- buffer = Anope::ToString(years) + " " + (years != 1 ? Language::Translate(nc, _("years")) : Language::Translate(nc, _("year")));
- need_comma = true;
- }
- if (days)
- {
- buffer += need_comma ? ", " : "";
- buffer += Anope::ToString(days) + " " + (days != 1 ? Language::Translate(nc, _("days")) : Language::Translate(nc, _("day")));
- need_comma = true;
- }
- if (hours)
- {
- buffer += need_comma ? ", " : "";
- buffer += Anope::ToString(hours) + " " + (hours != 1 ? Language::Translate(nc, _("hours")) : Language::Translate(nc, _("hour")));
- need_comma = true;
- }
- if (minutes)
- {
- buffer += need_comma ? ", " : "";
- buffer += Anope::ToString(minutes) + " " + (minutes != 1 ? Language::Translate(nc, _("minutes")) : Language::Translate(nc, _("minute")));
- }
- return buffer;
+ buffer = Anope::printf(Language::Translate(nc, years, N_("1 year", "%lld years")), (long long)years);
+ }
+ if (days)
+ {
+ buffer += buffer.empty() ? "" : ", ";
+ buffer += Anope::printf(Language::Translate(nc, days, N_("1 day", "%lld days")), (long long)days);
+ }
+ if (hours)
+ {
+ buffer += buffer.empty() ? "" : ", ";
+ buffer += Anope::printf(Language::Translate(nc, hours, N_("1 hour", "%lld hours")), (long long)hours);
+ }
+ if (minutes)
+ {
+ buffer += buffer.empty() ? "" : ", ";
+ buffer += Anope::printf(Language::Translate(nc, minutes, N_("1 minute", "%lld minutes")), (long long)minutes);
+ }
+ if (seconds || buffer.empty())
+ {
+ buffer += buffer.empty() ? "" : ", ";
+ buffer += Anope::printf(Language::Translate(nc, seconds, N_("1 second", "%lld seconds")), (long long)seconds);
}
+ return buffer;
}
Anope::string Anope::strftime(time_t t, const NickCore *nc, bool short_output)