From 7a1af5fb5b9e38e3d84384f3201812566d1b6ce6 Mon Sep 17 00:00:00 2001 From: Tobias Diekershoff Date: Tue, 23 May 2023 06:46:36 +0200 Subject: [PATCH 1/6] HU translation updates --- mailstream/lang/hu/messages.po | 42 +++++++++++---------- mailstream/lang/hu/strings.php | 1 + piwik/lang/hu/messages.po | 28 ++++++++------ piwik/lang/hu/strings.php | 1 + tumblr/lang/hu/messages.po | 69 +++++++++++++++++++++------------- tumblr/lang/hu/strings.php | 11 ++++-- 6 files changed, 91 insertions(+), 61 deletions(-) diff --git a/mailstream/lang/hu/messages.po b/mailstream/lang/hu/messages.po index 3302564d..66d09299 100644 --- a/mailstream/lang/hu/messages.po +++ b/mailstream/lang/hu/messages.po @@ -4,15 +4,15 @@ # # # Translators: -# Balázs Úr, 2020-2021 +# Balázs Úr, 2020-2021,2023 msgid "" msgstr "" "Project-Id-Version: friendica\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2021-11-21 19:15-0500\n" "PO-Revision-Date: 2014-06-23 09:54+0000\n" -"Last-Translator: Balázs Úr, 2020-2021\n" -"Language-Team: Hungarian (http://www.transifex.com/Friendica/friendica/language/hu/)\n" +"Last-Translator: Balázs Úr, 2020-2021,2023\n" +"Language-Team: Hungarian (http://app.transifex.com/Friendica/friendica/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" @@ -31,68 +31,72 @@ msgstr "E-mail-cím, ahonnan úgy tűnik, hogy a folyam elemei származnak." msgid "Save Settings" msgstr "Beállítások mentése" -#: mailstream.php:301 +#: mailstream.php:311 msgid "Re:" msgstr "Vá:" -#: mailstream.php:314 mailstream.php:317 +#: mailstream.php:324 mailstream.php:327 msgid "Friendica post" msgstr "Friendica-bejegyzés" -#: mailstream.php:320 +#: mailstream.php:330 msgid "Diaspora post" msgstr "Diaspora-bejegyzés" -#: mailstream.php:330 +#: mailstream.php:340 msgid "Feed item" msgstr "Hírforráselem" -#: mailstream.php:333 +#: mailstream.php:343 msgid "Email" msgstr "E-mail" -#: mailstream.php:335 +#: mailstream.php:345 msgid "Friendica Item" msgstr "Friendica-elem" -#: mailstream.php:404 +#: mailstream.php:419 msgid "Upstream" msgstr "Távoli" -#: mailstream.php:405 +#: mailstream.php:420 +msgid "URI" +msgstr "URI" + +#: mailstream.php:421 msgid "Local" msgstr "Helyi" -#: mailstream.php:481 +#: mailstream.php:499 msgid "Enabled" msgstr "Engedélyezve" -#: mailstream.php:486 +#: mailstream.php:504 msgid "Email Address" msgstr "E-mail-cím" -#: mailstream.php:488 +#: mailstream.php:506 msgid "Leave blank to use your account email address" msgstr "Hagyja üresen a fiókja e-mail-címének használatához" -#: mailstream.php:492 +#: mailstream.php:510 msgid "Exclude Likes" msgstr "Kedvelések kizárása" -#: mailstream.php:494 +#: mailstream.php:512 msgid "Check this to omit mailing \"Like\" notifications" msgstr "Jelölje be ezt a „Tetszik” értesítések elküldésének kihagyásához" -#: mailstream.php:498 +#: mailstream.php:516 msgid "Attach Images" msgstr "Képek csatolása" -#: mailstream.php:500 +#: mailstream.php:518 msgid "" "Download images in posts and attach them to the email. Useful for reading " "email while offline." msgstr "Képek letöltése a bejegyzésekből és csatolás az e-mailhez. Hasznos az e-mailek kapcsolat nélküli olvasásakor." -#: mailstream.php:507 +#: mailstream.php:525 msgid "Mail Stream Settings" msgstr "Levelezőfolyam beállításai" diff --git a/mailstream/lang/hu/strings.php b/mailstream/lang/hu/strings.php index 5a7383bd..5b1e5a51 100644 --- a/mailstream/lang/hu/strings.php +++ b/mailstream/lang/hu/strings.php @@ -15,6 +15,7 @@ $a->strings['Feed item'] = 'Hírforráselem'; $a->strings['Email'] = 'E-mail'; $a->strings['Friendica Item'] = 'Friendica-elem'; $a->strings['Upstream'] = 'Távoli'; +$a->strings['URI'] = 'URI'; $a->strings['Local'] = 'Helyi'; $a->strings['Enabled'] = 'Engedélyezve'; $a->strings['Email Address'] = 'E-mail-cím'; diff --git a/piwik/lang/hu/messages.po b/piwik/lang/hu/messages.po index cbaa8df2..62644161 100644 --- a/piwik/lang/hu/messages.po +++ b/piwik/lang/hu/messages.po @@ -4,28 +4,28 @@ # # # Translators: -# Balázs Úr, 2020-2021 +# Balázs Úr, 2020-2021,2023 msgid "" msgstr "" "Project-Id-Version: friendica\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-01 18:15+0100\n" +"POT-Creation-Date: 2023-05-01 07:39+0200\n" "PO-Revision-Date: 2014-06-23 11:18+0000\n" -"Last-Translator: Balázs Úr, 2020-2021\n" -"Language-Team: Hungarian (http://www.transifex.com/Friendica/friendica/language/hu/)\n" +"Last-Translator: Balázs Úr, 2020-2021,2023\n" +"Language-Team: Hungarian (http://app.transifex.com/Friendica/friendica/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: hu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: piwik.php:87 +#: piwik.php:96 msgid "" "This website is tracked using the Matomo" " analytics tool." msgstr "Ez a weboldal a Matomo analitikai eszköz használatával van követve." -#: piwik.php:90 +#: piwik.php:99 #, php-format msgid "" "If you do not want that your visits are logged in this way you (opt-out)." msgstr "Ha nem szeretné, hogy a látogatásai ilyen módon naplózva legyenek, akkor beállíthat egy sütit annak megakadályozásához, hogy a Matomo vagy a Piwik kövesse az oldal további meglátogatásait (lemondás)." -#: piwik.php:97 +#: piwik.php:108 msgid "Save Settings" msgstr "Beállítások mentése" -#: piwik.php:98 +#: piwik.php:109 msgid "Matomo (Piwik) Base URL" msgstr "Matomo (Piwik) alap URL" -#: piwik.php:98 +#: piwik.php:109 msgid "" "Absolute path to your Matomo (Piwik) installation. (without protocol " "(http/s), with trailing slash)" msgstr "Abszolút útvonal a Matomo (Piwik) telepítéséhez (http vagy https protokoll nélkül, de lezáró perjellel)." -#: piwik.php:99 +#: piwik.php:110 msgid "Site ID" msgstr "Oldalazonosító" -#: piwik.php:100 +#: piwik.php:111 msgid "Show opt-out cookie link?" msgstr "Megjeleníti a lemondó süti hivatkozását?" -#: piwik.php:101 +#: piwik.php:112 msgid "Asynchronous tracking" msgstr "Aszinkron követés" + +#: piwik.php:113 +msgid "Shortcut path to the script ('/js/' instead of '/piwik.js')" +msgstr "A parancsfájl rövidített útvonala („/js/” a „/piwik.js” helyett)" diff --git a/piwik/lang/hu/strings.php b/piwik/lang/hu/strings.php index 8eff504e..4b249396 100644 --- a/piwik/lang/hu/strings.php +++ b/piwik/lang/hu/strings.php @@ -13,3 +13,4 @@ $a->strings['Absolute path to your Matomo (Piwik) installation. (without protoco $a->strings['Site ID'] = 'Oldalazonosító'; $a->strings['Show opt-out cookie link?'] = 'Megjeleníti a lemondó süti hivatkozását?'; $a->strings['Asynchronous tracking'] = 'Aszinkron követés'; +$a->strings['Shortcut path to the script (\'/js/\' instead of \'/piwik.js\')'] = 'A parancsfájl rövidített útvonala („/js/” a „/piwik.js” helyett)'; diff --git a/tumblr/lang/hu/messages.po b/tumblr/lang/hu/messages.po index c3920576..3c8eb396 100644 --- a/tumblr/lang/hu/messages.po +++ b/tumblr/lang/hu/messages.po @@ -4,69 +4,86 @@ # # # Translators: -# Balázs Úr, 2020-2021 +# Balázs Úr, 2020-2021,2023 msgid "" msgstr "" "Project-Id-Version: friendica\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:17-0500\n" +"POT-Creation-Date: 2023-04-29 06:56+0000\n" "PO-Revision-Date: 2014-06-23 12:58+0000\n" -"Last-Translator: Balázs Úr, 2020-2021\n" -"Language-Team: Hungarian (http://www.transifex.com/Friendica/friendica/language/hu/)\n" +"Last-Translator: Balázs Úr, 2020-2021,2023\n" +"Language-Team: Hungarian (http://app.transifex.com/Friendica/friendica/language/hu/)\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: hu\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: tumblr.php:39 +#: tumblr.php:243 msgid "Permission denied." msgstr "Engedély megtagadva." -#: tumblr.php:69 +#: tumblr.php:296 msgid "Save Settings" msgstr "Beállítások mentése" -#: tumblr.php:71 +#: tumblr.php:297 msgid "Consumer Key" msgstr "Felhasználói kulcs" -#: tumblr.php:72 +#: tumblr.php:298 msgid "Consumer Secret" msgstr "Felhasználói titok" -#: tumblr.php:177 -msgid "You are now authenticated to tumblr." -msgstr "Most már hitelesítve van a Tumblr-hez." +#: tumblr.php:299 +msgid "Maximum tags" +msgstr "Legtöbb címke" -#: tumblr.php:178 -msgid "return to the connector page" -msgstr "visszatérés a csatlakozó oldalára" +#: tumblr.php:299 +msgid "" +"Maximum number of tags that a user can follow. Enter 0 to deactivate the " +"feature." +msgstr "A címkék legnagyobb száma, amit egy felhasználó követhet. Adjon meg 0 értéket a funkció kikapcsolásához." -#: tumblr.php:194 -msgid "Post to Tumblr" -msgstr "Beküldése a Tumblr-re" - -#: tumblr.php:225 +#: tumblr.php:336 msgid "Post to page:" msgstr "Beküldés az oldalra:" -#: tumblr.php:231 +#: tumblr.php:342 msgid "(Re-)Authenticate your tumblr page" msgstr "A Tumblr-oldal (újra)hitelesítése" -#: tumblr.php:232 +#: tumblr.php:343 msgid "You are not authenticated to tumblr" msgstr "Nincs hitelesítve van a Tumblr-hez" -#: tumblr.php:237 +#: tumblr.php:348 msgid "Enable Tumblr Post Addon" msgstr "A Tumblr-beküldő bővítmény engedélyezése" -#: tumblr.php:238 +#: tumblr.php:349 msgid "Post to Tumblr by default" msgstr "Beküldés a Tumblr-re alapértelmezetten" -#: tumblr.php:244 -msgid "Tumblr Export" -msgstr "Tumblr exportálás" +#: tumblr.php:350 +msgid "Import the remote timeline" +msgstr "A távoli idővonal importálása" + +#: tumblr.php:351 +msgid "Subscribed tags" +msgstr "Feliratkozott címkék" + +#: tumblr.php:351 +#, php-format +msgid "" +"Comma separated list of up to %d tags that will be imported additionally to " +"the timeline" +msgstr "Legfeljebb %d címke vesszővel elválasztott listája, amelyek szintén importálásra kerülnek az idővonalon felül" + +#: tumblr.php:357 +msgid "Tumblr Import/Export" +msgstr "Tumblr importálás és exportálás" + +#: tumblr.php:375 +msgid "Post to Tumblr" +msgstr "Beküldése a Tumblr-re" diff --git a/tumblr/lang/hu/strings.php b/tumblr/lang/hu/strings.php index cd3e3e19..a3838b4a 100644 --- a/tumblr/lang/hu/strings.php +++ b/tumblr/lang/hu/strings.php @@ -9,12 +9,15 @@ $a->strings['Permission denied.'] = 'Engedély megtagadva.'; $a->strings['Save Settings'] = 'Beállítások mentése'; $a->strings['Consumer Key'] = 'Felhasználói kulcs'; $a->strings['Consumer Secret'] = 'Felhasználói titok'; -$a->strings['You are now authenticated to tumblr.'] = 'Most már hitelesítve van a Tumblr-hez.'; -$a->strings['return to the connector page'] = 'visszatérés a csatlakozó oldalára'; -$a->strings['Post to Tumblr'] = 'Beküldése a Tumblr-re'; +$a->strings['Maximum tags'] = 'Legtöbb címke'; +$a->strings['Maximum number of tags that a user can follow. Enter 0 to deactivate the feature.'] = 'A címkék legnagyobb száma, amit egy felhasználó követhet. Adjon meg 0 értéket a funkció kikapcsolásához.'; $a->strings['Post to page:'] = 'Beküldés az oldalra:'; $a->strings['(Re-)Authenticate your tumblr page'] = 'A Tumblr-oldal (újra)hitelesítése'; $a->strings['You are not authenticated to tumblr'] = 'Nincs hitelesítve van a Tumblr-hez'; $a->strings['Enable Tumblr Post Addon'] = 'A Tumblr-beküldő bővítmény engedélyezése'; $a->strings['Post to Tumblr by default'] = 'Beküldés a Tumblr-re alapértelmezetten'; -$a->strings['Tumblr Export'] = 'Tumblr exportálás'; +$a->strings['Import the remote timeline'] = 'A távoli idővonal importálása'; +$a->strings['Subscribed tags'] = 'Feliratkozott címkék'; +$a->strings['Comma separated list of up to %d tags that will be imported additionally to the timeline'] = 'Legfeljebb %d címke vesszővel elválasztott listája, amelyek szintén importálásra kerülnek az idővonalon felül'; +$a->strings['Tumblr Import/Export'] = 'Tumblr importálás és exportálás'; +$a->strings['Post to Tumblr'] = 'Beküldése a Tumblr-re'; From 654a9da2975d222981cafa186708fe479a4ad5d5 Mon Sep 17 00:00:00 2001 From: Michael Date: Tue, 23 May 2023 05:45:18 +0000 Subject: [PATCH 2/6] Bluesky: readme is added --- bluesky/README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 bluesky/README.md diff --git a/bluesky/README.md b/bluesky/README.md new file mode 100644 index 00000000..b6040d31 --- /dev/null +++ b/bluesky/README.md @@ -0,0 +1,10 @@ +Bluesky Addon +============== + +This addon currently supports posting to Bluesky. +The import is under development and will hopefully come soon. + +No setup is needed for the admins to make it work for their users. + +Bluesky itself is under development as well. It is planned to make it decentral. +The addon is prepared to support different servers. But it isn't enabled yet. \ No newline at end of file From e19fafa918f0faba38a35045d40db144a2b59ddc Mon Sep 17 00:00:00 2001 From: Michael Date: Wed, 24 May 2023 06:09:25 +0000 Subject: [PATCH 3/6] Updated readme --- bluesky/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bluesky/README.md b/bluesky/README.md index b6040d31..bf900fcd 100644 --- a/bluesky/README.md +++ b/bluesky/README.md @@ -1,8 +1,7 @@ Bluesky Addon ============== -This addon currently supports posting to Bluesky. -The import is under development and will hopefully come soon. +This addon supports posting to and receiving posts from Bluesky. No setup is needed for the admins to make it work for their users. From c45c163471ff4ddacde5aabbabb7c97d3ab97092 Mon Sep 17 00:00:00 2001 From: Michael Date: Fri, 26 May 2023 20:54:00 +0000 Subject: [PATCH 4/6] Bluesly: Improved import and export --- bluesky/bluesky.php | 314 +++++++++++++++++++++++++++++++++++++------- 1 file changed, 265 insertions(+), 49 deletions(-) diff --git a/bluesky/bluesky.php b/bluesky/bluesky.php index f17f8ec1..dd56f9a6 100644 --- a/bluesky/bluesky.php +++ b/bluesky/bluesky.php @@ -6,22 +6,21 @@ * Author: Michael Vogel * * @todo - * Piece of cake? - * - Process facets - * - create facets - * - * Possible but less important: - * - Block, unblock, mute and unmute contacts - * - * Need inspiration: - * - alternate link for contacts - * - plink for posts + * Nice to have: + * - Probing for contacts * * Need more information: * - only fetch new posts - * - detect incoming reshares * - detect contact relations * - receive likes + * - follow contacts + * - unfollow contacts + * + * Possible but less important: + * - Block contacts + * - unblock contacts + * - mute contacts + * - unmute contacts */ use Friendica\Content\Text\BBCode; @@ -43,8 +42,10 @@ use Friendica\Network\HTTPClient\Client\HttpClientAccept; use Friendica\Network\HTTPClient\Client\HttpClientOptions; use Friendica\Protocol\Activity; use Friendica\Util\DateTimeFormat; +use Friendica\Util\Strings; -define('BLUESKY_DEFAULT_POLL_INTERVAL', 10); // given in minutes +const BLUESKY_DEFAULT_POLL_INTERVAL = 10; // given in minutes +const BLUESKY_HOST = 'https://bsky.app'; // Hard wired until Bluesky will run on multiple systems function bluesky_install() { @@ -64,7 +65,7 @@ function bluesky_install() // Hook::register('unblock', __FILE__, 'bluesky_unblock'); Hook::register('check_item_notification', __FILE__, 'bluesky_check_item_notification'); // Hook::register('probe_detect', __FILE__, 'bluesky_probe_detect'); - // Hook::register('item_by_link', __FILE__, 'bluesky_item_by_link'); + Hook::register('item_by_link', __FILE__, 'bluesky_item_by_link'); } function bluesky_load_config(ConfigFileManager $loader) @@ -83,6 +84,41 @@ function bluesky_check_item_notification(array &$notification_data) } } +function bluesky_item_by_link(array &$hookData) +{ + // Don't overwrite an existing result + if (isset($hookData['item_id'])) { + return; + } + + $token = bluesky_get_token($hookData['uid']); + if (empty($token)) { + return; + } + + if (!preg_match('#^' . BLUESKY_HOST . '/profile/(.+)/post/(.+)#', $hookData['uri'], $matches)) { + return; + } + + $did = bluesky_get_did($hookData['uid'], $matches[1]); + if (empty($did)) { + return; + } + + Logger::debug('Found bluesky post', ['url' => $hookData['uri'], 'handle' => $matches[1], 'did' => $did, 'cid' => $matches[2]]); + + $uri = 'at://' . $did . '/app.bsky.feed.post/' . $matches[2]; + + $uri = bluesky_fetch_missing_post($uri, $hookData['uid'], 0, true); + Logger::debug('Got post', ['profile' => $matches[1], 'cid' => $matches[2], 'result' => $uri]); + if (!empty($uri)) { + $item = Post::selectFirst(['id'], ['uri' => $uri, 'uid' => $hookData['uid']]); + if (!empty($item['id'])) { + $hookData['item_id'] = $item['id']; + } + } +} + function bluesky_settings(array &$data) { if (!DI::userSession()->getLocalUserId()) { @@ -141,7 +177,7 @@ function bluesky_settings_post(array &$b) if (!empty($host) && !empty($handle)) { if (empty($old_did) || $old_host != $host || $old_handle != $handle) { - DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'bluesky', 'did', bluesky_get_did(DI::userSession()->getLocalUserId())); + DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'bluesky', 'did', bluesky_get_did(DI::userSession()->getLocalUserId(), DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'bluesky', 'handle'))); } } else { DI::pConfig()->delete(DI::userSession()->getLocalUserId(), 'bluesky', 'did'); @@ -150,7 +186,6 @@ function bluesky_settings_post(array &$b) if (!empty($_POST['bluesky_password'])) { bluesky_create_token(DI::userSession()->getLocalUserId(), $_POST['bluesky_password']); } - } function bluesky_jot_nets(array &$jotnets_fields) @@ -334,7 +369,7 @@ function bluesky_create_activity(array $item, stdClass $parent = null) 'createdAt' => DateTimeFormat::utcNow(DateTimeFormat::ATOM), '$type' => 'app.bsky.feed.like' ]; - + $post = [ 'collection' => 'app.bsky.feed.like', 'repo' => $did, @@ -373,15 +408,23 @@ function bluesky_create_post(array $item, stdClass $root = null, stdClass $paren } $did = DI::pConfig()->get($uid, 'bluesky', 'did'); + $urls = bluesky_get_urls($item['body']); $msg = Plaintext::getPost($item, 300, false, BBCode::CONNECTORS); foreach ($msg['parts'] as $key => $part) { + + $facets = bluesky_get_facets($part, $urls); + $record = [ - 'text' => $part, + 'text' => $facets['body'], 'createdAt' => DateTimeFormat::utcNow(DateTimeFormat::ATOM), '$type' => 'app.bsky.feed.post' ]; + if (!empty($facets['facets'])) { + $record['facets'] = $facets['facets']; + } + if (!empty($root)) { $record['reply'] = ['root' => $root, 'parent' => $parent]; } @@ -412,6 +455,63 @@ function bluesky_create_post(array $item, stdClass $root = null, stdClass $paren } } +function bluesky_get_urls(string $body): array +{ + // Remove all hashtags and mentions + $body = preg_replace("/([#@!])\[url\=(.*?)\](.*?)\[\/url\]/ism", '', $body); + + $urls = []; + + // Search for pure links + if (preg_match_all("/\[url\](https?:.*?)\[\/url\]/ism", $body, $matches)) { + foreach ($matches[1] as $url) { + $urls[] = $url; + } + } + + // Search for links with descriptions + if (preg_match_all("/\[url\=(https?:.*?)\].*?\[\/url\]/ism", $body, $matches)) { + foreach ($matches[1] as $url) { + $urls[] = $url; + } + } + return $urls; +} + +function bluesky_get_facets(string $body, array $urls): array +{ + $facets = []; + + foreach ($urls as $url) { + $pos = strpos($body, $url); + if ($pos === false) { + continue; + } + if ($pos > 0) { + $prefix = substr($body, 0, $pos); + } else { + $prefix = ''; + } + $linktext = Strings::getStyledURL($url); + $body = $prefix . $linktext . substr($body, $pos + strlen($url)); + + $facet = new stdClass; + $facet->index = new stdClass; + $facet->index->byteEnd = $pos + strlen($linktext); + $facet->index->byteStart = $pos; + + $feature = new stdClass; + $feature->uri = $url; + $type = '$type'; + $feature->$type = 'app.bsky.richtext.facet#link'; + + $facet->features = [$feature]; + $facets[] = $facet; + } + + return ['facets' => $facets, 'body' => $body]; +} + function bluesky_add_embed(int $uid, array $msg, array $record): array { if (($msg['type'] != 'link') && !empty($msg['images'])) { @@ -484,12 +584,55 @@ function bluesky_fetch_timeline(int $uid) foreach (array_reverse($data->feed) as $entry) { bluesky_process_post($entry->post, $uid); + if (!empty($entry->reason)) { + bluesky_process_reason($entry->reason, bluesky_get_uri($entry->post), $uid); + } } // @todo Support paging // [cursor] => 1684670516000::bafyreidq3ilwslmlx72jf5vrk367xcc63s6lrhzlyup2bi3zwcvso6w2vi } +function bluesky_process_reason(stdClass $reason, string $uri, int $uid) +{ + $type = '$type'; + if ($reason->$type != 'app.bsky.feed.defs#reasonRepost') { + return; + } + + $contact = bluesky_get_contact($reason->by, $uid); + + $item = [ + 'network' => Protocol::BLUESKY, + 'uid' => $uid, + 'wall' => false, + 'uri' => $reason->by->did . '/app.bsky.feed.repost/' . $reason->indexedAt, + 'private' => Item::UNLISTED, + 'verb' => Activity::POST, + 'contact-id' => $contact['id'], + 'author-name' => $contact['name'], + 'author-link' => $contact['url'], + 'author-avatar' => $contact['avatar'], + 'verb' => Activity::ANNOUNCE, + 'body' => Activity::ANNOUNCE, + 'gravity' => Item::GRAVITY_ACTIVITY, + 'object-type' => Activity\ObjectType::NOTE, + 'thr-parent' => $uri, + ]; + + if (Post::exists(['uri' => $item['uri'], 'uid' => $uid])) { + return; + } + + $item['owner-name'] = $item['author-name']; + $item['owner-link'] = $item['author-link']; + $item['owner-avatar'] = $item['author-avatar']; + if (Item::insert($item)) { + $cdata = Contact::getPublicAndUserContactID($contact['id'], $uid); + Item::update(['post-reason' => Item::PR_ANNOUNCEMENT, 'causer-id' => $cdata['public']], ['uri' => $uri, 'uid' => $uid]); + } +} + function bluesky_process_post(stdClass $post, int $uid): int { $uri = bluesky_get_uri($post); @@ -512,6 +655,10 @@ function bluesky_process_post(stdClass $post, int $uid): int function bluesky_get_header(stdClass $post, string $uri, int $uid): array { + $parts = bluesky_get_uri_parts($uri); + if (empty($post->author)) { + return []; + } $contact = bluesky_get_contact($post->author, $uid); $item = [ 'network' => Protocol::BLUESKY, @@ -525,7 +672,7 @@ function bluesky_get_header(stdClass $post, string $uri, int $uid): array 'author-name' => $contact['name'], 'author-link' => $contact['url'], 'author-avatar' => $contact['avatar'], - // 'plink' => '', @todo Path to a web representation + 'plink' => $contact['alias'] . '/post/' . $parts->rkey, ]; $item['uri-id'] = ItemURI::getIdByURI($uri); @@ -540,22 +687,59 @@ function bluesky_get_content(array $item, stdClass $record, int $uid): array { if (!empty($record->reply)) { $item['parent-uri'] = bluesky_get_uri($record->reply->root); - bluesky_fetch_missing_post($item['parent-uri'], $uid); + $item['parent-uri'] = bluesky_fetch_missing_post($item['parent-uri'], $uid, $item['contact-id']); $item['thr-parent'] = bluesky_get_uri($record->reply->parent); - bluesky_fetch_missing_post($item['thr-parent'], $uid); + $item['thr-parent'] = bluesky_fetch_missing_post($item['thr-parent'], $uid, $item['contact-id']); } - $body = $record->text; - - if (!empty($record->facets)) { - // @todo add Links - } - - $item['body'] = $body; + $item['body'] = bluesky_get_text($record, $uid); $item['created'] = DateTimeFormat::utc($record->createdAt, DateTimeFormat::MYSQL); return $item; } +function bluesky_get_text(stdClass $record, int $uid): string +{ + $text = $record->text; + + if (empty($record->facets)) { + return $text; + } + + $facets = []; + foreach ($record->facets as $facet) { + $facets[$facet->index->byteStart] = $facet; + } + krsort($facets); + + foreach ($facets as $facet) { + $prefix = substr($text, 0, $facet->index->byteStart); + $linktext = substr($text, $facet->index->byteStart, $facet->index->byteEnd - $facet->index->byteStart); + $suffix = substr($text, $facet->index->byteEnd); + + $url = ''; + + foreach ($facet->features as $feature) { + if (!empty($feature->uri)) { + $url = $feature->uri; + } + if (!empty($feature->did)) { + $contact = Contact::selectFirst(['id'], ['nurl' => $feature->did, 'uid' => [0, $uid]]); + if (!empty($contact['id'])) { + $url = DI::baseUrl() . '/contact/' . $contact['id']; + if (substr($linktext, 0, 1) == '@') { + $prefix .= '@'; + $linktext = substr($linktext, 1); + } + } + } + } + if (!empty($url)) { + $text = $prefix . '[url=' . $url . ']' . $linktext . '[/url]' . $suffix; + } + } + return $text; +} + function bluesky_add_media(stdClass $embed, array $item): array { if (!empty($embed->images)) { @@ -570,7 +754,8 @@ function bluesky_add_media(stdClass $embed, array $item): array Post\Media::insert($media); } } elseif (!empty($embed->external)) { - $media = ['uri-id' => $item['uri-id'], + $media = [ + 'uri-id' => $item['uri-id'], 'type' => Post\Media::HTML, 'url' => $embed->external->uri, 'name' => $embed->external->title, @@ -582,15 +767,17 @@ function bluesky_add_media(stdClass $embed, array $item): array $shared = Post::selectFirst(['uri-id'], ['uri' => $uri, 'uid' => $item['uid']]); if (empty($shared)) { $shared = bluesky_get_header($embed->record, $uri, 0); - $shared = bluesky_get_content($shared, $embed->record->value, $item['uid']); + if (!empty($shared)) { + $shared = bluesky_get_content($shared, $embed->record->value, $item['uid']); - if (!empty($embed->record->embeds)) { - foreach ($embed->record->embeds as $single) { - $shared = bluesky_add_media($single, $shared); + if (!empty($embed->record->embeds)) { + foreach ($embed->record->embeds as $single) { + $shared = bluesky_add_media($single, $shared); + } } + $id = Item::insert($shared); + $shared = Post::selectFirst(['uri-id'], ['id' => $id]); } - $id = Item::insert($shared); - $shared = Post::selectFirst(['uri-id'], ['id' => $id]); } if (!empty($shared)) { $item['quote-uri-id'] = $shared['uri-id']; @@ -644,30 +831,54 @@ function bluesky_get_uri_parts(string $uri): ?stdClass return $class; } -function bluesky_fetch_missing_post(string $uri, int $uid) +function bluesky_fetch_missing_post(string $uri, int $uid, int $causer, bool $original = false): string { if (Post::exists(['uri' => $uri, 'uid' => [$uid, 0]])) { Logger::debug('Post exists', ['uri' => $uri]); - return; + return $uri; + } + + $reply = Post::selectFirst(['uri'], ['extid' => $uri, 'uid' => [$uid, 0]]); + if (!empty($reply['uri'])) { + return $reply['uri']; } Logger::debug('Fetch missing post', ['uri' => $uri]); - $class = bluesky_get_uri_class($uri); - - $data = bluesky_get($uid, '/xrpc/app.bsky.feed.getPosts?uris=' . $class->uri, HttpClientAccept::JSON, [HttpClientOptions::HEADERS => ['Authorization' => ['Bearer ' . bluesky_get_token($uid)]]]); + if (!$original) { + $class = bluesky_get_uri_class($uri); + $fetch_uri = $class->uri; + } else { + $fetch_uri = $uri; + } + + $data = bluesky_get($uid, '/xrpc/app.bsky.feed.getPosts?uris=' . urlencode($fetch_uri), HttpClientAccept::JSON, [HttpClientOptions::HEADERS => ['Authorization' => ['Bearer ' . bluesky_get_token($uid)]]]); if (empty($data)) { - return; + return ''; + } + + if ($causer != 0) { + $cdata = Contact::getPublicAndUserContactID($causer, $uid); } foreach ($data->posts as $post) { + $uri = bluesky_get_uri($post); $item = bluesky_get_header($post, $uri, $uid); $item = bluesky_get_content($item, $post->record, $uid); + + $item['post-reason'] = Item::PR_FETCHED; + + if (!empty($cdata['public'])) { + $item['causer-id'] = $cdata['public']; + } + if (!empty($post->embed)) { $item = bluesky_add_media($post->embed, $item); } $id = Item::insert($item); Logger::debug('Stored item', ['id' => $id, 'uri' => $uri]); } + + return $uri; } function bluesky_get_contact(stdClass $author, int $uid): array @@ -675,9 +886,10 @@ function bluesky_get_contact(stdClass $author, int $uid): array $condition = ['network' => Protocol::BLUESKY, 'uid' => $uid, 'url' => $author->did]; $fields = [ - 'name' => $author->displayName, - 'nick' => $author->handle, - 'addr' => $author->handle, + 'alias' => BLUESKY_HOST . '/profile/' . $author->handle, + 'name' => $author->displayName, + 'nick' => $author->handle, + 'addr' => $author->handle, ]; $contact = Contact::selectFirst([], $condition); @@ -686,7 +898,7 @@ function bluesky_get_contact(stdClass $author, int $uid): array $cid = bluesky_insert_contact($author, $uid); } else { $cid = $contact['id']; - if ($fields['name'] != $contact['name'] || $fields['nick'] != $contact['nick'] || $fields['addr'] != $contact['addr']) { + if ($fields['alias'] != $contact['alias'] || $fields['name'] != $contact['name'] || $fields['nick'] != $contact['nick'] || $fields['addr'] != $contact['addr']) { Contact::update($fields, ['id' => $cid]); } } @@ -698,7 +910,7 @@ function bluesky_get_contact(stdClass $author, int $uid): array $pcid = bluesky_insert_contact($author, 0); } else { $pcid = $contact['id']; - if ($fields['name'] != $contact['name'] || $fields['nick'] != $contact['nick'] || $fields['addr'] != $contact['addr']) { + if ($fields['alias'] != $contact['alias'] || $fields['name'] != $contact['name'] || $fields['nick'] != $contact['nick'] || $fields['addr'] != $contact['addr']) { Contact::update($fields, ['id' => $pcid]); } } @@ -726,7 +938,7 @@ function bluesky_insert_contact(stdClass $author, int $uid) 'pending' => false, 'url' => $author->did, 'nurl' => $author->did, - // 'alias' => '', @todo Path to a web representation + 'alias' => BLUESKY_HOST . '/profile/' . $author->handle, 'name' => $author->displayName, 'nick' => $author->handle, 'addr' => $author->handle, @@ -742,13 +954,17 @@ function bluesky_update_contact(stdClass $author, int $uid, int $cid, int $pcid) } $fields = [ + 'alias' => BLUESKY_HOST . '/profile/' . $data->handle, 'name' => $data->displayName, 'nick' => $data->handle, 'addr' => $data->handle, - 'about' => HTML::toBBCode($data->description), 'updated' => DateTimeFormat::utcNow(DateTimeFormat::MYSQL), ]; + if (!empty($data->description)) { + $fields['about'] = HTML::toBBCode($data->description); + } + if (!empty($data->banner)) { $fields['header'] = $data->banner; } @@ -757,9 +973,9 @@ function bluesky_update_contact(stdClass $author, int $uid, int $cid, int $pcid) Contact::update($fields, ['id' => $pcid]); } -function bluesky_get_did(int $uid): string +function bluesky_get_did(int $uid, string $handle): string { - $data = bluesky_get($uid, '/xrpc/com.atproto.identity.resolveHandle?handle=' . DI::pConfig()->get($uid, 'bluesky', 'handle')); + $data = bluesky_get($uid, '/xrpc/com.atproto.identity.resolveHandle?handle=' . $handle); if (empty($data)) { return ''; } From 82c2f8e37f2626ac5cf9352ce67f9c255410b13e Mon Sep 17 00:00:00 2001 From: andy Date: Sat, 27 May 2023 10:18:51 +0700 Subject: [PATCH 5/6] Deprecated Addon Blockem removed --- blockem/blockem.php | 230 --------------------------------- blockem/lang/C/messages.po | 45 ------- blockem/lang/ar/messages.po | 52 -------- blockem/lang/ar/strings.php | 14 -- blockem/lang/ca/messages.po | 59 --------- blockem/lang/ca/strings.php | 16 --- blockem/lang/cs/messages.po | 60 --------- blockem/lang/cs/strings.php | 16 --- blockem/lang/da-dk/messages.po | 47 ------- blockem/lang/da-dk/strings.php | 13 -- blockem/lang/de/messages.po | 50 ------- blockem/lang/de/strings.php | 13 -- blockem/lang/en-gb/messages.po | 59 --------- blockem/lang/en-gb/strings.php | 16 --- blockem/lang/en-us/messages.po | 61 --------- blockem/lang/en-us/strings.php | 16 --- blockem/lang/eo/strings.php | 10 -- blockem/lang/es/messages.po | 53 -------- blockem/lang/es/strings.php | 14 -- blockem/lang/fi-fi/messages.po | 60 --------- blockem/lang/fi-fi/strings.php | 15 --- blockem/lang/fr/messages.po | 50 ------- blockem/lang/fr/strings.php | 13 -- blockem/lang/hu/messages.po | 47 ------- blockem/lang/hu/strings.php | 13 -- blockem/lang/is/strings.php | 10 -- blockem/lang/it/messages.po | 59 --------- blockem/lang/it/strings.php | 16 --- blockem/lang/nb-no/strings.php | 10 -- blockem/lang/nl/messages.po | 60 --------- blockem/lang/nl/strings.php | 16 --- blockem/lang/pl/messages.po | 47 ------- blockem/lang/pl/strings.php | 13 -- blockem/lang/pt-br/strings.php | 10 -- blockem/lang/ro/messages.po | 52 -------- blockem/lang/ro/strings.php | 15 --- blockem/lang/ru/messages.po | 60 --------- blockem/lang/ru/strings.php | 16 --- blockem/lang/sv/messages.po | 47 ------- blockem/lang/sv/strings.php | 13 -- blockem/lang/zh-cn/strings.php | 10 -- blockem/templates/settings.tpl | 1 - 42 files changed, 1497 deletions(-) delete mode 100644 blockem/blockem.php delete mode 100644 blockem/lang/C/messages.po delete mode 100644 blockem/lang/ar/messages.po delete mode 100644 blockem/lang/ar/strings.php delete mode 100644 blockem/lang/ca/messages.po delete mode 100644 blockem/lang/ca/strings.php delete mode 100644 blockem/lang/cs/messages.po delete mode 100644 blockem/lang/cs/strings.php delete mode 100644 blockem/lang/da-dk/messages.po delete mode 100644 blockem/lang/da-dk/strings.php delete mode 100644 blockem/lang/de/messages.po delete mode 100644 blockem/lang/de/strings.php delete mode 100644 blockem/lang/en-gb/messages.po delete mode 100644 blockem/lang/en-gb/strings.php delete mode 100644 blockem/lang/en-us/messages.po delete mode 100644 blockem/lang/en-us/strings.php delete mode 100644 blockem/lang/eo/strings.php delete mode 100644 blockem/lang/es/messages.po delete mode 100644 blockem/lang/es/strings.php delete mode 100644 blockem/lang/fi-fi/messages.po delete mode 100644 blockem/lang/fi-fi/strings.php delete mode 100644 blockem/lang/fr/messages.po delete mode 100644 blockem/lang/fr/strings.php delete mode 100644 blockem/lang/hu/messages.po delete mode 100644 blockem/lang/hu/strings.php delete mode 100644 blockem/lang/is/strings.php delete mode 100644 blockem/lang/it/messages.po delete mode 100644 blockem/lang/it/strings.php delete mode 100644 blockem/lang/nb-no/strings.php delete mode 100644 blockem/lang/nl/messages.po delete mode 100644 blockem/lang/nl/strings.php delete mode 100644 blockem/lang/pl/messages.po delete mode 100644 blockem/lang/pl/strings.php delete mode 100644 blockem/lang/pt-br/strings.php delete mode 100644 blockem/lang/ro/messages.po delete mode 100644 blockem/lang/ro/strings.php delete mode 100644 blockem/lang/ru/messages.po delete mode 100644 blockem/lang/ru/strings.php delete mode 100644 blockem/lang/sv/messages.po delete mode 100644 blockem/lang/sv/strings.php delete mode 100644 blockem/lang/zh-cn/strings.php delete mode 100644 blockem/templates/settings.tpl diff --git a/blockem/blockem.php b/blockem/blockem.php deleted file mode 100644 index c1d97e8e..00000000 --- a/blockem/blockem.php +++ /dev/null @@ -1,230 +0,0 @@ - - * Author: Roland Haeder - * Status: unsupported - */ - -use Friendica\App; -use Friendica\Core\Hook; -use Friendica\Core\Renderer; -use Friendica\DI; -use Friendica\Util\Strings; - -global $blockem_words; - -function blockem_install() -{ - Hook::register('prepare_body_content_filter', 'addon/blockem/blockem.php', 'blockem_prepare_body_content_filter'); - Hook::register('display_item' , 'addon/blockem/blockem.php', 'blockem_display_item'); - Hook::register('addon_settings' , 'addon/blockem/blockem.php', 'blockem_addon_settings'); - Hook::register('addon_settings_post' , 'addon/blockem/blockem.php', 'blockem_addon_settings_post'); - Hook::register('conversation_start' , 'addon/blockem/blockem.php', 'blockem_conversation_start'); - Hook::register('item_photo_menu' , 'addon/blockem/blockem.php', 'blockem_item_photo_menu'); - Hook::register('enotify_store' , 'addon/blockem/blockem.php', 'blockem_enotify_store'); -} - -function blockem_addon_settings(array &$data) -{ - if (!DI::userSession()->getLocalUserId()) { - return; - } - - $words = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'blockem', 'words', ''); - - $t = Renderer::getMarkupTemplate('settings.tpl', 'addon/blockem/'); - $html = Renderer::replaceMacros($t, [ - '$info' => DI::l10n()->t("Hides user's content by collapsing posts. Also replaces their avatar with generic image."), - '$words' => ['blockem-words', DI::l10n()->t('Comma separated profile URLS:'), $words], - ]); - - $data = [ - 'addon' => 'blockem', - 'title' => DI::l10n()->t('Blockem'), - 'html' => $html, - ]; -} - -function blockem_addon_settings_post(array &$b) -{ - if (!DI::userSession()->getLocalUserId()) { - return; - } - - if (!empty($_POST['blockem-submit'])) { - DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'blockem', 'words', trim($_POST['blockem-words'])); - } -} - -function blockem_enotify_store(array &$b) -{ - $words = DI::pConfig()->get($b['uid'], 'blockem', 'words'); - - if ($words) { - $arr = explode(',', $words); - } else { - return; - } - - $found = false; - - if (count($arr)) { - foreach ($arr as $word) { - if (!strlen(trim($word))) { - continue; - } - - if (Strings::compareLink($b['url'], $word)) { - $found = true; - break; - } - } - } - - if ($found) { - // empty out the fields - $b = []; - } -} - -function blockem_prepare_body_content_filter(array &$hook_data) -{ - if (!DI::userSession()->getLocalUserId()) { - return; - } - - $profiles_string = null; - - if (DI::userSession()->getLocalUserId()) { - $profiles_string = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'blockem', 'words'); - } - - if ($profiles_string) { - $profiles_array = explode(',', $profiles_string); - } else { - return; - } - - $found = false; - - foreach ($profiles_array as $word) { - if (Strings::compareLink($hook_data['item']['author-link'], trim($word))) { - $found = true; - break; - } - } - - if ($found) { - $hook_data['filter_reasons'][] = DI::l10n()->t('Filtered user: %s', $hook_data['item']['author-name']); - } -} - -function blockem_display_item(array &$b = null) -{ - if (!empty($b['output']['body']) && strstr($b['output']['body'], 'id="blockem-wrap-')) { - $b['output']['thumb'] = DI::baseUrl() . "/images/person-80.jpg"; - } -} - -function blockem_conversation_start(array &$b) -{ - global $blockem_words; - - if (!DI::userSession()->getLocalUserId()) { - return; - } - - $words = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'blockem', 'words'); - - if ($words) { - $blockem_words = explode(',', $words); - } - - DI::page()['htmlhead'] .= <<< EOT - - - -EOT; -} - -function blockem_item_photo_menu(array &$b) -{ - global $blockem_words; - - if (!DI::userSession()->getLocalUserId() || $b['item']['self']) { - return; - } - - $blocked = false; - $author = $b['item']['author-link']; - - if (!empty($blockem_words)) { - foreach($blockem_words as $bloke) { - if (Strings::compareLink($bloke,$author)) { - $blocked = true; - break; - } - } - } - if ($blocked) { - $b['menu'][DI::l10n()->t('Unblock Author')] = 'javascript:blockemUnblock(\'' . $author . '\');'; - } else { - $b['menu'][DI::l10n()->t('Block Author')] = 'javascript:blockemBlock(\'' . $author . '\');'; - } -} - -/** - * This is a statement rather than an actual function definition. The simple - * existence of this method is checked to figure out if the addon offers a - * module. - */ -function blockem_module() {} - -function blockem_init() -{ - if (!DI::userSession()->getLocalUserId()) { - return; - } - - $words = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'blockem', 'words'); - - if (array_key_exists('block', $_GET) && $_GET['block']) { - if (strlen($words)) { - $words .= ','; - } - - $words .= trim($_GET['block']); - } - - if (array_key_exists('unblock', $_GET) && $_GET['unblock']) { - $arr = explode(',',$words); - $newarr = []; - - if (count($arr)) { - foreach ($arr as $x) { - if (!Strings::compareLink(trim($x), trim($_GET['unblock']))) { - $newarr[] = $x; - } - } - } - - $words = implode(',', $newarr); - } - - DI::pConfig()->set(DI::userSession()->getLocalUserId(), 'blockem', 'words', $words); - exit(); -} diff --git a/blockem/lang/C/messages.po b/blockem/lang/C/messages.po deleted file mode 100644 index 64bb3fc4..00000000 --- a/blockem/lang/C/messages.po +++ /dev/null @@ -1,45 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:13-0500\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" - -#: blockem.php:39 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "" - -#: blockem.php:40 -msgid "Comma separated profile URLS:" -msgstr "" - -#: blockem.php:45 -msgid "Blockem" -msgstr "" - -#: blockem.php:120 -#, php-format -msgid "Filtered user: %s" -msgstr "" - -#: blockem.php:183 -msgid "Unblock Author" -msgstr "" - -#: blockem.php:185 -msgid "Block Author" -msgstr "" diff --git a/blockem/lang/ar/messages.po b/blockem/lang/ar/messages.po deleted file mode 100644 index c9d6d5f9..00000000 --- a/blockem/lang/ar/messages.po +++ /dev/null @@ -1,52 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# abidin toumi , 2021 -# Farida Khalaf , 2021 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-01 18:15+0100\n" -"PO-Revision-Date: 2021-10-29 08:15+0000\n" -"Last-Translator: abidin toumi \n" -"Language-Team: Arabic (http://www.transifex.com/Friendica/friendica/language/ar/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ar\n" -"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" - -#: blockem.php:42 blockem.php:46 -msgid "Blockem" -msgstr "احجبه
" - -#: blockem.php:50 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "إخفاء محتوى المستخدم عن طريق تصغير المشاركات. و استبدال الصورة الرمزية الخاصة بهم بصورة عامة." - -#: blockem.php:51 -msgid "Comma separated profile URLS:" -msgstr "عناوين الملفات الشخصية مفصولة بفواصل:" - -#: blockem.php:55 -msgid "Save Settings" -msgstr "احفظ الإعدادات" - -#: blockem.php:131 -#, php-format -msgid "Filtered user: %s" -msgstr "ترشيح المستخدم :1%s" - -#: blockem.php:190 -msgid "Unblock Author" -msgstr "ألغ الحجب عن المدون" - -#: blockem.php:192 -msgid "Block Author" -msgstr "احجب المدون" diff --git a/blockem/lang/ar/strings.php b/blockem/lang/ar/strings.php deleted file mode 100644 index 0f58fa22..00000000 --- a/blockem/lang/ar/strings.php +++ /dev/null @@ -1,14 +0,0 @@ -=3 && $n%100<=10) { return 3; } else if ($n%100>=11 && $n%100<=99) { return 4; } else { return 5; } -}} -$a->strings['Blockem'] = 'احجبه
'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'إخفاء محتوى المستخدم عن طريق تصغير المشاركات. و استبدال الصورة الرمزية الخاصة بهم بصورة عامة.'; -$a->strings['Comma separated profile URLS:'] = 'عناوين الملفات الشخصية مفصولة بفواصل:'; -$a->strings['Save Settings'] = 'احفظ الإعدادات'; -$a->strings['Filtered user: %s'] = 'ترشيح المستخدم :1%s'; -$a->strings['Unblock Author'] = 'ألغ الحجب عن المدون'; -$a->strings['Block Author'] = 'احجب المدون'; diff --git a/blockem/lang/ca/messages.po b/blockem/lang/ca/messages.po deleted file mode 100644 index 6d4c3468..00000000 --- a/blockem/lang/ca/messages.po +++ /dev/null @@ -1,59 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Joan Bar , 2019 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-17 10:23+0200\n" -"PO-Revision-Date: 2019-10-14 11:50+0000\n" -"Last-Translator: Joan Bar \n" -"Language-Team: Catalan (http://www.transifex.com/Friendica/friendica/language/ca/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ca\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:54 blockem.php:58 -msgid "Blockem" -msgstr "Blockem" - -#: blockem.php:62 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Amaga el contingut de l'usuari mitjançant la publicació col·lapsada. També substitueix el seu avatar per una imatge genèrica" - -#: blockem.php:63 -msgid "Comma separated profile URLS:" -msgstr "URL de perfil separats per comes:" - -#: blockem.php:67 -msgid "Save Settings" -msgstr "Desa la configuració" - -#: blockem.php:81 -msgid "BLOCKEM Settings saved." -msgstr "S'ha desat la configuració de BLOCKEM." - -#: blockem.php:143 -#, php-format -msgid "Filtered user: %s" -msgstr "Usuari filtrat:%s" - -#: blockem.php:202 -msgid "Unblock Author" -msgstr "Desbloca l'autor" - -#: blockem.php:204 -msgid "Block Author" -msgstr "Autor de bloc" - -#: blockem.php:244 -msgid "blockem settings updated" -msgstr "S'ha actualitzat la configuració de blockem" diff --git a/blockem/lang/ca/strings.php b/blockem/lang/ca/strings.php deleted file mode 100644 index be4deede..00000000 --- a/blockem/lang/ca/strings.php +++ /dev/null @@ -1,16 +0,0 @@ -strings['Blockem'] = 'Blockem'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Amaga el contingut de l\'usuari mitjançant la publicació col·lapsada. També substitueix el seu avatar per una imatge genèrica'; -$a->strings['Comma separated profile URLS:'] = 'URL de perfil separats per comes:'; -$a->strings['Save Settings'] = 'Desa la configuració'; -$a->strings['BLOCKEM Settings saved.'] = 'S\'ha desat la configuració de BLOCKEM.'; -$a->strings['Filtered user: %s'] = 'Usuari filtrat:%s'; -$a->strings['Unblock Author'] = 'Desbloca l\'autor'; -$a->strings['Block Author'] = 'Autor de bloc'; -$a->strings['blockem settings updated'] = 'S\'ha actualitzat la configuració de blockem'; diff --git a/blockem/lang/cs/messages.po b/blockem/lang/cs/messages.po deleted file mode 100644 index fb90a2ca..00000000 --- a/blockem/lang/cs/messages.po +++ /dev/null @@ -1,60 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Aditoo, 2018 -# michal_s , 2014 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-17 10:23+0200\n" -"PO-Revision-Date: 2018-08-18 12:25+0000\n" -"Last-Translator: Aditoo\n" -"Language-Team: Czech (http://www.transifex.com/Friendica/friendica/language/cs/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: cs\n" -"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n" - -#: blockem.php:54 blockem.php:58 -msgid "Blockem" -msgstr "Blockem" - -#: blockem.php:62 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Skrývá uživatelský obsah zabalením příspěvků. Navíc nahrazuje avatar generickým obrázkem." - -#: blockem.php:63 -msgid "Comma separated profile URLS:" -msgstr "URL adresy profilů, oddělené čárkami:" - -#: blockem.php:67 -msgid "Save Settings" -msgstr "Uložit nastavení" - -#: blockem.php:81 -msgid "BLOCKEM Settings saved." -msgstr "Nastavení BLOCKEM uložena." - -#: blockem.php:143 -#, php-format -msgid "Filtered user: %s" -msgstr "Filtrovaný uživatel: %s" - -#: blockem.php:202 -msgid "Unblock Author" -msgstr "Odblokovat autora" - -#: blockem.php:204 -msgid "Block Author" -msgstr "Zablokovat autora" - -#: blockem.php:244 -msgid "blockem settings updated" -msgstr "nastavení blockem aktualizována" diff --git a/blockem/lang/cs/strings.php b/blockem/lang/cs/strings.php deleted file mode 100644 index ac32d78f..00000000 --- a/blockem/lang/cs/strings.php +++ /dev/null @@ -1,16 +0,0 @@ -= 2 && $n <= 4 && $n % 1 == 0)) { return 1; } else if (($n % 1 != 0 )) { return 2; } else { return 3; } -}} -$a->strings['Blockem'] = 'Blockem'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Skrývá uživatelský obsah zabalením příspěvků. Navíc nahrazuje avatar generickým obrázkem.'; -$a->strings['Comma separated profile URLS:'] = 'URL adresy profilů, oddělené čárkami:'; -$a->strings['Save Settings'] = 'Uložit nastavení'; -$a->strings['BLOCKEM Settings saved.'] = 'Nastavení BLOCKEM uložena.'; -$a->strings['Filtered user: %s'] = 'Filtrovaný uživatel: %s'; -$a->strings['Unblock Author'] = 'Odblokovat autora'; -$a->strings['Block Author'] = 'Zablokovat autora'; -$a->strings['blockem settings updated'] = 'nastavení blockem aktualizována'; diff --git a/blockem/lang/da-dk/messages.po b/blockem/lang/da-dk/messages.po deleted file mode 100644 index e4a80bff..00000000 --- a/blockem/lang/da-dk/messages.po +++ /dev/null @@ -1,47 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Anton , 2022 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:13-0500\n" -"PO-Revision-Date: 2014-06-22 11:20+0000\n" -"Last-Translator: Anton , 2022\n" -"Language-Team: Danish (Denmark) (http://www.transifex.com/Friendica/friendica/language/da_DK/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: da_DK\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:39 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Skjul brugers indhold ved at kollapse deres opslag. Erstatter også deres avatar med et generisk billede." - -#: blockem.php:40 -msgid "Comma separated profile URLS:" -msgstr "Kommasepareret liste over profil-URL's:" - -#: blockem.php:45 -msgid "Blockem" -msgstr "Blokdem" - -#: blockem.php:120 -#, php-format -msgid "Filtered user: %s" -msgstr "Filtreret bruger: %s" - -#: blockem.php:183 -msgid "Unblock Author" -msgstr "Fjern blokering af forfatter" - -#: blockem.php:185 -msgid "Block Author" -msgstr "Blokér forfatter" diff --git a/blockem/lang/da-dk/strings.php b/blockem/lang/da-dk/strings.php deleted file mode 100644 index e99144ec..00000000 --- a/blockem/lang/da-dk/strings.php +++ /dev/null @@ -1,13 +0,0 @@ -strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Skjul brugers indhold ved at kollapse deres opslag. Erstatter også deres avatar med et generisk billede.'; -$a->strings['Comma separated profile URLS:'] = 'Kommasepareret liste over profil-URL\'s:'; -$a->strings['Blockem'] = 'Blokdem'; -$a->strings['Filtered user: %s'] = 'Filtreret bruger: %s'; -$a->strings['Unblock Author'] = 'Fjern blokering af forfatter'; -$a->strings['Block Author'] = 'Blokér forfatter'; diff --git a/blockem/lang/de/messages.po b/blockem/lang/de/messages.po deleted file mode 100644 index d1e2f704..00000000 --- a/blockem/lang/de/messages.po +++ /dev/null @@ -1,50 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Andreas H., 2018 -# Tobias Diekershoff , 2014 -# Tobias Diekershoff , 2018 -# Ulf Rompe , 2019 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:13-0500\n" -"PO-Revision-Date: 2021-12-22 15:27+0000\n" -"Last-Translator: Transifex Bot <>\n" -"Language-Team: German (http://www.transifex.com/Friendica/friendica/language/de/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: de\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:39 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Verbirgt Inhalte von Benutzern durch Zusammenklappen der Beiträge. Des Weiteren wird das Profilbild durch einen generischen Avatar ersetzt." - -#: blockem.php:40 -msgid "Comma separated profile URLS:" -msgstr "Komma-separierte Liste von Profil-URLs" - -#: blockem.php:45 -msgid "Blockem" -msgstr "Blockem" - -#: blockem.php:120 -#, php-format -msgid "Filtered user: %s" -msgstr "Gefilterte Person: %s" - -#: blockem.php:183 -msgid "Unblock Author" -msgstr "Autor freischalten" - -#: blockem.php:185 -msgid "Block Author" -msgstr "Autor blockieren" diff --git a/blockem/lang/de/strings.php b/blockem/lang/de/strings.php deleted file mode 100644 index 109af368..00000000 --- a/blockem/lang/de/strings.php +++ /dev/null @@ -1,13 +0,0 @@ -strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Verbirgt Inhalte von Benutzern durch Zusammenklappen der Beiträge. Des Weiteren wird das Profilbild durch einen generischen Avatar ersetzt.'; -$a->strings['Comma separated profile URLS:'] = 'Komma-separierte Liste von Profil-URLs'; -$a->strings['Blockem'] = 'Blockem'; -$a->strings['Filtered user: %s'] = 'Gefilterte Person: %s'; -$a->strings['Unblock Author'] = 'Autor freischalten'; -$a->strings['Block Author'] = 'Autor blockieren'; diff --git a/blockem/lang/en-gb/messages.po b/blockem/lang/en-gb/messages.po deleted file mode 100644 index 6bcc7b9b..00000000 --- a/blockem/lang/en-gb/messages.po +++ /dev/null @@ -1,59 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Andy H3 , 2018 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-02-09 13:00+0100\n" -"PO-Revision-Date: 2018-03-15 14:10+0000\n" -"Last-Translator: Andy H3 \n" -"Language-Team: English (United Kingdom) (http://www.transifex.com/Friendica/friendica/language/en_GB/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: en_GB\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:51 blockem.php:55 -msgid "\"Blockem\"" -msgstr "\"Blockem\"" - -#: blockem.php:59 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Hides user's content by collapsing posts. Also replaces their avatar with generic image." - -#: blockem.php:60 -msgid "Comma separated profile URLS:" -msgstr "Comma separated profile URLs:" - -#: blockem.php:64 -msgid "Save Settings" -msgstr "Save settings" - -#: blockem.php:77 -msgid "BLOCKEM Settings saved." -msgstr "Blockem settings saved." - -#: blockem.php:140 -#, php-format -msgid "Hidden content by %s - Click to open/close" -msgstr "Hidden content by %s - Reveal/hide" - -#: blockem.php:193 -msgid "Unblock Author" -msgstr "Unblock author" - -#: blockem.php:195 -msgid "Block Author" -msgstr "Block author" - -#: blockem.php:227 -msgid "blockem settings updated" -msgstr "Blockem settings updated" diff --git a/blockem/lang/en-gb/strings.php b/blockem/lang/en-gb/strings.php deleted file mode 100644 index 0b9d9e4b..00000000 --- a/blockem/lang/en-gb/strings.php +++ /dev/null @@ -1,16 +0,0 @@ -strings['"Blockem"'] = '"Blockem"'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'; -$a->strings['Comma separated profile URLS:'] = 'Comma separated profile URLs:'; -$a->strings['Save Settings'] = 'Save settings'; -$a->strings['BLOCKEM Settings saved.'] = 'Blockem settings saved.'; -$a->strings['Hidden content by %s - Click to open/close'] = 'Hidden content by %s - Reveal/hide'; -$a->strings['Unblock Author'] = 'Unblock author'; -$a->strings['Block Author'] = 'Block author'; -$a->strings['blockem settings updated'] = 'Blockem settings updated'; diff --git a/blockem/lang/en-us/messages.po b/blockem/lang/en-us/messages.po deleted file mode 100644 index 1d64620b..00000000 --- a/blockem/lang/en-us/messages.po +++ /dev/null @@ -1,61 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Adam Clark , 2018 -# Andy H3 , 2018 -# R C , 2018 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-04-01 11:11-0400\n" -"PO-Revision-Date: 2018-06-13 02:40+0000\n" -"Last-Translator: R C \n" -"Language-Team: English (United States) (http://www.transifex.com/Friendica/friendica/language/en_US/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: en_US\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:52 blockem.php:56 -msgid "\"Blockem\"" -msgstr "Blockem" - -#: blockem.php:60 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Hides user's content by collapsing posts. Also replaces their avatar with generic image." - -#: blockem.php:61 -msgid "Comma separated profile URLS:" -msgstr "Comma-separated profile URLs:" - -#: blockem.php:65 -msgid "Save Settings" -msgstr "Save settings" - -#: blockem.php:78 -msgid "BLOCKEM Settings saved." -msgstr "Blockem settings saved." - -#: blockem.php:136 -#, php-format -msgid "Filtered user: %s" -msgstr "Filtered user: %s" - -#: blockem.php:189 -msgid "Unblock Author" -msgstr "Unblock author" - -#: blockem.php:191 -msgid "Block Author" -msgstr "Block author" - -#: blockem.php:223 -msgid "blockem settings updated" -msgstr "Blockem settings updated" diff --git a/blockem/lang/en-us/strings.php b/blockem/lang/en-us/strings.php deleted file mode 100644 index fd76a1bc..00000000 --- a/blockem/lang/en-us/strings.php +++ /dev/null @@ -1,16 +0,0 @@ -strings['"Blockem"'] = 'Blockem'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'; -$a->strings['Comma separated profile URLS:'] = 'Comma-separated profile URLs:'; -$a->strings['Save Settings'] = 'Save settings'; -$a->strings['BLOCKEM Settings saved.'] = 'Blockem settings saved.'; -$a->strings['Filtered user: %s'] = 'Filtered user: %s'; -$a->strings['Unblock Author'] = 'Unblock author'; -$a->strings['Block Author'] = 'Block author'; -$a->strings['blockem settings updated'] = 'Blockem settings updated'; diff --git a/blockem/lang/eo/strings.php b/blockem/lang/eo/strings.php deleted file mode 100644 index b6116507..00000000 --- a/blockem/lang/eo/strings.php +++ /dev/null @@ -1,10 +0,0 @@ -strings["\"Blockem\" Settings"] = "\"Blockem\" Agordoj"; -$a->strings["Comma separated profile URLS to block"] = "Blokotaj URL adresoj, disigita per komo"; -$a->strings["Submit"] = "Sendi"; -$a->strings["BLOCKEM Settings saved."] = "Konservis Agordojn de BLOCKEM."; -$a->strings["Blocked %s - Click to open/close"] = "%s blokita - Klaku por malfermi/fermi"; -$a->strings["Unblock Author"] = "Malbloki Aŭtoron"; -$a->strings["Block Author"] = "Bloki Aŭtoron"; -$a->strings["blockem settings updated"] = "Ĝisdatigis la blockem agordojn"; diff --git a/blockem/lang/es/messages.po b/blockem/lang/es/messages.po deleted file mode 100644 index 0b59921e..00000000 --- a/blockem/lang/es/messages.po +++ /dev/null @@ -1,53 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Albert, 2018 -# Senex Petrovic , 2021 -# Tupambae.org, 2016 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-02-01 18:15+0100\n" -"PO-Revision-Date: 2021-04-01 09:45+0000\n" -"Last-Translator: Senex Petrovic \n" -"Language-Team: Spanish (http://www.transifex.com/Friendica/friendica/language/es/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: es\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:42 blockem.php:46 -msgid "Blockem" -msgstr "Blockem (Bloquealos)" - -#: blockem.php:50 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Oculta el contenido del usuario al colapsar las publicaciones. También reemplaza su avatar con una imagen genérica." - -#: blockem.php:51 -msgid "Comma separated profile URLS:" -msgstr "URLs de perfil separadas por comas:" - -#: blockem.php:55 -msgid "Save Settings" -msgstr "Guardar configuración" - -#: blockem.php:131 -#, php-format -msgid "Filtered user: %s" -msgstr "Usuario filtrado: %s" - -#: blockem.php:190 -msgid "Unblock Author" -msgstr "Desbloquear autor" - -#: blockem.php:192 -msgid "Block Author" -msgstr "Bloquear autor" diff --git a/blockem/lang/es/strings.php b/blockem/lang/es/strings.php deleted file mode 100644 index 7d1de601..00000000 --- a/blockem/lang/es/strings.php +++ /dev/null @@ -1,14 +0,0 @@ -strings['Blockem'] = 'Blockem (Bloquealos)'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Oculta el contenido del usuario al colapsar las publicaciones. También reemplaza su avatar con una imagen genérica.'; -$a->strings['Comma separated profile URLS:'] = 'URLs de perfil separadas por comas:'; -$a->strings['Save Settings'] = 'Guardar configuración'; -$a->strings['Filtered user: %s'] = 'Usuario filtrado: %s'; -$a->strings['Unblock Author'] = 'Desbloquear autor'; -$a->strings['Block Author'] = 'Bloquear autor'; diff --git a/blockem/lang/fi-fi/messages.po b/blockem/lang/fi-fi/messages.po deleted file mode 100644 index 4fac9aa7..00000000 --- a/blockem/lang/fi-fi/messages.po +++ /dev/null @@ -1,60 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Kris, 2018 -# Kris, 2018 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-04-01 11:11-0400\n" -"PO-Revision-Date: 2018-04-18 14:44+0000\n" -"Last-Translator: Kris\n" -"Language-Team: Finnish (Finland) (http://www.transifex.com/Friendica/friendica/language/fi_FI/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: fi_FI\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:52 blockem.php:56 -msgid "\"Blockem\"" -msgstr "\"Blockem\"" - -#: blockem.php:60 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "" - -#: blockem.php:61 -msgid "Comma separated profile URLS:" -msgstr "Profiilien URL-osoitteet pilkulla erotettuina:" - -#: blockem.php:65 -msgid "Save Settings" -msgstr "Tallenna asetukset" - -#: blockem.php:78 -msgid "BLOCKEM Settings saved." -msgstr "Blockem -asetukset tallennettu" - -#: blockem.php:136 -#, php-format -msgid "Filtered user: %s" -msgstr "Suodatettu käyttäjä: %s" - -#: blockem.php:189 -msgid "Unblock Author" -msgstr "Poista kirjoittaja estolistalta" - -#: blockem.php:191 -msgid "Block Author" -msgstr "Lisää kirjoittaja estolistalle" - -#: blockem.php:223 -msgid "blockem settings updated" -msgstr "blockem -asetukset päivitetty" diff --git a/blockem/lang/fi-fi/strings.php b/blockem/lang/fi-fi/strings.php deleted file mode 100644 index d15b4a56..00000000 --- a/blockem/lang/fi-fi/strings.php +++ /dev/null @@ -1,15 +0,0 @@ -strings['"Blockem"'] = '"Blockem"'; -$a->strings['Comma separated profile URLS:'] = 'Profiilien URL-osoitteet pilkulla erotettuina:'; -$a->strings['Save Settings'] = 'Tallenna asetukset'; -$a->strings['BLOCKEM Settings saved.'] = 'Blockem -asetukset tallennettu'; -$a->strings['Filtered user: %s'] = 'Suodatettu käyttäjä: %s'; -$a->strings['Unblock Author'] = 'Poista kirjoittaja estolistalta'; -$a->strings['Block Author'] = 'Lisää kirjoittaja estolistalle'; -$a->strings['blockem settings updated'] = 'blockem -asetukset päivitetty'; diff --git a/blockem/lang/fr/messages.po b/blockem/lang/fr/messages.po deleted file mode 100644 index d3617290..00000000 --- a/blockem/lang/fr/messages.po +++ /dev/null @@ -1,50 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Hypolite Petovan , 2016 -# Marie Olive , 2018 -# StefOfficiel , 2015 -# Vladimir Núñez , 2018 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:13-0500\n" -"PO-Revision-Date: 2014-06-22 11:20+0000\n" -"Last-Translator: Vladimir Núñez , 2018\n" -"Language-Team: French (http://www.transifex.com/Friendica/friendica/language/fr/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: fr\n" -"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n" - -#: blockem.php:39 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Cache le contenu de l'utilisateur en contractant les publications. Remplace aussi leur avatar par une image générique." - -#: blockem.php:40 -msgid "Comma separated profile URLS:" -msgstr "URLs de profil séparées par des virgules:" - -#: blockem.php:45 -msgid "Blockem" -msgstr "Bloquez-les" - -#: blockem.php:120 -#, php-format -msgid "Filtered user: %s" -msgstr "Utilisateur filtré:%s" - -#: blockem.php:183 -msgid "Unblock Author" -msgstr "Débloquer l'Auteur" - -#: blockem.php:185 -msgid "Block Author" -msgstr "Bloquer l'Auteur" diff --git a/blockem/lang/fr/strings.php b/blockem/lang/fr/strings.php deleted file mode 100644 index 26b86f24..00000000 --- a/blockem/lang/fr/strings.php +++ /dev/null @@ -1,13 +0,0 @@ -strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Cache le contenu de l\'utilisateur en contractant les publications. Remplace aussi leur avatar par une image générique.'; -$a->strings['Comma separated profile URLS:'] = 'URLs de profil séparées par des virgules:'; -$a->strings['Blockem'] = 'Bloquez-les'; -$a->strings['Filtered user: %s'] = 'Utilisateur filtré:%s'; -$a->strings['Unblock Author'] = 'Débloquer l\'Auteur'; -$a->strings['Block Author'] = 'Bloquer l\'Auteur'; diff --git a/blockem/lang/hu/messages.po b/blockem/lang/hu/messages.po deleted file mode 100644 index 3a29b820..00000000 --- a/blockem/lang/hu/messages.po +++ /dev/null @@ -1,47 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Balázs Úr, 2020 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:13-0500\n" -"PO-Revision-Date: 2014-06-22 11:20+0000\n" -"Last-Translator: Balázs Úr, 2020\n" -"Language-Team: Hungarian (http://www.transifex.com/Friendica/friendica/language/hu/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: hu\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:39 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Elrejti a felhasználók tartalmát a bejegyzések összecsukásával. Ezenkívül lecseréli a profilképeiket egy általános képre." - -#: blockem.php:40 -msgid "Comma separated profile URLS:" -msgstr "Profil URL-ek vesszővel elválasztva:" - -#: blockem.php:45 -msgid "Blockem" -msgstr "Blockem" - -#: blockem.php:120 -#, php-format -msgid "Filtered user: %s" -msgstr "Kiszűrt felhasználó: %s" - -#: blockem.php:183 -msgid "Unblock Author" -msgstr "Szerző tiltásának feloldása" - -#: blockem.php:185 -msgid "Block Author" -msgstr "Szerző tiltása" diff --git a/blockem/lang/hu/strings.php b/blockem/lang/hu/strings.php deleted file mode 100644 index 5a3abfec..00000000 --- a/blockem/lang/hu/strings.php +++ /dev/null @@ -1,13 +0,0 @@ -strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Elrejti a felhasználók tartalmát a bejegyzések összecsukásával. Ezenkívül lecseréli a profilképeiket egy általános képre.'; -$a->strings['Comma separated profile URLS:'] = 'Profil URL-ek vesszővel elválasztva:'; -$a->strings['Blockem'] = 'Blockem'; -$a->strings['Filtered user: %s'] = 'Kiszűrt felhasználó: %s'; -$a->strings['Unblock Author'] = 'Szerző tiltásának feloldása'; -$a->strings['Block Author'] = 'Szerző tiltása'; diff --git a/blockem/lang/is/strings.php b/blockem/lang/is/strings.php deleted file mode 100644 index 3075c457..00000000 --- a/blockem/lang/is/strings.php +++ /dev/null @@ -1,10 +0,0 @@ -strings["\"Blockem\" Settings"] = "\"Blockem\" stillingar"; -$a->strings["Comma separated profile URLS to block"] = "Banna lista af forsíðum (komma á milli)"; -$a->strings["Submit"] = "Senda inn"; -$a->strings["BLOCKEM Settings saved."] = "BLOCKEM stillingar vistaðar."; -$a->strings["Blocked %s - Click to open/close"] = "%s sett í straff - Smella til að taka úr/setja á"; -$a->strings["Unblock Author"] = "Leyfa notanda"; -$a->strings["Block Author"] = "Banna notanda"; -$a->strings["blockem settings updated"] = ""; diff --git a/blockem/lang/it/messages.po b/blockem/lang/it/messages.po deleted file mode 100644 index cdf74f99..00000000 --- a/blockem/lang/it/messages.po +++ /dev/null @@ -1,59 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# fabrixxm , 2014,2018-2019 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-17 10:23+0200\n" -"PO-Revision-Date: 2019-03-11 14:21+0000\n" -"Last-Translator: fabrixxm \n" -"Language-Team: Italian (http://www.transifex.com/Friendica/friendica/language/it/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: it\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:54 blockem.php:58 -msgid "Blockem" -msgstr "Blockem" - -#: blockem.php:62 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Nascondi il contenuto degli utenti collassando i messaggi. Sostituisce anche gli avatar con un'immagine generica." - -#: blockem.php:63 -msgid "Comma separated profile URLS:" -msgstr "URL profili separati da virgola:" - -#: blockem.php:67 -msgid "Save Settings" -msgstr "Salva Impostazioni" - -#: blockem.php:81 -msgid "BLOCKEM Settings saved." -msgstr "Impostazioni BLOCKEM salvate." - -#: blockem.php:143 -#, php-format -msgid "Filtered user: %s" -msgstr "Utente filtrato: %s" - -#: blockem.php:202 -msgid "Unblock Author" -msgstr "Sblocca autore" - -#: blockem.php:204 -msgid "Block Author" -msgstr "Blocca autore" - -#: blockem.php:244 -msgid "blockem settings updated" -msgstr "Impostazioni 'blockem' aggiornate." diff --git a/blockem/lang/it/strings.php b/blockem/lang/it/strings.php deleted file mode 100644 index aa73286a..00000000 --- a/blockem/lang/it/strings.php +++ /dev/null @@ -1,16 +0,0 @@ -strings['Blockem'] = 'Blockem'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Nascondi il contenuto degli utenti collassando i messaggi. Sostituisce anche gli avatar con un\'immagine generica.'; -$a->strings['Comma separated profile URLS:'] = 'URL profili separati da virgola:'; -$a->strings['Save Settings'] = 'Salva Impostazioni'; -$a->strings['BLOCKEM Settings saved.'] = 'Impostazioni BLOCKEM salvate.'; -$a->strings['Filtered user: %s'] = 'Utente filtrato: %s'; -$a->strings['Unblock Author'] = 'Sblocca autore'; -$a->strings['Block Author'] = 'Blocca autore'; -$a->strings['blockem settings updated'] = 'Impostazioni \'blockem\' aggiornate.'; diff --git a/blockem/lang/nb-no/strings.php b/blockem/lang/nb-no/strings.php deleted file mode 100644 index 0dd6660d..00000000 --- a/blockem/lang/nb-no/strings.php +++ /dev/null @@ -1,10 +0,0 @@ -strings["\"Blockem\" Settings"] = ""; -$a->strings["Comma separated profile URLS to block"] = ""; -$a->strings["Submit"] = "Lagre"; -$a->strings["BLOCKEM Settings saved."] = ""; -$a->strings["Blocked %s - Click to open/close"] = ""; -$a->strings["Unblock Author"] = ""; -$a->strings["Block Author"] = ""; -$a->strings["blockem settings updated"] = ""; diff --git a/blockem/lang/nl/messages.po b/blockem/lang/nl/messages.po deleted file mode 100644 index f8bde25c..00000000 --- a/blockem/lang/nl/messages.po +++ /dev/null @@ -1,60 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# AgnesElisa , 2018 -# Jeroen De Meerleer , 2018 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-17 10:23+0200\n" -"PO-Revision-Date: 2018-08-24 13:49+0000\n" -"Last-Translator: Jeroen De Meerleer \n" -"Language-Team: Dutch (http://www.transifex.com/Friendica/friendica/language/nl/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: nl\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:54 blockem.php:58 -msgid "Blockem" -msgstr "Blockem" - -#: blockem.php:62 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Verbergt de inhoud van het bericht van de gebruiker. Daarnaast vervangt het de avatar door een standaardafbeelding." - -#: blockem.php:63 -msgid "Comma separated profile URLS:" -msgstr "Profiel URLs (kommagescheiden):" - -#: blockem.php:67 -msgid "Save Settings" -msgstr "Instellingen opslaan" - -#: blockem.php:81 -msgid "BLOCKEM Settings saved." -msgstr "BLOCKEM instellingen opgeslagen." - -#: blockem.php:143 -#, php-format -msgid "Filtered user: %s" -msgstr "Gefilterde gebruiker: %s" - -#: blockem.php:202 -msgid "Unblock Author" -msgstr "Deblokkeer Auteur" - -#: blockem.php:204 -msgid "Block Author" -msgstr "Auteur blokkeren" - -#: blockem.php:244 -msgid "blockem settings updated" -msgstr "blockem instellingen opgeslagen" diff --git a/blockem/lang/nl/strings.php b/blockem/lang/nl/strings.php deleted file mode 100644 index b523cdc4..00000000 --- a/blockem/lang/nl/strings.php +++ /dev/null @@ -1,16 +0,0 @@ -strings['Blockem'] = 'Blockem'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Verbergt de inhoud van het bericht van de gebruiker. Daarnaast vervangt het de avatar door een standaardafbeelding.'; -$a->strings['Comma separated profile URLS:'] = 'Profiel URLs (kommagescheiden):'; -$a->strings['Save Settings'] = 'Instellingen opslaan'; -$a->strings['BLOCKEM Settings saved.'] = 'BLOCKEM instellingen opgeslagen.'; -$a->strings['Filtered user: %s'] = 'Gefilterde gebruiker: %s'; -$a->strings['Unblock Author'] = 'Deblokkeer Auteur'; -$a->strings['Block Author'] = 'Auteur blokkeren'; -$a->strings['blockem settings updated'] = 'blockem instellingen opgeslagen'; diff --git a/blockem/lang/pl/messages.po b/blockem/lang/pl/messages.po deleted file mode 100644 index 8e70e0b5..00000000 --- a/blockem/lang/pl/messages.po +++ /dev/null @@ -1,47 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Waldemar Stoczkowski, 2018 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:13-0500\n" -"PO-Revision-Date: 2014-06-22 11:20+0000\n" -"Last-Translator: Waldemar Stoczkowski, 2018\n" -"Language-Team: Polish (http://www.transifex.com/Friendica/friendica/language/pl/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: pl\n" -"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" - -#: blockem.php:39 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Ukrywa zawartość użytkownika, zwijając posty. Zastępuje również awatar wygenerowanym obrazem." - -#: blockem.php:40 -msgid "Comma separated profile URLS:" -msgstr "Rozdzielone przecinkami adresy URL profilu:" - -#: blockem.php:45 -msgid "Blockem" -msgstr "Zablokowanie" - -#: blockem.php:120 -#, php-format -msgid "Filtered user: %s" -msgstr "Użytkownik filtrowany: %s" - -#: blockem.php:183 -msgid "Unblock Author" -msgstr "Odblokuj autora" - -#: blockem.php:185 -msgid "Block Author" -msgstr "Zablokuj autora" diff --git a/blockem/lang/pl/strings.php b/blockem/lang/pl/strings.php deleted file mode 100644 index 49951a68..00000000 --- a/blockem/lang/pl/strings.php +++ /dev/null @@ -1,13 +0,0 @@ -=2 && $n%10<=4) && ($n%100<12 || $n%100>14)) { return 1; } else if ($n!=1 && ($n%10>=0 && $n%10<=1) || ($n%10>=5 && $n%10<=9) || ($n%100>=12 && $n%100<=14)) { return 2; } else { return 3; } -}} -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Ukrywa zawartość użytkownika, zwijając posty. Zastępuje również awatar wygenerowanym obrazem.'; -$a->strings['Comma separated profile URLS:'] = 'Rozdzielone przecinkami adresy URL profilu:'; -$a->strings['Blockem'] = 'Zablokowanie'; -$a->strings['Filtered user: %s'] = 'Użytkownik filtrowany: %s'; -$a->strings['Unblock Author'] = 'Odblokuj autora'; -$a->strings['Block Author'] = 'Zablokuj autora'; diff --git a/blockem/lang/pt-br/strings.php b/blockem/lang/pt-br/strings.php deleted file mode 100644 index 49f69cc3..00000000 --- a/blockem/lang/pt-br/strings.php +++ /dev/null @@ -1,10 +0,0 @@ -strings["\"Blockem\" Settings"] = "Configurações \"Blockem\""; -$a->strings["Comma separated profile URLS to block"] = "URLS de perfis separados por vírgulas a serem bloqueados"; -$a->strings["Submit"] = "Enviar"; -$a->strings["BLOCKEM Settings saved."] = "Configurações BLOCKEM armazenadas."; -$a->strings["Blocked %s - Click to open/close"] = "Bloqueado %s - Clique para abrir/fechar"; -$a->strings["Unblock Author"] = "Desbloqueie Autor"; -$a->strings["Block Author"] = "Bloqueie Autor"; -$a->strings["blockem settings updated"] = "configurações blockem atualizadas"; diff --git a/blockem/lang/ro/messages.po b/blockem/lang/ro/messages.po deleted file mode 100644 index a74e5757..00000000 --- a/blockem/lang/ro/messages.po +++ /dev/null @@ -1,52 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-06-22 13:18+0200\n" -"PO-Revision-Date: 2014-07-08 11:43+0000\n" -"Last-Translator: Arian - Cazare Muncitori \n" -"Language-Team: Romanian (Romania) (http://www.transifex.com/projects/p/friendica/language/ro_RO/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ro_RO\n" -"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" - -#: blockem.php:53 blockem.php:57 -msgid "\"Blockem\"" -msgstr "\"Blockem\"" - -#: blockem.php:61 -msgid "Comma separated profile URLS to block" -msgstr "Adresele URL de profil, de blocat, separate prin virgulă" - -#: blockem.php:65 -msgid "Save Settings" -msgstr "Salvare Configurări" - -#: blockem.php:78 -msgid "BLOCKEM Settings saved." -msgstr "Configurările BLOCKEM au fost salvate." - -#: blockem.php:142 -#, php-format -msgid "Blocked %s - Click to open/close" -msgstr "%s Blocate - Apăsați pentru a deschide/închide" - -#: blockem.php:197 -msgid "Unblock Author" -msgstr "Deblocare Autor" - -#: blockem.php:199 -msgid "Block Author" -msgstr "Blocare Autor" - -#: blockem.php:231 -msgid "blockem settings updated" -msgstr "Configurările blockem au fost actualizate" diff --git a/blockem/lang/ro/strings.php b/blockem/lang/ro/strings.php deleted file mode 100644 index 6fc8a094..00000000 --- a/blockem/lang/ro/strings.php +++ /dev/null @@ -1,15 +0,0 @@ -19)||(($n%100==0)&&($n!=0)))) { return 2; } else { return 1; } -}} -$a->strings['"Blockem"'] = '"Blockem"'; -$a->strings['Comma separated profile URLS to block'] = 'Adresele URL de profil, de blocat, separate prin virgulă'; -$a->strings['Save Settings'] = 'Salvare Configurări'; -$a->strings['BLOCKEM Settings saved.'] = 'Configurările BLOCKEM au fost salvate.'; -$a->strings['Blocked %s - Click to open/close'] = '%s Blocate - Apăsați pentru a deschide/închide'; -$a->strings['Unblock Author'] = 'Deblocare Autor'; -$a->strings['Block Author'] = 'Blocare Autor'; -$a->strings['blockem settings updated'] = 'Configurările blockem au fost actualizate'; diff --git a/blockem/lang/ru/messages.po b/blockem/lang/ru/messages.po deleted file mode 100644 index 22427327..00000000 --- a/blockem/lang/ru/messages.po +++ /dev/null @@ -1,60 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Alexander An , 2020 -# Stanislav N. , 2017-2018 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-08-17 10:23+0200\n" -"PO-Revision-Date: 2020-04-23 14:13+0000\n" -"Last-Translator: Alexander An \n" -"Language-Team: Russian (http://www.transifex.com/Friendica/friendica/language/ru/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: ru\n" -"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" - -#: blockem.php:54 blockem.php:58 -msgid "Blockem" -msgstr "Blockem" - -#: blockem.php:62 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Скрыть контент пользователя. Также заменяет его аватар изображением по-умолчанию." - -#: blockem.php:63 -msgid "Comma separated profile URLS:" -msgstr "URL профилей, разделенные запятыми:" - -#: blockem.php:67 -msgid "Save Settings" -msgstr "Сохранить настройки" - -#: blockem.php:81 -msgid "BLOCKEM Settings saved." -msgstr "BLOCKEM Настройки сохранены." - -#: blockem.php:143 -#, php-format -msgid "Filtered user: %s" -msgstr "Отфильтрованный пользователь: %s" - -#: blockem.php:202 -msgid "Unblock Author" -msgstr "Разблокировать автора" - -#: blockem.php:204 -msgid "Block Author" -msgstr "Блокировать автора" - -#: blockem.php:244 -msgid "blockem settings updated" -msgstr "Настройки Blockem обновлены" diff --git a/blockem/lang/ru/strings.php b/blockem/lang/ru/strings.php deleted file mode 100644 index ef586740..00000000 --- a/blockem/lang/ru/strings.php +++ /dev/null @@ -1,16 +0,0 @@ -=2 && $n%10<=4 && ($n%100<12 || $n%100>14)) { return 1; } else if ($n%10==0 || ($n%10>=5 && $n%10<=9) || ($n%100>=11 && $n%100<=14)) { return 2; } else { return 3; } -}} -$a->strings['Blockem'] = 'Blockem'; -$a->strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Скрыть контент пользователя. Также заменяет его аватар изображением по-умолчанию.'; -$a->strings['Comma separated profile URLS:'] = 'URL профилей, разделенные запятыми:'; -$a->strings['Save Settings'] = 'Сохранить настройки'; -$a->strings['BLOCKEM Settings saved.'] = 'BLOCKEM Настройки сохранены.'; -$a->strings['Filtered user: %s'] = 'Отфильтрованный пользователь: %s'; -$a->strings['Unblock Author'] = 'Разблокировать автора'; -$a->strings['Block Author'] = 'Блокировать автора'; -$a->strings['blockem settings updated'] = 'Настройки Blockem обновлены'; diff --git a/blockem/lang/sv/messages.po b/blockem/lang/sv/messages.po deleted file mode 100644 index ede8ee94..00000000 --- a/blockem/lang/sv/messages.po +++ /dev/null @@ -1,47 +0,0 @@ -# ADDON blockem -# Copyright (C) -# This file is distributed under the same license as the Friendica blockem addon package. -# -# -# Translators: -# Bjoessi , 2019 -msgid "" -msgstr "" -"Project-Id-Version: friendica\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-11-21 19:13-0500\n" -"PO-Revision-Date: 2021-12-22 15:27+0000\n" -"Last-Translator: Transifex Bot <>\n" -"Language-Team: Swedish (http://www.transifex.com/Friendica/friendica/language/sv/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Language: sv\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: blockem.php:39 -msgid "" -"Hides user's content by collapsing posts. Also replaces their avatar with " -"generic image." -msgstr "Döljer användares inlägg genom sammanslagning nedåt. Användarens profilbild ersätts med en standardbild." - -#: blockem.php:40 -msgid "Comma separated profile URLS:" -msgstr "Kommaseparerade profiladresser:" - -#: blockem.php:45 -msgid "Blockem" -msgstr "BLOCKEM" - -#: blockem.php:120 -#, php-format -msgid "Filtered user: %s" -msgstr "Filtrerat på användare:%s" - -#: blockem.php:183 -msgid "Unblock Author" -msgstr "Avblockera författare" - -#: blockem.php:185 -msgid "Block Author" -msgstr "Blockera författare" diff --git a/blockem/lang/sv/strings.php b/blockem/lang/sv/strings.php deleted file mode 100644 index 724e2d23..00000000 --- a/blockem/lang/sv/strings.php +++ /dev/null @@ -1,13 +0,0 @@ -strings['Hides user\'s content by collapsing posts. Also replaces their avatar with generic image.'] = 'Döljer användares inlägg genom sammanslagning nedåt. Användarens profilbild ersätts med en standardbild.'; -$a->strings['Comma separated profile URLS:'] = 'Kommaseparerade profiladresser:'; -$a->strings['Blockem'] = 'BLOCKEM'; -$a->strings['Filtered user: %s'] = 'Filtrerat på användare:%s'; -$a->strings['Unblock Author'] = 'Avblockera författare'; -$a->strings['Block Author'] = 'Blockera författare'; diff --git a/blockem/lang/zh-cn/strings.php b/blockem/lang/zh-cn/strings.php deleted file mode 100644 index 3a3dfaeb..00000000 --- a/blockem/lang/zh-cn/strings.php +++ /dev/null @@ -1,10 +0,0 @@ -strings["\"Blockem\" Settings"] = "「Blockem」配置"; -$a->strings["Comma separated profile URLS to block"] = "逗号分简介URL为栏"; -$a->strings["Submit"] = "提交"; -$a->strings["BLOCKEM Settings saved."] = "「Blockem」配置保存了。"; -$a->strings["Blocked %s - Click to open/close"] = "%s拦了-点击为开关"; -$a->strings["Unblock Author"] = "不拦作家"; -$a->strings["Block Author"] = "拦作家"; -$a->strings["blockem settings updated"] = "blockem设置更新了"; diff --git a/blockem/templates/settings.tpl b/blockem/templates/settings.tpl deleted file mode 100644 index 67398400..00000000 --- a/blockem/templates/settings.tpl +++ /dev/null @@ -1 +0,0 @@ -{{include file="field_textarea.tpl" field=$words}} From 9832fa6c45007e76334755ed79e8f34e28edd920 Mon Sep 17 00:00:00 2001 From: Matthew Exon Date: Sun, 28 May 2023 11:02:32 +0200 Subject: [PATCH 6/6] catch exception during http request --- mailstream/mailstream.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mailstream/mailstream.php b/mailstream/mailstream.php index f53d4fe9..56e7fa13 100644 --- a/mailstream/mailstream.php +++ b/mailstream/mailstream.php @@ -214,7 +214,12 @@ function mailstream_do_images(array &$item, array &$attachments) } $cookiejar = tempnam(System::getTempPath(), 'cookiejar-mailstream-'); - $curlResult = DI::httpClient()->fetchFull($url, HttpClientAccept::DEFAULT, 0, $cookiejar); + try { + $curlResult = DI::httpClient()->fetchFull($url, HttpClientAccept::DEFAULT, 0, $cookiejar); + } catch (InvalidArgumentException $e) { + Logger::error('mailstream_do_images exception fetching url', ['url' => $url, 'item_id' => $item['id']]); + continue; + } $attachments[$url] = [ 'data' => $curlResult->getBody(), 'guid' => hash('crc32', $url),