diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2017-02-14 23:59:46 +0100 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2017-02-15 00:01:52 +0100 |
commit | 0a2427f79b90f82100b3a4ebe95ceb488cbb5a1d (patch) | |
tree | 40b3811830cba31bd0ba997b6ef900cdf3f849f7 | |
parent | e571a018531c55f21f29d9e79cfe6161a0bc248a (diff) |
Fix #634 - Only include innermost-level statuses in report UI
Fix #635 - Include the initially-reported status in report UI even if it's not among the user's most recent statuses
3 files changed, 7 insertions, 3 deletions
diff --git a/app/assets/javascripts/components/features/report/components/status_check_box.jsx b/app/assets/javascripts/components/features/report/components/status_check_box.jsx index df4a31457..6d976582b 100644 --- a/app/assets/javascripts/components/features/report/components/status_check_box.jsx +++ b/app/assets/javascripts/components/features/report/components/status_check_box.jsx @@ -18,6 +18,10 @@ const StatusCheckBox = React.createClass({ const { status, checked, onToggle, disabled } = this.props; const content = { __html: emojify(status.get('content')) }; + if (status.get('reblog')) { + return null; + } + return ( <div className='status-check-box' style={{ display: 'flex' }}> <div diff --git a/app/assets/javascripts/components/features/report/index.jsx b/app/assets/javascripts/components/features/report/index.jsx index eb8d28fe8..3177d28b1 100644 --- a/app/assets/javascripts/components/features/report/index.jsx +++ b/app/assets/javascripts/components/features/report/index.jsx @@ -27,7 +27,7 @@ const makeMapStateToProps = () => { isSubmitting: state.getIn(['reports', 'new', 'isSubmitting']), account: getAccount(state, accountId), comment: state.getIn(['reports', 'new', 'comment']), - statusIds: state.getIn(['timelines', 'accounts_timelines', accountId, 'items'], Immutable.List()) + statusIds: Immutable.OrderedSet(state.getIn(['timelines', 'accounts_timelines', accountId, 'items'])).union(state.getIn(['reports', 'new', 'status_ids'])) }; }; diff --git a/app/assets/javascripts/components/reducers/reports.jsx b/app/assets/javascripts/components/reducers/reports.jsx index 272aff3e5..e1cce1c5f 100644 --- a/app/assets/javascripts/components/reducers/reports.jsx +++ b/app/assets/javascripts/components/reducers/reports.jsx @@ -25,10 +25,10 @@ export default function reports(state = initialState, action) { map.setIn(['new', 'account_id'], action.account.get('id')); if (state.getIn(['new', 'account_id']) !== action.account.get('id')) { - map.setIn(['new', 'status_ids'], action.status ? Immutable.Set([action.status.get('id')]) : Immutable.Set()); + map.setIn(['new', 'status_ids'], action.status ? Immutable.Set([action.status.getIn(['reblog', 'id'], action.status.get('id'))]) : Immutable.Set()); map.setIn(['new', 'comment'], ''); } else { - map.updateIn(['new', 'status_ids'], Immutable.Set(), set => set.add(action.status.get('id'))); + map.updateIn(['new', 'status_ids'], Immutable.Set(), set => set.add(action.status.getIn(['reblog', 'id'], action.status.get('id')))); } }); case REPORT_STATUS_TOGGLE: |