6fbea0a59e
removing .mov for now until we can figure out solution with videojs, added model to track username changes, got chat creation flow down, progress on bookmark collections, albums, filtering blocks/mutes from group, explore, collection timelines
83 lines
2.8 KiB
JavaScript
83 lines
2.8 KiB
JavaScript
import React from 'react'
|
|
import PropTypes from 'prop-types'
|
|
import { connect } from 'react-redux'
|
|
import ImmutablePureComponent from 'react-immutable-pure-component'
|
|
import ImmutablePropTypes from 'react-immutable-proptypes'
|
|
import { me } from '../initial_state'
|
|
import { changeChatSetting } from '../actions/chat_settings'
|
|
import BlockHeading from '../components/block_heading'
|
|
import Form from '../components/form'
|
|
import SettingSwitch from '../components/setting_switch'
|
|
import Divider from '../components/divider'
|
|
|
|
class MessagesSettings extends ImmutablePureComponent {
|
|
|
|
handleOnChange = (key, checked) => {
|
|
this.props.onSave(key, checked)
|
|
}
|
|
|
|
render() {
|
|
const { chatSettings } = this.props
|
|
|
|
if (!chatSettings) return null
|
|
|
|
return (
|
|
<div className={[_s.d, _s.w100PC, _s.boxShadowNone].join(' ')}>
|
|
<div className={[_s.d, _s.h60PX, _s.w100PC, _s.px10, _s.py10, _s.borderBottom1PX, _s.borderColorSecondary].join(' ')}>
|
|
<BlockHeading title={'Chat Preferences'} />
|
|
</div>
|
|
|
|
<div className={[_s.d, _s.px15, _s.py15, _s.overflowHidden].join(' ')}>
|
|
<Form>
|
|
<SettingSwitch
|
|
label="Hide chats from users you don't follow"
|
|
settings={chatSettings}
|
|
settingPath='restrict_non_followers'
|
|
onChange={this.handleOnChange}
|
|
/>
|
|
{ /* : todo :
|
|
<div className={[_s.d, _s.w100PC, _s.my10, _s.borderColorSecondary, _s.borderBottom1PX].join(' ')} />
|
|
<SettingSwitch
|
|
label='Show when you are active'
|
|
settings={chatSettings}
|
|
settingPath='show_active'
|
|
onChange={this.handleOnChange}
|
|
/>
|
|
<div className={[_s.d, _s.w100PC, _s.my10, _s.borderColorSecondary, _s.borderBottom1PX].join(' ')} />
|
|
<SettingSwitch
|
|
label='Show read receipts'
|
|
settings={chatSettings}
|
|
settingPath='read_receipts'
|
|
onChange={this.handleOnChange}
|
|
/>
|
|
<div className={[_s.d, _s.w100PC, _s.my10, _s.borderColorSecondary, _s.borderBottom1PX].join(' ')} />
|
|
<SettingSwitch
|
|
label='Notification sound enabled'
|
|
settings={chatSettings}
|
|
settingPath='sounds'
|
|
onChange={this.handleOnChange}
|
|
/> */ }
|
|
</Form>
|
|
</div>
|
|
</div>
|
|
)
|
|
}
|
|
|
|
}
|
|
|
|
const mapStateToProps = (state) => ({
|
|
chatSettings: state.getIn(['chat_settings']),
|
|
})
|
|
|
|
const mapDispatchToProps = (dispatch) => ({
|
|
onSave(key, checked) {
|
|
// dispatch(changeChatSetting(key, checked))
|
|
},
|
|
})
|
|
|
|
MessagesSettings.propTypes = {
|
|
chatSettings: ImmutablePropTypes.map,
|
|
onSave: PropTypes.func.isRequired,
|
|
}
|
|
|
|
export default connect(mapStateToProps, mapDispatchToProps)(MessagesSettings) |