summaryrefslogtreecommitdiff
path: root/indra/newview/lleventnotifier.cpp
diff options
context:
space:
mode:
authorNicky <nicky.dasmijn@gmail.com>2022-02-28 22:04:05 +0100
committerNicky <nicky.dasmijn@gmail.com>2022-02-28 22:04:05 +0100
commit43031968a653899f62755b6d7b7e28b7fedc24d9 (patch)
treec610012c5d4e568d94dea4208a80fe1be53ff2bf /indra/newview/lleventnotifier.cpp
parent07d7dcc0be9b793b1bcef63f526b441a58a9b764 (diff)
parent6ca09a94554ec01f5c94ec60fffd01d7e33f3546 (diff)
Merge remote-tracking branch 'll/master'
Diffstat (limited to 'indra/newview/lleventnotifier.cpp')
-rw-r--r--indra/newview/lleventnotifier.cpp37
1 files changed, 35 insertions, 2 deletions
diff --git a/indra/newview/lleventnotifier.cpp b/indra/newview/lleventnotifier.cpp
index e3c17f9877..f1a44a68c9 100644
--- a/indra/newview/lleventnotifier.cpp
+++ b/indra/newview/lleventnotifier.cpp
@@ -36,6 +36,7 @@
#include "llfloaterevent.h"
#include "llagent.h"
#include "llcommandhandler.h" // secondlife:///app/... support
+#include "lltrans.h"
class LLEventHandler : public LLCommandHandler
{
@@ -218,8 +219,40 @@ void LLEventNotifier::load(const LLSD& event_options)
end = event_options.endArray(); resp_it != end; ++resp_it)
{
LLSD response = *resp_it;
-
- add(response["event_id"].asInteger(), response["event_date_ut"], response["event_date"].asString(), response["event_name"].asString());
+ LLDate date;
+ bool is_iso8601_date = false;
+
+ if (response["event_date"].isDate())
+ {
+ date = response["event_date"].asDate();
+ is_iso8601_date = true;
+ }
+ else if (date.fromString(response["event_date"].asString()))
+ {
+ is_iso8601_date = true;
+ }
+
+ if (is_iso8601_date)
+ {
+ std::string dateStr;
+
+ dateStr = "[" + LLTrans::getString("LTimeYear") + "]-["
+ + LLTrans::getString("LTimeMthNum") + "]-["
+ + LLTrans::getString("LTimeDay") + "] ["
+ + LLTrans::getString("LTimeHour") + "]:["
+ + LLTrans::getString("LTimeMin") + "]:["
+ + LLTrans::getString("LTimeSec") + "]";
+
+ LLSD substitution;
+ substitution["datetime"] = date;
+ LLStringUtil::format(dateStr, substitution);
+
+ add(response["event_id"].asInteger(), response["event_date_ut"], dateStr, response["event_name"].asString());
+ }
+ else
+ {
+ add(response["event_id"].asInteger(), response["event_date_ut"], response["event_date"].asString(), response["event_name"].asString());
+ }
}
}