It should be simple. Guild history data contains timestamp when event was received and time since event, so it is easy to get real time. You will need just to hook setup function for guild history row and change what is displayed.
Lua Code:
--backup of the original function
local SetupGuildEvent_Orig = GUILD_HISTORY.SetupGuildEvent
function GUILD_HISTORY:SetupGuildEvent(control, data, ...)
--call original function first
SetupGuildEvent_Orig(self, control, data, ...)
--get timestamp (epoch time) of the event
local timestamp = GetTimeStamp() - data.secsSinceEvent - (GetFrameTimeSeconds() - data.timeStamp)
--get date of the event from timestamp
local datestring = GetDateStringFromTimestamp(timestamp)
--get time of the event, however this time is valid for GMT time zone
local timestring = ZO_FormatTime(timestamp % 86400, TIME_FORMAT_STYLE_CLOCK_TIME, TIME_FORMAT_PRECISION_TWENTY_FOUR_HOUR) --timestamp % 86400 = seconds since midnight in GMT time zone (% = modulo, 86400 = number of seconds in a day)
--set new text
control:GetNamedChild("Time"):SetText(datestring .. " " .. timestring)
end
Now you just have to figure out how to convert GMT time to your timezone. I was thinking about something like:
Lua Code:
local correction = GetSecondsSinceMidnight() - (GetTimeStamp() % 86400)
However it probably won't work if date in timezones is different.