diff --git a/js/components/piece_list.js b/js/components/piece_list.js index 8acfd6bd..a26a75ae 100644 --- a/js/components/piece_list.js +++ b/js/components/piece_list.js @@ -20,7 +20,7 @@ import AppConstants from '../constants/application_constants'; let PieceList = React.createClass({ propTypes: { - query: React.PropTypes.object + redirectTo: React.PropTypes.string }, mixins: [Router.Navigation, Router.State], @@ -30,7 +30,7 @@ let PieceList = React.createClass({ }, componentDidMount() { - let page = this.props.query.page || 1; + let page = this.getQuery().page || 1; PieceListStore.listen(this.onChange); if (this.state.pieceList.length === 0){ PieceListActions.fetchPieceList(page, this.state.pageSize, this.state.search, this.state.orderBy, this.state.orderAsc) @@ -38,6 +38,12 @@ let PieceList = React.createClass({ } }, + componentDidUpdate() { + if (this.props.redirectTo && this.state.pieceListCount === 0) { + this.transitionTo(this.props.redirectTo); + } + }, + componentWillUnmount() { PieceListStore.unlisten(this.onChange); }, @@ -67,7 +73,7 @@ let PieceList = React.createClass({ }, getPagination() { - let currentPage = parseInt(this.props.query.page, 10) || 1; + let currentPage = parseInt(this.getQuery().page, 10) || 1; let totalPages = Math.ceil(this.state.pieceListCount / this.state.pageSize); if (this.state.pieceListCount > 10) { diff --git a/js/components/whitelabel/prize/components/piece_list.js b/js/components/whitelabel/prize/components/piece_list.js new file mode 100644 index 00000000..8b5a7a34 --- /dev/null +++ b/js/components/whitelabel/prize/components/piece_list.js @@ -0,0 +1,15 @@ +'use strict'; + +import React from 'react'; +import PieceList from '../../../piece_list'; + + +let PrizePieceList = React.createClass({ + render() { + return ( + + ); + } +}); + +export default PrizePieceList; diff --git a/js/components/whitelabel/prize/routes.js b/js/components/whitelabel/prize/routes.js index d9b88c14..10f9d000 100644 --- a/js/components/whitelabel/prize/routes.js +++ b/js/components/whitelabel/prize/routes.js @@ -8,7 +8,7 @@ import LoginContainer from './components/login_container'; import SignupContainer from './components/signup_container'; import PasswordResetContainer from '../../../components/password_reset_container'; import RegisterPiece from '../../../components/register_piece'; -import PieceList from '../../../components/piece_list'; +import PrizePieceList from './components/piece_list'; import App from './app'; import AppConstants from '../../../constants/application_constants'; @@ -25,7 +25,7 @@ function getRoutes(commonRoutes) { - + ); }