Class: Onebox::Engine::GoogleMapsOnebox

Inherits:
Object
  • Object
show all
Includes:
Onebox::Engine
Defined in:
lib/onebox/engine/google_maps_onebox.rb

Constant Summary

Constants included from Onebox::Engine

DEFAULT

Instance Attribute Summary

Attributes included from Onebox::Engine

#errors, #options, #timeout, #uri, #url

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Onebox::Engine

all_iframe_origins, engines, included, origins_to_regexes

Constructor Details

#initialize(url, timeout = nil) ⇒ GoogleMapsOnebox

Returns a new instance of GoogleMapsOnebox.



42
43
44
45
46
47
# File 'lib/onebox/engine/google_maps_onebox.rb', line 42

def initialize(url, timeout = nil)
  super
  resolve_url!
rescue Net::HTTPServerException, Timeout::Error, Net::HTTPError, Errno::ECONNREFUSED, RuntimeError => err
  raise ArgumentError, "malformed url or unresolveable: #{err.message}"
end

Class Method Details

.===(other) ⇒ Object



9
10
11
12
13
14
15
# File 'lib/onebox/engine/google_maps_onebox.rb', line 9

def ===(other)
  if other.kind_of? URI
    @@matchers && @@matchers.any? { |m| other.to_s =~ m[:regexp] }
  else
    super
  end
end

Instance Method Details

#placeholder_htmlObject



57
58
59
# File 'lib/onebox/engine/google_maps_onebox.rb', line 57

def placeholder_html
  ::Onebox::Helpers.map_placeholder_html
end

#streetview?Boolean

Returns:

  • (Boolean)


49
50
51
# File 'lib/onebox/engine/google_maps_onebox.rb', line 49

def streetview?
  !!@streetview
end

#to_htmlObject



53
54
55
# File 'lib/onebox/engine/google_maps_onebox.rb', line 53

def to_html
  "<div class='maps-onebox'><iframe src=\"#{link}\" width=\"690\" height=\"400\" frameborder=\"0\" style=\"border:0\">#{placeholder_html}</iframe></div>"
end