The code powering m.abunchtell.com https://m.abunchtell.com
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

69 строки
2.2 KiB

  1. import PureRenderMixin from 'react-addons-pure-render-mixin';
  2. import ImmutablePropTypes from 'react-immutable-proptypes';
  3. import { defineMessages, injectIntl, FormattedMessage } from 'react-intl';
  4. import ColumnCollapsable from '../../../components/column_collapsable';
  5. import SettingToggle from '../../notifications/components/setting_toggle';
  6. import SettingText from './setting_text';
  7. const messages = defineMessages({
  8. filter_regex: { id: 'home.column_settings.filter_regex', defaultMessage: 'Filter by regular expressions' }
  9. });
  10. const outerStyle = {
  11. background: '#373b4a',
  12. padding: '15px'
  13. };
  14. const sectionStyle = {
  15. cursor: 'default',
  16. display: 'block',
  17. fontWeight: '500',
  18. color: '#9baec8',
  19. marginBottom: '10px'
  20. };
  21. const rowStyle = {
  22. };
  23. const ColumnSettings = React.createClass({
  24. propTypes: {
  25. settings: ImmutablePropTypes.map.isRequired,
  26. onChange: React.PropTypes.func.isRequired,
  27. onSave: React.PropTypes.func.isRequired,
  28. intl: React.PropTypes.object.isRequired
  29. },
  30. mixins: [PureRenderMixin],
  31. render () {
  32. const { settings, onChange, onSave, intl } = this.props;
  33. return (
  34. <ColumnCollapsable icon='sliders' fullHeight={209} onCollapse={onSave}>
  35. <div style={outerStyle}>
  36. <span style={sectionStyle}><FormattedMessage id='home.column_settings.basic' defaultMessage='Basic' /></span>
  37. <div style={rowStyle}>
  38. <SettingToggle settings={settings} settingKey={['shows', 'reblog']} onChange={onChange} label={<FormattedMessage id='home.column_settings.show_reblogs' defaultMessage='Show reblogs' />} />
  39. </div>
  40. <div style={rowStyle}>
  41. <SettingToggle settings={settings} settingKey={['shows', 'reply']} onChange={onChange} label={<FormattedMessage id='home.column_settings.show_replies' defaultMessage='Show replies' />} />
  42. </div>
  43. <span style={sectionStyle}><FormattedMessage id='home.column_settings.advanced' defaultMessage='Advanced' /></span>
  44. <div style={rowStyle}>
  45. <SettingText settings={settings} settingKey={['regex', 'body']} onChange={onChange} label={intl.formatMessage(messages.filter_regex)} />
  46. </div>
  47. </div>
  48. </ColumnCollapsable>
  49. );
  50. }
  51. });
  52. export default injectIntl(ColumnSettings);