diff --git a/src/components/forms/AddSolutionForm.js b/src/components/forms/AddSolutionForm.js index 779f92fb7724644e6cc5915fe274ee43db817573..014a2cf72b266129a73677b8889d079261387c44 100644 --- a/src/components/forms/AddSolutionForm.js +++ b/src/components/forms/AddSolutionForm.js @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { Modal, Button, Form, Input, TextArea, Icon, Header, Segment, Divider } from 'semantic-ui-react'; +import { Modal, Button, Form, Input, TextArea, Icon, Header, Segment, Divider, Dimmer, Loader } from 'semantic-ui-react'; import { connect } from 'react-redux'; import { addSolution, writeSolution, writeSolutionFile, addDocument, clearWrite } from '../../actions/homework'; import './Forms.css'; @@ -25,6 +25,7 @@ class AddSolutionForm extends Component { super(props); this.state = { showModal: false, + uploadState: true, }; } @@ -176,18 +177,30 @@ class AddSolutionForm extends Component { inverted color='green' > - <Icon name='checkmark' /> BeadĂĄs + <Icon name='checkmark' /> + BeadĂĄs + {this.state.uploadState? + null + : + <Dimmer active> + <Loader size='massive'/> + </Dimmer>} </Button> } text='beadod az Ăşj megoldĂĄst, ami felĂźlĂrja az elĹzĹt' onAccept={() => { + this.setState({ + uploadState: false + }) this.props.addSolution({ task, accepted, corrected, note, name, description, file, - }).then( ()=> { - alert('Sikeres feltĂśltĂŠs!') - this.setState({ showModal: false }); + }).then( (response)=> { + this.setState({ + uploadState: true, + showModal: false + }) this.props.clearWrite(); - }, ()=> { + }, (response)=> { alert('Sikertelen feltĂśltĂŠs!') }); }