Sometimes we're interpolating a link inside a translation, and marking the whole translations as HTML safe. However, some translations added by admins to the database or through crowdin are not entirely under our control. Although AFAIK crowdin checks for potential cross-site scripting attacks, it's a good practice to sanitize parts of a string potentially out of our control before marking the string as HTML safe.
88 lines
4.5 KiB
Plaintext
88 lines
4.5 KiB
Plaintext
<footer>
|
|
<div class="row">
|
|
<div class="small-12 large-4 column">
|
|
<h1 class="logo">
|
|
<%= link_to t("layouts.header.open_gov", open: t("layouts.header.open")), root_path %>
|
|
</h1>
|
|
|
|
<p class="info">
|
|
<%= sanitize(t("layouts.footer.description",
|
|
open_source: link_to(t("layouts.footer.open_source"), t("layouts.footer.open_source_url"), target: "blank", rel: "nofollow"),
|
|
consul: link_to(t("layouts.footer.consul"), t("layouts.footer.consul_url"), target: "blank", rel: "nofollow"))) %>
|
|
<%= t("layouts.footer.contact_us") %>
|
|
</p>
|
|
</div>
|
|
|
|
<div class="footer-sections small-12 large-8 column">
|
|
<div class="small-12 medium-4 column">
|
|
<%= link_to t("layouts.footer.participation_title"), root_path, class: "title" %>
|
|
<p><%= t("layouts.footer.participation_text") %></p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="subfooter row">
|
|
<div class="small-12 medium-8 column">
|
|
<%= t("layouts.footer.copyright", year: Time.current.year) %> |
|
|
<ul class="no-bullet inline-block">
|
|
<li class="inline-block"><%= link_to t("layouts.footer.privacy"), page_path("privacy") %> |</li>
|
|
<li class="inline-block"><%= link_to t("layouts.footer.conditions"), page_path("conditions") %> |</li>
|
|
<li class="inline-block"><%= link_to t("layouts.footer.accessibility"), page_path("accessibility") %></li>
|
|
</ul>
|
|
</div>
|
|
|
|
<div class="small-12 medium-4 column social">
|
|
<div class="text-right">
|
|
<ul>
|
|
<% if setting["twitter_handle"] %>
|
|
<li class="inline-block">
|
|
<%= link_to "https://twitter.com/#{setting["twitter_handle"]}", target: "_blank",
|
|
title: t("shared.go_to_page") + t("social.twitter", org: setting["org_name"]) + t("shared.target_blank") do %>
|
|
<span class="show-for-sr"><%= t("social.twitter", org: setting["org_name"]) %></span>
|
|
<span class="icon-twitter" aria-hidden="true"></span>
|
|
<% end %>
|
|
</li>
|
|
<% end %>
|
|
<% if setting["facebook_handle"] %>
|
|
<li class="inline-block">
|
|
<%= link_to "https://www.facebook.com/#{setting["facebook_handle"]}/", target: "_blank",
|
|
title: t("shared.go_to_page") + t("social.facebook", org: setting["org_name"]) + t("shared.target_blank") do %>
|
|
<span class="show-for-sr"><%= t("social.facebook", org: setting["org_name"]) %></span>
|
|
<span class="icon-facebook" aria-hidden="true"></span>
|
|
<% end %>
|
|
</li>
|
|
<% end %>
|
|
<% if setting["youtube_handle"] %>
|
|
<li class="inline-block">
|
|
<%= link_to "https://www.youtube.com/#{setting["youtube_handle"]}", target: "_blank",
|
|
title: t("shared.go_to_page") + t("social.youtube", org: setting["org_name"]) + t("shared.target_blank") do %>
|
|
<span class="show-for-sr"><%= t("social.youtube", org: setting["org_name"]) %></span>
|
|
<span class="icon-youtube" aria-hidden="true"></span>
|
|
<% end %>
|
|
</li>
|
|
<% end %>
|
|
<% if setting["telegram_handle"] %>
|
|
<li class="inline-block">
|
|
<%= link_to "https://www.telegram.me/#{setting["telegram_handle"]}", target: "_blank",
|
|
title: t("shared.go_to_page") + t("social.telegram", org: setting["org_name"]) + t("shared.target_blank") do %>
|
|
<span class="show-for-sr"><%= t("social.telegram", org: setting["org_name"]) %></span>
|
|
<span class="icon-telegram" aria-hidden="true"></span>
|
|
<% end %>
|
|
</li>
|
|
<% end %>
|
|
<% if setting["instagram_handle"] %>
|
|
<li class="inline-block">
|
|
<%= link_to "https://www.instagram.com/#{setting["instagram_handle"]}", target: "_blank",
|
|
title: t("shared.go_to_page") + t("social.instagram", org: setting["org_name"]) + t("shared.target_blank") do %>
|
|
<span class="show-for-sr"><%= t("social.instagram", org: setting["org_name"]) %></span>
|
|
<span class="icon-instagram" aria-hidden="true"></span>
|
|
<% end %>
|
|
</li>
|
|
<% end %>
|
|
<%= raw content_block("footer", I18n.locale) %>
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</footer>
|