feat: Always show share button (#2469)

This is to enable the share page also for internal team members.

closes #2444
This commit is contained in:
Wesley
2021-08-23 08:20:29 +02:00
committed by GitHub
parent d8ad2fc1a2
commit a50471959b
4 changed files with 48 additions and 10 deletions

View File

@@ -79,7 +79,6 @@ function DocumentHeader({
const isNew = document.isNewDocument;
const isTemplate = document.isTemplate;
const can = policies.abilities(document.id);
const canShareDocument = auth.team && auth.team.sharing && can.share;
const canToggleEmbeds = auth.team && auth.team.documentEmbeds;
const canEdit = can.update && !isEditing;
@@ -171,7 +170,7 @@ function DocumentHeader({
<TemplatesMenu document={document} />
</Action>
)}
{!isEditing && canShareDocument && (!isMobile || !isTemplate) && (
{!isEditing && (!isMobile || !isTemplate) && (
<Action>
<ShareButton document={document} />
</Action>

View File

@@ -27,12 +27,17 @@ type Props = {|
function SharePopover({ document, share, sharedParent, onSubmit }: Props) {
const { t } = useTranslation();
const { policies, shares } = useStores();
const { policies, shares, auth } = useStores();
const { showToast } = useToasts();
const [isCopied, setIsCopied] = React.useState(false);
const timeout = React.useRef<?TimeoutID>();
const can = policies.abilities(share ? share.id : "");
const canPublish = can.update && !document.isTemplate;
const documentAbilities = policies.abilities(document.id);
const canPublish =
can.update &&
!document.isTemplate &&
auth.team?.sharing &&
documentAbilities.share;
const isPubliclyShared = (share && share.published) || sharedParent;
React.useEffect(() => {
@@ -102,7 +107,7 @@ function SharePopover({ document, share, sharedParent, onSubmit }: Props) {
</Notice>
)}
{canPublish && (
{canPublish ? (
<SwitchWrapper>
<Switch
id="published"
@@ -132,8 +137,11 @@ function SharePopover({ document, share, sharedParent, onSubmit }: Props) {
</SwitchText>
</SwitchLabel>
</SwitchWrapper>
) : (
<HelpText>{t("Only team members with permission can view")}</HelpText>
)}
{share && share.published && (
{canPublish && share?.published && (
<SwitchWrapper>
<Switch
id="includeChildDocuments"