Skip to content
Snippets Groups Projects
Commit 259f973c authored by Chif Gergő's avatar Chif Gergő
Browse files

Merge branch 'statistics' into changes

parents f0d9dbb4 c85b79a7
No related branches found
No related tags found
No related merge requests found
......@@ -10,10 +10,10 @@ import {
GET_TRAINEE_BY_ID,
} from './types';
export const getEvents = () => (
export const getStaffEvents = () => (
async (dispatch) => {
try {
const response = await axios.get('/api/v1/events/');
const response = await axios.get('/api/v1/staff_events/');
dispatch({
type: GET_EVENTS,
payload: response.data,
......@@ -27,7 +27,7 @@ export const getEvents = () => (
export const getEventById = id => (
async (dispatch) => {
try {
const response = await axios.get(`/api/v1/events/${id}`);
const response = await axios.get(`/api/v1/staff_events/${id}`);
dispatch({
type: GET_EVENT_BY_ID,
payload: response.data,
......
import React, { Component } from 'react';
import { Container, Header, Item, Button, Label } from 'semantic-ui-react';
import { connect } from 'react-redux';
import { getSelectedProfile, setStatus } from '../../actions/statistics';
import ConfirmModal from '../forms/ConfirmModal';
class ApplicantProfile extends Component {
componentWillMount() {
this.props.getSelectedProfile(this.props.match.params.id);
}
render() {
const { id, signed, role, full_name, nick, motivation_about, motivation_exercise, motivation_profession }
= this.props.selectedProfile;
return (
<Container style={{ padding: '60px' }}>
<Item>
<Item.Content>
<Container textAlign='center'>
<Header as='h2'>{full_name}</Header>
<Item.Meta>{nick}</Item.Meta>
</Container>
<Item.Description>
<Container textAlign='justified' style={{ padding: '30px' }}>
<Header as='h3'>Magamról, eddigi tevékenységem:</Header>
<p>{motivation_about}</p>
<Header as='h3'>Szakmai motiváció:</Header>
<p>{motivation_profession}</p>
<Header as='h3'>Feladatok megoldása:</Header>
<p>{motivation_exercise}</p>
</Container>
<Container textAlign='center' style={{ padding: '20px' }}>
<Header as='h3'>Státusz:</Header>
{ signed ?
<div>
{ role === 'Student' ?
<Label color='green' size='huge'>Elfogadva</Label>
:
null
}
{ role === 'Staff' ?
<Label color='blue' size='huge'>Staff</Label>
:
null
}
{ role === 'Applicant' ?
<Label color='orange' size='huge'>Jelentkezett</Label>
:
null
}
{ role === 'Denied' ?
<Label color='red' size='huge'>Elutasítva</Label>
:
null
}
</div>
:
<Label color='red' size='huge'>Nem jelentkezett</Label>
}
</Container>
</Item.Description>
</Item.Content>
</Item>
{ signed && role !== 'Staff' ?
<Container textAlign='center'>
<ConfirmModal
button={
<Button
color='green'
>Jelentkezés elfogadása
</Button>}
text='elfogadod a jelentkezést'
onAccept={() => this.props.setStatus(id, 'Student')}
/>
<ConfirmModal
button={
<Button
color='red'
>Jelentkezés elutasítása
</Button>}
text='elutasítod a jelentkezést'
onAccept={() => this.props.setStatus(id, 'Denied')}
/>
</Container>
:
null
}
</Container>
);
}
}
const mapStateToProps = ({ trainees: { selectedProfile } }) => ({ selectedProfile });
export default connect(mapStateToProps, { getSelectedProfile, setStatus })(ApplicantProfile);
......@@ -3,12 +3,12 @@ import moment from 'moment';
import { Link } from 'react-router-dom';
import { Container, Table, Button } from 'semantic-ui-react';
import { connect } from 'react-redux';
import { getEvents, deleteEvent } from '../../actions/statistics';
import { getStaffEvents, deleteEvent } from '../../actions/statistics';
import AddEventForm from '../forms/AddEventForm';
class Events extends Component {
componentWillMount() {
this.props.getEvents();
this.props.getStaffEvents();
}
renderEvents() {
......@@ -62,4 +62,4 @@ class Events extends Component {
const mapStateToProps = ({ events: { events }, user }) => ({ events, user });
export default connect(mapStateToProps, { getEvents, deleteEvent })(Events);
export default connect(mapStateToProps, { getStaffEvents, deleteEvent })(Events);
import React, { Component } from 'react';
import { Container, Table, Icon } from 'semantic-ui-react';
import { connect } from 'react-redux';
import { getTrainees, getEvents } from '../../actions/statistics';
import { getTrainees, getStaffEvents } from '../../actions/statistics';
class Trainees extends Component {
componentWillMount() {
this.props.getTrainees();
this.props.getEvents();
this.props.getStaffEvents();
}
renderVisitedStatus(trainee) {
......@@ -66,4 +66,4 @@ class Trainees extends Component {
const mapStateToProps = ({ trainees: { trainees }, events: { events }, user }) => ({ trainees, events, user });
export default connect(mapStateToProps, { getTrainees, getEvents })(Trainees);
export default connect(mapStateToProps, { getTrainees, getStaffEvents })(Trainees);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment