Add IDs to Team Settings, Channel Settings, Account Settings (Display & Advanced) (#5823)

* Add IDs to Channel Notification Preferences

* Add IDs to Display Settings

* Add ID to language dropdown

* Add Ids

* Add ids

* Add Ids

* Add Ids

* Add Ids

* Add Id

* Add Ids

* Add Ids

* Fix duplicate Id
Этот коммит содержится в:
Eric Sethna
2017-03-21 17:16:48 -06:00
коммит произвёл Joram Wilander
родитель bea49cbcf3
Коммит 25517aae56
11 изменённых файлов: 73 добавлений и 3 удалений

Просмотреть файл

@@ -379,6 +379,7 @@ export default class ChannelHeader extends React.Component {
if (isDirect) { if (isDirect) {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelEditHeaderDirect'
key='edit_header_direct' key='edit_header_direct'
role='presentation' role='presentation'
> >
@@ -397,6 +398,7 @@ export default class ChannelHeader extends React.Component {
} else if (isGroup) { } else if (isGroup) {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelEditHeaderGroup'
key='edit_header_direct' key='edit_header_direct'
role='presentation' role='presentation'
> >
@@ -415,6 +417,7 @@ export default class ChannelHeader extends React.Component {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelnotificationPreferencesGroup'
key='notification_preferences' key='notification_preferences'
role='presentation' role='presentation'
> >
@@ -437,6 +440,7 @@ export default class ChannelHeader extends React.Component {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelAddMembersGroup'
key='add_members' key='add_members'
role='presentation' role='presentation'
> >
@@ -455,6 +459,7 @@ export default class ChannelHeader extends React.Component {
} else { } else {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelViewInfo'
key='view_info' key='view_info'
role='presentation' role='presentation'
> >
@@ -473,6 +478,7 @@ export default class ChannelHeader extends React.Component {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelNotificationPreferences'
key='notification_preferences' key='notification_preferences'
role='presentation' role='presentation'
> >
@@ -503,6 +509,7 @@ export default class ChannelHeader extends React.Component {
if (!ChannelStore.isDefault(channel)) { if (!ChannelStore.isDefault(channel)) {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelAddMembers'
key='add_members' key='add_members'
role='presentation' role='presentation'
> >
@@ -522,6 +529,7 @@ export default class ChannelHeader extends React.Component {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelManageMembers'
key='manage_members' key='manage_members'
role='presentation' role='presentation'
> >
@@ -548,6 +556,7 @@ export default class ChannelHeader extends React.Component {
const deleteOption = ( const deleteOption = (
<li <li
id='channelDelete'
key='delete_channel' key='delete_channel'
role='presentation' role='presentation'
> >
@@ -570,6 +579,7 @@ export default class ChannelHeader extends React.Component {
if (ChannelUtils.showManagementOptions(channel, isAdmin, isSystemAdmin, isChannelAdmin)) { if (ChannelUtils.showManagementOptions(channel, isAdmin, isSystemAdmin, isChannelAdmin)) {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelEditHeader'
key='set_channel_header' key='set_channel_header'
role='presentation' role='presentation'
> >
@@ -591,6 +601,7 @@ export default class ChannelHeader extends React.Component {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelEditPurpose'
key='set_channel_purpose' key='set_channel_purpose'
role='presentation' role='presentation'
> >
@@ -612,6 +623,7 @@ export default class ChannelHeader extends React.Component {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelRename'
key='rename_channel' key='rename_channel'
role='presentation' role='presentation'
> >
@@ -651,6 +663,7 @@ export default class ChannelHeader extends React.Component {
if (!ChannelStore.isDefault(channel) && canLeave) { if (!ChannelStore.isDefault(channel) && canLeave) {
dropdownContents.push( dropdownContents.push(
<li <li
id='channelLeave'
key='leave_channel' key='leave_channel'
role='presentation' role='presentation'
> >
@@ -707,6 +720,7 @@ export default class ChannelHeader extends React.Component {
overlay={toggleFavoriteTooltip} overlay={toggleFavoriteTooltip}
> >
<a <a
id='toggleFavorite'
href='#' href='#'
onClick={this.toggleFavorite} onClick={this.toggleFavorite}
className='channel-header__favorites' className='channel-header__favorites'
@@ -751,10 +765,10 @@ export default class ChannelHeader extends React.Component {
{toggleFavorite} {toggleFavorite}
<div className='dropdown'> <div className='dropdown'>
<a <a
id='channelHeaderDropdown'
href='#' href='#'
className='dropdown-toggle theme' className='dropdown-toggle theme'
type='button' type='button'
id='channel_header_dropdown'
data-toggle='dropdown' data-toggle='dropdown'
aria-expanded='true' aria-expanded='true'
> >
@@ -789,7 +803,7 @@ export default class ChannelHeader extends React.Component {
<a <a
href='#' href='#'
type='button' type='button'
id='pinned-posts-button' id='pinnedPostsButton'
className='pinned-posts-button' className='pinned-posts-button'
onClick={this.getPinnedPosts} onClick={this.getPinnedPosts}
> >
@@ -813,6 +827,7 @@ export default class ChannelHeader extends React.Component {
overlay={recentMentionsTooltip} overlay={recentMentionsTooltip}
> >
<a <a
id='searchMentions'
href='#' href='#'
type='button' type='button'
onClick={this.searchMentions} onClick={this.searchMentions}
@@ -830,6 +845,7 @@ export default class ChannelHeader extends React.Component {
overlay={flaggedTooltip} overlay={flaggedTooltip}
> >
<a <a
id='flaggedPostsButton'
href='#' href='#'
type='button' type='button'
onClick={this.getFlagged} onClick={this.getFlagged}

Просмотреть файл

@@ -55,6 +55,7 @@ export default class ChannelInviteButton extends React.Component {
render() { render() {
return ( return (
<SpinnerButton <SpinnerButton
id='addMembers'
className='btn btn-sm btn-primary' className='btn btn-sm btn-primary'
onClick={this.handleClick} onClick={this.handleClick}
spinning={this.state.addingUser} spinning={this.state.addingUser}

Просмотреть файл

@@ -131,6 +131,7 @@ export default class ChannelMembersDropdown extends React.Component {
removeFromChannel = ( removeFromChannel = (
<li role='presentation'> <li role='presentation'>
<a <a
id='removeFromChannel'
role='menuitem' role='menuitem'
href='#' href='#'
onClick={this.handleRemoveFromChannel} onClick={this.handleRemoveFromChannel}
@@ -149,6 +150,7 @@ export default class ChannelMembersDropdown extends React.Component {
makeChannelMember = ( makeChannelMember = (
<li role='presentation'> <li role='presentation'>
<a <a
id='makeChannelMember'
role='menuitem' role='menuitem'
href='#' href='#'
onClick={this.handleMakeChannelMember} onClick={this.handleMakeChannelMember}
@@ -167,6 +169,7 @@ export default class ChannelMembersDropdown extends React.Component {
makeChannelAdmin = ( makeChannelAdmin = (
<li role='presentation'> <li role='presentation'>
<a <a
id='makeChannelAdmin'
role='menuitem' role='menuitem'
href='#' href='#'
onClick={this.handleMakeChannelAdmin} onClick={this.handleMakeChannelAdmin}
@@ -183,6 +186,7 @@ export default class ChannelMembersDropdown extends React.Component {
return ( return (
<div className='dropdown member-drop'> <div className='dropdown member-drop'>
<a <a
id='channelMemberDropdown'
href='#' href='#'
className='dropdown-toggle theme' className='dropdown-toggle theme'
type='button' type='button'
@@ -206,6 +210,7 @@ export default class ChannelMembersDropdown extends React.Component {
} else if (this.canRemoveMember()) { } else if (this.canRemoveMember()) {
return ( return (
<button <button
id='removeMember'
type='button' type='button'
className='btn btn-danger btn-message' className='btn btn-danger btn-message'
onClick={this.handleRemoveFromChannel} onClick={this.handleRemoveFromChannel}

Просмотреть файл

@@ -41,6 +41,7 @@ export default class ChannelMembersModal extends React.Component {
/> />
</Modal.Title> </Modal.Title>
<a <a
id='showInviteModal'
className='btn btn-md btn-primary' className='btn btn-md btn-primary'
href='#' href='#'
onClick={() => { onClick={() => {
@@ -71,4 +72,4 @@ ChannelMembersModal.propTypes = {
onModalDismissed: React.PropTypes.func.isRequired, onModalDismissed: React.PropTypes.func.isRequired,
showInviteModal: React.PropTypes.func.isRequired, showInviteModal: React.PropTypes.func.isRequired,
channel: React.PropTypes.object.isRequired channel: React.PropTypes.object.isRequired
}; };

Просмотреть файл

@@ -135,6 +135,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelNotificationGlobalDefault'
type='radio' type='radio'
name='desktopNotificationLevel' name='desktopNotificationLevel'
checked={notifyActive[0]} checked={notifyActive[0]}
@@ -153,6 +154,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelNotificationAllActivity'
type='radio' type='radio'
name='desktopNotificationLevel' name='desktopNotificationLevel'
checked={notifyActive[1]} checked={notifyActive[1]}
@@ -165,6 +167,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelNotificationMentions'
type='radio' type='radio'
name='desktopNotificationLevel' name='desktopNotificationLevel'
checked={notifyActive[2]} checked={notifyActive[2]}
@@ -177,6 +180,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelNotificationNever'
type='radio' type='radio'
name='desktopNotificationLevel' name='desktopNotificationLevel'
checked={notifyActive[3]} checked={notifyActive[3]}
@@ -287,6 +291,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelUnreadAll'
type='radio' type='radio'
name='markUnreadLevel' name='markUnreadLevel'
checked={this.state.unreadLevel === 'all'} checked={this.state.unreadLevel === 'all'}
@@ -302,6 +307,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelUnreadMentions'
type='radio' type='radio'
name='markUnreadLevel' name='markUnreadLevel'
checked={this.state.unreadLevel === 'mention'} checked={this.state.unreadLevel === 'mention'}
@@ -459,6 +465,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelPushNotificationGlobalDefault'
type='radio' type='radio'
name='pushNotificationLevel' name='pushNotificationLevel'
checked={notifyActive[0]} checked={notifyActive[0]}
@@ -477,6 +484,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelPushNotificationAllActivity'
type='radio' type='radio'
name='pushNotificationLevel' name='pushNotificationLevel'
checked={notifyActive[1]} checked={notifyActive[1]}
@@ -489,6 +497,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelPushNotificationMentions'
type='radio' type='radio'
name='pushNotificationLevel' name='pushNotificationLevel'
checked={notifyActive[2]} checked={notifyActive[2]}
@@ -501,6 +510,7 @@ export default class ChannelNotificationsModal extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelPushNotificationNever'
type='radio' type='radio'
name='pushNotificationLevel' name='pushNotificationLevel'
checked={notifyActive[3]} checked={notifyActive[3]}

Просмотреть файл

@@ -275,6 +275,7 @@ class GeneralTab extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='teamOpenInvite'
name='userOpenInviteOptions' name='userOpenInviteOptions'
type='radio' type='radio'
defaultChecked={this.state.allow_open_invite} defaultChecked={this.state.allow_open_invite}
@@ -290,6 +291,7 @@ class GeneralTab extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='teamOpenInviteNo'
name='userOpenInviteOptions' name='userOpenInviteOptions'
type='radio' type='radio'
defaultChecked={!this.state.allow_open_invite} defaultChecked={!this.state.allow_open_invite}
@@ -349,6 +351,7 @@ class GeneralTab extends React.Component {
<label className='col-sm-5 control-label visible-xs-block'/> <label className='col-sm-5 control-label visible-xs-block'/>
<div className='col-sm-12'> <div className='col-sm-12'>
<input <input
id='teamInviteId'
className='form-control' className='form-control'
type='text' type='text'
onChange={this.updateInviteId} onChange={this.updateInviteId}
@@ -357,6 +360,7 @@ class GeneralTab extends React.Component {
/> />
<div className='padding-top x2'> <div className='padding-top x2'>
<a <a
id='teamInviteIdRegenerate'
href='#' href='#'
onClick={this.handleGenerateInviteId} onClick={this.handleGenerateInviteId}
> >
@@ -430,6 +434,7 @@ class GeneralTab extends React.Component {
<label className='col-sm-5 control-label'>{teamNameLabel}</label> <label className='col-sm-5 control-label'>{teamNameLabel}</label>
<div className='col-sm-7'> <div className='col-sm-7'>
<input <input
id='teamName'
className='form-control' className='form-control'
type='text' type='text'
maxLength={Constants.MAX_TEAMNAME_LENGTH.toString()} maxLength={Constants.MAX_TEAMNAME_LENGTH.toString()}
@@ -488,6 +493,7 @@ class GeneralTab extends React.Component {
<label className='col-sm-5 control-label'>{teamDescriptionLabel}</label> <label className='col-sm-5 control-label'>{teamDescriptionLabel}</label>
<div className='col-sm-7'> <div className='col-sm-7'>
<input <input
id='teamDescription'
className='form-control' className='form-control'
type='text' type='text'
maxLength={Constants.MAX_TEAMDESCRIPTION_LENGTH.toString()} maxLength={Constants.MAX_TEAMDESCRIPTION_LENGTH.toString()}
@@ -537,6 +543,7 @@ class GeneralTab extends React.Component {
<div> <div>
<div className='modal-header'> <div className='modal-header'>
<button <button
id='closeButton'
type='button' type='button'
className='close' className='close'
data-dismiss='modal' data-dismiss='modal'

Просмотреть файл

@@ -173,6 +173,7 @@ export default class ImportThemeModal extends React.Component {
<div className='form-group less'> <div className='form-group less'>
<div className='col-sm-12'> <div className='col-sm-12'>
<input <input
id='themeVector'
type='text' type='text'
className='form-control' className='form-control'
value={this.state.value} value={this.state.value}
@@ -186,6 +187,7 @@ export default class ImportThemeModal extends React.Component {
</Modal.Body> </Modal.Body>
<Modal.Footer> <Modal.Footer>
<button <button
id='cancelButton'
type='button' type='button'
className='btn btn-default' className='btn btn-default'
onClick={() => this.setState({show: false})} onClick={() => this.setState({show: false})}
@@ -196,6 +198,7 @@ export default class ImportThemeModal extends React.Component {
/> />
</button> </button>
<button <button
id='submitButton'
onClick={this.handleSubmit} onClick={this.handleSubmit}
type='submit' type='submit'
className='btn btn-primary' className='btn btn-primary'

Просмотреть файл

@@ -96,6 +96,7 @@ export default class ManageLanguage extends React.Component {
</label> </label>
<div className='padding-top'> <div className='padding-top'>
<select <select
id='displayLanguage'
ref='language' ref='language'
className='form-control' className='form-control'
value={this.state.locale} value={this.state.locale}

Просмотреть файл

@@ -185,6 +185,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='postFormattingOn'
type='radio' type='radio'
name='formatting' name='formatting'
checked={this.state.settings.formatting !== 'false'} checked={this.state.settings.formatting !== 'false'}
@@ -200,6 +201,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='postFormattingOff'
type='radio' type='radio'
name='formatting' name='formatting'
checked={this.state.settings.formatting === 'false'} checked={this.state.settings.formatting === 'false'}
@@ -261,6 +263,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='joinLeaveOn'
type='radio' type='radio'
name='join_leave' name='join_leave'
checked={this.state.settings.join_leave !== 'false'} checked={this.state.settings.join_leave !== 'false'}
@@ -276,6 +279,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='joinLeaveOff'
type='radio' type='radio'
name='join_leave' name='join_leave'
checked={this.state.settings.join_leave === 'false'} checked={this.state.settings.join_leave === 'false'}
@@ -367,6 +371,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='ctrlSendOn'
type='radio' type='radio'
name='sendOnCtrlEnter' name='sendOnCtrlEnter'
checked={ctrlSendActive[0]} checked={ctrlSendActive[0]}
@@ -382,6 +387,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='ctrlSendOff'
type='radio' type='radio'
name='sendOnCtrlEnter' name='sendOnCtrlEnter'
checked={ctrlSendActive[1]} checked={ctrlSendActive[1]}
@@ -464,6 +470,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div className='checkbox'> <div className='checkbox'>
<label> <label>
<input <input
id={'advancedPreviewFeatures' + feature.label}
type='checkbox' type='checkbox'
checked={this.state.settings[Constants.FeatureTogglePrefix + feature.label] === 'true'} checked={this.state.settings[Constants.FeatureTogglePrefix + feature.label] === 'true'}
onChange={(e) => { onChange={(e) => {
@@ -524,6 +531,7 @@ export default class AdvancedSettingsDisplay extends React.Component {
<div> <div>
<div className='modal-header'> <div className='modal-header'>
<button <button
id='closeButton'
type='button' type='button'
className='close' className='close'
data-dismiss='modal' data-dismiss='modal'

Просмотреть файл

@@ -160,6 +160,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='collapseFormat'
type='radio' type='radio'
name='collapseFormat' name='collapseFormat'
checked={collapseFormat[0]} checked={collapseFormat[0]}
@@ -175,6 +176,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='collapseFormatOff'
type='radio' type='radio'
name='collapseFormat' name='collapseFormat'
checked={collapseFormat[1]} checked={collapseFormat[1]}
@@ -277,6 +279,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='clockFormat12h'
type='radio' type='radio'
name='clockFormat' name='clockFormat'
checked={clockFormat[0]} checked={clockFormat[0]}
@@ -292,6 +295,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='clockFormat24h'
type='radio' type='radio'
name='clockFormat' name='clockFormat'
checked={clockFormat[1]} checked={clockFormat[1]}
@@ -397,6 +401,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='nameFormatUsername'
type='radio' type='radio'
name='nameFormat' name='nameFormat'
checked={nameFormat[1]} checked={nameFormat[1]}
@@ -409,6 +414,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='nameFormatNickname'
type='radio' type='radio'
name='nameFormat' name='nameFormat'
checked={nameFormat[0]} checked={nameFormat[0]}
@@ -421,6 +427,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='nameFormatFullName'
type='radio' type='radio'
name='nameFormat' name='nameFormat'
checked={nameFormat[2]} checked={nameFormat[2]}
@@ -511,6 +518,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='messageFormatStandard'
type='radio' type='radio'
name='messageDisplay' name='messageDisplay'
checked={messageDisplay[0]} checked={messageDisplay[0]}
@@ -533,6 +541,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='messageFormatCompact'
type='radio' type='radio'
name='messageDisplay' name='messageDisplay'
checked={messageDisplay[1]} checked={messageDisplay[1]}
@@ -626,6 +635,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelDisplayFormatFullScreen'
type='radio' type='radio'
name='channelDisplayMode' name='channelDisplayMode'
checked={channelDisplayMode[0]} checked={channelDisplayMode[0]}
@@ -641,6 +651,7 @@ export default class UserSettingsDisplay extends React.Component {
<div className='radio'> <div className='radio'>
<label> <label>
<input <input
id='channelDisplayFormatCentered'
type='radio' type='radio'
name='channelDisplayMode' name='channelDisplayMode'
checked={channelDisplayMode[1]} checked={channelDisplayMode[1]}
@@ -735,6 +746,7 @@ export default class UserSettingsDisplay extends React.Component {
className='dropdown' className='dropdown'
> >
<select <select
id='displayFontSelect'
className='form-control' className='form-control'
type='text' type='text'
value={this.state.selectedFont} value={this.state.selectedFont}
@@ -830,6 +842,7 @@ export default class UserSettingsDisplay extends React.Component {
<div> <div>
<div className='modal-header'> <div className='modal-header'>
<button <button
id='closeButton'
type='button' type='button'
className='close' className='close'
data-dismiss='modal' data-dismiss='modal'

Просмотреть файл

@@ -218,6 +218,7 @@ export default class ThemeSetting extends React.Component {
> >
<label> <label>
<input <input
id='standardThemes'
type='radio' type='radio'
name='theme' name='theme'
checked={!displayCustom} checked={!displayCustom}
@@ -241,6 +242,7 @@ export default class ThemeSetting extends React.Component {
> >
<label> <label>
<input <input
id='customThemes'
type='radio' type='radio'
name='theme' name='theme'
checked={displayCustom} checked={displayCustom}
@@ -260,6 +262,7 @@ export default class ThemeSetting extends React.Component {
<div key='otherThemes'> <div key='otherThemes'>
<br/> <br/>
<a <a
id='otherThemes'
href='http://docs.mattermost.com/help/settings/theme-colors.html#custom-theme-examples' href='http://docs.mattermost.com/help/settings/theme-colors.html#custom-theme-examples'
target='_blank' target='_blank'
rel='noopener noreferrer' rel='noopener noreferrer'
@@ -278,6 +281,7 @@ export default class ThemeSetting extends React.Component {
className='padding-top' className='padding-top'
> >
<a <a
id='slackImportTheme'
className='theme' className='theme'
onClick={this.handleImportModal} onClick={this.handleImportModal}
> >
@@ -295,6 +299,7 @@ export default class ThemeSetting extends React.Component {
<div className='checkbox user-settings__submit-checkbox'> <div className='checkbox user-settings__submit-checkbox'>
<label> <label>
<input <input
id='applyThemeToAllTeams'
type='checkbox' type='checkbox'
checked={this.state.applyToAllTeams} checked={this.state.applyToAllTeams}
onChange={(e) => this.setState({applyToAllTeams: e.target.checked})} onChange={(e) => this.setState({applyToAllTeams: e.target.checked})}