class MdlSearch::Icon

Attributes

groups[RW]
icons[RW]
codepoint[RW]
group[RW]
is_new[RW]
key[RW]
keywords[RW]
name[RW]

Public Class Methods

all() click to toggle source
# File lib/mdl_search/icon.rb, line 51
def all
  icons
end
new(key, name, codepoint, group, keywords, is_new) click to toggle source
# File lib/mdl_search/icon.rb, line 8
def initialize(key, name, codepoint, group, keywords, is_new)
  @key = key
  @name = name
  @codepoint = codepoint
  @group = group
  @keywords = keywords
  @is_new = is_new
end
where(hash) click to toggle source
# File lib/mdl_search/icon.rb, line 55
def where(hash)
  return self.all if hash.nil?
  self.all.select do |icon|
    hash.all? do |key, val|
      icon.include_value?(key, val)
    end
  end
end

Public Instance Methods

classic_browser_key() click to toggle source
# File lib/mdl_search/icon.rb, line 21
def classic_browser_key
  "&#x#{@codepoint};"
end
hit_query?(value, query) click to toggle source
# File lib/mdl_search/icon.rb, line 34
def hit_query?(value, query)
  case query.class.name
  when 'String'
    value.to_s.downcase.include? query.downcase
  when 'TrueClass', 'FalseClass'
    value == query
  when 'Array'
    query.any? { |q| value.downcase.include? q.downcase }
  else
    false
  end
end
include_value?(key, query) click to toggle source
# File lib/mdl_search/icon.rb, line 25
def include_value?(key, query)
  value_of_key = instance_variable_get "@#{key}"
  if value_of_key.is_a? Array
    value_of_key.any? { |v| hit_query? v, query }
  else
    hit_query? value_of_key, query
  end
end
modern_browser_key() click to toggle source
# File lib/mdl_search/icon.rb, line 17
def modern_browser_key
  @key
end