diff --git a/packages/client/public/locales/en/InfoPanel.json b/packages/client/public/locales/en/InfoPanel.json index a1b5692fa8..dbe0e2891e 100644 --- a/packages/client/public/locales/en/InfoPanel.json +++ b/packages/client/public/locales/en/InfoPanel.json @@ -40,6 +40,7 @@ "RoomExternalLinkCreated": "Link created.", "RoomExternalLinkDeleted": "Link <1>«{{linkTitle}}» deleted.", "RoomExternalLinkRenamed": "Link <1>«{{oldLinkTitle}}» renamed to <1>«{{linkTitle}}»", + "RoomExternalLinkRevoked": "Previous link <1>«{{linkTitle}}» revoked
New Link <1>«{{linkTitle}}» created", "RoomGroupAdded": "Groups added.", "RoomGroupRemove": "Group removed", "RoomLogoCreated": "Icon changed", diff --git a/packages/client/public/locales/ru/Settings.json b/packages/client/public/locales/ru/Settings.json index a0f97f920f..c671d638fa 100644 --- a/packages/client/public/locales/ru/Settings.json +++ b/packages/client/public/locales/ru/Settings.json @@ -285,7 +285,7 @@ "TypesAndPrivileges": " <1>Типы учетных записей администратора и их права

<2>Администратор {{productName}}
Настройка {{productName}}, создание и управление комнатами, возможность приглашать пользователей и управлять ими в {{productName}} и в виртуальных комнатах, возможность управления правами доступа.

<3>Администратор комнаты
Администрирование и архивирование комнаты, приглашение пользователей и управление ими. К комнате можно назначить нескольких администраторов.

<4>Опытный пользователь
Опытные пользователи могут создавать и редактировать файлы в комнате, но не могут создавать комнаты, управлять пользователями или получать доступ к настройкам.", "UnsavedChangesBody": "Если вы закроете меню настроек ссылки прямо сейчас, изменения не сохранятся.", "UnsupportedFilesDescription": "Некоторые резервные файлы не поддерживаются. Нажмите \"Проверьте неподдерживаемые файлы\", чтобы загрузить список неподдерживаемых элементов", - "UnsupportedFilesWithUploadDesc": "Некоторые резервные файлы не поддерживаются. Нажмите \\\"Проверьте неподдерживаемые файлы\\\", чтобы загрузить список неподдерживаемых элементов, или нажмите \\\"Загрузить на сервер\\\", чтобы продолжить без них.", + "UnsupportedFilesWithUploadDesc": "Некоторые резервные файлы не поддерживаются. Нажмите \"Проверьте неподдерживаемые файлы\", чтобы загрузить список неподдерживаемых элементов, или нажмите \"Загрузить на сервер\", чтобы продолжить без них.", "UpdatingStatistics": "Обновление статистики может занять много времени", "UploadBackupData": "Загрузите резервную копию из нужного сервиса ниже, чтобы начать миграцию.", "UploadToServer": "Загрузить на сервер", diff --git a/packages/client/src/pages/Home/InfoPanel/Body/views/History/FeedInfo.ts b/packages/client/src/pages/Home/InfoPanel/Body/views/History/FeedInfo.ts index 5324a0ca00..79533b08ff 100644 --- a/packages/client/src/pages/Home/InfoPanel/Body/views/History/FeedInfo.ts +++ b/packages/client/src/pages/Home/InfoPanel/Body/views/History/FeedInfo.ts @@ -7,6 +7,7 @@ enum FeedAction { Rename = "rename", Move = "move", Copy = "copy", + Revoke = "revoke", } enum FeedTarget { @@ -148,10 +149,15 @@ export const feedInfo = [ actionType: `${FeedAction.Rename}`, }, { - key: "RoomExternalLinkRevoked", + key: "RoomExternalLinkDeleted", targetType: `${FeedTarget.RoomExternalLink}`, actionType: `${FeedAction.Delete}`, }, + { + key: "RoomExternalLinkRevoked", + targetType: `${FeedTarget.RoomExternalLink}`, + actionType: `${FeedAction.Revoke}`, + }, // // USER { diff --git a/packages/client/src/pages/Home/InfoPanel/Body/views/History/useFeedTranslation.tsx b/packages/client/src/pages/Home/InfoPanel/Body/views/History/useFeedTranslation.tsx index 6ce3c834fe..76d2943e4f 100644 --- a/packages/client/src/pages/Home/InfoPanel/Body/views/History/useFeedTranslation.tsx +++ b/packages/client/src/pages/Home/InfoPanel/Body/views/History/useFeedTranslation.tsx @@ -89,7 +89,7 @@ export const useFeedTranslation = ( components={{ 1: }} /> ); - case "RoomExternalLinkRevoked": + case "RoomExternalLinkDeleted": return ( }} /> ); + case "RoomExternalLinkRevoked": + return ( + }} + /> + ); case "RoomCreateUser": return t("InfoPanel:RoomCreateUser"); case "RoomUpdateAccessForUser": diff --git a/packages/client/src/pages/PortalSettings/categories/common/Branding/whitelabel.js b/packages/client/src/pages/PortalSettings/categories/common/Branding/whitelabel.js index ce16de94cd..ce2c009ddb 100644 --- a/packages/client/src/pages/PortalSettings/categories/common/Branding/whitelabel.js +++ b/packages/client/src/pages/PortalSettings/categories/common/Branding/whitelabel.js @@ -82,6 +82,7 @@ const WhiteLabel = (props) => { const [logoTextWhiteLabel, setLogoTextWhiteLabel] = useState(""); const [isSaving, setIsSaving] = useState(false); + const [isEmpty, setIsEmpty] = useState(!logoText); const isMobileView = deviceType === DeviceType.mobile; @@ -122,6 +123,12 @@ const WhiteLabel = (props) => { navigate(url); }; + useEffect(() => { + if (!isWhitelableLoaded) return; + + setIsEmpty(!logoText); + }, [logoText]); + useEffect(() => { const companyNameFromSessionStorage = getFromSessionStorage("companyName"); @@ -144,12 +151,18 @@ const WhiteLabel = (props) => { const onChangeCompanyName = (e) => { const value = e.target.value; + setIsEmpty(!value || value?.trim() === ""); setLogoTextWhiteLabel(value); saveToSessionStorage("companyName", value); }; const onUseTextAsLogo = () => { + if (!logoTextWhiteLabel) { + return; + } + let newLogos = logoUrlsWhiteLabel; + for (let i = 0; i < logoUrlsWhiteLabel.length; i++) { const options = getLogoOptions( i, @@ -303,6 +316,7 @@ const WhiteLabel = (props) => { labelText={t("Common:CompanyName")} isVertical={true} className="settings_unavailable" + hasError={isEmpty} > { isAutoFocussed={!isMobile} tabIndex={1} maxLength={30} + hasError={isEmpty} />