Commit Graph

46 Commits

Author SHA1 Message Date
kiragrammel
175c8933f3 Automatically submit LTI grade on each score run
With this commit, we refactor the overall score handling of CodeOcean. Previously, "Score" and "Submit" were two distinct actions, requiring users to confirm the LTI transmission of their score (after assessing their submission). This yielded many questions and was unnecessary, since LTI parameters are no longer expiring after each use. Therefore, we can now transmit the current grade on each score run with the very same LTI parameters. As a consequence, the LTI consumer gets a more detailed history of the scores, enabling further analytical insights.

For users, the previous "Submit" button got replaced with a notification that is shown as soon as the full score got reached. Then, learners can decide to "finalize" their work on the given exercise, which will initiate a redirect to a follow-up action (as defined in the RedirectBehavior). This RedirectBehavior has also been unified and simplified for better readability.

As part of this refactoring, we rephrased the notifications and UX workflow of a) the LTI transmission, b) the finalization of an exercise (measured by reaching the full score) and c) the deadline handling (on time, within grace period, too late). Those information are now separately shown, potentially resulting in multiple notifications. As a side effect, they are much better maintainable, and the LTI transmission is more decoupled from this notification handling.
2023-11-23 14:42:10 +01:00
Sebastian Serth
e3603758ef Refactor LTI parameters and add study group
* This change also requires that submissions in our test need to have a valid study group.
2023-08-24 19:32:06 +02:00
kiragrammel
319c3ab3b4 Add ProgrammingGroup & ProgrammingGroupMembership
* User can create programming group with other users for exercise
* Submission is shared in a group
* Also adjust specs
2023-08-24 19:32:06 +02:00
Sebastian Serth
944b455194 Introduce Dark Mode
This commit mainly changes the color definitions. Mostly, those changes are semantically equally, but there are a few changes that occurred to align the color scheme within the app.
2023-07-31 11:48:42 +02:00
Sebastian Serth
ccbd74b4c7 Editor: Fix tooltip when submit is no longer possible 2023-02-28 00:53:15 +01:00
Sebastian Serth
4f0b8c3c42 Reduce usage of @current_user (use helper instead) 2022-11-02 12:27:38 +01:00
Sebastian Serth
60078701f5 Editor: Allow file retrieval after code run 2022-10-29 18:49:18 +02:00
Sebastian Serth
60dc8c3b7e Apply line-based coloring for output 2022-09-02 16:56:18 +02:00
Sebastian Serth
8a055a0d68 Update Bootstrap from v4 to v5 2022-08-12 11:45:32 +02:00
Sebastian Serth
b98c37ae64 Rename v4 FontAwesome icons to match v5/v6 name
While FontAwesome provides aliases for all icons, we switch to the new names for consistency. See all changes at:
https://fontawesome.com/docs/web/setup/upgrade/upgrade-from-v4#icons-renamed-since-version-4
2022-08-09 14:17:32 +02:00
Sebastian Serth
d93e71dc28 Rename v5 FontAwesome icons to match v6 name
While FontAwesome provides aliases for all icons, we switch to the new names for consistency. See all changes at:
https://fontawesome.com/docs/web/setup/upgrade/whats-changed#icons-renamed-in-version-6
2022-08-09 14:17:32 +02:00
Sebastian Serth
f9a7e73719 Remove usage of safe_html in renderings 2021-10-12 11:23:22 +02:00
Sebastian Serth
f32661ad78 Rework left sidebar
* Move Buttons from left sidebar to JSTree
* Use light style for collapse sidebar buttons
2021-05-28 17:49:59 +02:00
Sebastian Serth
c32e7586cd Remove consumer_id from session
* Each external (and also internal) user has a consumer attached. We don't need that information twice.
2020-11-25 21:19:18 +01:00
Sebastian Serth
799e37f9ae Add new style for linter and allow 0 points 2020-10-15 16:22:37 +02:00
Sebastian Serth
26b9edabb4 Add deadline information to submission page and some minor bugfixes 2020-05-08 15:07:02 +02:00
Sebastian Serth
3756e4b6dd Fix specs by using global variable current_user 2020-05-04 18:13:16 +02:00
Sebastian Serth
25ec422242 Improve score shown when reloading page 2020-05-04 17:43:54 +02:00
Sebastian Serth
99e4aec1cb Render submit button once results are available 2020-03-04 17:58:16 +01:00
Sebastian Serth
4a1cd3037c Fix execution of code via Ajax.
Add output message for program runs without any output
2018-12-13 13:55:45 +01:00
Sebastian Serth
a0d8b30ef2 Implement support for some basic embed options for work sheets via LTI
This commit also fixes an issue with the flash messages being positioned too high and displayed for too long
2018-12-11 14:29:36 +01:00
rteusner
8dfcef3e45 Merge pull request #235 from openHPI/remove_old_hints
Completely remove old hints connected to the execution environment
2018-11-30 15:41:01 +01:00
Sebastian Serth
212867f300 Fix flowr output to work with Bootstrap 4 2018-11-28 15:22:21 +01:00
Maximilian Grundke
b9dce854c4 Merge remote-tracking branch 'origin/master' into flowr
# Conflicts:
#	app/assets/javascripts/editor/evaluation.js
#	app/assets/javascripts/editor/participantsupport.js
#	app/views/exercises/_editor_output.html.slim
#	config/code_ocean.yml.example
#	config/routes.rb
2018-11-28 13:14:21 +01:00
Sebastian Serth
efacb5a6a9 Completely remove old hints connected to the execution environment 2018-11-28 01:21:13 +01:00
Sebastian Serth
78037ab37a Increase font weight for headings, reduce size of result card headings 2018-11-06 16:49:44 +01:00
Sebastian Serth
cc48361a15 Remove unused scrollbars in /implement 2018-11-06 16:49:44 +01:00
Sebastian Serth
c44478783a Fix bootstrap CSS issues in Safari and Chrome 2018-11-06 16:49:44 +01:00
Sebastian Serth
d7befd60e5 Change button on implement page to be gray if score cannot be submitted 2018-11-06 16:49:43 +01:00
Sebastian Serth
7bdb962616 Update Bootstrap to v4.1, fix chosen.js and pagedown on multiple sites 2018-11-06 16:49:41 +01:00
Maximilian Grundke
b9054bbcba Localize flowr heading 2018-09-18 15:13:44 +02:00
Maximilian Grundke
024b2bbd8b Fix comment 2018-06-15 15:12:30 +02:00
Ann Katrin Kuessner
89ae262ace fix comment 2018-06-03 17:58:35 +02:00
Ann Katrin Kuessner
909d0de42e remove anchor test output 2018-06-03 16:57:57 +02:00
Maximilian Grundke
ccdcc43431 Display hints in editor frontend 2018-03-08 16:20:07 +01:00
Tom Staubitz
dd4c789fed replaced session_paramerters with server params for security reasons
cleaned up comments
2017-01-12 15:10:34 +01:00
Tom Staubitz
325ea25849 Replaced session[:lti_parameters] with proper LtiParameter object.
Removed all tests that would be failing

