Skip to content
  • Matt's avatar
    [carbon] Allow to parameterize the position title · b9f107f8
    Matt authored
    Fix #364
    
    ⚠️ This patch is not incremental, iso-functionnal for the lab-fr version
    (see impact)
    
    Rationale: Introducing the custom entity/boundary model is not
    sufficient to support new entity (Campus, Conference ...). The position
    title is an example of such insufficiency. In the current code we can
    define new position titles for a given entity but travels will still use
    the following: 'engineer', 'researcher' ...
    
    Tackling this issue lead to deeper challenges:
    - how to handle the translation of custom position titles
    - claryfying the use of position titles throughout the app (the position
      titles used in the boundary is not the same as the position titles
    used in surveys which might differ also from them used in travels)
    
    Choosen design: we move the configuration in the backend, custom
    position titles are stored in the database alongside their chosen
    translations.
    
    Benefits:
    - Configuration is centralized.
    - New deployments doesn't have to add any code to support custom
      position titles (ex AURA, Campus, ...)
    - Scenario, simulation, files upload ... use automatically the chosen
      position titles (and their translation)
    
    Impact:
    - Custom boundary has been removed
    - There's an initialization step to store the initial configuration in
      the backend.
    - position labels in export files might differs from the one currently
      used (this has been done in a clarification goal)
    
    As a deployer/operator:
    
    - create the l1p5-mycustomconf.py configuration file in
      backend/settings/l1p5 and symlink it to l1p5.py in the same directory
    to activate this profile
    - call python manage.py init to mirror the conf in the Database (some
      keys are tunable by the end user - admin)
    b9f107f8
Loading