Add Discourse plugin
This commit is contained in:
parent
f8662c9184
commit
0edc780ec7
16 changed files with 221 additions and 8 deletions
8
plugins/discourse/lib/foodsoft_discourse.rb
Normal file
8
plugins/discourse/lib/foodsoft_discourse.rb
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
require 'foodsoft_discourse/engine'
|
||||
require 'foodsoft_discourse/redirect_to_login'
|
||||
|
||||
module FoodsoftDiscourse
|
||||
def self.enabled?
|
||||
FoodsoftConfig[:discourse_url] && FoodsoftConfig[:discourse_sso_secret]
|
||||
end
|
||||
end
|
||||
4
plugins/discourse/lib/foodsoft_discourse/engine.rb
Normal file
4
plugins/discourse/lib/foodsoft_discourse/engine.rb
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
module FoodsoftDiscourse
|
||||
class Engine < ::Rails::Engine
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
module FoodsoftDiscourse
|
||||
|
||||
module RedirectToLogin
|
||||
def self.included(base) # :nodoc:
|
||||
base.class_eval do
|
||||
|
||||
alias orig_redirect_to_login redirect_to_login
|
||||
|
||||
def redirect_to_login(options={})
|
||||
return orig_redirect_to_login(options) unless FoodsoftDiscourse.enabled?
|
||||
redirect_to discourse_initiate_path
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
|
||||
# modify existing helper
|
||||
ActiveSupport.on_load(:after_initialize) do
|
||||
ApplicationController.send :include, FoodsoftDiscourse::RedirectToLogin
|
||||
end
|
||||
3
plugins/discourse/lib/foodsoft_discourse/version.rb
Normal file
3
plugins/discourse/lib/foodsoft_discourse/version.rb
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
module FoodsoftDiscourse
|
||||
VERSION = "0.0.1"
|
||||
end
|
||||
Loading…
Add table
Add a link
Reference in a new issue