You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Aaron F 3963625b6e
Webhook for Wiki changes (#20219)
Add support for triggering webhook notifications on wiki changes.

This PR contains frontend and backend for webhook notifications on wiki actions (create a new page, rename a page, edit a page and delete a page). The frontend got a new checkbox under the Custom Event -> Repository Events section. There is only one checkbox for create/edit/rename/delete actions, because it makes no sense to separate it and others like releases or packages follow the same schema.

![image](https://user-images.githubusercontent.com/121972/177018803-26851196-831f-4fde-9a4c-9e639b0e0d6b.png)

The actions itself are separated, so that different notifications will be executed (with the "action" field). All the webhook receivers implement the new interface method (Wiki) and the corresponding tests.

When implementing this, I encounter a little bug on editing a wiki page. Creating and editing a wiki page is technically the same action and will be handled by the ```updateWikiPage``` function. But the function need to know if it is a new wiki page or just a change. This distinction is done by the ```action``` parameter, but this will not be sent by the frontend (on form submit). This PR will fix this by adding the ```action``` parameter with the values ```_new``` or ```_edit```, which will be used by the ```updateWikiPage``` function.

I've done integration tests with matrix and gitea (http).

![image](https://user-images.githubusercontent.com/121972/177018795-eb5cdc01-9ba3-483e-a6b7-ed0e313a71fb.png)

Fix #16457

Signed-off-by: Aaron Fischer <mail@aaron-fischer.net>
2 years ago
..
activity.go Move some files into models' sub packages (#20262) 2 years ago
attachment.go Move some repository related code into sub package (#19711) 2 years ago
blame.go Switch Unicode Escaping to a VSCode-like system (#19990) 2 years ago
branch.go Add more linters to improve code readability (#19989) 2 years ago
cherry_pick.go Remove `RequireHighlightJS` field, update plantuml example. (#19615) 2 years ago
commit.go Move some code into models/git (#19879) 2 years ago
compare.go Support Issue forms and PR forms (#20987) 2 years ago
download.go Slightly simplify LastCommitCache (#20444) 2 years ago
editor.go Move some files into models' sub packages (#20262) 2 years ago
editor_test.go Add more linters to improve code readability (#19989) 2 years ago
find.go Feature: Find files in repo (#15028) 2 years ago
http.go Use request timeout for git service rpc (#20689) 2 years ago
http_test.go Fix http path bug (#16117) 3 years ago
issue.go Support Issue forms and PR forms (#20987) 2 years ago
issue_content_history.go Make better use of i18n (#20096) 2 years ago
issue_dependency.go Move issues related files into models/issues (#19931) 2 years ago
issue_label.go Move issues related files into models/issues (#19931) 2 years ago
issue_label_test.go Move issues related files into models/issues (#19931) 2 years ago
issue_lock.go Move issues related files into models/issues (#19931) 2 years ago
issue_stopwatch.go Stop spurious APIFormat stopwatches logs (#20008) 2 years ago
issue_test.go Move issues related files into models/issues (#19931) 2 years ago
issue_timetrack.go Move issues related files into models/issues (#19931) 2 years ago
issue_watch.go Move issues related files into models/issues (#19931) 2 years ago
lfs.go Switch Unicode Escaping to a VSCode-like system (#19990) 2 years ago
main_test.go Use a struct as test options (#19393) 2 years ago
middlewares.go Renamed ctx.User to ctx.Doer. (#19161) 2 years ago
migrate.go Unify repo settings & show better error (#19828) 2 years ago
milestone.go Move milestone to models/issues/ (#19278) 2 years ago
packages.go Show hint to link package to repo when viewing empty repo package list (#20504) 2 years ago
patch.go Remove `RequireHighlightJS` field, update plantuml example. (#19615) 2 years ago
projects.go Check if project has the same repository id with issue when assign project to issue (#20133) 2 years ago
projects_test.go Decouple unit test code from business code (#17623) 3 years ago
pull.go Support Issue forms and PR forms (#20987) 2 years ago
pull_review.go Dismiss prior pull reviews if done via web in review dismiss (#20197) 2 years ago
release.go Move some files into models' sub packages (#20262) 2 years ago
release_test.go Move some files into models' sub packages (#20262) 2 years ago
render.go Allow render HTML with css/js external links (#19017) 2 years ago
repo.go fix hard-coded timeout and error panic in API archive download endpoint (#20925) 2 years ago
search.go Remove `RequireHighlightJS` field, update plantuml example. (#19615) 2 years ago
setting.go Move some files into models' sub packages (#20262) 2 years ago
setting_protected_branch.go Move some code into models/git (#19879) 2 years ago
settings_test.go test: use `T.TempDir` to create temporary test directory (#21043) 2 years ago
tag.go Move some code into models/git (#19879) 2 years ago
topic.go Renamed ctx.User to ctx.Doer. (#19161) 2 years ago
treelist.go Feature: Find files in repo (#15028) 2 years ago
view.go Move some files into models' sub packages (#20262) 2 years ago
view_test.go Support localized README (#20508) 2 years ago
webhook.go Webhook for Wiki changes (#20219) 2 years ago
wiki.go Webhook for Wiki changes (#20219) 2 years ago
wiki_test.go Make git.OpenRepository accept Context (#19260) 2 years ago