Этот коммит содержится в:
Chris
2017-09-19 16:05:20 -05:00
коммит произвёл Harrison Healey
родитель 99b7d65504
Коммит e7e10d36a9
2 изменённых файлов: 22 добавлений и 10 удалений

Просмотреть файл

@@ -198,21 +198,14 @@ func (o *Post) PreSave() {
} }
o.UpdateAt = o.CreateAt o.UpdateAt = o.CreateAt
o.PreCommit()
}
func (o *Post) PreCommit() {
if o.Props == nil { if o.Props == nil {
o.Props = make(map[string]interface{}) o.Props = make(map[string]interface{})
} }
if attachments, ok := o.Props["attachments"].([]*SlackAttachment); ok {
for _, attachment := range attachments {
for _, action := range attachment.Actions {
if action.Id == "" {
action.Id = NewId()
}
}
}
}
if o.Filenames == nil { if o.Filenames == nil {
o.Filenames = []string{} o.Filenames = []string{}
} }
@@ -220,6 +213,8 @@ func (o *Post) PreSave() {
if o.FileIds == nil { if o.FileIds == nil {
o.FileIds = []string{} o.FileIds = []string{}
} }
o.GenerateActionIds()
} }
func (o *Post) MakeNonNil() { func (o *Post) MakeNonNil() {
@@ -330,3 +325,18 @@ func (o *Post) GetAction(id string) *PostAction {
} }
return nil return nil
} }
func (o *Post) GenerateActionIds() {
if o.Props["attachments"] != nil {
o.Props["attachments"] = o.Attachments()
}
if attachments, ok := o.Props["attachments"].([]*SlackAttachment); ok {
for _, attachment := range attachments {
for _, action := range attachment.Actions {
if action.Id == "" {
action.Id = NewId()
}
}
}
}
}

Просмотреть файл

@@ -129,11 +129,13 @@ func (s SqlPostStore) Update(newPost *model.Post, oldPost *model.Post) StoreChan
result := StoreResult{} result := StoreResult{}
newPost.UpdateAt = model.GetMillis() newPost.UpdateAt = model.GetMillis()
newPost.PreCommit()
oldPost.DeleteAt = newPost.UpdateAt oldPost.DeleteAt = newPost.UpdateAt
oldPost.UpdateAt = newPost.UpdateAt oldPost.UpdateAt = newPost.UpdateAt
oldPost.OriginalId = oldPost.Id oldPost.OriginalId = oldPost.Id
oldPost.Id = model.NewId() oldPost.Id = model.NewId()
oldPost.PreCommit()
if result.Err = newPost.IsValid(); result.Err != nil { if result.Err = newPost.IsValid(); result.Err != nil {
storeChannel <- result storeChannel <- result