Sha256: 1c9e96c7545edc061c1114ab029a647502dcf30a7e70638629dfeeb8498a4d69

Contents?: true

Size: 468 Bytes

Versions: 6

Compression:

Stored size: 468 Bytes

Contents

class Ability
  include CanCan::Ability

  def initialize(user, ip_addess = nil)
    case user.try(:role).try(:name)
    when 'Administrator'
      can :manage, NewsFeed
      can :manage, NewsPost
    when 'Librarian'
      can :read, NewsFeed
      can :read, NewsPost
    when 'User'
      can :read, NewsPost do |news_post|
        !news_post.draft?
      end
    else
      can :read, NewsPost do |news_post|
        !news_post.draft?
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
enju_news-0.1.0.pre2 spec/dummy/app/models/ability.rb
enju_news-0.1.0.pre spec/dummy/app/models/ability.rb
enju_news-0.0.5 spec/dummy/app/models/ability.rb
enju_news-0.0.4 spec/dummy/app/models/ability.rb
enju_news-0.0.3 spec/dummy/app/models/ability.rb
enju_news-0.0.2 spec/dummy/app/models/ability.rb