interactive post update fix (#7477)
Этот коммит содержится в:
коммит произвёл
Harrison Healey
родитель
99b7d65504
Коммит
e7e10d36a9
@@ -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
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user