forked from mirrors/homebox
feat: extract auth into provider (#663)
* extract auth into provider * bump go version * use pointer * rebase Former-commit-id: 8538877f52b9aae43b38afb37e5c69d99cb4827c
This commit is contained in:
parent
3eb4c21263
commit
0c535aa8d8
6 changed files with 155 additions and 46 deletions
30
backend/app/api/providers/local.go
Normal file
30
backend/app/api/providers/local.go
Normal file
|
@ -0,0 +1,30 @@
|
|||
package providers
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/hay-kot/homebox/backend/internal/core/services"
|
||||
)
|
||||
|
||||
type LocalProvider struct {
|
||||
service *services.UserService
|
||||
}
|
||||
|
||||
func NewLocalProvider(service *services.UserService) *LocalProvider {
|
||||
return &LocalProvider{
|
||||
service: service,
|
||||
}
|
||||
}
|
||||
|
||||
func (p *LocalProvider) Name() string {
|
||||
return "local"
|
||||
}
|
||||
|
||||
func (p *LocalProvider) Authenticate(w http.ResponseWriter, r *http.Request) (services.UserAuthTokenDetail, error) {
|
||||
loginForm, err := getLoginForm(r)
|
||||
if err != nil {
|
||||
return services.UserAuthTokenDetail{}, err
|
||||
}
|
||||
|
||||
return p.service.Login(r.Context(), loginForm.Username, loginForm.Password, loginForm.StayLoggedIn)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue