mirror of
https://github.com/drakkan/sftpgo.git
synced 2025-12-07 14:50:55 +03:00
EventManager: add more datetime placeholders
Signed-off-by: Nicola Murino <nicola.murino@gmail.com>
This commit is contained in:
@@ -789,6 +789,12 @@ func (p *EventParams) getStringReplacements(addObjectData, jsonEscaped bool) []s
|
||||
} else {
|
||||
dateTimeString = p.Timestamp.UTC().Format(dateTimeMillisFormat)
|
||||
}
|
||||
year := dateTimeString[0:4]
|
||||
month := dateTimeString[5:7]
|
||||
day := dateTimeString[8:10]
|
||||
hour := dateTimeString[11:13]
|
||||
minute := dateTimeString[14:16]
|
||||
|
||||
replacements := []string{
|
||||
"{{Name}}", p.getStringReplacement(p.Name, jsonEscaped),
|
||||
"{{Event}}", p.Event,
|
||||
@@ -809,6 +815,11 @@ func (p *EventParams) getStringReplacements(addObjectData, jsonEscaped bool) []s
|
||||
"{{Email}}", p.getStringReplacement(p.Email, jsonEscaped),
|
||||
"{{Timestamp}}", strconv.FormatInt(p.Timestamp.UnixNano(), 10),
|
||||
"{{DateTime}}", dateTimeString,
|
||||
"{{Year}}", year,
|
||||
"{{Month}}", month,
|
||||
"{{Day}}", day,
|
||||
"{{Hour}}", hour,
|
||||
"{{Minute}}", minute,
|
||||
"{{StatusString}}", p.getStatusString(),
|
||||
"{{UID}}", p.getStringReplacement(p.UID, jsonEscaped),
|
||||
"{{Ext}}", p.getStringReplacement(p.Extension, jsonEscaped),
|
||||
|
||||
@@ -812,12 +812,16 @@ func TestDateTimePlaceholder(t *testing.T) {
|
||||
r := strings.NewReplacer(replacements...)
|
||||
res := r.Replace("{{DateTime}}")
|
||||
assert.Equal(t, dateTime.UTC().Format(dateTimeMillisFormat), res)
|
||||
res = r.Replace("{{Year}}-{{Month}}-{{Day}}T{{Hour}}:{{Minute}}")
|
||||
assert.Equal(t, dateTime.UTC().Format(dateTimeMillisFormat)[:16], res)
|
||||
|
||||
Config.TZ = "local"
|
||||
replacements = params.getStringReplacements(false, false)
|
||||
r = strings.NewReplacer(replacements...)
|
||||
res = r.Replace("{{DateTime}}")
|
||||
assert.Equal(t, dateTime.Local().Format(dateTimeMillisFormat), res)
|
||||
res = r.Replace("{{Year}}-{{Month}}-{{Day}}T{{Hour}}:{{Minute}}")
|
||||
assert.Equal(t, dateTime.Local().Format(dateTimeMillisFormat)[:16], res)
|
||||
|
||||
Config.TZ = oldTZ
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user