From aac83dcedc644dfc23fc46366e54c65e0c86c5b9 Mon Sep 17 00:00:00 2001 From: Reed Garmsen Date: Wed, 2 Sep 2015 09:46:40 -0700 Subject: Additional refactoring according to issues not caught by eslint --- web/react/components/delete_post_modal.jsx | 7 +- web/react/components/navbar_dropdown.jsx | 13 ++-- web/react/components/password_reset_form.jsx | 2 +- web/react/components/password_reset_send_link.jsx | 4 +- web/react/components/signup_user_complete.jsx | 6 +- web/react/components/team_signup_username_page.jsx | 2 +- web/react/components/team_signup_welcome_page.jsx | 2 +- .../components/user_settings_notifications.jsx | 80 +++++++++++----------- 8 files changed, 56 insertions(+), 60 deletions(-) (limited to 'web') diff --git a/web/react/components/delete_post_modal.jsx b/web/react/components/delete_post_modal.jsx index 41ffe678b..075f9c742 100644 --- a/web/react/components/delete_post_modal.jsx +++ b/web/react/components/delete_post_modal.jsx @@ -61,8 +61,7 @@ export default class DeletePostModal extends React.Component { ); } componentDidMount() { - var self = this; - $(this.refs.modal.getDOMNode()).on('show.bs.modal', function freshOpen(e) { + $(React.findDOMNode(this.refs.modal)).on('show.bs.modal', function freshOpen(e) { var newState = {}; if (BrowserStore.getItem('edit_state_transfer')) { newState = BrowserStore.getItem('edit_state_transfer'); @@ -71,8 +70,8 @@ export default class DeletePostModal extends React.Component { var button = e.relatedTarget; newState = {title: $(button).attr('data-title'), channelId: $(button).attr('data-channelid'), postId: $(button).attr('data-postid'), comments: $(button).attr('data-comments')}; } - self.setState(newState); - }); + this.setState(newState); + }.bind(this)); PostStore.addSelectedPostChangeListener(this.onListenerChange); } componentWillUnmount() { diff --git a/web/react/components/navbar_dropdown.jsx b/web/react/components/navbar_dropdown.jsx index 7ffaeb712..e818a5c92 100644 --- a/web/react/components/navbar_dropdown.jsx +++ b/web/react/components/navbar_dropdown.jsx @@ -30,19 +30,18 @@ export default class NavbarDropdown extends React.Component { UserStore.addTeamsChangeListener(this.onListenerChange); TeamStore.addChangeListener(this.onListenerChange); - var self = this; - $(this.refs.dropdown.getDOMNode()).on('hide.bs.dropdown', function resetDropdown() { - self.blockToggle = true; + $(React.findDOMNode(this.refs.dropdown)).on('hide.bs.dropdown', function resetDropdown() { + this.blockToggle = true; setTimeout(function blockTimeout() { - self.blockToggle = false; - }, 100); - }); + this.blockToggle = false; + }.bind(this), 100); + }.bind(this)); } componentWillUnmount() { UserStore.removeTeamsChangeListener(this.onListenerChange); TeamStore.removeChangeListener(this.onListenerChange); - $(this.refs.dropdown.getDOMNode()).off('hide.bs.dropdown'); + $(React.findDOMNode(this.refs.dropdown)).off('hide.bs.dropdown'); } onListenerChange() { var newState = getStateFromStores(); diff --git a/web/react/components/password_reset_form.jsx b/web/react/components/password_reset_form.jsx index 3daf45ca3..7acd2d1f7 100644 --- a/web/react/components/password_reset_form.jsx +++ b/web/react/components/password_reset_form.jsx @@ -15,7 +15,7 @@ export default class PasswordResetForm extends React.Component { e.preventDefault(); var state = {}; - var password = this.refs.password.getDOMNode().value.trim(); + var password = React.findDOMNode(this.refs.password).value.trim(); if (!password || password.length < 5) { state.error = 'Please enter at least 5 characters.'; this.setState(state); diff --git a/web/react/components/password_reset_send_link.jsx b/web/react/components/password_reset_send_link.jsx index 9c5401b59..1e6cc3607 100644 --- a/web/react/components/password_reset_send_link.jsx +++ b/web/react/components/password_reset_send_link.jsx @@ -15,7 +15,7 @@ export default class PasswordResetSendLink extends React.Component { e.preventDefault(); var state = {}; - var email = this.refs.email.getDOMNode().value.trim(); + var email = React.findDOMNode(this.refs.email).value.trim(); if (!email) { state.error = 'Please enter a valid email address.'; this.setState(state); @@ -32,7 +32,7 @@ export default class PasswordResetSendLink extends React.Component { client.sendPasswordReset(data, function passwordResetSent() { this.setState({error: null, updateText:

A password reset link has been sent to {email} for your {this.props.teamDisplayName} team on {window.location.hostname}.

, moreUpdateText: 'Please check your inbox.'}); - $(this.refs.reset_form.getDOMNode()).hide(); + $(React.findDOMNode(this.refs.reset_form)).hide(); }.bind(this), function passwordResetFailedToSend(err) { this.setState({error: err.message, update_text: null, moreUpdateText: null}); diff --git a/web/react/components/signup_user_complete.jsx b/web/react/components/signup_user_complete.jsx index c19cac95d..67e85d4de 100644 --- a/web/react/components/signup_user_complete.jsx +++ b/web/react/components/signup_user_complete.jsx @@ -31,7 +31,7 @@ export default class SignupUserComplete extends React.Component { handleSubmit(e) { e.preventDefault(); - this.state.user.username = this.refs.name.getDOMNode().value.trim(); + this.state.user.username = React.findDOMNode(this.refs.name).value.trim(); if (!this.state.user.username) { this.setState({nameError: 'This field is required', emailError: '', passwordError: '', serverError: ''}); return; @@ -51,13 +51,13 @@ export default class SignupUserComplete extends React.Component { return; } - this.state.user.email = this.refs.email.getDOMNode().value.trim(); + this.state.user.email = React.findDOMNode(this.refs.email).value.trim(); if (!this.state.user.email) { this.setState({nameError: '', emailError: 'This field is required', passwordError: ''}); return; } - this.state.user.password = this.refs.password.getDOMNode().value.trim(); + this.state.user.password = React.findDOMNode(this.refs.password).value.trim(); if (!this.state.user.password || this.state.user.password .length < 5) { this.setState({nameError: '', emailError: '', passwordError: 'Please enter at least 5 characters', serverError: ''}); return; diff --git a/web/react/components/team_signup_username_page.jsx b/web/react/components/team_signup_username_page.jsx index 40eb3558e..8efcd87e1 100644 --- a/web/react/components/team_signup_username_page.jsx +++ b/web/react/components/team_signup_username_page.jsx @@ -21,7 +21,7 @@ export default class TeamSignupUsernamePage extends React.Component { submitNext(e) { e.preventDefault(); - var name = this.refs.name.getDOMNode().value.trim(); + var name = React.findDOMNode(this.refs.name).value.trim(); var usernameError = Utils.isValidUsername(name); if (usernameError === 'Cannot use a reserved word as a username.') { diff --git a/web/react/components/team_signup_welcome_page.jsx b/web/react/components/team_signup_welcome_page.jsx index f90fe2a2e..e742cba2f 100644 --- a/web/react/components/team_signup_welcome_page.jsx +++ b/web/react/components/team_signup_welcome_page.jsx @@ -34,7 +34,7 @@ export default class TeamSignupWelcomePage extends React.Component { var state = {useDiff: true, serverError: ''}; - var email = this.refs.email.getDOMNode().value.trim().toLowerCase(); + var email = React.findDOMNode(this.refs.email).value.trim().toLowerCase(); if (!email || !Utils.isEmail(email)) { state.emailError = 'Please enter a valid email address'; this.setState(state); diff --git a/web/react/components/user_settings_notifications.jsx b/web/react/components/user_settings_notifications.jsx index a6cbe533e..b97f29e29 100644 --- a/web/react/components/user_settings_notifications.jsx +++ b/web/react/components/user_settings_notifications.jsx @@ -163,15 +163,15 @@ export default class NotificationsTab extends React.Component { } handleNotifyRadio(notifyLevel) { this.setState({notifyLevel: notifyLevel}); - this.refs.wrapper.getDOMNode().focus(); + React.findDOMNode(this.refs.wrapper).focus(); } handleEmailRadio(enableEmail) { this.setState({enableEmail: enableEmail}); - this.refs.wrapper.getDOMNode().focus(); + React.findDOMNode(this.refs.wrapper).focus(); } handleSoundRadio(enableSound) { this.setState({enableSound: enableSound}); - this.refs.wrapper.getDOMNode().focus(); + React.findDOMNode(this.refs.wrapper).focus(); } updateUsernameKey(val) { this.setState({usernameKey: val}); @@ -189,10 +189,10 @@ export default class NotificationsTab extends React.Component { this.setState({channelKey: val}); } updateCustomMentionKeys() { - var checked = this.refs.customcheck.getDOMNode().checked; + var checked = React.findDOMNode(this.refs.customcheck).checked; if (checked) { - var text = this.refs.custommentions.getDOMNode().value; + var text = React.findDOMNode(this.refs.custommentions).value; // remove all spaces and split string into individual keys this.setState({customKeys: text.replace(/ /g, ''), customKeysChecked: true}); @@ -201,7 +201,7 @@ export default class NotificationsTab extends React.Component { } } onCustomChange() { - this.refs.customcheck.getDOMNode().checked = true; + React.findDOMNode(this.refs.customcheck).checked = true; this.updateCustomMentionKeys(); } render() { @@ -210,8 +210,6 @@ export default class NotificationsTab extends React.Component { serverError = this.state.serverError; } - var self = this; - var user = this.props.user; var desktopSection; @@ -234,7 +232,7 @@ export default class NotificationsTab extends React.Component {