From 9489173082227a9e808fd2598d98779e88f54b51 Mon Sep 17 00:00:00 2001
From: Toby Zerner <toby.zerner@gmail.com>
Date: Fri, 14 Aug 2015 12:50:39 +0930
Subject: [PATCH] Fix some front-end bugs

---
 js/forum/src/components/UserPage.js | 2 ++
 js/lib/Model.js                     | 9 +++++----
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/js/forum/src/components/UserPage.js b/js/forum/src/components/UserPage.js
index 95c3db142..23248e4f1 100644
--- a/js/forum/src/components/UserPage.js
+++ b/js/forum/src/components/UserPage.js
@@ -83,6 +83,8 @@ export default class UserPage extends Component {
     this.user = user;
 
     app.setTitle(user.username());
+
+    m.redraw();
   }
 
   /**
diff --git a/js/lib/Model.js b/js/lib/Model.js
index 327e569b5..cd851ac18 100644
--- a/js/lib/Model.js
+++ b/js/lib/Model.js
@@ -86,11 +86,11 @@ export default class Model {
         // For every item in a second-level object, we want to check if we've
         // been handed a Model instance. If so, we will convert it to a
         // relationship data object.
-        for (const deepKey in data[key]) {
-          if (data[key][deepKey] instanceof Model) {
-            data[key][deepKey] = {data: Model.getRelationshipData(data[key][deepKey])};
+        for (const innerKey in data[key]) {
+          if (data[key][innerKey] instanceof Model) {
+            data[key][innerKey] = {data: Model.getRelationshipData(data[key][innerKey])};
           }
-          this.data[key][deepKey] = data[key][deepKey];
+          this.data[key][innerKey] = data[key][innerKey];
         }
       } else {
         this.data[key] = data[key];
@@ -162,6 +162,7 @@ export default class Model {
       // model exists now (if it didn't already), and we'll push the data that
       // the API returned into the store.
       payload => {
+        this.store.data[payload.data.type] = this.store.data[payload.data.type] || {};
         this.store.data[payload.data.type][payload.data.id] = this;
         return this.store.pushPayload(payload);
       },