mirror of
https://github.com/chatwoot/chatwoot.git
synced 2026-06-13 21:01:16 +08:00
Some checks failed
Frontend Lint & Test / test (push) Has been cancelled
Publish Chatwoot EE docker images / build (linux/amd64, ubuntu-latest) (push) Has been cancelled
Publish Chatwoot EE docker images / build (linux/arm64, ubuntu-22.04-arm) (push) Has been cancelled
Publish Chatwoot CE docker images / build (linux/amd64, ubuntu-latest) (push) Has been cancelled
Publish Chatwoot CE docker images / build (linux/arm64, ubuntu-22.04-arm) (push) Has been cancelled
Run Chatwoot CE spec / lint-backend (push) Has been cancelled
Run Chatwoot CE spec / lint-frontend (push) Has been cancelled
Run Chatwoot CE spec / frontend-tests (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (0, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (1, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (10, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (11, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (12, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (13, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (14, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (15, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (2, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (3, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (4, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (5, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (6, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (7, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (8, 16) (push) Has been cancelled
Run Chatwoot CE spec / backend-tests (9, 16) (push) Has been cancelled
Publish Chatwoot EE docker images / merge (push) Has been cancelled
Publish Chatwoot CE docker images / merge (push) Has been cancelled
- Improved design for the Chatwoot sign up page
54 lines
1.5 KiB
JavaScript
54 lines
1.5 KiB
JavaScript
import Cookies from 'js-cookie';
|
|
import { DEFAULT_REDIRECT_URL } from 'dashboard/constants/globals';
|
|
import { frontendURL } from 'dashboard/helper/URLHelper';
|
|
|
|
export const hasAuthCookie = () => {
|
|
return !!Cookies.get('cw_d_session_info');
|
|
};
|
|
|
|
const getSSOAccountPath = ({ ssoAccountId, user }) => {
|
|
const { accounts = [], account_id = null } = user || {};
|
|
const ssoAccount = accounts.find(
|
|
account => account.id === Number(ssoAccountId)
|
|
);
|
|
let accountPath = '';
|
|
if (ssoAccount) {
|
|
accountPath = `accounts/${ssoAccountId}`;
|
|
} else if (accounts.length) {
|
|
// If the account id is not found, redirect to the first account
|
|
const accountId = account_id || accounts[0].id;
|
|
accountPath = `accounts/${accountId}`;
|
|
}
|
|
return accountPath;
|
|
};
|
|
|
|
const capitalize = str =>
|
|
str
|
|
.split(/[._-]+/)
|
|
.map(word => word.charAt(0).toUpperCase() + word.slice(1))
|
|
.join(' ');
|
|
|
|
export const getCredentialsFromEmail = email => {
|
|
const [localPart, domain] = email.split('@');
|
|
const namePart = localPart.split('+')[0];
|
|
return {
|
|
fullName: capitalize(namePart),
|
|
accountName: capitalize(domain.split('.')[0]),
|
|
};
|
|
};
|
|
|
|
export const getLoginRedirectURL = ({
|
|
ssoAccountId,
|
|
ssoConversationId,
|
|
user,
|
|
}) => {
|
|
const accountPath = getSSOAccountPath({ ssoAccountId, user });
|
|
if (accountPath) {
|
|
if (ssoConversationId) {
|
|
return frontendURL(`${accountPath}/conversations/${ssoConversationId}`);
|
|
}
|
|
return frontendURL(`${accountPath}/dashboard`);
|
|
}
|
|
return DEFAULT_REDIRECT_URL;
|
|
};
|