[Glitch] Fix empty “Server rules violation” report option
Port eed5a4bf9c to glitch-soc
Signed-off-by: Claire <claire.github-309c@sitedethib.com>
			
			
This commit is contained in:
		
							parent
							
								
									01266e4d7f
								
							
						
					
					
						commit
						01c2f47b7f
					
				
					 2 changed files with 17 additions and 3 deletions
				
			
		| 
						 | 
					@ -1,5 +1,7 @@
 | 
				
			||||||
import React from 'react';
 | 
					import React from 'react';
 | 
				
			||||||
import PropTypes from 'prop-types';
 | 
					import PropTypes from 'prop-types';
 | 
				
			||||||
 | 
					import ImmutablePropTypes from 'react-immutable-proptypes';
 | 
				
			||||||
 | 
					import { connect } from 'react-redux';
 | 
				
			||||||
import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
 | 
					import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
 | 
				
			||||||
import Button from 'flavours/glitch/components/button';
 | 
					import Button from 'flavours/glitch/components/button';
 | 
				
			||||||
import Option from './components/option';
 | 
					import Option from './components/option';
 | 
				
			||||||
| 
						 | 
					@ -17,11 +19,17 @@ const messages = defineMessages({
 | 
				
			||||||
  account: { id: 'report.category.title_account', defaultMessage: 'profile' },
 | 
					  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 {
 | 
					class Category extends React.PureComponent {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  static propTypes = {
 | 
					  static propTypes = {
 | 
				
			||||||
    onNextStep: PropTypes.func.isRequired,
 | 
					    onNextStep: PropTypes.func.isRequired,
 | 
				
			||||||
 | 
					    rules: ImmutablePropTypes.list,
 | 
				
			||||||
    category: PropTypes.string,
 | 
					    category: PropTypes.string,
 | 
				
			||||||
    onChangeCategory: PropTypes.func.isRequired,
 | 
					    onChangeCategory: PropTypes.func.isRequired,
 | 
				
			||||||
    startedFrom: PropTypes.oneOf(['status', 'account']),
 | 
					    startedFrom: PropTypes.oneOf(['status', 'account']),
 | 
				
			||||||
| 
						 | 
					@ -53,13 +61,17 @@ class Category extends React.PureComponent {
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  render () {
 | 
					  render () {
 | 
				
			||||||
    const { category, startedFrom, intl } = this.props;
 | 
					    const { category, startedFrom, rules, intl } = this.props;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    const options = [
 | 
					    const options = rules.size > 0 ? [
 | 
				
			||||||
      'dislike',
 | 
					      'dislike',
 | 
				
			||||||
      'spam',
 | 
					      'spam',
 | 
				
			||||||
      'violation',
 | 
					      'violation',
 | 
				
			||||||
      'other',
 | 
					      'other',
 | 
				
			||||||
 | 
					    ] : [
 | 
				
			||||||
 | 
					      'dislike',
 | 
				
			||||||
 | 
					      'spam',
 | 
				
			||||||
 | 
					      'other',
 | 
				
			||||||
    ];
 | 
					    ];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    return (
 | 
					    return (
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -11,6 +11,7 @@ import { uploadCompose, resetCompose, changeComposeSpoilerness } from 'flavours/
 | 
				
			||||||
import { expandHomeTimeline } from 'flavours/glitch/actions/timelines';
 | 
					import { expandHomeTimeline } from 'flavours/glitch/actions/timelines';
 | 
				
			||||||
import { expandNotifications, notificationsSetVisibility } from 'flavours/glitch/actions/notifications';
 | 
					import { expandNotifications, notificationsSetVisibility } from 'flavours/glitch/actions/notifications';
 | 
				
			||||||
import { fetchFilters } from 'flavours/glitch/actions/filters';
 | 
					import { fetchFilters } from 'flavours/glitch/actions/filters';
 | 
				
			||||||
 | 
					import { fetchRules } from 'flavours/glitch/actions/rules';
 | 
				
			||||||
import { clearHeight } from 'flavours/glitch/actions/height_cache';
 | 
					import { clearHeight } from 'flavours/glitch/actions/height_cache';
 | 
				
			||||||
import { synchronouslySubmitMarkers, submitMarkers, fetchMarkers } from 'flavours/glitch/actions/markers';
 | 
					import { synchronouslySubmitMarkers, submitMarkers, fetchMarkers } from 'flavours/glitch/actions/markers';
 | 
				
			||||||
import { WrappedSwitch, WrappedRoute } from 'flavours/glitch/util/react_router_helpers';
 | 
					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(expandHomeTimeline());
 | 
				
			||||||
    this.props.dispatch(expandNotifications());
 | 
					    this.props.dispatch(expandNotifications());
 | 
				
			||||||
    setTimeout(() => this.props.dispatch(fetchFilters()), 500);
 | 
					    setTimeout(() => this.props.dispatch(fetchFilters()), 500);
 | 
				
			||||||
 | 
					    setTimeout(() => this.props.dispatch(fetchRules()), 3000);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  componentDidMount () {
 | 
					  componentDidMount () {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue