diff --git a/webapp/actions/user_actions.jsx b/webapp/actions/user_actions.jsx index 455ca17300..a93f84e7cc 100644 --- a/webapp/actions/user_actions.jsx +++ b/webapp/actions/user_actions.jsx @@ -236,7 +236,7 @@ function onThemeSaved(teamId, theme, onSuccess) { const toDelete = []; for (const [name] of themePreferences) { - if (name === '') { + if (name === '' || name === teamId) { continue; } @@ -247,14 +247,16 @@ function onThemeSaved(teamId, theme, onSuccess) { }); } - // we're saving a new global theme so delete any team-specific ones - AsyncClient.deletePreferences(toDelete); + if (toDelete.length > 0) { + // we're saving a new global theme so delete any team-specific ones + AsyncClient.deletePreferences(toDelete); - // delete them locally before we hear from the server so that the UI flow is smoother - AppDispatcher.handleServerAction({ - type: ActionTypes.DELETED_PREFERENCES, - preferences: toDelete - }); + // delete them locally before we hear from the server so that the UI flow is smoother + AppDispatcher.handleServerAction({ + type: ActionTypes.DELETED_PREFERENCES, + preferences: toDelete + }); + } onSuccess(); } diff --git a/webapp/components/file_attachment_list.jsx b/webapp/components/file_attachment_list.jsx index 3df4684bed..3d39d87090 100644 --- a/webapp/components/file_attachment_list.jsx +++ b/webapp/components/file_attachment_list.jsx @@ -39,7 +39,12 @@ export default class FileAttachmentList extends React.Component { } else if (this.props.fileCount > 0) { for (let i = 0; i < Math.min(this.props.fileCount, Constants.MAX_DISPLAY_FILES); i++) { // Add a placeholder to avoid pop-in once we get the file infos for this post - postFiles.push(
); + postFiles.push( + + ); } } @@ -61,6 +66,6 @@ export default class FileAttachmentList extends React.Component { FileAttachmentList.propTypes = { fileCount: React.PropTypes.number.isRequired, - fileInfos: React.PropTypes.arrayOf(React.PropTypes.object).isRequired, + fileInfos: React.PropTypes.arrayOf(React.PropTypes.object), compactDisplay: React.PropTypes.bool }; diff --git a/webapp/components/user_settings/email_notification_setting.jsx b/webapp/components/user_settings/email_notification_setting.jsx index e10fd5154b..cc81c2fafc 100644 --- a/webapp/components/user_settings/email_notification_setting.jsx +++ b/webapp/components/user_settings/email_notification_setting.jsx @@ -24,7 +24,7 @@ export default class EmailNotificationSetting extends React.Component { enableEmail: React.PropTypes.bool.isRequired, onChange: React.PropTypes.func.isRequired, onSubmit: React.PropTypes.func.isRequired, - serverError: React.PropTypes.string.isRequired + serverError: React.PropTypes.string }; constructor(props) { diff --git a/webapp/components/user_settings/user_settings_advanced.jsx b/webapp/components/user_settings/user_settings_advanced.jsx index 4346c952b1..70306d8717 100644 --- a/webapp/components/user_settings/user_settings_advanced.jsx +++ b/webapp/components/user_settings/user_settings_advanced.jsx @@ -175,8 +175,8 @@ export default class AdvancedSettingsDisplay extends React.Component { defaultMessage='Enable Post Formatting' /> } - inputs={ -