Compare commits

...

7 Commits

Author SHA1 Message Date
mirdono
f6fe8ac87d chore: update changelog 2025-06-05 14:00:34 +02:00
mirdono
7defbf9009 chore: bump frontend 2025-06-05 14:00:20 +02:00
mirdono
5f1bfe96c7 feat: cleanup jobs municipality and province relations
Add cleanup jobs to automatically insert and delete `org:hasSubOrganization`
relations between provinces and municipalities. These memberships were moved to
the `shared` graph causing the existing cleanup jobs to no longer work for them.
2025-06-04 11:41:21 +02:00
mirdono
d2ec188373 fix: relate provinces and municipalities in shared graph
The frontend relies on the memberships relating municipalities and province to
- automatically select the appropriate province given a municipality; and
- limit the municipality options to those in a given province.

This kind of functionality is used in both the worship and non-worship module so
the data should be readable by users with either roles. This moves the
appropriate data the `shared` graph, which can be read by all authenticated
users. Thereby fixing that that functionality was broken for users with the
worship role.
2025-06-04 11:41:21 +02:00
mirdono
9515aec9ad Merge branch 'master' into development 2025-06-04 11:40:58 +02:00
mirdono
6036b030c1 Merge branch 'master' into development 2025-05-23 18:12:40 +02:00
mirdono
f2a65697db chore: remove deprecated version from docker compose configurations
The version property has been deprecated for a while. Now that the servers are
on a recent version of docker compose these can be removed from our
configurations. This avoids that the warnings are shown each time.
2025-05-23 14:40:09 +02:00
8 changed files with 112 additions and 5 deletions

View File

@@ -1,6 +1,18 @@
# Changelog
## Unreleased
## v1.33.0 (2025-06-05)
### Frontend
- Bump to version [v1.32.0](https://github.com/lblod/frontend-organization-portal/releases/tag/v1.32.0)
### Backend
- datafix: move memberships involving provinces and municipalities to shared graph [OP-3619]
### Deploy notes
```
drc restart migrations; drc logs -ft --tail=200 migrations
drc exec db-cleanup curl -X POST "http://localhost/cleanup"
drc pull frontend; drc up -d frontend
```
## v1.32.1 (2025-06-02)
### Backend
- Added Kabinet Crevits as bestuurseenheid. [DL-6655]

View File

@@ -0,0 +1,24 @@
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?membership ?p ?o .
?organization org:hasSubOrganization ?member .
}
} INSERT {
GRAPH <http://mu.semte.ch/graphs/shared>{
?membership ?p ?o .
?organization org:hasSubOrganization ?member .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/administrative-unit> {
?membership a org:Membership ;
org:member ?member ;
org:organization ?organization ;
?p ?o .
}
GRAPH <http://mu.semte.ch/graphs/shared> {
?member org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> . # Municipality
?organization org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> . # Province
}
}

View File

@@ -0,0 +1,36 @@
@prefix cleanup: <http://mu.semte.ch/vocabularies/ext/cleanup/> .
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
# Insert triples of the form
# <Province> <http://www.w3.org/ns/org#hasSubOrganization> <Municipality>
# matching memberships for which no such triple exists.
# Province: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>
#
# Municipality: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>
<http://data.lblod.info/id/cleanup-job/0cc5e981-a61e-433e-b6f2-c59fd8599944> a cleanup:Job ;
mu:uuid "0cc5e981-a61e-433e-b6f2-c59fd8599944" ;
dcterms:title "Insert missing `org:hasSubOrganization` triples relating provinces and municipalities." ;
cleanup:randomQuery """
PREFIX org: <http://www.w3.org/ns/org#>
INSERT {
GRAPH <http://mu.semte.ch/graphs/shared> {
?province org:hasSubOrganization ?municipality .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?membership a org:Membership ;
org:organization ?province ;
org:member ?municipality ;
org:role <http://data.lblod.info/id/rollen/4ec7d5c39bdc4e84b4174379b9e22ad8> .
FILTER NOT EXISTS { ?province org:hasSubOrganization ?municipality . }
?municipality org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> .
?province org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> .
}
}
""" .

View File

@@ -0,0 +1,37 @@
@prefix cleanup: <http://mu.semte.ch/vocabularies/ext/cleanup/> .
@prefix mu: <http://mu.semte.ch/vocabularies/core/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
# Delete triples of the form
# <Province> <http://www.w3.org/ns/org#hasSubOrganization> <Municipality>
# for which no matching membership exists.
# Province: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000>
#
# Municipality: <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001>
<http://data.lblod.info/id/cleanup-job/7354dfd9-bdef-48d6-b81e-e814bd4f4e9c> a cleanup:Job ;
mu:uuid "7354dfd9-bdef-48d6-b81e-e814bd4f4e9c" ;
dcterms:title "Delete leftover `org:hasSubOrganization` triples between Provinces and municipalities." ;
cleanup:randomQuery """
PREFIX org: <http://www.w3.org/ns/org#>
DELETE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?province org:hasSubOrganization ?municipality .
}
} WHERE {
GRAPH <http://mu.semte.ch/graphs/shared> {
?province org:hasSubOrganization ?municipality .
FILTER NOT EXISTS {
?membership a org:Membership ;
org:organization ?province ;
org:member ?municipality ;
org:role <http://data.lblod.info/id/rollen/4ec7d5c39bdc4e84b4174379b9e22ad8> .
}
?municipality org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000001> .
?province org:classification <http://data.vlaanderen.be/id/concept/BestuurseenheidClassificatieCode/5ab0e9b8a3b2ca7c5e000000> .
}
}
""" .

View File

@@ -1,5 +1,3 @@
version: "3.4"
services:
identifier:
restart: "no"

View File

@@ -1,5 +1,3 @@
version: "3.4"
x-logging: &default-logging
driver: "json-file"
options:
@@ -196,7 +194,7 @@ services:
restart: always
logging: *default-logging
frontend:
image: lblod/frontend-organization-portal:1.31.0
image: lblod/frontend-organization-portal:1.32.0
volumes:
- ./config/frontend/add-x-frame-options-header.conf:/config/add-x-frame-options.conf
environment: