Commit Graph

35 Commits

Author SHA1 Message Date
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
937a0d7d4d Disallow learners from clicking any button while redirecting after submit
Fixes CODEOCEAN-FRONTEND-3M
2023-09-20 00:35:18 +02:00
f37ba34389 Synchronize resetCode for pair programming 2023-09-12 18:47:06 +02:00
914adeed42 Insert text written after last autosave in pp session 2023-09-12 18:47:06 +02:00
9f37034d0b Prevent multiple unsubscribe calls for ActionCable 2023-09-06 00:00:27 +02:00
056a8e5107 Show if partner is online 2023-09-05 22:56:51 +02:00
0e4a239960 Unsubscribe from channel when redirecting
fixes CODEOCEAN-FRONTEND-2S
2023-09-05 22:56:51 +02:00
e2baa2ee55 Send score for all members of a programming group 2023-08-24 19:32:06 +02:00
15583ec552 Drop outdated JavaScript code no longer used 2023-05-09 22:10:40 +02:00
240fbc5a3b Add Sentry instrumentation for JavaScript 2023-05-09 22:10:40 +02:00
a97b56f36f Allow removing all event handles in JavaScript
This is useful to remove any handlers, e.g., when submitting an exercise. Hopefully, we will see less Javascript errors due to cumbersome behavior with these changes...

Also, I am cleaning up unused event handlers. The `showOutput` method doesn't seem to be used, we should observe this in the future.

Closes CODEOCEAN-KQ
2023-04-02 18:15:24 +02:00
bdcef4d183 Stop Code before redirecting after submit
Usually, this should not be needed, but users can first submit code and simultaneously request comments.

Fixes CODEOCEAN-KM
2023-03-20 14:02:20 +01:00
252704b083 Ensure to clear timeout in autosave
We are still trying to ensure autosave is not called outside the /implement route.

Relates to CODEOCEAN-G1
2023-02-28 12:31:22 +01:00
6c1bfb6815 Fix showSpinner for reset action 2023-02-28 11:35:17 +01:00
15878f500c Switch order of unloading the autosave timer
Hypothesis: When unloadAutoSave was called, we first saved (causing this.autosaveTimer to become null) and then tried to clearTimeout on this variable (= on null). This probably never worked?

Hopefully closes CODEOCEAN-B5
2022-11-16 23:26:25 +01:00
b4ab807ef0 Open Render in new Tab with timeout (to resolve issue with Safari) 2022-09-23 21:35:23 +02:00
150df3d219 Open linked resources in a new browsing context 2022-09-23 21:35:22 +02:00
16c00ec136 Add support for signed URLs used by the render_file function 2022-09-23 21:35:22 +02:00
416135daf0 Change order of autosave and clearing of editors when submitting code 2021-12-16 11:54:31 +01:00
5189ec8249 Fix resetting active file if filetree is disabled 2021-12-15 00:52:30 +01:00
da4e10b990 Add CommunitySolution
* Also slightly refactor some JS files
2021-11-23 01:38:31 +01:00
991fdef8bc Handle depleted containers for submit 2021-11-14 22:45:12 +01:00
f896d041f8 Restructure submissions_controller and remove outdated copy_comments method 2021-11-01 17:12:58 +01:00
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
1e5a9b0825 Remove unused SubmissionsController#stop action 2021-04-07 17:45:38 +02:00
fc511ba796 Clear Timeout before leaving implement route 2020-10-29 13:48:29 +01:00
51188eb72a Stop code prior to new run attempt 2020-10-29 12:39:01 +01:00
e5aeb8597b Prevent submission creation if url is undefined 2020-10-29 11:53:07 +01:00
3735d0b6cd Replace vanilla JS redirects with Turbolinks 2020-03-07 11:53:44 +01:00
d0eceac440 Upgrade font-awesome and add option reset only active file 2020-01-29 10:55:15 +01:00
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
1833435268 Use CodeOceanEditor.active_file to access file selected in JSFileTree 2018-12-05 13:46:44 +01:00
16a5345a71 Migrate jQuery function use for ajax in case of success or failure
Deprecation Notice:

The jqXHR.success(), jqXHR.error(), and jqXHR.complete() callbacks will be deprecated in jQuery 1.8. To prepare your code for their eventual removal, use jqXHR.done(), jqXHR.fail(), and jqXHR.always() instead.
2018-11-26 12:23:30 +01:00
7bdb962616 Update Bootstrap to v4.1, fix chosen.js and pagedown on multiple sites 2018-11-06 16:49:41 +01:00
15b1670511 Update Turbolinks, load additional assets only on request, fix JS
Signed-off-by: Sebastian Serth <Sebastian.Serth@student.hpi.de>
2018-11-06 16:46:01 +01:00