Module: Logobox

Defined in:
lib/logobox.rb,
lib/logobox/version.rb

Defined Under Namespace

Classes: LogoNotFound

Constant Summary collapse

LOGO_SIZES =
[:small, :medium, :big]
VERSION =
"0.0.1"

Class Method Summary collapse

Class Method Details

.generate_logo_url(ico, size = nil) ⇒ Object



8
9
10
11
12
13
14
15
# File 'lib/logobox.rb', line 8

def self.generate_logo_url(ico, size = nil)
  if size
    fail ArgumentError, 'size must be one of :' + LOGO_SIZES.join(', :') unless LOGO_SIZES.include?(size)
    "http://www.logobox.cz/getimage.ashx?id=CZ#{ico}?size=#{size}"
  else
    "http://www.logobox.cz/getimage.ashx?id=CZ#{ico}"
  end
end

.generate_logo_url!(ico, size = nil) ⇒ Object



17
18
19
20
21
22
23
24
# File 'lib/logobox.rb', line 17

def self.generate_logo_url!(ico, size = nil)
  fail ArgumentError, 'ico is invalid' unless valid_ico?(ico.to_s)
  fail LogoNotFound, 'logo does not exists' unless logo_exists?(ico.to_s)

  result = generate_logo_url(ico, size)
  fail ArgumentError unless result
  result
end

.logo_exists?(ico) ⇒ Boolean

Returns:

  • (Boolean)


26
27
28
29
30
# File 'lib/logobox.rb', line 26

def self.logo_exists?(ico)
  uri = URI("http://www.logobox.cz/getimage.ashx?id=CZ#{ico}&error404=true")
  result = Net::HTTP.get_response uri
  result.code == '200'
end