What sparta said will only give the time & date according to your local timezone, others don't have the same times/dates as you.

You could set and msg it in GMT time if you wish.
Code:
on $*:text:/^!topic$/iS:#:.msg # 7 $+ # Topic: $chan(#).topic $($+(%,topic.,$cid,#),2)

And to set it
Code:
; Grab and store the data from raw 333 when you join the channel
raw 333:*:{
  set -e $+(%,topic.,$cid,$2) [Set by $3 : $gmt($4) GMT]
}
; (Re-)Set the variable when topic is changed
on *:TOPIC:#:{
  set -e $+(%,topic.,$cid,#) [Set by $nick : $gmt($ctime) GMT]
}