diff --git a/server/db.sqlite3 b/server/db.sqlite3 index ea3ae5d..71ded91 100644 Binary files a/server/db.sqlite3 and b/server/db.sqlite3 differ diff --git a/server/frontend/package-lock.json b/server/frontend/package-lock.json index 31fe58f..b15d6a8 100644 --- a/server/frontend/package-lock.json +++ b/server/frontend/package-lock.json @@ -9553,6 +9553,11 @@ "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.0.tgz", "integrity": "sha512-oUbbplKuH07/XX2YD2+Q+GMiPpnVXaRz8npE7suhBH9QEkJe2W7mQ6rwuMXHue3fpfcftQwzgyvGzIHyfCSngQ==" }, + "js-file-download": { + "version": "0.4.12", + "resolved": "https://registry.npmjs.org/js-file-download/-/js-file-download-0.4.12.tgz", + "integrity": "sha512-rML+NkoD08p5Dllpjo0ffy4jRHeY6Zsapvr/W86N7E0yuzAO6qa5X9+xog6zQNlH102J7IXljNY2FtS6Lj3ucg==" + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", diff --git a/server/frontend/package.json b/server/frontend/package.json index a5553d4..fe28a29 100644 --- a/server/frontend/package.json +++ b/server/frontend/package.json @@ -11,6 +11,7 @@ "@testing-library/user-event": "^12.8.3", "axios": "^0.21.1", "js-cookie": "^3.0.0", + "js-file-download": "^0.4.12", "react": "^17.0.2", "react-dom": "^17.0.2", "react-router-dom": "^5.2.0", diff --git a/server/frontend/src/components/modules/LookupModal.js b/server/frontend/src/components/modules/LookupModal.js index c4383e9..315f9b0 100644 --- a/server/frontend/src/components/modules/LookupModal.js +++ b/server/frontend/src/components/modules/LookupModal.js @@ -2,6 +2,8 @@ import React, { useState, useEffect } from 'react' import { makeStyles, Modal, Backdrop, Fade, LinearProgress, Button } from '@material-ui/core' import axios from 'axios' +var fileDownload = require('js-file-download'); + const useStyles = makeStyles((theme) => ({ modal: { display: 'flex', @@ -43,6 +45,7 @@ export default function LookupModal(props) { useEffect(() => { const BASE_URL = process.env.REACT_APP_BASE_URL; + // fileUrl = `http://localhost:8000/api/download/${props.id}/`; if (counter > 0) { setTimeout(() => { setCounter(counter - 1) @@ -80,6 +83,17 @@ export default function LookupModal(props) { } }, [counter, props.id]); + const handleDownload = () => { + axios.get(`http://localhost:8000/api/download/${props.id}/`, { + responseType: 'blob', + }).then(res => { + fileDownload(res.data, 'download.tsv'); + console.log(res); + }).catch(err => { + console.log(err); + }) + } + const downloadFile = () => { axios .get(`http://localhost:8000/api/download/${props.id}/`) @@ -111,7 +125,7 @@ export default function LookupModal(props) {
Job id: {props.id}
The results of your prediction have been emailed.
View and analyze results here
- + :Refreshing in {counter} seconds...
@@ -126,4 +140,4 @@ export default function LookupModal(props) {