new create webhook UI

This commit is contained in:
Unknwon 2015-08-27 00:30:06 +08:00
parent 2881456421
commit 4217c2333c
21 changed files with 307 additions and 273 deletions

View file

@ -65,13 +65,17 @@ func (f *RepoSettingForm) Validate(ctx *macaron.Context, errs binding.Errors) bi
// \__/\ / \___ >___ /___| /___| /\____/|__|_ \
// \/ \/ \/ \/ \/ \/
type WebhookForm struct {
HookType string `binding:"Required"`
PushOnly bool
Active bool
}
type NewWebhookForm struct {
HookTaskType string `form:"hook_type" binding:"Required"`
PayloadUrl string `form:"payload_url" binding:"Required;Url"`
ContentType string `form:"content_type" binding:"Required"`
Secret string `form:"secret"`
PushOnly bool `form:"push_only"`
Active bool `form:"active"`
PayloadURL string `binding:"Required;Url"`
ContentType int `binding:"Required"`
Secret string
WebhookForm
}
func (f *NewWebhookForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors {
@ -79,11 +83,9 @@ func (f *NewWebhookForm) Validate(ctx *macaron.Context, errs binding.Errors) bin
}
type NewSlackHookForm struct {
HookTaskType string `form:"hook_type" binding:"Required"`
PayloadUrl string `form:"payload_url" binding:"Required`
Channel string `form:"channel" binding:"Required"`
PushOnly bool `form:"push_only"`
Active bool `form:"active"`
PayloadURL string `binding:"Required`
Channel string `binding:"Required"`
WebhookForm
}
func (f *NewSlackHookForm) Validate(ctx *macaron.Context, errs binding.Errors) binding.Errors {

View file

@ -26,6 +26,27 @@ import (
"github.com/gogits/gogs/modules/setting"
)
type RepoContext struct {
AccessMode models.AccessMode
IsWatching bool
IsBranch bool
IsTag bool
IsCommit bool
Repository *models.Repository
Owner *models.User
Commit *git.Commit
Tag *git.Tag
GitRepo *git.Repository
BranchName string
TagName string
TreeName string
CommitId string
RepoLink string
CloneLink models.CloneLink
CommitsCount int
Mirror *models.Mirror
}
// Context represents context of a request.
type Context struct {
*macaron.Context
@ -51,27 +72,6 @@ type Context struct {
}
}
type RepoContext struct {
AccessMode models.AccessMode
IsWatching bool
IsBranch bool
IsTag bool
IsCommit bool
Repository *models.Repository
Owner *models.User
Commit *git.Commit
Tag *git.Tag
GitRepo *git.Repository
BranchName string
TagName string
TreeName string
CommitId string
RepoLink string
CloneLink models.CloneLink
CommitsCount int
Mirror *models.Mirror
}
// IsOwner returns true if current user is the owner of repository.
func (r RepoContext) IsOwner() bool {
return r.AccessMode >= models.ACCESS_MODE_OWNER

View file

@ -81,6 +81,7 @@ var (
QueueLength int
DeliverTimeout int
SkipTLSVerify bool
Types []string
}
// Repository settings.
@ -599,6 +600,7 @@ func newWebhookService() {
Webhook.QueueLength = sec.Key("QUEUE_LENGTH").MustInt(1000)
Webhook.DeliverTimeout = sec.Key("DELIVER_TIMEOUT").MustInt(5)
Webhook.SkipTLSVerify = sec.Key("SKIP_TLS_VERIFY").MustBool()
Webhook.Types = []string{"gogs", "slack"}
}
func NewServices() {