diff --git a/database/clientstore.go b/database/clientstore.go new file mode 100644 index 0000000..e47169e --- /dev/null +++ b/database/clientstore.go @@ -0,0 +1,24 @@ +package database + +import ( + "github.com/go-oauth2/oauth2/v4" +) + +var _ oauth2.ClientInfo = &ClientStore{} + +func (c *ClientStore) GetID() string { return c.Subject } +func (c *ClientStore) GetSecret() string { return c.Secret } +func (c *ClientStore) GetDomain() string { return c.Domain } +func (c *ClientStore) IsPublic() bool { return c.Public } +func (c *ClientStore) GetUserID() string { return c.Owner } + +// GetName is an extra field for the oauth handler to display the application +// name +func (c *ClientStore) GetName() string { return c.Name } + +// IsSSO is an extra field for the oauth handler to skip the user input stage +// this is for trusted applications to get permissions without asking the user +func (c *ClientStore) IsSSO() bool { return c.Sso } + +// IsActive is an extra field for the app manager to get the active state +func (c *ClientStore) IsActive() bool { return c.Active } diff --git a/database/clientstore-wrapper.go b/database/userpatch.go similarity index 64% rename from database/clientstore-wrapper.go rename to database/userpatch.go index 6a4a692..02e4e1c 100644 --- a/database/clientstore-wrapper.go +++ b/database/userpatch.go @@ -3,7 +3,6 @@ package database import ( "fmt" "github.com/1f349/tulip/database/types" - "github.com/go-oauth2/oauth2/v4" "github.com/hardfinhq/go-date" "github.com/mrmelon54/pronouns" "golang.org/x/text/language" @@ -61,22 +60,3 @@ func (u *UserPatch) ParseFromForm(v url.Values) (safeErrs []error) { } return } - -var _ oauth2.ClientInfo = &ClientStore{} - -func (c *ClientStore) GetID() string { return c.Subject } -func (c *ClientStore) GetSecret() string { return c.Secret } -func (c *ClientStore) GetDomain() string { return c.Domain } -func (c *ClientStore) IsPublic() bool { return c.Public } -func (c *ClientStore) GetUserID() string { return c.Owner } - -// GetName is an extra field for the oauth handler to display the application -// name -func (c *ClientStore) GetName() string { return c.Name } - -// IsSSO is an extra field for the oauth handler to skip the user input stage -// this is for trusted applications to get permissions without asking the user -func (c *ClientStore) IsSSO() bool { return c.Sso } - -// IsActive is an extra field for the app manager to get the active state -func (c *ClientStore) IsActive() bool { return c.Active }