Project Forum merge requestshttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests2022-03-03T11:17:28+01:00https://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/652Resolve "Role Assignment Import"2022-03-03T11:17:28+01:00Martin Mladenovm.mladenov@student.tudelft.nlResolve "Role Assignment Import"Closes #252Closes #252Projects QuarterMartin Mladenovm.mladenov@student.tudelft.nlMartin Mladenovm.mladenov@student.tudelft.nlhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/593Course Specific Roles2022-03-03T11:08:16+01:00Taico Aertst.v.aerts@tudelft.nlCourse Specific Roles## UI
Course-specific role configuration:
![image](/uploads/b0d137fd21148580796f73598b6ec55e/image.png)
![image](/uploads/713d86266abf580d6fab834d0442470d/image.png)
There are 3 types of course-specific role assignment rules:
- Nonassig...## UI
Course-specific role configuration:
![image](/uploads/b0d137fd21148580796f73598b6ec55e/image.png)
![image](/uploads/713d86266abf580d6fab834d0442470d/image.png)
There are 3 types of course-specific role assignment rules:
- Nonassignable by client: they can only be assigned by coordinators in the management panel (default behaviour)
- Required: clients must assign at least one person to that role when proposing a project
- Optional: clients can assign people to that role when proposing a project, but they are not required to do so.
Clients can always assign more people to required and optional roles after creating the project.
Proposal creation workflow:
![image](/uploads/fcf0f4baff6426227fb3815c472f417f/image.png)
![image](/uploads/fce7ea7344f419b5b751e100a569592c/image.png)
This required quite a lot of changes to the way proposal creation works but it is flexible and would allow us to implement other features very easily (such as showing only contact people from that company in the dropdown, or setting a proposal template for each course).
Assigning roles to users:
![image](/uploads/96d40855e245e7c15a5f468c5be853b2/image.png)
Nonassignable roles are not shown here. Clients can view and add role assignments but not remove them.
**Management panel:**
Coordinators can add and remove role assignments from projects and groups:
![image](/uploads/26b92583d9e0022a1c743f7840d93da8/image.png)
![image](/uploads/49482471393d76b9c6f093e1ce0f6f72/image.png)
Closes #248Projects QuarterTaico Aertst.v.aerts@tudelft.nlTaico Aertst.v.aerts@tudelft.nlhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/606Copy edition button2022-01-03T17:44:01+01:00Martin Mladenovm.mladenov@student.tudelft.nlCopy edition buttonAdded a button to copy the course edition. This button leads to the new course edition page with all fields already filled out.
Closes #272Added a button to copy the course edition. This button leads to the new course edition page with all fields already filled out.
Closes #272https://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/599Add brightspace group exports2021-10-25T10:35:58+02:00Taico Aertst.v.aerts@tudelft.nlAdd brightspace group exportsDepends on !589
Closes #247Depends on !589
Closes #247Projects Quarterhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/592Resolve "Add internships"2021-09-30T16:38:44+02:00Renāts JurševskisResolve "Add internships"Closes #261Closes #261https://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/581Resolve "Show company invitations on My Companies page"2021-08-05T09:35:46+02:00Renāts JurševskisResolve "Show company invitations on My Companies page"Closes #208
- Confirmed that the buttons are displayed the same on Firefox as on Chrome
- Not sure about the test coverage decreaseCloses #208
- Confirmed that the buttons are displayed the same on Firefox as on Chrome
- Not sure about the test coverage decreasehttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/544Resolve "Reject coaching invitation"2021-08-04T15:31:49+02:00Taico Aertst.v.aerts@tudelft.nlResolve "Reject coaching invitation"* Adds the ability to reject coaching invitations.
* Makes buttons to approve/reject coaching invitations more visible.
* Move "Stop coaching" button from groups overview to group dashboard
* Add accept/reject buttons on My Groups page.
...* Adds the ability to reject coaching invitations.
* Makes buttons to approve/reject coaching invitations more visible.
* Move "Stop coaching" button from groups overview to group dashboard
* Add accept/reject buttons on My Groups page.
Closes #225
Closes #101Taico Aertst.v.aerts@tudelft.nlTaico Aertst.v.aerts@tudelft.nlhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/546Resolve "Add option to use course email address instead of coordinator emails"2021-08-04T14:41:45+02:00Taico Aertst.v.aerts@tudelft.nlResolve "Add option to use course email address instead of coordinator emails"Closes #172
Closes #217Closes #172
Closes #217Taico Aertst.v.aerts@tudelft.nlTaico Aertst.v.aerts@tudelft.nlhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/523Resolve "Projects should be searchable"2021-08-04T14:41:45+02:00Taico Aertst.v.aerts@tudelft.nlResolve "Projects should be searchable"### Features
* Add search functionality to projects
* Add ordering functionality to projects (creation date, alphabetical, grouped by company)
* Add filtering functionality to projects (filter by company)
* Separate Project Preferences i...### Features
* Add search functionality to projects
* Add ordering functionality to projects (creation date, alphabetical, grouped by company)
* Add filtering functionality to projects (filter by company)
* Separate Project Preferences into a separate route, page and controller
* Add functionality to reliably test Elasticsearch-based results
### Improvements
* Improve code style by adding comments and applying small refactorings
* Optimize and simplify theme search
* Skip unnecessary loading of all themes for the show/update/new pages of themes
* Adapt master market related code to move towards master market separation per programme
* BREAKING: Include environment in Elasticsearch index names to prevent tests overwriting development/production indices
### Bug fixes
* Fix themes search not showing results in order of relevance
Closes #196Taico Aertst.v.aerts@tudelft.nlTaico Aertst.v.aerts@tudelft.nlhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/360Add coached groups to My Groups2021-08-04T14:41:44+02:00Taico Aertst.v.aerts@tudelft.nlAdd coached groups to My GroupsImprove the My Groups screen
* Add coached groups to the My Groups overview.
* Participations are only shown if the user is in any course.
* Experiment participations are only shown if the user is in courses with experiment workflow.
* ...Improve the My Groups screen
* Add coached groups to the My Groups overview.
* Participations are only shown if the user is in any course.
* Experiment participations are only shown if the user is in courses with experiment workflow.
* Coached groups are only shown if the user is coaching at least one group.
Fixes #139https://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/352Notification preferences2021-08-04T14:41:44+02:00Taico Aertst.v.aerts@tudelft.nlNotification preferencesAdded notification preferences to BepSys. Notification preferences can be configured on the account screen.
Also changed emails to a new format without bepsys greeting and with a footer similar to gitlab emails, indicating why the user ...Added notification preferences to BepSys. Notification preferences can be configured on the account screen.
Also changed emails to a new format without bepsys greeting and with a footer similar to gitlab emails, indicating why the user received the email and how to configure their notification settings.
![Screenshot_20191105_105030](/uploads/ca21d997809bd09c02a70f408e7a86fc/Screenshot_20191105_105030.png)
![Screenshot_20191105_105125](/uploads/65fac8caf009a4f63d2e5d86f9fde3cf/Screenshot_20191105_105125.png)
Closes #129https://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/348Master market2021-08-04T14:41:43+02:00Taico Aertst.v.aerts@tudelft.nlMaster market#### Thesis projects
* Show thesis projects where the user is the contact on the dashboard
* Hide inaccessible thesis projects in the thesis projects view
* Actually show students interested in projects to the owner of the project
* Show...#### Thesis projects
* Show thesis projects where the user is the contact on the dashboard
* Hide inaccessible thesis projects in the thesis projects view
* Actually show students interested in projects to the owner of the project
* Show thesis projects of a particular theme on the show page of that theme
* Add option to easily add thesis projects in a particular theme
* Make theme selection for thesis projects clearer by also showing the research group.
* Add are you sure dialog for expressing interest in a thesis project
* Add notifications for expressing and revoking interest in a thesis project
#### Dashboard
* Hide dashboard items that the user cannot access
#### Navigation
* Do not show navigation items that the user cannot access.
#### Roles
* Add chair role to research groups (is a research group member who can add members to the research group)
* Revoke permission from research group members to add/remove members to the research group.
* Prevent chair from removing themselves from the research group (blocking their access)
* Remove redundant permissions
#### Fixes
* Fix remove button not working for research group members
* Fix users not being able to access their own settings page.
# Images
![dashboard](/uploads/a1f2eb678be1aa926b1f45439d414928/dashboard.png)
Dashboard for users which have thesis projects. The dashboard shows the number of interested students as well.
![Screenshot_20191031_102255](/uploads/8ed8df6ea7cd9d4ca282e131cb9b667a/Screenshot_20191031_102255.png)
Overview for a project, showing interested users
![Screenshot_20191031_102401](/uploads/d050d8fb81aa212856723e759b251c51/Screenshot_20191031_102401.png)
Notification for the contact of a project (a link to the project is on the notifications page itself)
![Screenshot_20191031_102459](/uploads/a8bf93e870a43d79f6889c2c2f3c76a0/Screenshot_20191031_102459.png)
Notification for the student
![Screenshot_20191031_102601](/uploads/afb5125cc02cfc3eb5f0750899852400/Screenshot_20191031_102601.png)
Overview of projects in a theme
![Screenshot_20191031_102701](/uploads/4be6576f146f88877b69dabd29980af1/Screenshot_20191031_102701.png)
Managing roles in the research group. The chair of a group cannot remove themselves as a security measure. If the chair of a group changes, they can first appoint the new chair and then the new chair can remove the old chair / the department coordinator can always change it.
Fixes #122, #124Otto VisserOtto Visserhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/342Add ability to edit coaches in admin panel2021-08-04T14:41:42+02:00Taico Aertst.v.aerts@tudelft.nlAdd ability to edit coaches in admin panelCloses #51Closes #51https://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/338Improve Exports2021-08-04T14:41:42+02:00Taico Aertst.v.aerts@tudelft.nlImprove ExportsThis MR improves and normalizes all exports throughout the project.
* All CSV files now contain the same information as the XLSX files
* Added additional information to many exports
* Added custom export suitable for grading at the cour...This MR improves and normalizes all exports throughout the project.
* All CSV files now contain the same information as the XLSX files
* Added additional information to many exports
* Added custom export suitable for grading at the course edition
* Used human attribute names / model names where possible (to improve consistency throughout the application)
* Fixed " appearing in CSV exports
## Custom export for grading
Grades can be entered per group on the projects tab, and will be automatically shown next to students.
Only groups that are approved and students belonging to those groups are in the CSV.
There is support for more than two coaches in the additional coaches fields.
![Screenshot_20191017_175624](/uploads/e22eaa62f59bca0fc78669b206e73355/Screenshot_20191017_175624.png)
![Screenshot_20191017_175639](/uploads/f2b0cd866be2fb5f3e5e691ab17e7253/Screenshot_20191017_175639.png)
Closes #42Otto VisserOtto Visserhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/239Project Import Feature2021-08-04T14:41:40+02:00Jesse TilroProject Import FeatureOn the admin page of a course edition, you can now import all untaken projects from selected other editions of the course. These projects will be moved permanently: their reference to a course edition will simply be updated.
* [x] Impl...On the admin page of a course edition, you can now import all untaken projects from selected other editions of the course. These projects will be moved permanently: their reference to a course edition will simply be updated.
* [x] Implement moving of projects from one course edition to another in admin
* [x] Implement notifications
Resolves issue #67.Otto VisserOtto Visserhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/571Resolve "Email all clients/coaches buttons"2021-07-29T15:08:30+02:00Renāts JurševskisResolve "Email all clients/coaches buttons"Closes #231
Added an option to email all clients and coaches of some course editionCloses #231
Added an option to email all clients and coaches of some course editionhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/553Resolve "Autoremove students from other groups when a group gets approved"2021-07-23T11:51:10+02:00Taico Aertst.v.aerts@tudelft.nlResolve "Autoremove students from other groups when a group gets approved"Features:
* Overhaul course configuration settings.
* Add cleanup after approval course configuration setting.
* Add notifications when a user is removed from groups (for the group and for the user)
Closes #209Features:
* Overhaul course configuration settings.
* Add cleanup after approval course configuration setting.
* Add notifications when a user is removed from groups (for the group and for the user)
Closes #209Taico Aertst.v.aerts@tudelft.nlTaico Aertst.v.aerts@tudelft.nlhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/545Resolve "HTML title should contain page name"2021-06-17T20:28:28+02:00Taico Aertst.v.aerts@tudelft.nlResolve "HTML title should contain page name"Closes #224Closes #224Taico Aertst.v.aerts@tudelft.nlTaico Aertst.v.aerts@tudelft.nlhttps://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/555Improve course visibility indication2021-06-10T11:34:03+02:00Taico Aertst.v.aerts@tudelft.nlImprove course visibility indicationCloses #141Closes #141https://gitlab.ewi.tudelft.nl/eip/projectforum/projectforum/-/merge_requests/513Add import feature for groups2021-03-23T11:11:27+01:00Taico Aertst.v.aerts@tudelft.nlAdd import feature for groups## Uploading a CSV
Groups can now be imported by uploading a CSV with project id and studentnumbers/netids/user ids (mixed).
![image](/uploads/847af7d2cd6c4e73339dcfaea497d7e5/image.png)
## Import overview
After uploading the CSV, the ...## Uploading a CSV
Groups can now be imported by uploading a CSV with project id and studentnumbers/netids/user ids (mixed).
![image](/uploads/847af7d2cd6c4e73339dcfaea497d7e5/image.png)
## Import overview
After uploading the CSV, the user is shown an overview of the groups that will be imported:
![image](/uploads/608d4d1316c0deef3d2e1026ed3090fa/image.png)
## Error display
Errors are shown to the user and highlighted on the overview page if possible. Importing the groups is disabled if there are errors with the file.
![image](/uploads/07f210992149065e61ac15db45f63da4/image.png)
## Emails
If notifications are enabled, each group receives one email (to: all group members) that they have been assigned a group for project x and that the group consists of members. The members of the group will see each other's email addresses since they are all in the to field.
This notification is setting `Group`, `Assigned to a group`.
## Other details
There are some settings for importing:
* Auto-approve all imported groups
* Delete all existing groups and override them with the new groups
* Assign a group member as leader / leave all members as member (prevents modification of the group)
* Send a notification email to the members of each group
### Issues
* Group dashboard of own group is not accessible in a preferences workflow (permission error)
Closes #206Taico Aertst.v.aerts@tudelft.nlTaico Aertst.v.aerts@tudelft.nl