Commit Graph

106 Commits

Author SHA1 Message Date
Julia Casamitjana
749074fec0 Add functionality to expand the markdown editor
The editor will now have a default height of 300px but a button will let
the user expand the editor. It will expand it to fit all content (or up
to 400px if the content was not exceeding 300px). In the expanded mode
the editor will keep growing as the user types more content.
2024-04-26 13:31:49 +02:00
Julia Casamitjana
17a4485ce2 Rename PagedownFormBuilder to MarkdownFormBuilder
The term 'Pagedown' was originally associated with the pagedown-bootstrap
library, which is no longer in use.
2024-04-26 13:31:49 +02:00
Julia Casamitjana
9c71c6667a Install and use ToastUi markdown editor
Replace all usages of pagedown-bootstrap editor with the new editor.
Add styles to ensure the editor preview matches the final output.
2024-04-26 13:31:49 +02:00
Karol
117d3366ad fix kramdown using curved quotes and replace them with straight quotation marks 2024-03-14 17:03:00 +01:00
Sebastian Serth
04863f1f25 Update Ruby to 3.3 2024-01-19 12:49:00 +01:00
Sebastian Serth
c280a58214 Resolve Rails.application.secrets deprecation 2024-01-19 11:06:40 +01:00
Sebastian Serth
4723985b4c Support GitHub-flavored Markdown 2023-12-19 09:19:09 +01:00
kiragrammel
79ce069f68 Add CRUD operations for Programming Groups
* Correct sorting in table
* Modify page when nested in exercises
* Fix links between pages
* Link from statistics page to programming_groups/index
* Link from submission page to programming_groups/<id>
* Allow filtering for exercise ID on ProgrammingGroup#index
* Add search fields for internal and external user id on pg/index
2023-10-23 18:17:42 +02:00
Sebastian Serth
99bd46af1a Align project files with CodeHarbor
Since both projects are developed together and by the same team, we also want to have the same code structure and utility methods available in both projects. Therefore, this commit changes many files, but without a functional change.
2023-10-11 00:18:33 +02:00
Sebastian Serth
0e387ffda2 Add association for Comments and RequestForComments
For the submission and comments, I mainly decided to use a `has_one` association. Based on the database schema, multiple request for comments could be allowed (i.e., for each file or submission), but this won't happen practically (since we always create new submissions and files). Hence, the `has_one` association is representing our relationship better.
2023-09-25 18:17:52 +02: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
kiragrammel
0234414bae Rename user to contributor in submission 2023-08-24 19:32:06 +02:00
Sebastian Serth
01f4f0c2cd Remove legacy CodePilot integration 2023-07-28 08:50:00 +02:00
Sebastian Serth
1296a12a6d Language Selector: Prevent duplicate locale= keys 2023-06-23 22:21:56 +02:00
Sebastian Serth
1c5eb09138 Safely join new parameters when switching the language
Fixes CODEOCEAN-JY
2023-03-14 16:36:29 +01:00
Sebastian Serth
d03f2c7bf4 Slightly improve Statistics Controller performance 2023-02-21 01:27:32 +01:00
Sebastian Serth
1cfae6101a Introduce additional time helper for managing intervals and durations 2022-12-05 18:22:18 +01:00
Sebastian Serth
ffe96d9223 Remove I18n.translation_present? monkey patch 2022-12-04 15:03:28 +01:00
Sebastian Serth
574e99eddd Fix rubocop offenses - Requires Ruby 3.1+ 2022-11-25 11:10:06 +01:00
Sebastian Serth
9bd900bd86 Raise NotAuthorized Error if ID cannot be found
Fixes CODEOCEAN-F3
2022-11-17 20:47:33 +01:00
Sebastian Serth
2753e4ef5b Always catch StandardError in Threads and release connection 2022-11-11 22:50:27 +01:00
Sebastian Serth
60078701f5 Editor: Allow file retrieval after code run 2022-10-29 18:49:18 +02:00
Sebastian Serth
f22e3b56f1 AuthenticatedUrlHelper: Rescue URI::InvalidURIError
This error should usually nto happen, but we catch it just to be safe.
2022-10-04 16:06:28 +02:00
Sebastian Serth
53db7e80d0 AuthenticatedUrlHelper: Fix extraction of parameters
* Previously, all parameters were removed
2022-10-04 16:06:28 +02:00
Sebastian Serth
16c00ec136 Add support for signed URLs used by the render_file function 2022-09-23 21:35:22 +02:00
Sebastian Serth
5881795d5f Memorize config options instead of reading them from file over and over again 2022-09-23 21:35:22 +02:00
Sebastian Serth
9e08f3a6a8 Enable Subresource Integrity 2022-09-06 11:21:37 +02:00
Sebastian Serth
6927b57170 Update Study Group Dashboard and Statistics 2022-08-20 00:05:02 +02:00
Sebastian Serth
145c4aa8d5 Refactor various ruby files
* Insights based on brakeman report
2022-08-18 15:25:04 +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
4d0c65d2a2 Use Ruby syntax instead of SQL snippets for Testrun queries 2022-04-20 18:00:13 +02:00
Sebastian Serth
11c3a888c2 Fix rubocop offenses 2022-01-19 08:57:07 +01:00
Sebastian Serth
0a6ae91db8 Introduce per_page parameter for custom page size 2022-01-12 20:46:54 +01:00
Sebastian Serth
bd23247975 Handle unavailable Runner management for release info 2021-12-09 19:25:17 +01:00
Sebastian Serth
f099a9c77e Fixes CODEOCEAN-7K 2021-12-09 19:21:22 +01:00
Sebastian Serth
563e14a44a Adapt dashboard to show idle and used runners 2021-12-07 00:08:31 +01:00
Sebastian Serth
ada438b230 Add release and pool_size methods to DCP 2021-11-01 17:13:07 +01:00
Sebastian Serth
74e285e9fd Fix rubocop offenses 2021-10-05 12:09:56 +02:00
Ralf Teusner
47888f1dbd Always use ActionController::Base.helpers to sanitize Markdown
Co-authored-by: Sebastian Serth <Sebastian.Serth@hpi.de>
2021-08-05 23:17:06 +02:00
Sebastian Serth
9751d5a5a1 Update render_markdown to work without html_safe 2021-07-29 00:12:18 +02:00
Sebastian Serth
237c225732 Add support for running CodeOcean under a subpath
* Also refactor (JavaScript) routes
2021-07-06 19:33:55 +02:00
Sebastian Serth
110f1a5750 Fix rubocop offenses after bundle update 2021-06-30 09:13:25 +02:00
Sebastian Serth
5243808d54 Apply automatic rubocop fixes 2021-05-17 19:40:38 +02:00
Sebastian Serth
da0a682ffb Apply manual rubocop fixes 2021-05-14 22:03:06 +02:00
Sebastian Serth
6cbecb5b39 Apply automatic rubocop fixes 2021-05-14 22:03:06 +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
e550828c58 Add backend for tips and enable markdown support 2020-10-14 14:34:26 +02:00