1
0
mirror of https://git.ngram.ca/OpenJam/rc-servers synced 2026-08-23 23:08:52 +00:00

Add server-wide and user-only federation controls (#133)

### Description

Completes #122

### Please confirm

- [x] I am the legal owner or represent the legal owner of all work submitted (including LLM-generated code, if any)
- [x] I consent to my changes being added to this FOSS project
- [x] I have confirmed that this does not add new errors or warnings with `utils/clippy.sh`
- [ ] This PR used LLMs to generate some or all of the code changes

Reviewed-on: https://git.ngram.ca/OpenJam/rc-servers/pulls/133
This commit is contained in:
NG (Graham)
2026-06-25 01:49:11 +00:00
committed by NGnius
parent e65d0eeb80
commit 995bafa70c
22 changed files with 522 additions and 15 deletions

View File

@@ -28,6 +28,7 @@ async fn main() -> std::io::Result<()> {
let server_settings = actix_web::web::Data::new(<oj_rc_core::ConfigImpl as oj_rc_core::ConfigProvider<()>>::server_config(&config));
let server_links = actix_web::web::Data::new(<oj_rc_core::ConfigImpl as oj_rc_core::ConfigProvider<()>>::url_links(&config));
let server_fed = actix_web::web::Data::new(<oj_rc_core::ConfigImpl as oj_rc_core::ConfigProvider<()>>::federation(&config));
let parsers = oj_rc_core::cubes::CubeParsers::new(&config);
@@ -77,6 +78,7 @@ async fn main() -> std::io::Result<()> {
.app_data(handlebars_ref.clone())
.app_data(server_settings.clone())
.app_data(server_links.clone())
.app_data(server_fed.clone())
.app_data(auth_ref.clone())
.app_data(importers_ref.clone())
.app_data(parsers_ref.clone())
@@ -95,6 +97,12 @@ async fn main() -> std::io::Result<()> {
.service(web::garage::import::get_new)
.service(web::garage::import::post)
.service(web::garage::selected::get)
.service(web::user_federation::get)
.service(web::user_federation::post)
.service(web::user_federation::post_remove)
.service(web::user_federation::post_add)
.service(web::user_federation::post_off)
.service(web::user_federation::post_on)
.service(api::config::get)
})
.bind((cli_args.ip, cli_args.port))?