Skip to content

Draft: Restructure themes and thesis projects

DB:

  • Make an n x n programme - theme relation based on the existing programme - research group - theme relation (the diagram says n x 1 but I'm pretty sure that's wrong)
  • Remove the programme - research group relation
  • Change the research group - theme relation from 1 x n to n x n
  • Change the thesis project - theme relation from 1 x n to n x n

Main UI changes:

  • Admin search view (Ransack associations)
  • Update admin theme pages
  • Update admin thesis project pages
  • Update admin research group pages
  • Add a way to select research groups on admin theme page
  • Add a way to select programmes on admin theme pagel
  • Add a way to select themes on admin thesis project page
  • Make navigation links on admin panel show pages clickable (e.g. themes of a thesis project)
  • Fix dashboard (normal and admin)
  • Update student view

Models:

  • There must be at least one research group associated with every theme.
  • Rename Theme to Topic (only in language files)
    • Still needs to be done in some non-translated strings

Permissions:

  • Research group members should be able to make new themes.
  • Everyone with access to the theme should be able to link more associated users and research groups.
  • Associated users should have access to a theme even if they're not part of a research group. Make sure they have access to the management panel to see the theme.
  • Programme coordinators should be able to create themes and thesis projects
  • Programme coordinators should be able to access all themes and thesis projects and edit them.
  • Only programme coordinators should be able to edit the programme association, and only the association with their own programme.
    • Add message to contact coordinator.

Tests:

  • Fix failing tests
  • Theme - research group
    • Theme validation (at least one research group)
  • Thesis project - theme
  • Theme - programme (programme permission checks)
  • Permissions

Closes #679

Edited by Martin Mladenov

Merge request reports