diff options
Diffstat (limited to 'web/react/components/admin_console/gitlab_settings.jsx')
-rw-r--r-- | web/react/components/admin_console/gitlab_settings.jsx | 150 |
1 files changed, 121 insertions, 29 deletions
diff --git a/web/react/components/admin_console/gitlab_settings.jsx b/web/react/components/admin_console/gitlab_settings.jsx index 8c689a2d8..744fa3b19 100644 --- a/web/react/components/admin_console/gitlab_settings.jsx +++ b/web/react/components/admin_console/gitlab_settings.jsx @@ -4,7 +4,36 @@ import * as Client from '../../utils/client.jsx'; import * as AsyncClient from '../../utils/async_client.jsx'; -export default class GitLabSettings extends React.Component { +import {injectIntl, intlShape, defineMessages, FormattedMessage, FormattedHTMLMessage} from 'mm-intl'; + +const holders = defineMessages({ + clientIdExample: { + id: 'admin.gitlab.clientIdExample', + defaultMessage: 'Ex "jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY"' + }, + clientSecretExample: { + id: 'admin.gitlab.clientSecretExample', + defaultMessage: 'Ex "jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY"' + }, + authExample: { + id: 'admin.gitlab.authExample', + defaultMessage: 'Ex ""' + }, + tokenExample: { + id: 'admin.gitlab.tokenExample', + defaultMessage: 'Ex ""' + }, + userExample: { + id: 'admin.gitlab.userExample', + defaultMessage: 'Ex ""' + }, + saving: { + id: 'admin.gitlab.saving', + defaultMessage: 'Saving Config...' + } +}); + +class GitLabSettings extends React.Component { constructor(props) { super(props); @@ -65,6 +94,7 @@ export default class GitLabSettings 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>; @@ -78,7 +108,12 @@ export default class GitLabSettings extends React.Component { return ( <div className='wrapper--fixed'> - <h3>{'GitLab Settings'}</h3> + <h3> + <FormattedMessage + id='admin.gitlab.settingsTitle' + defaultMessage='GitLab Settings' + /> + </h3> <form className='form-horizontal' role='form' @@ -89,7 +124,10 @@ export default class GitLabSettings extends React.Component { className='control-label col-sm-4' htmlFor='Enable' > - {'Enable Sign Up With GitLab: '} + <FormattedMessage + id='admin.gitlab.enableTitle' + defaultMessage='Enable Sign Up With GitLab: ' + /> </label> <div className='col-sm-8'> <label className='radio-inline'> @@ -101,7 +139,10 @@ export default class GitLabSettings extends React.Component { defaultChecked={this.props.config.GitLabSettings.Enable} onChange={this.handleChange.bind(this, 'EnableTrue')} /> - {'true'} + <FormattedMessage + id='admin.gitlab.true' + defaultMessage='true' + /> </label> <label className='radio-inline'> <input @@ -111,18 +152,23 @@ export default class GitLabSettings extends React.Component { defaultChecked={!this.props.config.GitLabSettings.Enable} onChange={this.handleChange.bind(this, 'EnableFalse')} /> - {'false'} + <FormattedMessage + id='admin.gitlab.false' + defaultMessage='false' + /> </label> <p className='help-text'> - {'When true, Mattermost allows team creation and account signup using GitLab OAuth.'} <br/> + <FormattedMessage + id='admin.gitlab.enableDescription' + defaultMessage='When true, Mattermost allows team creation and account signup using GitLab OAuth.' + /> + <br/> </p> <div className='help-text'> - <ol> - <li>{'Log in to your GitLab account and go to Applications -> Profile Settings.'}</li> - <li>{'Enter Redirect URIs "<your-mattermost-url>/login/gitlab/complete" (example: http://localhost:8065/login/gitlab/complete) and "<your-mattermost-url>/signup/gitlab/complete". '}</li> - <li>{'Then use "Secret" and "Id" fields from GitLab to complete the options below.'}</li> - <li>{'Complete the Endpoint URLs below. '}</li> - </ol> + <FormattedHTMLMessage + id='admin.gitlab.EnableHtmlDesc' + defaultMessage='<ol><li>Log in to your GitLab account and go to Applications -> Profile Settings.</li><li>Enter Redirect URIs "<your-mattermost-url>/login/gitlab/complete" (example: http://localhost:8065/login/gitlab/complete) and "<your-mattermost-url>/signup/gitlab/complete". </li><li>Then use "Secret" and "Id" fields from GitLab to complete the options below.</li><li>Complete the Endpoint URLs below. </li></ol>' + /> </div> </div> </div> @@ -132,7 +178,10 @@ export default class GitLabSettings extends React.Component { className='control-label col-sm-4' htmlFor='Id' > - {'Id:'} + <FormattedMessage + id='admin.gitlab.clientIdTitle' + defaultMessage='Id:' + /> </label> <div className='col-sm-8'> <input @@ -140,12 +189,17 @@ export default class GitLabSettings extends React.Component { className='form-control' id='Id' ref='Id' - placeholder='Ex "jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY"' + placeholder={formatMessage(holders.clientIdExample)} defaultValue={this.props.config.GitLabSettings.Id} onChange={this.handleChange} disabled={!this.state.Enable} /> - <p className='help-text'>{'Obtain this value via the instructions above for logging into GitLab'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.gitlab.clientIdDescription' + defaultMessage='Obtain this value via the instructions above for logging into GitLab' + /> + </p> </div> </div> @@ -154,7 +208,10 @@ export default class GitLabSettings extends React.Component { className='control-label col-sm-4' htmlFor='Secret' > - {'Secret:'} + <FormattedMessage + id='admin.gitlab.clientSecretTitle' + defaultMessage='Secret:' + /> </label> <div className='col-sm-8'> <input @@ -162,12 +219,17 @@ export default class GitLabSettings extends React.Component { className='form-control' id='Secret' ref='Secret' - placeholder='Ex "jcuS8PuvcpGhpgHhlcpT1Mx42pnqMxQY"' + placeholder={formatMessage(holders.clientSecretExample)} defaultValue={this.props.config.GitLabSettings.Secret} onChange={this.handleChange} disabled={!this.state.Enable} /> - <p className='help-text'>{'Obtain this value via the instructions above for logging into GitLab.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.gitab.clientSecretDescription' + defaultMessage='Obtain this value via the instructions above for logging into GitLab.' + /> + </p> </div> </div> @@ -176,7 +238,10 @@ export default class GitLabSettings extends React.Component { className='control-label col-sm-4' htmlFor='AuthEndpoint' > - {'Auth Endpoint:'} + <FormattedMessage + id='admin.gitlab.authTitle' + defaultMessage='Auth Endpoint:' + /> </label> <div className='col-sm-8'> <input @@ -184,12 +249,17 @@ export default class GitLabSettings extends React.Component { className='form-control' id='AuthEndpoint' ref='AuthEndpoint' - placeholder='Ex ""' + placeholder={formatMessage(holders.authExample)} defaultValue={this.props.config.GitLabSettings.AuthEndpoint} onChange={this.handleChange} disabled={!this.state.Enable} /> - <p className='help-text'>{'Enter https://<your-gitlab-url>/oauth/authorize (example https://example.com:3000/oauth/authorize). Make sure you use HTTP or HTTPS in your URL depending on your server configuration.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.gitlab.authDescription' + defaultMessage='Enter https://<your-gitlab-url>/oauth/authorize (example https://example.com:3000/oauth/authorize). Make sure you use HTTP or HTTPS in your URL depending on your server configuration.' + /> + </p> </div> </div> @@ -198,7 +268,10 @@ export default class GitLabSettings extends React.Component { className='control-label col-sm-4' htmlFor='TokenEndpoint' > - {'Token Endpoint:'} + <FormattedMessage + id='admin.gitlab.tokenTitle' + defaultMessage='Token Endpoint:' + /> </label> <div className='col-sm-8'> <input @@ -206,12 +279,17 @@ export default class GitLabSettings extends React.Component { className='form-control' id='TokenEndpoint' ref='TokenEndpoint' - placeholder='Ex ""' + placeholder={formatMessage(holders.tokenExample)} defaultValue={this.props.config.GitLabSettings.TokenEndpoint} onChange={this.handleChange} disabled={!this.state.Enable} /> - <p className='help-text'>{'Enter https://<your-gitlab-url>/oauth/token. Make sure you use HTTP or HTTPS in your URL depending on your server configuration.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.gitlab.tokenDescription' + defaultMessage='Enter https://<your-gitlab-url>/oauth/token. Make sure you use HTTP or HTTPS in your URL depending on your server configuration.' + /> + </p> </div> </div> @@ -220,7 +298,10 @@ export default class GitLabSettings extends React.Component { className='control-label col-sm-4' htmlFor='UserApiEndpoint' > - {'User API Endpoint:'} + <FormattedMessage + id='admin.gitlab.userTitle' + defaultMessage='User API Endpoint:' + /> </label> <div className='col-sm-8'> <input @@ -228,12 +309,17 @@ export default class GitLabSettings extends React.Component { className='form-control' id='UserApiEndpoint' ref='UserApiEndpoint' - placeholder='Ex ""' + placeholder={formatMessage(holders.userExample)} defaultValue={this.props.config.GitLabSettings.UserApiEndpoint} onChange={this.handleChange} disabled={!this.state.Enable} /> - <p className='help-text'>{'Enter https://<your-gitlab-url>/api/v3/user. Make sure you use HTTP or HTTPS in your URL depending on your server configuration.'}</p> + <p className='help-text'> + <FormattedMessage + id='admin.gitlab.userDescription' + defaultMessage='Enter https://<your-gitlab-url>/api/v3/user. Make sure you use HTTP or HTTPS in your URL depending on your server configuration.' + /> + </p> </div> </div> @@ -246,9 +332,12 @@ export default class GitLabSettings 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.gitlab.save' + defaultMessage='Save' + /> </button> </div> </div> @@ -283,5 +372,8 @@ export default class GitLabSettings extends React.Component { // </div> GitLabSettings.propTypes = { + intl: intlShape.isRequired, config: React.PropTypes.object }; + +export default injectIntl(GitLabSettings);
\ No newline at end of file |