import React, { Component } from "react"; import Button from 'react-bootstrap/Button'; import Form from 'react-bootstrap/Form'; import { connect } from "react-redux"; import { bindActionCreators } from "redux"; import * as degreeCourseManagementActions from '../../actions/DegreeCourseManagementActions' const mapStateToProps = state => { return { accessToken: state.AuthenticationReducer.accessToken }; } class EditDegreeCourse extends Component { constructor(props) { super(props); this.state = { name: this.props.editDegreeCourse.name, shortName: this.props.editDegreeCourse.shortName, universityName: this.props.editDegreeCourse.universityName, universityShortName: this.props.editDegreeCourse.universityShortName, departmentName: this.props.editDegreeCourse.departmentName, departmentShortName: this.props.editDegreeCourse.departmentShortName } this.handleChange = this.handleChange.bind(this); this.handleSubmit = this.handleSubmit.bind(this); } handleChange(e) { const { name, value } = e.target; this.setState({ [name]: value }) console.log(JSON.stringify(this.state)) } handleSubmit(e) { e.preventDefault() const { editDegreeCourseWithIDAction } = this.props editDegreeCourseWithIDAction(this.state, this.props.editDegreeCourse.id, this.props.accessToken) } render() { return ( <div id="DegreeCourseManagementPageEditComponent" style={{ display: 'flex', justifyContent: 'center', textAlign: 'left' }}> <Form style={{ width: '60rem' }}> <Form.Group className="mb-3"> <Form.Label>Studiengang-Name</Form.Label> <Form.Control id="EditDegreeCourseComponentEditDegreeCourseName" name='name' type="text" placeholder="Bitte Namen des Studiengangs eingeben" onChange={this.handleChange} defaultValue={this.props.editDegreeCourse.name} /> </Form.Group> <Form.Group className="mb-3"> <Form.Label>Studiengang-Kurzbezeichnung</Form.Label> <Form.Control id="EditDegreeCourseComponentEditFirstShortName" name="shortName" type="text" placeholder="Bitte Kurzbezeichnung des Studiengangs eingeben" onChange={this.handleChange} defaultValue={this.props.editDegreeCourse.shortName} /> </Form.Group> <Form.Group className="mb-3"> <Form.Label>Universität-Name</Form.Label> <Form.Control id="EditDegreeCourseComponentEditUniversityName" name="universityName" type="text" placeholder="Bitte Namen der Universität eingeben" onChange={this.handleChange} defaultValue={this.props.editDegreeCourse.universityName} /> </Form.Group> <Form.Group className="mb-3"> <Form.Label>Universität-Kurzbezeichnung</Form.Label> <Form.Control id="EditDegreeCourseComponentEditUniversityShortName" name="universityShortName" type="text" placeholder="Bitte Kurzbezeichnung der Universität eingeben" onChange={this.handleChange} defaultValue={this.props.editDegreeCourse.universityShortName} /> </Form.Group> <Form.Group className="mb-3"> <Form.Label>Fachbereich-Name</Form.Label> <Form.Control id="EditDegreeCourseComponentEditDepartmentName" name="departmentName" type="text" placeholder="Bitte Namen des Fachbereichs eingeben" onChange={this.handleChange} defaultValue={this.props.editDegreeCourse.departmentName} /> </Form.Group> <Form.Group className="mb-3"> <Form.Label>Fachbereich-Kurzbezeichnung</Form.Label> <Form.Control id="EditDegreeCourseComponentEditDepartmentShortName" name="departmentShortName" type="text" placeholder="Bitte Kurzbezeichnung des Fachbereichs eingeben" onChange={this.handleChange} defaultValue={this.props.editDegreeCourse.departmentShortName} /> </Form.Group> <Button id="EditDegreeCourseComponentEditDegreeCourseButton" variant="primary" type="submit" onClick={this.handleSubmit}> Speichern </Button> <Button id="OpenUserManagementPageListComponentButton" variant="primary" type="submit" onClick={this.props.goBack}> Studiengang-Liste </Button> </Form> </div > ) } } const mapDispatchToProps = dispatch => bindActionCreators({ editDegreeCourseWithIDAction: degreeCourseManagementActions.editDegreeCourseWithID }, dispatch) const ConnectedEditDegreeCourse = connect(mapStateToProps, mapDispatchToProps)(EditDegreeCourse) export default ConnectedEditDegreeCourse