diff --git a/src/actions/auth.js b/src/actions/auth.js
index ac0e9e51764333deae7eacf7741ad0510b9bc3f9..a480dba7a94dc0b614d822fb046b9d84a2f2ca3e 100644
--- a/src/actions/auth.js
+++ b/src/actions/auth.js
@@ -9,6 +9,7 @@ export const getUserData = () => (
       const {
         id,
         join_date: joinDate,
+        full_name: fullName,
         nick,
         motivation_about: motivationAbout,
         motivation_profession: motivationProfession,
@@ -36,7 +37,7 @@ export const getUserData = () => (
       dispatch({
         type: GET_USERDATA,
         payload: {
-          id, joinDate, nick, motivationAbout, motivationProfession, motivationExercise, signed, groups, role, permission
+          id, fullName, joinDate, nick, motivationAbout, motivationProfession, motivationExercise, signed, groups, role, permission
         },
       });
     } catch (e) {
diff --git a/src/actions/notes.js b/src/actions/notes.js
index 04362abded024bf05f5e633f1948309eca9e4ca6..4737c1f411186ebe3133de36ea78a62f3c2f311e 100644
--- a/src/actions/notes.js
+++ b/src/actions/notes.js
@@ -4,6 +4,7 @@ import {
   WRITE_NOTE,
   ADD_EVENT_NOTE,
   CLEAR_WRITE,
+  DELETE_NOTE,
 } from './types';
 
 export const getNotesByEvent = id => (
@@ -29,7 +30,7 @@ export const postEventNote = ({ eventid, userid, note }) => (
     try {
       const response = await axios.post('/api/v1/notes/', {
         event: eventid ? eventid : '',
-        profile: userid ? eventid : '',
+        profile: userid ? userid : '',
         note,
       });
       if (response.data.id) {
@@ -49,3 +50,21 @@ export const clearWrite = () => (
     dispatch({ type: CLEAR_WRITE });
   }
 );
+
+export const deleteNote = note => (
+  async (dispatch) => {
+    try {
+      const response = await axios.delete(`/api/v1/notes/${note.id}/`);
+      if (!response.data.id) {
+        alert('Sikeres tĂśrlĂŠs!');
+        dispatch({
+          type: DELETE_NOTE,
+          payload: note,
+        });
+      } else {
+        alert('A tĂśrlĂŠs nem sikerĂźlt!');
+      }
+    } catch (e) {
+      console.log(e);
+    }
+  });
diff --git a/src/actions/statistics.js b/src/actions/statistics.js
index ce574c26e099bad3df53766b86381527f2528699..1f92b1e2e54fe6001ef4d8722dc34e18136a9acb 100644
--- a/src/actions/statistics.js
+++ b/src/actions/statistics.js
@@ -12,6 +12,9 @@ import {
   SET_STATUS,
   ABSENT_CHANGE,
   CHANGE_NO,
+  EDIT_EVENT,
+  WRITE_EDITED_EVENT,
+  SELECT_EVENT_FOR_EDIT,
 } from './types';
 
 export const getStaffEvents = () => (
@@ -59,7 +62,7 @@ export const getEventById = id => (
 export const getTrainees = () => (
   async (dispatch) => {
     try {
-      const response = await axios.get('/api/v1/profiles/');
+      const response = await axios.get('/api/v1/profiles/', { params: { role: 'Student' } });
       dispatch({
         type: GET_TRAINEES,
         payload: response.data,
@@ -82,12 +85,16 @@ export const visitorChange = ({ id, value }) => {
   }
 };
 
-export const submitVisitors = ({ id, visitors }) => (
+export const submitVisitors = ({ id, visitors, absent }) => (
   async () => {
     try {
       const response = await axios.patch(`/api/v1/staff_events/${id}/`, {
-        visitors
+        visitors,
+        absent,
       });
+      if (response.data.id) {
+        alert('Sikeres mentĂŠs!');
+      }
     } catch (e) {
       console.log(e);
     }
@@ -100,10 +107,39 @@ export const writeEvent = ({ target: { name, value } }) => (
   }
 );
 
+export const selectEventForEdit = editEvent => (
+  (dispatch) => {
+    dispatch({ type: SELECT_EVENT_FOR_EDIT, payload: editEvent });
+  }
+);
 
-export const eventDate = (name, value) => (
+export const writeEditEvent = ({ target: { name, value } }) => (
   (dispatch) => {
-    dispatch({ type: WRITE_EVENT, payload: value, target: name });
+    dispatch({ type: WRITE_EDITED_EVENT, payload: value, target: name });
+  }
+);
+
+export const editEvent = ({ id, name, description, date }) => (
+  async (dispatch) => {
+    try {
+      const response = await axios.patch(`/api/v1/staff_events/${id}/`, {
+        name,
+        description,
+        date,
+      });
+      if (response.data.id) {
+        alert('Sikeres mentĂŠs!');
+        dispatch({
+          type: EDIT_EVENT,
+          payload: response.data,
+
+        });
+      } else {
+        alert('MentĂŠs nem sikerĂźlt!');
+      }
+    } catch (e) {
+      console.log(e);
+    }
   }
 );
 
diff --git a/src/actions/types.js b/src/actions/types.js
index 5f0f6047717975390343ad5ecd701dfa5227d68e..024a17f0450bc8cdca9fca7506ea6ce0d0efa8d9 100644
--- a/src/actions/types.js
+++ b/src/actions/types.js
@@ -21,12 +21,16 @@ export const CHANGE_NO = 'change_no';
 
 export const GET_NOTES_BY_EVENT = 'get_notes_by_event';
 export const WRITE_EVENT = 'write_event';
+export const WRITE_EDITED_EVENT = 'write_selected_event';
 export const ADD_EVENT = 'add_event';
+export const SELECT_EVENT_FOR_EDIT = 'select_event_for_edit';
+export const EDIT_EVENT = 'edit_event';
 export const DELETE_EVENT = 'delete_event';
 
 export const WRITE_NOTE = 'write_note';
 export const CLEAR_NOTE = 'clear_note';
 export const ADD_EVENT_NOTE = 'add_note';
+export const DELETE_NOTE = 'delete_note';
 
 export const GET_PROFILES = 'get_profiles';
 export const SET_STATUS = 'set_status';
diff --git a/src/components/forms/AddEventForm.js b/src/components/forms/AddEventForm.js
index a9dd5d98df4a8e3e717b8ef2003caddc05a3fd46..22b4016f42da3e2bdc3cc8609bf7f41939f83fe0 100644
--- a/src/components/forms/AddEventForm.js
+++ b/src/components/forms/AddEventForm.js
@@ -1,8 +1,8 @@
 import React, { Component } from 'react';
-import { Modal, Button, Form, Input, TextArea, Icon } from 'semantic-ui-react';
+import { Modal, Button, Form, Input, Icon } from 'semantic-ui-react';
 import { connect } from 'react-redux';
 import { DateTimeInput } from 'semantic-ui-calendar-react';
-import { writeEvent, eventDate, addEvent } from '../../actions/statistics'
+import { writeEvent, addEvent } from '../../actions/statistics'
 import { clearWrite } from '../../actions/news'
 
 class AddEventForm extends Component {
@@ -21,7 +21,7 @@ class AddEventForm extends Component {
     if (this.state.hasOwnProperty(name)) {
       this.setState({ [name]: value });
     }
-    this.props.eventDate(name, value)
+    this.props.writeEvent({ target: {name, value} });
   }
 
   render() {
@@ -53,7 +53,7 @@ class AddEventForm extends Component {
               style={{
                 marginBottom: '20px',
               }}
-              placeholder='Title'
+              placeholder='NĂŠv'
             />
             <Form.TextArea
               name='description'
@@ -66,8 +66,8 @@ class AddEventForm extends Component {
               name="date"
               label="DĂĄtum:"
               dateFormat='YYYY-MM-DD'
-              placeholder="Date"
-              value={this.state.date}
+              placeholder="DĂĄtum"
+              value={date}
               iconPosition="left"
               onChange={this.handleChange}
             />
@@ -81,7 +81,7 @@ class AddEventForm extends Component {
                              this.props.clearWrite();}}
           >
             <Icon name='remove' />
-            Cancel
+            MĂŠgse
           </Button>
           <Button
             inverted
@@ -89,9 +89,10 @@ class AddEventForm extends Component {
             onClick={() => {
                     this.props.addEvent(this.props.newEvent);
                     this.setState({ showModal: false, date: '' });
+                    this.props.clearWrite();
                     }}
           >
-            <Icon name='checkmark' /> Add
+            <Icon name='checkmark' /> HozzĂĄad
           </Button>
         </Modal.Actions>
       </Modal>
@@ -101,4 +102,4 @@ class AddEventForm extends Component {
 
 const mapStateToProps = ({ events: { newEvent } }) => ({ newEvent });
 
-export default connect(mapStateToProps, { writeEvent, addEvent, eventDate, clearWrite })(AddEventForm);
+export default connect(mapStateToProps, { writeEvent, addEvent, clearWrite })(AddEventForm);
diff --git a/src/components/forms/AddNewsForm.js b/src/components/forms/AddNewsForm.js
index 0a1103249b65a530a58aa6f899a60a736d7ace9a..24deefa957e9f4cd515baca9deeb28b26a5a3be7 100644
--- a/src/components/forms/AddNewsForm.js
+++ b/src/components/forms/AddNewsForm.js
@@ -31,19 +31,19 @@ class AddNewsForm extends Component {
           <Form>
             <Form.Field
               control={Input}
-              label='Title'
+              label='CĂ­m'
               name='title'
               onChange={e => this.props.writeNews(e)}
               value={title}
-              placeholder='Title'
+              placeholder='CĂ­m'
             />
             <Form.Field
               control={TextArea}
-              label='Text'
+              label='SzĂśveg'
               name='text'
               onChange={e => this.props.writeNews(e)}
               value={text}
-              placeholder='Tell us what you want...'
+              placeholder='SzĂśveg'
             />
           </Form>
         </Modal.Content>
@@ -54,7 +54,7 @@ class AddNewsForm extends Component {
             onClick={() => { this.setState({ showModal: false }); }}
           >
             <Icon name='remove' />
-            Cancel
+            MĂŠgse
           </Button>
           <Button
             inverted
@@ -65,7 +65,7 @@ class AddNewsForm extends Component {
                     this.props.clearWrite();
                     }}
           >
-            <Icon name='checkmark' /> Add
+            <Icon name='checkmark' /> HozzĂĄad
           </Button>
         </Modal.Actions>
       </Modal>
diff --git a/src/components/forms/ConfirmModal.js b/src/components/forms/ConfirmModal.js
index 586d624b7caceb695bbb8154e553e29b0aa03b00..4e196ff1d2703afa7f82e5a6a60d8ce5f43032ba 100644
--- a/src/components/forms/ConfirmModal.js
+++ b/src/components/forms/ConfirmModal.js
@@ -26,7 +26,7 @@ class ConfirmModal extends Component {
         size='small'
         basic
       >
-        <Header icon='question' content='Confirm' />
+        <Header icon='question' content='Megerősítés' />
         <Modal.Content>
           <p>
             Biztos hogy {text}?
@@ -37,10 +37,9 @@ class ConfirmModal extends Component {
             basic
             color='red'
             inverted
-            inverted
             onClick={() => this.close()}
           >
-            <Icon name='remove' /> No
+            <Icon name='remove' /> Nem
           </Button>
           <Button
             color='green'
@@ -50,7 +49,7 @@ class ConfirmModal extends Component {
                            }
                     }
           >
-            <Icon name='checkmark' /> Yes
+            <Icon name='checkmark' /> Igen
           </Button>
         </Modal.Actions>
       </Modal>
diff --git a/src/components/forms/EditEventForm.js b/src/components/forms/EditEventForm.js
new file mode 100644
index 0000000000000000000000000000000000000000..fd50446b7a47901767cb89964d956fe6ef19874e
--- /dev/null
+++ b/src/components/forms/EditEventForm.js
@@ -0,0 +1,112 @@
+import React, { Component } from 'react';
+import { Modal, Button, Form, Input, Icon } from 'semantic-ui-react';
+import { connect } from 'react-redux';
+import moment from 'moment';
+import { DateTimeInput } from 'semantic-ui-calendar-react';
+import {
+  writeEditEvent,
+  editEvent,
+} from '../../actions/statistics'
+import { clearWrite } from '../../actions/news'
+
+class EditEventForm extends Component {
+  constructor(props) {
+    super(props);
+    this.state = {
+      showModal: false,
+      date: '',
+    };
+  }
+
+  // Handling change in redux action creator throws an exception
+  // Temporal solotion using the components state to display, instead redux state
+  handleChange = (event, {name, value}) => {
+    if (this.state.hasOwnProperty(name)) {
+      this.setState({ [name]: value });
+    }
+    this.props.writeEditEvent({target: {name: name, value: value}})
+  }
+
+  render() {
+    const { name, date, description } = this.props.editedEvent;
+    return (
+      <Modal
+        open={this.state.showModal}
+        trigger={
+          <Button
+            compact
+            onClick={() => { this.props.onClick();
+                             this.setState({ showModal: true }); }}
+            size='mini'
+          >
+            Szerkeszt
+          </Button>
+        }
+      >
+        <Modal.Header>Alkalom szerkesztĂŠse:</Modal.Header>
+        <Modal.Content
+          style={{
+            paddingTop: '20px',
+          }}
+        >
+          <Form>
+            <Form.Field
+              control={Input}
+              label='NĂŠv'
+              name='name'
+              onChange={e => this.props.writeEditEvent(e)}
+              value={name}
+              style={{
+                marginBottom: '20px',
+              }}
+              placeholder='NĂŠv'
+            />
+            <Form.TextArea
+              name='description'
+              label='LeĂ­rĂĄs:'
+              placeholder='RĂśvid leĂ­rĂĄs'
+              value={description}
+              onChange={e => this.props.writeEditEvent(e)}
+            />
+            <DateTimeInput
+              name="date"
+              label="DĂĄtum:"
+              dateFormat='YYYY-MM-DD'
+              placeholder="DĂĄtum"
+              value={moment(date).format('YYYY-MM-DD hh:mm')}
+              iconPosition="left"
+              onChange={this.handleChange}
+            />
+          </Form>
+        </Modal.Content>
+        <Modal.Actions>
+          <Button
+            inverted
+            color='red'
+            onClick={() => { this.setState({ showModal: false });
+                             this.props.clearWrite();
+                             }}
+          >
+            <Icon name='remove' />
+            MĂŠgse
+          </Button>
+          <Button
+            inverted
+            color='green'
+            onClick={() => {
+                    this.props.editEvent(this.props.editedEvent);
+                    this.setState({ showModal: false, date: '' });
+                    this.props.clearWrite();
+                    }}
+          >
+            <Icon name='checkmark' /> Szerkeszt
+          </Button>
+        </Modal.Actions>
+      </Modal>
+    );
+  }
+}
+
+const mapStateToProps = ({ events: { editedEvent } }) => ({ editedEvent });
+
+export default connect(mapStateToProps, { writeEditEvent, editEvent, clearWrite })(EditEventForm);
diff --git a/src/components/forms/EditNewsForm.js b/src/components/forms/EditNewsForm.js
index 7107e8d947e76d4fbbbc69cf448baf3f631b2e42..da1944bf92a0d9a8b75dbfc328f7cf9b8ff76424 100644
--- a/src/components/forms/EditNewsForm.js
+++ b/src/components/forms/EditNewsForm.js
@@ -25,7 +25,7 @@ class EditNewsForm extends Component {
             onClick={() => { this.setState({ showModal: true }); }}
             size='mini'
           >
-            Edit
+            Szerkeszt
           </Button>
         }
       >
@@ -34,19 +34,19 @@ class EditNewsForm extends Component {
           <Form>
             <Form.Field
               control={Input}
-              label='Title'
+              label='CĂ­m'
               name='title'
               onChange={e => this.props.writeNews(e)}
               value={title}
-              placeholder='Title'
+              placeholder='CĂ­m'
             />
             <Form.Field
               control={TextArea}
-              label='Text'
+              label='SzĂśveg'
               name='text'
               onChange={e => this.props.writeNews(e)}
               value={text}
-              placeholder='Tell us what you want...'
+              placeholder='SzĂśveg'
             />
           </Form>
         </Modal.Content>
@@ -56,7 +56,7 @@ class EditNewsForm extends Component {
             color='red'
             onClick={() => { this.setState({ showModal: false }); }}
           >
-            <Icon name='remove' /> Cancel
+            <Icon name='remove' /> MĂŠgse
           </Button>
           <Button
             inverted
@@ -69,7 +69,7 @@ class EditNewsForm extends Component {
                     this.props.clearWrite();
                     }}
           >
-            <Icon name='checkmark' /> Edit
+            <Icon name='checkmark' /> Szerkeszt
           </Button>
         </Modal.Actions>
       </Modal>
diff --git a/src/components/pages/Applications.js b/src/components/pages/Applications.js
index 6fac3330108f0610c51405e8b85772edbd6aab6c..68e6ce9ca2521880986e17a23f95da35bb155aec 100644
--- a/src/components/pages/Applications.js
+++ b/src/components/pages/Applications.js
@@ -44,20 +44,24 @@ class Applications extends Component {
           </Table.Cell>
           :
           <Table.Cell textAlign='center'>
-            <Label color='red'>Nem jelentkezett</Label>
+            { profile.role === 'Staff' ?
+              <Label color='blue'>Staff</Label>
+              :
+              <Label color='red'>Nem jelentkezett</Label>
+            }
           </Table.Cell>
         }
         <Table.Cell>
-        <ConfirmModal
-          button = {<Button
-            color='blue'
-            size='tiny'
-          >
-          ADD STAFF STATUS
-        </Button>}
-        text='staff jogot adsz neki'
-        onAccept={() => this.props.setStatus(profile.id, 'Staff')}
-        />
+          <ConfirmModal
+            button = {<Button
+              color='blue'
+              size='tiny'
+            >
+            Staff jog adĂĄs
+          </Button>}
+          text='staff jogot adsz neki'
+          onAccept={() => this.props.setStatus(profile.id, 'Staff')}
+          />
         </Table.Cell>
       </Table.Row>
     );
diff --git a/src/components/pages/CommentModal.js b/src/components/pages/CommentModal.js
new file mode 100644
index 0000000000000000000000000000000000000000..eeba0feeb2628c848cdb518bd7b6ad3a07c37978
--- /dev/null
+++ b/src/components/pages/CommentModal.js
@@ -0,0 +1,58 @@
+import React, { Component } from 'react';
+import { connect } from 'react-redux';
+import { Button, Comment, Modal } from 'semantic-ui-react';
+import { deleteNote } from '../../actions/notes';
+import ConfirmModal from '../forms/ConfirmModal';
+
+class CommentModal extends Component {
+  renderComments() {
+    const { notes, user } = this.props;
+    return notes.map((note) => {
+      return (
+        <Comment key={note.id}>
+          <Comment.Content>
+            <Comment.Author>{note.created_by_name}</Comment.Author>
+            <Comment.Text>
+              {note.note}
+            </Comment.Text>
+            { note.created_by_name === user.fullName ?
+              <ConfirmModal
+                text='tĂśrĂślni akarod a megjegyzĂŠst'
+                button={
+                  <Button
+                    compact
+                    color='red'
+                    size='mini'
+                  >
+                  Delete
+                  </Button>
+                   }
+                onAccept={() => this.props.deleteNote(note)}
+              />
+              :
+              null }
+          </Comment.Content>
+        </Comment>
+      );
+    });
+  }
+  render() {
+    return (
+      <Modal
+        closeIcon
+        trigger={
+          <Button icon='comment alternate outline' />
+        }
+      >
+        <Modal.Header>MegjegyzĂŠsek:</Modal.Header>
+        <Modal.Content>
+          {this.renderComments()}
+        </Modal.Content>
+      </Modal>
+    );
+  }
+}
+
+const mapStateToProps = ({ user }) => ({ user });
+
+export default connect(mapStateToProps, { deleteNote })(CommentModal);
diff --git a/src/components/pages/EventDetail.js b/src/components/pages/EventDetail.js
index e48fe9bffbeb815014d6804003e6ab4f53ca0976..fc748e5e90b481b71b1463bba924661d794e160b 100644
--- a/src/components/pages/EventDetail.js
+++ b/src/components/pages/EventDetail.js
@@ -7,17 +7,13 @@ import {
   Form,
   Header,
   Table,
-  Icon,
-  Checkbox,
-  Popup,
-  Grid,
 } from 'semantic-ui-react';
 import { connect } from 'react-redux';
 import moment from 'moment';
 import { getEventById, getTrainees, visitorChange, submitVisitors } from '../../actions/statistics';
-import { getNotesByEvent, writeNote, clearWrite, postEventNote } from '../../actions/notes';
+import { getNotesByEvent, writeNote, clearWrite, postEventNote, deleteNote } from '../../actions/notes';
 import TraineeTableRow from './TraineeTableRow';
-
+import ConfirmModal from '../forms/ConfirmModal';
 
 class EventDetail extends Component {
   constructor(props) {
@@ -36,7 +32,6 @@ class EventDetail extends Component {
 
   renderTrainees() {
     const event = this.props.selectedEvent;
-    const note = this.props.actualNote;
     return this.props.trainees.map((item) => {
       const notes = this.props.eventNotes.filter(note => note.profile === item.id);
       return (
@@ -79,6 +74,19 @@ class EventDetail extends Component {
                 {note.note}
               </Comment.Text>
             </Comment.Content>
+            <ConfirmModal
+              text='tĂśrĂślni akarod a megjegyzĂŠst'
+              button={
+                <Button
+                  compact
+                  color='red'
+                  size='mini'
+                >
+                  Delete
+                </Button>
+              }
+              onAccept={() => this.props.deleteNote(note)}
+            />
           </Comment>);
       }
       return '';
@@ -120,7 +128,7 @@ class EventDetail extends Component {
           <Button
             onClick={() => this.setState({ edit: true })}
           >
-          Edit
+          Szerkeszt
           </Button>
           { this.state.edit ?
             <Button
@@ -129,7 +137,7 @@ class EventDetail extends Component {
                               this.props.submitVisitors(this.props.selectedEvent);
                             }
                       }
-            >Save
+            >MentĂŠs
             </Button>
             :
             ''
@@ -182,4 +190,5 @@ export default connect(mapStateToProps, {
   writeNote,
   clearWrite,
   postEventNote,
+  deleteNote,
 })(EventDetail);
diff --git a/src/components/pages/Events.js b/src/components/pages/Events.js
index 3d5c8fca3566e71690424e84075a51c52c0a0130..d5b6d30b8b3eb9f69ac2c3df9059accaa4feb5ee 100644
--- a/src/components/pages/Events.js
+++ b/src/components/pages/Events.js
@@ -3,8 +3,10 @@ import moment from 'moment';
 import { Link } from 'react-router-dom';
 import { Container, Table, Button } from 'semantic-ui-react';
 import { connect } from 'react-redux';
-import { getStaffEvents, deleteEvent } from '../../actions/statistics';
+import { getStaffEvents, deleteEvent, selectEventForEdit } from '../../actions/statistics';
 import AddEventForm from '../forms/AddEventForm';
+import EditEventForm from '../forms/EditEventForm';
+import ConfirmModal from '../forms/ConfirmModal';
 
 class Events extends Component {
   componentWillMount() {
@@ -23,14 +25,20 @@ class Events extends Component {
         <Table.Cell>{moment(event.date).format('LL')}</Table.Cell>
         <Table.Cell>{event.visitor_number}</Table.Cell>
         <Table.Cell>
-          <Button
-            onClick={() => this.props.deleteEvent(event)}
-            color='red'
-            compact
-            size='small'
-          >
-          Delete
-          </Button>
+          <ConfirmModal
+            text={`törölni akarod a következő alkalmat:${event.name}`}
+            button={
+              <Button
+                compact
+                color='red'
+                size='mini'
+              >
+              TĂśrlĂŠs
+              </Button>
+               }
+            onAccept={() => this.props.deleteEvent(event)}
+          />
+          <EditEventForm onClick={() => this.props.selectEventForEdit(event)} />
         </Table.Cell>
       </Table.Row>
     );
@@ -62,4 +70,4 @@ class Events extends Component {
 
 const mapStateToProps = ({ events: { events }, user }) => ({ events, user });
 
-export default connect(mapStateToProps, { getStaffEvents, deleteEvent })(Events);
+export default connect(mapStateToProps, { getStaffEvents, selectEventForEdit, deleteEvent })(Events);
diff --git a/src/components/pages/News.js b/src/components/pages/News.js
index 41260ea92dd30a22084df8dc50bcb0e638380b97..012ad5f1745f81d8325b6e18339e5066728ca202 100644
--- a/src/components/pages/News.js
+++ b/src/components/pages/News.js
@@ -2,6 +2,7 @@ import React, { Component } from 'react';
 import { Container, Segment, Item, Button, Grid } from 'semantic-ui-react';
 import { connect } from 'react-redux';
 import moment from 'moment';
+import ConfirmModal from '../forms/ConfirmModal';
 
 import AddNewsForm from '../forms/AddNewsForm';
 import EditNewsForm from '../forms/EditNewsForm';
@@ -19,48 +20,41 @@ class News extends Component {
     return this.props.news.map(item => (
       <Item key={item.id}>
         <Item.Content>
-          <Item.Header
-            style={{ fontSize: '2em', width: '100%' }}
-          >
-            <Grid>
-              <Grid.Column floated='center' width={12}>
-                {item.title}
-              </Grid.Column>
-              { this.props.user.role === 'Staff' ?
-              <Grid.Column floated='right' width={4}>
-                <EditNewsForm
-                  onClick={() => this.props.setSelectedNews(item)}
-                />
-                <Button
-                  compact
-                  color='red'
-                  size='mini'
-                  onClick={() => this.props.deleteNews(item)}
-                >
-                  Delete
-                </Button>
-              </Grid.Column>
-              : null }
-            </Grid>
-          </Item.Header>
-          <Item.Description className='news-text' style={{ fontSize: '1.33em' }}>
-            {this.renderMultiLine(item.text)}
-          </Item.Description>
-          <Item.Extra>
-            <Grid>
-              <Grid.Row className='news-extra'>
-                <Grid.Column floated='left' width={10}>
-                  <p> KĂŠszĂźlt: {moment(item.created_at).format('LLLL')} </p>
-                  <p> Szerkesztve: {moment(item.updated_at).format('LLLL')}</p>
+          <Container text textAlign='left'>
+            <Item.Header
+              style={{ fontSize: '2em', width: '100%' }}
+            >
+              <Grid>
+                <Grid.Column floated='left' width={8}>
+                  {item.title}
                 </Grid.Column>
-                <Grid.Column floated='right' width={5}>
-                  <p> Írta: <strong>{item.author_name}</strong></p>
-                  {/* TODO get the edited by name */}
-                  <p> Szerkesztette: {item.author_name}</p>
-                </Grid.Column>
-              </Grid.Row>
-            </Grid>
-          </Item.Extra>
+                { this.props.user.role === 'Staff' ?
+                  <Grid.Column floated='right' width={4}>
+                    <EditNewsForm
+                      onClick={() => this.props.setSelectedNews(item)}
+                    />
+                    <ConfirmModal
+                      text={`törölni akarod a következő hírt: ${item.title}`}
+                      button={
+                        <Button
+                          compact
+                          color='red'
+                          size='mini'
+                        >
+                        TĂśrlĂŠs
+                        </Button>
+                         }
+                      onAccept={() => this.props.deleteNews(item)}
+                    />
+                  </Grid.Column>
+                  : null }
+              </Grid>
+            </Item.Header>
+            <Item.Meta style={{ fontSize: '0.75em', fontStyle: 'italic' }}>KĂśzzĂŠtĂŠve: {moment(item.created_at).format('LLLL')}</Item.Meta>
+            <Item.Description className='news-text' style={{ fontSize: '1em' }}>
+              {this.renderMultiLine(item.text)}
+            </Item.Description>
+        </Container>
         </Item.Content>
       </Item>
     ));
diff --git a/src/components/pages/Schedule.js b/src/components/pages/Schedule.js
index db3877fad2df7893212e1164a84a5fe6595d41e2..1b7e66eda96f72edf024bb86160b8e911110b3d9 100644
--- a/src/components/pages/Schedule.js
+++ b/src/components/pages/Schedule.js
@@ -24,29 +24,31 @@ class Schedule extends Component {
 
     const events = this.props.events;
     const panels = events.map(event => (
-      <>
+      <div>
         <Accordion.Title
           active={activeIndex === event.id}
           index={event.id}
           onClick={this.handleClick}
         >
-          <h2>
+          <h3>
              <Grid>
               <Grid.Column floated='left' width={5} textAlign='left'>
-                 <Icon name='quidditch' color='blue' />{event.name}
+                 <Icon name='angle right' color='blue' />{event.name}
               </Grid.Column>
               <Grid.Column floated='right' width={8} textAlign='right'>
                 {moment(event.date).locale('hu').format('LLLL')}
               </Grid.Column>
             </Grid>
-          </h2>
+          </h3>
          </Accordion.Title>
          <Accordion.Content active={activeIndex === event.id}>
+           <Container text textAlign='left'>
            <p>
              {event.description}
            </p>
+           </Container>
          </Accordion.Content>
-        </>
+       </div>
        ));
 
     return (
diff --git a/src/components/pages/TraineeTableRow.js b/src/components/pages/TraineeTableRow.js
index 3a9ae4fb2e1e478c5f3b550bafc29694eff1377a..34e58c3c4ac541fded95a5663c55875f3047e0d2 100644
--- a/src/components/pages/TraineeTableRow.js
+++ b/src/components/pages/TraineeTableRow.js
@@ -7,50 +7,38 @@ import {
   Grid,
   Button,
   Form,
-  Dropdown,
 } from 'semantic-ui-react';
 import { connect } from 'react-redux';
-import { visitorChange, submitVisitors } from '../../actions/statistics';
-import { writeNote, clearWrite, postEventNote } from '../../actions/notes';
-
-const visitStates = [
-  {
-    text: 'Igen',
-    value: 'Visitor',
-  },
-  {
-    text: 'SzĂłlt h nem',
-    value: 'Absent',
-  },
-  {
-    text: 'Nem',
-    value: 'No',
-  }
-]
+import { visitorChange } from '../../actions/statistics';
+import { writeNote, clearWrite, postEventNote, deleteNote } from '../../actions/notes';
+import CommentModal from './CommentModal'
 
 class TraineeTableRow extends Component {
   constructor(props) {
     super(props);
     this.state = {
-      showAddPopup: false,
-      showMorePopup: false,
-    };
+      note: '',
+    }
   }
 
-  triggerAdd = () => this.setState({ ...this.state, showAddPopup: !this.state.showAddPopup})
-  triggerMore = () => this.setState({ ...this.state, showMorePopup: !this.state.showMorePopup })
+  handleWrite = (e) => {
+    this.setState({ ...this.state, note: e.target.value });
+  }
+
+  clearWrite = () => {
+    this.setState({ ...this.state, note: '' });
+  }
 
   render() {
-    const note = this.props.actualNote;
-    const { trainee, edit, actualNote, selectedEvent, notes } = this.props;
+    const { trainee, edit, selectedEvent, notes } = this.props;
     const isVisitor = selectedEvent.visitors.includes(trainee.id);
     const isAbsent = selectedEvent.absent.includes(trainee.id);
     return (
-      <Table.Row>
+      <Table.Row key={trainee.id}>
         <Table.Cell>
           {trainee.full_name}
         </Table.Cell>
-        {!this.props.edit ?
+        {!edit ?
           <Table.Cell textAlign='center'>
             {
                 isVisitor ?
@@ -64,11 +52,23 @@ class TraineeTableRow extends Component {
           </Table.Cell>
           :
           <Table.Cell textAlign='center'>
-            <Dropdown
-              defaultValue={isVisitor ? 'Visitor' : isAbsent ? 'Absent' : 'No'}
-              selection
-              options={visitStates}
-              onChange={(_, v) => this.props.visitorChange({ id : trainee.id, value: v.value })}
+            <Button
+              compact
+              icon={<Icon color='green' name='checkmark' />}
+              color={isVisitor ? 'blue' : 'lightgrey'}
+              onClick={() => this.props.visitorChange({ id: trainee.id, value: 'Visitor' })}
+            />
+            <Button
+              compact
+              icon={<Icon color='orange' name='minus' />}
+              color={isAbsent ? 'blue' : 'lightgrey'}
+              onClick={() => this.props.visitorChange({ id: trainee.id, value: 'Absent' })}
+            />
+            <Button
+              compact
+              icon={<Icon color='red' name='cancel' />}
+              color={!isVisitor && !isAbsent ? 'blue' : 'lightgrey'}
+              onClick={() => this.props.visitorChange({ id: trainee.id, value: 'No' })}
             />
           </Table.Cell>
         }
@@ -92,41 +92,27 @@ class TraineeTableRow extends Component {
                   null
                  }
               </Grid.Column>
-              <Grid.Column floated='right' width={3} textAlign='right'>
+              <Grid.Column floated='right' width={4} textAlign='right'>
                 {notes.length > 0 ?
-                  <Popup
-                    basic
-                    open={this.state.showMorePopup}
-                    trigger={<Button icon='comment alternate outline' onClick={this.triggerMore} />}
-                    content={notes.map((note) => {
-                         return (
-                           <Comment.Content>
-                             <Comment.Author>{note.created_by_name}</Comment.Author>
-                             <Comment.Text>
-                               {note.note}
-                             </Comment.Text>
-                           </Comment.Content>
-                         );
-                        })}
-                  />
+                  <CommentModal notes={notes} />
              :
              null}
                 <Popup
                   trigger={<Button icon='plus' onClick={this.triggerAdd}/>}
-                  basic
-                  open={this.state.showAddPopup}
+                  on='click'
+                  position='bottom left'
                   content={
                     <Form reply>
                       <Form.TextArea
-                        value={note.note}
-                        onChange={e => this.props.writeNote(e)}
+                        value={this.state.note}
+                        onChange={e => this.handleWrite(e)}
                       />
                       <Button
                         onClick={() => {
                                         this.props.postEventNote({ eventid:selectedEvent.id,
                                                                   userid: trainee.id,
-                                                                  note: note.note });
-                                        this.props.clearWrite();
+                                                                  note: this.state.note });
+                                        this.clearWrite();
                                       }
                                 }
                         content='MegjegyzĂŠs hozzĂĄadĂĄsa'
@@ -145,6 +131,5 @@ class TraineeTableRow extends Component {
     );
   }
 }
-const mapStateToProps = ({ notes: { actualNote } }) => ({ actualNote })
 
-export default connect(mapStateToProps, { writeNote, clearWrite, postEventNote, visitorChange})(TraineeTableRow)
+export default connect(() => ({}), { writeNote, clearWrite, postEventNote, visitorChange, deleteNote })(TraineeTableRow)
diff --git a/src/components/pages/Trainees.js b/src/components/pages/Trainees.js
index 804c801a8b82f25d8b33da7d5c8732dd15399413..e49cc33900e5f54780cff2cd80c38f9db6da2bd3 100644
--- a/src/components/pages/Trainees.js
+++ b/src/components/pages/Trainees.js
@@ -19,7 +19,11 @@ class Trainees extends Component {
       }
       return (
         <Table.Cell textAlign='center'>
-          <Icon color='red' name='cancel' />
+          { event.absent.includes(trainee.id) ?
+            <Icon color='orange' name='minus' />
+            :
+            <Icon color='red' name='cancel' />
+          }
         </Table.Cell>);
     }));
   }
diff --git a/src/reducers/EventReducer.js b/src/reducers/EventReducer.js
index 5dd067d018da28027a91239edfb17d9b7a41637c..72a976407b8a514e31953543163f3cb92b6a1665 100644
--- a/src/reducers/EventReducer.js
+++ b/src/reducers/EventReducer.js
@@ -8,9 +8,12 @@ import {
   CLEAR_WRITE,
   ABSENT_CHANGE,
   CHANGE_NO,
+  SELECT_EVENT_FOR_EDIT,
+  EDIT_EVENT,
+  WRITE_EDITED_EVENT,
 } from '../actions/types';
 
-const INITIAL_STATE = { events: [], newEvent: {} };
+const INITIAL_STATE = { events: [], newEvent: {}, editedEvent: {} };
 
 export default (state = INITIAL_STATE, action) => {
   switch (action.type) {
@@ -75,8 +78,16 @@ export default (state = INITIAL_STATE, action) => {
     case DELETE_EVENT:
       state.events.splice(state.events.indexOf(action.payload), 1);
       return { ...state, events: [...state.events] };
+    case SELECT_EVENT_FOR_EDIT:
+      return { ...state, editedEvent: action.payload }
+    case WRITE_EDITED_EVENT:
+      return { ...state, editedEvent: { ...state.editedEvent, [action.target]: action.payload } };
+    case EDIT_EVENT:
+      const index = state.events.findIndex(item => item.id === action.payload.id);
+      state.events.splice(index, 1, action.payload);
+      return { ...state, events: [...state.events] };
     case CLEAR_WRITE:
-      return { ...state, newEvent: {} };
+      return { ...state, newEvent: {}, editedEvent: {} };
     default:
       return state;
   }
diff --git a/src/reducers/NoteReducer.js b/src/reducers/NoteReducer.js
index 90e4c8db7dba6f73a721b4eec4bbb8d51d3b5101..37caf2f13db724e0a386e7158fab0b5ae103bded 100644
--- a/src/reducers/NoteReducer.js
+++ b/src/reducers/NoteReducer.js
@@ -3,6 +3,7 @@ import {
   WRITE_NOTE,
   ADD_EVENT_NOTE,
   CLEAR_WRITE,
+  DELETE_NOTE,
 } from '../actions/types';
 
 const INITIAL_STATE = { eventNotes: [], actualNote: {} };
@@ -17,6 +18,9 @@ export default (state = INITIAL_STATE, action) => {
       return { ...state, eventNotes: [...state.eventNotes, action.payload] };
     case CLEAR_WRITE:
       return { ...state, actualNote: { note: '' } };
+    case DELETE_NOTE:
+      state.eventNotes.splice(state.eventNotes.indexOf(action.payload), 1);
+      return { ...state, eventNotes: [...state.eventNotes] };
     default:
       return state;
   }