From 03e831b6075c720d1318cb583c80d7ae47d64000 Mon Sep 17 00:00:00 2001 From: Michael Date: Tue, 23 Jan 2024 09:59:47 +0000 Subject: [PATCH 1/4] Fix "Data too long for column 'reaction' at row 1" --- database.sql | 4 ++-- doc/database/db_post-counts.md | 2 +- static/dbstructure.config.php | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/database.sql b/database.sql index 91ed8bf3cd..3e74e28dcb 100644 --- a/database.sql +++ b/database.sql @@ -1,6 +1,6 @@ -- ------------------------------------------ -- Friendica 2024.03-dev (Yellow Archangel) --- DB_UPDATE_VERSION 1547 +-- DB_UPDATE_VERSION 1548 -- ------------------------------------------ @@ -1243,7 +1243,7 @@ CREATE TABLE IF NOT EXISTS `post-category` ( CREATE TABLE IF NOT EXISTS `post-counts` ( `uri-id` int unsigned NOT NULL COMMENT 'Id of the item-uri table entry that contains the item uri', `vid` smallint unsigned NOT NULL COMMENT 'Id of the verb table entry that contains the activity verbs', - `reaction` varchar(1) NOT NULL COMMENT 'Emoji Reaction', + `reaction` varchar(4) NOT NULL COMMENT 'Emoji Reaction', `parent-uri-id` int unsigned COMMENT 'Id of the item-uri table that contains the parent uri', `count` int unsigned DEFAULT 0 COMMENT 'Number of activities', PRIMARY KEY(`uri-id`,`vid`,`reaction`), diff --git a/doc/database/db_post-counts.md b/doc/database/db_post-counts.md index 86383bfc19..db2a8fd36d 100644 --- a/doc/database/db_post-counts.md +++ b/doc/database/db_post-counts.md @@ -10,7 +10,7 @@ Fields | ------------- | ----------------------------------------------------------- | ----------------- | ---- | --- | ------- | ----- | | uri-id | Id of the item-uri table entry that contains the item uri | int unsigned | NO | PRI | NULL | | | vid | Id of the verb table entry that contains the activity verbs | smallint unsigned | NO | PRI | NULL | | -| reaction | Emoji Reaction | varchar(1) | NO | PRI | NULL | | +| reaction | Emoji Reaction | varchar(4) | NO | PRI | NULL | | | parent-uri-id | Id of the item-uri table that contains the parent uri | int unsigned | YES | | NULL | | | count | Number of activities | int unsigned | YES | | 0 | | diff --git a/static/dbstructure.config.php b/static/dbstructure.config.php index b376778e36..5595a752b2 100644 --- a/static/dbstructure.config.php +++ b/static/dbstructure.config.php @@ -56,7 +56,7 @@ use Friendica\Database\DBA; // This file is required several times during the test in DbaDefinition which justifies this condition if (!defined('DB_UPDATE_VERSION')) { - define('DB_UPDATE_VERSION', 1547); + define('DB_UPDATE_VERSION', 1548); } return [ @@ -1270,7 +1270,7 @@ return [ "fields" => [ "uri-id" => ["type" => "int unsigned", "not null" => "1", "primary" => "1", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table entry that contains the item uri"], "vid" => ["type" => "smallint unsigned", "not null" => "1", "primary" => "1", "foreign" => ["verb" => "id", "on delete" => "restrict"], "comment" => "Id of the verb table entry that contains the activity verbs"], - "reaction" => ["type" => "varchar(1)", "not null" => "1", "primary" => "1", "comment" => "Emoji Reaction"], + "reaction" => ["type" => "varchar(4)", "not null" => "1", "primary" => "1", "comment" => "Emoji Reaction"], "parent-uri-id" => ["type" => "int unsigned", "foreign" => ["item-uri" => "id"], "comment" => "Id of the item-uri table that contains the parent uri"], "count" => ["type" => "int unsigned", "default" => 0, "comment" => "Number of activities"], ], From dcb6fa32a15bf4504414664b2a0983ab37cfd7f3 Mon Sep 17 00:00:00 2001 From: Michael Date: Thu, 25 Jan 2024 13:20:50 +0000 Subject: [PATCH 2/4] Fixes "Counts::update(): Argument #3 ($vid) must be of type int, null given" --- src/Model/Post/Counts.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Model/Post/Counts.php b/src/Model/Post/Counts.php index 4a14f25eb7..8606a9b6cf 100644 --- a/src/Model/Post/Counts.php +++ b/src/Model/Post/Counts.php @@ -78,7 +78,7 @@ class Counts { self::update($uri_id, $parent_uri_id, Verb::getID(Activity::POST), Activity::POST); - $activities = DBA::p("SELECT `parent-uri-id`, `vid`, `verb`, `body` FROM `post-view` WHERE `thr-parent-id` = ? AND `gravity` = ? GROUP BY `parent-uri-id`, `vid`, `verb`, `body`", $uri_id, Item::GRAVITY_ACTIVITY); + $activities = DBA::p("SELECT `parent-uri-id`, `vid`, `verb`, `body` FROM `post-view` WHERE `thr-parent-id` = ? AND `gravity` = ? AND NOT `vid` IS NULL GROUP BY `parent-uri-id`, `vid`, `verb`, `body`", $uri_id, Item::GRAVITY_ACTIVITY); while ($activity = DBA::fetch($activities)) { self::update($uri_id, $activity['parent-uri-id'], $activity['vid'], $activity['verb'], $activity['body']); } From 09edf251ee8119ee83e6956a7353dc25a835b008 Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Thu, 25 Jan 2024 19:41:07 +0100 Subject: [PATCH 3/4] Anti spam measures against hashtag spam (#13855) --- src/Module/Admin/Site.php | 3 + src/Protocol/Relay.php | 6 + static/settings.config.php | 4 + view/lang/C/messages.po | 515 ++++++++++++----------- view/templates/admin/site.tpl | 1 + view/theme/frio/templates/admin/site.tpl | 1 + 6 files changed, 278 insertions(+), 252 deletions(-) diff --git a/src/Module/Admin/Site.php b/src/Module/Admin/Site.php index 2930a3521a..22309b8eb7 100644 --- a/src/Module/Admin/Site.php +++ b/src/Module/Admin/Site.php @@ -159,6 +159,7 @@ class Site extends BaseAdmin $relay_scope = (!empty($_POST['relay_scope']) ? trim($_POST['relay_scope']) : ''); $relay_server_tags = (!empty($_POST['relay_server_tags']) ? trim($_POST['relay_server_tags']) : ''); $relay_deny_tags = (!empty($_POST['relay_deny_tags']) ? trim($_POST['relay_deny_tags']) : ''); + $relay_max_tags = (!empty($_POST['relay_max_tags']) ? intval($_POST['relay_max_tags']) : 0); $relay_user_tags = !empty($_POST['relay_user_tags']); $relay_deny_undetected_language = !empty($_POST['relay_deny_undetected_language']); @@ -333,6 +334,7 @@ class Site extends BaseAdmin $transactionConfig->set('system', 'relay_scope' , $relay_scope); $transactionConfig->set('system', 'relay_server_tags' , $relay_server_tags); $transactionConfig->set('system', 'relay_deny_tags' , $relay_deny_tags); + $transactionConfig->set('system', 'relay_max_tags' , $relay_max_tags); $transactionConfig->set('system', 'relay_user_tags' , $relay_user_tags); $transactionConfig->set('system', 'relay_deny_undetected_language', $relay_deny_undetected_language); $transactionConfig->set('system', 'relay_language_quality' , $relay_language_quality); @@ -586,6 +588,7 @@ class Site extends BaseAdmin '$relay_scope' => ['relay_scope', DI::l10n()->t('Relay scope'), DI::config()->get('system', 'relay_scope'), DI::l10n()->t('Can be "all" or "tags". "all" means that every public post should be received. "tags" means that only posts with selected tags should be received.'), [Relay::SCOPE_NONE => DI::l10n()->t('Disabled'), Relay::SCOPE_ALL => DI::l10n()->t('all'), Relay::SCOPE_TAGS => DI::l10n()->t('tags')]], '$relay_server_tags' => ['relay_server_tags', DI::l10n()->t('Server tags'), DI::config()->get('system', 'relay_server_tags'), DI::l10n()->t('Comma separated list of tags for the "tags" subscription.')], '$relay_deny_tags' => ['relay_deny_tags', DI::l10n()->t('Deny Server tags'), DI::config()->get('system', 'relay_deny_tags'), DI::l10n()->t('Comma separated list of tags that are rejected.')], + '$relay_max_tags' => ['relay_max_tags', DI::l10n()->t('Maximum amount of tags'), DI::config()->get('system', 'relay_max_tags'), DI::l10n()->t('Maximum amount of tags in a post before it is rejected as spam. The post has to contain at least one link. Posts from subscribed accounts will not be rejected.')], '$relay_user_tags' => ['relay_user_tags', DI::l10n()->t('Allow user tags'), DI::config()->get('system', 'relay_user_tags'), DI::l10n()->t('If enabled, the tags from the saved searches will used for the "tags" subscription in addition to the "relay_server_tags".')], '$relay_deny_undetected_language' => ['relay_deny_undetected_language', DI::l10n()->t('Deny undetected languages'), DI::config()->get('system', 'relay_deny_undetected_language'), DI::l10n()->t('If enabled, posts with undetected languages will be rejected.')], '$relay_language_quality' => ['relay_language_quality', DI::l10n()->t('Language Quality'), DI::config()->get('system', 'relay_language_quality'), DI::l10n()->t('The minimum language quality that is required to accept the post.')], diff --git a/src/Protocol/Relay.php b/src/Protocol/Relay.php index 9b1911315a..9c16e5e1ee 100644 --- a/src/Protocol/Relay.php +++ b/src/Protocol/Relay.php @@ -113,6 +113,12 @@ class Relay } if (!empty($tagList) || !empty($denyTags)) { + $max_tags = $config->get('system', 'relay_max_tags'); + if ($max_tags && (count($tags) > $max_tags) && preg_match('/[^@!#]\[url\=.*?\].*?\[\/url\]/ism', $body)) { + Logger::info('Possible hashtag spam detected - rejected', ['hashtags' => $tags, 'network' => $network, 'url' => $url, 'causer' => $causer, 'body' => $body]); + return false; + } + $content = mb_strtolower(BBCode::toPlaintext($body, false)); foreach ($tags as $tag) { diff --git a/static/settings.config.php b/static/settings.config.php index a4cfc1b3e7..0e8d730157 100644 --- a/static/settings.config.php +++ b/static/settings.config.php @@ -237,6 +237,10 @@ return [ // Minimum value for the language detection quality for relay posts. The value must be between 0 and 1. 'relay_language_quality' => 0, + // relay_max_tags (Integer) + // Maximum amount of tags in a post before it is rejected as spam. + 'relay_max_tags' => 10, + // proxify_content (Boolean) // Use the proxy functionality for fetching external content 'proxify_content' => true, diff --git a/view/lang/C/messages.po b/view/lang/C/messages.po index fbe1d1b617..5bda4e7253 100644 --- a/view/lang/C/messages.po +++ b/view/lang/C/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: 2024.03-dev\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-01-23 22:10+0000\n" +"POT-Creation-Date: 2024-01-25 18:12+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -2372,7 +2372,7 @@ msgstr "" msgid "All" msgstr "" -#: src/Content/Widget.php:591 src/Module/Admin/Site.php:470 +#: src/Content/Widget.php:591 src/Module/Admin/Site.php:472 #: src/Module/BaseSettings.php:125 src/Module/Settings/Channels.php:208 #: src/Module/Settings/Display.php:315 msgid "Channels" @@ -3942,7 +3942,7 @@ msgstr "" #: src/Module/Admin/Addons/Details.php:111 src/Module/Admin/Addons/Index.php:67 #: src/Module/Admin/Federation.php:218 src/Module/Admin/Logs/Settings.php:85 #: src/Module/Admin/Logs/View.php:83 src/Module/Admin/Queue.php:72 -#: src/Module/Admin/Site.php:453 src/Module/Admin/Storage.php:138 +#: src/Module/Admin/Site.php:455 src/Module/Admin/Storage.php:138 #: src/Module/Admin/Summary.php:196 src/Module/Admin/Themes/Details.php:90 #: src/Module/Admin/Themes/Index.php:111 src/Module/Admin/Tos.php:77 #: src/Module/Moderation/Users/Create.php:61 @@ -3980,7 +3980,7 @@ msgid "Addon %s failed to install." msgstr "" #: src/Module/Admin/Addons/Index.php:69 src/Module/Admin/Features.php:86 -#: src/Module/Admin/Logs/Settings.php:87 src/Module/Admin/Site.php:456 +#: src/Module/Admin/Logs/Settings.php:87 src/Module/Admin/Site.php:458 #: src/Module/Admin/Themes/Index.php:113 src/Module/Admin/Tos.php:86 #: src/Module/Settings/Account.php:551 src/Module/Settings/Addons.php:78 #: src/Module/Settings/Connectors.php:160 @@ -4180,8 +4180,8 @@ msgid "Enable Debugging" msgstr "" #: src/Module/Admin/Logs/Settings.php:91 src/Module/Admin/Logs/Settings.php:92 -#: src/Module/Admin/Logs/Settings.php:93 src/Module/Admin/Site.php:476 -#: src/Module/Admin/Site.php:484 +#: src/Module/Admin/Logs/Settings.php:93 src/Module/Admin/Site.php:478 +#: src/Module/Admin/Site.php:486 msgid "Read-only because it is set by an environment variable" msgstr "" @@ -4341,269 +4341,269 @@ msgstr "" msgid "Priority" msgstr "" -#: src/Module/Admin/Site.php:242 +#: src/Module/Admin/Site.php:243 #, php-format msgid "%s is no valid input for maximum image size" msgstr "" -#: src/Module/Admin/Site.php:368 src/Module/Settings/Display.php:215 +#: src/Module/Admin/Site.php:370 src/Module/Settings/Display.php:215 msgid "No special theme for mobile devices" msgstr "" -#: src/Module/Admin/Site.php:385 src/Module/Settings/Display.php:225 +#: src/Module/Admin/Site.php:387 src/Module/Settings/Display.php:225 #, php-format msgid "%s - (Experimental)" msgstr "" -#: src/Module/Admin/Site.php:397 +#: src/Module/Admin/Site.php:399 msgid "No community page" msgstr "" -#: src/Module/Admin/Site.php:398 +#: src/Module/Admin/Site.php:400 msgid "No community page for visitors" msgstr "" -#: src/Module/Admin/Site.php:399 +#: src/Module/Admin/Site.php:401 msgid "Public postings from users of this site" msgstr "" -#: src/Module/Admin/Site.php:400 +#: src/Module/Admin/Site.php:402 msgid "Public postings from the federated network" msgstr "" -#: src/Module/Admin/Site.php:401 +#: src/Module/Admin/Site.php:403 msgid "Public postings from local users and the federated network" msgstr "" -#: src/Module/Admin/Site.php:407 +#: src/Module/Admin/Site.php:409 msgid "Multi user instance" msgstr "" -#: src/Module/Admin/Site.php:430 +#: src/Module/Admin/Site.php:432 msgid "Closed" msgstr "" -#: src/Module/Admin/Site.php:431 +#: src/Module/Admin/Site.php:433 msgid "Requires approval" msgstr "" -#: src/Module/Admin/Site.php:432 +#: src/Module/Admin/Site.php:434 msgid "Open" msgstr "" -#: src/Module/Admin/Site.php:436 +#: src/Module/Admin/Site.php:438 msgid "Don't check" msgstr "" -#: src/Module/Admin/Site.php:437 +#: src/Module/Admin/Site.php:439 msgid "check the stable version" msgstr "" -#: src/Module/Admin/Site.php:438 +#: src/Module/Admin/Site.php:440 msgid "check the development version" msgstr "" -#: src/Module/Admin/Site.php:442 +#: src/Module/Admin/Site.php:444 msgid "none" msgstr "" -#: src/Module/Admin/Site.php:443 +#: src/Module/Admin/Site.php:445 msgid "Local contacts" msgstr "" -#: src/Module/Admin/Site.php:444 +#: src/Module/Admin/Site.php:446 msgid "Interactors" msgstr "" -#: src/Module/Admin/Site.php:454 src/Module/BaseAdmin.php:90 +#: src/Module/Admin/Site.php:456 src/Module/BaseAdmin.php:90 msgid "Site" msgstr "" -#: src/Module/Admin/Site.php:455 +#: src/Module/Admin/Site.php:457 msgid "General Information" msgstr "" -#: src/Module/Admin/Site.php:457 +#: src/Module/Admin/Site.php:459 msgid "Republish users to directory" msgstr "" -#: src/Module/Admin/Site.php:458 src/Module/Register.php:152 +#: src/Module/Admin/Site.php:460 src/Module/Register.php:152 msgid "Registration" msgstr "" -#: src/Module/Admin/Site.php:459 +#: src/Module/Admin/Site.php:461 msgid "File upload" msgstr "" -#: src/Module/Admin/Site.php:460 +#: src/Module/Admin/Site.php:462 msgid "Policies" msgstr "" -#: src/Module/Admin/Site.php:461 src/Module/Calendar/Event/Form.php:252 +#: src/Module/Admin/Site.php:463 src/Module/Calendar/Event/Form.php:252 #: src/Module/Contact.php:546 src/Module/Profile/Profile.php:276 msgid "Advanced" msgstr "" -#: src/Module/Admin/Site.php:462 +#: src/Module/Admin/Site.php:464 msgid "Auto Discovered Contact Directory" msgstr "" -#: src/Module/Admin/Site.php:463 +#: src/Module/Admin/Site.php:465 msgid "Performance" msgstr "" -#: src/Module/Admin/Site.php:464 +#: src/Module/Admin/Site.php:466 msgid "Worker" msgstr "" -#: src/Module/Admin/Site.php:465 +#: src/Module/Admin/Site.php:467 msgid "Message Relay" msgstr "" -#: src/Module/Admin/Site.php:466 +#: src/Module/Admin/Site.php:468 msgid "" "Use the command \"console relay\" in the command line to add or remove " "relays." msgstr "" -#: src/Module/Admin/Site.php:467 +#: src/Module/Admin/Site.php:469 msgid "The system is not subscribed to any relays at the moment." msgstr "" -#: src/Module/Admin/Site.php:468 +#: src/Module/Admin/Site.php:470 msgid "The system is currently subscribed to the following relays:" msgstr "" -#: src/Module/Admin/Site.php:471 +#: src/Module/Admin/Site.php:473 msgid "Relocate Node" msgstr "" -#: src/Module/Admin/Site.php:472 +#: src/Module/Admin/Site.php:474 msgid "" "Relocating your node enables you to change the DNS domain of this node and " "keep all the existing users and posts. This process takes a while and can " "only be started from the relocate console command like this:" msgstr "" -#: src/Module/Admin/Site.php:473 +#: src/Module/Admin/Site.php:475 msgid "(Friendica directory)# bin/console relocate https://newdomain.com" msgstr "" -#: src/Module/Admin/Site.php:476 +#: src/Module/Admin/Site.php:478 msgid "Site name" msgstr "" -#: src/Module/Admin/Site.php:477 +#: src/Module/Admin/Site.php:479 msgid "Sender Email" msgstr "" -#: src/Module/Admin/Site.php:477 +#: src/Module/Admin/Site.php:479 msgid "" "The email address your server shall use to send notification emails from." msgstr "" -#: src/Module/Admin/Site.php:478 +#: src/Module/Admin/Site.php:480 msgid "Name of the system actor" msgstr "" -#: src/Module/Admin/Site.php:478 +#: src/Module/Admin/Site.php:480 msgid "" "Name of the internal system account that is used to perform ActivityPub " "requests. This must be an unused username. If set, this can't be changed " "again." msgstr "" -#: src/Module/Admin/Site.php:479 +#: src/Module/Admin/Site.php:481 msgid "Banner/Logo" msgstr "" -#: src/Module/Admin/Site.php:480 +#: src/Module/Admin/Site.php:482 msgid "Email Banner/Logo" msgstr "" -#: src/Module/Admin/Site.php:481 +#: src/Module/Admin/Site.php:483 msgid "Shortcut icon" msgstr "" -#: src/Module/Admin/Site.php:481 +#: src/Module/Admin/Site.php:483 msgid "Link to an icon that will be used for browsers." msgstr "" -#: src/Module/Admin/Site.php:482 +#: src/Module/Admin/Site.php:484 msgid "Touch icon" msgstr "" -#: src/Module/Admin/Site.php:482 +#: src/Module/Admin/Site.php:484 msgid "Link to an icon that will be used for tablets and mobiles." msgstr "" -#: src/Module/Admin/Site.php:483 +#: src/Module/Admin/Site.php:485 msgid "Additional Info" msgstr "" -#: src/Module/Admin/Site.php:483 +#: src/Module/Admin/Site.php:485 #, php-format msgid "" "For public servers: you can add additional information here that will be " "listed at %s/servers." msgstr "" -#: src/Module/Admin/Site.php:484 +#: src/Module/Admin/Site.php:486 msgid "System language" msgstr "" -#: src/Module/Admin/Site.php:485 +#: src/Module/Admin/Site.php:487 msgid "System theme" msgstr "" -#: src/Module/Admin/Site.php:485 +#: src/Module/Admin/Site.php:487 #, php-format msgid "" "Default system theme - may be over-ridden by user profiles - Change default theme settings" msgstr "" -#: src/Module/Admin/Site.php:486 +#: src/Module/Admin/Site.php:488 msgid "Mobile system theme" msgstr "" -#: src/Module/Admin/Site.php:486 +#: src/Module/Admin/Site.php:488 msgid "Theme for mobile devices" msgstr "" -#: src/Module/Admin/Site.php:487 +#: src/Module/Admin/Site.php:489 msgid "Force SSL" msgstr "" -#: src/Module/Admin/Site.php:487 +#: src/Module/Admin/Site.php:489 msgid "" "Force all Non-SSL requests to SSL - Attention: on some systems it could lead " "to endless loops." msgstr "" -#: src/Module/Admin/Site.php:488 +#: src/Module/Admin/Site.php:490 msgid "Show help entry from navigation menu" msgstr "" -#: src/Module/Admin/Site.php:488 +#: src/Module/Admin/Site.php:490 msgid "" "Displays the menu entry for the Help pages from the navigation menu. It is " "always accessible by calling /help directly." msgstr "" -#: src/Module/Admin/Site.php:489 +#: src/Module/Admin/Site.php:491 msgid "Single user instance" msgstr "" -#: src/Module/Admin/Site.php:489 +#: src/Module/Admin/Site.php:491 msgid "Make this instance multi-user or single-user for the named user" msgstr "" -#: src/Module/Admin/Site.php:491 +#: src/Module/Admin/Site.php:493 msgid "Maximum image size" msgstr "" -#: src/Module/Admin/Site.php:491 +#: src/Module/Admin/Site.php:493 #, php-format msgid "" "Maximum size in bytes of uploaded images. Default is 0, which means no " @@ -4615,35 +4615,35 @@ msgid "" "to %s (%s byte)" msgstr "" -#: src/Module/Admin/Site.php:495 +#: src/Module/Admin/Site.php:497 msgid "Maximum image length" msgstr "" -#: src/Module/Admin/Site.php:495 +#: src/Module/Admin/Site.php:497 msgid "" "Maximum length in pixels of the longest side of uploaded images. Default is " "-1, which means no limits." msgstr "" -#: src/Module/Admin/Site.php:496 +#: src/Module/Admin/Site.php:498 msgid "JPEG image quality" msgstr "" -#: src/Module/Admin/Site.php:496 +#: src/Module/Admin/Site.php:498 msgid "" "Uploaded JPEGS will be saved at this quality setting [0-100]. Default is " "100, which is full quality." msgstr "" -#: src/Module/Admin/Site.php:498 +#: src/Module/Admin/Site.php:500 msgid "Register policy" msgstr "" -#: src/Module/Admin/Site.php:499 +#: src/Module/Admin/Site.php:501 msgid "Maximum Users" msgstr "" -#: src/Module/Admin/Site.php:499 +#: src/Module/Admin/Site.php:501 msgid "" "If defined, the register policy is automatically closed when the given " "number of users is reached and reopens the registry when the number drops " @@ -4651,168 +4651,168 @@ msgid "" "not when the policy is set to approval." msgstr "" -#: src/Module/Admin/Site.php:500 +#: src/Module/Admin/Site.php:502 msgid "Maximum Daily Registrations" msgstr "" -#: src/Module/Admin/Site.php:500 +#: src/Module/Admin/Site.php:502 msgid "" "If registration is permitted above, this sets the maximum number of new user " "registrations to accept per day. If register is set to closed, this setting " "has no effect." msgstr "" -#: src/Module/Admin/Site.php:501 +#: src/Module/Admin/Site.php:503 msgid "Register text" msgstr "" -#: src/Module/Admin/Site.php:501 +#: src/Module/Admin/Site.php:503 msgid "" "Will be displayed prominently on the registration page. You can use BBCode " "here." msgstr "" -#: src/Module/Admin/Site.php:502 +#: src/Module/Admin/Site.php:504 msgid "Forbidden Nicknames" msgstr "" -#: src/Module/Admin/Site.php:502 +#: src/Module/Admin/Site.php:504 msgid "" "Comma separated list of nicknames that are forbidden from registration. " "Preset is a list of role names according RFC 2142." msgstr "" -#: src/Module/Admin/Site.php:503 +#: src/Module/Admin/Site.php:505 msgid "Accounts abandoned after x days" msgstr "" -#: src/Module/Admin/Site.php:503 +#: src/Module/Admin/Site.php:505 msgid "" "Will not waste system resources polling external sites for abandonded " "accounts. Enter 0 for no time limit." msgstr "" -#: src/Module/Admin/Site.php:504 +#: src/Module/Admin/Site.php:506 msgid "Allowed friend domains" msgstr "" -#: src/Module/Admin/Site.php:504 +#: src/Module/Admin/Site.php:506 msgid "" "Comma separated list of domains which are allowed to establish friendships " "with this site. Wildcards are accepted. Empty to allow any domains" msgstr "" -#: src/Module/Admin/Site.php:505 +#: src/Module/Admin/Site.php:507 msgid "Allowed email domains" msgstr "" -#: src/Module/Admin/Site.php:505 +#: src/Module/Admin/Site.php:507 msgid "" "Comma separated list of domains which are allowed in email addresses for " "registrations to this site. Wildcards are accepted. Empty to allow any " "domains" msgstr "" -#: src/Module/Admin/Site.php:506 +#: src/Module/Admin/Site.php:508 msgid "No OEmbed rich content" msgstr "" -#: src/Module/Admin/Site.php:506 +#: src/Module/Admin/Site.php:508 msgid "" "Don't show the rich content (e.g. embedded PDF), except from the domains " "listed below." msgstr "" -#: src/Module/Admin/Site.php:507 +#: src/Module/Admin/Site.php:509 msgid "Trusted third-party domains" msgstr "" -#: src/Module/Admin/Site.php:507 +#: src/Module/Admin/Site.php:509 msgid "" "Comma separated list of domains from which content is allowed to be embedded " "in posts like with OEmbed. All sub-domains of the listed domains are allowed " "as well." msgstr "" -#: src/Module/Admin/Site.php:508 +#: src/Module/Admin/Site.php:510 msgid "Block public" msgstr "" -#: src/Module/Admin/Site.php:508 +#: src/Module/Admin/Site.php:510 msgid "" "Check to block public access to all otherwise public personal pages on this " "site unless you are currently logged in." msgstr "" -#: src/Module/Admin/Site.php:509 +#: src/Module/Admin/Site.php:511 msgid "Force publish" msgstr "" -#: src/Module/Admin/Site.php:509 +#: src/Module/Admin/Site.php:511 msgid "" "Check to force all profiles on this site to be listed in the site directory." msgstr "" -#: src/Module/Admin/Site.php:509 +#: src/Module/Admin/Site.php:511 msgid "Enabling this may violate privacy laws like the GDPR" msgstr "" -#: src/Module/Admin/Site.php:510 +#: src/Module/Admin/Site.php:512 msgid "Global directory URL" msgstr "" -#: src/Module/Admin/Site.php:510 +#: src/Module/Admin/Site.php:512 msgid "" "URL to the global directory. If this is not set, the global directory is " "completely unavailable to the application." msgstr "" -#: src/Module/Admin/Site.php:511 +#: src/Module/Admin/Site.php:513 msgid "Private posts by default for new users" msgstr "" -#: src/Module/Admin/Site.php:511 +#: src/Module/Admin/Site.php:513 msgid "" "Set default post permissions for all new members to the default privacy " "circle rather than public." msgstr "" -#: src/Module/Admin/Site.php:512 +#: src/Module/Admin/Site.php:514 msgid "Don't include post content in email notifications" msgstr "" -#: src/Module/Admin/Site.php:512 +#: src/Module/Admin/Site.php:514 msgid "" "Don't include the content of a post/comment/private message/etc. in the " "email notifications that are sent out from this site, as a privacy measure." msgstr "" -#: src/Module/Admin/Site.php:513 +#: src/Module/Admin/Site.php:515 msgid "Disallow public access to addons listed in the apps menu." msgstr "" -#: src/Module/Admin/Site.php:513 +#: src/Module/Admin/Site.php:515 msgid "" "Checking this box will restrict addons listed in the apps menu to members " "only." msgstr "" -#: src/Module/Admin/Site.php:514 +#: src/Module/Admin/Site.php:516 msgid "Don't embed private images in posts" msgstr "" -#: src/Module/Admin/Site.php:514 +#: src/Module/Admin/Site.php:516 msgid "" "Don't replace locally-hosted private photos in posts with an embedded copy " "of the image. This means that contacts who receive posts containing private " "photos will have to authenticate and load each image, which may take a while." msgstr "" -#: src/Module/Admin/Site.php:515 +#: src/Module/Admin/Site.php:517 msgid "Explicit Content" msgstr "" -#: src/Module/Admin/Site.php:515 +#: src/Module/Admin/Site.php:517 msgid "" "Set this to announce that your node is used mostly for explicit content that " "might not be suited for minors. This information will be published in the " @@ -4821,339 +4821,339 @@ msgid "" "will be shown at the user registration page." msgstr "" -#: src/Module/Admin/Site.php:516 +#: src/Module/Admin/Site.php:518 msgid "Proxify external content" msgstr "" -#: src/Module/Admin/Site.php:516 +#: src/Module/Admin/Site.php:518 msgid "" "Route external content via the proxy functionality. This is used for example " "for some OEmbed accesses and in some other rare cases." msgstr "" -#: src/Module/Admin/Site.php:517 +#: src/Module/Admin/Site.php:519 msgid "Only local search" msgstr "" -#: src/Module/Admin/Site.php:517 +#: src/Module/Admin/Site.php:519 msgid "" "Blocks search for users who are not logged in to prevent crawlers from " "blocking your system." msgstr "" -#: src/Module/Admin/Site.php:518 +#: src/Module/Admin/Site.php:520 msgid "Blocked tags for trending tags" msgstr "" -#: src/Module/Admin/Site.php:518 +#: src/Module/Admin/Site.php:520 msgid "" "Comma separated list of hashtags that shouldn't be displayed in the trending " "tags." msgstr "" -#: src/Module/Admin/Site.php:519 +#: src/Module/Admin/Site.php:521 msgid "Cache contact avatars" msgstr "" -#: src/Module/Admin/Site.php:519 +#: src/Module/Admin/Site.php:521 msgid "" "Locally store the avatar pictures of the contacts. This uses a lot of " "storage space but it increases the performance." msgstr "" -#: src/Module/Admin/Site.php:520 +#: src/Module/Admin/Site.php:522 msgid "Allow Users to set remote_self" msgstr "" -#: src/Module/Admin/Site.php:520 +#: src/Module/Admin/Site.php:522 msgid "" "With checking this, every user is allowed to mark every contact as a " "remote_self in the repair contact dialog. Setting this flag on a contact " "causes mirroring every posting of that contact in the users stream." msgstr "" -#: src/Module/Admin/Site.php:521 +#: src/Module/Admin/Site.php:523 msgid "Allow Users to set up relay channels" msgstr "" -#: src/Module/Admin/Site.php:521 +#: src/Module/Admin/Site.php:523 msgid "" "If enabled, it is possible to create relay users that are used to reshare " "content based on user defined channels." msgstr "" -#: src/Module/Admin/Site.php:522 +#: src/Module/Admin/Site.php:524 msgid "Adjust the feed poll frequency" msgstr "" -#: src/Module/Admin/Site.php:522 +#: src/Module/Admin/Site.php:524 msgid "Automatically detect and set the best feed poll frequency." msgstr "" -#: src/Module/Admin/Site.php:523 +#: src/Module/Admin/Site.php:525 msgid "Minimum poll interval" msgstr "" -#: src/Module/Admin/Site.php:523 +#: src/Module/Admin/Site.php:525 msgid "" "Minimal distance in minutes between two polls for mail and feed contacts. " "Reasonable values are between 1 and 59." msgstr "" -#: src/Module/Admin/Site.php:524 +#: src/Module/Admin/Site.php:526 msgid "Enable multiple registrations" msgstr "" -#: src/Module/Admin/Site.php:524 +#: src/Module/Admin/Site.php:526 msgid "Enable users to register additional accounts for use as pages." msgstr "" -#: src/Module/Admin/Site.php:525 +#: src/Module/Admin/Site.php:527 msgid "Enable OpenID" msgstr "" -#: src/Module/Admin/Site.php:525 +#: src/Module/Admin/Site.php:527 msgid "Enable OpenID support for registration and logins." msgstr "" -#: src/Module/Admin/Site.php:526 +#: src/Module/Admin/Site.php:528 msgid "Enable full name check" msgstr "" -#: src/Module/Admin/Site.php:526 +#: src/Module/Admin/Site.php:528 msgid "" "Prevents users from registering with a display name with fewer than two " "parts separated by spaces." msgstr "" -#: src/Module/Admin/Site.php:527 +#: src/Module/Admin/Site.php:529 msgid "Email administrators on new registration" msgstr "" -#: src/Module/Admin/Site.php:527 +#: src/Module/Admin/Site.php:529 msgid "" "If enabled and the system is set to an open registration, an email for each " "new registration is sent to the administrators." msgstr "" -#: src/Module/Admin/Site.php:528 +#: src/Module/Admin/Site.php:530 msgid "Community pages for visitors" msgstr "" -#: src/Module/Admin/Site.php:528 +#: src/Module/Admin/Site.php:530 msgid "" "Which community pages should be available for visitors. Local users always " "see both pages." msgstr "" -#: src/Module/Admin/Site.php:529 +#: src/Module/Admin/Site.php:531 msgid "Posts per user on community page" msgstr "" -#: src/Module/Admin/Site.php:529 +#: src/Module/Admin/Site.php:531 msgid "" "The maximum number of posts per user on the local community page. This is " "useful, when a single user floods the local community page." msgstr "" -#: src/Module/Admin/Site.php:530 +#: src/Module/Admin/Site.php:532 msgid "Posts per server on community page" msgstr "" -#: src/Module/Admin/Site.php:530 +#: src/Module/Admin/Site.php:532 msgid "" "The maximum number of posts per server on the global community page. This is " "useful, when posts from a single server flood the global community page." msgstr "" -#: src/Module/Admin/Site.php:532 +#: src/Module/Admin/Site.php:534 msgid "Enable Mail support" msgstr "" -#: src/Module/Admin/Site.php:532 +#: src/Module/Admin/Site.php:534 msgid "" "Enable built-in mail support to poll IMAP folders and to reply via mail." msgstr "" -#: src/Module/Admin/Site.php:533 +#: src/Module/Admin/Site.php:535 msgid "" "Mail support can't be enabled because the PHP IMAP module is not installed." msgstr "" -#: src/Module/Admin/Site.php:534 +#: src/Module/Admin/Site.php:536 msgid "Enable OStatus support" msgstr "" -#: src/Module/Admin/Site.php:534 +#: src/Module/Admin/Site.php:536 msgid "" "Enable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All " "communications in OStatus are public." msgstr "" -#: src/Module/Admin/Site.php:536 +#: src/Module/Admin/Site.php:538 msgid "" "Diaspora support can't be enabled because Friendica was installed into a sub " "directory." msgstr "" -#: src/Module/Admin/Site.php:537 +#: src/Module/Admin/Site.php:539 msgid "Enable Diaspora support" msgstr "" -#: src/Module/Admin/Site.php:537 +#: src/Module/Admin/Site.php:539 msgid "" "Enable built-in Diaspora network compatibility for communicating with " "diaspora servers." msgstr "" -#: src/Module/Admin/Site.php:538 +#: src/Module/Admin/Site.php:540 msgid "Verify SSL" msgstr "" -#: src/Module/Admin/Site.php:538 +#: src/Module/Admin/Site.php:540 msgid "" "If you wish, you can turn on strict certificate checking. This will mean you " "cannot connect (at all) to self-signed SSL sites." msgstr "" -#: src/Module/Admin/Site.php:539 +#: src/Module/Admin/Site.php:541 msgid "Proxy user" msgstr "" -#: src/Module/Admin/Site.php:539 +#: src/Module/Admin/Site.php:541 msgid "User name for the proxy server." msgstr "" -#: src/Module/Admin/Site.php:540 +#: src/Module/Admin/Site.php:542 msgid "Proxy URL" msgstr "" -#: src/Module/Admin/Site.php:540 +#: src/Module/Admin/Site.php:542 msgid "" "If you want to use a proxy server that Friendica should use to connect to " "the network, put the URL of the proxy here." msgstr "" -#: src/Module/Admin/Site.php:541 +#: src/Module/Admin/Site.php:543 msgid "Network timeout" msgstr "" -#: src/Module/Admin/Site.php:541 +#: src/Module/Admin/Site.php:543 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." msgstr "" -#: src/Module/Admin/Site.php:542 +#: src/Module/Admin/Site.php:544 msgid "Maximum Load Average" msgstr "" -#: src/Module/Admin/Site.php:542 +#: src/Module/Admin/Site.php:544 #, php-format msgid "" "Maximum system load before delivery and poll processes are deferred - " "default %d." msgstr "" -#: src/Module/Admin/Site.php:543 +#: src/Module/Admin/Site.php:545 msgid "Minimal Memory" msgstr "" -#: src/Module/Admin/Site.php:543 +#: src/Module/Admin/Site.php:545 msgid "" "Minimal free memory in MB for the worker. Needs access to /proc/meminfo - " "default 0 (deactivated)." msgstr "" -#: src/Module/Admin/Site.php:544 +#: src/Module/Admin/Site.php:546 msgid "Periodically optimize tables" msgstr "" -#: src/Module/Admin/Site.php:544 +#: src/Module/Admin/Site.php:546 msgid "Periodically optimize tables like the cache and the workerqueue" msgstr "" -#: src/Module/Admin/Site.php:546 +#: src/Module/Admin/Site.php:548 msgid "Discover followers/followings from contacts" msgstr "" -#: src/Module/Admin/Site.php:546 +#: src/Module/Admin/Site.php:548 msgid "" "If enabled, contacts are checked for their followers and following contacts." msgstr "" -#: src/Module/Admin/Site.php:547 +#: src/Module/Admin/Site.php:549 msgid "None - deactivated" msgstr "" -#: src/Module/Admin/Site.php:548 +#: src/Module/Admin/Site.php:550 msgid "" "Local contacts - contacts of our local contacts are discovered for their " "followers/followings." msgstr "" -#: src/Module/Admin/Site.php:549 +#: src/Module/Admin/Site.php:551 msgid "" "Interactors - contacts of our local contacts and contacts who interacted on " "locally visible postings are discovered for their followers/followings." msgstr "" -#: src/Module/Admin/Site.php:551 +#: src/Module/Admin/Site.php:553 msgid "Only update contacts/servers with local data" msgstr "" -#: src/Module/Admin/Site.php:551 +#: src/Module/Admin/Site.php:553 msgid "" "If enabled, the system will only look for changes in contacts and servers " "that engaged on this system by either being in a contact list of a user or " "when posts or comments exists from the contact on this system." msgstr "" -#: src/Module/Admin/Site.php:552 +#: src/Module/Admin/Site.php:554 msgid "Synchronize the contacts with the directory server" msgstr "" -#: src/Module/Admin/Site.php:552 +#: src/Module/Admin/Site.php:554 msgid "" "if enabled, the system will check periodically for new contacts on the " "defined directory server." msgstr "" -#: src/Module/Admin/Site.php:554 +#: src/Module/Admin/Site.php:556 msgid "Discover contacts from other servers" msgstr "" -#: src/Module/Admin/Site.php:554 +#: src/Module/Admin/Site.php:556 msgid "" "Periodically query other servers for contacts and servers that they know of. " "The system queries Friendica, Mastodon and Hubzilla servers. Keep it " "deactivated on small machines to decrease the database size and load." msgstr "" -#: src/Module/Admin/Site.php:555 +#: src/Module/Admin/Site.php:557 msgid "Days between requery" msgstr "" -#: src/Module/Admin/Site.php:555 +#: src/Module/Admin/Site.php:557 msgid "" "Number of days after which a server is requeried for their contacts and " "servers it knows of. This is only used when the discovery is activated." msgstr "" -#: src/Module/Admin/Site.php:556 +#: src/Module/Admin/Site.php:558 msgid "Search the local directory" msgstr "" -#: src/Module/Admin/Site.php:556 +#: src/Module/Admin/Site.php:558 msgid "" "Search the local directory instead of the global directory. When searching " "locally, every search will be executed on the global directory in the " "background. This improves the search results when the search is repeated." msgstr "" -#: src/Module/Admin/Site.php:558 +#: src/Module/Admin/Site.php:560 msgid "Publish server information" msgstr "" -#: src/Module/Admin/Site.php:558 +#: src/Module/Admin/Site.php:560 msgid "" "If enabled, general server and usage data will be published. The data " "contains the name and version of the server, number of users with public " @@ -5161,50 +5161,50 @@ msgid "" "href=\"http://the-federation.info/\">the-federation.info for details." msgstr "" -#: src/Module/Admin/Site.php:560 +#: src/Module/Admin/Site.php:562 msgid "Check upstream version" msgstr "" -#: src/Module/Admin/Site.php:560 +#: src/Module/Admin/Site.php:562 msgid "" "Enables checking for new Friendica versions at github. If there is a new " "version, you will be informed in the admin panel overview." msgstr "" -#: src/Module/Admin/Site.php:561 +#: src/Module/Admin/Site.php:563 msgid "Suppress Tags" msgstr "" -#: src/Module/Admin/Site.php:561 +#: src/Module/Admin/Site.php:563 msgid "Suppress showing a list of hashtags at the end of the posting." msgstr "" -#: src/Module/Admin/Site.php:562 +#: src/Module/Admin/Site.php:564 msgid "Clean database" msgstr "" -#: src/Module/Admin/Site.php:562 +#: src/Module/Admin/Site.php:564 msgid "" "Remove old remote items, orphaned database records and old content from some " "other helper tables." msgstr "" -#: src/Module/Admin/Site.php:563 +#: src/Module/Admin/Site.php:565 msgid "Lifespan of remote items" msgstr "" -#: src/Module/Admin/Site.php:563 +#: src/Module/Admin/Site.php:565 msgid "" "When the database cleanup is enabled, this defines the days after which " "remote items will be deleted. Own items, and marked or filed items are " "always kept. 0 disables this behaviour." msgstr "" -#: src/Module/Admin/Site.php:564 +#: src/Module/Admin/Site.php:566 msgid "Lifespan of unclaimed items" msgstr "" -#: src/Module/Admin/Site.php:564 +#: src/Module/Admin/Site.php:566 msgid "" "When the database cleanup is enabled, this defines the days after which " "unclaimed remote items (mostly content from the relay) will be deleted. " @@ -5212,175 +5212,175 @@ msgid "" "items if set to 0." msgstr "" -#: src/Module/Admin/Site.php:565 +#: src/Module/Admin/Site.php:567 msgid "Lifespan of raw conversation data" msgstr "" -#: src/Module/Admin/Site.php:565 +#: src/Module/Admin/Site.php:567 msgid "" "The conversation data is used for ActivityPub and OStatus, as well as for " "debug purposes. It should be safe to remove it after 14 days, default is 90 " "days." msgstr "" -#: src/Module/Admin/Site.php:566 +#: src/Module/Admin/Site.php:568 msgid "Maximum numbers of comments per post" msgstr "" -#: src/Module/Admin/Site.php:566 +#: src/Module/Admin/Site.php:568 msgid "How much comments should be shown for each post? Default value is 100." msgstr "" -#: src/Module/Admin/Site.php:567 +#: src/Module/Admin/Site.php:569 msgid "Maximum numbers of comments per post on the display page" msgstr "" -#: src/Module/Admin/Site.php:567 +#: src/Module/Admin/Site.php:569 msgid "" "How many comments should be shown on the single view for each post? Default " "value is 1000." msgstr "" -#: src/Module/Admin/Site.php:568 +#: src/Module/Admin/Site.php:570 msgid "Items per page" msgstr "" -#: src/Module/Admin/Site.php:568 +#: src/Module/Admin/Site.php:570 msgid "" "Number of items per page in stream pages (network, community, profile/" "contact statuses, search)." msgstr "" -#: src/Module/Admin/Site.php:569 +#: src/Module/Admin/Site.php:571 msgid "Items per page for mobile devices" msgstr "" -#: src/Module/Admin/Site.php:569 +#: src/Module/Admin/Site.php:571 msgid "" "Number of items per page in stream pages (network, community, profile/" "contact statuses, search) for mobile devices." msgstr "" -#: src/Module/Admin/Site.php:570 +#: src/Module/Admin/Site.php:572 msgid "Temp path" msgstr "" -#: src/Module/Admin/Site.php:570 +#: src/Module/Admin/Site.php:572 msgid "" "If you have a restricted system where the webserver can't access the system " "temp path, enter another path here." msgstr "" -#: src/Module/Admin/Site.php:571 +#: src/Module/Admin/Site.php:573 msgid "Only search in tags" msgstr "" -#: src/Module/Admin/Site.php:571 +#: src/Module/Admin/Site.php:573 msgid "On large systems the text search can slow down the system extremely." msgstr "" -#: src/Module/Admin/Site.php:572 +#: src/Module/Admin/Site.php:574 msgid "Maximum age of items in the search table" msgstr "" -#: src/Module/Admin/Site.php:572 +#: src/Module/Admin/Site.php:574 msgid "" "Maximum age of items in the search table in days. Lower values will increase " "the performance and reduce disk usage. 0 means no age restriction." msgstr "" -#: src/Module/Admin/Site.php:573 +#: src/Module/Admin/Site.php:575 msgid "Generate counts per contact circle when calculating network count" msgstr "" -#: src/Module/Admin/Site.php:573 +#: src/Module/Admin/Site.php:575 msgid "" "On systems with users that heavily use contact circles the query can be very " "expensive." msgstr "" -#: src/Module/Admin/Site.php:574 +#: src/Module/Admin/Site.php:576 msgid "Process \"view\" activities" msgstr "" -#: src/Module/Admin/Site.php:574 +#: src/Module/Admin/Site.php:576 msgid "" "\"view\" activities are mostly geberated by Peertube systems. Per default " "they are not processed for performance reasons. Only activate this option on " "performant system." msgstr "" -#: src/Module/Admin/Site.php:575 +#: src/Module/Admin/Site.php:577 msgid "Days, after which a contact is archived" msgstr "" -#: src/Module/Admin/Site.php:575 +#: src/Module/Admin/Site.php:577 msgid "" "Number of days that we try to deliver content or to update the contact data " "before we archive a contact." msgstr "" -#: src/Module/Admin/Site.php:577 +#: src/Module/Admin/Site.php:579 msgid "Maximum number of parallel workers" msgstr "" -#: src/Module/Admin/Site.php:577 +#: src/Module/Admin/Site.php:579 #, php-format msgid "" "On shared hosters set this to %d. On larger systems, values of %d are great. " "Default value is %d." msgstr "" -#: src/Module/Admin/Site.php:578 +#: src/Module/Admin/Site.php:580 msgid "Maximum load for workers" msgstr "" -#: src/Module/Admin/Site.php:578 +#: src/Module/Admin/Site.php:580 msgid "Maximum load that causes a cooldown before each worker function call." msgstr "" -#: src/Module/Admin/Site.php:579 +#: src/Module/Admin/Site.php:581 msgid "Enable fastlane" msgstr "" -#: src/Module/Admin/Site.php:579 +#: src/Module/Admin/Site.php:581 msgid "" "When enabed, the fastlane mechanism starts an additional worker if processes " "with higher priority are blocked by processes of lower priority." msgstr "" -#: src/Module/Admin/Site.php:580 +#: src/Module/Admin/Site.php:582 msgid "Decoupled receiver" msgstr "" -#: src/Module/Admin/Site.php:580 +#: src/Module/Admin/Site.php:582 msgid "" "Decouple incoming ActivityPub posts by processing them in the background via " "a worker process. Only enable this on fast systems." msgstr "" -#: src/Module/Admin/Site.php:581 +#: src/Module/Admin/Site.php:583 msgid "Cron interval" msgstr "" -#: src/Module/Admin/Site.php:581 +#: src/Module/Admin/Site.php:583 msgid "Minimal period in minutes between two calls of the \"Cron\" worker job." msgstr "" -#: src/Module/Admin/Site.php:582 +#: src/Module/Admin/Site.php:584 msgid "Worker defer limit" msgstr "" -#: src/Module/Admin/Site.php:582 +#: src/Module/Admin/Site.php:584 msgid "" "Per default the systems tries delivering for 15 times before dropping it." msgstr "" -#: src/Module/Admin/Site.php:583 +#: src/Module/Admin/Site.php:585 msgid "Worker fetch limit" msgstr "" -#: src/Module/Admin/Site.php:583 +#: src/Module/Admin/Site.php:585 msgid "" "Number of worker tasks that are fetched in a single query. Higher values " "should increase the performance, too high values will mostly likely decrease " @@ -5388,142 +5388,153 @@ msgid "" "system." msgstr "" -#: src/Module/Admin/Site.php:585 +#: src/Module/Admin/Site.php:587 msgid "Direct relay transfer" msgstr "" -#: src/Module/Admin/Site.php:585 +#: src/Module/Admin/Site.php:587 msgid "" "Enables the direct transfer to other servers without using the relay servers" msgstr "" -#: src/Module/Admin/Site.php:586 +#: src/Module/Admin/Site.php:588 msgid "Relay scope" msgstr "" -#: src/Module/Admin/Site.php:586 +#: src/Module/Admin/Site.php:588 msgid "" "Can be \"all\" or \"tags\". \"all\" means that every public post should be " "received. \"tags\" means that only posts with selected tags should be " "received." msgstr "" -#: src/Module/Admin/Site.php:586 src/Module/Contact/Profile.php:309 +#: src/Module/Admin/Site.php:588 src/Module/Contact/Profile.php:309 #: src/Module/Settings/TwoFactor/Index.php:146 msgid "Disabled" msgstr "" -#: src/Module/Admin/Site.php:586 +#: src/Module/Admin/Site.php:588 msgid "all" msgstr "" -#: src/Module/Admin/Site.php:586 +#: src/Module/Admin/Site.php:588 msgid "tags" msgstr "" -#: src/Module/Admin/Site.php:587 +#: src/Module/Admin/Site.php:589 msgid "Server tags" msgstr "" -#: src/Module/Admin/Site.php:587 +#: src/Module/Admin/Site.php:589 msgid "Comma separated list of tags for the \"tags\" subscription." msgstr "" -#: src/Module/Admin/Site.php:588 +#: src/Module/Admin/Site.php:590 msgid "Deny Server tags" msgstr "" -#: src/Module/Admin/Site.php:588 +#: src/Module/Admin/Site.php:590 msgid "Comma separated list of tags that are rejected." msgstr "" -#: src/Module/Admin/Site.php:589 +#: src/Module/Admin/Site.php:591 +msgid "Maximum amount of tags" +msgstr "" + +#: src/Module/Admin/Site.php:591 +msgid "" +"Maximum amount of tags in a post before it is rejected as spam. The post has " +"to contain at least one link. Posts from subscribed accounts will not be " +"rejected." +msgstr "" + +#: src/Module/Admin/Site.php:592 msgid "Allow user tags" msgstr "" -#: src/Module/Admin/Site.php:589 +#: src/Module/Admin/Site.php:592 msgid "" "If enabled, the tags from the saved searches will used for the \"tags\" " "subscription in addition to the \"relay_server_tags\"." msgstr "" -#: src/Module/Admin/Site.php:590 +#: src/Module/Admin/Site.php:593 msgid "Deny undetected languages" msgstr "" -#: src/Module/Admin/Site.php:590 +#: src/Module/Admin/Site.php:593 msgid "If enabled, posts with undetected languages will be rejected." msgstr "" -#: src/Module/Admin/Site.php:591 +#: src/Module/Admin/Site.php:594 msgid "Language Quality" msgstr "" -#: src/Module/Admin/Site.php:591 +#: src/Module/Admin/Site.php:594 msgid "The minimum language quality that is required to accept the post." msgstr "" -#: src/Module/Admin/Site.php:592 +#: src/Module/Admin/Site.php:595 msgid "Number of languages for the language detection" msgstr "" -#: src/Module/Admin/Site.php:592 +#: src/Module/Admin/Site.php:595 msgid "" "The system detects a list of languages per post. Only if the desired " "languages are in the list, the message will be accepted. The higher the " "number, the more posts will be falsely detected." msgstr "" -#: src/Module/Admin/Site.php:594 +#: src/Module/Admin/Site.php:597 msgid "Maximum age of channel" msgstr "" -#: src/Module/Admin/Site.php:594 +#: src/Module/Admin/Site.php:597 msgid "" "This defines the maximum age in hours of items that should be displayed in " "channels. This affects the channel performance." msgstr "" -#: src/Module/Admin/Site.php:595 +#: src/Module/Admin/Site.php:598 msgid "Maximum number of channel posts" msgstr "" -#: src/Module/Admin/Site.php:595 +#: src/Module/Admin/Site.php:598 msgid "" "For performance reasons, the channels use a dedicated table to store " "content. The higher the value the slower the channels." msgstr "" -#: src/Module/Admin/Site.php:596 +#: src/Module/Admin/Site.php:599 msgid "Interaction score days" msgstr "" -#: src/Module/Admin/Site.php:596 +#: src/Module/Admin/Site.php:599 msgid "Number of days that are used to calculate the interaction score." msgstr "" -#: src/Module/Admin/Site.php:597 +#: src/Module/Admin/Site.php:600 msgid "Maximum number of posts per author" msgstr "" -#: src/Module/Admin/Site.php:597 +#: src/Module/Admin/Site.php:600 msgid "" "Maximum number of posts per page by author if the contact frequency is set " "to \"Display only few posts\". If there are more posts, then the post with " "the most interactions will be displayed." msgstr "" -#: src/Module/Admin/Site.php:598 +#: src/Module/Admin/Site.php:601 msgid "Sharer interaction days" msgstr "" -#: src/Module/Admin/Site.php:598 +#: src/Module/Admin/Site.php:601 msgid "" "Number of days of the last interaction that are used to define which sharers " "are used for the \"sharers of sharers\" channel." msgstr "" -#: src/Module/Admin/Site.php:601 +#: src/Module/Admin/Site.php:604 msgid "Start Relocation" msgstr "" diff --git a/view/templates/admin/site.tpl b/view/templates/admin/site.tpl index 75efff43c8..c4140c292d 100644 --- a/view/templates/admin/site.tpl +++ b/view/templates/admin/site.tpl @@ -160,6 +160,7 @@ {{include file="field_select.tpl" field=$relay_scope}} {{include file="field_input.tpl" field=$relay_server_tags}} {{include file="field_input.tpl" field=$relay_deny_tags}} + {{include file="field_input.tpl" field=$relay_max_tags}} {{include file="field_checkbox.tpl" field=$relay_user_tags}} {{include file="field_checkbox.tpl" field=$relay_directly}} {{include file="field_checkbox.tpl" field=$relay_deny_undetected_language}} diff --git a/view/theme/frio/templates/admin/site.tpl b/view/theme/frio/templates/admin/site.tpl index a7de90480d..85f141589c 100644 --- a/view/theme/frio/templates/admin/site.tpl +++ b/view/theme/frio/templates/admin/site.tpl @@ -329,6 +329,7 @@ {{include file="field_select.tpl" field=$relay_scope}} {{include file="field_input.tpl" field=$relay_server_tags}} {{include file="field_input.tpl" field=$relay_deny_tags}} + {{include file="field_input.tpl" field=$relay_max_tags}} {{include file="field_checkbox.tpl" field=$relay_user_tags}} {{include file="field_checkbox.tpl" field=$relay_directly}} {{include file="field_checkbox.tpl" field=$relay_deny_undetected_language}} From e1381cfc5cf7f72743de80e30be66e3b28e4d035 Mon Sep 17 00:00:00 2001 From: Michael Vogel Date: Thu, 25 Jan 2024 22:16:38 +0100 Subject: [PATCH 4/4] Update src/Model/Post/Counts.php Co-authored-by: Hypolite Petovan --- src/Model/Post/Counts.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Model/Post/Counts.php b/src/Model/Post/Counts.php index 8606a9b6cf..1b04636447 100644 --- a/src/Model/Post/Counts.php +++ b/src/Model/Post/Counts.php @@ -78,7 +78,7 @@ class Counts { self::update($uri_id, $parent_uri_id, Verb::getID(Activity::POST), Activity::POST); - $activities = DBA::p("SELECT `parent-uri-id`, `vid`, `verb`, `body` FROM `post-view` WHERE `thr-parent-id` = ? AND `gravity` = ? AND NOT `vid` IS NULL GROUP BY `parent-uri-id`, `vid`, `verb`, `body`", $uri_id, Item::GRAVITY_ACTIVITY); + $activities = DBA::p("SELECT `parent-uri-id`, `vid`, `verb`, `body` FROM `post-view` WHERE `thr-parent-id` = ? AND `gravity` = ? AND `vid` IS NOT NULL GROUP BY `parent-uri-id`, `vid`, `verb`, `body`", $uri_id, Item::GRAVITY_ACTIVITY); while ($activity = DBA::fetch($activities)) { self::update($uri_id, $activity['parent-uri-id'], $activity['vid'], $activity['verb'], $activity['body']); }