ducky/web
ducky/web/src/components/validation-error.jsx
Stop ignoring our build folder. Now that our HTML lives in our build folder, we should probably stop ignoring it. This means that an `hg clone` followed by an `npm install` followed by an `npm run deploy` will work. I hope.
| paddy@2 | 1 import React from 'react' |
| paddy@2 | 2 |
| paddy@2 | 3 export default React.createClass({ |
| paddy@2 | 4 displayName: 'ValidationError', |
| paddy@2 | 5 |
| paddy@2 | 6 render () { |
| paddy@2 | 7 const field = this.props.field |
| paddy@2 | 8 const param = this.props.param |
| paddy@2 | 9 const header = this.props.header |
| paddy@2 | 10 const outputs = this.props.outputs |
| paddy@2 | 11 const errors = this.props.errors |
| paddy@2 | 12 return ( |
| paddy@2 | 13 <div className={errors.length ? '' : 'hidden' }> |
| paddy@2 | 14 {errors.map(error => { |
| paddy@2 | 15 let errorString = '' |
| paddy@2 | 16 if (field && error.field && error.field != field) { |
| paddy@2 | 17 return '' |
| paddy@2 | 18 } |
| paddy@2 | 19 if (param && error.param && error.param != param) { |
| paddy@2 | 20 return '' |
| paddy@2 | 21 } |
| paddy@2 | 22 if (header && error.header && error.header != header) { |
| paddy@2 | 23 return '' |
| paddy@2 | 24 } |
| paddy@2 | 25 if (outputs[error.error] == undefined) { |
| paddy@2 | 26 errorString = 'An unknown error occurred. Please contact support. Sorry.' |
| paddy@2 | 27 } else { |
| paddy@2 | 28 errorString = outputs[error.error] |
| paddy@2 | 29 } |
| paddy@2 | 30 const id = [error.field, error.param, error.header, error.error].join("|") |
| paddy@2 | 31 return <div key={id} className="flash-error validation"><span>{errorString}</span></div> |
| paddy@2 | 32 })} |
| paddy@2 | 33 </div> |
| paddy@2 | 34 ) |
| paddy@2 | 35 } |
| paddy@2 | 36 }) |