diff options
| author | 2022-08-08 10:40:51 +0200 | |
|---|---|---|
| committer | 2022-08-08 10:40:51 +0200 | |
| commit | 117888cf59c10330671f43bbce949a3984761c91 (patch) | |
| tree | 432e62b06206f315048e719ef2bb0e39c5f658ae /internal/api/client/auth | |
| parent | [chore] Update js deps (#744) (diff) | |
| download | gotosocial-117888cf59c10330671f43bbce949a3984761c91.tar.xz | |
[feature] Add first iteration of a user panel at `/user` (#736)
* start work on user panel
* parse source first before checking if empty form
* newline
* set avi + header nicely
* add posts settings
* render signin a bit nicer on mobile
* return OK json on successful change
* return unauthorized on bad password
* clarify message on insecure password
* make login a bit prettier
* add alt text + border round image previews
* add logout button
* add password change
* styling updates
* redirect /auth/edit to /user
* update tests
* fix validation tests
* better labels, link to more info
* make submit button generic component
* move submit button inside forms
* add autocomplete labels to password fields
* fix indentation (thx eslint)
* update eslintrc
* eslint: no-unescaped-entities
* initial deduplication between user and admin panel
* add default status/post format setting
* user panel styling for inputs
* update user panel styling, include normalize css
* add placeholder text
* input padding
Co-authored-by: f0x <f0x@cthu.lu>
Diffstat (limited to 'internal/api/client/auth')
| -rw-r--r-- | internal/api/client/auth/authorize.go | 8 | ||||
| -rw-r--r-- | internal/api/client/auth/signin.go | 11 | 
2 files changed, 18 insertions, 1 deletions
diff --git a/internal/api/client/auth/authorize.go b/internal/api/client/auth/authorize.go index 1a594a319..67325a81d 100644 --- a/internal/api/client/auth/authorize.go +++ b/internal/api/client/auth/authorize.go @@ -29,6 +29,7 @@ import (  	"github.com/google/uuid"  	"github.com/superseriousbusiness/gotosocial/internal/api"  	"github.com/superseriousbusiness/gotosocial/internal/api/model" +	"github.com/superseriousbusiness/gotosocial/internal/config"  	"github.com/superseriousbusiness/gotosocial/internal/db"  	"github.com/superseriousbusiness/gotosocial/internal/gtserror"  	"github.com/superseriousbusiness/gotosocial/internal/gtsmodel" @@ -142,6 +143,12 @@ func (m *Module) AuthorizeGETHandler(c *gin.Context) {  		return  	} +	instance, errWithCode := m.processor.InstanceGet(c.Request.Context(), config.GetHost()) +	if errWithCode != nil { +		api.ErrorHandler(c, errWithCode, m.processor.InstanceGet) +		return +	} +  	// the authorize template will display a form to the user where they can get some information  	// about the app that's trying to authorize, and the scope of the request.  	// They can then approve it if it looks OK to them, which will POST to the AuthorizePOSTHandler @@ -151,6 +158,7 @@ func (m *Module) AuthorizeGETHandler(c *gin.Context) {  		"redirect":   redirect,  		"scope":      scope,  		"user":       acct.Username, +		"instance":   instance,  	})  } diff --git a/internal/api/client/auth/signin.go b/internal/api/client/auth/signin.go index f9541d4c5..58f3fad7e 100644 --- a/internal/api/client/auth/signin.go +++ b/internal/api/client/auth/signin.go @@ -27,6 +27,7 @@ import (  	"github.com/gin-contrib/sessions"  	"github.com/gin-gonic/gin"  	"github.com/superseriousbusiness/gotosocial/internal/api" +	"github.com/superseriousbusiness/gotosocial/internal/config"  	"github.com/superseriousbusiness/gotosocial/internal/db"  	"github.com/superseriousbusiness/gotosocial/internal/gtserror"  	"github.com/superseriousbusiness/gotosocial/internal/gtsmodel" @@ -50,8 +51,16 @@ func (m *Module) SignInGETHandler(c *gin.Context) {  	}  	if m.idp == nil { +		instance, errWithCode := m.processor.InstanceGet(c.Request.Context(), config.GetHost()) +		if errWithCode != nil { +			api.ErrorHandler(c, errWithCode, m.processor.InstanceGet) +			return +		} +  		// no idp provider, use our own funky little sign in page -		c.HTML(http.StatusOK, "sign-in.tmpl", gin.H{}) +		c.HTML(http.StatusOK, "sign-in.tmpl", gin.H{ +			"instance": instance, +		})  		return  	}  | 
