);
@@ -325,6 +351,7 @@ class SecurityTab extends React.Component {
{emailOption}
{gitlabOption}
+ {ldapOption}
{googleOption}
);
diff --git a/webapp/i18n/en.json b/webapp/i18n/en.json
index d9411df076..34e938e690 100644
--- a/webapp/i18n/en.json
+++ b/webapp/i18n/en.json
@@ -633,21 +633,45 @@
"choose_auth_page.ldapCreate": "Create new team with LDAP Account",
"choose_auth_page.noSignup": "No sign-up methods configured, please contact your system administrator.",
"claim.account.noEmail": "No email specified",
- "claim.email_to_sso.enterPwd": "Enter the password for your {team} {site} account",
- "claim.email_to_sso.pwd": "Password",
- "claim.email_to_sso.pwdError": "Please enter your password.",
- "claim.email_to_sso.ssoNote": "You must already have a valid {type} account",
- "claim.email_to_sso.ssoType": "Upon claiming your account, you will only be able to login with {type} SSO",
- "claim.email_to_sso.switchTo": "Switch account to {uiType}",
- "claim.email_to_sso.title": "Switch Email/Password Account to {uiType}",
- "claim.sso_to_email.confirm": "Confirm Password",
- "claim.sso_to_email.description": "Upon changing your account type, you will only be able to login with your email and password.",
- "claim.sso_to_email.enterPwd": "Please enter a password.",
- "claim.sso_to_email.newPwd": "New Password",
- "claim.sso_to_email.pwdNotMatch": "Password do not match.",
- "claim.sso_to_email.switchTo": "Switch {type} to email and password",
- "claim.sso_to_email.title": "Switch {type} Account to Email",
- "claim.sso_to_email_newPwd": "Enter a new password for your {team} {site} account",
+ "claim.email_to_oauth.enterPwd": "Enter the password for your {team} {site} account",
+ "claim.email_to_oauth.pwd": "Password",
+ "claim.email_to_oauth.pwdError": "Please enter your password.",
+ "claim.email_to_oauth.ssoNote": "You must already have a valid {type} account",
+ "claim.email_to_oauth.ssoType": "Upon claiming your account, you will only be able to login with {type} SSO",
+ "claim.email_to_oauth.switchTo": "Switch account to {uiType}",
+ "claim.email_to_oauth.title": "Switch Email/Password Account to {uiType}",
+ "claim.oauth_to_email.confirm": "Confirm Password",
+ "claim.oauth_to_email.description": "Upon changing your account type, you will only be able to login with your email and password.",
+ "claim.oauth_to_email.enterPwd": "Please enter a password.",
+ "claim.oauth_to_email.newPwd": "New Password",
+ "claim.oauth_to_email.pwdNotMatch": "Password do not match.",
+ "claim.oauth_to_email.switchTo": "Switch {type} to email and password",
+ "claim.oauth_to_email.title": "Switch {type} Account to Email",
+ "claim.oauth_to_email.newPwd": "Enter a new password for your {team} {site} account",
+ "claim.email_to_ldap.pwdError": "Please enter your password.",
+ "claim.email_to_ldap.ldapIdError": "Please enter your LDAP ID.",
+ "claim.email_to_ldap.ldapPasswordError": "Please enter your LDAP password.",
+ "claim.email_to_ldap.title": "Switch Email/Password Account to LDAP",
+ "claim.email_to_ldap.ssoType": "Upon claiming your account, you will only be able to login with LDAP",
+ "claim.email_to_ldap.ssoNote": "You must already have a valid LDAP account",
+ "claim.email_to_ldap.enterPwd": "Enter the password for your {team} {site} email account",
+ "claim.email_to_ldap.pwd": "Password",
+ "claim.email_to_ldap.enterLdapPwd": "Enter the ID and password for your LDAP account",
+ "claim.email_to_ldap.ldapId": "LDAP ID",
+ "claim.email_to_ldap.ldapPwd": "LDAP Password",
+ "claim.email_to_ldap.switchTo": "Switch account to LDAP",
+ "claim.ldap_to_email.pwdError": "Please enter your password.",
+ "claim.ldap_to_email.pwdNotMatch": "Passwords do not match.",
+ "claim.ldap_to_email.ldapPasswordError": "Please enter your LDAP password.",
+ "claim.ldap_to_email.title": "Switch LDAP Account to Email/Password",
+ "claim.ldap_to_email.ssoType": "Upon claiming your account, you will only be able to login with your email and password",
+ "claim.ldap_to_email.email": "You will use the email {email} to login",
+ "claim.ldap_to_email.enterLdapPwd": "Enter your LDAP password for your {team} {site} email account",
+ "claim.ldap_to_email.ldapPwd": "LDAP Password",
+ "claim.ldap_to_email.enterPwd": "Enter a new password for your email account",
+ "claim.ldap_to_email.pwd": "Password",
+ "claim.ldap_to_email.confirm": "Confirm Password",
+ "claim.ldap_to_email.switchTo": "Switch account to email/password",
"confirm_modal.cancel": "Cancel",
"create_comment.addComment": "Add a comment...",
"create_comment.comment": "Add Comment",
@@ -1335,6 +1359,7 @@
"user.settings.security.switchEmail": "Switch to using email and password",
"user.settings.security.switchGitlab": "Switch to using GitLab SSO",
"user.settings.security.switchGoogle": "Switch to using Google SSO",
+ "user.settings.security.switchLda": "Switch to using LDAP",
"user.settings.security.title": "Security Settings",
"user.settings.security.viewHistory": "View Access History",
"user_list.notFound": "No users found :(",
diff --git a/webapp/i18n/es.json b/webapp/i18n/es.json
index 8852dd3c62..9c1665c4e9 100644
--- a/webapp/i18n/es.json
+++ b/webapp/i18n/es.json
@@ -633,21 +633,21 @@
"choose_auth_page.ldapCreate": "Crea un nuevo equipo con tu cuenta de LDAP",
"choose_auth_page.noSignup": "No hay métodos de inicio de sesión configurad, por favor contacte al administrador de sistemasos",
"claim.account.noEmail": "No se especifico un correo electrónico.",
- "claim.email_to_sso.enterPwd": "Ingresa la contraseña para tu cuenta para {team} {site}",
- "claim.email_to_sso.pwd": "Contraseña",
- "claim.email_to_sso.pwdError": "Por favor introduce tu contraseña.",
- "claim.email_to_sso.ssoNote": "Debes tener una cuenta válida con {type}",
- "claim.email_to_sso.ssoType": "Al reclamar tu cuenta, sólo podrás iniciar sesión con {type} SSO",
- "claim.email_to_sso.switchTo": "Cambiar cuenta a {uiType}",
- "claim.email_to_sso.title": "Cambiar Cuenta de Correo/Contraseña a {uiType}",
- "claim.sso_to_email.confirm": "Confirmar Contraseña",
- "claim.sso_to_email.description": "Al cambiar el tipo de cuenta, sólo podrás iniciar sesión con tu correo electrónico y contraseña.",
- "claim.sso_to_email.enterPwd": "Por favor ingresa una contraseña.",
- "claim.sso_to_email.newPwd": "Nueva Contraseña",
- "claim.sso_to_email.pwdNotMatch": "Las contraseñas no coinciden.",
- "claim.sso_to_email.switchTo": "Cambiar {type} a correo electrónico y contraseña",
- "claim.sso_to_email.title": "Cambiar la cuenta de {type} a Correo Electrónico",
- "claim.sso_to_email_newPwd": "Ingresa una nueva contraseña para tu cuenta de {team} {site}",
+ "claim.email_to_oauth.enterPwd": "Ingresa la contraseña para tu cuenta para {team} {site}",
+ "claim.email_to_oauth.pwd": "Contraseña",
+ "claim.email_to_oauth.pwdError": "Por favor introduce tu contraseña.",
+ "claim.email_to_oauth.ssoNote": "Debes tener una cuenta válida con {type}",
+ "claim.email_to_oauth.ssoType": "Al reclamar tu cuenta, sólo podrás iniciar sesión con {type} SSO",
+ "claim.email_to_oauth.switchTo": "Cambiar cuenta a {uiType}",
+ "claim.email_to_oauth.title": "Cambiar Cuenta de Correo/Contraseña a {uiType}",
+ "claim.oauth_to_email.confirm": "Confirmar Contraseña",
+ "claim.oauth_to_email.description": "Al cambiar el tipo de cuenta, sólo podrás iniciar sesión con tu correo electrónico y contraseña.",
+ "claim.oauth_to_email.enterPwd": "Por favor ingresa una contraseña.",
+ "claim.oauth_to_email.newPwd": "Nueva Contraseña",
+ "claim.oauth_to_email.pwdNotMatch": "Las contraseñas no coinciden.",
+ "claim.oauth_to_email.switchTo": "Cambiar {type} a correo electrónico y contraseña",
+ "claim.oauth_to_email.title": "Cambiar la cuenta de {type} a Correo Electrónico",
+ "claim.oauth_to_email.newPwd": "Ingresa una nueva contraseña para tu cuenta de {team} {site}",
"confirm_modal.cancel": "Cancelar",
"create_comment.addComment": "Agregar un comentario...",
"create_comment.comment": "Agregar Comentario",
diff --git a/webapp/i18n/pt.json b/webapp/i18n/pt.json
index 41d3bbc1cc..0b06b77af0 100644
--- a/webapp/i18n/pt.json
+++ b/webapp/i18n/pt.json
@@ -639,21 +639,21 @@
"choose_auth_page.ldapCreate": "Criar uma nova equipe com uma conta LDAP",
"choose_auth_page.noSignup": "Nenhum método de inscrição configurado, por favor contate seu administrador do sistema.",
"claim.account.noEmail": "Nenhum email específicado",
- "claim.email_to_sso.enterPwd": "Entre a senha para o sua conta {team} {site}",
- "claim.email_to_sso.pwd": "Senha",
- "claim.email_to_sso.pwdError": "Por favor digite a sua senha.",
- "claim.email_to_sso.ssoNote": "Você precisa já ter uma conta {type} válida",
- "claim.email_to_sso.ssoType": "Ao retirar a sua conta, você só vai ser capaz de logar com SSO {type}",
- "claim.email_to_sso.switchTo": "Trocar a conta para {uiType}",
- "claim.email_to_sso.title": "Trocar E-mail/Senha da Conta para {uiType}",
- "claim.sso_to_email.confirm": "Confirmar senha",
- "claim.sso_to_email.description": "Após a alteração do tipo de conta, você só vai ser capaz de logar com seu e-mail e senha.",
- "claim.sso_to_email.enterPwd": "Por favor entre uma senha.",
- "claim.sso_to_email.newPwd": "Nova Senha",
- "claim.sso_to_email.pwdNotMatch": "As senha não correspondem.",
- "claim.sso_to_email.switchTo": "Trocar {type} para email e senha",
- "claim.sso_to_email.title": "Trocar Conta {type} para E-mail",
- "claim.sso_to_email_newPwd": "Entre a nova senha para o sua conta {team} {site}",
+ "claim.email_to_oauth.enterPwd": "Entre a senha para o sua conta {team} {site}",
+ "claim.email_to_oauth.pwd": "Senha",
+ "claim.email_to_oauth.pwdError": "Por favor digite a sua senha.",
+ "claim.email_to_oauth.ssoNote": "Você precisa já ter uma conta {type} válida",
+ "claim.email_to_oauth.ssoType": "Ao retirar a sua conta, você só vai ser capaz de logar com SSO {type}",
+ "claim.email_to_oauth.switchTo": "Trocar a conta para {uiType}",
+ "claim.email_to_oauth.title": "Trocar E-mail/Senha da Conta para {uiType}",
+ "claim.oauth_to_email.confirm": "Confirmar senha",
+ "claim.oauth_to_email.description": "Após a alteração do tipo de conta, você só vai ser capaz de logar com seu e-mail e senha.",
+ "claim.oauth_to_email.enterPwd": "Por favor entre uma senha.",
+ "claim.oauth_to_email.newPwd": "Nova Senha",
+ "claim.oauth_to_email.pwdNotMatch": "As senha não correspondem.",
+ "claim.oauth_to_email.switchTo": "Trocar {type} para email e senha",
+ "claim.oauth_to_email.title": "Trocar Conta {type} para E-mail",
+ "claim.oauth_to_email.newPwd": "Entre a nova senha para o sua conta {team} {site}",
"confirm_modal.cancel": "Cancelar",
"create_comment.addComment": "Adicionar um comentário...",
"create_comment.comment": "Adicionar Comentário",
diff --git a/webapp/root.jsx b/webapp/root.jsx
index 63fbb44222..f4d9a0e471 100644
--- a/webapp/root.jsx
+++ b/webapp/root.jsx
@@ -36,7 +36,6 @@ import SignupUserComplete from 'components/signup_user_complete.jsx';
import ShouldVerifyEmail from 'components/should_verify_email.jsx';
import DoVerifyEmail from 'components/do_verify_email.jsx';
import AdminConsole from 'components/admin_console/admin_controller.jsx';
-import ClaimAccount from 'components/claim/claim_account.jsx';
import SignupTeamComplete from 'components/signup_team_complete/components/signup_team_complete.jsx';
import WelcomePage from 'components/signup_team_complete/components/team_signup_welcome_page.jsx';
@@ -47,6 +46,12 @@ import UsernamePage from 'components/signup_team_complete/components/team_signup
import PasswordPage from 'components/signup_team_complete/components/team_signup_password_page.jsx';
import FinishedPage from 'components/signup_team_complete/components/team_signup_finished.jsx';
+import Claim from 'components/claim/claim.jsx';
+import EmailToOAuth from 'components/claim/components/email_to_oauth.jsx';
+import OAuthToEmail from 'components/claim/components/oauth_to_email.jsx';
+import LDAPToEmail from 'components/claim/components/ldap_to_email.jsx';
+import EmailToLDAP from 'components/claim/components/email_to_ldap.jsx';
+
import {addLocaleData} from 'react-intl';
import enLocaleData from 'react-intl/locale-data/en';
import esLocaleData from 'react-intl/locale-data/es';
@@ -308,10 +313,6 @@ function renderRootComponent() {
path='login'
component={Login}
/>
-
+
+
+
+
+
+
diff --git a/webapp/utils/client.jsx b/webapp/utils/client.jsx
index e29cf71d3d..d42767d31c 100644
--- a/webapp/utils/client.jsx
+++ b/webapp/utils/client.jsx
@@ -256,38 +256,72 @@ export function resetPassword(data, success, error) {
track('api', 'api_users_reset_password');
}
-export function switchToSSO(data, success, error) {
+export function emailToOAuth(data, success, error) {
$.ajax({
- url: '/api/v1/users/switch_to_sso',
+ url: '/api/v1/users/claim/email_to_oauth',
dataType: 'json',
contentType: 'application/json',
type: 'POST',
data: JSON.stringify(data),
success,
error: function onError(xhr, status, err) {
- var e = handleError('switchToSSO', xhr, status, err);
+ var e = handleError('emailToOAuth', xhr, status, err);
error(e);
}
});
- track('api', 'api_users_switch_to_sso');
+ track('api', 'api_users_email_to_oauth');
}
-export function switchToEmail(data, success, error) {
+export function oauthToEmail(data, success, error) {
$.ajax({
- url: '/api/v1/users/switch_to_email',
+ url: '/api/v1/users/claim/oauth_to_email',
dataType: 'json',
contentType: 'application/json',
type: 'POST',
data: JSON.stringify(data),
success,
error: function onError(xhr, status, err) {
- var e = handleError('switchToEmail', xhr, status, err);
+ var e = handleError('oauthToEmail', xhr, status, err);
error(e);
}
});
- track('api', 'api_users_switch_to_email');
+ track('api', 'api_users_oauth_to_email');
+}
+
+export function emailToLDAP(data, success, error) {
+ $.ajax({
+ url: '/api/v1/users/claim/email_to_ldap',
+ dataType: 'json',
+ contentType: 'application/json',
+ type: 'POST',
+ data: JSON.stringify(data),
+ success,
+ error: function onError(xhr, status, err) {
+ var e = handleError('emailToLDAP', xhr, status, err);
+ error(e);
+ }
+ });
+
+ track('api', 'api_users_email_to_ldap');
+}
+
+export function ldapToEmail(data, success, error) {
+ $.ajax({
+ url: '/api/v1/users/claim/ldap_to_email',
+ dataType: 'json',
+ contentType: 'application/json',
+ type: 'POST',
+ data: JSON.stringify(data),
+ success,
+ error: function onError(xhr, status, err) {
+ var e = handleError('ldapToEmail', xhr, status, err);
+ error(e);
+ }
+ });
+
+ track('api', 'api_users_ldap_to_email');
}
export function logout(success, error) {
diff --git a/webapp/utils/constants.jsx b/webapp/utils/constants.jsx
index 859348c734..ae9fdc5fb2 100644
--- a/webapp/utils/constants.jsx
+++ b/webapp/utils/constants.jsx
@@ -185,6 +185,7 @@ export default {
OFFTOPIC_CHANNEL: 'off-topic',
GITLAB_SERVICE: 'gitlab',
GOOGLE_SERVICE: 'google',
+ LDAP_SERVICE: 'ldap',
EMAIL_SERVICE: 'email',
SIGNIN_CHANGE: 'signin_change',
SIGNIN_VERIFIED: 'verified',