diff --git a/include/conversation.php b/include/conversation.php index f5f27f6a50..0baf4a819e 100644 --- a/include/conversation.php +++ b/include/conversation.php @@ -1137,28 +1137,11 @@ function status_editor(App $a, $x, $notes_cid = 0, $popup = false) $jotplugins = ''; Hook::callAll('jot_tool', $jotplugins); - // Private/public post links for the non-JS ACL form - $private_post = 1; - if (!empty($_REQUEST['public'])) { - $private_post = 0; - } - $query_str = DI::args()->getQueryString(); if (strpos($query_str, 'public=1') !== false) { $query_str = str_replace(['?public=1', '&public=1'], ['', ''], $query_str); } - /* - * I think $a->query_string may never have ? in it, but I could be wrong - * It looks like it's from the index.php?q=[etc] rewrite that the web - * server does, which converts any ? to &, e.g. suggest&ignore=61 for suggest?ignore=61 - */ - if (strpos($query_str, '?') === false) { - $public_post_link = '?public=1'; - } else { - $public_post_link = '&public=1'; - } - // $tpl = Renderer::replaceMacros($tpl,array('$jotplugins' => $jotplugins)); $tpl = Renderer::getMarkupTemplate("jot.tpl"); @@ -1212,11 +1195,6 @@ function status_editor(App $a, $x, $notes_cid = 0, $popup = false) // ACL permissions box '$acl' => $x['acl'], - '$group_perms' => DI::l10n()->t('Post to Groups'), - '$contact_perms' => DI::l10n()->t('Post to Contacts'), - '$private' => DI::l10n()->t('Private post'), - '$is_private' => $private_post, - '$public_link' => $public_post_link, //jot nav tab (used in some themes) '$message' => DI::l10n()->t('Message'), diff --git a/mod/notes.php b/mod/notes.php index f1cf6cfde5..d3ce0fa40c 100644 --- a/mod/notes.php +++ b/mod/notes.php @@ -55,7 +55,7 @@ function notes_content(App $a, $update = false) 'default_location' => $a->user['default-location'], 'nickname' => $a->user['nickname'], 'lockstate' => 'lock', - 'acl' => '', + 'acl' => \Friendica\Core\ACL::getSelfOnlyHTML(local_user(), DI::l10n()->t('Personal notes are visible only by yourself.')), 'bang' => '', 'visitor' => 'block', 'profile_uid' => local_user(), diff --git a/mod/photos.php b/mod/photos.php index b00663df3a..65e8651b20 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -987,8 +987,6 @@ function photos_content(App $a) '$uploadurl' => $ret['post_url'], // ACL permissions box - '$group_perms' => DI::l10n()->t('Show to Groups'), - '$contact_perms' => DI::l10n()->t('Show to Contacts'), '$return_path' => DI::args()->getQueryString(), ]); @@ -1352,8 +1350,6 @@ function photos_content(App $a) '$delete' => DI::l10n()->t('Delete Photo'), // ACL permissions box - '$group_perms' => DI::l10n()->t('Show to Groups'), - '$contact_perms' => DI::l10n()->t('Show to Contacts'), '$return_path' => DI::args()->getQueryString(), ]); } diff --git a/src/Core/ACL.php b/src/Core/ACL.php index 4df15dc536..5f69d78b68 100644 --- a/src/Core/ACL.php +++ b/src/Core/ACL.php @@ -83,6 +83,27 @@ class ACL return $o; } + /** + * Returns a minimal ACL block for self-only permissions + * + * @param int $localUserId + * @param string $explanation + * @return string + * @throws \Friendica\Network\HTTPException\InternalServerErrorException + */ + public static function getSelfOnlyHTML(int $localUserId, string $explanation) + { + $selfPublicContactId = Contact::getPublicIdByUserId($localUserId); + + $tpl = Renderer::getMarkupTemplate('acl/self_only.tpl'); + $o = Renderer::replaceMacros($tpl, [ + '$selfPublicContactId' => $selfPublicContactId, + '$explanation' => $explanation, + ]); + + return $o; + } + /** * Return the default permission of the provided user array * diff --git a/view/templates/acl/self_only.tpl b/view/templates/acl/self_only.tpl new file mode 100644 index 0000000000..d1c5a00de8 --- /dev/null +++ b/view/templates/acl/self_only.tpl @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file