diff --git a/pkg/migration/20240603172746.go b/pkg/migration/20240603172746.go new file mode 100644 index 000000000..5dae0fdb1 --- /dev/null +++ b/pkg/migration/20240603172746.go @@ -0,0 +1,84 @@ +// Vikunja is a to-do list application to facilitate your life. +// Copyright 2018-present Vikunja and contributors. All rights reserved. +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public Licensee as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public Licensee for more details. +// +// You should have received a copy of the GNU Affero General Public Licensee +// along with this program. If not, see . + +package migration + +import ( + "regexp" + "strings" + + "src.techknowlogick.com/xormigrate" + "xorm.io/xorm" +) + +func convertChecklistInDescription(tx *xorm.Engine, table string, column string) (err error) { + items := []map[string]interface{}{} + err = tx.Table(table). + Select("id, " + column). + Find(&items) + if err != nil { + return + } + + for _, item := range items { + if !strings.Contains(item[column].(string), "
  • [") { + continue + } + + var re = regexp.MustCompile(`