alist/internal/model
千石 eca500861a
feat: add user registration endpoint and role-based default settings (#9277)
* feat(setting): add role-based default and registration settings (closed #feat/register-and-statistics)

- Added `AllowRegister` and `DefaultRole` settings to site configuration.
- Integrated dynamic role options for `DefaultRole` using `op.GetRoles`.
- Updated `setting.go` handlers to manage `DefaultRole` options dynamically.
- Modified `const.go` to include new site settings constants.
- Updated dependencies in `go.mod` and `go.sum` to support new functionality.

* feat(register-and-statistics): add user registration endpoint

- Added `POST /auth/register` endpoint to support user registration.
- Implemented registration logic in `auth.go` with dynamic role assignment.
- Integrated settings `AllowRegister` and `DefaultRole` for registration flow.
- Updated imports to include new modules: `conf`, `setting`.
- Adjusted user creation logic to use `DefaultRole` setting dynamically.

* feat(register-and-statistics): add user registration endpoint (#register-and-statistics)

- Added `POST /auth/register` endpoint to support user registration.
- Implemented registration logic in `auth.go` with dynamic role assignment.
- Integrated `AllowRegister` and `DefaultRole` settings for registration flow.
- Updated imports to include new modules: `conf`, `setting`.
- Adjusted user creation logic to use `DefaultRole` dynamically.

* feat(register-and-statistics): enhance role management logic (#register-and-statistics)

- Refactored CreateRole and UpdateRole functions to handle default role.
- Added dynamic role assignment logic in 'role.go' using conf settings.
- Improved request handling in 'handles/role.go' with structured data.
- Implemented default role logic in 'db/role.go' to update non-default roles.
- Modified 'model/role.go' to include a 'Default' field for role management.

* feat(register-and-statistics): enhance role management logic

- Refactor CreateRole and UpdateRole to handle default roles.
- Add dynamic role assignment using conf settings in 'role.go'.
- Improve request handling with structured data in 'handles/role.go'.
- Implement default role logic in 'db/role.go' for non-default roles.
- Modify 'model/role.go' to include 'Default' field for role management.

* feat(register-and-statistics): improve role handling logic

- Switch from role names to role IDs for better consistency.
- Update logic to prioritize "guest" for default role ID.
- Adjust `DefaultRole` setting to use role IDs.
- Refactor `getRoleOptions` to return role IDs as a comma-separated string.

* feat(register-and-statistics): improve role handling logic
2025-08-18 16:38:21 +08:00
..
archive.go fix(archive): unable to preview (#7843) 2025-01-27 20:08:56 +08:00
args.go feat(alias): add `DownloadConcurrency` and `DownloadPartSize` option (#7829) 2025-01-27 20:08:39 +08:00
file.go feat: misc improvements about upload/copy/hash (#5045) 2023-08-27 21:14:23 +08:00
label.go feat: enhance permission control and label management (#9215) 2025-07-26 09:51:59 +08:00
label_file_binding.go feat: add tag backup and fix bugs (#9265) 2025-08-15 23:09:00 +08:00
meta.go feat: add `header` to `meta` (ref #5317) 2023-10-02 16:43:29 +08:00
obj.go feat(123_open): add new driver support for 123 Open (#9246) 2025-08-04 11:56:57 +08:00
obj_file.go feat: enhance permission control and label management (#9215) 2025-07-26 09:51:59 +08:00
object.go fix: resolve concurrent read/write issues in WrapObjName (#7865) 2025-01-27 20:06:18 +08:00
paths.go feat: enhance permission control and label management (#9215) 2025-07-26 09:51:59 +08:00
req.go feat: multiple search indexes (#2514) 2022-11-28 13:45:25 +08:00
role.go feat: add user registration endpoint and role-based default settings (#9277) 2025-08-18 16:38:21 +08:00
roles.go feat: enhance permission control and label management (#9215) 2025-07-26 09:51:59 +08:00
search.go feat(search): paging and scope (close #4381 in #4930) 2023-08-06 15:13:23 +08:00
setting.go feat(traffic): support limit task worker count & file stream rate (#7948) 2025-02-16 12:22:11 +08:00
sshkey.go feat(sftp-server): public key login (#7668) 2024-12-25 21:15:06 +08:00
storage.go feat(index): add `disable index` option for storages (#7730) 2024-12-30 22:52:55 +08:00
task.go feat: persistant Task (#6925 close #5313) 2024-08-07 12:16:21 +08:00
user.go fix: webdav error location (#9266) 2025-08-15 23:10:55 +08:00