DocSpace-buildtools/packages/common/api/portal/index.js

271 lines
5.8 KiB
JavaScript
Raw Normal View History

import { request } from "../client";
export function getShortenedLink(link) {
return request({
method: "put",
url: "/portal/getshortenlink.json",
2021-03-22 16:18:30 +00:00
data: { link },
});
}
const GUEST_INVITE_LINK = "guestInvitationLink";
const USER_INVITE_LINK = "userInvitationLink";
const INVITE_LINK_TTL = "localStorageLinkTtl";
const LINKS_TTL = 6 * 3600 * 1000;
export function getInvitationLink(isGuest) {
const curLinksTtl = localStorage.getItem(INVITE_LINK_TTL);
const now = +new Date();
if (!curLinksTtl) {
localStorage.setItem(INVITE_LINK_TTL, now);
} else if (now - curLinksTtl > LINKS_TTL) {
localStorage.removeItem(GUEST_INVITE_LINK);
localStorage.removeItem(USER_INVITE_LINK);
localStorage.setItem(INVITE_LINK_TTL, now);
}
const link = localStorage.getItem(
isGuest ? GUEST_INVITE_LINK : USER_INVITE_LINK
);
return link
? Promise.resolve(link)
: request({
method: "get",
url: `/portal/users/invite/${isGuest ? 2 : 1}.json`,
}).then((link) => {
localStorage.setItem(
isGuest ? GUEST_INVITE_LINK : USER_INVITE_LINK,
link
);
return Promise.resolve(link);
});
}
export function getInvitationLinks() {
const isGuest = true;
Merge branch 'develop' into feature/workspaces # Conflicts: # packages/asc-web-common/src/components/GroupSelector/GroupSelector.stories.js # packages/asc-web-common/src/components/NavMenu/sub-components/header-nav.js # packages/asc-web-common/src/components/NavMenu/sub-components/header.js # packages/asc-web-common/src/components/NavMenu/sub-components/nav-item.js # packages/asc-web-common/src/components/NavMenu/sub-components/nav-logo-item.js # packages/asc-web-common/src/components/PageLayout/index.js # packages/asc-web-common/src/components/PeopleSelector/PeopleSelector.stories.js # packages/asc-web-common/src/components/PrivateRoute/PrivateRoute.js # packages/asc-web-common/src/store/AuthStore.js # packages/asc-web-common/src/store/ModuleStore.js # packages/asc-web-common/src/store/SettingsStore.js # packages/asc-web-common/src/store/UserStore.js # packages/asc-web-common/src/store/auth/actions.js # packages/asc-web-common/src/store/auth/index.js # packages/asc-web-common/src/store/auth/reducer.js # packages/asc-web-common/src/store/auth/selectors.js # products/ASC.Files/Client/config-overrides.js # products/ASC.Files/Client/package.json # products/ASC.Files/Client/src/App.js # products/ASC.Files/Client/src/components/Article/Body/ThirdPartyList.js # products/ASC.Files/Client/src/components/Article/Body/TreeFolders.js # products/ASC.Files/Client/src/components/Article/Body/TreeSettings.js # products/ASC.Files/Client/src/components/Article/Body/index.js # products/ASC.Files/Client/src/components/Article/Header/index.js # products/ASC.Files/Client/src/components/Article/MainButton/index.js # products/ASC.Files/Client/src/components/dialogs/ConnectDialog/index.js # products/ASC.Files/Client/src/components/dialogs/ConvertDialog/index.js # products/ASC.Files/Client/src/components/dialogs/DeleteDialog/index.js # products/ASC.Files/Client/src/components/dialogs/DeleteThirdPartyDialog/index.js # products/ASC.Files/Client/src/components/dialogs/DownloadDialog/index.js # products/ASC.Files/Client/src/components/dialogs/EmptyTrashDialog/index.js # products/ASC.Files/Client/src/components/dialogs/ThirdPartyMoveDialog/index.js # products/ASC.Files/Client/src/components/pages/Home/Section/Body/BadgesFileTile.js # products/ASC.Files/Client/src/components/pages/Home/Section/Body/FilesRowContent.js # products/ASC.Files/Client/src/components/pages/Home/Section/Body/FilesTileContent.js # products/ASC.Files/Client/src/components/pages/Home/Section/Body/index.js # products/ASC.Files/Client/src/components/pages/Home/Section/Filter/index.js # products/ASC.Files/Client/src/components/pages/Home/Section/Header/index.js # products/ASC.Files/Client/src/components/pages/Home/Section/Paging/index.js # products/ASC.Files/Client/src/components/pages/Home/index.js # products/ASC.Files/Client/src/components/pages/Settings/Section/Body/ConnectedClouds.js # products/ASC.Files/Client/src/components/pages/Settings/Section/Body/index.js # products/ASC.Files/Client/src/components/pages/VersionHistory/Section/Body/VersionRow.js # products/ASC.Files/Client/src/components/pages/VersionHistory/Section/Body/index.js # products/ASC.Files/Client/src/components/pages/VersionHistory/index.js # products/ASC.Files/Client/src/components/panels/AddGroupsPanel/index.js # products/ASC.Files/Client/src/components/panels/AddUsersPanel/index.js # products/ASC.Files/Client/src/components/panels/ChangeOwnerPanel/index.js # products/ASC.Files/Client/src/components/panels/EmbeddingPanel/index.js # products/ASC.Files/Client/src/components/panels/NewFilesPanel/index.js # products/ASC.Files/Client/src/components/panels/OperationsPanel/index.js # products/ASC.Files/Client/src/components/panels/SharingPanel/AccessComboBox.js # products/ASC.Files/Client/src/components/panels/SharingPanel/SharingRow.js # products/ASC.Files/Client/src/components/panels/SharingPanel/index.js # products/ASC.Files/Client/src/components/panels/UploadPanel/ShareButton.js # products/ASC.Files/Client/src/components/panels/UploadPanel/index.js # products/ASC.Files/Client/src/components/panels/VersionHistoryPanel/index.js # products/ASC.Files/Client/src/helpers/desktop.js # products/ASC.Files/Client/src/helpers/i18n.js # products/ASC.Files/Client/src/helpers/utils.js # products/ASC.Files/Client/src/index.js # products/ASC.Files/Client/src/store/files/actions.js # products/ASC.Files/Client/src/store/files/reducers.js # products/ASC.Files/Client/src/store/rootReducer.js # products/ASC.People/Client/config-overrides.js # products/ASC.People/Client/package.json # products/ASC.People/Client/src/App.js # products/ASC.People/Client/src/components/Article/Body/index.js # products/ASC.People/Client/src/components/Article/Header/index.js # products/ASC.People/Client/src/components/Article/MainButton/index.js # products/ASC.People/Client/src/components/dialogs/ChangeEmailDialog/index.js # products/ASC.People/Client/src/components/dialogs/ChangePasswordDialog/index.js # products/ASC.People/Client/src/components/dialogs/ChangePhoneDialog/index.js # products/ASC.People/Client/src/components/dialogs/ChangeUserStatusDialog/index.js # products/ASC.People/Client/src/components/dialogs/ChangeUserTypeDialog/index.js # products/ASC.People/Client/src/components/dialogs/DataLossWarningDialog/index.js # products/ASC.People/Client/src/components/dialogs/DeleteProfileEverDialog/index.js # products/ASC.People/Client/src/components/dialogs/DeleteSelfProfileDialog/index.js # products/ASC.People/Client/src/components/dialogs/DeleteUsersDialog/index.js # products/ASC.People/Client/src/components/dialogs/InviteDialog/index.js # products/ASC.People/Client/src/components/dialogs/SendInviteDialog/index.js # products/ASC.People/Client/src/components/pages/GroupAction/Section/Body/index.js # products/ASC.People/Client/src/components/pages/GroupAction/index.js # products/ASC.People/Client/src/components/pages/Home/Section/Body/index.js # products/ASC.People/Client/src/components/pages/Home/Section/Body/userContent.js # products/ASC.People/Client/src/components/pages/Home/Section/Filter/index.js # products/ASC.People/Client/src/components/pages/Home/Section/Header/index.js # products/ASC.People/Client/src/components/pages/Home/Section/Paging/index.js # products/ASC.People/Client/src/components/pages/Home/index.js # products/ASC.People/Client/src/components/pages/Profile/Section/Body/ProfileInfo/ProfileInfo.js # products/ASC.People/Client/src/components/pages/Profile/Section/Body/index.js # products/ASC.People/Client/src/components/pages/Profile/Section/Header/index.js # products/ASC.People/Client/src/components/pages/Profile/index.js # products/ASC.People/Client/src/components/pages/ProfileAction/Section/Body/avatarEditorPage.js # products/ASC.People/Client/src/components/pages/ProfileAction/Section/Body/createAvatarEditorPage.js # products/ASC.People/Client/src/components/pages/ProfileAction/Section/Body/updateUserForm.js # products/ASC.People/Client/src/components/pages/ProfileAction/index.js # products/ASC.People/Client/src/components/pages/Reassign/Section/Header/index.js # products/ASC.People/Client/src/components/pages/Reassign/index.js # products/ASC.People/Client/src/helpers/i18n.js # products/ASC.People/Client/src/helpers/utils.js # products/ASC.People/Client/src/index.js # products/ASC.People/Client/src/store/people/reducers.js # products/ASC.People/Client/src/store/portal/actions.js # products/ASC.People/Client/src/store/portal/reducers.js # products/ASC.People/Client/src/store/profile/actions.js # products/ASC.People/Client/src/store/profile/selectors.js # products/ASC.People/Client/src/store/rootReducer.js # products/ASC.People/Client/yarn.lock # web/ASC.Web.Client/config-overrides.js # web/ASC.Web.Client/package.json # web/ASC.Web.Client/src/App.js # web/ASC.Web.Client/src/components/pages/About/index.js # web/ASC.Web.Client/src/components/pages/Confirm/index.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/activateEmail.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/activateUser.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/changeEmail.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/changeOwner.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/changePassword.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/changePhone.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/createUser.js # web/ASC.Web.Client/src/components/pages/Confirm/sub-components/profileRemove.js # web/ASC.Web.Client/src/components/pages/Home/index.js # web/ASC.Web.Client/src/components/pages/PaymentsEnterprise/index.js # web/ASC.Web.Client/src/components/pages/PaymentsEnterprise/sub-components/advantagesContainer.js # web/ASC.Web.Client/src/components/pages/PaymentsEnterprise/sub-components/buttonContainer.js # web/ASC.Web.Client/src/components/pages/PaymentsEnterprise/sub-components/contactContainer.js # web/ASC.Web.Client/src/components/pages/PaymentsEnterprise/sub-components/headerContainer.js # web/ASC.Web.Client/src/components/pages/Settings/Layout/index.js # web/ASC.Web.Client/src/components/pages/Settings/categories/common/custom-titles.js # web/ASC.Web.Client/src/components/pages/Settings/categories/common/customization.js # web/ASC.Web.Client/src/components/pages/Settings/categories/common/language-and-time-zone.js # web/ASC.Web.Client/src/components/pages/Settings/categories/common/whitelabel.js # web/ASC.Web.Client/src/components/pages/Settings/categories/integration/sub-components/consumerModalDialog.js # web/ASC.Web.Client/src/components/pages/Settings/categories/integration/thirdPartyServicesSettings.js # web/ASC.Web.Client/src/components/pages/Settings/categories/security/accessRights.js # web/ASC.Web.Client/src/components/pages/Settings/categories/security/sub-components/admins.js # web/ASC.Web.Client/src/components/pages/Settings/categories/security/sub-components/modules.js # web/ASC.Web.Client/src/components/pages/Settings/categories/security/sub-components/owner.js # web/ASC.Web.Client/src/components/pages/ThirdParty/index.js # web/ASC.Web.Client/src/components/pages/Wizard/index.js # web/ASC.Web.Client/src/helpers/confirmRoute.js # web/ASC.Web.Client/src/helpers/i18n.js # web/ASC.Web.Client/src/helpers/utils.js # web/ASC.Web.Client/src/index.js # web/ASC.Web.Client/src/store/confirm/actions.js # web/ASC.Web.Client/src/store/payments/actions.js # web/ASC.Web.Client/src/store/settings/reducer.js # web/ASC.Web.Client/src/store/settings/selectors.js # web/ASC.Web.Client/src/store/store.js # web/ASC.Web.Client/src/store/wizard/actions.js # web/ASC.Web.Client/yarn.lock # web/ASC.Web.Common/package.json # web/ASC.Web.Common/yarn.lock # web/ASC.Web.Components/package.json # web/ASC.Web.Components/yarn.lock # web/ASC.Web.Login/src/Login.jsx # web/ASC.Web.Login/src/sub-components/register-container.js # yarn.lock
2021-02-24 07:30:42 +00:00
return Promise.all([getInvitationLink(), getInvitationLink(isGuest)]).then(
2021-03-12 07:17:38 +00:00
([userInvitationLinkResp, guestInvitationLinkResp]) => {
return Promise.resolve({
userLink: userInvitationLinkResp,
guestLink: guestInvitationLinkResp,
});
2021-03-12 07:17:38 +00:00
}
);
}
2022-03-24 17:56:51 +00:00
export function startBackup(storageType, storageParams, backupMail = false) {
const options = {
method: "post",
url: `/portal/startbackup`,
data: {
storageType,
storageParams: storageParams,
backupMail,
},
};
return request(options);
}
export function getBackupProgress() {
const options = {
method: "get",
url: "/portal/getbackupprogress",
};
return request(options);
}
export function deleteBackupSchedule() {
const options = {
method: "delete",
url: "/portal/deletebackupschedule",
};
return request(options);
}
export function getBackupSchedule() {
const options = {
method: "get",
url: "/portal/getbackupschedule",
};
return request(options);
}
export function createBackupSchedule(
storageType,
storageParams,
backupsStored,
Period,
Hour,
Day = null,
backupMail = false
) {
const cronParams = {
Period: Period,
Hour: Hour,
Day: Day,
};
const options = {
method: "post",
url: "/portal/createbackupschedule",
data: {
storageType,
storageParams,
backupsStored,
cronParams: cronParams,
backupMail,
},
};
return request(options);
}
export function deleteBackupHistory() {
return request({ method: "delete", url: "/portal/deletebackuphistory" });
}
export function deleteBackup(id) {
return request({ method: "delete", url: `/portal/deletebackup/${id}` });
}
export function getBackupHistory() {
return request({ method: "get", url: "/portal/getbackuphistory" });
}
export function startRestore(backupId, storageType, storageParams, notify) {
return request({
method: "post",
url: `/portal/startrestore`,
data: {
backupId,
storageType,
storageParams: storageParams,
notify,
},
});
}
export function getRestoreProgress() {
return request({ method: "get", url: "/portal/getrestoreprogress" });
}
export function enableRestore() {
return request({ method: "get", url: "/portal/enablerestore" });
}
export function enableAutoBackup() {
return request({ method: "get", url: "/portal/enableAutoBackup" });
}
export function setPortalRename(alias) {
return request({
method: "put",
url: "/portal/portalrename.json",
data: { alias },
});
}
export function sendSuspendPortalEmail() {
return request({
method: "post",
url: "/portal/suspend.json",
});
}
export function sendDeletePortalEmail() {
return request({
method: "post",
url: "/portal/delete.json",
});
}
2022-08-01 10:17:43 +00:00
export function suspendPortal(confirmKey = null) {
const options = {
method: "put",
url: "/portal/suspend.json",
2022-08-01 10:17:43 +00:00
};
if (confirmKey) options.headers = { confirm: confirmKey };
return request(options);
}
2022-08-01 10:17:43 +00:00
export function continuePortal(confirmKey = null) {
const options = {
method: "put",
url: "/portal/continue.json",
2022-08-01 10:17:43 +00:00
};
if (confirmKey) options.headers = { confirm: confirmKey };
return request(options);
}
2022-08-01 10:17:43 +00:00
export function deletePortal(confirmKey = null) {
const options = {
method: "delete",
url: "/portal/delete.json",
2022-08-01 10:17:43 +00:00
};
if (confirmKey) options.headers = { confirm: confirmKey };
return request(options);
export function getPortalPaymentQuotas() {
return request({ method: "get", url: "/portal/payment/quotas" });
}
export function getPortalQuota() {
2022-09-14 06:55:22 +00:00
return request({ method: "get", url: "/portal/payment/quota" });
}
export function getPortalTariff() {
return request({ method: "get", url: "/portal/tariff" });
}
2022-08-18 15:44:56 +00:00
export function getPaymentAccount() {
return request({ method: "get", url: "/portal/payment/account" });
}
export function getPaymentLink(adminCount, currency) {
return request({
method: "put",
url: `/portal/payment/url`,
data: {
quantity: { admin: adminCount },
},
});
}
export function updatePayment(adminCount) {
return request({
method: "put",
url: `/portal/payment/update`,
data: {
quantity: { admin: adminCount },
},
});
}
2022-08-29 14:46:43 +00:00
export function getCurrencies() {
return request({ method: "get", url: "/portal/payment/currencies" });
}
2022-08-30 13:29:53 +00:00
export function getPaymentTariff() {
return request({ method: "get", url: "/portal/payment/tariff" });
2022-08-30 13:29:53 +00:00
}
export function sendPaymentRequest(email, userName, message) {
return request({
method: "post",
url: `/portal/payment/request `,
data: {
email,
userName,
message,
},
});
}