2015-10-13 23:05:31 -07:00
|
|
|
import React, { PropTypes } from 'react';
|
2015-10-25 15:51:59 -07:00
|
|
|
import { Button, Col, Panel, Row, Well } from 'react-bootstrap';
|
2015-10-13 23:05:31 -07:00
|
|
|
import { contain } from 'thundercats-react';
|
|
|
|
|
2015-10-21 20:38:11 -07:00
|
|
|
const paypalIds = {
|
|
|
|
regular: 'ZVU498PLMPHKU',
|
|
|
|
regularDiscount: '58U7P36W3L2GQ',
|
|
|
|
highlighted: '3YYSTBAMJYTUW',
|
|
|
|
highlightedDiscount: 'QGWTUZ9XEE6EL'
|
|
|
|
};
|
|
|
|
|
2015-10-13 23:05:31 -07:00
|
|
|
export default contain(
|
|
|
|
{
|
|
|
|
store: 'JobsStore',
|
|
|
|
actions: 'JobActions',
|
2015-10-25 15:51:59 -07:00
|
|
|
map({
|
|
|
|
job: { id, isHighlighted } = {},
|
|
|
|
buttonId = paypalIds.regular,
|
|
|
|
price = 200,
|
|
|
|
discountAmount = 0
|
|
|
|
}) {
|
|
|
|
return { id, isHighlighted, buttonId, price, discountAmount };
|
2015-10-13 23:05:31 -07:00
|
|
|
}
|
|
|
|
},
|
|
|
|
React.createClass({
|
|
|
|
displayName: 'GoToPayPal',
|
|
|
|
|
|
|
|
propTypes: {
|
2015-10-15 23:06:16 -07:00
|
|
|
id: PropTypes.string,
|
2015-10-25 15:51:59 -07:00
|
|
|
isHighlighted: PropTypes.bool,
|
2015-10-25 18:22:26 -07:00
|
|
|
buttonId: PropTypes.string,
|
|
|
|
price: PropTypes.number,
|
|
|
|
discountAmount: PropTypes.number
|
|
|
|
},
|
|
|
|
|
|
|
|
renderDiscount(discountAmount) {
|
|
|
|
if (!discountAmount) {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
return (
|
|
|
|
<Row>
|
|
|
|
<Col
|
|
|
|
md={ 3 }
|
|
|
|
mdOffset={ 3 }>
|
|
|
|
<h4>Discount</h4>
|
|
|
|
</Col>
|
|
|
|
<Col
|
|
|
|
md={ 3 }>
|
|
|
|
<h4>-{ discountAmount }</h4>
|
|
|
|
</Col>
|
|
|
|
</Row>
|
|
|
|
);
|
|
|
|
},
|
|
|
|
|
|
|
|
renderHighlightPrice(isHighlighted) {
|
|
|
|
if (!isHighlighted) {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
return (
|
|
|
|
<Row>
|
|
|
|
<Col
|
|
|
|
md={ 3 }
|
|
|
|
mdOffset={ 3 }>
|
|
|
|
<h4>Highlighting</h4>
|
|
|
|
</Col>
|
|
|
|
<Col
|
|
|
|
md={ 3 }>
|
|
|
|
<h4>+ 50</h4>
|
|
|
|
</Col>
|
|
|
|
</Row>
|
|
|
|
);
|
2015-10-13 23:05:31 -07:00
|
|
|
},
|
|
|
|
|
|
|
|
render() {
|
2015-10-25 15:51:59 -07:00
|
|
|
const { id, isHighlighted, buttonId, price, discountAmount } = this.props;
|
2015-10-13 23:05:31 -07:00
|
|
|
return (
|
|
|
|
<div>
|
|
|
|
<Row>
|
|
|
|
<Col
|
2015-10-15 23:06:16 -07:00
|
|
|
md={ 10 }
|
|
|
|
mdOffset={ 1 }
|
2015-10-13 23:05:31 -07:00
|
|
|
sm={ 8 }
|
|
|
|
smOffset={ 2 }
|
2015-10-15 20:03:07 -07:00
|
|
|
xs={ 12 }>
|
|
|
|
<Panel>
|
2015-10-15 23:06:16 -07:00
|
|
|
<Row>
|
|
|
|
<Col
|
|
|
|
md={ 6 }
|
|
|
|
mdOffset={ 3 }>
|
|
|
|
<h2 className='text-center'>
|
|
|
|
One more step
|
|
|
|
</h2>
|
|
|
|
<div className='spacer' />
|
|
|
|
You're Awesome! just one more step to go.
|
|
|
|
Clicking on the link below will redirect to paypal.
|
|
|
|
</Col>
|
|
|
|
</Row>
|
2015-10-25 15:51:59 -07:00
|
|
|
<div className='spacer' />
|
|
|
|
<Well>
|
|
|
|
<Row>
|
|
|
|
<Col
|
|
|
|
md={ 3 }
|
|
|
|
mdOffset={ 3 }>
|
|
|
|
<h4>Job Posting</h4>
|
|
|
|
</Col>
|
|
|
|
<Col
|
|
|
|
md={ 6 }>
|
|
|
|
<h4>+{ price }</h4>
|
|
|
|
</Col>
|
|
|
|
</Row>
|
2015-10-25 18:22:26 -07:00
|
|
|
{ this.renderDiscount(discountAmount) }
|
|
|
|
{ this.renderHighlightPrice(isHighlighted) }
|
2015-10-25 15:51:59 -07:00
|
|
|
<Row>
|
|
|
|
<Col
|
|
|
|
md={ 3 }
|
|
|
|
mdOffset={ 3 }>
|
|
|
|
<h4>Total</h4>
|
|
|
|
</Col>
|
|
|
|
<Col
|
|
|
|
md={ 6 }>
|
2015-10-25 18:22:26 -07:00
|
|
|
<h4>${
|
|
|
|
price - discountAmount + (isHighlighted ? 50 : 0)
|
|
|
|
}</h4>
|
2015-10-25 15:51:59 -07:00
|
|
|
</Col>
|
|
|
|
</Row>
|
|
|
|
</Well>
|
2015-10-15 23:06:16 -07:00
|
|
|
<div className='spacer' />
|
|
|
|
<Row>
|
|
|
|
<Col
|
|
|
|
md={ 6 }
|
|
|
|
mdOffset={ 3 }>
|
|
|
|
<form
|
|
|
|
action='https://www.sandbox.paypal.com/cgi-bin/webscr'
|
|
|
|
method='post'
|
|
|
|
target='_top'>
|
|
|
|
<input
|
|
|
|
name='cmd'
|
|
|
|
type='hidden'
|
|
|
|
value='_s-xclick' />
|
|
|
|
<input
|
|
|
|
name='hosted_button_id'
|
|
|
|
type='hidden'
|
2015-10-25 15:51:59 -07:00
|
|
|
value={ buttonId } />
|
2015-10-15 23:06:16 -07:00
|
|
|
<input
|
|
|
|
name='custom'
|
|
|
|
type='hidden'
|
|
|
|
value={ '' + id } />
|
|
|
|
<Button
|
|
|
|
block={ true }
|
|
|
|
bsSize='size'
|
|
|
|
className='signup-btn'
|
|
|
|
type='submit'>
|
|
|
|
<i className='fa fa-paypal' />
|
|
|
|
Continue to PayPal
|
|
|
|
</Button>
|
|
|
|
<div className='spacer' />
|
|
|
|
<img
|
|
|
|
alt='An array of credit cards'
|
|
|
|
border='0'
|
|
|
|
src='http://i.imgur.com/Q2SdSZG.png'
|
|
|
|
style={{
|
|
|
|
width: '100%'
|
|
|
|
}} />
|
|
|
|
</form>
|
|
|
|
</Col>
|
|
|
|
</Row>
|
|
|
|
<div className='spacer' />
|
2015-10-15 20:03:07 -07:00
|
|
|
</Panel>
|
2015-10-13 23:05:31 -07:00
|
|
|
</Col>
|
|
|
|
</Row>
|
|
|
|
</div>
|
|
|
|
);
|
|
|
|
}
|
|
|
|
})
|
|
|
|
);
|