From 1a13a588c142e8f865ee1f347069a129b6e1929a Mon Sep 17 00:00:00 2001 From: Akmal Isomadinov Date: Fri, 30 Aug 2024 18:17:30 +0500 Subject: [PATCH 01/13] Client:InvitePanel Fixed selector color --- .../src/components/panels/InvitePanel/StyledInvitePanel.js | 7 ------- 1 file changed, 7 deletions(-) diff --git a/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js b/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js index fbf9f8de3f..20d2e36aad 100644 --- a/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js +++ b/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js @@ -191,13 +191,6 @@ const StyledRow = styled.div` .warning { margin-inline-start: auto; } - - .combo-button-label { - color: ${(props) => props.theme.accessRightSelect.descriptionColor}; - } - .combo-buttons_expander-icon path { - fill: ${(props) => props.theme.text.disableColor}; - } `; const StyledInviteInput = styled.div` From 7b4425a36c623f280bc972190c484f5816e4a46b Mon Sep 17 00:00:00 2001 From: Tatiana Lopaeva Date: Fri, 30 Aug 2024 17:25:16 +0300 Subject: [PATCH 02/13] Client: A blank screen and audit trail loader have been added. --- .../client/public/locales/en/Settings.json | 1 + .../security/audit-trail/AuditTrailLoader.js | 143 ++++++++++++++++++ .../categories/security/audit-trail/index.js | 50 +++++- 3 files changed, 190 insertions(+), 4 deletions(-) create mode 100644 packages/client/src/pages/PortalSettings/categories/security/audit-trail/AuditTrailLoader.js diff --git a/packages/client/public/locales/en/Settings.json b/packages/client/public/locales/en/Settings.json index 4ff8002ccb..13c7d1f8c7 100644 --- a/packages/client/public/locales/en/Settings.json +++ b/packages/client/public/locales/en/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "New color scheme", "NextStep": "Next step", "NoEmail": "NO EMAIL", + "NoEventsHereYet": "No events here yet", "NoUsersInBackup": "No users found. Try again or upload other backup files.", "NumberOfActiveEmployees": "Number of active employees: {{count}}", "NumberOfAttempts": "Number of attempts", diff --git a/packages/client/src/pages/PortalSettings/categories/security/audit-trail/AuditTrailLoader.js b/packages/client/src/pages/PortalSettings/categories/security/audit-trail/AuditTrailLoader.js new file mode 100644 index 0000000000..00c5610799 --- /dev/null +++ b/packages/client/src/pages/PortalSettings/categories/security/audit-trail/AuditTrailLoader.js @@ -0,0 +1,143 @@ +// (c) Copyright Ascensio System SIA 2009-2024 +// +// This program is a free software product. +// You can redistribute it and/or modify it under the terms +// of the GNU Affero General Public License (AGPL) version 3 as published by the Free Software +// Foundation. In accordance with Section 7(a) of the GNU AGPL its Section 15 shall be amended +// to the effect that Ascensio System SIA expressly excludes the warranty of non-infringement of +// any third-party rights. +// +// This program is distributed WITHOUT ANY WARRANTY, without even the implied warranty +// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. For details, see +// the GNU AGPL at: http://www.gnu.org/licenses/agpl-3.0.html +// +// You can contact Ascensio System SIA at Lubanas st. 125a-25, Riga, Latvia, EU, LV-1021. +// +// The interactive user interfaces in modified source and object code versions of the Program must +// display Appropriate Legal Notices, as required under Section 5 of the GNU AGPL version 3. +// +// Pursuant to Section 7(b) of the License you must retain the original Product logo when +// distributing the program. Pursuant to Section 7(e) we decline to grant you any rights under +// trademark law for use of our trademarks. +// +// All the Product's GUI elements, including illustrations and icon sets, as well as technical writing +// content are licensed under the terms of the Creative Commons Attribution-ShareAlike 4.0 +// International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode + +import styled from "styled-components"; +import { RectangleSkeleton } from "@docspace/shared/skeletons"; +import { tablet, mobile } from "@docspace/shared/utils"; + +const StyledLoader = styled.div` + .header { + height: 30px; + margin-bottom: 8px; + max-width: 700px; + @media ${mobile} { + height: 60px; + } + } + + .second-container { + margin: 16px 0; + display: grid; + gap: 8px; + max-width: 350px; + } + + .second-header { + max-width: 132px; + display: block; + @media ${mobile} { + max-width: 100%; + } + } + + .description { + margin-top: 16px; + max-width: 645px; + } + + .third-container { + margin: 16px 0; + display: flex; + justify-content: space-between; + grid-template-columns: repeat(3, 1fr); + max-width: 700px; + + @media ${tablet} { + display: none; + } + } + + .fourth-container { + display: grid; + gap: 4px; + margin-top: 16px; + + .rows-header { + max-width: 197px; + display: none; + @media ${tablet} { + display: block; + } + } + .rows { + max-width: 700px; + display: block; + margin-bottom: 8px; + } + } + + .button { + margin-top: 32px; + max-width: 163px; + } +`; + +const AuditTrailLoader = () => { + return ( + + + +
+ + +
+ + + + +
+ + + +
+ +
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+ + +
+ ); +}; + +export default AuditTrailLoader; diff --git a/packages/client/src/pages/PortalSettings/categories/security/audit-trail/index.js b/packages/client/src/pages/PortalSettings/categories/security/audit-trail/index.js index 11d355c5c9..13f20f6181 100644 --- a/packages/client/src/pages/PortalSettings/categories/security/audit-trail/index.js +++ b/packages/client/src/pages/PortalSettings/categories/security/audit-trail/index.js @@ -24,15 +24,23 @@ // content are licensed under the terms of the Creative Commons Attribution-ShareAlike 4.0 // International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode -import React, { useEffect } from "react"; +import React, { useEffect, useState } from "react"; import { withTranslation } from "react-i18next"; import { setDocumentTitle } from "SRC_DIR/helpers/utils"; import { inject } from "mobx-react"; + import { Consumer } from "@docspace/shared/utils"; +import { EmptyScreenContainer } from "@docspace/shared/components/empty-screen-container"; + import { Table } from "./TableView/TableView"; import AuditRowContainer from "./RowView/AuditRowContainer"; import HistoryMainContent from "../sub-components/HistoryMainContent"; +import EmptyScreenRecentUrl from "PUBLIC_DIR/images/empty_screen_recent.svg?url"; +import EmptyScreenRecentDarkUrl from "PUBLIC_DIR/images/empty_screen_recent_dark.svg?url"; +import AuditTrailLoader from "./AuditTrailLoader"; + +let timerId = null; const AuditTrail = (props) => { const { t, @@ -48,11 +56,24 @@ const AuditTrail = (props) => { isLoadingDownloadReport, } = props; + const [isLoading, setIsLoading] = useState(!auditTrailUsers.length); + const [isShowLoader, setIShowLoader] = useState(false); + const initAudit = async () => { + timerId = setTimeout(() => { + if (!auditTrailUsers.length) setIShowLoader(true); + }, 500); + + await getAuditTrail(); + + clearTimeout(timerId); + timerId = null; + setIShowLoader(false); + setIsLoading(false); + }; + useEffect(() => { setDocumentTitle(t("AuditTrailNav")); - - getAuditTrail(); - + initAudit(); getLifetimeAuditSettings(); }, []); @@ -83,6 +104,27 @@ const AuditTrail = (props) => { ); }; + + if (isShowLoader) { + return ; + } + + if (isLoading) return <>; + + if (auditTrailUsers.length === 0) { + return ( + + ); + } + return ( <> {securityLifetime && securityLifetime.auditTrailLifeTime && ( From 88b091f7ee03cd2cbd17f8403beff2fae72dd623 Mon Sep 17 00:00:00 2001 From: Alexey Safronov Date: Fri, 30 Aug 2024 18:35:06 +0400 Subject: [PATCH 03/13] Wizard: fix wizardToken delay --- packages/client/src/pages/Wizard/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/client/src/pages/Wizard/index.js b/packages/client/src/pages/Wizard/index.js index ec850242d8..67c0a3f7de 100644 --- a/packages/client/src/pages/Wizard/index.js +++ b/packages/client/src/pages/Wizard/index.js @@ -189,7 +189,7 @@ const Wizard = (props) => { if (!wizardToken) navigate(combineUrl(window.ClientConfig?.proxy?.url, "/")); else fetchData(); - }, []); + }, [wizardToken]); const onEmailChangeHandler = (result) => { console.log(result); From 0e460bf1f089c1f1cc87cead42d520dc52bba48a Mon Sep 17 00:00:00 2001 From: Alexey Safronov Date: Fri, 30 Aug 2024 18:50:55 +0400 Subject: [PATCH 04/13] Fix Bug 69733 - [LDAP] No option to validate entered data in Password field when configuring LDAP --- .../shared/components/password-input/PasswordInput.tsx | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/shared/components/password-input/PasswordInput.tsx b/packages/shared/components/password-input/PasswordInput.tsx index f2b040dee8..f8ee60e827 100644 --- a/packages/shared/components/password-input/PasswordInput.tsx +++ b/packages/shared/components/password-input/PasswordInput.tsx @@ -177,7 +177,7 @@ const PasswordInput = React.forwardRef( [onKeyDown], ); - const changeInputType = () => { + const changeInputType = React.useCallback(() => { const newType = state.type === InputType.text ? InputType.password : InputType.text; @@ -185,7 +185,13 @@ const PasswordInput = React.forwardRef( ...s, type: newType, })); - }; + }, [state.type]); + + React.useEffect(() => { + if (isDisabled && state.type === InputType.text) { + changeInputType(); + } + }, [isDisabled, changeInputType, state.type]); const testStrength = useCallback( (value: string) => { From 922cb308cb0bd1cc25c3e8094391d32f338a44e3 Mon Sep 17 00:00:00 2001 From: Aleksandr Lushkin Date: Fri, 30 Aug 2024 17:08:09 +0200 Subject: [PATCH 05/13] Client: People: TableRow: Fix when group combobox shows type loading --- .../pages/Home/Section/AccountsBody/People/TableView/TableRow.js | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/client/src/pages/Home/Section/AccountsBody/People/TableView/TableRow.js b/packages/client/src/pages/Home/Section/AccountsBody/People/TableView/TableRow.js index 7352bb5612..050a3c7561 100644 --- a/packages/client/src/pages/Home/Section/AccountsBody/People/TableView/TableRow.js +++ b/packages/client/src/pages/Home/Section/AccountsBody/People/TableView/TableRow.js @@ -397,7 +397,6 @@ const PeopleTableRow = (props) => { size="content" modernView manualWidth={"fit-content"} - isLoading={isLoading} optionStyle={{ maxWidth: "400px" }} textOverflow /> From bf5a4d52261f172cecca3fec5ae45c5301b32bd6 Mon Sep 17 00:00:00 2001 From: Timofey Boyko Date: Sun, 1 Sep 2024 12:36:14 +0300 Subject: [PATCH 06/13] Fixed Bug 69896 - Accounts. When adding a registered email to the list for invitation to the portal, display that it is already registered --- .../panels/InvitePanel/StyledInvitePanel.js | 14 +- .../InvitePanel/sub-components/InviteInput.js | 303 ++++++++++++------ .../panels/InvitePanel/sub-components/Item.js | 67 +++- packages/shared/api/people/filter.js | 14 +- 4 files changed, 295 insertions(+), 103 deletions(-) diff --git a/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js b/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js index fbf9f8de3f..8f16cdd3fb 100644 --- a/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js +++ b/packages/client/src/components/panels/InvitePanel/StyledInvitePanel.js @@ -366,7 +366,12 @@ const StyledDropDown = styled(DropDown)` gap: 4px; p { - color: #4781d1; + color: ${(props) => props.theme.currentColorScheme.main.accent}; + ${(props) => + props.isRequestRunning && + css` + opacity: 0.65; + `} } svg { @@ -374,7 +379,12 @@ const StyledDropDown = styled(DropDown)` theme.interfaceDirection === "rtl" && "transform: scaleX(-1);"}; path { - fill: #4781d1; + fill: ${(props) => props.theme.currentColorScheme.main.accent}; + ${(props) => + props.isRequestRunning && + css` + opacity: 0.65; + `} } } } diff --git a/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js b/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js index 12ed29495f..c28a11e791 100644 --- a/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js +++ b/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js @@ -39,7 +39,7 @@ import { ComboBox } from "@docspace/shared/components/combobox"; import Filter from "@docspace/shared/api/people/filter"; import BetaBadge from "../../../BetaBadgeWrapper"; -import { getMembersList } from "@docspace/shared/api/people"; +import { getMembersList, getUserList } from "@docspace/shared/api/people"; import { AccountsSearchArea, EmployeeType, @@ -72,6 +72,9 @@ import ArrowIcon from "PUBLIC_DIR/images/arrow.right.react.svg"; import PaidQuotaLimitError from "SRC_DIR/components/PaidQuotaLimitError"; const minSearchValue = 2; +const filterSeparator = ";"; +const regex = + /^(([^<>()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i; const InviteInput = ({ defaultAccess, @@ -101,21 +104,20 @@ const InviteInput = ({ const isPublicRoomType = roomType === RoomsType.PublicRoom; const [inputValue, setInputValue] = useState(""); + const [usersList, setUsersList] = useState([]); + const [invitedUsers, setInvitedUsers] = useState(new Map()); + const [isChangeLangMail, setIsChangeLangMail] = useState(false); const [isAddEmailPanelBlocked, setIsAddEmailPanelBlocked] = useState(true); const [selectedAccess, setSelectedAccess] = useState(defaultAccess); const [dropDownWidth, setDropDownWidth] = useState(0); + const [searchRequestRunning, setSearchRequestRunning] = useState(false); const searchRef = useRef(); - - const selectedLanguage = cultureNames.find((item) => item.key === language) || - cultureNames.find((item) => item.key === culture.key) || { - key: language, - label: "", - isBeta: isBetaLanguage(language), - }; + // const searchRequestRunning = useRef(false); + const prevDropDownContent = useRef(null); useEffect(() => { setTimeout(() => { @@ -124,15 +126,53 @@ const InviteInput = ({ }, 0); }); + const selectedLanguage = useMemo( + () => + cultureNames.find((item) => item.key === language) || + cultureNames.find((item) => item.key === culture.key) || { + key: language, + label: "", + isBeta: isBetaLanguage(language), + }, + [cultureNames, language, culture], + ); + + const cultureNamesNew = useMemo( + () => + cultureNames.map((item) => ({ + label: item.label, + key: item.key, + isBeta: isBetaLanguage(item.key), + })), + [cultureNames], + ); + useEffect(() => { - !culture.key && + if (!culture.key) { setInviteLanguage({ key: language, label: selectedLanguage.label, isBeta: isBetaLanguage(language), }); + } }, []); + const onLanguageSelect = (language) => { + setInviteLanguage(language); + setCultureKey(language.key); + if (language.key !== i18n.language) setIsChangeLangMail(true); + else setIsChangeLangMail(false); + }; + + const onResetLangMail = () => { + setInviteLanguage({ + key: selectedLanguage.key, + label: selectedLanguage.label, + isBeta: selectedLanguage.isBeta, + }); + setIsChangeLangMail(false); + }; + const toUserItems = (query) => { const addresses = parseAddresses(query); const uid = () => Math.random().toString(36).slice(-6); @@ -192,38 +232,65 @@ const InviteInput = ({ } } - return { - email: addresses[0].email, - id: uid(), - access: userAccess, - displayName: addresses[0].email, - errors: addresses[0].parseErrors, - isEmailInvite: true, - }; + return [ + { + email: addresses[0].email, + id: uid(), + access: userAccess, + displayName: addresses[0].email, + errors: addresses[0].parseErrors, + isEmailInvite: true, + }, + ]; }; const searchByQuery = async (value) => { - const query = value.trim(); - - if (query.length >= minSearchValue) { - const searchArea = isPublicRoomType - ? AccountsSearchArea.People - : AccountsSearchArea.Any; - const filter = Filter.getFilterWithOutDisabledUser(); - filter.search = query; - - const users = await getMembersList(searchArea, roomId, filter); - - setUsersList(users.items); - - if (users.total) setIsAddEmailPanelBlocked(false); - } + const query = getParts(value.trim()).join(filterSeparator); if (!query) { setInputValue(""); setUsersList([]); setIsAddEmailPanelBlocked(true); + setSearchRequestRunning(false); + + return; } + + let isBlocked = true; + + if (query.length >= minSearchValue) { + const filter = Filter.getDefault(); + + const searchArea = isPublicRoomType + ? AccountsSearchArea.People + : AccountsSearchArea.Any; + + filter.search = query; + filter.filterSeparator = filterSeparator; + + const users = + roomId === -1 + ? await getUserList(filter) + : await getMembersList(searchArea, roomId, filter); + + setUsersList( + roomId === -1 + ? users.items.map((value) => ({ ...value, shared: true })) + : users.items, + ); + + if (users.total) isBlocked = false; + } + + const parts = getParts(value); + + parts.forEach((part) => { + isBlocked = regex.test(part) ? false : isBlocked; + }); + + setIsAddEmailPanelBlocked(isBlocked); + + setSearchRequestRunning(false); }; const debouncedSearch = useCallback( @@ -247,22 +314,8 @@ const InviteInput = ({ return; } - if (roomId !== -1) { - debouncedSearch(clearValue); - } - - const regex = - /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{0,}))$/g; - - const parts = getParts(value); - for (let i = 0; i < parts.length; i += 1) { - if (regex.test(parts[i])) { - setIsAddEmailPanelBlocked(false); - return; - } - } - - setIsAddEmailPanelBlocked(true); + setSearchRequestRunning(true); + debouncedSearch(clearValue); }; const removeExist = (items) => { @@ -362,10 +415,64 @@ const InviteInput = ({ const addEmail = () => { if (!inputValue.trim()) return; + if (searchRequestRunning.current) { + return setTimeout(addEmail, 100); + } + const items = toUserItems(inputValue); - const newItems = - items.length > 1 ? [...items, ...inviteItems] : [items, ...inviteItems]; + const filteredItems = items + .filter( + (item) => + !usersList.find((value) => value.email === item.email)?.shared, + ) + .map((item) => { + const userItem = usersList.find((value) => value.email === item.email); + + if (userItem) { + if (userItem.isOwner || userItem.isAdmin) + userItem.access = ShareAccessRights.RoomManager; + + if (userItem.isGroup && checkIfAccessPaid(userItem.access)) { + const topFreeRole = getTopFreeRole(t, roomType); + userItem.access = topFreeRole.access; + userItem.warning = t("GroupMaxAvailableRoleWarning", { + roleName: topFreeRole.label, + }); + } + + if ( + isUserTariffLimit && + userItem.isVisitor && + isPaidUserRole(item.access) + ) { + const freeRole = getTopFreeRole(t, roomType)?.access; + + if (freeRole) { + userItem.access = freeRole; + toastr.error(); + } + } + + return userItem; + } + + return item; + }); + + if (filteredItems.length !== items.length) { + toastr.warning(t("UsersAlreadyAdded")); + } + + if (!filteredItems.length) { + setInputValue(""); + setIsAddEmailPanelBlocked(true); + setUsersList([]); + + return; + } + + const newItems = [...filteredItems, ...inviteItems]; const filtered = removeExist(newItems); @@ -420,30 +527,43 @@ const InviteInput = ({ setAddUsersPanelVisible(false); }; - const foundUsers = usersList.map((user) => getItemContent(user)); + const dropDownContent = useMemo(() => { + const partsLength = getParts(inputValue).length; - const addEmailPanel = ( - -
- - - {inputValue} - -
-
- - {t("Common:AddButton")} - - -
-
- ); + if (searchRequestRunning.current && prevDropDownContent.current) { + return prevDropDownContent.current; + } + + if (partsLength === 1 && !!usersList.length) { + prevDropDownContent.current = usersList.map((user) => + getItemContent(user), + ); + } else { + prevDropDownContent.current = ( + +
+ + + {inputValue} + +
{" "} +
+ + {t("Common:AddButton")} + + +
+
+ ); + } + return prevDropDownContent.current; + }, [usersList, inputValue]); const accessOptions = getAccessOptions( t, @@ -479,30 +599,18 @@ const InviteInput = ({ document.addEventListener("keyup", onKeyPress); return () => document.removeEventListener("keyup", onKeyPress); }); - const onLanguageSelect = (language) => { - setInviteLanguage(language); - setCultureKey(language.key); - if (language.key !== i18n.language) setIsChangeLangMail(true); - else setIsChangeLangMail(false); - }; - const onResetLangMail = () => { - setInviteLanguage({ - key: selectedLanguage.key, - label: selectedLanguage.label, - isBeta: selectedLanguage.isBeta, - }); - setIsChangeLangMail(false); - }; - const cultureNamesNew = cultureNames.map((item) => ({ - label: item.label, - key: item.key, - isBeta: isBetaLanguage(item.key), - })); + useEffect(() => { + const newInviteItems = new Map(); - const invitedUsers = useMemo( - () => inviteItems.map((item) => item.id), - [inviteItems], + inviteItems.forEach((item) => newInviteItems.set(item?.id, item)); + + setInvitedUsers((value) => new Map([...value, ...newInviteItems])); + }, [inviteItems]); + + const invitedUsersArray = useMemo( + () => Array.from(invitedUsers.keys()), + [invitedUsers], ); return ( @@ -614,8 +722,9 @@ const InviteInput = ({ withBackdrop={false} zIndex={399} {...dropDownMaxHeight} + isRequestRunning={searchRequestRunning} > - {!!usersList.length ? foundUsers : addEmailPanel} + {dropDownContent} )} @@ -650,7 +759,7 @@ const InviteInput = ({ roomId={roomId} withGroups={!isPublicRoomType} withAccessRights - invitedUsers={invitedUsers} + invitedUsers={invitedUsersArray} disableDisabledUsers /> )} diff --git a/packages/client/src/components/panels/InvitePanel/sub-components/Item.js b/packages/client/src/components/panels/InvitePanel/sub-components/Item.js index aaeded37f4..bd81421ac3 100644 --- a/packages/client/src/components/panels/InvitePanel/sub-components/Item.js +++ b/packages/client/src/components/panels/InvitePanel/sub-components/Item.js @@ -23,18 +23,22 @@ // All the Product's GUI elements, including illustrations and icon sets, as well as technical writing // content are licensed under the terms of the Creative Commons Attribution-ShareAlike 4.0 // International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode +import debounce from "lodash.debounce"; import InfoEditReactSvgUrl from "PUBLIC_DIR/images/info.edit.react.svg?url"; import AtReactSvgUrl from "PUBLIC_DIR/images/@.react.svg?url"; import AlertSvgUrl from "PUBLIC_DIR/images/icons/12/alert.react.svg?url"; -import React, { useState, useEffect } from "react"; +import React, { useState, useEffect, useCallback } from "react"; import { inject, observer } from "mobx-react"; import { Avatar } from "@docspace/shared/components/avatar"; import { Text } from "@docspace/shared/components/text"; import { parseAddresses } from "@docspace/shared/utils"; import { getUserTypeLabel } from "@docspace/shared/utils/common"; +import { getMembersList, getUserList } from "@docspace/shared/api/people"; +import { AccountsSearchArea, RoomsType } from "@docspace/shared/enums"; +import { toastr } from "@docspace/shared/components/toast"; import { getAccessOptions, @@ -55,6 +59,7 @@ import { filterGroupRoleOptions, filterUserRoleOptions } from "SRC_DIR/helpers"; import AccessSelector from "../../../AccessSelector"; import PaidQuotaLimitError from "SRC_DIR/components/PaidQuotaLimitError"; +import Filter from "@docspace/shared/api/people/filter"; const Item = ({ t, @@ -101,6 +106,44 @@ const Item = ({ const [inputValue, setInputValue] = useState(name); const [parseErrors, setParseErrors] = useState(errors); + const [searchRequestRunning, setSearchRequestRunning] = useState(false); + const [isSharedUser, setIsSharedUser] = useState(false); + + const searchByQuery = async (value) => { + if (!value) { + setSearchRequestRunning(false); + setIsSharedUser(false); + + return; + } + + const isPublicRoomType = roomType === RoomsType.PublicRoom; + + const filter = Filter.getDefault(); + + const searchArea = isPublicRoomType + ? AccountsSearchArea.People + : AccountsSearchArea.Any; + + filter.search = value; + + const users = + roomId === -1 + ? await getUserList(filter) + : await getMembersList(searchArea, roomId, filter); + + setSearchRequestRunning(false); + + const user = users.items.find((item) => item.email === value); + + setIsSharedUser(user && (roomId === -1 || user?.shared)); + }; + + const debouncedSearch = useCallback( + debounce((value) => searchByQuery(value), 300), + [], + ); + const accesses = getAccessOptions( t, roomType, @@ -148,9 +191,19 @@ const Item = ({ const cancelEdit = (e) => { setInputValue(name); setEdit(false); + setSearchRequestRunning(false); + setIsSharedUser(false); }; - const saveEdit = (e) => { + const saveEdit = async (e) => { + if (searchRequestRunning) return; + + console.log(isSharedUser); + + if (isSharedUser) { + return toastr.warning(t("UsersAlreadyAdded")); + } + const value = inputValue === "" ? name : inputValue; setEdit(false); @@ -185,6 +238,10 @@ const Item = ({ const value = e.target.value.trim(); setInputValue(value); + + setSearchRequestRunning(true); + + debouncedSearch(value); }; const hasError = parseErrors && !!parseErrors.length; @@ -286,7 +343,11 @@ const Item = ({ const editBody = ( <> - + ); diff --git a/packages/shared/api/people/filter.js b/packages/shared/api/people/filter.js index 086224fd9a..05f18a80cc 100644 --- a/packages/shared/api/people/filter.js +++ b/packages/shared/api/people/filter.js @@ -40,6 +40,7 @@ const DEFAULT_PAYMENTS = null; const DEFAULT_ACCOUNT_LOGIN_TYPE = null; const DEFAULT_WITHOUT_GROUP = false; const DEFAULT_QUOTA_FILTER = null; +const DEFAULT_FILTER_SEPARATOR = null; const ACTIVE_EMPLOYEE_STATUS = 1; @@ -56,6 +57,7 @@ const PAYMENTS = "payments"; const ACCOUNT_LOGIN_TYPE = "accountLoginType"; const WITHOUT_GROUP = "withoutGroup"; const QUOTA_FILTER = "quotaFilter"; +const FILTER_SEPARATOR = "filterSeparator"; class Filter { static getDefault(total = DEFAULT_TOTAL) { @@ -145,6 +147,7 @@ class Filter { accountLoginType = DEFAULT_ACCOUNT_LOGIN_TYPE, withoutGroup = DEFAULT_WITHOUT_GROUP, quotaFilter = DEFAULT_QUOTA_FILTER, + filterSeparator = DEFAULT_FILTER_SEPARATOR, ) { this.page = page; this.pageCount = pageCount; @@ -160,6 +163,7 @@ class Filter { this.accountLoginType = accountLoginType; this.withoutGroup = withoutGroup; this.quotaFilter = quotaFilter; + this.filterSeparator = filterSeparator; } getStartIndex = () => { @@ -188,6 +192,7 @@ class Filter { accountLoginType, withoutGroup, quotaFilter, + filterSeparator, } = this; let employeetype = null; @@ -212,6 +217,7 @@ class Filter { accountLoginType, withoutGroup, quotaFilter, + filterSeparator, }; dtoFilter = { ...dtoFilter, ...employeetype }; @@ -235,6 +241,7 @@ class Filter { accountLoginType, withoutGroup, quotaFilter, + filterSeparator, } = this; const dtoFilter = {}; @@ -269,6 +276,8 @@ class Filter { if (quotaFilter) dtoFilter[QUOTA_FILTER] = quotaFilter; + if (filterSeparator) dtoFilter[FILTER_SEPARATOR] = filterSeparator; + dtoFilter[PAGE] = page + 1; dtoFilter[SORT_BY] = sortBy; dtoFilter[SORT_ORDER] = sortOrder; @@ -304,6 +313,7 @@ class Filter { this.accountLoginType, this.withoutGroup, this.quotaFilter, + this.filterSeparator, ); } @@ -323,6 +333,7 @@ class Filter { null, null, false, + null, ); } @@ -342,7 +353,8 @@ class Filter { this.pageCount === filter.pageCount && this.payments === filter.payments && this.accountLoginType === filter.accountLoginType && - this.withoutGroup === filter.withoutGroup; + this.withoutGroup === filter.withoutGroup && + this.filterSeparator === filter.filterSeparator; return equals; } From 9c138332b5ba186bf17d405dcb15d9bf11ead562 Mon Sep 17 00:00:00 2001 From: Ilya Oleshko Date: Mon, 2 Sep 2024 08:44:42 +0300 Subject: [PATCH 07/13] Shared: axiosClient: Fixed SDK frame force redirect --- packages/shared/utils/axiosClient.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/shared/utils/axiosClient.ts b/packages/shared/utils/axiosClient.ts index cec4503331..ff422ae0c0 100644 --- a/packages/shared/utils/axiosClient.ts +++ b/packages/shared/utils/axiosClient.ts @@ -224,10 +224,14 @@ class AxiosClient { if (!this.isSSR) { switch (error.response?.status) { case 401: { - if (options.skipUnauthorized || window?.ClientConfig?.isFrame) - return Promise.resolve(); + if (options.skipUnauthorized) return Promise.resolve(); + if (options.skipLogout) return Promise.reject(error); + if (window?.ClientConfig?.isFrame) { + break; + } + const opt: AxiosRequestConfig = { method: "POST", url: "/authentication/logout", @@ -269,6 +273,7 @@ class AxiosClient { return Promise.reject(error); } + switch (error.response?.status) { case 401: return Promise.resolve(); From 92268c90fb6d33eaaa49a3548dd471c81c83a1df Mon Sep 17 00:00:00 2001 From: Timofey Boyko Date: Mon, 2 Sep 2024 09:28:53 +0300 Subject: [PATCH 08/13] Client:InvitePanel: remove console log --- .../src/components/panels/InvitePanel/sub-components/Item.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/client/src/components/panels/InvitePanel/sub-components/Item.js b/packages/client/src/components/panels/InvitePanel/sub-components/Item.js index bd81421ac3..3a58fd13ca 100644 --- a/packages/client/src/components/panels/InvitePanel/sub-components/Item.js +++ b/packages/client/src/components/panels/InvitePanel/sub-components/Item.js @@ -198,8 +198,6 @@ const Item = ({ const saveEdit = async (e) => { if (searchRequestRunning) return; - console.log(isSharedUser); - if (isSharedUser) { return toastr.warning(t("UsersAlreadyAdded")); } From 72191e803b6c0c14baf822e8f6e8fa1803323a46 Mon Sep 17 00:00:00 2001 From: Timofey Boyko Date: Mon, 2 Sep 2024 12:59:02 +0300 Subject: [PATCH 09/13] Shared:Components:DropDown: fix blinking after switch from 1 item to more --- packages/shared/components/drop-down/DropDown.styled.ts | 2 -- 1 file changed, 2 deletions(-) diff --git a/packages/shared/components/drop-down/DropDown.styled.ts b/packages/shared/components/drop-down/DropDown.styled.ts index bb622db405..58802e6a5e 100644 --- a/packages/shared/components/drop-down/DropDown.styled.ts +++ b/packages/shared/components/drop-down/DropDown.styled.ts @@ -112,8 +112,6 @@ const StyledDropdown = styled.div<{ -moz-box-shadow: ${(props) => props.theme.dropDown.boxShadow}; -webkit-box-shadow: ${(props) => props.theme.dropDown.boxShadow}; - padding: ${(props) => - !props.maxHeight && props.itemCount && props.itemCount > 1 && `4px 0px`}; ${(props) => props.columnCount && ` From bc9c7cf091689b5eafccd414b523066ce75e2854 Mon Sep 17 00:00:00 2001 From: Timofey Boyko Date: Mon, 2 Sep 2024 13:05:21 +0300 Subject: [PATCH 10/13] Client:InvitePanel:InviteInput: fix fast keypress --- .../panels/InvitePanel/sub-components/InviteInput.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js b/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js index c28a11e791..e13655d579 100644 --- a/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js +++ b/packages/client/src/components/panels/InvitePanel/sub-components/InviteInput.js @@ -116,7 +116,6 @@ const InviteInput = ({ const [searchRequestRunning, setSearchRequestRunning] = useState(false); const searchRef = useRef(); - // const searchRequestRunning = useRef(false); const prevDropDownContent = useRef(null); useEffect(() => { @@ -288,6 +287,8 @@ const InviteInput = ({ isBlocked = regex.test(part) ? false : isBlocked; }); + console.log("set here", isBlocked); + setIsAddEmailPanelBlocked(isBlocked); setSearchRequestRunning(false); @@ -413,11 +414,7 @@ const InviteInput = ({ }; const addEmail = () => { - if (!inputValue.trim()) return; - - if (searchRequestRunning.current) { - return setTimeout(addEmail, 100); - } + if (!inputValue.trim() || searchRequestRunning) return; const items = toUserItems(inputValue); @@ -530,7 +527,7 @@ const InviteInput = ({ const dropDownContent = useMemo(() => { const partsLength = getParts(inputValue).length; - if (searchRequestRunning.current && prevDropDownContent.current) { + if (searchRequestRunning && prevDropDownContent.current) { return prevDropDownContent.current; } From ee0fcc34b314a5a23bdbdd66873b8197327f0f9b Mon Sep 17 00:00:00 2001 From: Maria-Sukhova Date: Mon, 2 Sep 2024 13:25:01 +0300 Subject: [PATCH 11/13] added translations --- i18next/client.babel | 132 ++++++++++++++++++ .../client/public/locales/de/Settings.json | 1 + .../client/public/locales/es/Settings.json | 1 + .../client/public/locales/fr/Settings.json | 1 + .../client/public/locales/hy-AM/Settings.json | 1 + .../client/public/locales/it/Settings.json | 1 + .../client/public/locales/ja-JP/Settings.json | 1 + .../client/public/locales/pt-BR/Settings.json | 1 + .../client/public/locales/ro/Settings.json | 1 + .../client/public/locales/ru/Settings.json | 1 + .../client/public/locales/zh-CN/Settings.json | 1 + 11 files changed, 142 insertions(+) diff --git a/i18next/client.babel b/i18next/client.babel index de2936f997..b8880bc1ec 100644 --- a/i18next/client.babel +++ b/i18next/client.babel @@ -152346,6 +152346,138 @@ + + NoEventsHereYet + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + NoUsersInBackup diff --git a/packages/client/public/locales/de/Settings.json b/packages/client/public/locales/de/Settings.json index f5bf6e048f..92a10e3699 100644 --- a/packages/client/public/locales/de/Settings.json +++ b/packages/client/public/locales/de/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Neues Farbschema", "NextStep": "Nächster Schritt", "NoEmail": "KEINE EMAIL", + "NoEventsHereYet": "Noch keine Ereignisse hier", "NoUsersInBackup": "Es wurden keine Benutzer gefunden. Versuchen Sie es erneut oder laden Sie andere Sicherungsdateien hoch.", "NumberOfActiveEmployees": "Anzahl aktiver Mitarbeiter: {{count}}", "NumberOfAttempts": "Anzahl der Versuche", diff --git a/packages/client/public/locales/es/Settings.json b/packages/client/public/locales/es/Settings.json index fcf31cb571..e4f775ed4c 100644 --- a/packages/client/public/locales/es/Settings.json +++ b/packages/client/public/locales/es/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Nueva combinación de colores", "NextStep": "Próximo paso", "NoEmail": "SIN CORREO ELECTRÓNICO", + "NoEventsHereYet": "No hay eventos aquí todavía", "NoUsersInBackup": "No se han encontrado usuarios. Inténtelo de nuevo o cargue otros archivos de copia de seguridad.", "NumberOfActiveEmployees": "Número de empleados activos: {{count}}", "NumberOfAttempts": "Número de intentos", diff --git a/packages/client/public/locales/fr/Settings.json b/packages/client/public/locales/fr/Settings.json index 9d30dd3f81..2ab1a577de 100644 --- a/packages/client/public/locales/fr/Settings.json +++ b/packages/client/public/locales/fr/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Nouvelle palette de couleurs", "NextStep": "Étape suivante", "NoEmail": "AUCUN E-MAIL", + "NoEventsHereYet": "Aucun événement ici pour le moment", "NoUsersInBackup": "Aucun utilisateur n’a été trouvé. Réessayez ou téléchargez d’autres fichiers de sauvegarde.", "NumberOfActiveEmployees": "Nombre d'employés actifs {{count}}", "NumberOfAttempts": "Nombre de tentatives", diff --git a/packages/client/public/locales/hy-AM/Settings.json b/packages/client/public/locales/hy-AM/Settings.json index b8c0552f31..0461285102 100644 --- a/packages/client/public/locales/hy-AM/Settings.json +++ b/packages/client/public/locales/hy-AM/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Նոր գունային սխեմա", "NextStep": "Հաջորդ քայլը", "NoEmail": "Էլ.հասցե չկա", + "NoEventsHereYet": "Այստեղ դեռ իրադարձություններ չկան", "NoUsersInBackup": "Ոչ մի օգտվող չի գտնվել: Կրկին փորձեք կամ վերբեռնեք այլ պահուստային ֆայլեր:", "NumberOfActiveEmployees": "Ակտիվ աշխատողների թիվը՝ {{count}}", "NumberOfAttempts": "Փորձերի քանակը", diff --git a/packages/client/public/locales/it/Settings.json b/packages/client/public/locales/it/Settings.json index f4303bd878..f04d85be25 100644 --- a/packages/client/public/locales/it/Settings.json +++ b/packages/client/public/locales/it/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Nuova combinazione di colori", "NextStep": "Passo successivo", "NoEmail": "NESSUNA E-MAIL", + "NoEventsHereYet": "Non ci sono ancora eventi qui", "NoUsersInBackup": "Nessun utente trovato. Riprova o carica altri file di backup.", "NumberOfActiveEmployees": "Numero di dipendenti attivi: {{count}}", "NumberOfAttempts": "Numero di tentativi", diff --git a/packages/client/public/locales/ja-JP/Settings.json b/packages/client/public/locales/ja-JP/Settings.json index 9aaeadf4c6..7e225d5359 100644 --- a/packages/client/public/locales/ja-JP/Settings.json +++ b/packages/client/public/locales/ja-JP/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "新しいカラースキーム", "NextStep": "次のステップ", "NoEmail": "NO EMAIL", + "NoEventsHereYet": "まだイベントはありません", "NoUsersInBackup": "ユーザが見つかりません。再試行するか、他のバックアップファイルをアップロードしてください。", "NumberOfActiveEmployees": "アクティブな社員数:{{count}}", "NumberOfAttempts": "試行回数", diff --git a/packages/client/public/locales/pt-BR/Settings.json b/packages/client/public/locales/pt-BR/Settings.json index 578eacba1f..25420b28b4 100644 --- a/packages/client/public/locales/pt-BR/Settings.json +++ b/packages/client/public/locales/pt-BR/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Novo esquema de cores", "NextStep": "Próxima Etapa", "NoEmail": "SEM E-MAIL", + "NoEventsHereYet": "Ainda não há eventos aqui", "NoUsersInBackup": "Usuários não encontrados. Tente novamente ou carregue outros arquivos de backup.", "NumberOfActiveEmployees": "Número de funcionários ativos: {{count}}", "NumberOfAttempts": "Número de tentativas", diff --git a/packages/client/public/locales/ro/Settings.json b/packages/client/public/locales/ro/Settings.json index e78b6a245a..101a068d44 100644 --- a/packages/client/public/locales/ro/Settings.json +++ b/packages/client/public/locales/ro/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Schemă de culori nouă", "NextStep": "Etapa următoare ", "NoEmail": "NICIUN E-EMAIL", + "NoEventsHereYet": "Deocamdată, niciun eveniment aici.", "NoUsersInBackup": "Nu s-au găsit utilizatori. Încercaţi din nou sau încărcați alte fișiere de rezervă.", "NumberOfActiveEmployees": "Numărul de angajați activi: {{count}}", "NumberOfAttempts": "Numărul de încercări", diff --git a/packages/client/public/locales/ru/Settings.json b/packages/client/public/locales/ru/Settings.json index e7996e5a66..a8ceead7a4 100644 --- a/packages/client/public/locales/ru/Settings.json +++ b/packages/client/public/locales/ru/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "Новая цветовая схема", "NextStep": "Следующий шаг", "NoEmail": "НЕТ ЭЛЕКТРОННОЙ ПОЧТЫ", + "NoEventsHereYet": "Здесь пока нет событий", "NoUsersInBackup": "Пользователи не найдены. Попробуйте снова или загрузите другие файлы резервной копии.", "NumberOfActiveEmployees": "Количество активных сотрудников: {{count}}", "NumberOfAttempts": "Число попыток", diff --git a/packages/client/public/locales/zh-CN/Settings.json b/packages/client/public/locales/zh-CN/Settings.json index 5b6f3ec354..a2305893e2 100644 --- a/packages/client/public/locales/zh-CN/Settings.json +++ b/packages/client/public/locales/zh-CN/Settings.json @@ -175,6 +175,7 @@ "NewColorScheme": "新配色方案", "NextStep": "下一步", "NoEmail": "无电子邮件", + "NoEventsHereYet": "这里目前没有事件", "NoUsersInBackup": "未找到用户。请重试或上传其他备份文件。", "NumberOfActiveEmployees": "活跃员工数:{{count}}", "NumberOfAttempts": "尝试次数", From de61c54e21f8990419a3c3db84fb659c1c7fd2a1 Mon Sep 17 00:00:00 2001 From: Alexey Safronov Date: Mon, 2 Sep 2024 15:32:05 +0400 Subject: [PATCH 12/13] Fix Bug 69960 - [LDAP] Enable StartTLS/SSL options are checkbox instead of radio on server setup page --- i18next/client.babel | 1452 +++++++++++------ .../client/public/locales/ar-SA/Ldap.json | 8 +- packages/client/public/locales/az/Ldap.json | 8 +- packages/client/public/locales/bg/Ldap.json | 8 +- packages/client/public/locales/cs/Ldap.json | 8 +- packages/client/public/locales/de/Ldap.json | 8 +- .../client/public/locales/el-GR/Ldap.json | 8 +- packages/client/public/locales/en/Ldap.json | 10 +- packages/client/public/locales/es/Ldap.json | 8 +- packages/client/public/locales/fi/Ldap.json | 8 +- packages/client/public/locales/fr/Ldap.json | 8 +- .../client/public/locales/hy-AM/Ldap.json | 8 +- packages/client/public/locales/it/Ldap.json | 8 +- .../client/public/locales/ja-JP/Ldap.json | 8 +- .../client/public/locales/ko-KR/Ldap.json | 8 +- .../client/public/locales/lo-LA/Ldap.json | 5 +- packages/client/public/locales/lv/Ldap.json | 8 +- packages/client/public/locales/nl/Ldap.json | 8 +- packages/client/public/locales/pl/Ldap.json | 8 +- .../client/public/locales/pt-BR/Ldap.json | 8 +- packages/client/public/locales/pt/Ldap.json | 8 +- packages/client/public/locales/ro/Ldap.json | 8 +- packages/client/public/locales/ru/Ldap.json | 8 +- packages/client/public/locales/si/Ldap.json | 5 +- packages/client/public/locales/sk/Ldap.json | 8 +- packages/client/public/locales/sl/Ldap.json | 8 +- .../public/locales/sr-Cyrl-RS/Ldap.json | 8 +- .../public/locales/sr-Latn-RS/Ldap.json | 8 +- packages/client/public/locales/tr/Ldap.json | 8 +- .../client/public/locales/uk-UA/Ldap.json | 8 +- packages/client/public/locales/vi/Ldap.json | 8 +- .../client/public/locales/zh-CN/Ldap.json | 8 +- .../LDAP/styled-components/StyledLdapPage.js | 29 +- .../LDAP/sub-components/Checkboxes.js | 79 +- .../LDAP/sub-components/HideButton.js | 2 +- 35 files changed, 1128 insertions(+), 678 deletions(-) diff --git a/i18next/client.babel b/i18next/client.babel index de2936f997..e0d07ea673 100644 --- a/i18next/client.babel +++ b/i18next/client.babel @@ -92206,6 +92206,798 @@ + + LdapConnectionType + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + + + LdapConnectionTypeSSL + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + + + LdapConnectionTypeSSLTooltip + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + + + LdapConnectionTypeStartTls + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + + + LdapConnectionTypeStartTlsTooltip + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + + + LdapConnectionTypeUnencrypted + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + LdapDisclaimer @@ -92338,534 +93130,6 @@ - - LdapEnableSSL - - - - - - ar-SA - false - - - az-Latn-AZ - false - - - bg-BG - false - - - cs-CZ - false - - - de-DE - false - - - el-GR - false - - - en-US - false - - - es-ES - false - - - fi-FI - false - - - fr-FR - false - - - hy-AM - false - - - it-IT - false - - - ja-JP - false - - - ko-KR - false - - - lo-LA - false - - - lv-LV - false - - - nl-NL - false - - - pl-PL - false - - - pt-BR - false - - - pt-PT - false - - - ro-RO - false - - - ru-RU - false - - - si-SI - false - - - sk-SK - false - - - sl-SI - false - - - sr-Cyrl-RS - false - - - sr-Latn-RS - false - - - tr-TR - false - - - uk-UA - false - - - vi-VN - false - - - zh-CN - false - - - - - LdapEnableSSLTooltip - - - - - - ar-SA - false - - - az-Latn-AZ - false - - - bg-BG - false - - - cs-CZ - false - - - de-DE - false - - - el-GR - false - - - en-US - false - - - es-ES - false - - - fi-FI - false - - - fr-FR - false - - - hy-AM - false - - - it-IT - false - - - ja-JP - false - - - ko-KR - false - - - lo-LA - false - - - lv-LV - false - - - nl-NL - false - - - pl-PL - false - - - pt-BR - false - - - pt-PT - false - - - ro-RO - false - - - ru-RU - false - - - si-SI - false - - - sk-SK - false - - - sl-SI - false - - - sr-Cyrl-RS - false - - - sr-Latn-RS - false - - - tr-TR - false - - - uk-UA - false - - - vi-VN - false - - - zh-CN - false - - - - - LdapEnableStartTls - - - - - - ar-SA - false - - - az-Latn-AZ - false - - - bg-BG - false - - - cs-CZ - false - - - de-DE - false - - - el-GR - false - - - en-US - false - - - es-ES - false - - - fi-FI - false - - - fr-FR - false - - - hy-AM - false - - - it-IT - false - - - ja-JP - false - - - ko-KR - false - - - lo-LA - false - - - lv-LV - false - - - nl-NL - false - - - pl-PL - false - - - pt-BR - false - - - pt-PT - false - - - ro-RO - false - - - ru-RU - false - - - si-SI - false - - - sk-SK - false - - - sl-SI - false - - - sr-Cyrl-RS - false - - - sr-Latn-RS - false - - - tr-TR - false - - - uk-UA - false - - - vi-VN - false - - - zh-CN - false - - - - - LdapEnableStartTlsTooltip - - - - - - ar-SA - false - - - az-Latn-AZ - false - - - bg-BG - false - - - cs-CZ - false - - - de-DE - false - - - el-GR - false - - - en-US - false - - - es-ES - false - - - fi-FI - false - - - fr-FR - false - - - hy-AM - false - - - it-IT - false - - - ja-JP - false - - - ko-KR - false - - - lo-LA - false - - - lv-LV - false - - - nl-NL - false - - - pl-PL - false - - - pt-BR - false - - - pt-PT - false - - - ro-RO - false - - - ru-RU - false - - - si-SI - false - - - sk-SK - false - - - sl-SI - false - - - sr-Cyrl-RS - false - - - sr-Latn-RS - false - - - tr-TR - false - - - uk-UA - false - - - vi-VN - false - - - zh-CN - false - - - LdapGroupAttribute @@ -152346,6 +152610,138 @@ + + NoEventsHereYet + + + + + + ar-SA + false + + + az-Latn-AZ + false + + + bg-BG + false + + + cs-CZ + false + + + de-DE + false + + + el-GR + false + + + en-US + false + + + es-ES + false + + + fi-FI + false + + + fr-FR + false + + + hy-AM + false + + + it-IT + false + + + ja-JP + false + + + ko-KR + false + + + lo-LA + false + + + lv-LV + false + + + nl-NL + false + + + pl-PL + false + + + pt-BR + false + + + pt-PT + false + + + ro-RO + false + + + ru-RU + false + + + si-SI + false + + + sk-SK + false + + + sl-SI + false + + + sr-Cyrl-RS + false + + + sr-Latn-RS + false + + + tr-TR + false + + + uk-UA + false + + + vi-VN + false + + + zh-CN + false + + + NoUsersInBackup diff --git a/packages/client/public/locales/ar-SA/Ldap.json b/packages/client/public/locales/ar-SA/Ldap.json index 8f03b81424..b55b592182 100644 --- a/packages/client/public/locales/ar-SA/Ldap.json +++ b/packages/client/public/locales/ar-SA/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "ستسمح المزامنة بتحميل جميع البيانات من البوابة وتحديث البيانات الجديدة بعد تغيير الإعدادات. قم بالمزامنة في كل مرة يكون لديك بيانات جديدة عن المستخدمين في البوابة.", "LdapAvatar": "صورة الملف الشخصي", "LdapCertificateConfirm": "تأكيد الشهادة", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "يمكنك جعل حركة مرور LDAP سرية وآمنة باستخدام طبقة المقابس الآمنة (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "يوفر StartTLS طريقة لترقية اتصال النص العادي إلى اتصال مشفر (TLS أو SSL) بدلاً من استخدام بوابة منفصل للاتصال المشفر.", "LdapDisclaimer": "لطفًا، يرجى الانتباه: سيتم أخذ البريد الإلكتروني لمستخدم البوابة من إعداد \"ميزة البريد\". إذا كان مفقودًا، فسيتم تشكيله بالطريقة التالية: \"خاصية تسجيل الدخول + @ + مجال LDAP\". وفي حالة عدم وجود مثل هذا البريد الإلكتروني، فلن يتلقى المستخدم أي إشعار للبوابة.", - "LdapEnableSSL": "تفعيل SSL", - "LdapEnableSSLTooltip": "يمكنك جعل حركة مرور LDAP سرية وآمنة باستخدام طبقة المقابس الآمنة (SSL)", - "LdapEnableStartTls": "تفعيل StartTLS", - "LdapEnableStartTlsTooltip": "يوفر StartTLS طريقة لترقية اتصال النص العادي إلى اتصال مشفر (TLS أو SSL) بدلاً من استخدام بوابة منفصل للاتصال المشفر.", "LdapGroupAttribute": "Group Attribute", "LdapGroupAttributeTooltip": "أدخل ميزة هدف المجموعة التي تحدد المستخدمين الذين تتضمنهم هذه المجموعة.", "LdapGroupDN": "الاسم التعريفي للمجموعة", diff --git a/packages/client/public/locales/az/Ldap.json b/packages/client/public/locales/az/Ldap.json index 9f2137c7f8..66e3ec027a 100644 --- a/packages/client/public/locales/az/Ldap.json +++ b/packages/client/public/locales/az/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Sinxronizasiya bütün məlumatların portaldan yüklənməsinə və parametrlər dəyişdirildikdən sonra yeni məlumatların yenilənməsinə imkan verəcək. Portalda istifadəçilər üçün hər dəfə yeni məlumatınız olduqda sinxronizasiya edin.", "LdapAvatar": "Profil şəkli", "LdapCertificateConfirm": "Sertifikatı təsdiqləyin", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Secure Sockets Layer (SSL) istifadə edərək LDAP trafikini şəxsi və təhlükəsiz edə bilərsiniz.", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS, şifrələnmiş əlaqə üçün ayrıca portdan istifadə etmək əvəzinə, açıq mətn bağlantısını şifrələnmiş (TLS və ya SSL) əlaqəyə yüksəltmək üçün bir yol təqdim edir.", "LdapDisclaimer": "Nəzərə alın: Portal istifadəçisi e-poçtu 'Mail Atribut' parametrindən alınacaq. Əgər çatışmazsa, o, aşağıdakı kimi yaradılacaq: 'Login Atribut + @ + LDAP Domain'. Əgər belə bir e-poçt yoxdursa, istifadəçiyə heç bir portal bildirişi göndərilməyəcək.", - "LdapEnableSSL": "SSL-i aktivləşdirin", - "LdapEnableSSLTooltip": "Secure Sockets Layer (SSL) istifadə edərək LDAP trafikini şəxsi və təhlükəsiz edə bilərsiniz.", - "LdapEnableStartTls": "StartTLS-i aktivləşdirin", - "LdapEnableStartTlsTooltip": "StartTLS, şifrələnmiş əlaqə üçün ayrıca portdan istifadə etmək əvəzinə, açıq mətn bağlantısını şifrələnmiş (TLS və ya SSL) əlaqəyə yüksəltmək üçün bir yol təqdim edir.", "LdapGroupAttribute": "Qrup Xüsusiyyəti", "LdapGroupAttributeTooltip": "Bu qrupun hansı istifadəçiləri ehtiva etdiyini göstərən qrup obyekti xüsusiyyətini daxil edin.", "LdapGroupDN": "DN qrupu", diff --git a/packages/client/public/locales/bg/Ldap.json b/packages/client/public/locales/bg/Ldap.json index 1488adcc55..c14456dfff 100644 --- a/packages/client/public/locales/bg/Ldap.json +++ b/packages/client/public/locales/bg/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Синхронизирането ще позволи качване на всички данни от портала и актуализиране на новите данни след промяна на настройките. Синхронизирайте всеки път, когато имате нови данни за потребители в портала.", "LdapAvatar": "Профилна снимка", "LdapCertificateConfirm": "Потвърди сертификат", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Можете да направите LDAP трафика поверителен и защитен, като използвате Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS предлага начин за надграждане на връзка с обикновен текст до криптирана (TLS или SSL) връзка, вместо да използвате отделен порт за криптирана комуникация.", "LdapDisclaimer": "Молим да имате предвид: потребителският имейл на портала ще бъде взет от настройката „Пощенски атрибут“. Ако липсва, ще се формира по следния начин: „Входен атрибут + @ + LDAP Домейн“ В случай, че такъв имейл не съществува, потребителят няма да получи никакво портално известие.", - "LdapEnableSSL": "Активирай SSL", - "LdapEnableSSLTooltip": "Можете да направите LDAP трафика поверителен и защитен, като използвате Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Активирай StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS предлага начин за надграждане на връзка с обикновен текст до криптирана (TLS или SSL) връзка, вместо да използвате отделен порт за криптирана комуникация.", "LdapGroupAttribute": "Групов атрибут", "LdapGroupAttributeTooltip": "Въведете атрибута на груповия обект, който указва какви потребители включва тази група.", "LdapGroupDN": "Групов DN", diff --git a/packages/client/public/locales/cs/Ldap.json b/packages/client/public/locales/cs/Ldap.json index 9493165511..d71e8c9c76 100644 --- a/packages/client/public/locales/cs/Ldap.json +++ b/packages/client/public/locales/cs/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Synchronizace umožní nahrát všechna data z portálu a po změně nastavení aktualizovat nová data. Synchronizace probíhá pokaždé, když se na portálu objeví nová data o uživatelích.", "LdapAvatar": "Profilová fotografie", "LdapCertificateConfirm": "Potvrzení certifikátu", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Důvěrnost a zabezpečení přenosů LDAP můžete zajistit pomocí protokolu SSL (Secure Sockets Layer).", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "Funkce StartTLS nabízí způsob, jak povýšit textové připojení na šifrované (TLS nebo SSL) namísto použití samostatného portu pro šifrovanou komunikaci.", "LdapDisclaimer": "Nezapomeňte, že e-mail uživatele portálu bude převzat z nastavení „Mail Attribute“. Pokud chybí, bude vytvořen následujícím způsobem: „Login Attribute + @ + LDAP Domain“. V případě, že takový e-mail neexistuje, uživatel nedostane žádné oznámení portálu.", - "LdapEnableSSL": "Povolení protokolu SSL", - "LdapEnableSSLTooltip": "Důvěrnost a zabezpečení přenosů LDAP můžete zajistit pomocí protokolu SSL (Secure Sockets Layer).", - "LdapEnableStartTls": "Povolení funkce StartTLS", - "LdapEnableStartTlsTooltip": "Funkce StartTLS nabízí způsob, jak povýšit textové připojení na šifrované (TLS nebo SSL) namísto použití samostatného portu pro šifrovanou komunikaci.", "LdapGroupAttribute": "Atribut skupiny", "LdapGroupAttributeTooltip": "Zadejte atribut objektu skupiny, který určuje, jaké uživatele tato skupina zahrnuje.", "LdapGroupDN": "Skupina DN", diff --git a/packages/client/public/locales/de/Ldap.json b/packages/client/public/locales/de/Ldap.json index c8fcaa4f88..dcfea3278f 100644 --- a/packages/client/public/locales/de/Ldap.json +++ b/packages/client/public/locales/de/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Die Synchronisierung ermöglicht das Hochladen aller Daten aus dem Portal und die Aktualisierung der neuen Daten nach Änderung der Einstellungen. Synchronisieren Sie jedes Mal, wenn Sie neue Daten über Benutzer im Portal haben.", "LdapAvatar": "Profilfoto", "LdapCertificateConfirm": "Zertifikat bestätigen", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Sie können den LDAP-Datenverkehr vertraulich und sicher gestalten, indem Sie Secure Sockets Layer (SSL) verwenden.", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS bietet eine Möglichkeit, eine Klartextverbindung in eine verschlüsselte (TLS oder SSL) Verbindung umzuwandeln, anstatt einen separaten Port für die verschlüsselte Kommunikation zu verwenden.", "LdapDisclaimer": "Bitte beachten Sie: Die E-Mail des Portalbenutzers wird aus der Einstellung \"Mail-Attribut\" übernommen. Fehlt sie, wird sie folgendermaßen gebildet: \"Login-Attribut + @ + LDAP-Domäne\". Falls eine solche E-Mail nicht existiert, wird der Benutzer keine Portalbenachrichtigung erhalten.", - "LdapEnableSSL": "SSL aktivieren", - "LdapEnableSSLTooltip": "Sie können den LDAP-Datenverkehr vertraulich und sicher gestalten, indem Sie Secure Sockets Layer (SSL) verwenden.", - "LdapEnableStartTls": "StartTLS aktivieren", - "LdapEnableStartTlsTooltip": "StartTLS bietet eine Möglichkeit, eine Klartextverbindung in eine verschlüsselte (TLS oder SSL) Verbindung umzuwandeln, anstatt einen separaten Port für die verschlüsselte Kommunikation zu verwenden.", "LdapGroupAttribute": "Gruppenattribut", "LdapGroupAttributeTooltip": "Geben Sie das Attribut des Gruppenobjekts ein, das angibt, welche Benutzer diese Gruppe umfasst.", "LdapGroupDN": "Gruppen-DN", diff --git a/packages/client/public/locales/el-GR/Ldap.json b/packages/client/public/locales/el-GR/Ldap.json index 6f4a96b451..8fd6e29f35 100644 --- a/packages/client/public/locales/el-GR/Ldap.json +++ b/packages/client/public/locales/el-GR/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Ο συγχρονισμός θα επιτρέψει τη μεταφόρτωση όλων των δεδομένων από την πύλη και την ενημέρωση των νέων δεδομένων μετά την αλλαγή των ρυθμίσεων. Κάντε συγχρονισμό κάθε φορά που έχετε νέα δεδομένα για τους χρήστες στην πύλη.", "LdapAvatar": "Φωτογραφία προφίλ", "LdapCertificateConfirm": "Επιβεβαίωση πιστοποιητικού", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Μπορείτε να καταστήσετε την κυκλοφορία LDAP εμπιστευτική και ασφαλή χρησιμοποιώντας το πρωτόκολλο Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "Το StartTLS προσφέρει έναν τρόπο αναβάθμισης μιας σύνδεσης απλού κειμένου σε μια κρυπτογραφημένη σύνδεση (TLS ή SSL) αντί της χρήσης ξεχωριστής θύρας για κρυπτογραφημένη επικοινωνία.", "LdapDisclaimer": "Λάβετε υπόψη: το email του χρήστη πύλης θα ληφθεί από τη ρύθμιση «Χαρακτηριστικό Αλληλογραφίας». Εάν λείπει, θα διαμορφωθεί με τον ακόλουθο τρόπο: 'Χαρακτηριστικό Εισόδου + @ + Τομέας LDAP'. Σε περίπτωση που δεν υπάρχει τέτοιο email, ο χρήστης δεν θα λάβει καμία ειδοποίηση από την πύλη.", - "LdapEnableSSL": "Ενεργοποίηση SSL", - "LdapEnableSSLTooltip": "Μπορείτε να καταστήσετε την κυκλοφορία LDAP εμπιστευτική και ασφαλή χρησιμοποιώντας το πρωτόκολλο Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Ενεργοποιήστε το StartTLS", - "LdapEnableStartTlsTooltip": "Το StartTLS προσφέρει έναν τρόπο αναβάθμισης μιας σύνδεσης απλού κειμένου σε μια κρυπτογραφημένη σύνδεση (TLS ή SSL) αντί της χρήσης ξεχωριστής θύρας για κρυπτογραφημένη επικοινωνία.", "LdapGroupAttribute": "Χαρακτηριστικό ομάδας", "LdapGroupAttributeTooltip": "Εισαγάγετε το χαρακτηριστικό αντικειμένου ομάδας που καθορίζει ποιους χρήστες περιλαμβάνει αυτή η ομάδα.", "LdapGroupDN": "DN ομάδας", diff --git a/packages/client/public/locales/en/Ldap.json b/packages/client/public/locales/en/Ldap.json index f8eb100cce..4d454c3ada 100644 --- a/packages/client/public/locales/en/Ldap.json +++ b/packages/client/public/locales/en/Ldap.json @@ -8,11 +8,13 @@ "LdapAutoSyncToggleDescription": "Synchronization will allow to upload all the data from the portal and update the new data after changing the settings. Sync every time you have new data on users in the portal.", "LdapAvatar": "Profile photo", "LdapCertificateConfirm": "Confirm certificate", + "LdapConnectionType": "Connection Type", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "You can make LDAP traffic confidential and secure by using Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS offers a way to upgrade a plain text connection to an encrypted (TLS or SSL) connection instead of using a separate port for encrypted communication.", + "LdapConnectionTypeUnencrypted": "Unencrypted communication", "LdapDisclaimer": "Please, keep in mind: the portal user email will be taken from the 'Mail Attribute' setting. If it is missing, it will be formed in the following way: 'Login Attribute + @ + LDAP Domain'. In case such an email does not exist, the user will not receive any portal notification.", - "LdapEnableSSL": "Enable SSL", - "LdapEnableSSLTooltip": "You can make LDAP traffic confidential and secure by using Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Enable StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS offers a way to upgrade a plain text connection to an encrypted (TLS or SSL) connection instead of using a separate port for encrypted communication.", "LdapGroupAttribute": "Group Attribute", "LdapGroupAttributeTooltip": "Enter the group object attribute which specifies what users this group includes.", "LdapGroupDN": "Group DN", diff --git a/packages/client/public/locales/es/Ldap.json b/packages/client/public/locales/es/Ldap.json index 757af29c7a..4a394b8a27 100644 --- a/packages/client/public/locales/es/Ldap.json +++ b/packages/client/public/locales/es/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "La sincronización permitirá cargar todos los datos del portal y actualizar los nuevos datos después de cambiar la configuración. Sincronice cada vez que tenga nuevos datos de usuarios en el portal.", "LdapAvatar": "Foto de perfil", "LdapCertificateConfirm": "Confirmar certificado", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Puede hacer que el tráfico LDAP sea confidencial y seguro utilizando Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS ofrece una forma de actualizar una conexión de texto sin formato a una conexión cifrada (TLS o SSL) en lugar de utilizar un puerto independiente para la comunicación cifrada.", "LdapDisclaimer": "Por favor, tenga en cuenta: el correo electrónico del usuario del portal se tomará desde la configuración 'Atributo de correo'. Si falta, se formará de la siguiente manera: 'Atributo de inicio de sesión + @ + Dominio LDAP'. En caso de que dicho correo electrónico no exista, el usuario no recibirá ninguna notificación del portal.", - "LdapEnableSSL": "Habilitar SSL", - "LdapEnableSSLTooltip": "Puede hacer que el tráfico LDAP sea confidencial y seguro utilizando Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Habilitar InicioTLS", - "LdapEnableStartTlsTooltip": "StartTLS ofrece una forma de actualizar una conexión de texto sin formato a una conexión cifrada (TLS o SSL) en lugar de utilizar un puerto independiente para la comunicación cifrada.", "LdapGroupAttribute": "Atributo de grupo", "LdapGroupAttributeTooltip": "Introduzca el atributo del objeto de grupo que especifica qué usuarios incluye este grupo.", "LdapGroupDN": "DN de grupo", diff --git a/packages/client/public/locales/fi/Ldap.json b/packages/client/public/locales/fi/Ldap.json index 56bee2adba..42767a4705 100644 --- a/packages/client/public/locales/fi/Ldap.json +++ b/packages/client/public/locales/fi/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Synkronointi mahdollistaa kaikkien tietojen lataamisen portaalista ja uusien tietojen päivittämisen asetusten muuttamisen jälkeen. Synkronoi aina, kun sinulla on portaalissa uutta tietoa käyttäjistä.", "LdapAvatar": "Profiilikuva", "LdapCertificateConfirm": "Vahvista sertifikaatti", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Voit muuttaa LDAP-liikenteen luottamukselliseksi ja turvalliseksi käyttäen Secure Sockets Layeriä (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS tarjoaa tavan päivittää tavallinen tekstiyhteys salattuun (TLS tai SSL) yhteyteen sen sijaa, että käytettäisiin erillistä porttia salattua yhteyttä varten.", "LdapDisclaimer": "Pidä mielessä: portaalin käyttäjän sähköposti otetaan ’Postiattribuutti’-asetuksesta. Jos sitä ei ole, se muodostetaan seuraavalla tavalla: ’Kirjautumisattribuutti + LDAP-domain’. Jos sähköpostia ei ole, käyttäjä ei saa mitään portaalin ilmoituksia.", - "LdapEnableSSL": "Ota SSL käyttöön", - "LdapEnableSSLTooltip": "Voit muuttaa LDAP-liikenteen luottamukselliseksi ja turvalliseksi käyttäen Secure Sockets Layeriä (SSL)", - "LdapEnableStartTls": "Ota StartTLS käyttöön", - "LdapEnableStartTlsTooltip": "StartTLS tarjoaa tavan päivittää tavallinen tekstiyhteys salattuun (TLS tai SSL) yhteyteen sen sijaa, että käytettäisiin erillistä porttia salattua yhteyttä varten.", "LdapGroupAttribute": "Ryhmäattribuutti", "LdapGroupAttributeTooltip": "Syötä ryhmän objektiattribuutti, joka määrittelee mitä käyttäjiä tämä ryhmä sisältää.", "LdapGroupDN": "Ryhmä DN", diff --git a/packages/client/public/locales/fr/Ldap.json b/packages/client/public/locales/fr/Ldap.json index 22e7a0511e..35cb3eb7d9 100644 --- a/packages/client/public/locales/fr/Ldap.json +++ b/packages/client/public/locales/fr/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "La synchronisation permet de télécharger toutes les données du portail et de mettre à jour les nouvelles données après avoir modifié les paramètres. Synchronisez chaque fois que vous avez de nouvelles données sur les utilisateurs dans l’espace.", "LdapAvatar": "Photo de profil", "LdapCertificateConfirm": "Confirmer le certificat", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Vous pouvez rendre le trafic LDAP confidentiel et sécurisé en utilisant le protocole SSL (Secure Sockets Layer).", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS permet de transformer une connexion en texte brut en une connexion cryptée (TLS ou SSL) au lieu d'utiliser un port distinct pour la communication cryptée.", "LdapDisclaimer": "N'oubliez pas que l'adresse e-mail de l'utilisateur de l'espace est tirée du paramètre \"Attribut de messagerie\". S'il n'existe pas, il sera formé de la manière suivante : \"Attribut de connexion + @ + Domaine LDAP\". Si cet e-mail n'existe pas, l'utilisateur ne recevra aucune notification de l'espace.", - "LdapEnableSSL": "Activer SSL", - "LdapEnableSSLTooltip": "Vous pouvez rendre le trafic LDAP confidentiel et sécurisé en utilisant le protocole SSL (Secure Sockets Layer).", - "LdapEnableStartTls": "Activer StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS permet de transformer une connexion en texte brut en une connexion cryptée (TLS ou SSL) au lieu d'utiliser un port distinct pour la communication cryptée.", "LdapGroupAttribute": "Attribut du groupe", "LdapGroupAttributeTooltip": "Entrez un attribut de l'objet groupe qui spécifie quels utilisateurs sont membres de ce groupe.", "LdapGroupDN": "Groupe DN", diff --git a/packages/client/public/locales/hy-AM/Ldap.json b/packages/client/public/locales/hy-AM/Ldap.json index 74cdbd2a9e..429f93d519 100644 --- a/packages/client/public/locales/hy-AM/Ldap.json +++ b/packages/client/public/locales/hy-AM/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Սինխրոնիզացիան թույլ կտա վերբեռնել բոլոր տվյալները պորտալից և թարմացնել նոր տվյալները՝ կարգավորումները փոխելուց հետո: Սինխրոնիզացրեք ամեն անգամ, երբ պորտալում օգտատերերի մասին նոր տվյալներ ունեք:", "LdapAvatar": "Պրոֆիլի լուսանկար", "LdapCertificateConfirm": "Հաստատել վկայականը", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Դուք կարող եք դարձնել LDAP-ը գաղտնի և անվտանգ, օգտագործելով Secure Sockets Layer (SSL):", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS-ն առաջարկում է պարզ տեքստային կապը գաղտնագրված (TLS կամ SSL) կապի թարմացման միջոց՝ կոդավորված հաղորդակցության համար առանձին պորտ օգտագործելու փոխարեն: ", "LdapDisclaimer": "Խնդրում ենք նկատի ունենալ՝ պորտալի օգտատիրոջ էլ.փոստը կվերցվի «Փոստի հատկանիշ» կարգավորումից: Եթե ​​այն բացակայում է, այն կձևավորվի հետևյալ կերպ՝ «Մուտքի հատկանիշ + @ + LDAP տիրույթ»: Եթե նման նամակ չկա, այդ դեպքում օգտատերը չի ստանա որևէ պորտալի ծանուցում:", - "LdapEnableSSL": "Միացնել SSL-ը", - "LdapEnableSSLTooltip": "Դուք կարող եք դարձնել LDAP-ը գաղտնի և անվտանգ, օգտագործելով Secure Sockets Layer (SSL):", - "LdapEnableStartTls": "Միացնել StartTLS-ը", - "LdapEnableStartTlsTooltip": "StartTLS-ն առաջարկում է պարզ տեքստային կապը գաղտնագրված (TLS կամ SSL) կապի թարմացման միջոց՝ կոդավորված հաղորդակցության համար առանձին պորտ օգտագործելու փոխարեն: ", "LdapGroupAttribute": "Խմբի հատկանիշ", "LdapGroupAttributeTooltip": "Մուտքագրեք խմբի օբյեկտի հատկանիշը, որը նշում է, թե ինչ օգտվողներ է ներառում այս խումբը:", "LdapGroupDN": "Խումբ DN", diff --git a/packages/client/public/locales/it/Ldap.json b/packages/client/public/locales/it/Ldap.json index 33e971b202..e2adaaaa82 100644 --- a/packages/client/public/locales/it/Ldap.json +++ b/packages/client/public/locales/it/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "La sincronizzazione consentirà di caricare tutti i dati dal portale e aggiornare i nuovi dati dopo aver modificato le impostazioni. Sincronizza ogni volta che hai nuovi dati sugli utenti nel portale.", "LdapAvatar": "Foto del profilo", "LdapCertificateConfirm": "Conferma il certificato", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Puoi rendere il traffico LDAP riservato e sicuro utilizzando Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS offre un modo per aggiornare una connessione di testo normale a una connessione crittografata (TLS o SSL) invece di utilizzare una porta separata per la comunicazione crittografata.", "LdapDisclaimer": "Tieni presente che l'e-mail dell'utente del portale verrà presa dall'impostazione 'Attributo posta'. Se manca, sarà formato nel seguente modo: 'Attributo login + @ + Dominio LDAP'. Nel caso in cui tale email non esista, l'utente non riceverà alcuna notifica dal portale.", - "LdapEnableSSL": "Abilita SSL", - "LdapEnableSSLTooltip": "Puoi rendere il traffico LDAP riservato e sicuro utilizzando Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Abilita StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS offre un modo per aggiornare una connessione di testo normale a una connessione crittografata (TLS o SSL) invece di utilizzare una porta separata per la comunicazione crittografata.", "LdapGroupAttribute": "Attributo del gruppo", "LdapGroupAttributeTooltip": "Inserisci l'attributo dell'oggetto del gruppo che specifica quali utenti include questo gruppo.", "LdapGroupDN": "DN del gruppo", diff --git a/packages/client/public/locales/ja-JP/Ldap.json b/packages/client/public/locales/ja-JP/Ldap.json index 1049bebb0c..129e2da3df 100644 --- a/packages/client/public/locales/ja-JP/Ldap.json +++ b/packages/client/public/locales/ja-JP/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "同期により、ポータルからすべてのデータをアップロードし、設定変更後に新しいデータを更新することができます。ポータルのユーザーの新しいデータがあるたびに同期してください。", "LdapAvatar": "プロフィール写真", "LdapCertificateConfirm": "証明書の確認", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "セキュア・ソケット・レイヤー(SSL)を使用することで、LDAPトラフィックの機密性と安全性を高めることができます。", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLSは、暗号化通信用に別のポートを使用する代わりに、プレーンテキスト接続を暗号化(TLSまたはSSL)接続にアップグレードする方法を提供します。", "LdapDisclaimer": "ポータルユーザのメールアドレスは「メール属性」設定から取得されます。メール属性がない場合は、「ログイン属性 + @ + LDAPドメイン」で作成されます。このようなメールが存在しない場合、ユーザはポータル通知を受け取りません。", - "LdapEnableSSL": "SSLの有効化", - "LdapEnableSSLTooltip": "セキュア・ソケット・レイヤー(SSL)を使用することで、LDAPトラフィックの機密性と安全性を高めることができます。", - "LdapEnableStartTls": "StartTLS を有効にする", - "LdapEnableStartTlsTooltip": "StartTLSは、暗号化通信用に別のポートを使用する代わりに、プレーンテキスト接続を暗号化(TLSまたはSSL)接続にアップグレードする方法を提供します。", "LdapGroupAttribute": "グループ属性", "LdapGroupAttributeTooltip": "このグループに含まれるユーザーを指定するグループオブジェクト属性を入力してください。", "LdapGroupDN": "グループDN", diff --git a/packages/client/public/locales/ko-KR/Ldap.json b/packages/client/public/locales/ko-KR/Ldap.json index 76f38e7018..d349e37fba 100644 --- a/packages/client/public/locales/ko-KR/Ldap.json +++ b/packages/client/public/locales/ko-KR/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "동기화를 통해 포털에서 모든 데이터를 업로드하고 설정을 변경한 후 새 데이터를 업데이트할 수 있습니다. 포털에 사용자에 대한 새로운 데이터가 있을 때마다 동기화하세요.", "LdapAvatar": "프로필 사진", "LdapCertificateConfirm": "인증서 확인", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "보안 소켓 계층(SSL)을 사용하여 LDAP 트래픽을 기밀로 유지하고 보안을 유지할 수 있습니다", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS는 암호화된 통신에 별도의 포트를 사용하는 대신 일반 텍스트 연결을 암호화(TLS 또는 SSL) 연결로 업그레이드하는 방법을 제공합니다.", "LdapDisclaimer": "다음 사항을 유의하세요: 포털 사용자 이메일은 '메일 속성' 설정에서 가져와집니다. 누락된 경우 다음과 같은 방식으로 구성됩니다: '로그인 속성 + @ + LDAP 도메인'. 이러한 이메일이 없는 경우 사용자는 포털 알림을 받지 못합니다.", - "LdapEnableSSL": "SSL 활성화", - "LdapEnableSSLTooltip": "보안 소켓 계층(SSL)을 사용하여 LDAP 트래픽을 기밀로 유지하고 보안을 유지할 수 있습니다", - "LdapEnableStartTls": "StartTLS 활성화", - "LdapEnableStartTlsTooltip": "StartTLS는 암호화된 통신에 별도의 포트를 사용하는 대신 일반 텍스트 연결을 암호화(TLS 또는 SSL) 연결로 업그레이드하는 방법을 제공합니다.", "LdapGroupAttribute": "그룹 속성", "LdapGroupAttributeTooltip": "이 그룹에 포함될 사용자를 지정하는 그룹 개체 속성을 입력하세요.", "LdapGroupDN": "그룹 DN", diff --git a/packages/client/public/locales/lo-LA/Ldap.json b/packages/client/public/locales/lo-LA/Ldap.json index 0967ef424b..d2b0abf255 100644 --- a/packages/client/public/locales/lo-LA/Ldap.json +++ b/packages/client/public/locales/lo-LA/Ldap.json @@ -1 +1,4 @@ -{} +{ + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeStartTls": "StartTLS" +} diff --git a/packages/client/public/locales/lv/Ldap.json b/packages/client/public/locales/lv/Ldap.json index 020c4911b8..1e8673a3b4 100644 --- a/packages/client/public/locales/lv/Ldap.json +++ b/packages/client/public/locales/lv/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Sinhronizācija ļaus augšupielādēt visus datus no portāla un atjaunināt jaunos datus pēc iestatījumu maiņas. Sinhronizējiet katru reizi, kad portālā ir jauni dati par lietotājiem.", "LdapAvatar": "Profila fotoattēls", "LdapCertificateConfirm": "Apstiprināt sertifikātu", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "LDAP datplūsmu varat padarīt konfidenciālu un drošu, izmantojot drošligzdu slāni (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS piedāvā veidu, kā vienkāršā teksta savienojumu jaunināt uz šifrētu (TLS vai SSL) savienojumu, nevis izmantot atsevišķu portu šifrētai saziņai.", "LdapDisclaimer": "Ņemiet vērā: portāla lietotāja e-pasts tiks ņemts no iestatījuma Pasta atribūts. Ja tas trūkst, tas tiks izveidots šādā veidā: Pieteikšanās atribūts + @ + LDAP domēns. Ja šāds e-pasts nepastāv, lietotājs nesaņems portāla paziņojumu.", - "LdapEnableSSL": "Iespējot SSL", - "LdapEnableSSLTooltip": "LDAP datplūsmu varat padarīt konfidenciālu un drošu, izmantojot drošligzdu slāni (SSL)", - "LdapEnableStartTls": "Iespējot StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS piedāvā veidu, kā vienkāršā teksta savienojumu jaunināt uz šifrētu (TLS vai SSL) savienojumu, nevis izmantot atsevišķu portu šifrētai saziņai.", "LdapGroupAttribute": "Grupas atribūts", "LdapGroupAttributeTooltip": "Ievadiet grupas objekta atribūtu, kas norāda, kādus lietotājus šī grupa ietver.", "LdapGroupDN": "Grupas DN", diff --git a/packages/client/public/locales/nl/Ldap.json b/packages/client/public/locales/nl/Ldap.json index 8d3b2b2b53..11c1b678e8 100644 --- a/packages/client/public/locales/nl/Ldap.json +++ b/packages/client/public/locales/nl/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Synchronisatie maakt het mogelijk om alle gegevens van het portaal te uploaden en de nieuwe gegevens bij te werken na het wijzigen van de instellingen. Synchroniseer elke keer als u nieuwe gegevens over gebruikers in de portaal hebt.", "LdapAvatar": "Profielfoto", "LdapCertificateConfirm": "Bevestig certificaat", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "U kunt LDAP-verkeer vertrouwelijk en veilig maken door SSL (Secure Sockets Layer) te gebruiken.", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS biedt een manier om een verbinding met platte tekst te upgraden naar een versleutelde (TLS of SSL) verbinding in plaats van een aparte poort te gebruiken voor versleutelde communicatie.", "LdapDisclaimer": "Vergeet niet: het e-mailadres van de portaalgebruiker wordt gehaald uit de instelling \"Mail Attribuut\". Als het ontbreekt, wordt het op de volgende manier gevormd: \"Login Attribuut + @ + LDAP Domein\". Als een dergelijke e-mail niet bestaat, ontvangt de gebruiker geen portaalmelding.", - "LdapEnableSSL": "SSL inschakelen", - "LdapEnableSSLTooltip": "U kunt LDAP-verkeer vertrouwelijk en veilig maken door SSL (Secure Sockets Layer) te gebruiken.", - "LdapEnableStartTls": "StartTLS inschakelen", - "LdapEnableStartTlsTooltip": "StartTLS biedt een manier om een verbinding met platte tekst te upgraden naar een versleutelde (TLS of SSL) verbinding in plaats van een aparte poort te gebruiken voor versleutelde communicatie.", "LdapGroupAttribute": "Groepsattribuut", "LdapGroupAttributeTooltip": "Voer het groepsobject attribuut in dat aangeeft welke gebruikers deze groep bevat.", "LdapGroupDN": "Groep DN", diff --git a/packages/client/public/locales/pl/Ldap.json b/packages/client/public/locales/pl/Ldap.json index e8125cd3e2..a28bc8bcca 100644 --- a/packages/client/public/locales/pl/Ldap.json +++ b/packages/client/public/locales/pl/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Synchronizacja umożliwia przesyłanie wszystkich danych z portalu i aktualizację nowych danych po zmianie ustawień. Synchronizuj za każdym razem, gdy masz nowe dane na temat użytkowników w portalu.", "LdapAvatar": "Zdjęcie profilowe", "LdapCertificateConfirm": "Potwierdź certyfikat", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Zadbaj o bezpieczeństwo i poufność ruchu LDAP za pomocą Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS umożliwia ulepszenie połączenia jawnego do połączenia szyfrowanego (TLS lub SSL) zamiast używania oddzielnego portu do komunikacji szyfrowanej.", "LdapDisclaimer": "Należy pamiętać, że e-mail użytkownika portalu zostanie pobrany z ustawienia „Atrybut poczty”. Jeśli go nie ma, zostanie sformułowany w następujący sposób: „Atrybut logowania + @ + domena LDAP”. Jeśli dany adres e-mail nie istnieje, użytkownik nie otrzyma żadnego powiadomienia z portalu.", - "LdapEnableSSL": "Włącz SSL", - "LdapEnableSSLTooltip": "Zadbaj o bezpieczeństwo i poufność ruchu LDAP za pomocą Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Włącz StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS umożliwia ulepszenie połączenia jawnego do połączenia szyfrowanego (TLS lub SSL) zamiast używania oddzielnego portu do komunikacji szyfrowanej.", "LdapGroupAttribute": "Atrybut grupy", "LdapGroupAttributeTooltip": "Wprowadź atrybut obiektu grupy, który określa, jakich użytkowników obejmuje ta grupa.", "LdapGroupDN": "Nazwa wyróżniająca grupy", diff --git a/packages/client/public/locales/pt-BR/Ldap.json b/packages/client/public/locales/pt-BR/Ldap.json index a311762418..a76072fbf3 100644 --- a/packages/client/public/locales/pt-BR/Ldap.json +++ b/packages/client/public/locales/pt-BR/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "A sincronização permitirá fazer upload de todos os dados do portal e atualizar os novos dados após alterar as configurações. Sincronize sempre que tiver novos dados de usuários no portal.", "LdapAvatar": "Foto de perfil", "LdapCertificateConfirm": "Confirmar certificado", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Você pode tornar o tráfego LDAP confidencial e seguro usando Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS oferece uma maneira de atualizar uma conexão de texto simples para uma conexão criptografada (TLS ou SSL) em vez de usar uma porta separada para comunicação criptografada.", "LdapDisclaimer": "Por favor, lembre-se: o e-mail do usuário do portal será retirado da configuração 'Atributo de e-mail'. Caso falte, será formado da seguinte forma: 'Atributo Login + @ + Domínio LDAP'. Caso tal e-mail não exista, o usuário não receberá nenhuma notificação do portal.", - "LdapEnableSSL": "Habilitar SSL", - "LdapEnableSSLTooltip": "Você pode tornar o tráfego LDAP confidencial e seguro usando Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Habilitar StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS oferece uma maneira de atualizar uma conexão de texto simples para uma conexão criptografada (TLS ou SSL) em vez de usar uma porta separada para comunicação criptografada.", "LdapGroupAttribute": "Atributo de grupo", "LdapGroupAttributeTooltip": "Insira o atributo do objeto de grupo que especifica quais usuários esse grupo inclui.", "LdapGroupDN": "DN do grupo", diff --git a/packages/client/public/locales/pt/Ldap.json b/packages/client/public/locales/pt/Ldap.json index fb3e496296..de9388d04b 100644 --- a/packages/client/public/locales/pt/Ldap.json +++ b/packages/client/public/locales/pt/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "A sincronização permitirá fazer upload de todos os dados do portal e atualizar os novos dados após alterar as configurações. Sincronize sempre que tiver novos dados de usuários no portal.", "LdapAvatar": "Foto de perfil", "LdapCertificateConfirm": "Confirmar certificado", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Você pode tornar o tráfego LDAP confidencial e seguro usando Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS oferece uma maneira de atualizar uma conexão de texto simples para uma conexão criptografada (TLS ou SSL) em vez de usar uma porta separada para comunicação criptografada.", "LdapDisclaimer": "Por favor, lembre-se: o e-mail do usuário do portal será retirado da configuração 'Atributo de e-mail'. Caso falte, será formado da seguinte forma: 'Atributo Login + @ + Domínio LDAP'. Caso tal e-mail não exista, o usuário não receberá nenhuma notificação do portal.", - "LdapEnableSSL": "Habilitar SSL", - "LdapEnableSSLTooltip": "Você pode tornar o tráfego LDAP confidencial e seguro usando Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Habilitar StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS oferece uma maneira de atualizar uma conexão de texto simples para uma conexão criptografada (TLS ou SSL) em vez de usar uma porta separada para comunicação criptografada.", "LdapGroupAttribute": "Atributo de grupo", "LdapGroupAttributeTooltip": "Insira o atributo do objeto de grupo que especifica quais usuários esse grupo inclui.", "LdapGroupDN": "DN do grupo", diff --git a/packages/client/public/locales/ro/Ldap.json b/packages/client/public/locales/ro/Ldap.json index ad908d035f..ff725e233c 100644 --- a/packages/client/public/locales/ro/Ldap.json +++ b/packages/client/public/locales/ro/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Sincronizare permite încărcarea tuturor datelor de pe portalul și actualizarea datelor după modificarea setărilor. Realizarea sincronizării este necesară de fiecare dată când adăugați datele noi despre utilizatorii din portal.", "LdapAvatar": "Fotografie de profil", "LdapCertificateConfirm": "Confirmare certificat", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Utilizarea protocolului Secure Sockets Layer (SSL) securizează și protejează confidențialitatea procesului de comunicare cu serverul LDAP.", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS permite actualizarea unei conexiuni de text simplu la o conexiune sigură (TLS sau SSL) și înlocuiește folosirea unui port separat pentru asigurarea conexiunii criptate.", "LdapDisclaimer": "Rețineți că adresa de e-mail a utilizatorului portalului va fi preluată din setările Atributul Mail. Dacă adresa de e-mail lipsește, aceasta va fi formată în felul următor: 'Atributul de conectare + @ + Domeniu LDAP'. Dacă o astfel de adresă de e-mail nu există, utilizatorul nu va primi nici-o notificare de portal.", - "LdapEnableSSL": "Activare autentificare unică", - "LdapEnableSSLTooltip": "Utilizarea protocolului Secure Sockets Layer (SSL) securizează și protejează confidențialitatea procesului de comunicare cu serverul LDAP.", - "LdapEnableStartTls": "Activare StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS permite actualizarea unei conexiuni de text simplu la o conexiune sigură (TLS sau SSL) și înlocuiește folosirea unui port separat pentru asigurarea conexiunii criptate.", "LdapGroupAttribute": "Atributul de grup", "LdapGroupAttributeTooltip": "Introduceți atributul obiectului de grup care indică utilizatorii din acest grup.", "LdapGroupDN": "Nume distinct de grup", diff --git a/packages/client/public/locales/ru/Ldap.json b/packages/client/public/locales/ru/Ldap.json index 37158be5b9..8a7b11fdcf 100644 --- a/packages/client/public/locales/ru/Ldap.json +++ b/packages/client/public/locales/ru/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Синхронизация позволит загрузить все данные с портала и обновить новые данные после изменения настроек. Синхронизируйте каждый раз, когда у вас появляются новые данные о пользователях на портале.", "LdapAvatar": "Фото профиля", "LdapCertificateConfirm": "Подтвердить сертификат", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Вы можете сделать трафик LDAP конфиденциальным и безопасным, используя Secure Sockets Layer (SSL).", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS предоставляет способ обновления обычного текстового соединения до зашифрованного (TLS или SSL) соединения вместо использования отдельного порта для зашифрованной связи.", "LdapDisclaimer": "Обратите внимание: адрес электронной почты пользователя портала будет взят из параметра \"Атрибут почты\". Если он отсутствует, то он будет сформирован следующим образом: \"Атрибут входа + @ + LDAP Домен\". Если такого электронного письма не существует, пользователь не получит никаких уведомлений портала.", - "LdapEnableSSL": "Включить SSL", - "LdapEnableSSLTooltip": "Вы можете сделать трафик LDAP конфиденциальным и безопасным, используя Secure Sockets Layer (SSL).", - "LdapEnableStartTls": "Включить StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS предоставляет способ обновления обычного текстового соединения до зашифрованного (TLS или SSL) соединения вместо использования отдельного порта для зашифрованной связи.", "LdapGroupAttribute": "Атрибут группы", "LdapGroupAttributeTooltip": "Введите атрибут объекта группы, который определяет, какие пользователи входят в эту группу.", "LdapGroupDN": "DN группы", diff --git a/packages/client/public/locales/si/Ldap.json b/packages/client/public/locales/si/Ldap.json index 0967ef424b..d2b0abf255 100644 --- a/packages/client/public/locales/si/Ldap.json +++ b/packages/client/public/locales/si/Ldap.json @@ -1 +1,4 @@ -{} +{ + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeStartTls": "StartTLS" +} diff --git a/packages/client/public/locales/sk/Ldap.json b/packages/client/public/locales/sk/Ldap.json index f1513c198b..7607aec8e9 100644 --- a/packages/client/public/locales/sk/Ldap.json +++ b/packages/client/public/locales/sk/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Synchronizácia umožní nahrať všetky údaje z portálu a aktualizovať nové údaje po zmene nastavení. Synchronizujte vždy, keď máte na portáli nové údaje o používateľoch.", "LdapAvatar": "Profilová fotografia", "LdapCertificateConfirm": "Potvrdiť certifikát", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Dôvernosť a bezpečnosť prevádzky LDAP môžete zabezpečiť pomocou protokolu SSL (Secure Sockets Layer).", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS ponúka spôsob, ako vylepšiť obyčajné textové pripojenie na šifrované (TLS alebo SSL) namiesto používania samostatného portu na šifrovanie komunikácie.", "LdapDisclaimer": "Nezabudnite prosím, že e-mail používateľa portálu bude prevzatý z nastavenia „Atribút Pošta“. Ak tento atribút chýba, e=mail bude vytvorený nasledovným spôsobom: „Atribút Prihlásenie + @ + LDAP doména“. V prípade, že takýto e-mail neexistuje, používateľ nedostane žiadne oznámenie z portálu.", - "LdapEnableSSL": "Povoliť SSL", - "LdapEnableSSLTooltip": "Dôvernosť a bezpečnosť prevádzky LDAP môžete zabezpečiť pomocou protokolu SSL (Secure Sockets Layer).", - "LdapEnableStartTls": "Povoliť StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS ponúka spôsob, ako vylepšiť obyčajné textové pripojenie na šifrované (TLS alebo SSL) namiesto používania samostatného portu na šifrovanie komunikácie.", "LdapGroupAttribute": "Atribút Skupina", "LdapGroupAttributeTooltip": "Zadajte atribút objektu skupiny, ktorý určuje, akých používateľov táto skupina združuje.", "LdapGroupDN": "DN skupiny", diff --git a/packages/client/public/locales/sl/Ldap.json b/packages/client/public/locales/sl/Ldap.json index f8e050436d..38ee746e05 100644 --- a/packages/client/public/locales/sl/Ldap.json +++ b/packages/client/public/locales/sl/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Sinhronizacija bo omogočila nalaganje vseh podatkov s portala in posodobitev novih podatkov po spremembi nastavitev. Sinhroniziraj vsakič, ko so na voljo novi podatki o uporabnikih na portalu.", "LdapAvatar": "Profilna fotografija", "LdapCertificateConfirm": "Potrdi certifikat", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Zaupen in varen promet LDAP lahko urediš z uporabo Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS ponuja način za nadgradnjo povezave z navadnim besedilom v šifrirano (TLS ali SSL) povezavo namesto uporabe ločenih vrat za šifrirano komunikacijo.", "LdapDisclaimer": "Upoštevaj: e-pošta uporabnika portala bo vzeta iz nastavitve 'Atributi pošte'. Če manjka, bo oblikovana na naslednji način: 'Login Attribute + @ + LDAP Domain'. V primeru, da tak email ne obstaja, uporabnik ne bo prejel nobenega obvestila s portala.", - "LdapEnableSSL": "Omogoči SSL", - "LdapEnableSSLTooltip": "Zaupen in varen promet LDAP lahko urediš z uporabo Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Omogoči StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS ponuja način za nadgradnjo povezave z navadnim besedilom v šifrirano (TLS ali SSL) povezavo namesto uporabe ločenih vrat za šifrirano komunikacijo.", "LdapGroupAttribute": "Atribut skupine", "LdapGroupAttributeTooltip": "Vnesite atribut objekta skupine, ki določa, katere uporabnike vključuje ta skupina.", "LdapGroupDN": "DN skupine", diff --git a/packages/client/public/locales/sr-Cyrl-RS/Ldap.json b/packages/client/public/locales/sr-Cyrl-RS/Ldap.json index 336071f0eb..f919662a1d 100644 --- a/packages/client/public/locales/sr-Cyrl-RS/Ldap.json +++ b/packages/client/public/locales/sr-Cyrl-RS/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Синхронизација ће омогућити отпремање свих података са портала и ажурирање нових података након промене подешавања. Синхронизујте сваки пут када имате нове податке о корисницима на порталу.", "LdapAvatar": "Профилна фотографија", "LdapCertificateConfirm": "Потврди сертификат", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Можете учинити LDAP саобраћај поверљивим и сигурним коришћењем Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS нуди начин да се обична текстуална веза надогради на енкриптовану (TLS или SSL) везу уместо коришћења засебног порта за енкриптовану комуникацију.", "LdapDisclaimer": "Молимо, имајте на уму: емаил корисника портал ће бити узет из ‘Мејл Атрибут’ подешавања. Ако недостаје, биће формиран на следећи начин: ‘Атрибут за пријаву + @ + LDAP Домен’. У случају да такав мејл не постоји, корисник неће примити обавештење са портала.", - "LdapEnableSSL": "Омогући SSL", - "LdapEnableSSLTooltip": "Можете учинити LDAP саобраћај поверљивим и сигурним коришћењем Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Омогући StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS нуди начин да се обична текстуална веза надогради на енкриптовану (TLS или SSL) везу уместо коришћења засебног порта за енкриптовану комуникацију.", "LdapGroupAttribute": "Групни Атрибут", "LdapGroupAttributeTooltip": "Унесите атрибут објекта групе који одређује које кориснике ова група укључује.", "LdapGroupDN": "DN Групе", diff --git a/packages/client/public/locales/sr-Latn-RS/Ldap.json b/packages/client/public/locales/sr-Latn-RS/Ldap.json index 460b49a2f0..1325a48364 100644 --- a/packages/client/public/locales/sr-Latn-RS/Ldap.json +++ b/packages/client/public/locales/sr-Latn-RS/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Sinhronizacija će omogućiti otpremanje svih podataka sa portala i ažuriranje novih podataka nakon promene podešavanja. Sinhronizujte svaki put kada imate nove podatke o korisnicima na portalu.", "LdapAvatar": "Profilna fotografija", "LdapCertificateConfirm": "Potvrdi sertifikat", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Možete učiniti LDAP saobraćaj poverljivim i sigurnim korišćenjem Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS nudi način da se obična tekstualna veza nadogradi na enkriptovanu (TLS ili SSL) vezu umesto korišćenja zasebnog porta za enkriptovanu komunikaciju.", "LdapDisclaimer": "Molimo, imajte na umu: email korisnika portal će biti uzet iz ‘Mejl Atribut’ podešavanja. Ako nedostaje, biće formiran na sledeći način: ‘Atribut za prijavu + @ + LDAP Domen’. U slučaju da takav mejl ne postoji, korisnik neće primiti obaveštenje sa portala.", - "LdapEnableSSL": "Omogući SSL", - "LdapEnableSSLTooltip": "Možete učiniti LDAP saobraćaj poverljivim i sigurnim korišćenjem Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Omogući StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS nudi način da se obična tekstualna veza nadogradi na enkriptovanu (TLS ili SSL) vezu umesto korišćenja zasebnog porta za enkriptovanu komunikaciju.", "LdapGroupAttribute": "Grupni Atribut", "LdapGroupAttributeTooltip": "Unesite atribut objekta grupe koji određuje koje korisnike ova grupa uključuje.", "LdapGroupDN": "DN Grupe", diff --git a/packages/client/public/locales/tr/Ldap.json b/packages/client/public/locales/tr/Ldap.json index 79d476bbd8..c5adb1184e 100644 --- a/packages/client/public/locales/tr/Ldap.json +++ b/packages/client/public/locales/tr/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Senkronizasyon, portaldan tüm verilerin yüklenmesine ve ayarlar değiştirildikten sonra yeni verilerin güncellenmesine olanak sağlayacaktır. Portaldaki kullanıcılara ilişkin her yeni veriye sahip olduğunuzda senkronizasyon yapın.", "LdapAvatar": "Profil fotoğrafı", "LdapCertificateConfirm": "Sertifikayı onaylayın", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Secure Sockets Layer (SSL) kullanarak LDAP trafiğini gizli ve güvenli bir hale getirebilirsiniz", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS, şifreli iletişim için ayrı bir bağlantı noktası kullanmak yerine düz metin bağlantısını şifreli (TLS veya SSL) bağlantıya yükseltmenin bir yolunu sunmaktadır.", "LdapDisclaimer": "Lütfen unutmayın: portal kullanıcı e-postası 'Posta Özelliği' ayarından alınacaktır. Eğer bu eksikse, şu şekilde oluşturulacaktır: 'Oturum Açma Özelliği + @ + LDAP Alanı'. Böyle bir e-postanın mevcut olmaması durumunda, kullanıcı herhangi bir portal bildirimi almayacaktır.", - "LdapEnableSSL": "SSL'i Etkinleştir", - "LdapEnableSSLTooltip": "Secure Sockets Layer (SSL) kullanarak LDAP trafiğini gizli ve güvenli bir hale getirebilirsiniz", - "LdapEnableStartTls": "StartTLS'yi Etkinleştir", - "LdapEnableStartTlsTooltip": "StartTLS, şifreli iletişim için ayrı bir bağlantı noktası kullanmak yerine düz metin bağlantısını şifreli (TLS veya SSL) bağlantıya yükseltmenin bir yolunu sunmaktadır.", "LdapGroupAttribute": "Grup Özelliği", "LdapGroupAttributeTooltip": "Bu grubun hangi kullanıcıları içerdiğini belirten grup nesnesi özelliğini girin.", "LdapGroupDN": "Grup DN", diff --git a/packages/client/public/locales/uk-UA/Ldap.json b/packages/client/public/locales/uk-UA/Ldap.json index 28ae483633..0cc2651497 100644 --- a/packages/client/public/locales/uk-UA/Ldap.json +++ b/packages/client/public/locales/uk-UA/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Синхронізація дозволить передати всі дані з порталу та оновити нові дані після зміни параметрів. Синхронізація відбувається кожен раз, коли є нові дані щодо користувачів на порталі.", "LdapAvatar": "Фото профілю", "LdapCertificateConfirm": "Підтвердити сертифікат", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Ви можете зробити трафік LDAP конфіденційним і безпечним за допомогою протоколу Secure Sockets Layer (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS дозволяє оновити звичайне текстове з'єднання до зашифрованого (TLS або SSL) з'єднання замість використання окремого порту для зашифрованого зв'язку.", "LdapDisclaimer": "Зауважте: електронна адреса користувача порталу буде взята з параметра «Атрибут пошти». Якщо вона відсутня, то буде сформована таким чином: атрибут входу + @ + домен LDAP. Якщо така адреса електронної пошти не існує, користувач не отримає жодного сповіщення від порталу.", - "LdapEnableSSL": "Увімкнути SSL", - "LdapEnableSSLTooltip": "Ви можете зробити трафік LDAP конфіденційним і безпечним за допомогою протоколу Secure Sockets Layer (SSL)", - "LdapEnableStartTls": "Увімкнути StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS дозволяє оновити звичайне текстове з'єднання до зашифрованого (TLS або SSL) з'єднання замість використання окремого порту для зашифрованого зв'язку.", "LdapGroupAttribute": "Атрибут групи", "LdapGroupAttributeTooltip": "Введіть атрибут об'єкта групи, який визначає, яких користувачів включає ця група.", "LdapGroupDN": "Унікальне ім'я групи", diff --git a/packages/client/public/locales/vi/Ldap.json b/packages/client/public/locales/vi/Ldap.json index dc88f69a56..e66ec13526 100644 --- a/packages/client/public/locales/vi/Ldap.json +++ b/packages/client/public/locales/vi/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "Đồng bộ hóa sẽ cho phép tải lên tất cả dữ liệu từ cổng thông tin và cập nhật dữ liệu mới sau khi thay đổi cài đặt. Đồng bộ hóa mỗi khi bạn có dữ liệu mới về người dùng trong cổng thông tin.", "LdapAvatar": "Ảnh đại diện", "LdapCertificateConfirm": "Xác nhận chứng nhận", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "Bạn có thể làm cho lưu lượng LDAP được bảo mật và an toàn bằng cách sử dụng Lớp Cổng Bảo Mật (SSL)", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS cung cấp một cách để nâng cấp kết nối văn bản thuần túy thành kết nối được mã hóa (TLS hoặc SSL) thay vì sử dụng một cổng riêng cho việc giao tiếp được mã hóa.", "LdapDisclaimer": "Xin hãy lưu ý: email người dùng cổng thông tin sẽ được lấy từ cài đặt 'Thuộc tính thư'. Nếu nó bị thiếu, nó sẽ được hình thành theo cách sau: 'Thuộc tính đăng nhập + @ + Tên miền LDAP'. Trong trường hợp email không tồn tại, người dùng sẽ không nhận được bất kỳ thông báo cổng thông tin nào.", - "LdapEnableSSL": "Bật SSL", - "LdapEnableSSLTooltip": "Bạn có thể làm cho lưu lượng LDAP được bảo mật và an toàn bằng cách sử dụng Lớp Cổng Bảo Mật (SSL)", - "LdapEnableStartTls": "Kích hoạt StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS cung cấp một cách để nâng cấp kết nối văn bản thuần túy thành kết nối được mã hóa (TLS hoặc SSL) thay vì sử dụng một cổng riêng cho việc giao tiếp được mã hóa.", "LdapGroupAttribute": "Thuộc tính Nhóm", "LdapGroupAttributeTooltip": "Nhập thuộc tính đối tượng nhóm chỉ định những người dùng được bao gồm trong nhóm này.", "LdapGroupDN": "DN Nhóm", diff --git a/packages/client/public/locales/zh-CN/Ldap.json b/packages/client/public/locales/zh-CN/Ldap.json index 7bab8fef25..ebae6d66ad 100644 --- a/packages/client/public/locales/zh-CN/Ldap.json +++ b/packages/client/public/locales/zh-CN/Ldap.json @@ -8,11 +8,11 @@ "LdapAutoSyncToggleDescription": "同步将允许从门户上传所有数据并在更改设置后更新新数据。每次门户中有新用户数据时都将进行同步。", "LdapAvatar": "个人资料照片", "LdapCertificateConfirm": "确认证书", + "LdapConnectionTypeSSL": "SSL", + "LdapConnectionTypeSSLTooltip": "您可以使用安全套接字层(SSL)使 LDAP 流量保密且安全", + "LdapConnectionTypeStartTls": "StartTLS", + "LdapConnectionTypeStartTlsTooltip": "StartTLS 提供了一种将纯文本连接升级为加密(TLS 或 SSL)连接的方法,而不是使用单独的端口进行加密通信。", "LdapDisclaimer": "请记住:门户用户电子邮件将从“邮件属性”设置中获取。如果缺少,则将以以下方式形成:“登录属性 + @ + LDAP 域”。如果不存在这样的电子邮件,用户将不会收到任何门户通知。", - "LdapEnableSSL": "启用 SSL", - "LdapEnableSSLTooltip": "您可以使用安全套接字层(SSL)使 LDAP 流量保密且安全", - "LdapEnableStartTls": "启用 StartTLS", - "LdapEnableStartTlsTooltip": "StartTLS 提供了一种将纯文本连接升级为加密(TLS 或 SSL)连接的方法,而不是使用单独的端口进行加密通信。", "LdapGroupAttribute": "组属性", "LdapGroupAttributeTooltip": "输入组对象属性,该属性指定此组包含哪些用户。", "LdapGroupDN": "组 DN", diff --git a/packages/client/src/pages/PortalSettings/categories/integration/LDAP/styled-components/StyledLdapPage.js b/packages/client/src/pages/PortalSettings/categories/integration/LDAP/styled-components/StyledLdapPage.js index 7c9a65cc1f..46c35f56c0 100644 --- a/packages/client/src/pages/PortalSettings/categories/integration/LDAP/styled-components/StyledLdapPage.js +++ b/packages/client/src/pages/PortalSettings/categories/integration/LDAP/styled-components/StyledLdapPage.js @@ -36,6 +36,10 @@ const StyledLdapPage = styled(Box)` color: ${(props) => props.theme.client.settings.common.descriptionColor}; } + .ldap-disclaimer { + font-size: 12px; + } + .toggle { position: static; margin-top: 1px; @@ -66,17 +70,21 @@ const StyledLdapPage = styled(Box)` .ldap_checkbox-container { margin: 20px 0 20px 0; - display: grid; - grid-template-rows: 1fr 1fr; - grid-gap: 12px; - .ldap_checkbox-header { - display: flex; - align-items: baseline; - .help-icon { - padding-inline-start: 6px; - position: relative; - bottom: 4px; + .ldap_radio_buttons_group { + display: grid; + grid-template-rows: 1fr 1fr; + grid-gap: 6px; + margin-top: 12px; + + .ldap_checkbox-header { + display: flex; + align-items: baseline; + .help-icon { + padding-inline-start: 6px; + position: relative; + bottom: 4px; + } } } } @@ -157,6 +165,7 @@ const StyledLdapPage = styled(Box)` `} } + .ldap_connection_type-text, .ldap_attribute-mapping-text { display: flex; align-items: baseline; diff --git a/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/Checkboxes.js b/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/Checkboxes.js index dc6d932739..3430a1a326 100644 --- a/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/Checkboxes.js +++ b/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/Checkboxes.js @@ -26,9 +26,17 @@ import { inject, observer } from "mobx-react"; import { useTranslation } from "react-i18next"; -import { Checkbox } from "@docspace/shared/components/checkbox"; + import { Box } from "@docspace/shared/components/box"; import { HelpButton } from "@docspace/shared/components/help-button"; +import { RadioButton } from "@docspace/shared/components/radio-button"; +import { Text } from "@docspace/shared/components/text"; + +const ConnectionType = Object.freeze({ + Unencrypted: 1, + StartTls: 2, + SSL: 3, +}); const Checkboxes = ({ isTlsEnabled, @@ -41,6 +49,12 @@ const Checkboxes = ({ }) => { const { t } = useTranslation("Ldap"); + const onChangeUnencrypted = (e) => { + const checked = e.target.checked; + isTlsEnabled && checked && setIsTlsEnabled(false); + isSslEnabled && checked && setIsSslEnabled(false); + }; + const onChangeTls = (e) => { const checked = e.target.checked; isSslEnabled && checked && setIsSslEnabled(false); @@ -55,27 +69,50 @@ const Checkboxes = ({ return ( -
- - +
+ + {t("LdapConnectionType")} +
-
- - +
+
+ +
+
+ + +
+
+ + +
); diff --git a/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/HideButton.js b/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/HideButton.js index 0e4c1b6948..fe1aa8e5f8 100644 --- a/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/HideButton.js +++ b/packages/client/src/pages/PortalSettings/categories/integration/LDAP/sub-components/HideButton.js @@ -35,7 +35,7 @@ const HideButton = (props) => { const { t } = useTranslation("SingleSignOn"); const { text, label, isAdditionalParameters, value, setIsSettingsShown } = props; - const marginProp = isAdditionalParameters ? null : "24px 0"; + const marginProp = isAdditionalParameters ? null : "24px 0 8px 0px"; const onClick = () => { setIsSettingsShown(!value); From a86a75ba8117030d0e3076bfa56a47bbe64c5336 Mon Sep 17 00:00:00 2001 From: Ilya Oleshko Date: Mon, 2 Sep 2024 17:29:57 +0300 Subject: [PATCH 13/13] Fixed Bug 69991: Client: SDK: Fixed getting primary link for shared room --- packages/client/src/pages/Sdk/index.js | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-) diff --git a/packages/client/src/pages/Sdk/index.js b/packages/client/src/pages/Sdk/index.js index 8d5fe08d7f..155922c391 100644 --- a/packages/client/src/pages/Sdk/index.js +++ b/packages/client/src/pages/Sdk/index.js @@ -53,9 +53,9 @@ const Sdk = ({ user, updateProfileCulture, getRoomsIcon, - fetchExternalLinks, getFilePrimaryLink, getFilesSettings, + getPrimaryLink, }) => { const [isDataReady, setIsDataReady] = useState(false); @@ -200,20 +200,11 @@ const Sdk = ({ (data[0].roomType === RoomsType.CustomRoom && data[0].shared) || (data[0].roomType === RoomsType.FormRoom && data[0].shared) ) { - const links = await fetchExternalLinks(data[0].id); + const link = await getPrimaryLink(data[0].id); - const requestTokens = links.map((link) => { - const { id, title, requestToken, primary } = link.sharedTo; + const { id, title, requestToken, primary } = link.sharedTo; - return { - id, - primary, - title, - requestToken, - }; - }); - - data[0].requestTokens = requestTokens; + data[0].requestTokens = [{ id, primary, title, requestToken }]; } frameCallEvent({ event: "onSelectCallback", data }); @@ -321,7 +312,6 @@ export default inject( settingsStore, filesSettingsStore, peopleStore, - publicRoomStore, userStore, filesStore, }) => { @@ -331,8 +321,7 @@ export default inject( const { loadCurrentUser, user } = userStore; const { updateProfileCulture } = peopleStore.targetUserStore; const { getIcon, getRoomsIcon, getFilesSettings } = filesSettingsStore; - const { fetchExternalLinks } = publicRoomStore; - const { getFilePrimaryLink } = filesStore; + const { getFilePrimaryLink, getPrimaryLink } = filesStore; return { theme, @@ -347,9 +336,9 @@ export default inject( isLoaded, updateProfileCulture, user, - fetchExternalLinks, getFilePrimaryLink, getFilesSettings, + getPrimaryLink, }; }, )(