diff --git a/management/server/sql_hooks.go b/management/server/sql_hooks.go new file mode 100644 index 000000000..774172540 --- /dev/null +++ b/management/server/sql_hooks.go @@ -0,0 +1,32 @@ +package server + +import ( + "time" + + "gorm.io/gorm" +) + +func GetDefaultTimezone() time.Time { + return time.Date(1, 1, 1, 1, 1, 1, 1, time.Local) +} + +func (u *SetupKey) BeforeSave(tx *gorm.DB) (err error) { + + if u.CreatedAt.IsZero() { + u.CreatedAt = GetDefaultTimezone() + } + + if u.ExpiresAt.IsZero() { + u.ExpiresAt = GetDefaultTimezone() + } + + if u.UpdatedAt.IsZero() { + u.UpdatedAt = GetDefaultTimezone() + } + + if u.LastUsed.IsZero() { + u.LastUsed = GetDefaultTimezone() + } + + return nil +}