import React, {Component} from 'react'; import {Tooltip} from 'reactstrap'; import WiaasBox from '../../../mainComponents/box/WiaasBox.jsx'; import {API_SERVER} from '../../../config'; import FileDownloader from '../../../helpers/FileDownloader'; const fileHandler = new FileDownloader(); const iconTypes = { doc: 'file-word-o', docx: 'file-word-o', odt: 'file-word-o', ods: 'file-excel-o', pdf: 'file-pdf-o', png: 'file-image-o', jpg: 'file-image-o', xls: 'file-excel-o', xlsx: 'file-excel-o', ppt: 'file-powerpoint-o', pptx: 'file-powerpoint-o' } class OrderDocumentsGroup extends Component { constructor(props) { super(props); this.toggle = this.toggle.bind(this); this.state = {}; } toggle(idDocument) { const obj = {} obj[idDocument] = !this.state[idDocument]; this.setState(obj); } getDocumentIcon(documentType) { return iconTypes[documentType] || 'file'; } getDocumentText(document) { const name = document.name + '.' + document.extension; return name.length > 9 ? name.substring(0, 10) + '...' : name; } downloadDocument(document, packageID){ const fileUrl = `${API_SERVER}/wp-json/wiaas/download-package-file?document_id=${document.id}&package_id=${packageID}` const fileName = document.name + '.' + document.extension; fileHandler.download(fileUrl, fileName); } render() { const {documents, packageName, packageID} = this.props; return (
{ documents && documents.length > 0 && { documents.map(document =>
{this.downloadDocument(document, packageID)}} className="document-link-big">
{this.getDocumentText(document)} this.toggle(document.id)}> {document.name} ({document.extension})
) }
}
) } } export default OrderDocumentsGroup;