6915 Commits

Author SHA1 Message Date
433ef4ed87 Create button should not be visible until user has selected project type
Previously a user could click on the create button before they had chosen a
grading template project type from the Project type dropdown.
This would result in a runtime exception, and possibly in an unhappy user.

To protect the user from "jumping the gun", the Create button will only become visible
after the user has selected a Project type from the dropdown menu.
2024-11-21 06:47:13 +01:00
f79f66c182 Fix adding new criteria should add point requirements
When you added new criteria you only got to set the criterion title, type, flag and point but you had to manually add the requirements for the first criterion.

Now when you add a new criterion the new criterion will by default add the requirement for the points.

reverted a previous change in the for loop the correct condition was to check against 0, I accidently turned that to 1 in a previous commit. Also added a comment to try and explain what that condition checks for.
2024-11-21 06:47:13 +01:00
00994e6cf7 Fixed behavior of valid from date when creating new template
Previously if you created a new grading template chose a date for `Valid from` field and then added a criterion.
The valid from date would reset to null. This would create a validation error on save.
This creates unnecessary confusion for the user.

Now when you have chosen a date and then choose to add a criterion to the template the date does not reset.

The reason for this was that the AutoSave() added to the field was using the wrong event to trigger the setValidFrom().
Since we use bootstraps date picker we have to trigger on "changeDate" event.
2024-11-21 06:47:13 +01:00
c538f95950 Changed default value of Points required to pass
When adding a new criteria to a template the default value of `Points required to pass` was `0` (zero).
Now when you add a new criterion to a template the `Points required to pass` default to `1` (one).
2024-11-21 06:47:13 +01:00
ea54958e71 Added project type title when viewing or editing
When you chose to edit a template you could not see what type the template is.
For example if it was a bachelor or master type template.

Now when you choose to edit a grading template the type will be shown as a heading,
so you can more easily see what type of template you are currently editing.
The heading will read:
`You are editing a <type> grading template.`
The <type> will display the correct type of the grading template you are editing.

Open to change of what exactly the heading will display if anyone has a better idea for it.
2024-11-21 06:47:13 +01:00
4b113715d6 User alert on unsaved changes in grading template
Grading template did not have any way to alert the user that changes had been made when editing a template.

Added a way to detect and alert the user when changes have been made on the grading template they are editing. If the user removes his changes, so the template is in the same state as it was when the user started editing the template the alert will disappear.
2024-11-21 06:47:13 +01:00
1f0f15fc18 3471: Reduced size of textarea as requested, also made small reformatting of Java code ()
* number of rows in textarea is reduced from 20 to 7.
* made small reformatting of ProjectNoteColumn

Reviewed-on: 
Reviewed-by: ansv7779 <andreass@dsv.su.se>
Co-authored-by: Tom Zhao <tom.zhao@dsv.su.se>
Co-committed-by: Tom Zhao <tom.zhao@dsv.su.se>
2024-11-19 12:17:15 +01:00
cfe61a9ed8 task/3382: Harmonize database names as snake_case ()
Co-authored-by: Andreas Svanberg <andreass@dsv.su.se>
Reviewed-on: 
Reviewed-by: ansv7779 <andreass@dsv.su.se>
Co-authored-by: Tom Zhao <tom.zhao@dsv.su.se>
Co-committed-by: Tom Zhao <tom.zhao@dsv.su.se>
2024-11-12 13:33:43 +01:00
ccac2c1cf8 Enable creating an API using Spring Web ()
SciPro will have to provide information to the upcoming student portal. Wicket does not have the ability to serve JSON in the usual REST way and is only able to serve HTML. The most common way to write JSON over HTTP API:s in Java is using Spring Web, but currently SciPro uses Guice for dependency injection rather than Spring which makes adding Spring Web a bit more tricky.

This pull request attempts to solve this by doing the following;
* Replacing Guice with Spring
* Adding a new API module that uses Spring Web
* Turning the entire system into a standard Spring Boot web application

The hope is that these changes will bring the following benefits;
* Harmonize our web stack (Daisy uses Spring and the new lecture hall system is full Spring Boot)
* Enable easy development of a traditional JSON over HTTP API
* Ease future recruitment by using the most common Java web frameworks

