Sha256: 5209e0a71c42dee8bea63e75be69b31430c47773dd329ef67271c47f82c3e65f

Contents?: true

Size: 605 Bytes

Versions: 21

Compression:

Stored size: 605 Bytes

Contents

class IshManager::Ability
  include ::CanCan::Ability

  def initialize user 

    #
    # signed in user
    #
    unless user.blank?

      if user.profile && user.profile.manager?
        can :manage, :all
        can [ :home ], ::Manager
        can :destroy, ::Photo
      end

      can [ :show ], ::Gallery do |gallery|
        gallery.user == user
      end
      
    end
    #
    # anonymous user
    #
    user ||= ::User.new
    
    can [ :show ], ::Gallery do |gallery|
      gallery.is_public
    end

    can [ :show ], ::Report do |report|
      report.is_public
    end
    
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
ish_manager-0.1.8.36 app/models/ish_manager/ability.rb
ish_manager-0.1.8.35 app/models/ish_manager/ability.rb
ish_manager-0.1.8.34 app/models/ish_manager/ability.rb
ish_manager-0.1.8.33 app/models/ish_manager/ability.rb
ish_manager-0.1.8.32 app/models/ish_manager/ability.rb
ish_manager-0.1.8.31 app/models/ish_manager/ability.rb
ish_manager-0.1.8.30 app/models/ish_manager/ability.rb
ish_manager-0.1.8.29 app/models/ish_manager/ability.rb
ish_manager-0.1.8.28 app/models/ish_manager/ability.rb
ish_manager-0.1.8.27 app/models/ish_manager/ability.rb
ish_manager-0.1.8.26 app/models/ish_manager/ability.rb
ish_manager-0.1.8.25 app/models/ish_manager/ability.rb
ish_manager-0.1.8.24 app/models/ish_manager/ability.rb
ish_manager-0.1.8.23 app/models/ish_manager/ability.rb
ish_manager-0.1.8.22 app/models/ish_manager/ability.rb
ish_manager-0.1.8.21 app/models/ish_manager/ability.rb
ish_manager-0.1.8.20 app/models/ish_manager/ability.rb
ish_manager-0.1.8.19 app/models/ish_manager/ability.rb
ish_manager-0.1.8.18 app/models/ish_manager/ability.rb
ish_manager-0.1.8.16 app/models/ish_manager/ability.rb