diff --git a/app/assets/javascripts/code_listing/code_listing.ts b/app/assets/javascripts/code_listing/code_listing.ts
index 2389c1fc0e..d69649b2f8 100644
--- a/app/assets/javascripts/code_listing/code_listing.ts
+++ b/app/assets/javascripts/code_listing/code_listing.ts
@@ -40,7 +40,7 @@ export class CodeListing {
public readonly code: string;
public readonly codeLines: number;
public readonly submissionId: number;
- public readonly courseId: number;
+ public readonly courseId: number | null;
public readonly exerciseId: number;
public readonly userId: number;
diff --git a/app/assets/javascripts/components/annotations/annotation_form.ts b/app/assets/javascripts/components/annotations/annotation_form.ts
index be04797781..b100bfde9d 100644
--- a/app/assets/javascripts/components/annotations/annotation_form.ts
+++ b/app/assets/javascripts/components/annotations/annotation_form.ts
@@ -185,7 +185,7 @@ export class AnnotationForm extends watchMixin(ShadowlessLitElement) {
${unsafeHTML(I18n.t("js.user_annotation.help"))}
${this.questionMode ? html`
- ${I18n.t("js.user_annotation.help_student")}
+ ${unsafeHTML(I18n.t("js.user_annotation.help_student"))}
` : ""}
${I18n.formatNumber(this.annotationText.length)} / ${I18n.formatNumber(maxLength)}
diff --git a/app/assets/stylesheets/bootstrap_style_overrides.css.scss b/app/assets/stylesheets/bootstrap_style_overrides.css.scss
index 5ae85d89cc..8af4fc8849 100644
--- a/app/assets/stylesheets/bootstrap_style_overrides.css.scss
+++ b/app/assets/stylesheets/bootstrap_style_overrides.css.scss
@@ -233,3 +233,7 @@ blockquote {
display: none;
}
}
+
+.list-group .list-group-item {
+ background-color: $background;
+}
diff --git a/app/assets/stylesheets/models/questions.css.scss b/app/assets/stylesheets/models/questions.css.scss
index f296071473..3f476d339b 100644
--- a/app/assets/stylesheets/models/questions.css.scss
+++ b/app/assets/stylesheets/models/questions.css.scss
@@ -1,6 +1,6 @@
.question-table {
col.actions {
- width: 80px;
+ width: 100px;
}
col.age {
@@ -28,7 +28,7 @@
.question-index-table {
col.actions {
- width: 80px;
+ width: 100px;
}
col.age {
diff --git a/app/helpers/renderers/feedback_code_renderer.rb b/app/helpers/renderers/feedback_code_renderer.rb
index 73e01ab6c9..c4d95e975d 100644
--- a/app/helpers/renderers/feedback_code_renderer.rb
+++ b/app/helpers/renderers/feedback_code_renderer.rb
@@ -92,7 +92,7 @@ def add_messages(submission, messages, user)
@builder.script(type: 'application/javascript') do
@builder << <<~HEREDOC
window.MathJax.startup.promise.then(() => {
- window.dodona.codeListing = new window.dodona.codeListingClass(#{submission.id}, #{submission.course_id}, #{submission.exercise_id}, #{user.id}, #{@code.to_json}, #{@code.lines.length}, #{user_is_student});
+ window.dodona.codeListing = new window.dodona.codeListingClass(#{submission.id}, #{submission.course_id.to_json}, #{submission.exercise_id}, #{user.id}, #{@code.to_json}, #{@code.lines.length}, #{user_is_student});
window.dodona.codeListing.addMachineAnnotations(#{messages.to_json});
#{'window.dodona.codeListing.initAnnotateButtons();' if user_perm}
window.dodona.codeListing.loadUserAnnotations();
diff --git a/config/initializers/00_version.rb b/config/initializers/00_version.rb
index 53401ca268..d2f4f0e0a7 100644
--- a/config/initializers/00_version.rb
+++ b/config/initializers/00_version.rb
@@ -3,7 +3,7 @@ class Application
module Version
MAJOR = 6
MINOR = 1
- PATCH = 1
+ PATCH = 2
STRING = [MAJOR, MINOR, PATCH].compact.join('.')
end
diff --git a/lib/SAML/strategy.rb b/lib/SAML/strategy.rb
index c4e3665080..96910ae6d7 100644
--- a/lib/SAML/strategy.rb
+++ b/lib/SAML/strategy.rb
@@ -68,6 +68,8 @@ def on_callback_path?
def handle_response(raw, settings)
# Parse the raw response.
opts = response_options.merge(settings: settings)
+ # Allow clock drift to account for clock skew between servers.
+ opts = opts.merge({:allowed_clock_drift => 2.seconds})
parsed_response = OneLogin::RubySaml::Response.new(raw, opts)
parsed_response.soft = false