From 4a9867b81b414b5a5bdb66a597479c854d827645 Mon Sep 17 00:00:00 2001 From: Ralf Teusner Date: Tue, 21 Mar 2017 12:16:39 +0100 Subject: [PATCH] only show search if parameters are set, prevent calls on nil.. --- app/controllers/exercises_controller.rb | 13 +++++++++---- app/views/exercises/_editor_file_tree.html.slim | 4 ++-- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/app/controllers/exercises_controller.rb b/app/controllers/exercises_controller.rb index 62799e27..5c536a0e 100644 --- a/app/controllers/exercises_controller.rb +++ b/app/controllers/exercises_controller.rb @@ -187,12 +187,17 @@ class ExercisesController < ApplicationController lti_parameters = LtiParameter.find_by(external_users_id: current_user.id, exercises_id: @exercise.id) if lti_parameters - lti_json = lti_parameters.lti_parameters["lis_outcome_service_url"] + lti_json = lti_parameters.lti_parameters["launch_presentation_return_url"] + @course_token = - if match = lti_json.match(/^.*courses\/([a-z0-9\-]+)\/sections/) - match.captures.first + unless lti_json.nil? + if match = lti_json.match(/^.*courses\/([a-z0-9\-]+)\/sections/) + match.captures.first + else + java_course_token + end else - java_course_token + "" end else # no consumer, therefore implementation with internal user diff --git a/app/views/exercises/_editor_file_tree.html.slim b/app/views/exercises/_editor_file_tree.html.slim index 6a90b60d..2c287eba 100644 --- a/app/views/exercises/_editor_file_tree.html.slim +++ b/app/views/exercises/_editor_file_tree.html.slim @@ -6,7 +6,7 @@ div id='sidebar-collapsed' class=(@exercise.hide_file_tree ? '' : 'hidden') data = render('editor_button', classes: 'btn-block btn-primary btn-sm enforce-top-margin', data: {:'data-toggle' => 'tooltip', :'data-placement' => 'right'}, icon: 'fa fa-download', id: 'download-collapsed', label:'', title: t('exercises.editor.download')) = render('editor_button', classes: 'btn-block btn-primary btn-sm enforce-top-margin', data: {:'data-message-confirm' => t('exercises.editor.confirm_start_over'), :'data-url' => reload_exercise_path(@exercise), :'data-toggle' => 'tooltip', :'data-placement' => 'right'}, icon: 'fa fa-history', id: 'start-over-collapsed', label:'', title: t('exercises.editor.start_over')) - - if @course_token + - if !@course_token.blank? = render('editor_button', classes: 'btn-block btn-primary btn-sm enforce-top-margin', data: {:'data-toggle' => 'tooltip', :'data-placement' => 'right'}, icon: 'fa fa-search', id: 'sidebar-search-collapsed', label: '', title: t('search.search_in_forum')) div id='sidebar-uncollapsed' class=(@exercise.hide_file_tree ? 'hidden' : '') @@ -26,7 +26,7 @@ div id='sidebar-uncollapsed' class=(@exercise.hide_file_tree ? 'hidden' : '') = render('editor_button', classes: 'btn-block btn-primary btn-sm enforce-top-margin', icon: 'fa fa-download', id: 'download', label: t('exercises.editor.download')) = render('editor_button', classes: 'btn-block btn-primary btn-sm', data: {:'data-message-confirm' => t('exercises.editor.confirm_start_over'), :'data-url' => reload_exercise_path(@exercise)}, icon: 'fa fa-history', id: 'start-over', label: t('exercises.editor.start_over')) - - if @course_token + - if !@course_token.blank? = form_for(@search, multipart: true, target: "_blank") do |f| .input-group.enforce-top-margin = f.hidden_field :exercise_id