From fc82f57102ae4b8f89d8ad65ae3097aba9891272 Mon Sep 17 00:00:00 2001 From: Teviot Systems Date: Fri, 2 Oct 2015 20:16:27 +1000 Subject: Pass-through post creation time when importing posts --- api/post.go | 2 ++ model/post.go | 5 ++++- model/post_test.go | 13 +++++++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/api/post.go b/api/post.go index 2b683fb7d..65dad0eb6 100644 --- a/api/post.go +++ b/api/post.go @@ -88,6 +88,8 @@ func CreatePost(c *Context, post *model.Post, doUpdateLastViewed bool) (*model.P } } + post.CreateAt = 0 + post.Hashtags, _ = model.ParseHashtags(post.Message) post.UserId = c.Session.UserId diff --git a/model/post.go b/model/post.go index e78469940..1fc5963c3 100644 --- a/model/post.go +++ b/model/post.go @@ -120,7 +120,10 @@ func (o *Post) PreSave() { o.OriginalId = "" - o.CreateAt = GetMillis() + if o.CreateAt == 0 { + o.CreateAt = GetMillis() + } + o.UpdateAt = o.CreateAt if o.Props == nil { diff --git a/model/post_test.go b/model/post_test.go index 38f4b4c98..a6b880fa0 100644 --- a/model/post_test.go +++ b/model/post_test.go @@ -83,5 +83,18 @@ func TestPostIsValid(t *testing.T) { func TestPostPreSave(t *testing.T) { o := Post{Message: "test"} o.PreSave() + + if o.CreateAt == 0 { + t.Fatal("should be set") + } + + past := GetMillis() - 1 + o = Post{Message: "test", CreateAt: past} + o.PreSave() + + if o.CreateAt > past { + t.Fatal("should not be updated") + } + o.Etag() } -- cgit v1.2.3-1-g7c22