Sha256: 11c6b66158d82300a6dffd567fb5787a0d47f54cc3b5e94543464a0c2dce3a54
Contents?: true
Size: 1.25 KB
Versions: 97
Compression:
Stored size: 1.25 KB
Contents
module Avo module Licensing class License attr_accessor :id attr_accessor :response attr_accessor :valid attr_accessor :payload def initialize(response) @response = response @id = response["id"] @valid = response["valid"] @payload = response["payload"] end def valid? valid end def invalid? !valid? end def pro? id == "pro" end def error @response["error"] end def properties @response.slice("valid", "id", "error").symbolize_keys end def abilities [] end def can(ability) abilities.include? ability end def cant(ability) !can ability end alias_method :has, :can alias_method :lacks, :cant # Returns if has ability and if is a valid license or app is in development. def has_with_trial(ability) can(ability) && (valid? || Rails.env.development? || Rails.env.test?) end # Returns if lacks ability and if is a valid license or app is in development. def lacks_with_trial(ability) !can(ability) && (valid? || Rails.env.development? || Rails.env.test?) end end end end
Version data entries
97 entries across 97 versions & 1 rubygems