mirror of https://github.com/cloudreve/Cloudreve
fix(dashboard): remove default shortcut setting
parent
db7b54c5d7
commit
1fa70dc699
2
assets
2
assets
|
@ -1 +1 @@
|
||||||
Subproject commit 59bb76d3fc86fb39e6ad4e3a5f53c3df9092f476
|
Subproject commit 2440a06536dd2b8053359999bb61d495220cbf9c
|
|
@ -246,5 +246,4 @@ var DefaultSettings = map[string]string{
|
||||||
"qq_login": `0`,
|
"qq_login": `0`,
|
||||||
"qq_login_config": `{"direct_sign_in":false}`,
|
"qq_login_config": `{"direct_sign_in":false}`,
|
||||||
"license": "",
|
"license": "",
|
||||||
"default_symbolics": "[]",
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -719,7 +719,7 @@ func (f *DBFS) getFileByPath(ctx context.Context, navigator Navigator, path *fs.
|
||||||
// initFs initializes the file system for the user.
|
// initFs initializes the file system for the user.
|
||||||
func (f *DBFS) initFs(ctx context.Context, uid int) error {
|
func (f *DBFS) initFs(ctx context.Context, uid int) error {
|
||||||
f.l.Info("Initialize database file system for user %q", f.user.Email)
|
f.l.Info("Initialize database file system for user %q", f.user.Email)
|
||||||
parent, err := f.fileClient.CreateFolder(ctx, nil,
|
_, err := f.fileClient.CreateFolder(ctx, nil,
|
||||||
&inventory.CreateFolderParameters{
|
&inventory.CreateFolderParameters{
|
||||||
Owner: uid,
|
Owner: uid,
|
||||||
Name: inventory.RootFolderName,
|
Name: inventory.RootFolderName,
|
||||||
|
@ -728,58 +728,6 @@ func (f *DBFS) initFs(ctx context.Context, uid int) error {
|
||||||
return fmt.Errorf("failed to create root folder: %w", err)
|
return fmt.Errorf("failed to create root folder: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create default symbolics
|
|
||||||
symbolics := f.settingClient.DefaultSymbolics(ctx)
|
|
||||||
if len(symbolics) == 0 {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
user, err := f.userClient.GetLoginUserByID(ctx, uid)
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("failed to get user: %w", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
parent.SetOwner(user)
|
|
||||||
|
|
||||||
ctx = context.WithValue(ctx, inventory.LoadShareFile{}, true)
|
|
||||||
ctx = context.WithValue(ctx, inventory.LoadShareUser{}, true)
|
|
||||||
shares, err := f.shareClient.GetByIDs(ctx, symbolics)
|
|
||||||
if err != nil {
|
|
||||||
return fmt.Errorf("failed to get shares: %w", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, share := range shares {
|
|
||||||
if share.Edges.File == nil || share.Edges.User == nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
shareOwner := hashid.EncodeUserID(f.hasher, share.Edges.User.ID)
|
|
||||||
shareUri := fs.NewShareUri(hashid.EncodeShareID(f.hasher, share.ID), share.Password)
|
|
||||||
shareUriParsed, err := fs.NewUriFromString(shareUri)
|
|
||||||
if err != nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
if share.Edges.File.Type == int(types.FileTypeFile) {
|
|
||||||
shareUriParsed.Join(share.Edges.File.Name)
|
|
||||||
}
|
|
||||||
|
|
||||||
parentFile := newFile(nil, parent)
|
|
||||||
parentFile.OwnerModel = user
|
|
||||||
if _, err := f.createFile(ctx, parentFile, share.Edges.File.Name, types.FileType(share.Edges.File.Type), &dbfsOption{
|
|
||||||
FsOption: &fs.FsOption{
|
|
||||||
Metadata: map[string]string{
|
|
||||||
MetadataSharedRedirect: shareUriParsed.String(),
|
|
||||||
MetadataSharedOwner: shareOwner,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
errOnConflict: true,
|
|
||||||
isSymbolicLink: true,
|
|
||||||
}); err != nil {
|
|
||||||
f.l.Warning("Failed to create default symbolic link %q for user %q: %s", shareUriParsed, uid, err)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -184,8 +184,6 @@ type (
|
||||||
AvatarProcess(ctx context.Context) *AvatarProcess
|
AvatarProcess(ctx context.Context) *AvatarProcess
|
||||||
// UseFirstSiteUrl returns the first site URL.
|
// UseFirstSiteUrl returns the first site URL.
|
||||||
AllSiteURLs(ctx context.Context) []*url.URL
|
AllSiteURLs(ctx context.Context) []*url.URL
|
||||||
// DefaultSymbolics returns the default symbolics for new users.
|
|
||||||
DefaultSymbolics(ctx context.Context) []int
|
|
||||||
}
|
}
|
||||||
UseFirstSiteUrlCtxKey = struct{}
|
UseFirstSiteUrlCtxKey = struct{}
|
||||||
)
|
)
|
||||||
|
@ -213,16 +211,6 @@ type (
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
func (s *settingProvider) DefaultSymbolics(ctx context.Context) []int {
|
|
||||||
raw := s.getString(ctx, "default_symbolics", "[]")
|
|
||||||
var symbolics []int
|
|
||||||
if err := json.Unmarshal([]byte(raw), &symbolics); err != nil {
|
|
||||||
return []int{}
|
|
||||||
}
|
|
||||||
|
|
||||||
return symbolics
|
|
||||||
}
|
|
||||||
|
|
||||||
func (s *settingProvider) License(ctx context.Context) string {
|
func (s *settingProvider) License(ctx context.Context) string {
|
||||||
return s.getString(ctx, "license", "")
|
return s.getString(ctx, "license", "")
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue