Draft: Restructure themes and thesis projects
DB:
-
Make an n x n programme - theme
relation based on the existingprogramme - 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