2014-07-26 08:24:27 +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.
package auth
import (
2014-11-21 18:58:08 +03:00
"mime/multipart"
2014-07-26 08:24:27 +04:00
"github.com/Unknwon/macaron"
2014-10-15 19:19:20 +04:00
"github.com/macaron-contrib/binding"
2014-07-26 08:24:27 +04:00
)
type InstallForm struct {
Database string ` form:"database" binding:"Required" `
2014-09-08 03:02:58 +04:00
DbHost string ` form:"host" `
DbUser string ` form:"user" `
DbPasswd string ` form:"passwd" `
2014-07-26 08:24:27 +04:00
DatabaseName string ` form:"database_name" `
SslMode string ` form:"ssl_mode" `
DatabasePath string ` form:"database_path" `
2014-09-08 03:02:58 +04:00
RepoRootPath string ` form:"repo_path" binding:"Required" `
RunUser string ` form:"run_user" binding:"Required" `
Domain string ` form:"domain" binding:"Required" `
AppUrl string ` form:"app_url" binding:"Required" `
2014-07-26 08:24:27 +04:00
SmtpHost string ` form:"smtp_host" `
SmtpEmail string ` form:"mailer_user" `
SmtpPasswd string ` form:"mailer_pwd" `
RegisterConfirm string ` form:"register_confirm" `
MailNotify string ` form:"mail_notify" `
2014-09-08 03:02:58 +04:00
AdminName string ` form:"admin_name" binding:"Required;AlphaDashDot;MaxSize(30)" `
AdminPasswd string ` form:"admin_pwd" binding:"Required;MinSize(6);MaxSize(255)" `
ConfirmPasswd string ` form:"confirm_passwd" binding:"Required;MinSize(6);MaxSize(255)" `
AdminEmail string ` form:"admin_email" binding:"Required;Email;MaxSize(50)" `
2014-07-26 08:24:27 +04:00
}
2014-10-15 19:19:20 +04:00
func ( f * InstallForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
2014-07-26 08:24:27 +04:00
}
// _____ ____ _________________ ___
// / _ \ | | \__ ___/ | \
// / /_\ \| | / | | / ~ \
// / | \ | / | | \ Y /
// \____|__ /______/ |____| \___|_ /
// \/ \/
type RegisterForm struct {
UserName string ` form:"uname" binding:"Required;AlphaDashDot;MaxSize(35)" `
Email string ` form:"email" binding:"Required;Email;MaxSize(50)" `
2014-08-01 14:12:14 +04:00
Password string ` form:"password" binding:"Required;MinSize(6);MaxSize(255)" `
2014-07-26 08:24:27 +04:00
Retype string ` form:"retype" `
LoginType string ` form:"logintype" `
LoginName string ` form:"loginname" `
}
2014-10-15 19:19:20 +04:00
func ( f * RegisterForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
2014-07-26 08:24:27 +04:00
}
type SignInForm struct {
UserName string ` form:"uname" binding:"Required;MaxSize(35)" `
2014-08-01 14:12:14 +04:00
Password string ` form:"password" binding:"Required;MinSize(6);MaxSize(255)" `
2014-07-26 08:24:27 +04:00
Remember bool ` form:"remember" `
}
2014-10-15 19:19:20 +04:00
func ( f * SignInForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
2014-07-26 08:24:27 +04:00
}
// __________________________________________.___ _______ ________ _________
// / _____/\_ _____/\__ ___/\__ ___/| |\ \ / _____/ / _____/
// \_____ \ | __)_ | | | | | |/ | \/ \ ___ \_____ \
// / \ | \ | | | | | / | \ \_\ \/ \
// /_______ //_______ / |____| |____| |___\____|__ /\______ /_______ /
// \/ \/ \/ \/ \/
type UpdateProfileForm struct {
UserName string ` form:"uname" binding:"Required;MaxSize(35)" `
2014-08-14 10:12:21 +04:00
FullName string ` form:"fullname" binding:"MaxSize(100)" `
2014-07-26 08:24:27 +04:00
Email string ` form:"email" binding:"Required;Email;MaxSize(50)" `
2014-08-14 10:12:21 +04:00
Website string ` form:"website" binding:"Url;MaxSize(100)" `
2014-07-26 08:24:27 +04:00
Location string ` form:"location" binding:"MaxSize(50)" `
Avatar string ` form:"avatar" binding:"Required;Email;MaxSize(50)" `
}
2014-10-15 19:19:20 +04:00
func ( f * UpdateProfileForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
2014-07-26 08:24:27 +04:00
}
2014-11-21 18:58:08 +03:00
type UploadAvatarForm struct {
2014-11-21 20:51:36 +03:00
Enable bool ` form:"enable" `
Avatar * multipart . FileHeader ` form:"avatar" `
2014-11-21 18:58:08 +03:00
}
func ( f * UploadAvatarForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
}
2014-07-26 08:24:27 +04:00
type ChangePasswordForm struct {
2014-08-01 14:12:14 +04:00
OldPassword string ` form:"old_password" binding:"Required;MinSize(6);MaxSize(255)" `
Password string ` form:"password" binding:"Required;MinSize(6);MaxSize(255)" `
2014-07-26 08:24:27 +04:00
Retype string ` form:"retype" `
}
2014-10-15 19:19:20 +04:00
func ( f * ChangePasswordForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
2014-07-26 08:24:27 +04:00
}
2014-11-12 14:48:50 +03:00
type AddSSHKeyForm struct {
SSHTitle string ` form:"title" binding:"Required" `
Content string ` form:"content" binding:"Required" `
}
func ( f * AddSSHKeyForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
}
type NewAccessTokenForm struct {
Name string ` form:"name" binding:"Required" `
}
func ( f * NewAccessTokenForm ) Validate ( ctx * macaron . Context , errs binding . Errors ) binding . Errors {
return validate ( errs , ctx . Data , f , ctx . Locale )
}