Remove old pdf link after submitting new terms
authorMichael Winsauer <e1429715@student.tuwien.ac.at>
Sun, 20 Jan 2019 22:38:12 +0000 (23:38 +0100)
committerMichael Winsauer <e1429715@student.tuwien.ac.at>
Sun, 20 Jan 2019 22:38:12 +0000 (23:38 +0100)
service-website/src/components/PdfReport.js
service-website/src/components/SentimentAnalysis.js

index 200971a775db3b6a818f97e61b6f69fd910f126c..1674eedf2cf77c936fdec838db813be42c9efbb8 100644 (file)
@@ -9,16 +9,12 @@ const PdfReport = ({pdfLink, loading}) => {
             <div id="pdfDownloadContainer" className="file has-name is-boxed">
                 <a className="file-label" href={pdfLink} target="_blank" rel="noopener noreferrer">
                     <span className="file-cta">
-                        <span className="file-icon has-text-link has-text-danger" id="pdfDownloadIcon" >
+                        <span className="file-icon has-text-link has-text-danger" id="pdfDownloadIcon">
                                 <FontAwesomeIcon icon={faFilePdf} size="3x"/>
                         </span>
-                        <span className="file-label">
-                            Click to download
-                        </span>
-                    </span>
-                    <span className="file-name">
-                        Report created successfully
+                        <span className="file-label">Click to download</span>
                     </span>
+                    <span className="file-name">Report created successfully</span>
                 </a>
             </div>
         );
@@ -32,7 +28,8 @@ const PdfReport = ({pdfLink, loading}) => {
                     <div className="rect4 has-background-info"/>
                     <div className="rect5 has-background-info"/>
                 </div>
-            </div>);
+            </div>
+        );
     } else {
         return null;
     }
index eef730d3ea78fc6947d29d85ce63a197a096d64b..48455ff2c252c00664c2dbe8cd944502bf92fe08 100644 (file)
@@ -18,6 +18,7 @@ class SentimentAnalysis extends Component {
         this.handleTermChange = this.handleTermChange.bind(this);
         this.handleAddTerm = this.handleAddTerm.bind(this);
         this.handleRemoveTerm = this.handleRemoveTerm.bind(this);
+        this.handleReset = this.handleReset.bind(this);
         this.addEmptyTerm = this.addEmptyTerm.bind(this);
         this.emptyTerms = this.emptyTerms.bind(this);
         this.getNonEmptyTerms = this.getNonEmptyTerms.bind(this);
@@ -28,17 +29,13 @@ class SentimentAnalysis extends Component {
 
     handleSubmit(event) {
         event.preventDefault();
-        const target = event.target;
-        console.log(target);
-        const terms = this.state.terms;
-        terms.forEach((term) => {
-            console.log(term);
-        });
         this.setState({
+            pdfLink: null,
             isLoading: true,
+        }, () => {
+            this.createPdf();
+            this.emptyTerms();
         });
-        this.createPdf();
-        this.emptyTerms();
     }
 
     handleTermChange(id, value) {
@@ -59,6 +56,15 @@ class SentimentAnalysis extends Component {
         });
     }
 
+    handleReset(event) {
+        this.setState({
+            terms: new Map().set(0, ''),
+            nextTermId: 1,
+            pdfLink: null,
+            isLoading: false,
+        });
+    }
+
     addEmptyTerm() {
         const terms = this.state.terms;
         const termId = this.state.nextTermId;
@@ -90,6 +96,7 @@ class SentimentAnalysis extends Component {
     setPdfLink(url) {
         this.setState({
             pdfLink: url,
+            isLoading: false,
         });
     }
 
@@ -109,7 +116,7 @@ class SentimentAnalysis extends Component {
                                     <Button color="info" type="submit" value="Submit">Submit</Button>
                                 </p>
                                 <p className="control">
-                                    <Button value="Reset" onClick={this.emptyTerms}>Reset</Button>
+                                    <Button value="Reset" onClick={this.handleReset}>Reset</Button>
                                 </p>
                             </Form.Field>
                         </form>