'use strict'; import React from 'react'; import classNames from 'classnames'; import { ErrorClasses } from '../../../constants/error_constants'; import { getLangText } from '../../../utils/lang_utils'; let FileDragAndDropErrorDialog = React.createClass({ propTypes: { errorClass: React.PropTypes.shape({ name: React.PropTypes.string, prettifiedText: React.PropTypes.string }).isRequired, files: React.PropTypes.array.isRequired, handleRetryFiles: React.PropTypes.func.isRequired }, getRetryButton(text, openIntercom) { return ( ); }, getContactUsDetail() { return (

{getLangText('Let us help you')}

{getLangText('Still having problems? Send us a message.')}

{this.getRetryButton('Contact us', true)}
); }, getErrorDetail(multipleFiles) { const { errorClass: { prettifiedText }, files } = this.props; return (

{getLangText(multipleFiles ? 'Some files did not upload correctly' : 'Error uploading the file!')}

{prettifiedText}

{this.getRetryButton('Retry')}
); }, retryAllFiles() { const { files, handleRetryFiles } = this.props; handleRetryFiles(files.map(file => file.id)); }, render() { const { errorClass: { name: errorName }, files } = this.props; const multipleFiles = files.length > 1; const contactUs = errorName === ErrorClasses.upload.contactUs.name; return contactUs ? this.getContactUsDetail() : this.getErrorDetail(multipleFiles); } }); export default FileDragAndDropErrorDialog;