Merge pull request 'Connectors: Fix handling of the 'private' field / reformatted code' (#1564) from heluecht/friendica-addons:private into 2024.09-rc
Reviewed-on: https://git.friendi.ca/friendica/friendica-addons/pulls/1564 Reviewed-by: Hypolite Petovan <hypolite@mrpetovan.com>pull/1565/head
commit
aeefb92926
|
@ -587,13 +587,13 @@ function bluesky_hook_fork(array &$b)
|
||||||
|
|
||||||
if (DI::pConfig()->get($post['uid'], 'bluesky', 'import')) {
|
if (DI::pConfig()->get($post['uid'], 'bluesky', 'import')) {
|
||||||
// Don't post if it isn't a reply to a bluesky post
|
// Don't post if it isn't a reply to a bluesky post
|
||||||
if (($post['parent'] != $post['id']) && !Post::exists(['id' => $post['parent'], 'network' => Protocol::BLUESKY])) {
|
if (($post['gravity'] != Item::GRAVITY_PARENT) && !Post::exists(['id' => $post['parent'], 'network' => Protocol::BLUESKY])) {
|
||||||
Logger::notice('No bluesky parent found', ['item' => $post['id']]);
|
Logger::notice('No bluesky parent found', ['item' => $post['id']]);
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} elseif (!strstr($post['postopts'] ?? '', 'bluesky') || ($post['parent'] != $post['id']) || $post['private']) {
|
} elseif (!strstr($post['postopts'] ?? '', 'bluesky') || ($post['gravity'] != Item::GRAVITY_PARENT) || ($post['private'] == Item::PRIVATE)) {
|
||||||
DI::logger()->info('Activities are never exported when we don\'t import the bluesky timeline', ['uid' => $post['uid']]);
|
DI::logger()->info('Post will not be exported', ['uid' => $post['uid'], 'postopts' => $post['postopts'], 'gravity' => $post['gravity'], 'private' => $post['private']]);
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -601,15 +601,11 @@ function bluesky_hook_fork(array &$b)
|
||||||
|
|
||||||
function bluesky_post_local(array &$b)
|
function bluesky_post_local(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -667,7 +663,7 @@ function bluesky_send(array &$b)
|
||||||
bluesky_create_activity($b, $parent);
|
bluesky_create_activity($b, $parent);
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
} elseif ($b['private'] || !strstr($b['postopts'], 'bluesky')) {
|
} elseif (($b['private'] == Item::PRIVATE) || !strstr($b['postopts'], 'bluesky')) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1481,6 +1477,18 @@ function bluesky_add_media(stdClass $embed, array $item, int $fetch_uid, int $le
|
||||||
|
|
||||||
case 'app.bsky.embed.record#view':
|
case 'app.bsky.embed.record#view':
|
||||||
$original_uri = $uri = bluesky_get_uri($embed->record);
|
$original_uri = $uri = bluesky_get_uri($embed->record);
|
||||||
|
$type = '$type';
|
||||||
|
if (!empty($embed->record->record->$type)) {
|
||||||
|
$embed_type = $embed->record->record->$type;
|
||||||
|
if ($embed_type == 'app.bsky.graph.starterpack') {
|
||||||
|
Logger::debug('Starterpacks are not fetched like posts', ['original-uri' => $original_uri]);
|
||||||
|
if (empty($item['body'])) {
|
||||||
|
// @todo process starterpack
|
||||||
|
$item['body'] = '[url=' . $embed->record->record->list . ']' . $embed->record->record->name . '[/url]';
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
$uri = bluesky_fetch_missing_post($uri, $item['uid'], $fetch_uid, Item::PR_FETCHED, $item['contact-id'], $level, $last_poll);
|
$uri = bluesky_fetch_missing_post($uri, $item['uid'], $fetch_uid, Item::PR_FETCHED, $item['contact-id'], $level, $last_poll);
|
||||||
if ($uri) {
|
if ($uri) {
|
||||||
$shared = Post::selectFirst(['uri-id'], ['uri' => $uri, 'uid' => [$item['uid'], 0]]);
|
$shared = Post::selectFirst(['uri-id'], ['uri' => $uri, 'uid' => [$item['uid'], 0]]);
|
||||||
|
|
|
@ -17,6 +17,7 @@ use Friendica\Core\Renderer;
|
||||||
use Friendica\Database\DBA;
|
use Friendica\Database\DBA;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Post;
|
use Friendica\Model\Post;
|
||||||
|
|
||||||
function diaspora_install()
|
function diaspora_install()
|
||||||
|
@ -144,8 +145,10 @@ function diaspora_hook_fork(array &$b)
|
||||||
|
|
||||||
$post = $b['data'];
|
$post = $b['data'];
|
||||||
|
|
||||||
if ($post['deleted'] || $post['private'] || ($post['created'] !== $post['edited']) ||
|
if (
|
||||||
!strstr($post['postopts'] ?? '', 'diaspora') || ($post['parent'] != $post['id'])) {
|
$post['deleted'] || ($post['private'] == Item::PRIVATE) || ($post['created'] !== $post['edited']) ||
|
||||||
|
!strstr($post['postopts'] ?? '', 'diaspora') || ($post['gravity'] != Item::GRAVITY_PARENT)
|
||||||
|
) {
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -153,15 +156,11 @@ function diaspora_hook_fork(array &$b)
|
||||||
|
|
||||||
function diaspora_post_local(array &$b)
|
function diaspora_post_local(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -190,7 +189,7 @@ function diaspora_send(array &$b)
|
||||||
|
|
||||||
Logger::notice('diaspora_send: invoked');
|
Logger::notice('diaspora_send: invoked');
|
||||||
|
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@ use Friendica\Core\Hook;
|
||||||
use Friendica\Core\Logger;
|
use Friendica\Core\Logger;
|
||||||
use Friendica\Core\Renderer;
|
use Friendica\Core\Renderer;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Post;
|
use Friendica\Model\Post;
|
||||||
use Friendica\Model\Tag;
|
use Friendica\Model\Tag;
|
||||||
use Friendica\Model\User;
|
use Friendica\Model\User;
|
||||||
|
@ -88,16 +89,12 @@ function dwpost_settings_post(array &$b)
|
||||||
|
|
||||||
function dwpost_post_local(array &$b)
|
function dwpost_post_local(array &$b)
|
||||||
{
|
{
|
||||||
// This can probably be changed to allow editing by pointing to a different API endpoint
|
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ((!DI::userSession()->getLocalUserId()) || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if ((!DI::userSession()->getLocalUserId()) || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
// This can probably be changed to allow editing by pointing to a different API endpoint
|
||||||
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,7 +119,7 @@ function dwpost_post_local(array &$b)
|
||||||
|
|
||||||
function dwpost_send(array &$b)
|
function dwpost_send(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@ use Friendica\Core\Hook;
|
||||||
use Friendica\Core\Logger;
|
use Friendica\Core\Logger;
|
||||||
use Friendica\Core\Renderer;
|
use Friendica\Core\Renderer;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Tag;
|
use Friendica\Model\Tag;
|
||||||
use Friendica\Model\User;
|
use Friendica\Model\User;
|
||||||
use Friendica\Util\DateTimeFormat;
|
use Friendica\Util\DateTimeFormat;
|
||||||
|
@ -85,17 +86,12 @@ function ijpost_settings_post(array &$b)
|
||||||
|
|
||||||
function ijpost_post_local(array &$b)
|
function ijpost_post_local(array &$b)
|
||||||
{
|
{
|
||||||
// This can probably be changed to allow editing by pointing to a different API endpoint
|
|
||||||
|
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
// This can probably be changed to allow editing by pointing to a different API endpoint
|
||||||
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -120,7 +116,7 @@ function ijpost_post_local(array &$b)
|
||||||
|
|
||||||
function ijpost_send(array &$b)
|
function ijpost_send(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,7 @@ use Friendica\Core\Logger;
|
||||||
use Friendica\Core\Renderer;
|
use Friendica\Core\Renderer;
|
||||||
use Friendica\Database\DBA;
|
use Friendica\Database\DBA;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Post;
|
use Friendica\Model\Post;
|
||||||
|
|
||||||
function libertree_install()
|
function libertree_install()
|
||||||
|
@ -78,9 +79,7 @@ function libertree_settings_post(array &$b)
|
||||||
DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'libertree', 'post_by_default', intval($_POST['libertree_bydefault']));
|
DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'libertree', 'post_by_default', intval($_POST['libertree_bydefault']));
|
||||||
DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'libertree', 'libertree_api_token', trim($_POST['libertree_api_token']));
|
DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'libertree', 'libertree_api_token', trim($_POST['libertree_api_token']));
|
||||||
DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'libertree', 'libertree_url', trim($_POST['libertree_url']));
|
DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'libertree', 'libertree_url', trim($_POST['libertree_url']));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function libertree_hook_fork(array &$b)
|
function libertree_hook_fork(array &$b)
|
||||||
|
@ -91,8 +90,10 @@ function libertree_hook_fork(array &$b)
|
||||||
|
|
||||||
$post = $b['data'];
|
$post = $b['data'];
|
||||||
|
|
||||||
if ($post['deleted'] || $post['private'] || ($post['created'] !== $post['edited']) ||
|
if (
|
||||||
!strstr($post['postopts'], 'libertree') || ($post['parent'] != $post['id'])) {
|
$post['deleted'] || ($post['private'] == Item::PRIVATE) || ($post['created'] !== $post['edited']) ||
|
||||||
|
!strstr($post['postopts'], 'libertree') || ($post['gravity'] != Item::GRAVITY_PARENT)
|
||||||
|
) {
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -100,18 +101,12 @@ function libertree_hook_fork(array &$b)
|
||||||
|
|
||||||
function libertree_post_local(array &$b)
|
function libertree_post_local(array &$b)
|
||||||
{
|
{
|
||||||
|
|
||||||
// This can probably be changed to allow editing by pointing to a different API endpoint
|
|
||||||
|
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
// This can probably be changed to allow editing by pointing to a different API endpoint
|
||||||
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -138,7 +133,7 @@ function libertree_send(array &$b)
|
||||||
{
|
{
|
||||||
Logger::notice('libertree_send: invoked');
|
Logger::notice('libertree_send: invoked');
|
||||||
|
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -14,6 +14,7 @@ use Friendica\Core\Hook;
|
||||||
use Friendica\Core\Logger;
|
use Friendica\Core\Logger;
|
||||||
use Friendica\Core\Renderer;
|
use Friendica\Core\Renderer;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Post;
|
use Friendica\Model\Post;
|
||||||
use Friendica\Model\Tag;
|
use Friendica\Model\Tag;
|
||||||
use Friendica\Model\User;
|
use Friendica\Model\User;
|
||||||
|
@ -86,16 +87,12 @@ function ljpost_settings_post(array &$b)
|
||||||
|
|
||||||
function ljpost_post_local(array &$b)
|
function ljpost_post_local(array &$b)
|
||||||
{
|
{
|
||||||
// This can probably be changed to allow editing by pointing to a different API endpoint
|
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
// This can probably be changed to allow editing by pointing to a different API endpoint
|
||||||
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -118,7 +115,7 @@ function ljpost_post_local(array &$b)
|
||||||
|
|
||||||
function ljpost_send(array &$b)
|
function ljpost_send(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,7 @@ use Friendica\Core\Logger;
|
||||||
use Friendica\Core\Renderer;
|
use Friendica\Core\Renderer;
|
||||||
use Friendica\Core\System;
|
use Friendica\Core\System;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Model\Item;
|
||||||
use Friendica\Model\Photo;
|
use Friendica\Model\Photo;
|
||||||
use phpnut\phpnutException;
|
use phpnut\phpnutException;
|
||||||
|
|
||||||
|
@ -221,7 +222,7 @@ function pnut_hook_fork(array &$b)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!strstr($post['postopts'] ?? '', 'pnut') || ($post['parent'] != $post['id']) || $post['private']) {
|
if (!strstr($post['postopts'] ?? '', 'pnut') || ($post['gravity'] != Item::GRAVITY_PARENT) || ($post['private'] == Item::PRIVATE)) {
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -229,15 +230,11 @@ function pnut_hook_fork(array &$b)
|
||||||
|
|
||||||
function pnut_post_local(array &$b)
|
function pnut_post_local(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -265,7 +262,7 @@ function pnut_post_hook(array &$b)
|
||||||
/**
|
/**
|
||||||
* Post to pnut.io
|
* Post to pnut.io
|
||||||
*/
|
*/
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -345,14 +345,14 @@ function pumpio_hook_fork(array &$b)
|
||||||
|
|
||||||
if (DI::pConfig()->get($post['uid'], 'pumpio', 'import')) {
|
if (DI::pConfig()->get($post['uid'], 'pumpio', 'import')) {
|
||||||
// Don't fork if it isn't a reply to a pump.io post
|
// Don't fork if it isn't a reply to a pump.io post
|
||||||
if (($post['parent'] != $post['id']) && !Post::exists(['id' => $post['parent'], 'network' => Protocol::PUMPIO])) {
|
if (($post['gravity'] != Item::GRAVITY_PARENT) && !Post::exists(['id' => $post['parent'], 'network' => Protocol::PUMPIO])) {
|
||||||
Logger::notice('No pump.io parent found for item ' . $post['id']);
|
Logger::notice('No pump.io parent found for item ' . $post['id']);
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Comments are never exported when we don't import the pumpio timeline
|
// Comments are never exported when we don't import the pumpio timeline
|
||||||
if (!strstr($post['postopts'], 'pumpio') || ($post['parent'] != $post['id']) || $post['private']) {
|
if (!strstr($post['postopts'], 'pumpio') || ($post['gravity'] != Item::GRAVITY_PARENT)|| ($post['private'] == Item::PRIVATE)) {
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -412,7 +412,7 @@ function pumpio_send(array &$b)
|
||||||
|
|
||||||
Logger::notice('pumpio_send: receiver ', $receiver);
|
Logger::notice('pumpio_send: receiver ', $receiver);
|
||||||
|
|
||||||
if (!count($receiver) && ($b['private'] || !strstr($b['postopts'], 'pumpio'))) {
|
if (!count($receiver) && ($b['private'] == Item::PRIVATE) || !strstr($b['postopts'], 'pumpio'))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1319,7 +1319,7 @@ function pumpio_getreceiver(array $b)
|
||||||
{
|
{
|
||||||
$receiver = [];
|
$receiver = [];
|
||||||
|
|
||||||
if (!$b['private']) {
|
if ($b['private'] != Item::PRIVATE)) {
|
||||||
if (!strstr($b['postopts'], 'pumpio')) {
|
if (!strstr($b['postopts'], 'pumpio')) {
|
||||||
return $receiver;
|
return $receiver;
|
||||||
}
|
}
|
||||||
|
|
|
@ -296,7 +296,7 @@ function statusnet_hook_fork(array &$b)
|
||||||
|
|
||||||
$post = $b['data'];
|
$post = $b['data'];
|
||||||
|
|
||||||
if ($post['deleted'] || ($post['created'] !== $post['edited']) || strpos($post['postopts'] ?? '', 'statusnet') === false || ($post['parent'] != $post['id']) || $post['private']) {
|
if ($post['deleted'] || ($post['created'] !== $post['edited']) || strpos($post['postopts'] ?? '', 'statusnet') === false || ($post['gravity'] != Item::GRAVITY_PARENT) || ($post['private'] == Item::PRIVATE)) {
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -336,7 +336,7 @@ function statusnet_post_hook(array &$b)
|
||||||
/**
|
/**
|
||||||
* Post to GNU Social
|
* Post to GNU Social
|
||||||
*/
|
*/
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -439,11 +439,13 @@ function statusnet_addon_admin_post()
|
||||||
$secret = trim($_POST['secret'][$id]);
|
$secret = trim($_POST['secret'][$id]);
|
||||||
$key = trim($_POST['key'][$id]);
|
$key = trim($_POST['key'][$id]);
|
||||||
//$applicationname = (!empty($_POST['applicationname']) ? Strings::escapeTags(trim($_POST['applicationname'][$id])):'');
|
//$applicationname = (!empty($_POST['applicationname']) ? Strings::escapeTags(trim($_POST['applicationname'][$id])):'');
|
||||||
if ($sitename != '' &&
|
if (
|
||||||
|
$sitename != '' &&
|
||||||
$apiurl != '' &&
|
$apiurl != '' &&
|
||||||
$secret != '' &&
|
$secret != '' &&
|
||||||
$key != '' &&
|
$key != '' &&
|
||||||
empty($_POST['delete'][$id])) {
|
empty($_POST['delete'][$id])
|
||||||
|
) {
|
||||||
|
|
||||||
$sites[] = [
|
$sites[] = [
|
||||||
'sitename' => $sitename,
|
'sitename' => $sitename,
|
||||||
|
|
|
@ -477,13 +477,13 @@ function tumblr_hook_fork(array &$b)
|
||||||
|
|
||||||
if (DI::pConfig()->get($post['uid'], 'tumblr', 'import')) {
|
if (DI::pConfig()->get($post['uid'], 'tumblr', 'import')) {
|
||||||
// Don't post if it isn't a reply to a tumblr post
|
// Don't post if it isn't a reply to a tumblr post
|
||||||
if (($post['parent'] != $post['id']) && !Post::exists(['id' => $post['parent'], 'network' => Protocol::TUMBLR])) {
|
if (($post['gravity'] != Item::GRAVITY_PARENT) && !Post::exists(['id' => $post['parent'], 'network' => Protocol::TUMBLR])) {
|
||||||
Logger::notice('No tumblr parent found', ['item' => $post['id']]);
|
Logger::notice('No tumblr parent found', ['item' => $post['id']]);
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} elseif (!strstr($post['postopts'] ?? '', 'tumblr') || ($post['parent'] != $post['id']) || $post['private']) {
|
} elseif (!strstr($post['postopts'] ?? '', 'tumblr') || ($post['gravity'] != Item::GRAVITY_PARENT) || ($post['private'] == Item::PRIVATE)) {
|
||||||
DI::logger()->info('Activities are never exported when we don\'t import the tumblr timeline', ['uid' => $post['uid']]);
|
DI::logger()->info('Post will not be exported', ['uid' => $post['uid'], 'postopts' => $post['postopts'], 'gravity' => $post['gravity'], 'private' => $post['private']]);
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
@ -491,15 +491,11 @@ function tumblr_hook_fork(array &$b)
|
||||||
|
|
||||||
function tumblr_post_local(array &$b)
|
function tumblr_post_local(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -575,7 +571,7 @@ function tumblr_send(array &$b)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
} elseif ($b['private'] || !strstr($b['postopts'], 'tumblr')) {
|
} elseif (($b['private'] == Item::PRIVATE) || !strstr($b['postopts'], 'tumblr')) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -170,7 +170,7 @@ function twitter_hook_fork(array &$b)
|
||||||
$post = $b['data'];
|
$post = $b['data'];
|
||||||
|
|
||||||
if (
|
if (
|
||||||
$post['deleted'] || $post['private'] || ($post['created'] !== $post['edited']) ||
|
$post['deleted'] || ($post['private'] == Item::PRIVATE) || ($post['created'] !== $post['edited']) ||
|
||||||
!strstr($post['postopts'], 'twitter') || ($post['gravity'] != Item::GRAVITY_PARENT)
|
!strstr($post['postopts'], 'twitter') || ($post['gravity'] != Item::GRAVITY_PARENT)
|
||||||
) {
|
) {
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
|
@ -184,7 +184,7 @@ function twitter_post_local(array &$b)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['edit'] || $b['private'] || $b['parent']) {
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -211,7 +211,7 @@ function twitter_post_hook(array &$b)
|
||||||
{
|
{
|
||||||
DI::logger()->debug('Invoke post hook', $b);
|
DI::logger()->debug('Invoke post hook', $b);
|
||||||
|
|
||||||
if (($b['gravity'] != Item::GRAVITY_PARENT) || !strstr($b['postopts'], 'twitter') || $b['private'] || $b['deleted'] || ($b['created'] !== $b['edited'])) {
|
if (($b['gravity'] != Item::GRAVITY_PARENT) || !strstr($b['postopts'], 'twitter') || ($b['private'] == Item::PRIVATE) || $b['deleted'] || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -108,8 +108,8 @@ function wppost_hook_fork(array &$b)
|
||||||
$post = $b['data'];
|
$post = $b['data'];
|
||||||
|
|
||||||
if (
|
if (
|
||||||
$post['deleted'] || $post['private'] || ($post['created'] !== $post['edited']) ||
|
$post['deleted'] || ($post['private'] == Item::PRIVATE) || ($post['created'] !== $post['edited']) ||
|
||||||
!strstr($post['postopts'] ?? '', 'wppost') || ($post['parent'] != $post['id'])
|
!strstr($post['postopts'] ?? '', 'wppost') || ($post['gravity'] != Item::GRAVITY_PARENT)
|
||||||
) {
|
) {
|
||||||
$b['execute'] = false;
|
$b['execute'] = false;
|
||||||
return;
|
return;
|
||||||
|
@ -118,18 +118,12 @@ function wppost_hook_fork(array &$b)
|
||||||
|
|
||||||
function wppost_post_local(array &$b)
|
function wppost_post_local(array &$b)
|
||||||
{
|
{
|
||||||
|
|
||||||
// This can probably be changed to allow editing by pointing to a different API endpoint
|
|
||||||
|
|
||||||
if ($b['edit']) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
if (!DI::userSession()->getLocalUserId() || (DI::userSession()->getLocalUserId() != $b['uid'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($b['private'] || $b['parent']) {
|
// This can probably be changed to allow editing by pointing to a different API endpoint
|
||||||
|
if ($b['edit'] || ($b['private'] == Item::PRIVATE) || ($b['gravity'] != Item::GRAVITY_PARENT)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -152,12 +146,9 @@ function wppost_post_local(array &$b)
|
||||||
$b['postopts'] .= 'wppost';
|
$b['postopts'] .= 'wppost';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function wppost_send(array &$b)
|
function wppost_send(array &$b)
|
||||||
{
|
{
|
||||||
if ($b['deleted'] || $b['private'] || ($b['created'] !== $b['edited'])) {
|
if ($b['deleted'] || ($b['private'] == Item::PRIVATE) || ($b['created'] !== $b['edited'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue