auth

package
v1.10.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 17, 2020 License: MIT Imports: 18 Imported by: 642

Documentation

Index

Constants

View Source
const (
	AvatarLocal  string = "local"
	AvatarByMail string = "bymail"
)

Avatar types

Variables

This section is empty.

Functions

func AssignForm

func AssignForm(form interface{}, data map[string]interface{})

AssignForm assign form values back to the template data.

func CheckOAuthAccessToken added in v1.8.1

func CheckOAuthAccessToken(accessToken string) int64

CheckOAuthAccessToken returns uid of user from oauth token token

func GetInclude

func GetInclude(field reflect.StructField) string

GetInclude get include in form tag

func GetMaxSize

func GetMaxSize(field reflect.StructField) string

GetMaxSize get max size in form tag

func GetMinSize

func GetMinSize(field reflect.StructField) string

GetMinSize get minimal size in form tag

func GetSize

func GetSize(field reflect.StructField) string

GetSize get size int form tag

func IsAPIPath

func IsAPIPath(url string) bool

IsAPIPath if URL is an api path

func IsAttachmentDownload added in v1.10.0

func IsAttachmentDownload(ctx *macaron.Context) bool

IsAttachmentDownload check if request is a file download (GET) with URL to an attachment

func SignedInID

func SignedInID(ctx *macaron.Context, sess session.Store) int64

SignedInID returns the id of signed in user.

func SignedInUser

func SignedInUser(ctx *macaron.Context, sess session.Store) (*models.User, bool)

SignedInUser returns the user object of signed user. It returns a bool value to indicate whether user uses basic auth or not.

Types

type AccessTokenForm added in v1.8.0

type AccessTokenForm struct {
	GrantType    string `json:"grant_type"`
	ClientID     string `json:"client_id"`
	ClientSecret string `json:"client_secret"`
	RedirectURI  string `json:"redirect_uri"`
	Code         string `json:"code"`
	RefreshToken string `json:"refresh_token"`

	// PKCE support
	CodeVerifier string `json:"code_verifier"`
}

AccessTokenForm for issuing access tokens from authorization codes or refresh tokens

func (*AccessTokenForm) Validate added in v1.8.0

func (f *AccessTokenForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type AddEmailForm

type AddEmailForm struct {
	Email string `binding:"Required;Email;MaxSize(254)"`
}

AddEmailForm form for adding new email

func (*AddEmailForm) Validate

func (f *AddEmailForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type AddKeyForm added in v1.2.0

type AddKeyForm struct {
	Type       string `binding:"OmitEmpty"`
	Title      string `binding:"Required;MaxSize(50)"`
	Content    string `binding:"Required"`
	IsWritable bool
}

AddKeyForm form for adding SSH/GPG key

func (*AddKeyForm) Validate added in v1.2.0

func (f *AddKeyForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type AddOpenIDForm added in v1.2.0

type AddOpenIDForm struct {
	Openid string `binding:"Required;MaxSize(256)"`
}

AddOpenIDForm is for changing openid uri

func (*AddOpenIDForm) Validate added in v1.2.0

func (f *AddOpenIDForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type AddTimeManuallyForm added in v1.3.0

type AddTimeManuallyForm struct {
	Hours   int `binding:"Range(0,1000)"`
	Minutes int `binding:"Range(0,1000)"`
}

AddTimeManuallyForm form that adds spent time manually.

func (*AddTimeManuallyForm) Validate added in v1.3.0

Validate validates the fields

type AdminCreateUserForm added in v1.0.0

type AdminCreateUserForm struct {
	LoginType          string `binding:"Required"`
	LoginName          string
	UserName           string `binding:"Required;AlphaDashDot;MaxSize(40)"`
	Email              string `binding:"Required;Email;MaxSize(254)"`
	Password           string `binding:"MaxSize(255)"`
	SendNotify         bool
	MustChangePassword bool
}

AdminCreateUserForm form for admin to create user

func (*AdminCreateUserForm) Validate added in v1.0.0

Validate validates form fields

type AdminEditUserForm

type AdminEditUserForm struct {
	LoginType               string `binding:"Required"`
	LoginName               string
	FullName                string `binding:"MaxSize(100)"`
	Email                   string `binding:"Required;Email;MaxSize(254)"`
	Password                string `binding:"MaxSize(255)"`
	Website                 string `binding:"ValidUrl;MaxSize(255)"`
	Location                string `binding:"MaxSize(50)"`
	MaxRepoCreation         int
	Active                  bool
	Admin                   bool
	AllowGitHook            bool
	AllowImportLocal        bool
	AllowCreateOrganization bool
	ProhibitLogin           bool
}

AdminEditUserForm form for admin to create user

func (*AdminEditUserForm) Validate

func (f *AdminEditUserForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates form fields

type AuthenticationForm

type AuthenticationForm struct {
	ID                            int64
	Type                          int    `binding:"Range(2,6)"`
	Name                          string `binding:"Required;MaxSize(30)"`
	Host                          string
	Port                          int
	BindDN                        string
	BindPassword                  string
	UserBase                      string
	UserDN                        string
	AttributeUsername             string
	AttributeName                 string
	AttributeSurname              string
	AttributeMail                 string
	AttributeSSHPublicKey         string
	AttributesInBind              bool
	UsePagedSearch                bool
	SearchPageSize                int
	Filter                        string
	AdminFilter                   string
	IsActive                      bool
	IsSyncEnabled                 bool
	SMTPAuth                      string
	SMTPHost                      string
	SMTPPort                      int
	AllowedDomains                string
	SecurityProtocol              int `binding:"Range(0,2)"`
	TLS                           bool
	SkipVerify                    bool
	PAMServiceName                string
	Oauth2Provider                string
	Oauth2Key                     string
	Oauth2Secret                  string
	OpenIDConnectAutoDiscoveryURL string
	Oauth2UseCustomURL            bool
	Oauth2TokenURL                string
	Oauth2AuthURL                 string
	Oauth2ProfileURL              string
	Oauth2EmailURL                string
}

AuthenticationForm form for authentication

func (*AuthenticationForm) Validate

func (f *AuthenticationForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates fields

type AuthorizationForm added in v1.8.0

type AuthorizationForm struct {
	ResponseType string `binding:"Required;In(code)"`
	ClientID     string `binding:"Required"`
	RedirectURI  string
	State        string

	// PKCE support
	CodeChallengeMethod string // S256, plain
	CodeChallenge       string
}

AuthorizationForm form for authorizing oauth2 clients

func (*AuthorizationForm) Validate added in v1.8.0

func (f *AuthorizationForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type AvatarForm

type AvatarForm struct {
	Source      string
	Avatar      *multipart.FileHeader
	Gravatar    string `binding:"OmitEmpty;Email;MaxSize(254)"`
	Federavatar bool
}

AvatarForm form for changing avatar

func (*AvatarForm) Validate

func (f *AvatarForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type ChangePasswordForm

type ChangePasswordForm struct {
	OldPassword string `form:"old_password" binding:"MaxSize(255)"`
	Password    string `form:"password" binding:"Required;MaxSize(255)"`
	Retype      string `form:"retype"`
}

ChangePasswordForm form for changing password

func (*ChangePasswordForm) Validate

func (f *ChangePasswordForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type CodeCommentForm added in v1.6.0

type CodeCommentForm struct {
	Content  string `binding:"Required"`
	Side     string `binding:"Required;In(previous,proposed)"`
	Line     int64
	TreePath string `form:"path" binding:"Required"`
	IsReview bool   `form:"is_review"`
	Reply    int64  `form:"reply"`
}

CodeCommentForm form for adding code comments for PRs

func (*CodeCommentForm) Validate added in v1.6.0

func (f *CodeCommentForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type ConnectOpenIDForm added in v1.2.0

type ConnectOpenIDForm struct {
	UserName string `binding:"Required;MaxSize(254)"`
	Password string `binding:"Required;MaxSize(255)"`
}

ConnectOpenIDForm form for connecting an existing account to an OpenID URI

func (*ConnectOpenIDForm) Validate added in v1.2.0

func (f *ConnectOpenIDForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type CreateCommentForm

type CreateCommentForm struct {
	Content string
	Status  string `binding:"OmitEmpty;In(reopen,close)"`
	Files   []string
}

CreateCommentForm form for creating comment

func (*CreateCommentForm) Validate

func (f *CreateCommentForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type CreateIssueForm

type CreateIssueForm struct {
	Title       string `binding:"Required;MaxSize(255)"`
	LabelIDs    string `form:"label_ids"`
	AssigneeIDs string `form:"assignee_ids"`
	Ref         string `form:"ref"`
	MilestoneID int64
	AssigneeID  int64
	Content     string
	Files       []string
}

CreateIssueForm form for creating issue

func (*CreateIssueForm) Validate

func (f *CreateIssueForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type CreateLabelForm

type CreateLabelForm struct {
	ID          int64
	Title       string `binding:"Required;MaxSize(50)" locale:"repo.issues.label_title"`
	Description string `binding:"MaxSize(200)" locale:"repo.issues.label_description"`
	Color       string `binding:"Required;Size(7)" locale:"repo.issues.label_color"`
}

CreateLabelForm form for creating label

func (*CreateLabelForm) Validate

func (f *CreateLabelForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type CreateMilestoneForm

type CreateMilestoneForm struct {
	Title    string `binding:"Required;MaxSize(50)"`
	Content  string
	Deadline string
}

CreateMilestoneForm form for creating milestone

func (*CreateMilestoneForm) Validate

Validate validates the fields

type CreateOrgForm

type CreateOrgForm struct {
	OrgName                   string `binding:"Required;AlphaDashDot;MaxSize(40)" locale:"org.org_name_holder"`
	Visibility                structs.VisibleType
	RepoAdminChangeTeamAccess bool
}

CreateOrgForm form for creating organization

func (*CreateOrgForm) Validate

func (f *CreateOrgForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type CreateRepoForm

type CreateRepoForm struct {
	UID         int64  `binding:"Required"`
	RepoName    string `binding:"Required;AlphaDashDot;MaxSize(100)"`
	Private     bool
	Description string `binding:"MaxSize(255)"`
	AutoInit    bool
	Gitignores  string
	IssueLabels string
	License     string
	Readme      string
}

CreateRepoForm form for creating repository

func (*CreateRepoForm) Validate

func (f *CreateRepoForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type CreateTeamForm

type CreateTeamForm struct {
	TeamName    string `binding:"Required;AlphaDashDot;MaxSize(30)"`
	Description string `binding:"MaxSize(255)"`
	Permission  string
	Units       []models.UnitType
}

CreateTeamForm form for creating team

func (*CreateTeamForm) Validate

func (f *CreateTeamForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type DeadlineForm added in v1.5.0

type DeadlineForm struct {
	DateString string `form:"date" binding:"Required;Size(10)"`
}

DeadlineForm hold the validation rules for deadlines

func (*DeadlineForm) Validate added in v1.5.0

func (f *DeadlineForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type DeleteRepoFileForm

type DeleteRepoFileForm struct {
	CommitSummary string `binding:"MaxSize(100)"`
	CommitMessage string
	CommitChoice  string `binding:"Required;MaxSize(50)"`
	NewBranchName string `binding:"GitRefName;MaxSize(100)"`
	LastCommit    string
}

DeleteRepoFileForm form for deleting repository file

func (*DeleteRepoFileForm) Validate

func (f *DeleteRepoFileForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type EditOAuth2ApplicationForm added in v1.8.0

type EditOAuth2ApplicationForm struct {
	Name        string `binding:"Required;MaxSize(255)" form:"application_name"`
	RedirectURI string `binding:"Required" form:"redirect_uri"`
}

EditOAuth2ApplicationForm form for editing oauth2 applications

func (*EditOAuth2ApplicationForm) Validate added in v1.8.0

Validate valideates the fields

type EditPreviewDiffForm

type EditPreviewDiffForm struct {
	Content string
}

EditPreviewDiffForm form for changing preview diff

func (*EditPreviewDiffForm) Validate

Validate validates the fields

type EditReleaseForm

type EditReleaseForm struct {
	Title      string `form:"title" binding:"Required;MaxSize(255)"`
	Content    string `form:"content"`
	Draft      string `form:"draft"`
	Prerelease bool   `form:"prerelease"`
	Files      []string
}

EditReleaseForm form for changing release

func (*EditReleaseForm) Validate

func (f *EditReleaseForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type EditRepoFileForm

type EditRepoFileForm struct {
	TreePath      string `binding:"Required;MaxSize(500)"`
	Content       string `binding:"Required"`
	CommitSummary string `binding:"MaxSize(100)"`
	CommitMessage string
	CommitChoice  string `binding:"Required;MaxSize(50)"`
	NewBranchName string `binding:"GitRefName;MaxSize(100)"`
	LastCommit    string
}

EditRepoFileForm form for changing repository file

func (*EditRepoFileForm) Validate

func (f *EditRepoFileForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type Form

type Form interface {
	binding.Validator
}

Form form binding interface

type GrantApplicationForm added in v1.8.0

type GrantApplicationForm struct {
	ClientID    string `binding:"Required"`
	RedirectURI string
	State       string
}

GrantApplicationForm form for authorizing oauth2 clients

func (*GrantApplicationForm) Validate added in v1.8.0

Validate valideates the fields

type InitializeLabelsForm

type InitializeLabelsForm struct {
	TemplateName string `binding:"Required"`
}

InitializeLabelsForm form for initializing labels

func (*InitializeLabelsForm) Validate

Validate validates the fields

type InstallForm

type InstallForm struct {
	DbType   string `binding:"Required"`
	DbHost   string
	DbUser   string
	DbPasswd string
	DbName   string
	SSLMode  string
	Charset  string `binding:"Required;In(utf8,utf8mb4)"`
	DbPath   string

	AppName      string `binding:"Required" locale:"install.app_name"`
	RepoRootPath string `binding:"Required"`
	LFSRootPath  string
	RunUser      string `binding:"Required"`
	Domain       string `binding:"Required"`
	SSHPort      int
	HTTPPort     string `binding:"Required"`
	AppURL       string `binding:"Required"`
	LogRootPath  string `binding:"Required"`

	SMTPHost        string
	SMTPFrom        string
	SMTPUser        string `binding:"OmitEmpty;MaxSize(254)" locale:"install.mailer_user"`
	SMTPPasswd      string
	RegisterConfirm bool
	MailNotify      bool

	OfflineMode                    bool
	DisableGravatar                bool
	EnableFederatedAvatar          bool
	EnableOpenIDSignIn             bool
	EnableOpenIDSignUp             bool
	DisableRegistration            bool
	AllowOnlyExternalRegistration  bool
	EnableCaptcha                  bool
	RequireSignInView              bool
	DefaultKeepEmailPrivate        bool
	DefaultAllowCreateOrganization bool
	DefaultEnableTimetracking      bool
	NoReplyAddress                 string

	AdminName          string `binding:"OmitEmpty;AlphaDashDot;MaxSize(30)" locale:"install.admin_name"`
	AdminPasswd        string `binding:"OmitEmpty;MaxSize(255)" locale:"install.admin_password"`
	AdminConfirmPasswd string
	AdminEmail         string `binding:"OmitEmpty;MinSize(3);MaxSize(254);Include(@)" locale:"install.admin_email"`
}

InstallForm form for installation page

func (*InstallForm) Validate

func (f *InstallForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type IssueLockForm added in v1.8.0

type IssueLockForm struct {
	Reason string `binding:"Required"`
}

IssueLockForm form for locking an issue

func (IssueLockForm) HasValidReason added in v1.8.0

func (i IssueLockForm) HasValidReason() bool

HasValidReason checks to make sure that the reason submitted in the form matches any of the values in the config

func (*IssueLockForm) Validate added in v1.8.0

func (i *IssueLockForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type MergePullRequestForm added in v1.4.0

type MergePullRequestForm struct {
	// required: true
	// enum: merge,rebase,rebase-merge,squash
	Do                string `binding:"Required;In(merge,rebase,rebase-merge,squash)"`
	MergeTitleField   string
	MergeMessageField string
}

MergePullRequestForm form for merging Pull Request swagger:model MergePullRequestOption

func (*MergePullRequestForm) Validate added in v1.4.0

Validate validates the fields

type MigrateRepoForm

type MigrateRepoForm struct {
	// required: true
	CloneAddr    string `json:"clone_addr" binding:"Required"`
	AuthUsername string `json:"auth_username"`
	AuthPassword string `json:"auth_password"`
	// required: true
	UID int64 `json:"uid" binding:"Required"`
	// required: true
	RepoName     string `json:"repo_name" binding:"Required;AlphaDashDot;MaxSize(100)"`
	Mirror       bool   `json:"mirror"`
	Private      bool   `json:"private"`
	Description  string `json:"description" binding:"MaxSize(255)"`
	Wiki         bool   `json:"wiki"`
	Milestones   bool   `json:"milestones"`
	Labels       bool   `json:"labels"`
	Issues       bool   `json:"issues"`
	PullRequests bool   `json:"pull_requests"`
	Releases     bool   `json:"releases"`
}

MigrateRepoForm form for migrating repository

func (MigrateRepoForm) ParseRemoteAddr

func (f MigrateRepoForm) ParseRemoteAddr(user *models.User) (string, error)

ParseRemoteAddr checks if given remote address is valid, and returns composed URL with needed username and password. It also checks if given user has permission when remote address is actually a local path.

func (*MigrateRepoForm) Validate

func (f *MigrateRepoForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type MustChangePasswordForm added in v1.6.0

type MustChangePasswordForm struct {
	Password string `binding:"Required;MaxSize(255)"`
	Retype   string
}

MustChangePasswordForm form for updating your password after account creation by an admin

func (*MustChangePasswordForm) Validate added in v1.6.0

Validate valideates the fields

type NewAccessTokenForm

type NewAccessTokenForm struct {
	Name string `binding:"Required;MaxSize(255)"`
}

NewAccessTokenForm form for creating access token

func (*NewAccessTokenForm) Validate

func (f *NewAccessTokenForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type NewBranchForm added in v1.3.0

type NewBranchForm struct {
	NewBranchName string `binding:"Required;MaxSize(100);GitRefName"`
}

NewBranchForm form for creating a new branch

func (*NewBranchForm) Validate added in v1.3.0

func (f *NewBranchForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type NewDingtalkHookForm added in v1.4.0

type NewDingtalkHookForm struct {
	PayloadURL string `binding:"Required;ValidUrl"`
	WebhookForm
}

NewDingtalkHookForm form for creating dingtalk hook

func (*NewDingtalkHookForm) Validate added in v1.4.0

Validate validates the fields

type NewDiscordHookForm added in v1.3.0

type NewDiscordHookForm struct {
	PayloadURL string `binding:"Required;ValidUrl"`
	Username   string
	IconURL    string
	WebhookForm
}

NewDiscordHookForm form for creating discord hook

func (*NewDiscordHookForm) Validate added in v1.3.0

func (f *NewDiscordHookForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type NewGogshookForm added in v1.2.0

type NewGogshookForm struct {
	PayloadURL  string `binding:"Required;ValidUrl"`
	ContentType int    `binding:"Required"`
	Secret      string
	WebhookForm
}

NewGogshookForm form for creating gogs hook

func (*NewGogshookForm) Validate added in v1.2.0

func (f *NewGogshookForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type NewMSTeamsHookForm added in v1.9.0

type NewMSTeamsHookForm struct {
	PayloadURL string `binding:"Required;ValidUrl"`
	WebhookForm
}

NewMSTeamsHookForm form for creating MS Teams hook

func (*NewMSTeamsHookForm) Validate added in v1.9.0

func (f *NewMSTeamsHookForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type NewReleaseForm

type NewReleaseForm struct {
	TagName    string `binding:"Required;GitRefName;MaxSize(255)"`
	Target     string `form:"tag_target" binding:"Required;MaxSize(255)"`
	Title      string `binding:"Required;MaxSize(255)"`
	Content    string
	Draft      string
	Prerelease bool
	Files      []string
}

NewReleaseForm form for creating release

func (*NewReleaseForm) Validate

func (f *NewReleaseForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type NewSlackHookForm

type NewSlackHookForm struct {
	PayloadURL string `binding:"Required;ValidUrl"`
	Channel    string `binding:"Required"`
	Username   string
	IconURL    string
	Color      string
	WebhookForm
}

NewSlackHookForm form for creating slack hook

func (NewSlackHookForm) HasInvalidChannel added in v1.6.0

func (f NewSlackHookForm) HasInvalidChannel() bool

HasInvalidChannel validates the channel name is in the right format

func (*NewSlackHookForm) Validate

func (f *NewSlackHookForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type NewTelegramHookForm added in v1.9.0

type NewTelegramHookForm struct {
	BotToken string `binding:"Required"`
	ChatID   string `binding:"Required"`
	WebhookForm
}

NewTelegramHookForm form for creating telegram hook

func (*NewTelegramHookForm) Validate added in v1.9.0

Validate validates the fields

type NewWebhookForm

type NewWebhookForm struct {
	PayloadURL  string `binding:"Required;ValidUrl"`
	HTTPMethod  string `binding:"Required;In(POST,GET)"`
	ContentType int    `binding:"Required"`
	Secret      string
	WebhookForm
}

NewWebhookForm form for creating web hook

func (*NewWebhookForm) Validate

func (f *NewWebhookForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type NewWikiForm

type NewWikiForm struct {
	Title   string `binding:"Required"`
	Content string `binding:"Required"`
	Message string
}

NewWikiForm form for creating wiki

func (*NewWikiForm) Validate

func (f *NewWikiForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields FIXME: use code generation to generate this method.

type ProtectBranchForm added in v1.3.0

type ProtectBranchForm struct {
	Protected               bool
	EnableWhitelist         bool
	WhitelistUsers          string
	WhitelistTeams          string
	EnableMergeWhitelist    bool
	MergeWhitelistUsers     string
	MergeWhitelistTeams     string
	EnableStatusCheck       bool `xorm:"NOT NULL DEFAULT false"`
	StatusCheckContexts     []string
	RequiredApprovals       int64
	ApprovalsWhitelistUsers string
	ApprovalsWhitelistTeams string
}

ProtectBranchForm form for changing protected branch settings

func (*ProtectBranchForm) Validate added in v1.3.0

func (f *ProtectBranchForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type ReactionForm added in v1.4.0

type ReactionForm struct {
	Content string `binding:"Required;In(+1,-1,laugh,confused,heart,hooray)"`
}

ReactionForm form for adding and removing reaction

func (*ReactionForm) Validate added in v1.4.0

func (f *ReactionForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type RegisterForm

type RegisterForm struct {
	UserName           string `binding:"Required;AlphaDashDot;MaxSize(40)"`
	Email              string `binding:"Required;Email;MaxSize(254)"`
	Password           string `binding:"MaxSize(255)"`
	Retype             string
	GRecaptchaResponse string `form:"g-recaptcha-response"`
}

RegisterForm form for registering

func (RegisterForm) IsEmailDomainWhitelisted added in v1.7.0

func (f RegisterForm) IsEmailDomainWhitelisted() bool

IsEmailDomainWhitelisted validates that the email address provided by the user matches what has been configured . If the domain whitelist from the config is empty, it marks the email as whitelisted

func (*RegisterForm) Validate

func (f *RegisterForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type RemoveUploadFileForm

type RemoveUploadFileForm struct {
	File string `binding:"Required;MaxSize(50)"`
}

RemoveUploadFileForm form for removing uploaded file

func (*RemoveUploadFileForm) Validate

Validate validates the fields

type RepoSettingForm

type RepoSettingForm struct {
	RepoName       string `binding:"Required;AlphaDashDot;MaxSize(100)"`
	Description    string `binding:"MaxSize(255)"`
	Website        string `binding:"ValidUrl;MaxSize(255)"`
	Interval       string
	MirrorAddress  string
	MirrorUsername string
	MirrorPassword string
	Private        bool
	EnablePrune    bool

	// Advanced settings
	EnableWiki                       bool
	EnableExternalWiki               bool
	ExternalWikiURL                  string
	EnableIssues                     bool
	EnableExternalTracker            bool
	ExternalTrackerURL               string
	TrackerURLFormat                 string
	TrackerIssueStyle                string
	EnablePulls                      bool
	PullsIgnoreWhitespace            bool
	PullsAllowMerge                  bool
	PullsAllowRebase                 bool
	PullsAllowRebaseMerge            bool
	PullsAllowSquash                 bool
	EnableTimetracker                bool
	AllowOnlyContributorsToTrackTime bool
	EnableIssueDependencies          bool
	IsArchived                       bool

	// Admin settings
	EnableHealthCheck                     bool
	EnableCloseIssuesViaCommitInAnyBranch bool
}

RepoSettingForm form for changing repository settings

func (*RepoSettingForm) Validate

func (f *RepoSettingForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type SaveTopicForm added in v1.5.0

type SaveTopicForm struct {
	Topics []string `binding:"topics;Required;"`
}

SaveTopicForm form for save topics for repository

type SignInForm

type SignInForm struct {
	UserName string `binding:"Required;MaxSize(254)"`
	// TODO remove required from password for SecondFactorAuthentication
	Password string `binding:"Required;MaxSize(255)"`
	Remember bool
}

SignInForm form for signing in with user/password

func (*SignInForm) Validate

func (f *SignInForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type SignInOpenIDForm added in v1.2.0

type SignInOpenIDForm struct {
	Openid   string `binding:"Required;MaxSize(256)"`
	Remember bool
}

SignInOpenIDForm form for signing in with OpenID

func (*SignInOpenIDForm) Validate added in v1.2.0

func (f *SignInOpenIDForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type SignUpOpenIDForm added in v1.2.0

type SignUpOpenIDForm struct {
	UserName           string `binding:"Required;AlphaDashDot;MaxSize(40)"`
	Email              string `binding:"Required;Email;MaxSize(254)"`
	GRecaptchaResponse string `form:"g-recaptcha-response"`
}

SignUpOpenIDForm form for signin up with OpenID

func (*SignUpOpenIDForm) Validate added in v1.2.0

func (f *SignUpOpenIDForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type SubmitReviewForm added in v1.6.0

type SubmitReviewForm struct {
	Content string
	Type    string `binding:"Required;In(approve,comment,reject)"`
}

SubmitReviewForm for submitting a finished code review

func (SubmitReviewForm) HasEmptyContent added in v1.6.0

func (f SubmitReviewForm) HasEmptyContent() bool

HasEmptyContent checks if the content of the review form is empty.

func (SubmitReviewForm) ReviewType added in v1.6.0

func (f SubmitReviewForm) ReviewType() models.ReviewType

ReviewType will return the corresponding reviewtype for type

func (*SubmitReviewForm) Validate added in v1.6.0

func (f *SubmitReviewForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type TwoFactorAuthForm added in v1.1.0

type TwoFactorAuthForm struct {
	Passcode string `binding:"Required"`
}

TwoFactorAuthForm for logging in with 2FA token.

func (*TwoFactorAuthForm) Validate added in v1.1.0

func (f *TwoFactorAuthForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type TwoFactorScratchAuthForm added in v1.1.0

type TwoFactorScratchAuthForm struct {
	Token string `binding:"Required"`
}

TwoFactorScratchAuthForm for logging in with 2FA scratch token.

func (*TwoFactorScratchAuthForm) Validate added in v1.1.0

Validate valideates the fields

type U2FDeleteForm added in v1.5.0

type U2FDeleteForm struct {
	ID int64 `binding:"Required"`
}

U2FDeleteForm for deleting U2F keys

func (*U2FDeleteForm) Validate added in v1.5.0

func (f *U2FDeleteForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate valideates the fields

type U2FRegistrationForm added in v1.5.0

type U2FRegistrationForm struct {
	Name string `binding:"Required"`
}

U2FRegistrationForm for reserving an U2F name

func (*U2FRegistrationForm) Validate added in v1.5.0

Validate valideates the fields

type UpdateOrgSettingForm

type UpdateOrgSettingForm struct {
	Name                      string `binding:"Required;AlphaDashDot;MaxSize(40)" locale:"org.org_name_holder"`
	FullName                  string `binding:"MaxSize(100)"`
	Description               string `binding:"MaxSize(255)"`
	Website                   string `binding:"ValidUrl;MaxSize(255)"`
	Location                  string `binding:"MaxSize(50)"`
	Visibility                structs.VisibleType
	MaxRepoCreation           int
	RepoAdminChangeTeamAccess bool
}

UpdateOrgSettingForm form for updating organization settings

func (*UpdateOrgSettingForm) Validate

Validate validates the fields

type UpdateProfileForm

type UpdateProfileForm struct {
	Name             string `binding:"AlphaDashDot;MaxSize(40)"`
	FullName         string `binding:"MaxSize(100)"`
	Email            string `binding:"Required;Email;MaxSize(254)"`
	KeepEmailPrivate bool
	Website          string `binding:"ValidUrl;MaxSize(255)"`
	Location         string `binding:"MaxSize(50)"`
	Language         string `binding:"Size(5)"`
	Description      string `binding:"MaxSize(255)"`
}

UpdateProfileForm form for updating profile

func (*UpdateProfileForm) Validate

func (f *UpdateProfileForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type UpdateThemeForm added in v1.8.0

type UpdateThemeForm struct {
	Theme string `binding:"Required;MaxSize(30)"`
}

UpdateThemeForm form for updating a users' theme

func (UpdateThemeForm) IsThemeExists added in v1.8.0

func (f UpdateThemeForm) IsThemeExists() bool

IsThemeExists checks if the theme is a theme available in the config.

func (*UpdateThemeForm) Validate added in v1.8.0

func (f *UpdateThemeForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the field

type UploadRepoFileForm

type UploadRepoFileForm struct {
	TreePath      string `binding:"MaxSize(500)"`
	CommitSummary string `binding:"MaxSize(100)"`
	CommitMessage string
	CommitChoice  string `binding:"Required;MaxSize(50)"`
	NewBranchName string `binding:"GitRefName;MaxSize(100)"`
	Files         []string
}

UploadRepoFileForm form for uploading repository file

func (*UploadRepoFileForm) Validate

func (f *UploadRepoFileForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors

Validate validates the fields

type WebhookForm

type WebhookForm struct {
	Events       string
	Create       bool
	Delete       bool
	Fork         bool
	Issues       bool
	IssueComment bool
	Release      bool
	Push         bool
	PullRequest  bool
	Repository   bool
	Active       bool
	BranchFilter string `binding:"GlobPattern"`
}

WebhookForm form for changing web hook

func (WebhookForm) ChooseEvents

func (f WebhookForm) ChooseEvents() bool

ChooseEvents if the hook will be triggered choose events

func (WebhookForm) PushOnly

func (f WebhookForm) PushOnly() bool

PushOnly if the hook will be triggered when push

func (WebhookForm) SendEverything

func (f WebhookForm) SendEverything() bool

SendEverything if the hook will be triggered any event

Directories

Path Synopsis
Package ldap provide functions & structure to query a LDAP ldap directory For now, it's mainly tested again an MS Active Directory service, see README.md for more information
Package ldap provide functions & structure to query a LDAP ldap directory For now, it's mainly tested again an MS Active Directory service, see README.md for more information

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL