From 01c2f47b7f397af362504a64d850b0eed0b4575f Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 28 Apr 2022 21:29:29 +0200 Subject: [PATCH] =?UTF-8?q?[Glitch]=20Fix=20empty=20=E2=80=9CServer=20rule?= =?UTF-8?q?s=20violation=E2=80=9D=20report=20option?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Port eed5a4bf9c7e41a03ebab92dd45ebc1b899dc768 to glitch-soc Signed-off-by: Claire --- .../glitch/features/report/category.js | 18 +++++++++++++++--- .../flavours/glitch/features/ui/index.js | 2 ++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/app/javascript/flavours/glitch/features/report/category.js b/app/javascript/flavours/glitch/features/report/category.js index cf63533d07..4c71ccde70 100644 --- a/app/javascript/flavours/glitch/features/report/category.js +++ b/app/javascript/flavours/glitch/features/report/category.js @@ -1,5 +1,7 @@ import React from 'react'; import PropTypes from 'prop-types'; +import ImmutablePropTypes from 'react-immutable-proptypes'; +import { connect } from 'react-redux'; import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; import Button from 'flavours/glitch/components/button'; import Option from './components/option'; @@ -17,11 +19,17 @@ const messages = defineMessages({ account: { id: 'report.category.title_account', defaultMessage: 'profile' }, }); -export default @injectIntl +const mapStateToProps = state => ({ + rules: state.get('rules'), +}); + +export default @connect(mapStateToProps) +@injectIntl class Category extends React.PureComponent { static propTypes = { onNextStep: PropTypes.func.isRequired, + rules: ImmutablePropTypes.list, category: PropTypes.string, onChangeCategory: PropTypes.func.isRequired, startedFrom: PropTypes.oneOf(['status', 'account']), @@ -53,13 +61,17 @@ class Category extends React.PureComponent { }; render () { - const { category, startedFrom, intl } = this.props; + const { category, startedFrom, rules, intl } = this.props; - const options = [ + const options = rules.size > 0 ? [ 'dislike', 'spam', 'violation', 'other', + ] : [ + 'dislike', + 'spam', + 'other', ]; return ( diff --git a/app/javascript/flavours/glitch/features/ui/index.js b/app/javascript/flavours/glitch/features/ui/index.js index 7ca1adf7cc..099ffc69c7 100644 --- a/app/javascript/flavours/glitch/features/ui/index.js +++ b/app/javascript/flavours/glitch/features/ui/index.js @@ -11,6 +11,7 @@ import { uploadCompose, resetCompose, changeComposeSpoilerness } from 'flavours/ import { expandHomeTimeline } from 'flavours/glitch/actions/timelines'; import { expandNotifications, notificationsSetVisibility } from 'flavours/glitch/actions/notifications'; import { fetchFilters } from 'flavours/glitch/actions/filters'; +import { fetchRules } from 'flavours/glitch/actions/rules'; import { clearHeight } from 'flavours/glitch/actions/height_cache'; import { synchronouslySubmitMarkers, submitMarkers, fetchMarkers } from 'flavours/glitch/actions/markers'; import { WrappedSwitch, WrappedRoute } from 'flavours/glitch/util/react_router_helpers'; @@ -402,6 +403,7 @@ class UI extends React.Component { this.props.dispatch(expandHomeTimeline()); this.props.dispatch(expandNotifications()); setTimeout(() => this.props.dispatch(fetchFilters()), 500); + setTimeout(() => this.props.dispatch(fetchRules()), 3000); } componentDidMount () {