Set default position when creating a bucket
This commit is contained in:
parent
f403a6d3f5
commit
02418c6fa5
@ -257,6 +257,12 @@ func (b *Bucket) Create(s *xorm.Session, a web.Auth) (err error) {
|
||||
b.CreatedByID = b.CreatedBy.ID
|
||||
|
||||
_, err = s.Insert(b)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
b.Position = calculateDefaultPosition(b.ID, b.Position)
|
||||
_, err = s.Where("id = ?", b.ID).Update(b)
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -838,9 +838,9 @@ func setTaskBucket(s *xorm.Session, task *Task, originalTask *Task, doCheckBucke
|
||||
return nil
|
||||
}
|
||||
|
||||
func calculateDefaultTaskPosition(t *Task, position float64) float64 {
|
||||
func calculateDefaultPosition(entityID int64, position float64) float64 {
|
||||
if position == 0 {
|
||||
return float64(t.ID+1) * math.Pow(2, 16)
|
||||
return float64(entityID) * math.Pow(2, 16)
|
||||
}
|
||||
|
||||
return position
|
||||
@ -905,8 +905,8 @@ func createTask(s *xorm.Session, t *Task, a web.Auth, updateAssignees bool) (err
|
||||
|
||||
t.Index = latestTask.Index + 1
|
||||
// If no position was supplied, set a default one
|
||||
t.Position = calculateDefaultTaskPosition(latestTask, t.Position)
|
||||
t.KanbanPosition = calculateDefaultTaskPosition(latestTask, t.KanbanPosition)
|
||||
t.Position = calculateDefaultPosition(latestTask.ID+1, t.Position)
|
||||
t.KanbanPosition = calculateDefaultPosition(latestTask.ID+1, t.KanbanPosition)
|
||||
if _, err = s.Insert(t); err != nil {
|
||||
return err
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user