Module: CoalescingPanda

Defined in:
lib/coalescing_panda.rb,
lib/coalescing_panda/engine.rb,
lib/coalescing_panda/version.rb,
lib/coalescing_panda/route_helpers.rb,
app/models/coalescing_panda/session.rb,
app/models/coalescing_panda/lti_nonce.rb,
app/models/coalescing_panda/lti_account.rb,
lib/coalescing_panda/controller_helpers.rb,
app/models/coalescing_panda/canvas_api_auth.rb,
app/controllers/coalescing_panda/lti_controller.rb,
app/controllers/coalescing_panda/oauth2_controller.rb,
app/controllers/coalescing_panda/application_controller.rb

Defined Under Namespace

Modules: ControllerHelpers, RouteHelpers Classes: ApplicationController, CanvasApiAuth, Engine, LtiAccount, LtiController, LtiNavigationInUse, LtiNonce, NotMounted, Oauth2Controller, Session

Constant Summary collapse

VERSION =
'1.1.18'
@@lti_navigation =
{}
@@staged_navigation =
{}
@@lti_options =
{}

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.lti_optionsObject



23
24
25
# File 'lib/coalescing_panda.rb', line 23

def self.lti_options
  @@lti_options.deep_dup
end

.lti_options=(lti_options) ⇒ Object



19
20
21
# File 'lib/coalescing_panda.rb', line 19

def self.lti_options= lti_options
  @@lti_options = lti_options
end

.lti_pathsObject



36
37
38
# File 'lib/coalescing_panda.rb', line 36

def self.lti_paths
  @@lti_navigation.deep_dup
end

.propagate_lti_navigationObject



40
41
42
43
44
45
# File 'lib/coalescing_panda.rb', line 40

def self.propagate_lti_navigation
  @@staged_navigation.each do |k,v|
    lti_navigation(k,v)
    @@staged_navigation.delete(k)
  end
end

.register_navigation(navigation) ⇒ Object



27
28
29
# File 'lib/coalescing_panda.rb', line 27

def self.register_navigation(navigation)
  @@lti_navigation[navigation] ||= {}
end

.stage_navigation(navigation, options) ⇒ Object



31
32
33
34
# File 'lib/coalescing_panda.rb', line 31

def self.stage_navigation(navigation, options)
  @@staged_navigation[navigation] = {} unless @@staged_navigation.has_key?(navigation)
  @@staged_navigation[navigation].merge!(options)
end

Instance Method Details

#cleanupObject



10
11
12
# File 'app/models/coalescing_panda/lti_nonce.rb', line 10

def cleanup
  CoalescingPanda::LtiNonce.where("coalescing_panda_lti_account_id = ? AND timestamp < ?", b..id, 15.minutes.ago)
end