Commit Graph

281 Commits

Author SHA1 Message Date
Thomas Hille
904868394a added interventions being saved once they are fired 2017-03-21 10:31:33 +01:00
Thomas Hille
bfc96328c4 added interventions back to code. added post method to be able to save interventions 2017-03-21 10:31:33 +01:00
Thomas Hille
3d7f5bdf1a added intervention controller and stuff 2017-03-21 10:31:32 +01:00
Thomas Hille
b82018dd8f changed some variable names 2017-03-21 10:31:32 +01:00
Thomas Hille
b41a858762 changed way working times are returned. builtin protection if exercise is new 2017-03-21 10:31:32 +01:00
Thomas Hille
1eea3fab4c lots of renaming to _ names instead of camelCase 2017-03-21 10:31:32 +01:00
Thomas Hille
d5b2ea4269 added proxy exercise dispatching to LTI module. Submissions now set user before the exercise token gets validated. this we need to set the exercise behind the proxy exercise 2017-03-21 10:31:32 +01:00
Thomas Hille
0db11884bc Extended Exercises by worktime, difficulty and tags, added ProxyExercises as prework for recommendations
Tags can be added to exercises in the edit view. Tags can monitored under /tags.
Added the concept of ProxyExercises which are a collection of Exercises. They can be found under /proxy_exercises
Added Interventions as prework to show interventions later to the user.
Added exercise/[:id]/working_time to return the working time of the user in this exercise and the average working time of all users in this exercise
2017-03-21 10:31:32 +01:00
Ralf Teusner
9b8027e4c0 replaced exit-command for containers from 'exit' to '#exit', otherwise it will always really exit the container (which is then in state: exited) if we execute it in bash. 2017-02-14 13:35:21 +01:00
Ralf Teusner
a52b27bb59 render html and or markdown for feedback messages 2017-02-08 16:19:41 +01:00
Niklas Kiefer
4d314317ae parse target url to .co file, update remote scripts 2017-02-03 09:13:59 +01:00
Niklas Kiefer
3562aa9103 create remote evaluation 2017-02-02 18:14:33 +01:00
Tom Staubitz
3a07e7d5f6 Updated nokogiri 2017-01-13 13:46:36 +01:00
Tom Staubitz
6bf73757ae fixing tests p3 2017-01-13 09:56:36 +01:00
Tom Staubitz
4af24d4317 fixing tests p2 lti_spec tests all passed 2017-01-13 00:37:07 +01:00
Tom Staubitz
5fe12bfa78 fixing tests p1 2017-01-12 18:12:36 +01:00
Tom Staubitz
e4daa7ece3 only destroy LTI_parameter when exercise is submitted 2017-01-12 16:03:30 +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
41a61a8507 Fixed the destroy session logic.
1. an exercise_id is provided ==> only the LtiParameter object for the current user, consumer, and exercise is deleted.
2. no exercise_id is provided ==> external user and consumer are removed from the session, all LtiParameter objects for this user and consumer are deleted.

This enables users to have several tabs with exercises open and submitting the results to the tool consumer.
When an exercise has been submitted, the user cannot use the back button to get back to CodeOcean and work on the submitted or any other exercise.
For now a warning has been added to the info text to tell users not to do this. (As the LtiParameters have been deleted, the points can no more be submitted to the consumer.)
@TODO disable/redirect back button?
2016-12-31 17:21:46 +01:00
Tom Staubitz
edb813ab14 added separate value for the actual external_id of the external user. 2016-12-31 00:58:36 +01:00
Tom Staubitz
f318c62818 session[:external_user_id] has a somewhat misleading name.
As the tests fail however, when the value that  fits the name is entered, I switched it back to the old version.
2016-12-31 00:51:07 +01:00
Tom Staubitz
ca28e0aa87 updated rails from 4.1.13 to 4.2.5. This is required for rails to make use of new features in postgres 9.5
@Ralf
TODO: migration /Users/groucho/Documents/HPI/workspace/Xikolo-CodeOcean/codeocean/db/migrate/20160204111716_add_user_to_code_harbor_link.rb
is broken. A reference is made to table users which does not exist.
Workaround: run rake db:schema:load before running db:migrate. Still this should be fixed.
2016-12-31 00:05:23 +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
6f1d8b2d38 Marked more locations that might require to be changed when we switch from session to LtiParameters Object 2016-12-27 07:48:59 +01:00
Tom Staubitz
80e3453395 Merge branch 'master' into lti_param_model 2016-12-27 00:16:32 +01:00
Tom Staubitz
f4c01879bf preparations to replace session with lti_parameters object 2016-12-27 00:13:41 +01:00
Ralf Teusner
0a795b521f only show RFCs that have a question set 2016-12-19 18:30:06 +01:00
Ralf Teusner
f2db88f952 Merge branch 'master' into travis-green-docker
took all the newer versions. Only thing I deleted is the part #to pass the test "it executes the run command" ...
We need to shortly discuss this yqbk.

