Improved description, support for "unlisted" via DFRN as well.

This commit is contained in:
Michael 2020-03-02 22:35:25 +00:00
parent dc9ea15bb1
commit a19151fa6a
2 changed files with 7 additions and 1 deletions

View File

@ -840,7 +840,7 @@ function settings_content(App $a)
]); ]);
$unlisted = Renderer::replaceMacros($opt_tpl, [ $unlisted = Renderer::replaceMacros($opt_tpl, [
'$field' => ['unlisted', DI::l10n()->t('Should public posts be unlisted?'), DI::pConfig()->get(local_user(), 'system', 'unlisted'), DI::l10n()->t('Your public posts will not appear on the community page or in search results, nor will they be transported to relay servers.')], '$field' => ['unlisted', DI::l10n()->t('Should public posts be unlisted?'), DI::pConfig()->get(local_user(), 'system', 'unlisted'), DI::l10n()->t('Your public posts will not appear on the community page or in search results, nor will they be transported to relay servers. However they can appear on public feeds from other servers.')],
]); ]);
$blockwall = Renderer::replaceMacros($opt_tpl, [ $blockwall = Renderer::replaceMacros($opt_tpl, [

View File

@ -1052,6 +1052,7 @@ class DFRN
if ($item['private']) { if ($item['private']) {
// Friendica versions prior to 2020.3 can't handle "unlisted" properly. So we can only transmit public and private // Friendica versions prior to 2020.3 can't handle "unlisted" properly. So we can only transmit public and private
XML::addElement($doc, $entry, "dfrn:private", ($item['private'] == Item::PRIVATE ? Item::PRIVATE : Item::PUBLIC)); XML::addElement($doc, $entry, "dfrn:private", ($item['private'] == Item::PRIVATE ? Item::PRIVATE : Item::PUBLIC));
XML::addElement($doc, $entry, "dfrn:unlisted", $item['private'] == Item::UNLISTED);
} }
if ($item['extid']) { if ($item['extid']) {
@ -2405,6 +2406,11 @@ class DFRN
$item["private"] = XML::getFirstNodeValue($xpath, "dfrn:private/text()", $entry); $item["private"] = XML::getFirstNodeValue($xpath, "dfrn:private/text()", $entry);
$unlisted = XML::getFirstNodeValue($xpath, "dfrn:unlisted/text()", $entry);
if (!empty($unlisted) && ($item['private'] != Item::PRIVATE)) {
$item['private'] = Item::UNLISTED;
}
$item["extid"] = XML::getFirstNodeValue($xpath, "dfrn:extid/text()", $entry); $item["extid"] = XML::getFirstNodeValue($xpath, "dfrn:extid/text()", $entry);
if (XML::getFirstNodeValue($xpath, "dfrn:bookmark/text()", $entry) == "true") { if (XML::getFirstNodeValue($xpath, "dfrn:bookmark/text()", $entry) == "true") {