@@ -3,6 +3,7 @@ import PT from "prop-types";
3
3
import _ from "lodash" ;
4
4
import moment from "moment" ;
5
5
import Panel from "../../../components/Panel" ;
6
+ import ChallengeError from "../Listing/errors/ChallengeError" ;
6
7
import Pagination from "../../../components/Pagination" ;
7
8
import ChallengeItem from "./ChallengeItem" ;
8
9
import TextInput from "../../../components/TextInput" ;
@@ -101,38 +102,39 @@ const Listing = ({
101
102
</ div >
102
103
</ div >
103
104
</ Panel . Header >
104
- < Panel . Body >
105
- { challenges . map ( ( challenge , index ) => (
106
- < div key = { challenge . id } styleName = { index % 2 === 0 ? "even" : "odd" } >
107
- < ChallengeItem
108
- challenge = { challenge }
109
- onClickTag = { ( tag ) => {
110
- const filterChange = { tags : [ tag ] } ;
111
- updateFilter ( filterChange ) ;
112
- } }
113
- onClickTrack = { ( track ) => {
114
- const filterChange = { tracks : [ track ] } ;
105
+ { challenges . length ?
106
+ < Panel . Body >
107
+ { challenges . map ( ( challenge , index ) => (
108
+ < div key = { challenge . id } styleName = { index % 2 === 0 ? "even" : "odd" } >
109
+ < ChallengeItem
110
+ challenge = { challenge }
111
+ onClickTag = { ( tag ) => {
112
+ const filterChange = { tags : [ tag ] } ;
113
+ updateFilter ( filterChange ) ;
114
+ } }
115
+ onClickTrack = { ( track ) => {
116
+ const filterChange = { tracks : [ track ] } ;
117
+ updateFilter ( filterChange ) ;
118
+ } }
119
+ isLoggedIn = { isLoggedIn }
120
+ />
121
+ </ div >
122
+ ) ) }
123
+ < div styleName = "pagination" >
124
+ < Pagination
125
+ length = { total }
126
+ pageSize = { perPage }
127
+ pageIndex = { utils . pagination . pageToPageIndex ( page ) }
128
+ onChange = { ( event ) => {
129
+ const filterChange = {
130
+ page : utils . pagination . pageIndexToPage ( event . pageIndex ) ,
131
+ perPage : event . pageSize ,
132
+ } ;
115
133
updateFilter ( filterChange ) ;
116
134
} }
117
- isLoggedIn = { isLoggedIn }
118
135
/>
119
136
</ div >
120
- ) ) }
121
- < div styleName = "pagination" >
122
- < Pagination
123
- length = { total }
124
- pageSize = { perPage }
125
- pageIndex = { utils . pagination . pageToPageIndex ( page ) }
126
- onChange = { ( event ) => {
127
- const filterChange = {
128
- page : utils . pagination . pageIndexToPage ( event . pageIndex ) ,
129
- perPage : event . pageSize ,
130
- } ;
131
- updateFilter ( filterChange ) ;
132
- } }
133
- />
134
- </ div >
135
- </ Panel . Body >
137
+ </ Panel . Body > : < ChallengeError /> }
136
138
</ Panel >
137
139
) ;
138
140
} ;
0 commit comments