about summary refs log tree commit diff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/assets/javascripts/components/containers/mastodon.jsx6
-rw-r--r--app/assets/javascripts/components/features/home_timeline/index.jsx12
-rw-r--r--app/assets/javascripts/components/features/mentions_timeline/index.jsx12
-rw-r--r--app/assets/javascripts/components/features/public_timeline/index.jsx4
-rw-r--r--app/helpers/home_helper.rb8
5 files changed, 27 insertions, 15 deletions
diff --git a/app/assets/javascripts/components/containers/mastodon.jsx b/app/assets/javascripts/components/containers/mastodon.jsx
index 1327dba3e..e5c0887a9 100644
--- a/app/assets/javascripts/components/containers/mastodon.jsx
+++ b/app/assets/javascripts/components/containers/mastodon.jsx
@@ -41,12 +41,6 @@ const Mastodon = React.createClass({
     store.dispatch(setAccessToken(this.props.token));
     store.dispatch(setAccountSelf(JSON.parse(this.props.account)));
 
-    for (var timelineType in this.props.timelines) {
-      if (this.props.timelines.hasOwnProperty(timelineType)) {
-        store.dispatch(refreshTimelineSuccess(timelineType, JSON.parse(this.props.timelines[timelineType])));
-      }
-    }
-
     if (typeof App !== 'undefined') {
       this.subscription = App.cable.subscriptions.create('TimelineChannel', {
 
diff --git a/app/assets/javascripts/components/features/home_timeline/index.jsx b/app/assets/javascripts/components/features/home_timeline/index.jsx
index 1f4b25450..9be3f3964 100644
--- a/app/assets/javascripts/components/features/home_timeline/index.jsx
+++ b/app/assets/javascripts/components/features/home_timeline/index.jsx
@@ -1,11 +1,21 @@
+import { connect }         from 'react-redux';
 import PureRenderMixin     from 'react-addons-pure-render-mixin';
 import StatusListContainer from '../ui/containers/status_list_container';
 import Column              from '../ui/components/column';
+import { refreshTimeline } from '../../actions/timelines';
 
 const HomeTimeline = React.createClass({
 
+  propTypes: {
+    dispatch: React.PropTypes.func.isRequired
+  },
+
   mixins: [PureRenderMixin],
 
+  componentWillMount () {
+    this.props.dispatch(refreshTimeline('home'));
+  },
+
   render () {
     return (
       <Column icon='home' heading='Home'>
@@ -16,4 +26,4 @@ const HomeTimeline = React.createClass({
 
 });
 
-export default HomeTimeline;
+export default connect()(HomeTimeline);
diff --git a/app/assets/javascripts/components/features/mentions_timeline/index.jsx b/app/assets/javascripts/components/features/mentions_timeline/index.jsx
index d9d0963d0..a1b511d3e 100644
--- a/app/assets/javascripts/components/features/mentions_timeline/index.jsx
+++ b/app/assets/javascripts/components/features/mentions_timeline/index.jsx
@@ -1,11 +1,21 @@
+import { connect }         from 'react-redux';
 import PureRenderMixin     from 'react-addons-pure-render-mixin';
 import StatusListContainer from '../ui/containers/status_list_container';
 import Column              from '../ui/components/column';
+import { refreshTimeline } from '../../actions/timelines';
 
 const MentionsTimeline = React.createClass({
 
+  propTypes: {
+    dispatch: React.PropTypes.func.isRequired
+  },
+
   mixins: [PureRenderMixin],
 
+  componentWillMount () {
+    this.props.dispatch(refreshTimeline('mentions'));
+  },
+
   render () {
     return (
       <Column icon='at' heading='Mentions'>
@@ -16,4 +26,4 @@ const MentionsTimeline = React.createClass({
 
 });
 
-export default MentionsTimeline;
+export default connect()(MentionsTimeline);
diff --git a/app/assets/javascripts/components/features/public_timeline/index.jsx b/app/assets/javascripts/components/features/public_timeline/index.jsx
index 7d3739214..8b2a86947 100644
--- a/app/assets/javascripts/components/features/public_timeline/index.jsx
+++ b/app/assets/javascripts/components/features/public_timeline/index.jsx
@@ -9,6 +9,10 @@ import {
 
 const PublicTimeline = React.createClass({
 
+  propTypes: {
+    dispatch: React.PropTypes.func.isRequired
+  },
+
   mixins: [PureRenderMixin],
 
   componentWillMount () {
diff --git a/app/helpers/home_helper.rb b/app/helpers/home_helper.rb
index 6b5151777..86cce4c01 100644
--- a/app/helpers/home_helper.rb
+++ b/app/helpers/home_helper.rb
@@ -2,13 +2,7 @@ module HomeHelper
   def default_props
     {
       token: @token,
-
-      account: render(file: 'api/v1/accounts/show', locals: { account: current_user.account }, formats: :json),
-
-      timelines: {
-        home: render(file: 'api/v1/statuses/index', locals: { statuses: @home }, formats: :json),
-        mentions: render(file: 'api/v1/statuses/index', locals: { statuses: @mentions }, formats: :json)
-      }
+      account: render(file: 'api/v1/accounts/show', locals: { account: current_user.account }, formats: :json)
     }
   end
 end