MCPcopy
hub / github.com/filebrowser/filebrowser / GetUser

Method GetUser

auth/hook.go:194–228  ·  view source on GitHub ↗

GetUser returns a User filled with hook values or provided defaults

(d *users.User)

Source from the content-addressed store, hash-verified

192
193// GetUser returns a User filled with hook values or provided defaults
194func (a *HookAuth) GetUser(d *users.User) *users.User {
195 // adds all permissions when user is admin
196 isAdmin := a.Fields.GetBoolean("user.perm.admin", d.Perm.Admin)
197 perms := users.Permissions{
198 Admin: isAdmin,
199 Execute: isAdmin || a.Fields.GetBoolean("user.perm.execute", d.Perm.Execute),
200 Create: isAdmin || a.Fields.GetBoolean("user.perm.create", d.Perm.Create),
201 Rename: isAdmin || a.Fields.GetBoolean("user.perm.rename", d.Perm.Rename),
202 Modify: isAdmin || a.Fields.GetBoolean("user.perm.modify", d.Perm.Modify),
203 Delete: isAdmin || a.Fields.GetBoolean("user.perm.delete", d.Perm.Delete),
204 Share: isAdmin || a.Fields.GetBoolean("user.perm.share", d.Perm.Share),
205 Download: isAdmin || a.Fields.GetBoolean("user.perm.download", d.Perm.Download),
206 }
207 user := users.User{
208 ID: d.ID,
209 Username: d.Username,
210 Password: d.Password,
211 Scope: a.Fields.GetString("user.scope", d.Scope),
212 Locale: a.Fields.GetString("user.locale", d.Locale),
213 ViewMode: users.ViewMode(a.Fields.GetString("user.viewMode", string(d.ViewMode))),
214 SingleClick: a.Fields.GetBoolean("user.singleClick", d.SingleClick),
215 RedirectAfterCopyMove: a.Fields.GetBoolean("user.redirectAfterCopyMove", d.RedirectAfterCopyMove),
216 Sorting: files.Sorting{
217 Asc: a.Fields.GetBoolean("user.sorting.asc", d.Sorting.Asc),
218 By: a.Fields.GetString("user.sorting.by", d.Sorting.By),
219 },
220 Commands: a.Fields.GetArray("user.commands", d.Commands),
221 DateFormat: a.Fields.GetBoolean("user.dateFormat", d.DateFormat),
222 HideDotfiles: a.Fields.GetBoolean("user.hideDotfiles", d.HideDotfiles),
223 Perm: perms,
224 LockPassword: true,
225 }
226
227 return &user
228}
229
230// hookFields is used to access fields from the hook
231type hookFields struct {

Callers 1

SaveUserMethod · 0.95

Calls 4

ViewModeTypeAlias · 0.92
GetBooleanMethod · 0.80
GetStringMethod · 0.80
GetArrayMethod · 0.80

Tested by

no test coverage detected