Sha256: 9da2dfa986f08dd6904ed4fc921eee1c5b923f325dd27d3275ef8f20c35bd536

Contents?: true

Size: 722 Bytes

Versions: 4

Compression:

Stored size: 722 Bytes

Contents

class Ishapi::Ability
  include ::CanCan::Ability

  def initialize user

    #
    # signed in user
    #
    unless user.blank?

      if user.profile && user.profile.manager?
        can :manage, :all
      end

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

    can [ :index, :show ], City
    
    can [ :show ], Gallery do |gallery|
      gallery.is_public
    end

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

    can [ :index, :show ], Site

    can [ :index ], Venue
    can [ :show ], Venue do |venue|
      venue.is_public
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ishapi-0.1.8.14 app/models/ishapi/ability.rb
ishapi-0.1.8.13 app/models/ishapi/ability.rb
ishapi-0.1.8.12 app/models/ishapi/ability.rb
ishapi-0.1.8.11 app/models/ishapi/ability.rb