diff options
Diffstat (limited to 'web/react/components/admin_console/team_settings.jsx')
-rw-r--r-- | web/react/components/admin_console/team_settings.jsx | 171 |
1 files changed, 142 insertions, 29 deletions
diff --git a/web/react/components/admin_console/team_settings.jsx b/web/react/components/admin_console/team_settings.jsx index 9d958ce91..cc4ff38ba 100644 --- a/web/react/components/admin_console/team_settings.jsx +++ b/web/react/components/admin_console/team_settings.jsx @@ -4,7 +4,28 @@ import * as Client from '../../utils/client.jsx'; import * as AsyncClient from '../../utils/async_client.jsx'; -export default class TeamSettings extends React.Component { +import {injectIntl, intlShape, defineMessages, FormattedMessage} from 'mm-intl'; + +const holders = defineMessages({ + siteNameExample: { + id: 'admin.team.siteNameExample', + defaultMessage: 'Ex "Mattermost"' + }, + maxUsersExample: { + id: 'admin.team.maxUsersExample', + defaultMessage: 'Ex "25"' + }, + restrictExample: { + id: 'admin.team.restrictExample', + defaultMessage: 'Ex "corp.mattermost.com, mattermost.org"' + }, + saving: { + id: 'admin.team.saving', + defaultMessage: 'Saving Config...' + } +}); + +class TeamSettings extends React.Component { constructor(props) { super(props); @@ -62,6 +83,7 @@ export default class TeamSettings extends React.Component { } render() { + const {formatMessage} = this.props.intl; var serverError = ''; if (this.state.serverError) { serverError = <div className='form-group has-error'><label className='control-label'>{this.state.serverError}</label></div>; @@ -75,7 +97,12 @@ export default class TeamSettings extends React.Component { return ( <div className='wrapper--fixed'> - <h3>{'Team Settings'}</h3> + <h3> + <FormattedMessage + id='admin.team.title' + defaultMessage='Team Settings' + /> + </h3> <form className='form-horizontal' role='form' @@ -86,7 +113,10 @@ export default class TeamSettings extends React.Component { className='control-label col-sm-4' htmlFor='SiteName' > - {'Site Name:'} + <FormattedMessage + id='admin.team.siteNameTitle' + defaultMessage='Site Name:' + /> </label> <div className='col-sm-8'> <input @@ -94,11 +124,16 @@ export default class TeamSettings extends React.Component { className='form-control' id='SiteName' ref='SiteName' - placeholder='Ex "Mattermost"' + placeholder={formatMessage(holders.siteNameExample)} defaultValue={this.props.config.TeamSettings.SiteName} onChange={this.handleChange} /> - <p className='help-text'>{'Name of service shown in login screens and UI.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.team.siteNameDescription' + defaultMessage='Name of service shown in login screens and UI.' + /> + </p> </div> </div> @@ -107,7 +142,10 @@ export default class TeamSettings extends React.Component { className='control-label col-sm-4' htmlFor='MaxUsersPerTeam' > - {'Max Users Per Team:'} + <FormattedMessage + id='admin.team.maxUsersTitle' + defaultMessage='Max Users Per Team:' + /> </label> <div className='col-sm-8'> <input @@ -115,11 +153,16 @@ export default class TeamSettings extends React.Component { className='form-control' id='MaxUsersPerTeam' ref='MaxUsersPerTeam' - placeholder='Ex "25"' + placeholder={formatMessage(holders.maxUsersExample)} defaultValue={this.props.config.TeamSettings.MaxUsersPerTeam} onChange={this.handleChange} /> - <p className='help-text'>{'Maximum total number of users per team, including both active and inactive users.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.team.maxUsersDescription' + defaultMessage='Maximum total number of users per team, including both active and inactive users.' + /> + </p> </div> </div> @@ -128,7 +171,10 @@ export default class TeamSettings extends React.Component { className='control-label col-sm-4' htmlFor='EnableTeamCreation' > - {'Enable Team Creation: '} + <FormattedMessage + id='admin.team.teamCreationTitle' + defaultMessage='Enable Team Creation: ' + /> </label> <div className='col-sm-8'> <label className='radio-inline'> @@ -140,7 +186,10 @@ export default class TeamSettings extends React.Component { defaultChecked={this.props.config.TeamSettings.EnableTeamCreation} onChange={this.handleChange} /> - {'true'} + <FormattedMessage + id='admin.team.true' + defaultMessage='true' + /> </label> <label className='radio-inline'> <input @@ -150,9 +199,17 @@ export default class TeamSettings extends React.Component { defaultChecked={!this.props.config.TeamSettings.EnableTeamCreation} onChange={this.handleChange} /> - {'false'} + <FormattedMessage + id='admin.team.false' + defaultMessage='false' + /> </label> - <p className='help-text'>{'When false, the ability to create teams is disabled. The create team button displays error when pressed.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.team.teamCreationDescription' + defaultMessage='When false, the ability to create teams is disabled. The create team button displays error when pressed.' + /> + </p> </div> </div> @@ -161,7 +218,10 @@ export default class TeamSettings extends React.Component { className='control-label col-sm-4' htmlFor='EnableUserCreation' > - {'Enable User Creation: '} + <FormattedMessage + id='admin.team.userCreationTitle' + defaultMessage='Enable User Creation: ' + /> </label> <div className='col-sm-8'> <label className='radio-inline'> @@ -173,7 +233,10 @@ export default class TeamSettings extends React.Component { defaultChecked={this.props.config.TeamSettings.EnableUserCreation} onChange={this.handleChange} /> - {'true'} + <FormattedMessage + id='admin.team.true' + defaultMessage='true' + /> </label> <label className='radio-inline'> <input @@ -183,9 +246,17 @@ export default class TeamSettings extends React.Component { defaultChecked={!this.props.config.TeamSettings.EnableUserCreation} onChange={this.handleChange} /> - {'false'} + <FormattedMessage + id='admin.team.false' + defaultMessage='false' + /> </label> - <p className='help-text'>{'When false, the ability to create accounts is disabled. The create account button displays error when pressed.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.team.userCreationDescription' + defaultMessage='When false, the ability to create accounts is disabled. The create account button displays error when pressed.' + /> + </p> </div> </div> @@ -194,7 +265,10 @@ export default class TeamSettings extends React.Component { className='control-label col-sm-4' htmlFor='RestrictCreationToDomains' > - {'Restrict Creation To Domains:'} + <FormattedMessage + id='admin.team.restrictTitle' + defaultMessage='Restrict Creation To Domains:' + /> </label> <div className='col-sm-8'> <input @@ -202,11 +276,16 @@ export default class TeamSettings extends React.Component { className='form-control' id='RestrictCreationToDomains' ref='RestrictCreationToDomains' - placeholder='Ex "corp.mattermost.com, mattermost.org"' + placeholder={formatMessage(holders.restrictExample)} defaultValue={this.props.config.TeamSettings.RestrictCreationToDomains} onChange={this.handleChange} /> - <p className='help-text'>{'Teams and user accounts can only be created from a specific domain (e.g. "mattermost.org") or list of comma-separated domains (e.g. "corp.mattermost.com, mattermost.org").'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.team.restrictDescription' + defaultMessage='Teams and user accounts can only be created from a specific domain (e.g. "mattermost.org") or list of comma-separated domains (e.g. "corp.mattermost.com, mattermost.org").' + /> + </p> </div> </div> @@ -215,7 +294,10 @@ export default class TeamSettings extends React.Component { className='control-label col-sm-4' htmlFor='RestrictTeamNames' > - {'Restrict Team Names: '} + <FormattedMessage + id='admin.team.restrictNameTitle' + defaultMessage='Restrict Team Names: ' + /> </label> <div className='col-sm-8'> <label className='radio-inline'> @@ -227,7 +309,10 @@ export default class TeamSettings extends React.Component { defaultChecked={this.props.config.TeamSettings.RestrictTeamNames} onChange={this.handleChange} /> - {'true'} + <FormattedMessage + id='admin.team.true' + defaultMessage='true' + /> </label> <label className='radio-inline'> <input @@ -237,9 +322,17 @@ export default class TeamSettings extends React.Component { defaultChecked={!this.props.config.TeamSettings.RestrictTeamNames} onChange={this.handleChange} /> - {'false'} + <FormattedMessage + id='admin.team.false' + defaultMessage='false' + /> </label> - <p className='help-text'>{'When true, You cannot create a team name with reserved words like www, admin, support, test, channel, etc'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.team.restrictNameDesc' + defaultMessage='When true, You cannot create a team name with reserved words like www, admin, support, test, channel, etc' + /> + </p> </div> </div> @@ -248,7 +341,10 @@ export default class TeamSettings extends React.Component { className='control-label col-sm-4' htmlFor='EnableTeamListing' > - {'Enable Team Directory: '} + <FormattedMessage + id='admin.team.dirTitle' + defaultMessage='Enable Team Directory: ' + /> </label> <div className='col-sm-8'> <label className='radio-inline'> @@ -260,7 +356,10 @@ export default class TeamSettings extends React.Component { defaultChecked={this.props.config.TeamSettings.EnableTeamListing} onChange={this.handleChange} /> - {'true'} + <FormattedMessage + id='admin.team.true' + defaultMessage='true' + /> </label> <label className='radio-inline'> <input @@ -270,9 +369,17 @@ export default class TeamSettings extends React.Component { defaultChecked={!this.props.config.TeamSettings.EnableTeamListing} onChange={this.handleChange} /> - {'false'} + <FormattedMessage + id='admin.team.false' + defaultMessage='false' + /> </label> - <p className='help-text'>{'When true, teams that are configured to show in team directory will show on main page inplace of creating a new team.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.team.dirDesc' + defaultMessage='When true, teams that are configured to show in team directory will show on main page inplace of creating a new team.' + /> + </p> </div> </div> @@ -285,9 +392,12 @@ export default class TeamSettings extends React.Component { className={saveClass} onClick={this.handleSubmit} id='save-button' - data-loading-text={'<span class=\'glyphicon glyphicon-refresh glyphicon-refresh-animate\'></span> Saving Config...'} + data-loading-text={'<span class=\'glyphicon glyphicon-refresh glyphicon-refresh-animate\'></span> ' + formatMessage(holders.saving)} > - {'Save'} + <FormattedMessage + id='admin.team.save' + defaultMessage='Save' + /> </button> </div> </div> @@ -299,5 +409,8 @@ export default class TeamSettings extends React.Component { } TeamSettings.propTypes = { + intl: intlShape.isRequired, config: React.PropTypes.object }; + +export default injectIntl(TeamSettings);
\ No newline at end of file |