Class: DceLti::Engine

Inherits:
Rails::Engine
  • Object
show all
Defined in:
lib/dce_lti/engine.rb

Class Method Summary collapse

Class Method Details

.setup {|config| ... } ⇒ Object

Yields:

  • (config)


7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/dce_lti/engine.rb', line 7

def self.setup
  config.copy_launch_attributes_to_session = %i|
context_id
context_label
context_title
resource_link_id
resource_link_title
tool_consumer_instance_guid
launch_presentation_return_url
  |

  config.enable_cookieless_sessions = false

  config.provider_title = (ENV['LTI_PROVIDER_TITLE'] || 'DCE LTI Provider')
  config.provider_description = (ENV['LTI_PROVIDER_DESCRIPTION'] || 'A description of this')

  config.redirect_after_successful_auth = -> (controller) do
    session_key_name = Rails.application.config.session_options[:key]
    Rails.application.routes.url_helpers.root_path(session_key_name => controller.session.id)
  end
  
  config.redirect_after_session_expire = -> (controller) do
    Engine.routes.url_helpers.invalid_sessions_path
  end

  config.tool_config_extensions = ->(*) {}
  yield config
end