Reviewed-on: 
Reviewed-by: niat8586 <nico@dsv.su.se>
Co-authored-by: Andreas Svanberg <andreass@dsv.su.se>
Co-committed-by: Andreas Svanberg <andreass@dsv.su.se>
2024-11-06 11:23:28 +01:00
e18af72336 Allows admins to manage grading report templates ()
# Manage grading report templates
Every once in a while the criteria used to asses theses and individual performance changes. When this happens the criteria in SciPro needs to be updated.

Up until now there has not been a GUI to do this and it has instead been done manually, sometimes using database migrations. It was also time-sensitive since there was only ever one template (per project type) in SciPro such that the change had to happen at the correct time when the new template was to take effect.

There was also the question of how to calculate the grade the author should receive based on the point sum from the supervisors assessment of all the criteria and these limits were hard-coded in the system.

These changes address all of the above;
 * There can be multiple templates per type.
 * Each template has a period during which it is are current.
 * Each template has defined the conversion of point sums to grades.

The periods can not overlap and a template remains current from its start date until another template's start date is reached. There can not be two templates (within a project type) that become valid on the same date.

## How to test
 1. Log in as administrator
 2. Go to "Project management"
 3. Go to "Grading templates"
 4. Create/edit new templates
 5. View current template

Card 3482

Co-authored-by: niat8586 <nico@dsv.su.se>
Reviewed-on: 
Reviewed-by: niat8586 <nico@dsv.su.se>
Co-authored-by: Andreas Svanberg <andreass@dsv.su.se>
Co-committed-by: Andreas Svanberg <andreass@dsv.su.se>
2024-10-30 10:05:22 +01:00
d8e4f0dd22 Stop confusing Spring Boot with copied classes
These classes were copied from Spring Data a long time ago. Their existence on the class path confuses Spring Boot into thinking we use Spring Data JPA which we do not.
2024-10-28 14:02:31 +01:00
949de4a260 Allow supervisors to write a note associated with their projects ()
There is a need among supervisors to maintain some work notes for each project. Where they are in the process, what students need to do, and other such things.

This PR gives the supervisors the ability to write a note for each project on their overview page.

Card 3399

Reviewed-on: 
Reviewed-by: niat8586 <nico@dsv.su.se>
2024-07-10 13:43:27 +02:00
4dc0ba32d0 Enable supervisors to get an overview of forum activity ()
Their project overview page now include a column indicating if any thread in that forum has an unread post and it also acts as a quick link directly to the forum.

Fixes 
Card 3399

Reviewed-on: 
Reviewed-by: niat8586 <nico@dsv.su.se>
Co-authored-by: Andreas Svanberg <andreass@dsv.su.se>
Co-committed-by: Andreas Svanberg <andreass@dsv.su.se>
2024-07-10 13:18:20 +02:00
eccf6937a3 3380 Specify information URL about the review process for reviewers
Administrators want to inform the reviewers what dates are important during the thesis writing process.

They can now configure an information URL for each type of project under "Admin / System / Type settings" that is shown to the reviewers as they review projects.
2024-05-27 16:35:30 +02:00
663b92eb3b 3380 Specify information URL about the review process for supervisors
Administrators want to inform the supervisors how the reviewers are assigned and what dates are important during the thesis writing process.

