Skip to content

Commit c22b138

Browse files
committed
issue#9: delete events
1 parent 147053f commit c22b138

File tree

4 files changed

+27
-4
lines changed

4 files changed

+27
-4
lines changed

src/shared/containers/timeline-wall/index.jsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ function TimelineWallContainer(props) {
106106
const deleteEvent = (id) => {
107107
deleteEventById(authToken, id, () => {
108108
getPendingApprovals(authToken);
109+
getTimelineEvents();
109110
});
110111
};
111112

@@ -115,9 +116,15 @@ function TimelineWallContainer(props) {
115116
});
116117
};
117118

118-
const removeEvent = (id, body) => {
119-
rejectEventById(authToken, id, body, () => {
119+
const removeEvent = (event = {}, body) => {
120+
const rejectBody = body;
121+
const id = event.id ? event.id : event;
122+
if (!body.reason) {
123+
rejectBody.reason = 'Deleted by admin.';
124+
}
125+
rejectEventById(authToken, id, rejectBody, () => {
120126
getPendingApprovals(authToken);
127+
getTimelineEvents();
121128
});
122129
};
123130

@@ -188,6 +195,7 @@ function TimelineWallContainer(props) {
188195
getAvatar={getAvatar}
189196
userAvatars={userAvatars}
190197
uploading={uploading}
198+
deleteEvent={deleteEvent}
191199
/>
192200
<React.Fragment>
193201
{

src/shared/containers/timeline-wall/timeline-events/events/event-item/index.jsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import './styles.scss';
1616
import { DEFAULT_AVATAR_URL } from '../../../../../utils/url';
1717

1818
function EventItem({
19-
className, isLeft, eventItem, removeEvent, isAdmin, userAvatars,
19+
className, isLeft, eventItem, removeEvent, deleteEvent, isAdmin, userAvatars,
2020
}) {
2121
const [isExpanded, setIsExpanded] = useState(false);
2222
const [showModalPhoto, setShowModalPhoto] = useState(false);
@@ -112,13 +112,15 @@ function EventItem({
112112

113113
{showModalDelete ? (
114114
<ModalDeleteConfirmation
115+
id={eventItem.id}
115116
eventItem={showModalDelete}
116117
onClose={(result) => {
117118
if (result === true) {
118119
removeEvent(showModalDelete);
119120
}
120121
setShowModalDelete(false);
121122
}}
123+
deleteEvent={deleteEvent}
122124
/>
123125
) : null}
124126
</div>
@@ -150,6 +152,7 @@ EventItem.propTypes = {
150152
removeEvent: PT.func,
151153
isAdmin: PT.bool,
152154
userAvatars: PT.shape(),
155+
deleteEvent: PT.func.isRequired,
153156
};
154157

155158
export default EventItem;

src/shared/containers/timeline-wall/timeline-events/events/index.jsx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import EventItem from './event-item';
66
const colors = ['green', 'red', 'purple'];
77

88
function Events({
9-
events, removeEvent, isAuthenticated, getAvatar, userAvatars,
9+
events, removeEvent, isAuthenticated, getAvatar, userAvatars, isAdmin, deleteEvent,
1010
}) {
1111
const [leftItems, setLeftItems] = useState([]);
1212
const [rightItems, setRightItems] = useState([]);
@@ -65,6 +65,8 @@ function Events({
6565
}}
6666
getAvatar={getAvatar}
6767
userAvatars={userAvatars}
68+
isAdmin={isAdmin}
69+
deleteEvent={deleteEvent}
6870
/>
6971
))}
7072
</div>
@@ -80,6 +82,8 @@ function Events({
8082
}}
8183
getAvatar={getAvatar}
8284
userAvatars={userAvatars}
85+
isAdmin={isAdmin}
86+
deleteEvent={deleteEvent}
8387
/>
8488
))}
8589
</div>
@@ -95,6 +99,8 @@ function Events({
9599
}}
96100
getAvatar={getAvatar}
97101
userAvatars={userAvatars}
102+
isAdmin={isAdmin}
103+
deleteEvent={deleteEvent}
98104
/>
99105
))}
100106
</div>
@@ -110,6 +116,7 @@ Events.defaultProps = {
110116
removeEvent: () => { },
111117
isAuthenticated: false,
112118
userAvatars: {},
119+
isAdmin: false,
113120
};
114121

115122
/**
@@ -121,6 +128,8 @@ Events.propTypes = {
121128
isAuthenticated: PT.bool,
122129
getAvatar: PT.func.isRequired,
123130
userAvatars: PT.shape(),
131+
isAdmin: PT.bool,
132+
deleteEvent: PT.func.isRequired,
124133
};
125134

126135
export default Events;

src/shared/containers/timeline-wall/timeline-events/index.jsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ function TimelineEvents({
2222
userAvatars,
2323
onDoneAddEvent,
2424
uploading,
25+
deleteEvent,
2526
}) {
2627
return (
2728
<div className={className} styleName="container">
@@ -44,6 +45,7 @@ function TimelineEvents({
4445
}}
4546
getAvatar={getAvatar}
4647
userAvatars={userAvatars}
48+
deleteEvent={deleteEvent}
4749
/>
4850
)
4951
: null}
@@ -112,6 +114,7 @@ TimelineEvents.propTypes = {
112114
onDoneAddEvent: PT.func.isRequired,
113115
userAvatars: PT.shape(),
114116
uploading: PT.bool,
117+
deleteEvent: PT.func.isRequired,
115118
};
116119

117120
export default TimelineEvents;

0 commit comments

Comments
 (0)