diff --git a/client/coral-framework/store/actions/items.js b/client/coral-framework/store/actions/items.js index 351986ce2..0b23098bb 100644 --- a/client/coral-framework/store/actions/items.js +++ b/client/coral-framework/store/actions/items.js @@ -56,12 +56,13 @@ export const updateItem = (id, property, value) => { } } -export const appendItemArray = (id, property, value) => { +export const appendItemArray = (id, property, value, addToFront) => { return { type: APPEND_ITEM_ARRAY, id, property, - value + value, + addToFront } } @@ -115,7 +116,7 @@ export function getStream (assetId) { const keys = Object.keys(childComments) for (var i=0; i < keys.length; i++ ) { - dispatch(updateItem(keys[i], 'children', childComments[keys[i]])) + dispatch(updateItem(keys[i], 'children', childComments[keys[i]].reverse())) } return (json) diff --git a/client/coral-framework/store/reducers/items.js b/client/coral-framework/store/reducers/items.js index 8242ddcb3..d3eb4d3af 100644 --- a/client/coral-framework/store/reducers/items.js +++ b/client/coral-framework/store/reducers/items.js @@ -15,7 +15,12 @@ export default (state = initialState, action) => { ) case actions.APPEND_ITEM_ARRAY: return state.updateIn([action.id, action.property], (prop) => { - return prop ? prop.unshift(action.value) : fromJS([action.value]) + if (action.addToFront) { + return prop ? prop.unshift(action.value) : fromJS([action.value]) + } else { + return prop ? prop.push(action.value) : fromJS([action.value]) + } + } ) default: diff --git a/client/coral-plugin-commentbox/CommentBox.js b/client/coral-plugin-commentbox/CommentBox.js index b7d282f10..c763cb82a 100644 --- a/client/coral-plugin-commentbox/CommentBox.js +++ b/client/coral-plugin-commentbox/CommentBox.js @@ -35,7 +35,7 @@ class CommentBox extends Component { updateItem(parent_id, 'showReply', false) postItem(comment, 'comments') .then((comment_id) => { - appendItemArray(parent_id || id, related, comment_id) + appendItemArray(parent_id || id, related, comment_id, parent_id ? true : false) addNotification('success', 'Your comment has been posted.') }).catch((err) => console.error(err)) this.setState({body: ''})