]> cat aescling's git repositories - mastodon.git/commitdiff
Ruby intl8n for themes
authorkibigo! <marrus-sh@users.noreply.github.com>
Thu, 7 Dec 2017 22:42:21 +0000 (14:42 -0800)
committerkibigo! <marrus-sh@users.noreply.github.com>
Sun, 10 Dec 2017 19:08:04 +0000 (11:08 -0800)
app/javascript/flavours/glitch/names.yml [new file with mode: 0644]
app/javascript/flavours/vanilla/names.yml [new file with mode: 0644]
app/javascript/skins/vanilla/win95/common.scss [moved from app/javascript/skins/vanilla/win95.scss with 100% similarity]
app/javascript/skins/vanilla/win95/names.yml [new file with mode: 0644]
app/views/settings/preferences/show.html.haml
config/initializers/locale.rb [new file with mode: 0644]

diff --git a/app/javascript/flavours/glitch/names.yml b/app/javascript/flavours/glitch/names.yml
new file mode 100644 (file)
index 0000000..b3d579c
--- /dev/null
@@ -0,0 +1,6 @@
+en:
+  flavours:
+    glitch: Glitch Edition
+  skins:
+    glitch:
+      default: Default
diff --git a/app/javascript/flavours/vanilla/names.yml b/app/javascript/flavours/vanilla/names.yml
new file mode 100644 (file)
index 0000000..8816fcb
--- /dev/null
@@ -0,0 +1,6 @@
+en:
+  flavours:
+    vanilla: Vanilla Mastodon
+  skins:
+    vanilla:
+      default: Default
diff --git a/app/javascript/skins/vanilla/win95/names.yml b/app/javascript/skins/vanilla/win95/names.yml
new file mode 100644 (file)
index 0000000..2083084
--- /dev/null
@@ -0,0 +1,4 @@
+en:
+  skins:
+    vanilla:
+      win95: Masto95
index 9564c039919d13772b2bd5f46a66f83cded8c733..e2e48a69987c66b0b7caf210c40184b4e621728b 100644 (file)
@@ -27,8 +27,8 @@
 
   .fields-group
     - if Themes.instance.flavours.size > 1
-      = f.input :setting_flavour, collection: Themes.instance.flavours, label_method: lambda { |flavour| I18n.t("themes.#{flavour}", default: flavour) }, wrapper: :with_label, include_blank: false
-      = f.input :setting_skin, collection: Themes.instance.skins_for(current_flavour), label_method: lambda { |skin| I18n.t("themes.#{current_flavour}.skins.#{skin}", default: skin) }, wrapper: :with_label, include_blank: false
+      = f.input :setting_flavour, collection: Themes.instance.flavours, label_method: lambda { |flavour| I18n.t("flavours.#{flavour}", default: flavour) }, wrapper: :with_label, include_blank: false
+      = f.input :setting_skin, collection: Themes.instance.skins_for(current_flavour), label_method: lambda { |skin| I18n.t("skins.#{current_flavour}.#{skin}", default: skin) }, wrapper: :with_label, include_blank: false
 
     = f.input :setting_unfollow_modal, as: :boolean, wrapper: :with_label
     = f.input :setting_boost_modal, as: :boolean, wrapper: :with_label
diff --git a/config/initializers/locale.rb b/config/initializers/locale.rb
new file mode 100644 (file)
index 0000000..04ed316
--- /dev/null
@@ -0,0 +1,6 @@
+# frozen_string_literal: true
+
+I18n.load_path += Dir[Rails.root.join('app', 'javascript', 'flavours', '*', 'names.{rb,yml}').to_s]
+I18n.load_path += Dir[Rails.root.join('app', 'javascript', 'flavours', '*', 'names', '*.{rb,yml}').to_s]
+I18n.load_path += Dir[Rails.root.join('app', 'javascript', 'skins', '*', '*', 'names.{rb,yml}').to_s]
+I18n.load_path += Dir[Rails.root.join('app', 'javascript', 'skins', '*', '*', 'names', '*.{rb,yml}').to_s]