diff options
author | Lanre Adelowo <adelowomailbox@gmail.com> | 2019-01-09 18:22:57 +0100 |
---|---|---|
committer | techknowlogick <hello@techknowlogick.com> | 2019-01-09 12:22:57 -0500 |
commit | 8d2c24f7f9b9bce3a806e4748623bd3b2742025b (patch) | |
tree | 2010e6ffaf542d0828c496c31afa56f816c069d5 /modules/auth | |
parent | ea518681d95c9ef8ae5ed71d6d8cd7cfb6994a50 (diff) | |
download | gitea-8d2c24f7f9b9bce3a806e4748623bd3b2742025b.tar.gz gitea-8d2c24f7f9b9bce3a806e4748623bd3b2742025b.zip |
Allow for user specific themes (#5668)
* add migration and basic UI for changing a user's theme
* update user themem
* use right text on button
* load theme based on users' selection
* load theme based on users' selection in pwa too
* update sample config
* delete older theme loading
* implement AfterLoad to set users' theme properly
* set up default theme when creating a user. This uses the installation wide theme
* use flash messages for error
* set default theme when creating a user from the cli
* fix @lunny review
Diffstat (limited to 'modules/auth')
-rw-r--r-- | modules/auth/user_form.go | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/modules/auth/user_form.go b/modules/auth/user_form.go index c281672fe1..f59b795b4e 100644 --- a/modules/auth/user_form.go +++ b/modules/auth/user_form.go @@ -12,7 +12,7 @@ import ( "code.gitea.io/gitea/modules/setting" "github.com/go-macaron/binding" - "gopkg.in/macaron.v1" + macaron "gopkg.in/macaron.v1" ) // InstallForm form for installation page @@ -189,6 +189,30 @@ func (f *AddEmailForm) Validate(ctx *macaron.Context, errs binding.Errors) bindi return validate(errs, ctx.Data, f, ctx.Locale) } +// UpdateThemeForm form for updating a users' theme +type UpdateThemeForm struct { + Theme string `binding:"Required;MaxSize(30)"` +} + +// Validate validates the field +func (f *UpdateThemeForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors { + return validate(errs, ctx.Data, f, ctx.Locale) +} + +// IsThemeExists checks if the theme is a theme available in the config. +func (f UpdateThemeForm) IsThemeExists() bool { + var exists bool + + for _, v := range setting.UI.Themes { + if strings.ToLower(v) == strings.ToLower(f.Theme) { + exists = true + break + } + } + + return exists +} + // ChangePasswordForm form for changing password type ChangePasswordForm struct { OldPassword string `form:"old_password" binding:"MaxSize(255)"` |