class Ability 
  include CanCan::Ability

  def initialize(user)
    if user.is_superadmin?
      can :manage, :all
    else
      can :read, :all
      cannot :manage, [Statistic, Admin]
      if user.is_provider_admin? || user.is_editor_admin?
        can :manage, Statistic
      elsif user.is_provider_user?
        can :manage, Statistic
      elsif user.is_editor_user?
        cannot :read, [Statistic, Admin]
      elsif user.is_photographer? || user.is_photographer_admin?
        can :manage, Statistic
      elsif user.is_deactivated?
        cannot :manage, all
      end
    end
  end
end
