diff options
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  	}  | 
