]> git.openstreetmap.org Git - rails.git/blobdiff - app/helpers/open_graph_helper.rb
Merge remote-tracking branch 'upstream/pull/4882'
[rails.git] / app / helpers / open_graph_helper.rb
index e21a5648a7c3be9f4482855d657381215915b076..0ce4d626707a49c5d6737cc8f578d8b8d52cbf5b 100644 (file)
@@ -1,17 +1,16 @@
 module OpenGraphHelper
-  def opengraph_tags(title = nil)
+  def opengraph_tags(title = nil, og_image = nil)
     tags = {
       "og:site_name" => t("layouts.project_name.title"),
-      "og:title" => [t("layouts.project_name.title"), title].compact.join(" | "),
+      "og:title" => [title, t("layouts.project_name.title")].compact.join(" | "),
       "og:type" => "website",
-      "og:image" => image_path("osm_logo_256.png", :host => SERVER_URL, :protocol => "http"),
-      "og:image:secure_url" => image_path("osm_logo_256.png", :host => SERVER_URL, :protocol => "https"),
-      "og:url" => url_for(:host => SERVER_URL),
+      "og:image" => og_image ? URI.join(root_url, og_image) : image_url("osm_logo_256.png"),
+      "og:url" => url_for(:only_path => false),
       "og:description" => t("layouts.intro_text")
     }
 
-    tags.map do |property, content|
-      tag(:meta, :property => property, :content => content)
-    end.join("").html_safe
+    safe_join(tags.map do |property, content|
+      tag.meta(:property => property, :content => content)
+    end, "\n")
   end
 end