@@ -8,6 +8,8 @@ import PT from 'prop-types';
8
8
import { Link } from 'react-router-dom' ;
9
9
import { getRatingColor } from 'utils/tc' ;
10
10
import Th from 'assets/images/th.svg' ;
11
+ import DefaultPortrait from 'assets/images/ico-user-default.svg' ;
12
+ import LeftArrow from 'assets/images/arrow-prev.svg' ;
11
13
import {
12
14
shouldShowGraph , getHistory , getSubTrackStats , getSummary , getDetails ,
13
15
} from 'utils/memberStats' ;
@@ -64,6 +66,11 @@ class ProfileStats extends React.Component {
64
66
const subTrackStats = getSubTrackStats ( stats , track , subTrack ) ;
65
67
const subTrackSummary = getSummary ( stats , track , subTrack ) || [ ] ;
66
68
const subTrackDetails = getDetails ( stats , track , subTrack ) || [ ] ;
69
+ const ratingObj = subTrackSummary . filter ( k => k . label === 'rating' ) ;
70
+ let subTrackRating = ratingObj && ratingObj [ 0 ] ? ratingObj [ 0 ] . value : 0 ;
71
+ if ( subTrackRating === 0 || ! subTrackRating ) { // if subtrack has no rating, pick default rating
72
+ subTrackRating = info . maxRating ? info . maxRating . rating : 0 ;
73
+ }
67
74
68
75
if ( track === 'DEVELOP' ) {
69
76
const reliability = subTrackSummary . find ( stat => stat . label === 'reliability' ) ;
@@ -85,6 +92,10 @@ class ProfileStats extends React.Component {
85
92
< div styleName = "page-state-header" >
86
93
< header >
87
94
< div styleName = "page-info" >
95
+ < Link to = { `/members/${ handleParam } ` } >
96
+ < LeftArrow styleName = "left-arrow" />
97
+ </ Link >
98
+
88
99
< h1 >
89
100
{ subTrack . replace ( 'FIRST_2_FINISH' , 'FIRST2FINISH' ) . replace ( / _ / g, ' ' ) }
90
101
</ h1 >
@@ -128,6 +139,25 @@ Active Challenges
128
139
}
129
140
</ ul >
130
141
< ul styleName = "subtrack-stats" >
142
+ {
143
+ subTrackSummary
144
+ && (
145
+ < li key = { info . handle } >
146
+ < div >
147
+ { info . photoURL ? < img src = { info . photoURL } onError = { this . loadImageError } styleName = "profile-circle" alt = "Member Portait" /> : < DefaultPortrait styleName = "profile-circle" /> }
148
+ </ div >
149
+ < div
150
+ styleName = "valueHandle"
151
+ className = { subTrackRating ? styles . rating : '' }
152
+ style = { { color : subTrackRating ? getRatingColor ( parseInt ( subTrackRating . toString ( ) . replace ( / \D / g, '' ) , 10 ) ) : undefined } }
153
+ >
154
+ < Link to = { `/members/${ info . handle } ` } >
155
+ { info . handle || '-' }
156
+ </ Link >
157
+ </ div >
158
+ </ li >
159
+ )
160
+ }
131
161
{
132
162
subTrackSummary . map ( ( { label, value, link } ) => (
133
163
< li key = { label } >
0 commit comments