From c111777f85fc93ab18c6e28473e70c9ed2810683 Mon Sep 17 00:00:00 2001 From: Florian Orben Date: Tue, 1 Dec 2015 00:37:00 +0100 Subject: Allow to switch between default and emoji-one emoji style --- .../user_settings/user_settings_display.jsx | 85 +++++++++++++++++++++- 1 file changed, 83 insertions(+), 2 deletions(-) (limited to 'web/react/components/user_settings') diff --git a/web/react/components/user_settings/user_settings_display.jsx b/web/react/components/user_settings/user_settings_display.jsx index 43c8d33d1..c83b74e62 100644 --- a/web/react/components/user_settings/user_settings_display.jsx +++ b/web/react/components/user_settings/user_settings_display.jsx @@ -6,14 +6,17 @@ import SettingItemMin from '../setting_item_min.jsx'; import SettingItemMax from '../setting_item_max.jsx'; import Constants from '../../utils/constants.jsx'; import PreferenceStore from '../../stores/preference_store.jsx'; +import * as Utils from '../../utils/utils.jsx'; function getDisplayStateFromStores() { const militaryTime = PreferenceStore.getPreference(Constants.Preferences.CATEGORY_DISPLAY_SETTINGS, 'use_military_time', {value: 'false'}); const nameFormat = PreferenceStore.getPreference(Constants.Preferences.CATEGORY_DISPLAY_SETTINGS, 'name_format', {value: 'username'}); + const emojiStyle = PreferenceStore.getPreference(Constants.Preferences.CATEGORY_DISPLAY_SETTINGS, 'emoji_style', {value: 'default'}); return { militaryTime: militaryTime.value, - nameFormat: nameFormat.value + nameFormat: nameFormat.value, + emojiStyle: emojiStyle.value }; } @@ -31,8 +34,9 @@ export default class UserSettingsDisplay extends React.Component { handleSubmit() { const timePreference = PreferenceStore.setPreference(Constants.Preferences.CATEGORY_DISPLAY_SETTINGS, 'use_military_time', this.state.militaryTime); const namePreference = PreferenceStore.setPreference(Constants.Preferences.CATEGORY_DISPLAY_SETTINGS, 'name_format', this.state.nameFormat); + const emojiStyle = PreferenceStore.setPreference(Constants.Preferences.CATEGORY_DISPLAY_SETTINGS, 'emoji_style', this.state.emojiStyle); - savePreferences([timePreference, namePreference], + savePreferences([timePreference, namePreference, emojiStyle], () => { PreferenceStore.emitChange(); this.updateSection(''); @@ -48,6 +52,9 @@ export default class UserSettingsDisplay extends React.Component { handleNameRadio(nameFormat) { this.setState({nameFormat}); } + handleEmojiRadio(emojiStyle) { + this.setState({emojiStyle}); + } updateSection(section) { this.setState(getDisplayStateFromStores()); this.props.updateSection(section); @@ -56,6 +63,7 @@ export default class UserSettingsDisplay extends React.Component { const serverError = this.state.serverError || null; let clockSection; let nameFormatSection; + let emojiSection; if (this.props.activeSection === 'clock') { const clockFormat = [false, false]; if (this.state.militaryTime === 'true') { @@ -209,6 +217,77 @@ export default class UserSettingsDisplay extends React.Component { ); } + if (this.props.activeSection === 'emoji') { + const inputs = [ +
+
+ +
+
+
+ +
+
+

{'Select how you prefer time displayed.'}
+
+ ]; + + emojiSection = ( + { + this.updateSection(''); + e.preventDefault(); + }} + /> + ); + } else { + const describe = this.state.emojiStyle === 'default' ? 'Default Style' : 'Emoji One Style'; + emojiSection = ( + { + this.props.updateSection('emoji'); + }} + /> + ); + } + return (
@@ -239,6 +318,8 @@ export default class UserSettingsDisplay extends React.Component {
{nameFormatSection}
+ {emojiSection} +
); -- cgit v1.2.3-1-g7c22