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.3"

Class Method Summary collapse

Class Method Details

.generate_logo_url(ico, size = nil) ⇒ Object



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

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



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

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

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

.logo_exists?(ico) ⇒ Boolean



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

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