aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorKir2011-11-21 11:48:10 +0400
committerKir2011-11-21 11:48:10 +0400
commit580bc3eaad6ed578b5d33256e6eda3e282aa91cd (patch)
tree0ae8321fe716504c2050e3bbc0294844ee3f18aa /lib
parentbd1ee727b44381f1755858b7e3c0bb7ddf87b0cd (diff)
downloadinboxes-580bc3eaad6ed578b5d33256e6eda3e282aa91cd.tar.bz2
Integration with Cancan
Diffstat (limited to 'lib')
-rw-r--r--lib/inboxes.rb2
-rw-r--r--lib/inboxes/ability.rb6
-rw-r--r--lib/inboxes/engine.rb7
-rw-r--r--lib/inboxes/railtie.rb5
4 files changed, 19 insertions, 1 deletions
diff --git a/lib/inboxes.rb b/lib/inboxes.rb
index 133aa9c..f1b9c7a 100644
--- a/lib/inboxes.rb
+++ b/lib/inboxes.rb
@@ -1,8 +1,10 @@
require "inboxes/version"
require "inboxes/railtie"
+require "inboxes/ability"
require "inboxes/engine"
require "inboxes/active_record_extension"
+
module Inboxes
def self.configure(&block)
diff --git a/lib/inboxes/ability.rb b/lib/inboxes/ability.rb
index 18fca88..9f74d78 100644
--- a/lib/inboxes/ability.rb
+++ b/lib/inboxes/ability.rb
@@ -1,9 +1,13 @@
+require "cancan"
+
module Inboxes
class InboxesAbility
- include CanCan::Ability
+ include ::CanCan::Ability
def initialize(user)
# Discussion
+ # raise "Registered!"
+
can [:index, :create], Discussion
can :read, Discussion do |discussion|
discussion.can_participate?(user)
diff --git a/lib/inboxes/engine.rb b/lib/inboxes/engine.rb
index 4395cde..564456c 100644
--- a/lib/inboxes/engine.rb
+++ b/lib/inboxes/engine.rb
@@ -2,8 +2,15 @@ require "inboxes/ability"
module Inboxes
class Engine < ::Rails::Engine
+ # raise "Engine Activated"
def self.activate
Ability.register_ability(InboxesAbility)
+ # raise "Activated"
end
+
+ def load_tasks
+ end
+
+ config.to_prepare &method(:activate).to_proc
end
end \ No newline at end of file
diff --git a/lib/inboxes/railtie.rb b/lib/inboxes/railtie.rb
index 9e5435e..673784e 100644
--- a/lib/inboxes/railtie.rb
+++ b/lib/inboxes/railtie.rb
@@ -1,4 +1,5 @@
require 'rails'
+require "inboxes/ability"
module Inboxes
class Railtie < ::Rails::Railtie
@@ -14,5 +15,9 @@ module Inboxes
# app.config.middleware.insert_before "::Rails::Rack::Logger", "Inboxes::Middleware"
end
+
+ # def self.activate
+ # Ability.register_ability(InboxesAbility)
+ # end
end
end \ No newline at end of file