Conflicts:
	lib/docker_client.rb
2016-11-09 18:25:02 +01:00
Ralf Teusner
1511941d3d Merge branch 'master' into editor-frontend-refactor
Conflicts:
	codeocean-dockerconfig.md
2016-11-09 18:00:40 +01:00
Ralf Teusner
ff7446fde6 redirect to RFCs on max score: redirect users to their own RFCs if they are open, fixed wrong usage of user_id (external_id is not used in RFCs, normal id has to be used!). 2016-11-09 17:58:10 +01:00
Ralf Teusner
ac88956d27 Put blocking score submission call into a thread to keep the puma server responsive 2016-10-12 18:15:16 +02:00
yqbk
1945a47109 apply changes after review 2016-10-11 12:44:16 +02:00
yqbk
44aca293e9 make travis green again 2016-10-08 20:37:20 +02:00
Alexander Kastius
6ff3d36809 Fixed container-ending on exit. 2016-09-09 17:06:30 +02:00
Alexander Kastius
3fd43fdee2 Sending command 'client_kill' on stop button click now.
Killing a container only if command client_kill was send.
Moved propmpt to prompt.js
2016-09-09 16:41:20 +02:00
Ralf Teusner
0f76b1cb90 Merge branch 'master' into editor-frontend-refactor
Conflicts:
	app/assets/javascripts/editor.js.erb
---> kept refactored one
2016-09-09 14:17:42 +02:00
Ralf Teusner
e67f1f78c4 cleanup logging statements. 2016-09-09 14:11:38 +02:00
Ralf Teusner
8f499b72da Feature: Auto-Completion in Source Code
+ allow flags for exercises
2016-09-07 17:34:20 +02:00
Ralf Teusner
0d550a44af send exit commands from rails server when score or test have finished - this is needed to reset the buttons in the frontend correctly. 2016-09-01 17:15:44 +02:00
Ralf Teusner
6e6c9143cd Some tidy up in request for comments (bugfix: removed leftover parts of requested_at attribute, some UI changes in comment dialog)
Redirect to open rfc if an exercise has been solved
2016-08-11 18:13:33 +02:00
yqbk
41b0c1e530 solve extension probelm 2016-08-03 17:21:49 +02:00
yqbk
4183a16178 merge with master 2016-08-03 12:09:58 +02:00
Ralf Teusner
87901bd89b Merge branch 'master' into score-websocket
Conflicts:
	app/assets/javascripts/editor.js.erb
2016-07-28 15:32:22 +02:00
Ralf Teusner
ed3526a578 Merge branch 'master' into feature-file-templates
Conflicts:
	app/views/application/_navigation.html.slim
	config/locales/de.yml
	config/locales/en.yml
	db/schema.rb
2016-07-28 15:16:11 +02:00
Ralf Teusner
09533a5556 download complete submission as one zip file 2016-07-15 18:25:58 +02:00
Ralf Teusner
f5868a4fa2 merge master 2016-07-14 13:22:24 +02:00
Ralf Teusner
223df2ffa8 some cleanup of request for comments. Work in progress.
Noticed a flaw when fetching the last submission, which is caused by timezone differences. First step to solve this.
Existing Request for Comments still need to be updated with their current submissionId, the SQL to do that is not yet finished.
2016-07-04 17:44:22 +02:00
Ralf Teusner
2a52b66daa rfc can now be solved.
show.html still needs to be finished
2016-06-24 16:44:34 +02:00
Ralf Teusner
7c1be5594a also handle testcommand via websocket 2016-06-17 17:23:47 +02:00
Ralf Teusner
96de763b83 Handle scoring presentation to client via websockets 2016-06-17 16:42:07 +02:00