mirror of
https://github.com/h44z/wg-portal.git
synced 2025-08-25 14:31:14 +00:00
V2 alpha - initial version (#172)
Initial alpha codebase for version 2 of WireGuard Portal. This version is considered unstable and incomplete (for example, no public REST API)! Use with care! Fixes/Implements the following issues: - OAuth support #154, #1 - New Web UI with internationalisation support #98, #107, #89, #62 - Postgres Support #49 - Improved Email handling #47, #119 - DNS Search Domain support #46 - Bugfixes #94, #48 --------- Co-authored-by: Fabian Wechselberger <wechselbergerf@hotmail.com>
This commit is contained in:
41
internal/app/api/v0/model/models_authentication.go
Normal file
41
internal/app/api/v0/model/models_authentication.go
Normal file
@@ -0,0 +1,41 @@
|
||||
package model
|
||||
|
||||
import "github.com/h44z/wg-portal/internal/domain"
|
||||
|
||||
type LoginProviderInfo struct {
|
||||
Identifier string `json:"Identifier" example:"google"`
|
||||
Name string `json:"Name" example:"Login with Google"`
|
||||
ProviderUrl string `json:"ProviderUrl" example:"/auth/google/login"`
|
||||
CallbackUrl string `json:"CallbackUrl" example:"/auth/google/callback"`
|
||||
}
|
||||
|
||||
func NewLoginProviderInfo(src *domain.LoginProviderInfo) *LoginProviderInfo {
|
||||
return &LoginProviderInfo{
|
||||
Identifier: src.Identifier,
|
||||
Name: src.Name,
|
||||
ProviderUrl: src.ProviderUrl,
|
||||
CallbackUrl: src.CallbackUrl,
|
||||
}
|
||||
}
|
||||
|
||||
func NewLoginProviderInfos(src []domain.LoginProviderInfo) []LoginProviderInfo {
|
||||
accessories := make([]LoginProviderInfo, len(src))
|
||||
for i := range src {
|
||||
accessories[i] = *NewLoginProviderInfo(&src[i])
|
||||
}
|
||||
return accessories
|
||||
}
|
||||
|
||||
type SessionInfo struct {
|
||||
LoggedIn bool `json:"LoggedIn"`
|
||||
IsAdmin bool `json:"IsAdmin,omitempty"`
|
||||
UserIdentifier *string `json:"UserIdentifier,omitempty"`
|
||||
UserFirstname *string `json:"UserFirstname,omitempty"`
|
||||
UserLastname *string `json:"UserLastname,omitempty"`
|
||||
UserEmail *string `json:"UserEmail,omitempty"`
|
||||
}
|
||||
|
||||
type OauthInitiationResponse struct {
|
||||
RedirectUrl string
|
||||
State string
|
||||
}
|
Reference in New Issue
Block a user