Files
freeCodeCamp/common/app/routes/Jobs/components/ShowJob.jsx

73 lines
1.6 KiB
JavaScript
Raw Normal View History

2015-09-26 22:23:56 -07:00
import React, { PropTypes } from 'react';
import { Row, Thumbnail, Panel, Well } from 'react-bootstrap';
import moment from 'moment';
2015-10-11 20:25:09 -07:00
const defaultImage =
'https://pbs.twimg.com/' +
'profile_images/562385977390272512/AK29YaTf_400x400.png';
2015-09-26 22:23:56 -07:00
const thumbnailStyle = {
backgroundColor: 'white',
maxHeight: '100px',
maxWidth: '100px'
};
export default React.createClass({
displayName: 'ShowJob',
propTypes: {
job: PropTypes.object,
params: PropTypes.object
},
renderHeader({ company, position }) {
return (
<div>
<h4 style={{ display: 'inline-block' }}>{ company }</h4>
<h5
className='pull-right hidden-xs hidden-md'
style={{ display: 'inline-block' }}>
{ position }
</h5>
</div>
);
},
render() {
const { job = {} } = this.props;
const {
logo,
position,
city,
company,
state,
email,
phone,
postedOn,
description
} = job;
return (
<div>
<Row>
<Well>
<Thumbnail
2015-10-11 20:25:09 -07:00
alt={ logo ? company + 'company logo' : 'stock image' }
src={ logo || defaultImage }
2015-09-26 22:23:56 -07:00
style={ thumbnailStyle } />
<Panel>
2015-10-11 20:25:09 -07:00
Position: { position || 'N/A' }
<br />
Location: { city || '' }, { state || 'N/A' }
2015-09-26 22:23:56 -07:00
<br />
Contact: { email || phone || 'N/A' }
<br />
Posted On: { moment(postedOn).format('MMMM Do, YYYY') }
</Panel>
<p>{ description }</p>
</Well>
</Row>
</div>
);
}
});