They can now configure an information URL for each type of project under "Admin / System / Type settings" that is shown to the supervisors as they enter the review process.
2024-05-27 16:29:23 +02:00
da842a9fd2 3380 Made it possible to edit minimum/maximum authors
There has always been a minimum and maximum limit on the number of authors per project type, it was just never configurable. Made them configurable while working on the panel.
2024-05-27 16:04:09 +02:00
a48dccc4cd Merge branch 'bugfix/3372-link' into develop 2024-05-23 12:02:44 +02:00
a79ee20cba 3392 Failing test 2024-05-22 12:35:50 +02:00
325b93ce3d 3391 Fix warning 2024-05-22 10:45:29 +02:00
6c0cf8a42f bugfix/3372-link: Complement allowed characters in forum links with exlamation mark. 2024-05-17 15:30:16 +02:00
a6d2502ebb 3381 Fix NPE when supervisors fill in individual criteria before final thesis is uploaded 2024-05-03 15:11:13 +02:00
9c78d9a648 Merge remote-tracking branch 'refs/remotes/origin/wicket-10' into develop 2024-04-26 10:10:24 +02:00
f5950a43ba 3126 Remove possibility to reply to forum posts via e-mail
Unused feature that caused issues with repeated posts.
2024-04-26 10:05:30 +02:00
43516dba16 3275 orangemarkera två flikar i "finishing up" när man hovrar med musen 2024-04-24 16:43:03 +02:00
5c78a698f9 Wicket 10 downgraded the version so the security vulnerability popped up again 2024-04-24 14:53:57 +02:00
db0c36234a Merge branch 'develop' into wicket-10 2024-04-22 09:41:47 +02:00
fea88cfcc6 3207 Disabling the button will break Wickets specific submit button behavior. Disable buttons with CSS instead 2024-04-18 09:57:24 +02:00
9b69fca5be Merge remote-tracking branch 'origin/develop' into develop 2024-04-16 21:31:29 +02:00
fb39fa9c64 3359 Bristande info under Final thesis and reflection 2024-04-16 21:31:12 +02:00
5a20a863d0 3207 TR 2024-04-16 14:17:07 +02:00
42cd644e74 Merge branch 'develop' into wicket-10
# Conflicts:
#	view/src/main/java/se/su/dsv/scipro/supervisor/pages/SupervisorViewGroupThreadPage.java
2024-04-16 14:13:03 +02:00
2d7b032219 Clean up 2024-04-16 13:21:03 +02:00
a8707ab6f9 3367 Remove unused library with security vulnerability 2024-04-16 13:06:44 +02:00
eca412d9b5 2870 Stöd för att ange nationellt ämneskategori i samband med att godkänner final thesis 2024-04-08 17:04:06 +02:00
0474b18911 3207 Dubblett - POST finalseminar 2024-04-08 15:44:51 +02:00
3a530879a7 2870 Stöd för att ange nationellt ämneskategori i samband med att godkänner final thesis 2024-04-08 15:43:55 +02:00
cabdc5bfce 3262 Improve feedback when students submit/updates their own idea 2024-04-03 14:29:39 +02:00
17306630c5 3262 Improve information available to students about their ideas
Show when the course starts
Better status message when it's not yet matched to a supervisor
2024-04-03 14:15:34 +02:00
44aa894322 3358 Fix status text not updating properly 2024-04-03 13:20:34 +02:00
4bdc34e307 3359 Show text when author has done their parts, but the grading process is not fully done yet 2024-04-03 12:43:46 +02:00
db84cc6c17 3157 Fix problem with marking threads read when opening the same thread multiple times simultaneously 2024-04-03 11:01:04 +02:00
19fdef662b 3134 TR Failed opposition notification link should lead to the opposition page 2024-03-28 14:42:46 +01:00
d91347cfbe 3157 Some database related changes has made this no longer happen (possibly JDBC driver change?) 2024-03-27 15:03:58 +01:00
1df32c57e3 Merge remote-tracking branch 'origin/develop' into develop 2024-03-27 14:51:52 +01:00
f8e9a391ca 3308 NPE vid hämtning av kriteriepoäng 2024-03-27 14:51:34 +01:00
daba0ed46c 3357 fix typo 2024-03-27 13:51:52 +01:00
139ecd8bbd 3273 Do not mark thesis as "Sent to examiner" before it is actually sent
What happened was an empty list was returned if we got a bad response from the grading service. So when the check was performed "is there any examination without a grade" then it was true because there were no examinations to begin with.
2024-03-27 09:57:09 +01:00
9bcad9df40 3144 Allow supervisors to change the examination date when sending suggestion to the examiner 2024-03-25 11:21:09 +01:00
12104cc6c8 2870 National subject category is mandatory 2024-03-25 10:37:38 +01:00
7420970e4b 3257 förtydliga datum för inskickandet av uppsatsen till examinator 2024-03-21 12:45:06 +01:00