Add exporting list background files
This commit is contained in:
parent
c74cdcbdc9
commit
1838e48e72
@ -21,6 +21,7 @@ import (
|
||||
"archive/zip"
|
||||
"code.vikunja.io/api/pkg/config"
|
||||
"code.vikunja.io/api/pkg/db"
|
||||
"code.vikunja.io/api/pkg/files"
|
||||
"code.vikunja.io/api/pkg/modules/dump"
|
||||
"code.vikunja.io/api/pkg/user"
|
||||
"encoding/json"
|
||||
@ -68,6 +69,10 @@ func ExportUserData(u *user.User) (err error) {
|
||||
return err
|
||||
}
|
||||
// Background files
|
||||
err = exportListBackgrounds(s, u, dumpWriter)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// Pack it in a zip file and save it
|
||||
|
||||
@ -170,15 +175,15 @@ func exportTaskAttachments(s *xorm.Session, u *user.User, wr *zip.Writer) (err e
|
||||
return err
|
||||
}
|
||||
|
||||
files := make(map[int64]io.ReadCloser)
|
||||
fs := make(map[int64]io.ReadCloser)
|
||||
for _, ta := range tas {
|
||||
if err := ta.File.LoadFileByID(); err != nil {
|
||||
return err
|
||||
}
|
||||
files[ta.FileID] = ta.File.File
|
||||
fs[ta.FileID] = ta.File.File
|
||||
}
|
||||
|
||||
return dump.WriteFilesToZip(files, wr)
|
||||
return dump.WriteFilesToZip(fs, wr)
|
||||
}
|
||||
|
||||
func exportSavedFilters(s *xorm.Session, u *user.User, wr *zip.Writer) (err error) {
|
||||
@ -194,3 +199,35 @@ func exportSavedFilters(s *xorm.Session, u *user.User, wr *zip.Writer) (err erro
|
||||
|
||||
return dump.WriteBytesToZip("filters.json", data, wr)
|
||||
}
|
||||
|
||||
func exportListBackgrounds(s *xorm.Session, u *user.User, wr *zip.Writer) (err error) {
|
||||
lists, _, _, err := getRawListsForUser(
|
||||
s,
|
||||
&listOptions{
|
||||
user: u,
|
||||
page: -1,
|
||||
},
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
fs := make(map[int64]io.ReadCloser)
|
||||
for _, l := range lists {
|
||||
if l.BackgroundFileID == 0 {
|
||||
continue
|
||||
}
|
||||
|
||||
bgFile := &files.File{
|
||||
ID: l.BackgroundFileID,
|
||||
}
|
||||
err = bgFile.LoadFileByID()
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
fs[l.BackgroundFileID] = bgFile.File
|
||||
}
|
||||
|
||||
return dump.WriteFilesToZip(fs, wr)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user