2014-05-05 13:32:47 +04:00
// 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 06:48:14 +04:00
package auth
2014-05-05 13:32:47 +04:00
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 06:48:14 +04:00
type AuthenticationForm struct {
2014-05-11 14:10:37 +04:00
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" `
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 19:02:36 +04:00
SmtpHost string ` form:"smtphost" `
SmtpPort int ` form:"smtpport" `
2014-05-11 15:43:57 +04:00
Tls bool ` form:"tls" `
2014-05-11 14:10:37 +04:00
AllowAutoRegister bool ` form:"allowautoregister" `
2014-05-03 06:48:14 +04:00
}
2014-05-05 13:32:47 +04:00
func ( f * AuthenticationForm ) Name ( field string ) string {
names := map [ string ] string {
"AuthName" : "Authentication's name" ,
"Domain" : "Domain name" ,
"Host" : "Host address" ,
"Port" : "Port Number" ,
"BaseDN" : "Base DN" ,
"Attributes" : "Search attributes" ,
"Filter" : "Search filter" ,
"MsAdSA" : "Ms Ad SA" ,
}
return names [ field ]
}
2014-05-09 06:12:05 +04:00
func ( f * AuthenticationForm ) Validate ( errors * binding . Errors , req * http . Request , context martini . Context ) {
2014-05-05 13:32:47 +04:00
data := context . Get ( reflect . TypeOf ( base . TmplData { } ) ) . Interface ( ) . ( base . TmplData )
validate ( errors , data , f )
}