From eab21544d5ef4e0d18544ac6e486fac1f0113c93 Mon Sep 17 00:00:00 2001
From: Sandor Bereczki <bsandor453@gmail.com>
Date: Thu, 24 Jan 2019 13:08:08 +0100
Subject: [PATCH] Added ClearWrite action, solution fix

---
 src/actions/homework.js                 | 5 -----
 src/components/forms/AddSolutionForm.js | 9 +++++----
 src/reducers/AddSolutionReducer.js      | 4 +++-
 3 files changed, 8 insertions(+), 10 deletions(-)

diff --git a/src/actions/homework.js b/src/actions/homework.js
index ad5d78a..878adae 100644
--- a/src/actions/homework.js
+++ b/src/actions/homework.js
@@ -77,8 +77,6 @@ export const addSolution = ({
           type: ADD_SOLUTION,
           payload: response.data,
         });
-      } else {
-        alert('MentĂŠs nem sikerĂźlt!');
       }
     } catch (e) {
       console.log(e);
@@ -103,13 +101,10 @@ export const addDocument = ({
       };
       const response = await axios.post('/api/v1/documents/', formData, config);
       if (response.data.id) {
-        alert('Sikeres mentĂŠs!');
         dispatch({
           type: ADD_DOCUMENT,
           payload: response.data,
         });
-      } else {
-        alert('MentĂŠs nem sikerĂźlt!');
       }
     } catch (e) {
       console.log(e);
diff --git a/src/components/forms/AddSolutionForm.js b/src/components/forms/AddSolutionForm.js
index 1214bbc..d730dfc 100644
--- a/src/components/forms/AddSolutionForm.js
+++ b/src/components/forms/AddSolutionForm.js
@@ -1,7 +1,7 @@
 import React, { Component } from 'react';
 import { Modal, Button, Form, Input, TextArea, Icon } from 'semantic-ui-react';
 import { connect } from 'react-redux';
-import { addSolution, writeSolution, writeSolutionFile, addDocument } from '../../actions/homework';
+import { addSolution, writeSolution, writeSolutionFile, addDocument, clearWrite } from '../../actions/homework';
 
 class AddSolutionForm extends Component {
   constructor(props) {
@@ -19,9 +19,9 @@ class AddSolutionForm extends Component {
     const corrected = false;
     const accepted = false;
     const note = '';
-    // const solution = (this.props.homeworks.solutions[this.props.homeworks.solutions.length - 1]).id;
-    // TODO: undefined
-    const solution = 1;
+    let solution = 1;
+    if((this.props.homeworks.solutions[this.props.homeworks.solutions.length - 1]) !== undefined)
+      solution = (this.props.homeworks.solutions[this.props.homeworks.solutions.length - 1]).id;
     return (
       <Modal
         open={this.state.showModal}
@@ -93,4 +93,5 @@ export default connect(mapStateToProps, {
   writeSolution,
   writeSolutionFile,
   addDocument,
+  clearWrite,
 })(AddSolutionForm);
diff --git a/src/reducers/AddSolutionReducer.js b/src/reducers/AddSolutionReducer.js
index 276a9d3..96da9a5 100644
--- a/src/reducers/AddSolutionReducer.js
+++ b/src/reducers/AddSolutionReducer.js
@@ -1,4 +1,4 @@
-import { WRITE_SOLUTION, WRITE_SOLUTION_FILE, GET_SOLUTIONS } from '../actions/types';
+import { WRITE_SOLUTION, WRITE_SOLUTION_FILE, GET_SOLUTIONS, CLEAR_WRITE } from '../actions/types';
 
 const INITIAL_STATE = {
   task: '',
@@ -16,6 +16,8 @@ export default (state = INITIAL_STATE, action) => {
       return { ...state, [action.target]: action.payload };
     case GET_SOLUTIONS:
       return { ...state, solutions: action.payload };
+    case CLEAR_WRITE:
+      return INITIAL_STATE;
     default:
       return state;
   }
-- 
GitLab