about summary refs log tree commit diff
path: root/app/views/home
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2017-01-09 14:00:55 +0100
committerEugen Rochko <eugen@zeonfederated.com>2017-01-09 14:00:55 +0100
commit75f80bef107cfe9e9c0e6ba3dc51ef86c89e40cc (patch)
treed507368baac4e85d417af4c64ecc0d9c43a65963 /app/views/home
parent23ebf60b95984764992c4b356048786ed0ab2953 (diff)
Persist UI settings, add missing localizations for German
Diffstat (limited to 'app/views/home')
-rw-r--r--app/views/home/index.html.haml17
-rw-r--r--app/views/home/initial_state.json.rabl24
2 files changed, 25 insertions, 16 deletions
diff --git a/app/views/home/index.html.haml b/app/views/home/index.html.haml
index b4e935041..730249129 100644
--- a/app/views/home/index.html.haml
+++ b/app/views/home/index.html.haml
@@ -1,21 +1,6 @@
 - content_for :header_tags do
   :javascript
-    window.INITIAL_STATE = {
-      "meta": {
-        "access_token": "#{@token}",
-        "locale": "#{I18n.locale}",
-        "me": #{current_account.id}
-      },
-
-      "compose": {
-        "me": #{current_account.id},
-        "private": #{current_account.locked?}
-      },
-
-      "accounts": {
-        #{current_account.id}: #{render(file: 'api/v1/accounts/show', locals: { account: current_user.account }, formats: :json)}
-      }
-    };
+    window.INITIAL_STATE = #{render(file: 'home/initial_state', formats: :json)}
 
   = javascript_include_tag 'application'
 
diff --git a/app/views/home/initial_state.json.rabl b/app/views/home/initial_state.json.rabl
new file mode 100644
index 000000000..0e9736f5f
--- /dev/null
+++ b/app/views/home/initial_state.json.rabl
@@ -0,0 +1,24 @@
+object false
+
+node(:meta) {
+  {
+    access_token: @token,
+    locale: I18n.locale,
+    me: current_account.id,
+  }
+}
+
+node(:compose) {
+  {
+    me: current_account.id,
+    private: current_account.locked?,
+  }
+}
+
+node(:accounts) {
+  {
+    current_account.id => partial('api/v1/accounts/show', object: current_account),
+  }
+}
+
+node(:settings) { @web_settings }