Module: SocialStream::Oauth2Server::Ability

Defined in:
lib/social_stream/oauth2_server/ability.rb

Instance Method Summary collapse

Instance Method Details

#initialize(subject) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/social_stream/oauth2_server/ability.rb', line 4

def initialize(subject)
  super

  can :read, Site::Client

  can :create, Site::Client do |c|
    subject.present? &&
      c.author_id == subject.actor_id
  end

  can [:update, :update_secret, :destroy], Site::Client do |c|
    c.allow? subject, 'manage'
  end

  can :read, Relation::Manager
end