TODO: decision if all LtiParameter objects for a certain user/consumer will be deleted when the user/consumer is deleted from the session, or only the LtiParameter object for the current exercise of the user/consumer.

TODO: replace removed tests with proper tests
2016-12-30 09:45:39 +01:00
Tom Staubitz
f4c01879bf preparations to replace session with lti_parameters object 2016-12-27 00:13:41 +01:00
Ralf Teusner
2b621e2de6 some more code cleanup and UI optimizations 2016-09-09 16:10:43 +02:00
Ralf Teusner
77452e6c2b move progress into sidebar 2016-09-09 15:40:09 +02:00
Ralf Teusner
ddaed5929b Naming of sidebars 2016-09-01 18:47:16 +02:00
Alexander Kastius
f170fee6a9 Replaced hr with enforced margin. 2016-09-01 17:49:59 +02:00
Alexander Kastius
1670839ecf Fixed part of prompt. 2016-09-01 17:41:00 +02:00
Alexander Kastius
e42330cf1b Added tooltip to request-comments button.
Added locale for all new texts.
2016-09-01 16:27:40 +02:00
Alexander Kastius
fc1266d0d1 Added tooltips to sidebar buttons. 2016-09-01 14:35:08 +02:00
Alexander Kastius
dca26cf237 Refactored frontend.
Moved output to editor tab.
Added collapse function to sidebar.
2016-09-01 10:49:55 +02:00