forgejo/routers/web/repo
Gergely Nagy 36f7c162e2
[FEAT] Repository flags
This implements "repository flags", a way for instance administrators to
assign custom flags to repositories. The idea is that custom templates
can look at these flags, and display banners based on them, Forgejo does
not provide anything built on top of it, just the foundation. The
feature is optional, and disabled by default. To enable it, set
`[repository].ENABLE_FLAGS = true`.

On the UI side, instance administrators will see a new "Manage flags"
tab on repositories, and a list of enabled tags (if any) on the
repository home page. The "Manage flags" page allows them to remove
existing flags, or add any new ones that are listed in
`[repository].SETTABLE_FLAGS`.

The model does not enforce that only the `SETTABLE_FLAGS` are present.
If the setting is changed, old flags may remain present in the database,
and anything that uses them, will still work. The repository flag
management page will allow an instance administrator to remove them, but
not set them, once removed.

Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
(cherry picked from commit ba735ce2228f8dd7ca105e94b9baa1be058ebe37)
(cherry picked from commit f09f6e029b4fb2714b86cd32dc19255078ecc0ee)
(cherry picked from commit 2f8b0414892f6099f519bda63a9e0fbc8ba6cfc7)
(cherry picked from commit d3186ee5f41fac896c7d2341402fcd39dd250bf1)
2024-02-05 16:09:42 +01:00
..
actions [GITEA] allow viewing the latest Action Run on the web 2024-02-05 16:09:41 +01:00
badges [GITEA] Add support for shields.io-based badges 2024-02-05 16:09:42 +01:00
flags [FEAT] Repository flags 2024-02-05 16:09:42 +01:00
setting [GITEA] Optionally allow anyone to edit Wikis 2024-02-05 16:09:42 +01:00
activity.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
attachment.go Even more db.DefaultContext refactor (#27352) 2023-10-03 10:30:41 +00:00
blame.go Use information from previous blame parts (#28572) 2023-12-21 22:48:18 +01:00
branch.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
cherry_pick.go Upgrade to golangci-lint@v1.55.0 (#27756) 2023-10-24 02:54:59 +00:00
commit.go [GITEA] Detect file rename and show in history 2024-02-05 16:09:40 +01:00
compare.go Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +01:00
download.go Less naked returns (#25713) 2023-07-07 05:31:56 +00:00
editor.go [GITEA] Allow user to select email for file operations in Web UI 2024-02-05 16:09:41 +01:00
editor_test.go Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +01:00
find.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
githttp.go Some refactor for git http (#28995) 2024-01-31 15:23:22 +00:00
githttp_test.go Fix http protocol auth (#27875) 2023-11-02 22:14:33 +08:00
helper.go Improve tree not found page (#26570) 2023-09-29 07:42:39 +00:00
helper_test.go Make web context initialize correctly for different cases (#26726) 2023-08-25 19:07:42 +08:00
issue.go [GITEA] Fix /issues/search endpoint 2024-02-05 16:09:42 +01:00
issue_content_history.go Fix missing check (#28406) 2023-12-10 21:37:10 +02:00
issue_dependency.go Upgrade to golangci-lint@v1.55.0 (#27756) 2023-10-24 02:54:59 +00:00
issue_label.go Even more db.DefaultContext refactor (#27352) 2023-10-03 10:30:41 +00:00
issue_label_test.go Move web/api context related testing function into a separate package (#26859) 2023-09-01 11:26:07 +00:00
issue_lock.go Penultimate round of db.DefaultContext refactor (#27414) 2023-10-11 04:24:07 +00:00
issue_pin.go Fix missing check (#28406) 2023-12-10 21:37:10 +02:00
issue_stopwatch.go Final round of db.DefaultContext refactor (#27587) 2023-10-14 08:37:24 +00:00
issue_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
issue_timetrack.go Final round of db.DefaultContext refactor (#27587) 2023-10-14 08:37:24 +00:00
issue_watch.go Introduce htmx and use it to avoid full page load on Subscribe and Follow (#28908) 2024-01-30 15:45:54 +01:00
main_test.go make writing main test easier (#27270) 2023-09-28 01:38:53 +00:00
middlewares.go Unify user update methods (#28733) 2024-02-04 13:29:09 +00:00
migrate.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
milestone.go Rework markup link rendering (#26745) 2024-01-15 08:49:24 +00:00
packages.go Fix the display of org level badges (#26504) 2023-09-06 14:38:14 +08:00
patch.go Upgrade to golangci-lint@v1.55.0 (#27756) 2023-10-24 02:54:59 +00:00
projects.go Rework markup link rendering (#26745) 2024-01-15 08:49:24 +00:00
projects_test.go Move web/api context related testing function into a separate package (#26859) 2023-09-01 11:26:07 +00:00
pull.go [GITEA] pulls: "Edit File" button in "Files Changed" tab 2024-02-05 16:09:42 +01:00
pull_review.go Do not render empty comments (#29039) 2024-02-04 13:05:01 +00:00
release.go [GITEA] Allow release creation on commit 2024-02-05 16:05:50 +01:00
release_test.go Move more functions to db.Find (#28419) 2024-01-15 02:19:25 +00:00
render.go Preserve BOM in web editor (#28935) 2024-01-27 18:02:51 +00:00
repo.go Don't do a full page load when clicking Watch or Star (#29001) 2024-02-05 09:56:20 +00:00
search.go Refactor indexer (#25174) 2023-06-23 12:37:56 +00:00
topic.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
treelist.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
view.go [GITEA] repo: Don't redirect the repo to external units 2024-02-05 16:09:42 +01:00
view_test.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
wiki.go Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +01:00
wiki_test.go Simplify how git repositories are opened (#28937) 2024-01-27 21:09:51 +01:00