fix: update task in typesense when adding a label or assignee to them
Resolves https://community.vikunja.io/t/typesense-only-works-if-i-re-index/2212
This commit is contained in:
parent
037022e857
commit
521300613f
@ -17,6 +17,7 @@
|
||||
package models
|
||||
|
||||
import (
|
||||
"code.vikunja.io/api/pkg/events"
|
||||
"strconv"
|
||||
"strings"
|
||||
"time"
|
||||
@ -46,7 +47,7 @@ type LabelTask struct {
|
||||
}
|
||||
|
||||
// TableName makes a pretty table name
|
||||
func (LabelTask) TableName() string {
|
||||
func (*LabelTask) TableName() string {
|
||||
return "label_tasks"
|
||||
}
|
||||
|
||||
@ -84,7 +85,7 @@ func (lt *LabelTask) Delete(s *xorm.Session, _ web.Auth) (err error) {
|
||||
// @Failure 404 {object} web.HTTPError "The label does not exist."
|
||||
// @Failure 500 {object} models.Message "Internal error"
|
||||
// @Router /tasks/{task}/labels [put]
|
||||
func (lt *LabelTask) Create(s *xorm.Session, _ web.Auth) (err error) {
|
||||
func (lt *LabelTask) Create(s *xorm.Session, auth web.Auth) (err error) {
|
||||
// Check if the label is already added
|
||||
exists, err := s.Exist(&LabelTask{LabelID: lt.LabelID, TaskID: lt.TaskID})
|
||||
if err != nil {
|
||||
@ -100,6 +101,20 @@ func (lt *LabelTask) Create(s *xorm.Session, _ web.Auth) (err error) {
|
||||
return err
|
||||
}
|
||||
|
||||
t, err := GetTaskByIDSimple(s, lt.TaskID)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
doer, _ := user.GetFromAuth(auth)
|
||||
err = events.Dispatch(&TaskUpdatedEvent{
|
||||
Task: &t,
|
||||
Doer: doer,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = updateProjectByTaskID(s, lt.TaskID)
|
||||
return
|
||||
}
|
||||
|
@ -280,6 +280,13 @@ func (t *Task) addNewAssigneeByID(s *xorm.Session, newAssigneeID int64, project
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = events.Dispatch(&TaskUpdatedEvent{
|
||||
Task: t,
|
||||
Doer: doer,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = updateProjectLastUpdated(s, &Project{ID: t.ProjectID})
|
||||
return
|
||||
|
Loading…
x
Reference in New Issue
Block a user