fix(migration): ensure project background gets exported and imported
(cherry picked from commit ebfd5f54d2e4644aa2076c57a9b50ed5b87deaa9)
This commit is contained in:
parent
d08e9650ba
commit
de9f686480
@ -147,6 +147,11 @@ func exportProjectsAndTasks(s *xorm.Session, u *user.User, wr *zip.Writer) (task
|
|||||||
projectsMap := make(map[int64]*ProjectWithTasksAndBuckets, len(rawProjects))
|
projectsMap := make(map[int64]*ProjectWithTasksAndBuckets, len(rawProjects))
|
||||||
projectIDs := []int64{}
|
projectIDs := []int64{}
|
||||||
for _, p := range rawProjects {
|
for _, p := range rawProjects {
|
||||||
|
if p.BackgroundFileID > 0 {
|
||||||
|
p.BackgroundInformation = &files.File{
|
||||||
|
ID: p.BackgroundFileID,
|
||||||
|
}
|
||||||
|
}
|
||||||
pp := &ProjectWithTasksAndBuckets{
|
pp := &ProjectWithTasksAndBuckets{
|
||||||
Project: *p,
|
Project: *p,
|
||||||
}
|
}
|
||||||
|
@ -228,7 +228,15 @@ func addDetailsToProjectAndChildren(p *models.ProjectWithTasksAndBuckets, stored
|
|||||||
}
|
}
|
||||||
|
|
||||||
func addDetailsToProject(l *models.ProjectWithTasksAndBuckets, storedFiles map[int64]*zip.File) (err error) {
|
func addDetailsToProject(l *models.ProjectWithTasksAndBuckets, storedFiles map[int64]*zip.File) (err error) {
|
||||||
if b, exists := storedFiles[l.BackgroundFileID]; exists {
|
var backgroundFileID int64
|
||||||
|
bginfo, is := l.BackgroundInformation.(map[string]interface{})
|
||||||
|
if is {
|
||||||
|
bgid, has := bginfo["id"]
|
||||||
|
if has {
|
||||||
|
backgroundFileID = int64(bgid.(float64))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if b, exists := storedFiles[backgroundFileID]; exists {
|
||||||
bf, err := b.Open()
|
bf, err := b.Open()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return fmt.Errorf("could not open project background file %d for reading: %w", l.BackgroundFileID, err)
|
return fmt.Errorf("could not open project background file %d for reading: %w", l.BackgroundFileID, err)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user