feat: map house manager roles and houses by crm ids instead of labels

This commit is contained in:
Björn Fromme
2026-08-18 09:08:01 +02:00
parent 25f5840085
commit 1fd0fbc21e
4 changed files with 70 additions and 4 deletions
+5 -1
View File
@@ -65,7 +65,11 @@ slice it, and picking the right one matters:
| admin | attribute id `%bpn_crm_id_admin%`, selected | `isAdmin` |
| Reisemanager | attribute id `%bpn_crm_id_manager%`, selected | `isManager` |
| teamer | attribute id `%bpn_crm_id_teamer%`, selected | `isTeamer` |
| Hausleitung | label matching `/^Hausleitung ([A-Z0-9]+)$/`, selected | `isHouseManager` + one hotel code per match |
| Hausleitung | attribute id listed in `%bpn_crm_house_manager_ids%`, selected | `isHouseManager` + the hotel code that id maps to |
`bpn_crm_house_manager_ids` (`config/services.yaml`) maps a BusPro selection id to a hotel
code. Entries whose code is not a house in the `houses` parameter are kept commented out:
such a house manager could log in but would see no assignments and no dispositions at all.
`UserDataHandler::collectPendingRoles()` turns those into markers — `isManager` wins over
`isHouseManager`, they are never both claimed, though the hotel codes of a Hausleitung are