Use proper lang attributes in htmls
authorTusooa Zhu <tusooa@kazv.moe>
Mon, 28 Feb 2022 06:28:23 +0000 (01:28 -0500)
committerFloatingGhost <hannah@coffee-and-dreams.uk>
Wed, 29 Jun 2022 19:44:16 +0000 (20:44 +0100)
lib/pleroma/web/gettext.ex
lib/pleroma/web/templates/feed/feed/tag.atom.eex
lib/pleroma/web/templates/layout/app.html.eex
lib/pleroma/web/templates/layout/email.html.eex

index c0ca4d0e9e82c92091fe2124f6cc9d20c67edb92..c8a739c2bdd9738f23822de36d9ef8787df68ffd 100644 (file)
@@ -25,4 +25,13 @@ defmodule Pleroma.Web.Gettext do
   See the [Gettext Docs](https://hexdocs.pm/gettext) for detailed usage.
   """
   use Gettext, otp_app: :pleroma
   See the [Gettext Docs](https://hexdocs.pm/gettext) for detailed usage.
   """
   use Gettext, otp_app: :pleroma
+
+  def language_tag do
+    # Naive implementation: HTML lang attribute uses BCP 47, which
+    # uses - as a separator.
+    # https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/lang
+
+    Gettext.get_locale()
+    |> String.replace("_", "-", global: true)
+  end
 end
 end
index 2d860f12be5246dff2851e57e691a3e5c0d26002..6d497e84c2b4bf52a7d82836151520f0b98c49cc 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 
 <?xml version="1.0" encoding="UTF-8"?>
 
-<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom"
+<feed xml:lang="<%= Gettext.language_tag() %>" xmlns="http://www.w3.org/2005/Atom"
       xmlns:thr="http://purl.org/syndication/thread/1.0"
       xmlns:georss="http://www.georss.org/georss"
       xmlns:activity="http://activitystrea.ms/spec/1.0/"
       xmlns:thr="http://purl.org/syndication/thread/1.0"
       xmlns:georss="http://www.georss.org/georss"
       xmlns:activity="http://activitystrea.ms/spec/1.0/"
index 1ede59fd850cef070e7ee4f41015426ae9fc477a..e33bada858e979173d92ef45e65c55bf3f077340 100644 (file)
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
 <!DOCTYPE html>
-<html lang="en">
+<html lang="<%= Pleroma.Web.Gettext.language_tag() %>">
   <head>
     <meta charset="utf-8">
     <meta name="viewport" content="width=device-width,initial-scale=1,minimal-ui">
   <head>
     <meta charset="utf-8">
     <meta name="viewport" content="width=device-width,initial-scale=1,minimal-ui">
index f6dcd7f0fcd6d97a75161e834e32010f3cccb7bd..087aa4fc01886eb6d7c0c14bc3d278325ebc7ede 100644 (file)
@@ -1,5 +1,5 @@
 <!DOCTYPE html>
 <!DOCTYPE html>
-<html lang="en">
+<html lang="<%= Pleroma.Web.Gettext.language_tag() %>">
   <head>
     <meta charset="utf-8">
     <title><%= @email.subject %></title>
   <head>
     <meta charset="utf-8">
     <title><%= @email.subject %></title>
@@ -7,4 +7,4 @@
   <body>
     <%= render @view_module, @view_template, assigns %>
   </body>
   <body>
     <%= render @view_module, @view_template, assigns %>
   </body>
-</html>
\ No newline at end of file
+</html>