Skip to content

New webhook page supports quick switching type #26941

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 21 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions options/locale/locale_en-US.ini
Original file line number Diff line number Diff line change
Expand Up @@ -2222,6 +2222,7 @@ settings.remove_team_success = The team's access to the repository has been remo
settings.add_webhook = Add Webhook
settings.add_webhook.invalid_channel_name = Webhook channel name cannot be empty and cannot contain only a # character.
settings.hooks_desc = Webhooks automatically make HTTP POST requests to a server when certain Gitea events trigger. Read more in the <a target="_blank" rel="noopener noreferrer" href="%s">webhooks guide</a>.
settings.webhook_type = Webhook Type
settings.webhook_deletion = Remove Webhook
settings.webhook_deletion_desc = Removing a webhook deletes its settings and delivery history. Continue?
settings.webhook_deletion_success = The webhook has been removed.
Expand Down
6 changes: 5 additions & 1 deletion templates/admin/hook_new.tmpl
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin settings new webhook")}}
<div class="admin-setting-content">
{{$IsNew := false}}
{{$CustomHeaderTitle := ctx.Locale.Tr "admin.defaulthooks.update_webhook"}}
{{if .PageIsAdminDefaultHooksNew}}
{{$IsNew = true}}
{{$CustomHeaderTitle = ctx.Locale.Tr "admin.defaulthooks.add_webhook"}}
{{else if .PageIsAdminSystemHooksNew}}
{{$IsNew = true}}
{{$CustomHeaderTitle = ctx.Locale.Tr "admin.systemhooks.add_webhook"}}
{{else if .Webhook.IsSystemWebhook}}
{{$IsNew = false}}
{{$CustomHeaderTitle = ctx.Locale.Tr "admin.systemhooks.update_webhook"}}
{{end}}
{{template "webhook/new" (dict "ctxData" . "CustomHeaderTitle" $CustomHeaderTitle)}}
{{template "webhook/form" (dict "ctxData" . "IsNew" $IsNew "CustomHeaderTitle" $CustomHeaderTitle)}}
</div>
{{template "admin/layout_footer" .}}
8 changes: 6 additions & 2 deletions templates/org/settings/hook_new.tmpl
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings new webhook")}}
<div class="org-setting-content">
{{$IsNew := false}}
{{$CustomHeaderTitle := ctx.Locale.Tr "repo.settings.update_webhook"}}
{{if .PageIsSettingsHooksNew}}{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}{{end}}
{{template "webhook/new" (dict "ctxData" . "CustomHeaderTitle" $CustomHeaderTitle)}}
{{if .PageIsSettingsHooksNew}}
{{$IsNew = true}}
{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}
{{end}}
{{template "webhook/form" (dict "ctxData" . "IsNew" $IsNew "CustomHeaderTitle" $CustomHeaderTitle)}}
</div>
{{template "org/settings/layout_footer" .}}
2 changes: 1 addition & 1 deletion templates/repo/settings/webhook/base_list.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<div class="ui right">
<div class="ui jump dropdown">
<div class="ui primary tiny button">{{ctx.Locale.Tr "repo.settings.add_webhook"}}</div>
{{template "repo/settings/webhook/link_menu" .}}
{{template "webhook/selector" .}}
</div>
</div>
</h4>
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/dingtalk.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "dingtalk"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://dingtalk.com" (ctx.Locale.Tr "repo.settings.web_hook_name_dingtalk")}}</p>
<form class="ui form" action="{{.BaseLink}}/dingtalk/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_PayloadURL}}error{{end}}">
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/discord.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "discord"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://discord.com" (ctx.Locale.Tr "repo.settings.web_hook_name_discord")}}</p>
<form class="ui form" action="{{.BaseLink}}/discord/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_PayloadURL}}error{{end}}">
Expand Down
2 changes: 0 additions & 2 deletions templates/repo/settings/webhook/feishu.tmpl
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
{{if eq .HookType "feishu"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://feishu.cn" (ctx.Locale.Tr "repo.settings.web_hook_name_feishu")}}</p>
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://larksuite.com" (ctx.Locale.Tr "repo.settings.web_hook_name_larksuite")}}</p>
<form class="ui form" action="{{.BaseLink}}/feishu/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_PayloadURL}}error{{end}}">
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/gitea.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "gitea"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://docs.gitea.com/usage/webhooks" (ctx.Locale.Tr "repo.settings.web_hook_name_gitea")}}</p>
<form class="ui form" action="{{.BaseLink}}/gitea/{{or .Webhook.ID "new"}}" method="post">
{{template "base/disable_form_autofill"}}
{{.CsrfTokenHtml}}
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/gogs.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "gogs"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://docs.gitea.com/usage/webhooks" (ctx.Locale.Tr "repo.settings.web_hook_name_gogs")}}</p>
<form class="ui form" action="{{.BaseLink}}/gogs/{{or .Webhook.ID "new"}}" method="post">
{{template "base/disable_form_autofill"}}
{{.CsrfTokenHtml}}
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/matrix.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "matrix"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://matrix.org/" (ctx.Locale.Tr "repo.settings.web_hook_name_matrix")}}</p>
<form class="ui form" action="{{.BaseLink}}/matrix/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_HomeserverURL}}error{{end}}">
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/msteams.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "msteams"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://teams.microsoft.com" (ctx.Locale.Tr "repo.settings.web_hook_name_msteams")}}</p>
<form class="ui form" action="{{.BaseLink}}/msteams/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_PayloadURL}}error{{end}}">
Expand Down
8 changes: 6 additions & 2 deletions templates/repo/settings/webhook/new.tmpl
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
{{template "repo/settings/layout_head" (dict "ctxData" . "pageClass" "repository settings new webhook")}}
<div class="repo-setting-content">
{{$IsNew := false}}
{{$CustomHeaderTitle := ctx.Locale.Tr "repo.settings.update_webhook"}}
{{if .PageIsSettingsHooksNew}}{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}{{end}}
{{template "webhook/new" (dict "ctxData" . "CustomHeaderTitle" $CustomHeaderTitle)}}
{{if .PageIsSettingsHooksNew}}
{{$IsNew = true}}
{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}
{{end}}
{{template "webhook/form" (dict "ctxData" . "IsNew" $IsNew "CustomHeaderTitle" $CustomHeaderTitle)}}
</div>
{{template "repo/settings/layout_footer" .}}
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/packagist.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "packagist"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://packagist.org" (ctx.Locale.Tr "repo.settings.web_hook_name_packagist")}}</p>
<form class="ui form" action="{{.BaseLink}}/packagist/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_Username}}error{{end}}">
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/slack.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "slack"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://slack.com" (ctx.Locale.Tr "repo.settings.web_hook_name_slack")}}</p>
<form class="ui form" action="{{.BaseLink}}/slack/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_PayloadURL}}error{{end}}">
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/telegram.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "telegram"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://core.telegram.org/bots" (ctx.Locale.Tr "repo.settings.web_hook_name_telegram")}}</p>
<form class="ui form" action="{{.BaseLink}}/telegram/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_BotToken}}error{{end}}">
Expand Down
1 change: 0 additions & 1 deletion templates/repo/settings/webhook/wechatwork.tmpl
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{{if eq .HookType "wechatwork"}}
<p>{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://work.weixin.qq.com" (ctx.Locale.Tr "repo.settings.web_hook_name_wechatwork")}}</p>
<form class="ui form" action="{{.BaseLink}}/wechatwork/{{or .Webhook.ID "new"}}" method="post">
{{.CsrfTokenHtml}}
<div class="required field {{if .Err_PayloadURL}}error{{end}}">
Expand Down
23 changes: 23 additions & 0 deletions templates/shared/webhook/type_name.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{{if eq .HookType "gitea"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_gitea"}}
{{else if eq .HookType "gogs"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_gogs"}}
{{else if eq .HookType "slack"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_slack"}}
{{else if eq .HookType "discord"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_discord"}}
{{else if eq .HookType "dingtalk"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_dingtalk"}}
{{else if eq .HookType "telegram"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_telegram"}}
{{else if eq .HookType "msteams"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_msteams"}}
{{else if eq .HookType "feishu"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_feishu_or_larksuite"}}
{{else if eq .HookType "matrix"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_matrix"}}
{{else if eq .HookType "wechatwork"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_wechatwork"}}
{{else if eq .HookType "packagist"}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_packagist"}}
{{end}}
8 changes: 6 additions & 2 deletions templates/user/settings/hook_new.tmpl
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
{{template "user/settings/layout_head" (dict "ctxData" . "pageClass" "user settings new webhook")}}
<div class="user-setting-content">
{{$IsNew := false}}
{{$CustomHeaderTitle := ctx.Locale.Tr "repo.settings.update_webhook"}}
{{if .PageIsSettingsHooksNew}}{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}{{end}}
{{template "webhook/new" (dict "ctxData" . "CustomHeaderTitle" $CustomHeaderTitle)}}
{{if .PageIsSettingsHooksNew}}
{{$IsNew = true}}
{{$CustomHeaderTitle = ctx.Locale.Tr "repo.settings.add_webhook"}}
{{end}}
{{template "webhook/form" (dict "ctxData" . "IsNew" $IsNew "CustomHeaderTitle" $CustomHeaderTitle)}}
</div>
{{template "user/settings/layout_footer" .}}
20 changes: 13 additions & 7 deletions templates/webhook/new.tmpl → templates/webhook/form.tmpl
Original file line number Diff line number Diff line change
@@ -1,15 +1,21 @@
<h4 class="ui top attached header">
{{.CustomHeaderTitle}}
<div class="ui right type dropdown">
<div class="text gt-df gt-ac">
{{template "shared/webhook/icon" (dict "Size" 20 "HookType" .ctxData.HookType)}}
{{ctx.Locale.Tr (print "repo.settings.web_hook_name_" .ctxData.HookType)}}
</div>
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
{{template "repo/settings/webhook/link_menu" .ctxData}}
<div class="ui right">
{{template "shared/webhook/icon" .ctxData}}
</div>
</h4>
<div class="ui attached segment">
<div class="ui form">
<div class="required field">
<label>{{ctx.Locale.Tr "repo.settings.webhook_type"}}</label>
<div class="ui selection dropdown">
<div class="text">{{template "shared/webhook/type_name" .ctxData}}</div>
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
{{template "webhook/selector_without_icons" .ctxData}}
</div>
{{template "webhook/helps" .ctxData}}
</div>
</div>
{{template "repo/settings/webhook/gitea" .ctxData}}
{{template "repo/settings/webhook/gogs" .ctxData}}
{{template "repo/settings/webhook/slack" .ctxData}}
Expand Down
37 changes: 37 additions & 0 deletions templates/webhook/helps.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
<span class="help">
{{if eq .HookType "gitea"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://docs.gitea.com/usage/webhooks" (ctx.Locale.Tr "repo.settings.web_hook_name_gitea")}}
{{end}}
{{if eq .HookType "gogs"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://docs.gitea.com/usage/webhooks" (ctx.Locale.Tr "repo.settings.web_hook_name_gogs")}}
{{end}}
{{if eq .HookType "slack"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://slack.com" (ctx.Locale.Tr "repo.settings.web_hook_name_slack")}}
{{end}}
{{if eq .HookType "discord"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://discord.com" (ctx.Locale.Tr "repo.settings.web_hook_name_discord")}}
{{end}}
{{if eq .HookType "dingtalk"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://dingtalk.com" (ctx.Locale.Tr "repo.settings.web_hook_name_dingtalk")}}
{{end}}
{{if eq .HookType "telegram"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://core.telegram.org/bots" (ctx.Locale.Tr "repo.settings.web_hook_name_telegram")}}
{{end}}
{{if eq .HookType "msteams"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://teams.microsoft.com" (ctx.Locale.Tr "repo.settings.web_hook_name_msteams")}}
{{end}}
{{if eq .HookType "feishu"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://feishu.cn" (ctx.Locale.Tr "repo.settings.web_hook_name_feishu")}}
<br/>
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://larksuite.com" (ctx.Locale.Tr "repo.settings.web_hook_name_larksuite")}}
{{end}}
{{if eq .HookType "matrix"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://matrix.org/" (ctx.Locale.Tr "repo.settings.web_hook_name_matrix")}}
{{end}}
{{if eq .HookType "wechatwork"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://work.weixin.qq.com" (ctx.Locale.Tr "repo.settings.web_hook_name_wechatwork")}}
{{end}}
{{if eq .HookType "packagist"}}
{{ctx.Locale.Tr "repo.settings.add_web_hook_desc" "https://packagist.org" (ctx.Locale.Tr "repo.settings.web_hook_name_packagist")}}
{{end}}
</span>
Original file line number Diff line number Diff line change
Expand Up @@ -3,47 +3,47 @@
{{$size = .Size}}
{{end}}
<div class="menu">
<a class="item" href="{{.BaseLinkNew}}/gitea/new">
<a class="item" href="{{.BaseLink}}/gitea/new">
{{template "shared/webhook/icon" (dict "HookType" "gitea" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_gitea"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/gogs/new">
<a class="item" href="{{.BaseLink}}/gogs/new">
{{template "shared/webhook/icon" (dict "HookType" "gogs" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_gogs"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/slack/new">
<a class="item" href="{{.BaseLink}}/slack/new">
{{template "shared/webhook/icon" (dict "HookType" "slack" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_slack"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/discord/new">
<a class="item" href="{{.BaseLink}}/discord/new">
{{template "shared/webhook/icon" (dict "HookType" "discord" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_discord"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/dingtalk/new">
<a class="item" href="{{.BaseLink}}/dingtalk/new">
{{template "shared/webhook/icon" (dict "HookType" "dingtalk" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_dingtalk"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/telegram/new">
<a class="item" href="{{.BaseLink}}/telegram/new">
{{template "shared/webhook/icon" (dict "HookType" "telegram" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_telegram"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/msteams/new">
<a class="item" href="{{.BaseLink}}/msteams/new">
{{template "shared/webhook/icon" (dict "HookType" "msteams" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_msteams"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/feishu/new">
<a class="item" href="{{.BaseLink}}/feishu/new">
{{template "shared/webhook/icon" (dict "HookType" "feishu" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_feishu_or_larksuite"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/matrix/new">
<a class="item" href="{{.BaseLink}}/matrix/new">
{{template "shared/webhook/icon" (dict "HookType" "matrix" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_matrix"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/wechatwork/new">
<a class="item" href="{{.BaseLink}}/wechatwork/new">
{{template "shared/webhook/icon" (dict "HookType" "wechatwork" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_wechatwork"}}
</a>
<a class="item" href="{{.BaseLinkNew}}/packagist/new">
<a class="item" href="{{.BaseLink}}/packagist/new">
{{template "shared/webhook/icon" (dict "HookType" "packagist" "Size" $size)}}
{{ctx.Locale.Tr "repo.settings.web_hook_name_packagist"}}
</a>
Expand Down
35 changes: 35 additions & 0 deletions templates/webhook/selector_without_icons.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<div class="menu">
<a class="item" href="{{.BaseLink}}/gitea/new" data-value="gitea">
{{ctx.Locale.Tr "repo.settings.web_hook_name_gitea"}}
</a>
<a class="item" href="{{.BaseLink}}/gogs/new" data-value="gogs">
{{ctx.Locale.Tr "repo.settings.web_hook_name_gogs"}}
</a>
<a class="item" href="{{.BaseLink}}/slack/new" data-value="slack">
{{ctx.Locale.Tr "repo.settings.web_hook_name_slack"}}
</a>
<a class="item" href="{{.BaseLink}}/discord/new" data-value="discord">
{{ctx.Locale.Tr "repo.settings.web_hook_name_discord"}}
</a>
<a class="item" href="{{.BaseLink}}/dingtalk/new" data-value="dingtalk">
{{ctx.Locale.Tr "repo.settings.web_hook_name_dingtalk"}}
</a>
<a class="item" href="{{.BaseLink}}/telegram/new" data-value="telegram">
{{ctx.Locale.Tr "repo.settings.web_hook_name_telegram"}}
</a>
<a class="item" href="{{.BaseLink}}/msteams/new" data-value="msteams">
{{ctx.Locale.Tr "repo.settings.web_hook_name_msteams"}}
</a>
<a class="item" href="{{.BaseLink}}/feishu/new" data-value="feishu">
{{ctx.Locale.Tr "repo.settings.web_hook_name_feishu_or_larksuite"}}
</a>
<a class="item" href="{{.BaseLink}}/matrix/new" data-value="matrix">
{{ctx.Locale.Tr "repo.settings.web_hook_name_matrix"}}
</a>
<a class="item" href="{{.BaseLink}}/wechatwork/new" data-value="wechatwork">
{{ctx.Locale.Tr "repo.settings.web_hook_name_wechatwork"}}
</a>
<a class="item" href="{{.BaseLink}}/packagist/new" data-value="packagist">
{{ctx.Locale.Tr "repo.settings.web_hook_name_packagist"}}
</a>
</div>