diff --git a/CHANGELOG.md b/CHANGELOG.md
index 50966d3..c66d28e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,65 @@
# Changelog
+## 1.37.0 (2025-10-24)
+### Backend
+- Add municipalities and werkingsgebieden in the area of Brussel [OP-3669]
+- Updated mu-search configuration with source [OP-3670]
+
+### Deploy notes
+```
+drc restart migrations-triggering-indexing; drc logs -ft --tail=200 migrations-triggering-indexing
+drc up -d frontend
+scripts/reset-elastic.sh
+```
+
+## 1.36.0 (2025-10-03)
+### Dashboard
+- Enable ACM/IDM for the dashboard [OP-3674]
+
+#### QA
+Configure the environment variables for the QA ACM/IDM environment:
+
+```yml
+ frontend-dashboard:
+ environment:
+ EMBER_ACMIDM_CLIENT_ID: "03382bf4-4886-4fb6-8602-945ad3080a7a"
+ EMBER_ACMIDM_BASE_URL: "https://authenticatie-ti.vlaanderen.be/op/v1/auth"
+ EMBER_ACMIDM_REDIRECT_URL: "https://dashboard.organisaties.abb.lblod.info/authorization/callback"
+ EMBER_ACMIDM_LOGOUT_URL: "https://authenticatie-ti.vlaanderen.be/op/v1/logout"
+ EMBER_ACMIDM_SCOPE: "openid vo profile abb_organisatieportaal"
+
+ login-dashboard:
+ environment:
+ MU_APPLICATION_AUTH_DISCOVERY_URL: "https://authenticatie-ti.vlaanderen.be/op"
+ MU_APPLICATION_AUTH_CLIENT_ID: "03382bf4-4886-4fb6-8602-945ad3080a7a"
+ MU_APPLICATION_AUTH_REDIRECT_URI: "https://dashboard.organisaties.abb.lblod.info/authorization/callback"
+ MU_APPLICATION_AUTH_CLIENT_SECRET: "snip" # see ticket for secret
+
+```
+
+Link the new domain name to QA (and remove from dev)
+
+#### PROD
+Configure the environment variables for the PROD ACM/IDM environment once the values are known.
+
+Link the new domain name to PROD + DNS config to the server
+
+#### CLI
+```
+drc restart migrations
+drc restart dispatcher db
+drc up -d --remove-orphans
+```
+
+### Frontend
+- Bump to [v1.34.1](https://github.com/lblod/frontend-organization-portal/releases/tag/v1.34.1) [OP-3638]
+- Remove province for addresses in the Brussels area [OP-3638] & [OP-3648]
+
+### Deploy notes
+```
+drc pull frontend; drc up -d frontend
+drc restart migrations-triggering-indexing; drc logs -ft --tail=200 migrations-triggering-indexing
+```
+
## v1.35.2 (2025-11-04)
### Backend
- Fix camel case name of municipality Heist-op-den-Berg in addresses [OP-3694]
@@ -27,6 +88,7 @@ drc restart delta-producer-publication-graph-maintainer
- datafix: cleanup of duplicate memberships [OP-3634]
- Fix KBO organizations' date formats [OP-3560]
+
### Deploy notes
```
drc pull scope-of-operation; drc up -d scope-of-operation
diff --git a/README.md b/README.md
index 1884f32..4fa218d 100644
--- a/README.md
+++ b/README.md
@@ -185,26 +185,3 @@ To make sure the app can share data, producers need to be set up. There is an in
)
}
```
-
-## Configuring the dashboard
-### Accessing the dashboard from your local machine
-
-Since we use dispatcher v2, which dispatches on hostname, we'll have to update `/etc/hosts`.
-Add an entry similar to the following. Ensure the first part of the domain starts with `dashboard`.:
-
-```
-127.0.0.1 dashboard.localhost
-```
-
-### Creating new users
-For now, we use specific logins for the dashboard users. Each environment has its own passwords.
-
-To add a user, make sure to have [mu-cli](https://github.com/mu-semtech/mu-cli) installed first.
-Then in `docker-compose.override.yml`
-```
- dashboard-login:
- environment:
- MU_APPLICATION_SALT: 'a_random_string_with_sufficient_entropy_hence_not_this_one'
-```
-You can now generate a user by running `mu script project-scripts generate-dashboard-login` and following the steps.
-Restart `migrations` and it should insert the new user into the database.
\ No newline at end of file
diff --git a/config/authorization/config.ex b/config/authorization/config.ex
index 0390610..2ef99a3 100644
--- a/config/authorization/config.ex
+++ b/config/authorization/config.ex
@@ -111,11 +111,9 @@ defmodule Acl.UserGroups.Config do
%AccessByQuery{
vars: [],
query: "PREFIX ext:
- PREFIX mu:
- SELECT DISTINCT ?account WHERE {
- ?account.
- ?account ?session_role.
- FILTER( ?session_role = \"dashboard-user\" )
+ SELECT DISTINCT ?session WHERE {
+ VALUES ?session { }
+ ?session ext:sessionRole \"LoketLB-AdminDashboardOrganisatiePortaalGebruiker\" .
}"
}
end
@@ -219,10 +217,10 @@ defmodule Acl.UserGroups.Config do
}
]
},
- # // dashboard users
+ # // Dashboard admin
%GroupSpec{
- name: "dashboard-users",
- useage: [:read],
+ name: "o-admin-rwf",
+ useage: [:read, :write, :read_for_write],
access: can_access_dashboard(),
graphs: [
%GraphSpec{
diff --git a/config/dispatcher/dispatcher.ex b/config/dispatcher/dispatcher.ex
index 5100511..4a1591d 100644
--- a/config/dispatcher/dispatcher.ex
+++ b/config/dispatcher/dispatcher.ex
@@ -306,7 +306,7 @@ defmodule Dispatcher do
end
match "/sessions/*path", %{ reverse_host: ["dashboard" | _rest] } do
- Proxy.forward conn, path, "http://dashboard-login/sessions/"
+ Proxy.forward conn, path, "http://login-dashboard/sessions/"
end
match "/sessions/*path", %{accept: [:any], layer: :api} do
diff --git a/config/migrations-triggering-indexing/2025/20250703095300-remove-province-for-addresses-in-brussels-gewest.sparql b/config/migrations-triggering-indexing/2025/20250703095300-remove-province-for-addresses-in-brussels-gewest.sparql
new file mode 100644
index 0000000..5d19fa3
--- /dev/null
+++ b/config/migrations-triggering-indexing/2025/20250703095300-remove-province-for-addresses-in-brussels-gewest.sparql
@@ -0,0 +1,38 @@
+DELETE {
+ GRAPH {
+ ?s ?province ;
+ ?werkingsgebied .
+ }
+} WHERE {
+ GRAPH {
+ VALUES ?postCode {
+ "1070"
+ "1000"
+ "1020"
+ "1120"
+ "1130"
+ "1050"
+ "1040"
+ "1140"
+ "1083"
+ "1090"
+ "1081"
+ "1160"
+ "1030"
+ "1082"
+ "1060"
+ "1080"
+ "1210"
+ "1200"
+ "1150"
+ "1180"
+ "1190"
+ "1170"
+ }
+
+ ?s a ;
+ ?postCode ;
+ ?province ;
+ ?werkingsgebied .
+ }
+}
diff --git a/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-anderlecht-municipality.sparql b/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-anderlecht-municipality.sparql
new file mode 100644
index 0000000..c0cc3bd
--- /dev/null
+++ b/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-anderlecht-municipality.sparql
@@ -0,0 +1,78 @@
+INSERT DATA {
+ GRAPH {
+
+ a ;
+ "1c491c48-643f-44c3-bdd8-2ba8f11f4d5d" ;
+ "Anderlecht" ;
+ "Gemeente" ;
+ .
+ }
+
+ GRAPH {
+
+ a ,
+ ,
+ ;
+ "1e912379-eeab-4d33-8f6c-2e160e230dab" ;
+ ;
+ "Anderlecht" ;
+ "Anderlecht" ;
+ .
+ }
+
+ GRAPH {
+
+ ;
+ ;
+ ;
+ ;
+ .
+
+
+ ;
+ a ;
+ "KBO nummer" ;
+ "d422793b-ee14-4c49-9633-2460a2bd5597" .
+
+
+ a ;
+ "0206582284" ;
+ "6a614bee-ce07-44ae-b9b8-6c62b5d59f03" .
+
+
+ ;
+ a ;
+ "OVO-nummer" ;
+ "55f5718e-753d-4bf5-9e54-51107cb0233e" .
+
+
+ a ;
+ "OVO025866" ;
+ "d78905a7-c997-4faa-a431-0fc536e5c13c" .
+
+
+ a ;
+ "dbd1ab23-f6c8-40eb-92c1-ad96768581be" ;
+ ;
+ ;
+ .
+
+
+ a ;
+ "0a39a310-4e93-4443-989c-1ea630f82033" ;
+ "info@anderlecht.brussels" ;
+ "tel:+3225580800" ;
+ "Primary" ;
+ "https://www.anderlecht.be/" .
+
+
+ a ;
+ "cc216687-6049-41ae-8fd7-6757117e0e16" ;
+ "Anderlecht" ;
+ "België" ;
+ "1" ;
+ "Raadsplein 1, 1070 Anderlecht, België" ;
+ "1070" ;
+ "Raadsplein" .
+ }
+}
\ No newline at end of file
diff --git a/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-brussel-municipality.sparql b/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-brussel-municipality.sparql
new file mode 100644
index 0000000..1b7436a
--- /dev/null
+++ b/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-brussel-municipality.sparql
@@ -0,0 +1,92 @@
+INSERT DATA {
+ GRAPH {
+
+ a ;
+ "fb36ff92-84b7-4d90-b32c-f7b7815b7711" ;
+ "Brussel" ;
+ "Gemeente" ;
+ .
+ }
+
+ GRAPH {
+
+ a ,
+ ,
+ ;
+ "3d6f7cfe-43e3-4b87-bb2f-0bd8c497ab33" ;
+ ;
+ "Brussel" ;
+ "Brussel" ;
+ .
+ }
+
+ GRAPH {
+
+ ;
+ ;
+ ;
+ ;
+ .
+
+
+ a ;
+ "7a48ea24-5557-420a-bdd0-712d05309ab7" ;
+ ;
+ ;
+ ;
+ .
+
+
+ a ;
+ "5dfdca74-05a9-43d4-963e-d5376f668060" ;
+ ;
+ .
+
+
+ ;
+ a ;
+ "KBO nummer" ;
+ "49127169-aff3-44a3-8982-658e4055eef4" .
+
+
+ a ;
+ "0207373429" ;
+ "3005b2ac-b747-4a06-acc1-e66438a702c6" .
+
+
+ ;
+ a ;
+ "OVO-nummer" ;
+ "3c8dd5c2-7a40-4b44-bc1d-cc9a93340159" .
+
+
+ a ;
+ "OVO008216" ;
+ "f33c418d-2dde-45ce-baad-2a7f26a62f4e" .
+
+
+ a ;
+ "d842785a-5684-4573-8248-57bf8c1f38bd" ;
+ ;
+ ;
+ .
+
+
+ a ;
+ "7c3f8a78-ccae-46cd-8d0b-4c551aec1350" ;
+ "europa@brucity.be" ;
+ "tel:+3222792211" ;
+ "Primary" ;
+ "https://www.brussel.be/" .
+
+
+ a ;
+ "2c73b8c1-fc05-4bdc-9439-9afc97d78f43" ;
+ "Brussel" ;
+ "België" ;
+ "4" ;
+ "Hallenstraat 4, 1000 Brussel, België" ;
+ "1000" ;
+ "Hallenstraat" .
+ }
+}
\ No newline at end of file
diff --git a/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-elsene-municipality.sparql b/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-elsene-municipality.sparql
new file mode 100644
index 0000000..e155d4a
--- /dev/null
+++ b/config/migrations-triggering-indexing/2025/20251009123057-remove-province-for-address-in-brussels-gewest/20251009123057-insert-elsene-municipality.sparql
@@ -0,0 +1,78 @@
+INSERT DATA {
+ GRAPH {
+
+ a ;
+ "331fbb80-ba0a-4a33-95e4-5d2674415c72" ;
+ "Elsene" ;
+ "Gemeente" ;
+ .
+ }
+
+ GRAPH {
+
+ a ,
+ ,
+ ;
+ "4d892d46-2fda-4c24-89da-d4cdc2ac379d" ;
+ ;
+ "Elsene" ;
+ "Elsene" ;
+ .
+ }
+
+ GRAPH {
+
+ ;
+ ;
+ ;
+ ;
+ .
+
+
+ ;
+ a ;
+ "KBO nummer" ;
+ "8f918141-e2e8-470c-8edb-fefc45743afb" .
+
+
+ a ;
+ "0207401341" ;
+ "644381f5-cfaa-45ab-bf13-79475359c7f9" .
+
+
+ ;
+ a ;
+ "OVO-nummer" ;
+ "2b39418f-c1c2-4880-b3a9-c6e8911d779b" .
+
+
+ a ;
+ "OVO025861" ;
+ "1e5698d7-4299-40de-a1a9-c0e2fa571c27" .
+
+
+ a ;
+ "6fe561e2-76aa-4c99-83e6-083f2c47c7e0" ;
+ ;
+ ;
+ .
+
+
+ a ;
+ "b200bda3-74da-4fe6-a384-95cc3b10460c" ;
+ "secretariaat@elsene.be" ;
+ "tel:+3225156111" ;
+ "Primary" ;
+ "https://www.elsene.be/" .
+
+
+ a ;
+