forgejo-federation/modules/auth/authentication.go

56 lines
1.7 KiB
Go
Raw Normal View History

2014-05-05 15:02:47 +05:30
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
2014-05-03 08:18:14 +05:30
package auth
2014-05-05 15:02:47 +05:30
import (
"net/http"
"reflect"
"github.com/go-martini/martini"
"github.com/gogits/gogs/modules/base"
"github.com/gogits/gogs/modules/middleware/binding"
)
2014-05-03 08:18:14 +05:30
type AuthenticationForm struct {
2014-05-11 15:40:37 +05:30
Id int64 `form:"id"`
Type int `form:"type"`
AuthName string `form:"name" binding:"Required;MaxSize(50)"`
Domain string `form:"domain"`
Host string `form:"host"`
Port int `form:"port"`
2014-05-15 17:51:27 +05:30
UseSSL bool `form:"usessl"`
2014-05-11 15:40:37 +05:30
BaseDN string `form:"base_dn"`
Attributes string `form:"attributes"`
Filter string `form:"filter"`
MsAdSA string `form:"ms_ad_sa"`
IsActived bool `form:"is_actived"`
SmtpAuth string `form:"smtpauth"`
2014-05-12 20:32:36 +05:30
SmtpHost string `form:"smtphost"`
SmtpPort int `form:"smtpport"`
2014-05-11 17:13:57 +05:30
Tls bool `form:"tls"`
2014-05-11 15:40:37 +05:30
AllowAutoRegister bool `form:"allowautoregister"`
2014-05-03 08:18:14 +05:30
}
2014-05-05 15:02:47 +05:30
func (f *AuthenticationForm) Name(field string) string {
names := map[string]string{
"AuthName": "Authentication's name",
"Domain": "Domain name",
"Host": "Host address",
"Port": "Port Number",
2014-05-15 17:51:27 +05:30
"UseSSL": "Use SSL",
2014-05-05 15:02:47 +05:30
"BaseDN": "Base DN",
"Attributes": "Search attributes",
"Filter": "Search filter",
"MsAdSA": "Ms Ad SA",
}
return names[field]
}
2014-05-09 07:42:05 +05:30
func (f *AuthenticationForm) Validate(errors *binding.Errors, req *http.Request, context martini.Context) {
2014-05-05 15:02:47 +05:30
data := context.Get(reflect.TypeOf(base.TmplData{})).Interface().(base.TmplData)
validate(errors, data, f)
}