diff --git a/mod/photos.php b/mod/photos.php index e5a24d22a..14eb88ac9 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -654,7 +654,7 @@ function photos_post(App $a) Logger::info('photos: upload: received file: ' . $filename . ' as ' . $src . ' ('. $type . ') ' . $filesize . ' bytes'); - $maximagesize = DI::config()->get('system', 'maximagesize'); + $maximagesize = Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')); if ($maximagesize && ($filesize > $maximagesize)) { DI::sysmsg()->addNotice(DI::l10n()->t('Image exceeds size limit of %s', Strings::formatBytes($maximagesize))); @@ -914,7 +914,20 @@ function photos_content(App $a) '$submit' => DI::l10n()->t('Submit'), ]); - $usage_message = ''; + // Get the relevant size limits for uploads. Abbreviated var names: MaxImageSize -> mis; upload_max_filesize -> umf + $mis_bytes = Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')); + $umf_bytes = Strings::getBytesFromShorthand(ini_get('upload_max_filesize')); + + // Per Friendica definition a value of '0' means unlimited: + If ($mis_bytes == 0) { + $mis_bytes = INF; + } + + // When PHP is configured with upload_max_filesize less than maximagesize provide this lower limit. + $maximagesize_bytes = (is_numeric($mis_bytes) && ($mis_bytes < $umf_bytes) ? $mis_bytes : $umf_bytes); + + // @todo We may be want to use appropriate binary prefixed dynamicly + $usage_message = DI::l10n()->t('The maximum accepted image size is %s', Strings::formatBytes($maximagesize_bytes)); $tpl = Renderer::getMarkupTemplate('photos_upload.tpl'); diff --git a/src/Model/Photo.php b/src/Model/Photo.php index 990fb7e61..126bc152b 100644 --- a/src/Model/Photo.php +++ b/src/Model/Photo.php @@ -575,8 +575,9 @@ class Photo $image->scaleToSquare(300); $filesize = strlen($image->asString()); - $maximagesize = DI::config()->get('system', 'maximagesize'); - if (!empty($maximagesize) && ($filesize > $maximagesize)) { + $maximagesize = Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')); + + if ($maximagesize && ($filesize > $maximagesize)) { Logger::info('Avatar exceeds image limit', ['uid' => $uid, 'cid' => $cid, 'maximagesize' => $maximagesize, 'size' => $filesize, 'type' => $image->getType()]); if ($image->getType() == 'image/gif') { $image->toStatic(); @@ -966,9 +967,9 @@ class Photo $width = $image->getWidth(); $height = $image->getHeight(); - $maximagesize = DI::config()->get('system', 'maximagesize'); + $maximagesize = Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize')); - if (!empty($maximagesize) && ($filesize > $maximagesize)) { + if ($maximagesize && ($filesize > $maximagesize)) { // Scale down to multiples of 640 until the maximum size isn't exceeded anymore foreach ([5120, 2560, 1280, 640] as $pixels) { if (($filesize > $maximagesize) && (max($width, $height) > $pixels)) { diff --git a/src/Module/Admin/Site.php b/src/Module/Admin/Site.php index ab6624f77..9e23d6a63 100644 --- a/src/Module/Admin/Site.php +++ b/src/Module/Admin/Site.php @@ -34,9 +34,11 @@ use Friendica\Model\User; use Friendica\Module\BaseAdmin; use Friendica\Module\Conversation\Community; use Friendica\Module\Register; +use Friendica\Navigation\SystemMessages; use Friendica\Protocol\Relay; use Friendica\Util\BasePath; use Friendica\Util\EMailer\MailBuilder; +use Friendica\Util\Strings; class Site extends BaseAdmin { @@ -67,7 +69,7 @@ class Site extends BaseAdmin $language = (!empty($_POST['language']) ? trim($_POST['language']) : ''); $theme = (!empty($_POST['theme']) ? trim($_POST['theme']) : ''); $theme_mobile = (!empty($_POST['theme_mobile']) ? trim($_POST['theme_mobile']) : ''); - $maximagesize = (!empty($_POST['maximagesize']) ? intval(trim($_POST['maximagesize'])) : 0); + $maximagesize = (!empty($_POST['maximagesize']) ? trim($_POST['maximagesize']) : 0); $maximagelength = (!empty($_POST['maximagelength']) ? intval(trim($_POST['maximagelength'])) : -1); $jpegimagequality = (!empty($_POST['jpegimagequality']) ? intval(trim($_POST['jpegimagequality'])) : 100); @@ -239,7 +241,11 @@ class Site extends BaseAdmin } else { DI::config()->set('system', 'singleuser', $singleuser); } - DI::config()->set('system', 'maximagesize' , $maximagesize); + if (preg_match('/\d+(?:\s*[kmg])?/i', $maximagesize)) { + DI::config()->set('system', 'maximagesize', $maximagesize); + } else { + DI::sysmsg()->addNotice(DI::l10n()->t('%s is no valid input for maximum image size', $maximagesize)); + } DI::config()->set('system', 'max_image_length' , $maximagelength); DI::config()->set('system', 'jpeg_quality' , $jpegimagequality); @@ -467,7 +473,10 @@ class Site extends BaseAdmin '$show_help' => ['show_help', DI::l10n()->t('Show help entry from navigation menu'), !DI::config()->get('system', 'hide_help'), DI::l10n()->t('Displays the menu entry for the Help pages from the navigation menu. It is always accessible by calling /help directly.')], '$singleuser' => ['singleuser', DI::l10n()->t('Single user instance'), DI::config()->get('system', 'singleuser', '---'), DI::l10n()->t('Make this instance multi-user or single-user for the named user'), $user_names], - '$maximagesize' => ['maximagesize', DI::l10n()->t('Maximum image size'), DI::config()->get('system', 'maximagesize'), DI::l10n()->t('Maximum size in bytes of uploaded images. Default is 0, which means no limits. Be aware that this setting does not affect server-side upload limits.')], + '$maximagesize' => ['maximagesize', DI::l10n()->t('Maximum image size'), DI::config()->get('system', 'maximagesize'), DI::l10n()->t('Maximum size in bytes of uploaded images. Default is 0, which means no limits. You can put k, m, or g behind the desired value for KiB, MiB, GiB, respectively. + The value of upload_max_filesize in your PHP.ini needs be set to at least the desired limit. + Currently upload_max_filesize is set to %s (%sB)', Strings::getBytesFromShorthand(ini_get('upload_max_filesize')), ini_get('upload_max_filesize')), + '', 'pattern="\d+(?:\s*[kmg])?"'], '$maximagelength' => ['maximagelength', DI::l10n()->t('Maximum image length'), DI::config()->get('system', 'max_image_length'), DI::l10n()->t('Maximum length in pixels of the longest side of uploaded images. Default is -1, which means no limits.')], '$jpegimagequality' => ['jpegimagequality', DI::l10n()->t('JPEG image quality'), DI::config()->get('system', 'jpeg_quality'), DI::l10n()->t('Uploaded JPEGS will be saved at this quality setting [0-100]. Default is 100, which is full quality.')], diff --git a/src/Module/Media/Photo/Upload.php b/src/Module/Media/Photo/Upload.php index c07249c90..9f6ed3436 100644 --- a/src/Module/Media/Photo/Upload.php +++ b/src/Module/Media/Photo/Upload.php @@ -168,9 +168,9 @@ class Upload extends \Friendica\BaseModule $width = $image->getWidth(); $height = $image->getHeight(); - $maximagesize = $this->config->get('system', 'maximagesize'); + $maximagesize = Strings::getBytesFromShorthand($this->config->get('system', 'maximagesize')); - if (!empty($maximagesize) && $filesize > $maximagesize) { + if ($maximagesize && $filesize > $maximagesize) { // Scale down to multiples of 640 until the maximum size isn't exceeded anymore foreach ([5120, 2560, 1280, 640] as $pixels) { if ($filesize > $maximagesize && max($width, $height) > $pixels) { diff --git a/src/Module/Settings/Profile/Photo/Index.php b/src/Module/Settings/Profile/Photo/Index.php index d58576e75..26caae965 100644 --- a/src/Module/Settings/Profile/Photo/Index.php +++ b/src/Module/Settings/Profile/Photo/Index.php @@ -53,7 +53,7 @@ class Index extends BaseSettings $filetype = Images::getMimeTypeBySource($src, $filename, $filetype); - $maximagesize = DI::config()->get('system', 'maximagesize', 0); + $maximagesize = Strings::getBytesFromShorthand(DI::config()->get('system', 'maximagesize', 0)); if ($maximagesize && $filesize > $maximagesize) { DI::sysmsg()->addNotice(DI::l10n()->t('Image exceeds size limit of %s', Strings::formatBytes($maximagesize))); diff --git a/src/Util/Strings.php b/src/Util/Strings.php index 565c9bbb0..0d7bf6691 100644 --- a/src/Util/Strings.php +++ b/src/Util/Strings.php @@ -220,7 +220,12 @@ class Strings */ public static function formatBytes(int $bytes, int $precision = 2): string { - $units = ['B', 'KB', 'MB', 'GB', 'TB']; + // If this method is called for an infinite (== unlimited) amount of bytes: + if ($bytes == INF) { + return INF; + } + + $units = ['B', 'KiB', 'MiB', 'GiB', 'TiB']; $bytes = max($bytes, 0); $pow = floor(($bytes ? log($bytes) : 0) / log(1024)); $pow = min($pow, count($units) - 1); @@ -502,4 +507,35 @@ class Strings return $text; } -} \ No newline at end of file + + /** + * This function converts a PHP's shorhand notation string for file sizes in to an integer number of total bytes. + * For example: The string for shorthand notation of '2M' (which is 2,097,152 Bytes) is converted to 2097152 + * @see https://www.php.net/manual/en/faq.using.php#faq.using.shorthandbytes + * @param string $shorthand + * @return int + */ + public static function getBytesFromShorthand(string $shorthand): int + { + $shorthand = trim($shorthand); + + if (is_numeric($shorthand)) { + return $shorthand; + } + + $last = strtolower($shorthand[strlen($shorthand)-1]); + $shorthand = substr($shorthand, 0, -1); + + switch($last) { + case 'g': + $shorthand *= 1024; + case 'm': + $shorthand *= 1024; + case 'k': + $shorthand *= 1024; + } + + return $shorthand; + } + +} diff --git a/view/lang/C/messages.po b/view/lang/C/messages.po index b9115ad4f..a51b305db 100644 --- a/view/lang/C/messages.po +++ b/view/lang/C/messages.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: 2022.12-dev\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-11-27 00:36+0000\n" +"POT-Creation-Date: 2022-11-30 04:38+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -23,7 +23,7 @@ msgid "Unable to locate original post." msgstr "" #: mod/item.php:179 mod/item.php:184 mod/item.php:855 mod/message.php:69 -#: mod/message.php:114 mod/notes.php:44 mod/photos.php:159 mod/photos.php:884 +#: mod/message.php:114 mod/notes.php:44 mod/photos.php:159 mod/photos.php:888 #: src/Module/Attach.php:55 src/Module/BaseApi.php:94 #: src/Module/BaseNotifications.php:98 src/Module/BaseSettings.php:52 #: src/Module/Calendar/Event/API.php:88 src/Module/Calendar/Event/Form.php:84 @@ -50,7 +50,7 @@ msgstr "" #: src/Module/Settings/Delegation.php:69 src/Module/Settings/Display.php:41 #: src/Module/Settings/Display.php:119 #: src/Module/Settings/Profile/Photo/Crop.php:165 -#: src/Module/Settings/Profile/Photo/Index.php:111 +#: src/Module/Settings/Profile/Photo/Index.php:115 #: src/Module/Settings/RemoveMe.php:117 src/Module/Settings/UserExport.php:80 #: src/Module/Settings/UserExport.php:114 #: src/Module/Settings/UserExport.php:215 @@ -292,16 +292,16 @@ msgstr "" msgid "Insert web link" msgstr "" -#: mod/message.php:203 mod/message.php:360 mod/photos.php:1484 +#: mod/message.php:203 mod/message.php:360 mod/photos.php:1501 #: src/Content/Conversation.php:371 src/Content/Conversation.php:717 #: src/Module/Item/Compose.php:204 src/Module/Post/Edit.php:142 #: src/Module/Profile/UnkMail.php:155 src/Object/Post.php:537 msgid "Please wait" msgstr "" -#: mod/message.php:204 mod/message.php:359 mod/photos.php:914 -#: mod/photos.php:1018 mod/photos.php:1290 mod/photos.php:1331 -#: mod/photos.php:1387 mod/photos.php:1461 +#: mod/message.php:204 mod/message.php:359 mod/photos.php:918 +#: mod/photos.php:1035 mod/photos.php:1307 mod/photos.php:1348 +#: mod/photos.php:1404 mod/photos.php:1478 #: src/Module/Calendar/Event/Form.php:250 src/Module/Contact/Advanced.php:132 #: src/Module/Contact/Profile.php:327 #: src/Module/Debug/ActivityPubConversion.php:140 @@ -384,7 +384,7 @@ msgstr "" msgid "Save" msgstr "" -#: mod/photos.php:68 mod/photos.php:139 mod/photos.php:791 +#: mod/photos.php:68 mod/photos.php:139 mod/photos.php:795 #: src/Model/Event.php:514 src/Model/Profile.php:234 #: src/Module/Calendar/Export.php:67 src/Module/Feed.php:72 #: src/Module/HCard.php:51 src/Module/Profile/Common.php:40 @@ -405,7 +405,7 @@ msgstr "" msgid "Recent Photos" msgstr "" -#: mod/photos.php:110 mod/photos.php:1066 src/Module/Profile/Photos.php:172 +#: mod/photos.php:110 mod/photos.php:1083 src/Module/Profile/Photos.php:172 #: src/Module/Profile/Photos.php:189 msgid "Upload New Photos" msgstr "" @@ -444,9 +444,9 @@ msgstr "" msgid "%1$s was tagged in %2$s by %3$s" msgstr "" -#: mod/photos.php:630 mod/photos.php:633 mod/photos.php:660 -#: src/Module/Media/Photo/Upload.php:188 -#: src/Module/Settings/Profile/Photo/Index.php:59 +#: mod/photos.php:630 mod/photos.php:633 mod/photos.php:664 +#: src/Module/Media/Photo/Upload.php:193 +#: src/Module/Settings/Profile/Photo/Index.php:63 #, php-format msgid "Image exceeds size limit of %s" msgstr "" @@ -465,198 +465,203 @@ msgid "" "administrator" msgstr "" -#: mod/photos.php:668 +#: mod/photos.php:672 msgid "Image file is empty." msgstr "" -#: mod/photos.php:683 src/Module/Media/Photo/Upload.php:154 -#: src/Module/Media/Photo/Upload.php:155 -#: src/Module/Settings/Profile/Photo/Index.php:68 +#: mod/photos.php:687 src/Module/Media/Photo/Upload.php:155 +#: src/Module/Media/Photo/Upload.php:156 +#: src/Module/Settings/Profile/Photo/Index.php:72 msgid "Unable to process image." msgstr "" -#: mod/photos.php:709 src/Module/Media/Photo/Upload.php:206 -#: src/Module/Settings/Profile/Photo/Index.php:95 +#: mod/photos.php:713 src/Module/Media/Photo/Upload.php:211 +#: src/Module/Settings/Profile/Photo/Index.php:99 msgid "Image upload failed." msgstr "" -#: mod/photos.php:795 src/Module/Conversation/Community.php:187 +#: mod/photos.php:799 src/Module/Conversation/Community.php:187 #: src/Module/Directory.php:48 src/Module/Profile/Photos.php:72 #: src/Module/Search/Index.php:64 msgid "Public access denied." msgstr "" -#: mod/photos.php:800 +#: mod/photos.php:804 msgid "No photos selected" msgstr "" -#: mod/photos.php:869 src/Module/Profile/Photos.php:92 +#: mod/photos.php:873 src/Module/Profile/Photos.php:92 msgid "Access to this item is restricted." msgstr "" -#: mod/photos.php:924 +#: mod/photos.php:934 +#, php-format +msgid "The maximum accepted image size is %s" +msgstr "" + +#: mod/photos.php:941 msgid "Upload Photos" msgstr "" -#: mod/photos.php:928 mod/photos.php:1014 +#: mod/photos.php:945 mod/photos.php:1031 msgid "New album name: " msgstr "" -#: mod/photos.php:929 +#: mod/photos.php:946 msgid "or select existing album:" msgstr "" -#: mod/photos.php:930 +#: mod/photos.php:947 msgid "Do not show a status post for this upload" msgstr "" -#: mod/photos.php:932 mod/photos.php:1286 src/Content/Conversation.php:373 +#: mod/photos.php:949 mod/photos.php:1303 src/Content/Conversation.php:373 #: src/Module/Calendar/Event/Form.php:253 src/Module/Post/Edit.php:179 msgid "Permissions" msgstr "" -#: mod/photos.php:995 +#: mod/photos.php:1012 msgid "Do you really want to delete this photo album and all its photos?" msgstr "" -#: mod/photos.php:996 mod/photos.php:1019 +#: mod/photos.php:1013 mod/photos.php:1036 msgid "Delete Album" msgstr "" -#: mod/photos.php:997 mod/photos.php:1098 src/Content/Conversation.php:389 +#: mod/photos.php:1014 mod/photos.php:1115 src/Content/Conversation.php:389 #: src/Module/Contact/Follow.php:173 src/Module/Contact/Revoke.php:109 #: src/Module/Contact/Unfollow.php:126 -#: src/Module/Media/Attachment/Browser.php:78 +#: src/Module/Media/Attachment/Browser.php:77 #: src/Module/Media/Photo/Browser.php:88 src/Module/Post/Edit.php:164 #: src/Module/Post/Tag/Remove.php:109 src/Module/Profile/RemoteFollow.php:134 #: src/Module/Security/TwoFactor/SignOut.php:125 msgid "Cancel" msgstr "" -#: mod/photos.php:1023 +#: mod/photos.php:1040 msgid "Edit Album" msgstr "" -#: mod/photos.php:1024 +#: mod/photos.php:1041 msgid "Drop Album" msgstr "" -#: mod/photos.php:1028 +#: mod/photos.php:1045 msgid "Show Newest First" msgstr "" -#: mod/photos.php:1030 +#: mod/photos.php:1047 msgid "Show Oldest First" msgstr "" -#: mod/photos.php:1051 src/Module/Profile/Photos.php:140 +#: mod/photos.php:1068 src/Module/Profile/Photos.php:140 msgid "View Photo" msgstr "" -#: mod/photos.php:1084 +#: mod/photos.php:1101 msgid "Permission denied. Access to this item may be restricted." msgstr "" -#: mod/photos.php:1086 +#: mod/photos.php:1103 msgid "Photo not available" msgstr "" -#: mod/photos.php:1096 +#: mod/photos.php:1113 msgid "Do you really want to delete this photo?" msgstr "" -#: mod/photos.php:1097 mod/photos.php:1291 +#: mod/photos.php:1114 mod/photos.php:1308 msgid "Delete Photo" msgstr "" -#: mod/photos.php:1189 +#: mod/photos.php:1206 msgid "View photo" msgstr "" -#: mod/photos.php:1191 +#: mod/photos.php:1208 msgid "Edit photo" msgstr "" -#: mod/photos.php:1192 +#: mod/photos.php:1209 msgid "Delete photo" msgstr "" -#: mod/photos.php:1193 +#: mod/photos.php:1210 msgid "Use as profile photo" msgstr "" -#: mod/photos.php:1200 +#: mod/photos.php:1217 msgid "Private Photo" msgstr "" -#: mod/photos.php:1206 +#: mod/photos.php:1223 msgid "View Full Size" msgstr "" -#: mod/photos.php:1259 +#: mod/photos.php:1276 msgid "Tags: " msgstr "" -#: mod/photos.php:1262 +#: mod/photos.php:1279 msgid "[Select tags to remove]" msgstr "" -#: mod/photos.php:1277 +#: mod/photos.php:1294 msgid "New album name" msgstr "" -#: mod/photos.php:1278 +#: mod/photos.php:1295 msgid "Caption" msgstr "" -#: mod/photos.php:1279 +#: mod/photos.php:1296 msgid "Add a Tag" msgstr "" -#: mod/photos.php:1279 +#: mod/photos.php:1296 msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping" msgstr "" -#: mod/photos.php:1280 +#: mod/photos.php:1297 msgid "Do not rotate" msgstr "" -#: mod/photos.php:1281 +#: mod/photos.php:1298 msgid "Rotate CW (right)" msgstr "" -#: mod/photos.php:1282 +#: mod/photos.php:1299 msgid "Rotate CCW (left)" msgstr "" -#: mod/photos.php:1328 mod/photos.php:1384 mod/photos.php:1458 +#: mod/photos.php:1345 mod/photos.php:1401 mod/photos.php:1475 #: src/Module/Contact.php:547 src/Module/Item/Compose.php:188 #: src/Object/Post.php:983 msgid "This is you" msgstr "" -#: mod/photos.php:1330 mod/photos.php:1386 mod/photos.php:1460 +#: mod/photos.php:1347 mod/photos.php:1403 mod/photos.php:1477 #: src/Object/Post.php:531 src/Object/Post.php:985 msgid "Comment" msgstr "" -#: mod/photos.php:1332 mod/photos.php:1388 mod/photos.php:1462 +#: mod/photos.php:1349 mod/photos.php:1405 mod/photos.php:1479 #: src/Content/Conversation.php:386 src/Module/Calendar/Event/Form.php:248 #: src/Module/Item/Compose.php:199 src/Module/Post/Edit.php:162 #: src/Object/Post.php:997 msgid "Preview" msgstr "" -#: mod/photos.php:1333 src/Content/Conversation.php:341 +#: mod/photos.php:1350 src/Content/Conversation.php:341 #: src/Module/Post/Edit.php:127 src/Object/Post.php:987 msgid "Loading..." msgstr "" -#: mod/photos.php:1419 src/Content/Conversation.php:633 src/Object/Post.php:255 +#: mod/photos.php:1436 src/Content/Conversation.php:633 src/Object/Post.php:255 msgid "Select" msgstr "" -#: mod/photos.php:1420 src/Content/Conversation.php:634 +#: mod/photos.php:1437 src/Content/Conversation.php:634 #: src/Module/Moderation/Users/Active.php:136 #: src/Module/Moderation/Users/Blocked.php:136 #: src/Module/Moderation/Users/Index.php:151 @@ -664,23 +669,23 @@ msgstr "" msgid "Delete" msgstr "" -#: mod/photos.php:1481 src/Object/Post.php:378 +#: mod/photos.php:1498 src/Object/Post.php:378 msgid "Like" msgstr "" -#: mod/photos.php:1482 src/Object/Post.php:378 +#: mod/photos.php:1499 src/Object/Post.php:378 msgid "I like this (toggle)" msgstr "" -#: mod/photos.php:1483 src/Object/Post.php:379 +#: mod/photos.php:1500 src/Object/Post.php:379 msgid "Dislike" msgstr "" -#: mod/photos.php:1485 src/Object/Post.php:379 +#: mod/photos.php:1502 src/Object/Post.php:379 msgid "I don't like this (toggle)" msgstr "" -#: mod/photos.php:1507 +#: mod/photos.php:1524 msgid "Map" msgstr "" @@ -706,16 +711,16 @@ msgstr "" msgid "toggle mobile" msgstr "" -#: src/App/Router.php:288 +#: src/App/Router.php:309 #, php-format msgid "Method not allowed for this module. Allowed method(s): %s" msgstr "" -#: src/App/Router.php:290 src/Module/HTTPException/PageNotFound.php:49 +#: src/App/Router.php:311 src/Module/HTTPException/PageNotFound.php:49 msgid "Page not found." msgstr "" -#: src/App/Router.php:318 +#: src/App/Router.php:323 msgid "You must be logged in to use addons. " msgstr "" @@ -1537,7 +1542,7 @@ msgstr "" msgid "show more" msgstr "" -#: src/Content/Item.php:294 src/Model/Item.php:2911 +#: src/Content/Item.php:294 src/Model/Item.php:2914 msgid "event" msgstr "" @@ -1546,7 +1551,7 @@ msgstr "" msgid "status" msgstr "" -#: src/Content/Item.php:303 src/Model/Item.php:2913 +#: src/Content/Item.php:303 src/Model/Item.php:2916 #: src/Module/Post/Tag/Add.php:123 msgid "photo" msgstr "" @@ -1941,8 +1946,8 @@ msgid "" "%2$s %3$s" msgstr "" -#: src/Content/Text/BBCode.php:1245 src/Model/Item.php:3533 -#: src/Model/Item.php:3539 src/Model/Item.php:3540 +#: src/Content/Text/BBCode.php:1245 src/Model/Item.php:3536 +#: src/Model/Item.php:3542 src/Model/Item.php:3543 msgid "Link to source" msgstr "" @@ -3101,66 +3106,66 @@ msgstr "" msgid "Edit groups" msgstr "" -#: src/Model/Item.php:2023 +#: src/Model/Item.php:2026 #, php-format msgid "Detected languages in this post:\\n%s" msgstr "" -#: src/Model/Item.php:2915 +#: src/Model/Item.php:2918 msgid "activity" msgstr "" -#: src/Model/Item.php:2917 +#: src/Model/Item.php:2920 msgid "comment" msgstr "" -#: src/Model/Item.php:2920 +#: src/Model/Item.php:2923 msgid "post" msgstr "" -#: src/Model/Item.php:3061 +#: src/Model/Item.php:3064 #, php-format msgid "Content warning: %s" msgstr "" -#: src/Model/Item.php:3445 +#: src/Model/Item.php:3448 msgid "bytes" msgstr "" -#: src/Model/Item.php:3476 +#: src/Model/Item.php:3479 #, php-format msgid "%2$s (%3$d%%, %1$d vote)" msgid_plural "%2$s (%3$d%%, %1$d votes)" msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3478 +#: src/Model/Item.php:3481 #, php-format msgid "%2$s (%1$d vote)" msgid_plural "%2$s (%1$d votes)" msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3483 +#: src/Model/Item.php:3486 #, php-format msgid "%d voter. Poll end: %s" msgid_plural "%d voters. Poll end: %s" msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3485 +#: src/Model/Item.php:3488 #, php-format msgid "%d voter." msgid_plural "%d voters." msgstr[0] "" msgstr[1] "" -#: src/Model/Item.php:3487 +#: src/Model/Item.php:3490 #, php-format msgid "Poll end: %s" msgstr "" -#: src/Model/Item.php:3521 src/Model/Item.php:3522 +#: src/Model/Item.php:3524 src/Model/Item.php:3525 msgid "View on separate page" msgstr "" @@ -3168,7 +3173,7 @@ msgstr "" msgid "[no subject]" msgstr "" -#: src/Model/Photo.php:1139 src/Module/Media/Photo/Upload.php:198 +#: src/Model/Photo.php:1153 src/Module/Media/Photo/Upload.php:203 msgid "Wall Photos" msgstr "" @@ -3603,7 +3608,7 @@ msgstr "" #: src/Module/Admin/Addons/Details.php:111 src/Module/Admin/Addons/Index.php:67 #: src/Module/Admin/Federation.php:202 src/Module/Admin/Logs/Settings.php:79 #: src/Module/Admin/Logs/View.php:84 src/Module/Admin/Queue.php:72 -#: src/Module/Admin/Site.php:431 src/Module/Admin/Storage.php:138 +#: src/Module/Admin/Site.php:437 src/Module/Admin/Storage.php:138 #: src/Module/Admin/Summary.php:216 src/Module/Admin/Themes/Details.php:90 #: src/Module/Admin/Themes/Index.php:111 src/Module/Admin/Tos.php:75 #: src/Module/Moderation/Users/Create.php:61 @@ -3641,7 +3646,7 @@ msgid "Addon %s failed to install." msgstr "" #: src/Module/Admin/Addons/Index.php:69 src/Module/Admin/Features.php:87 -#: src/Module/Admin/Logs/Settings.php:81 src/Module/Admin/Site.php:434 +#: src/Module/Admin/Logs/Settings.php:81 src/Module/Admin/Site.php:440 #: src/Module/Admin/Themes/Index.php:113 src/Module/Admin/Tos.php:83 #: src/Module/Settings/Account.php:560 src/Module/Settings/Addons.php:81 #: src/Module/Settings/Connectors.php:159 @@ -3993,475 +3998,486 @@ msgstr "" msgid "Priority" msgstr "" -#: src/Module/Admin/Site.php:336 src/Module/Settings/Display.php:137 +#: src/Module/Admin/Site.php:247 +#, php-format +msgid "%s is no valid input for maximum image size" +msgstr "" + +#: src/Module/Admin/Site.php:342 src/Module/Settings/Display.php:137 msgid "No special theme for mobile devices" msgstr "" -#: src/Module/Admin/Site.php:353 src/Module/Settings/Display.php:147 +#: src/Module/Admin/Site.php:359 src/Module/Settings/Display.php:147 #, php-format msgid "%s - (Experimental)" msgstr "" -#: src/Module/Admin/Site.php:365 +#: src/Module/Admin/Site.php:371 msgid "No community page" msgstr "" -#: src/Module/Admin/Site.php:366 +#: src/Module/Admin/Site.php:372 msgid "No community page for visitors" msgstr "" -#: src/Module/Admin/Site.php:367 +#: src/Module/Admin/Site.php:373 msgid "Public postings from users of this site" msgstr "" -#: src/Module/Admin/Site.php:368 +#: src/Module/Admin/Site.php:374 msgid "Public postings from the federated network" msgstr "" -#: src/Module/Admin/Site.php:369 +#: src/Module/Admin/Site.php:375 msgid "Public postings from local users and the federated network" msgstr "" -#: src/Module/Admin/Site.php:375 +#: src/Module/Admin/Site.php:381 msgid "Multi user instance" msgstr "" -#: src/Module/Admin/Site.php:402 +#: src/Module/Admin/Site.php:408 msgid "Closed" msgstr "" -#: src/Module/Admin/Site.php:403 +#: src/Module/Admin/Site.php:409 msgid "Requires approval" msgstr "" -#: src/Module/Admin/Site.php:404 +#: src/Module/Admin/Site.php:410 msgid "Open" msgstr "" -#: src/Module/Admin/Site.php:408 src/Module/Install.php:222 +#: src/Module/Admin/Site.php:414 src/Module/Install.php:222 msgid "No SSL policy, links will track page SSL state" msgstr "" -#: src/Module/Admin/Site.php:409 src/Module/Install.php:223 +#: src/Module/Admin/Site.php:415 src/Module/Install.php:223 msgid "Force all links to use SSL" msgstr "" -#: src/Module/Admin/Site.php:410 src/Module/Install.php:224 +#: src/Module/Admin/Site.php:416 src/Module/Install.php:224 msgid "Self-signed certificate, use SSL for local links only (discouraged)" msgstr "" -#: src/Module/Admin/Site.php:414 +#: src/Module/Admin/Site.php:420 msgid "Don't check" msgstr "" -#: src/Module/Admin/Site.php:415 +#: src/Module/Admin/Site.php:421 msgid "check the stable version" msgstr "" -#: src/Module/Admin/Site.php:416 +#: src/Module/Admin/Site.php:422 msgid "check the development version" msgstr "" -#: src/Module/Admin/Site.php:420 +#: src/Module/Admin/Site.php:426 msgid "none" msgstr "" -#: src/Module/Admin/Site.php:421 +#: src/Module/Admin/Site.php:427 msgid "Local contacts" msgstr "" -#: src/Module/Admin/Site.php:422 +#: src/Module/Admin/Site.php:428 msgid "Interactors" msgstr "" -#: src/Module/Admin/Site.php:432 src/Module/BaseAdmin.php:90 +#: src/Module/Admin/Site.php:438 src/Module/BaseAdmin.php:90 msgid "Site" msgstr "" -#: src/Module/Admin/Site.php:433 +#: src/Module/Admin/Site.php:439 msgid "General Information" msgstr "" -#: src/Module/Admin/Site.php:435 +#: src/Module/Admin/Site.php:441 msgid "Republish users to directory" msgstr "" -#: src/Module/Admin/Site.php:436 src/Module/Register.php:152 +#: src/Module/Admin/Site.php:442 src/Module/Register.php:152 msgid "Registration" msgstr "" -#: src/Module/Admin/Site.php:437 +#: src/Module/Admin/Site.php:443 msgid "File upload" msgstr "" -#: src/Module/Admin/Site.php:438 +#: src/Module/Admin/Site.php:444 msgid "Policies" msgstr "" -#: src/Module/Admin/Site.php:439 src/Module/Calendar/Event/Form.php:252 +#: src/Module/Admin/Site.php:445 src/Module/Calendar/Event/Form.php:252 #: src/Module/Contact.php:477 src/Module/Profile/Profile.php:248 msgid "Advanced" msgstr "" -#: src/Module/Admin/Site.php:440 +#: src/Module/Admin/Site.php:446 msgid "Auto Discovered Contact Directory" msgstr "" -#: src/Module/Admin/Site.php:441 +#: src/Module/Admin/Site.php:447 msgid "Performance" msgstr "" -#: src/Module/Admin/Site.php:442 +#: src/Module/Admin/Site.php:448 msgid "Worker" msgstr "" -#: src/Module/Admin/Site.php:443 +#: src/Module/Admin/Site.php:449 msgid "Message Relay" msgstr "" -#: src/Module/Admin/Site.php:444 +#: src/Module/Admin/Site.php:450 msgid "" "Use the command \"console relay\" in the command line to add or remove " "relays." msgstr "" -#: src/Module/Admin/Site.php:445 +#: src/Module/Admin/Site.php:451 msgid "The system is not subscribed to any relays at the moment." msgstr "" -#: src/Module/Admin/Site.php:446 +#: src/Module/Admin/Site.php:452 msgid "The system is currently subscribed to the following relays:" msgstr "" -#: src/Module/Admin/Site.php:448 +#: src/Module/Admin/Site.php:454 msgid "Relocate Node" msgstr "" -#: src/Module/Admin/Site.php:449 +#: src/Module/Admin/Site.php:455 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:450 +#: src/Module/Admin/Site.php:456 msgid "(Friendica directory)# bin/console relocate https://newdomain.com" msgstr "" -#: src/Module/Admin/Site.php:454 +#: src/Module/Admin/Site.php:460 msgid "Site name" msgstr "" -#: src/Module/Admin/Site.php:455 +#: src/Module/Admin/Site.php:461 msgid "Sender Email" msgstr "" -#: src/Module/Admin/Site.php:455 +#: src/Module/Admin/Site.php:461 msgid "" "The email address your server shall use to send notification emails from." msgstr "" -#: src/Module/Admin/Site.php:456 +#: src/Module/Admin/Site.php:462 msgid "Name of the system actor" msgstr "" -#: src/Module/Admin/Site.php:456 +#: src/Module/Admin/Site.php:462 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:457 +#: src/Module/Admin/Site.php:463 msgid "Banner/Logo" msgstr "" -#: src/Module/Admin/Site.php:458 +#: src/Module/Admin/Site.php:464 msgid "Email Banner/Logo" msgstr "" -#: src/Module/Admin/Site.php:459 +#: src/Module/Admin/Site.php:465 msgid "Shortcut icon" msgstr "" -#: src/Module/Admin/Site.php:459 +#: src/Module/Admin/Site.php:465 msgid "Link to an icon that will be used for browsers." msgstr "" -#: src/Module/Admin/Site.php:460 +#: src/Module/Admin/Site.php:466 msgid "Touch icon" msgstr "" -#: src/Module/Admin/Site.php:460 +#: src/Module/Admin/Site.php:466 msgid "Link to an icon that will be used for tablets and mobiles." msgstr "" -#: src/Module/Admin/Site.php:461 +#: src/Module/Admin/Site.php:467 msgid "Additional Info" msgstr "" -#: src/Module/Admin/Site.php:461 +#: src/Module/Admin/Site.php:467 #, 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:462 +#: src/Module/Admin/Site.php:468 msgid "System language" msgstr "" -#: src/Module/Admin/Site.php:463 +#: src/Module/Admin/Site.php:469 msgid "System theme" msgstr "" -#: src/Module/Admin/Site.php:463 +#: src/Module/Admin/Site.php:469 #, php-format msgid "" "Default system theme - may be over-ridden by user profiles - Change default theme settings" msgstr "" -#: src/Module/Admin/Site.php:464 +#: src/Module/Admin/Site.php:470 msgid "Mobile system theme" msgstr "" -#: src/Module/Admin/Site.php:464 +#: src/Module/Admin/Site.php:470 msgid "Theme for mobile devices" msgstr "" -#: src/Module/Admin/Site.php:465 src/Module/Install.php:232 +#: src/Module/Admin/Site.php:471 src/Module/Install.php:232 msgid "SSL link policy" msgstr "" -#: src/Module/Admin/Site.php:465 src/Module/Install.php:234 +#: src/Module/Admin/Site.php:471 src/Module/Install.php:234 msgid "Determines whether generated links should be forced to use SSL" msgstr "" -#: src/Module/Admin/Site.php:466 +#: src/Module/Admin/Site.php:472 msgid "Force SSL" msgstr "" -#: src/Module/Admin/Site.php:466 +#: src/Module/Admin/Site.php:472 msgid "" "Force all Non-SSL requests to SSL - Attention: on some systems it could lead " "to endless loops." msgstr "" -#: src/Module/Admin/Site.php:467 +#: src/Module/Admin/Site.php:473 msgid "Show help entry from navigation menu" msgstr "" -#: src/Module/Admin/Site.php:467 +#: src/Module/Admin/Site.php:473 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:468 +#: src/Module/Admin/Site.php:474 msgid "Single user instance" msgstr "" -#: src/Module/Admin/Site.php:468 +#: src/Module/Admin/Site.php:474 msgid "Make this instance multi-user or single-user for the named user" msgstr "" -#: src/Module/Admin/Site.php:470 +#: src/Module/Admin/Site.php:476 msgid "Maximum image size" msgstr "" -#: src/Module/Admin/Site.php:470 +#: src/Module/Admin/Site.php:476 +#, php-format msgid "" "Maximum size in bytes of uploaded images. Default is 0, which means no " -"limits. Be aware that this setting does not affect server-side upload limits." +"limits. You can put k, m, or g behind the desired value for KiB, MiB, GiB, " +"respectively.\n" +"\t\t\t\t\t\t\t\t\t\t\t\t\tThe value of upload_max_filesize in " +"your PHP.ini needs be set to at least the desired limit.\n" +"\t\t\t\t\t\t\t\t\t\t\t\t\tCurrently upload_max_filesize is set " +"to %s (%sB)" msgstr "" -#: src/Module/Admin/Site.php:471 +#: src/Module/Admin/Site.php:480 msgid "Maximum image length" msgstr "" -#: src/Module/Admin/Site.php:471 +#: src/Module/Admin/Site.php:480 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:472 +#: src/Module/Admin/Site.php:481 msgid "JPEG image quality" msgstr "" -#: src/Module/Admin/Site.php:472 +#: src/Module/Admin/Site.php:481 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:474 +#: src/Module/Admin/Site.php:483 msgid "Register policy" msgstr "" -#: src/Module/Admin/Site.php:475 +#: src/Module/Admin/Site.php:484 msgid "Maximum Daily Registrations" msgstr "" -#: src/Module/Admin/Site.php:475 +#: src/Module/Admin/Site.php:484 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:476 +#: src/Module/Admin/Site.php:485 msgid "Register text" msgstr "" -#: src/Module/Admin/Site.php:476 +#: src/Module/Admin/Site.php:485 msgid "" "Will be displayed prominently on the registration page. You can use BBCode " "here." msgstr "" -#: src/Module/Admin/Site.php:477 +#: src/Module/Admin/Site.php:486 msgid "Forbidden Nicknames" msgstr "" -#: src/Module/Admin/Site.php:477 +#: src/Module/Admin/Site.php:486 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:478 +#: src/Module/Admin/Site.php:487 msgid "Accounts abandoned after x days" msgstr "" -#: src/Module/Admin/Site.php:478 +#: src/Module/Admin/Site.php:487 msgid "" "Will not waste system resources polling external sites for abandonded " "accounts. Enter 0 for no time limit." msgstr "" -#: src/Module/Admin/Site.php:479 +#: src/Module/Admin/Site.php:488 msgid "Allowed friend domains" msgstr "" -#: src/Module/Admin/Site.php:479 +#: src/Module/Admin/Site.php:488 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:480 +#: src/Module/Admin/Site.php:489 msgid "Allowed email domains" msgstr "" -#: src/Module/Admin/Site.php:480 +#: src/Module/Admin/Site.php:489 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:481 +#: src/Module/Admin/Site.php:490 msgid "No OEmbed rich content" msgstr "" -#: src/Module/Admin/Site.php:481 +#: src/Module/Admin/Site.php:490 msgid "" "Don't show the rich content (e.g. embedded PDF), except from the domains " "listed below." msgstr "" -#: src/Module/Admin/Site.php:482 +#: src/Module/Admin/Site.php:491 msgid "Trusted third-party domains" msgstr "" -#: src/Module/Admin/Site.php:482 +#: src/Module/Admin/Site.php:491 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:483 +#: src/Module/Admin/Site.php:492 msgid "Block public" msgstr "" -#: src/Module/Admin/Site.php:483 +#: src/Module/Admin/Site.php:492 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:484 +#: src/Module/Admin/Site.php:493 msgid "Force publish" msgstr "" -#: src/Module/Admin/Site.php:484 +#: src/Module/Admin/Site.php:493 msgid "" "Check to force all profiles on this site to be listed in the site directory." msgstr "" -#: src/Module/Admin/Site.php:484 +#: src/Module/Admin/Site.php:493 msgid "Enabling this may violate privacy laws like the GDPR" msgstr "" -#: src/Module/Admin/Site.php:485 +#: src/Module/Admin/Site.php:494 msgid "Global directory URL" msgstr "" -#: src/Module/Admin/Site.php:485 +#: src/Module/Admin/Site.php:494 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:486 +#: src/Module/Admin/Site.php:495 msgid "Private posts by default for new users" msgstr "" -#: src/Module/Admin/Site.php:486 +#: src/Module/Admin/Site.php:495 msgid "" "Set default post permissions for all new members to the default privacy " "group rather than public." msgstr "" -#: src/Module/Admin/Site.php:487 +#: src/Module/Admin/Site.php:496 msgid "Don't include post content in email notifications" msgstr "" -#: src/Module/Admin/Site.php:487 +#: src/Module/Admin/Site.php:496 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:488 +#: src/Module/Admin/Site.php:497 msgid "Disallow public access to addons listed in the apps menu." msgstr "" -#: src/Module/Admin/Site.php:488 +#: src/Module/Admin/Site.php:497 msgid "" "Checking this box will restrict addons listed in the apps menu to members " "only." msgstr "" -#: src/Module/Admin/Site.php:489 +#: src/Module/Admin/Site.php:498 msgid "Don't embed private images in posts" msgstr "" -#: src/Module/Admin/Site.php:489 +#: src/Module/Admin/Site.php:498 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:490 +#: src/Module/Admin/Site.php:499 msgid "Explicit Content" msgstr "" -#: src/Module/Admin/Site.php:490 +#: src/Module/Admin/Site.php:499 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 " @@ -4470,267 +4486,267 @@ msgid "" "will be shown at the user registration page." msgstr "" -#: src/Module/Admin/Site.php:491 +#: src/Module/Admin/Site.php:500 msgid "Proxify external content" msgstr "" -#: src/Module/Admin/Site.php:491 +#: src/Module/Admin/Site.php:500 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:492 +#: src/Module/Admin/Site.php:501 msgid "Cache contact avatars" msgstr "" -#: src/Module/Admin/Site.php:492 +#: src/Module/Admin/Site.php:501 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:493 +#: src/Module/Admin/Site.php:502 msgid "Allow Users to set remote_self" msgstr "" -#: src/Module/Admin/Site.php:493 +#: src/Module/Admin/Site.php:502 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:494 +#: src/Module/Admin/Site.php:503 msgid "Enable multiple registrations" msgstr "" -#: src/Module/Admin/Site.php:494 +#: src/Module/Admin/Site.php:503 msgid "Enable users to register additional accounts for use as pages." msgstr "" -#: src/Module/Admin/Site.php:495 +#: src/Module/Admin/Site.php:504 msgid "Enable OpenID" msgstr "" -#: src/Module/Admin/Site.php:495 +#: src/Module/Admin/Site.php:504 msgid "Enable OpenID support for registration and logins." msgstr "" -#: src/Module/Admin/Site.php:496 +#: src/Module/Admin/Site.php:505 msgid "Enable Fullname check" msgstr "" -#: src/Module/Admin/Site.php:496 +#: src/Module/Admin/Site.php:505 msgid "" "Enable check to only allow users to register with a space between the first " "name and the last name in their full name." msgstr "" -#: src/Module/Admin/Site.php:497 +#: src/Module/Admin/Site.php:506 msgid "Email administrators on new registration" msgstr "" -#: src/Module/Admin/Site.php:497 +#: src/Module/Admin/Site.php:506 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:498 +#: src/Module/Admin/Site.php:507 msgid "Community pages for visitors" msgstr "" -#: src/Module/Admin/Site.php:498 +#: src/Module/Admin/Site.php:507 msgid "" "Which community pages should be available for visitors. Local users always " "see both pages." msgstr "" -#: src/Module/Admin/Site.php:499 +#: src/Module/Admin/Site.php:508 msgid "Posts per user on community page" msgstr "" -#: src/Module/Admin/Site.php:499 +#: src/Module/Admin/Site.php:508 msgid "" "The maximum number of posts per user on the community page. (Not valid for " "\"Global Community\")" msgstr "" -#: src/Module/Admin/Site.php:501 +#: src/Module/Admin/Site.php:510 msgid "Enable Mail support" msgstr "" -#: src/Module/Admin/Site.php:501 +#: src/Module/Admin/Site.php:510 msgid "" "Enable built-in mail support to poll IMAP folders and to reply via mail." msgstr "" -#: src/Module/Admin/Site.php:502 +#: src/Module/Admin/Site.php:511 msgid "" "Mail support can't be enabled because the PHP IMAP module is not installed." msgstr "" -#: src/Module/Admin/Site.php:503 +#: src/Module/Admin/Site.php:512 msgid "Enable OStatus support" msgstr "" -#: src/Module/Admin/Site.php:503 +#: src/Module/Admin/Site.php:512 msgid "" "Enable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All " "communications in OStatus are public." msgstr "" -#: src/Module/Admin/Site.php:505 +#: src/Module/Admin/Site.php:514 msgid "" "Diaspora support can't be enabled because Friendica was installed into a sub " "directory." msgstr "" -#: src/Module/Admin/Site.php:506 +#: src/Module/Admin/Site.php:515 msgid "Enable Diaspora support" msgstr "" -#: src/Module/Admin/Site.php:506 +#: src/Module/Admin/Site.php:515 msgid "" "Enable built-in Diaspora network compatibility for communicating with " "diaspora servers." msgstr "" -#: src/Module/Admin/Site.php:507 +#: src/Module/Admin/Site.php:516 msgid "Verify SSL" msgstr "" -#: src/Module/Admin/Site.php:507 +#: src/Module/Admin/Site.php:516 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:508 +#: src/Module/Admin/Site.php:517 msgid "Proxy user" msgstr "" -#: src/Module/Admin/Site.php:508 +#: src/Module/Admin/Site.php:517 msgid "User name for the proxy server." msgstr "" -#: src/Module/Admin/Site.php:509 +#: src/Module/Admin/Site.php:518 msgid "Proxy URL" msgstr "" -#: src/Module/Admin/Site.php:509 +#: src/Module/Admin/Site.php:518 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:510 +#: src/Module/Admin/Site.php:519 msgid "Network timeout" msgstr "" -#: src/Module/Admin/Site.php:510 +#: src/Module/Admin/Site.php:519 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)." msgstr "" -#: src/Module/Admin/Site.php:511 +#: src/Module/Admin/Site.php:520 msgid "Maximum Load Average" msgstr "" -#: src/Module/Admin/Site.php:511 +#: src/Module/Admin/Site.php:520 #, php-format msgid "" "Maximum system load before delivery and poll processes are deferred - " "default %d." msgstr "" -#: src/Module/Admin/Site.php:512 +#: src/Module/Admin/Site.php:521 msgid "Minimal Memory" msgstr "" -#: src/Module/Admin/Site.php:512 +#: src/Module/Admin/Site.php:521 msgid "" "Minimal free memory in MB for the worker. Needs access to /proc/meminfo - " "default 0 (deactivated)." msgstr "" -#: src/Module/Admin/Site.php:513 +#: src/Module/Admin/Site.php:522 msgid "Periodically optimize tables" msgstr "" -#: src/Module/Admin/Site.php:513 +#: src/Module/Admin/Site.php:522 msgid "Periodically optimize tables like the cache and the workerqueue" msgstr "" -#: src/Module/Admin/Site.php:515 +#: src/Module/Admin/Site.php:524 msgid "Discover followers/followings from contacts" msgstr "" -#: src/Module/Admin/Site.php:515 +#: src/Module/Admin/Site.php:524 msgid "" "If enabled, contacts are checked for their followers and following contacts." msgstr "" -#: src/Module/Admin/Site.php:516 +#: src/Module/Admin/Site.php:525 msgid "None - deactivated" msgstr "" -#: src/Module/Admin/Site.php:517 +#: src/Module/Admin/Site.php:526 msgid "" "Local contacts - contacts of our local contacts are discovered for their " "followers/followings." msgstr "" -#: src/Module/Admin/Site.php:518 +#: src/Module/Admin/Site.php:527 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:520 +#: src/Module/Admin/Site.php:529 msgid "Synchronize the contacts with the directory server" msgstr "" -#: src/Module/Admin/Site.php:520 +#: src/Module/Admin/Site.php:529 msgid "" "if enabled, the system will check periodically for new contacts on the " "defined directory server." msgstr "" -#: src/Module/Admin/Site.php:522 +#: src/Module/Admin/Site.php:531 msgid "Days between requery" msgstr "" -#: src/Module/Admin/Site.php:522 +#: src/Module/Admin/Site.php:531 msgid "Number of days after which a server is requeried for his contacts." msgstr "" -#: src/Module/Admin/Site.php:523 +#: src/Module/Admin/Site.php:532 msgid "Discover contacts from other servers" msgstr "" -#: src/Module/Admin/Site.php:523 +#: src/Module/Admin/Site.php:532 msgid "" "Periodically query other servers for contacts. The system queries Friendica, " "Mastodon and Hubzilla servers." msgstr "" -#: src/Module/Admin/Site.php:524 +#: src/Module/Admin/Site.php:533 msgid "Search the local directory" msgstr "" -#: src/Module/Admin/Site.php:524 +#: src/Module/Admin/Site.php:533 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:526 +#: src/Module/Admin/Site.php:535 msgid "Publish server information" msgstr "" -#: src/Module/Admin/Site.php:526 +#: src/Module/Admin/Site.php:535 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 " @@ -4738,50 +4754,50 @@ msgid "" "href=\"http://the-federation.info/\">the-federation.info for details." msgstr "" -#: src/Module/Admin/Site.php:528 +#: src/Module/Admin/Site.php:537 msgid "Check upstream version" msgstr "" -#: src/Module/Admin/Site.php:528 +#: src/Module/Admin/Site.php:537 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:529 +#: src/Module/Admin/Site.php:538 msgid "Suppress Tags" msgstr "" -#: src/Module/Admin/Site.php:529 +#: src/Module/Admin/Site.php:538 msgid "Suppress showing a list of hashtags at the end of the posting." msgstr "" -#: src/Module/Admin/Site.php:530 +#: src/Module/Admin/Site.php:539 msgid "Clean database" msgstr "" -#: src/Module/Admin/Site.php:530 +#: src/Module/Admin/Site.php:539 msgid "" "Remove old remote items, orphaned database records and old content from some " "other helper tables." msgstr "" -#: src/Module/Admin/Site.php:531 +#: src/Module/Admin/Site.php:540 msgid "Lifespan of remote items" msgstr "" -#: src/Module/Admin/Site.php:531 +#: src/Module/Admin/Site.php:540 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:532 +#: src/Module/Admin/Site.php:541 msgid "Lifespan of unclaimed items" msgstr "" -#: src/Module/Admin/Site.php:532 +#: src/Module/Admin/Site.php:541 msgid "" "When the database cleanup is enabled, this defines the days after which " "unclaimed remote items (mostly content from the relay) will be deleted. " @@ -4789,144 +4805,144 @@ msgid "" "items if set to 0." msgstr "" -#: src/Module/Admin/Site.php:533 +#: src/Module/Admin/Site.php:542 msgid "Lifespan of raw conversation data" msgstr "" -#: src/Module/Admin/Site.php:533 +#: src/Module/Admin/Site.php:542 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:534 +#: src/Module/Admin/Site.php:543 msgid "Maximum numbers of comments per post" msgstr "" -#: src/Module/Admin/Site.php:534 +#: src/Module/Admin/Site.php:543 msgid "How much comments should be shown for each post? Default value is 100." msgstr "" -#: src/Module/Admin/Site.php:535 +#: src/Module/Admin/Site.php:544 msgid "Maximum numbers of comments per post on the display page" msgstr "" -#: src/Module/Admin/Site.php:535 +#: src/Module/Admin/Site.php:544 msgid "" "How many comments should be shown on the single view for each post? Default " "value is 1000." msgstr "" -#: src/Module/Admin/Site.php:536 +#: src/Module/Admin/Site.php:545 msgid "Temp path" msgstr "" -#: src/Module/Admin/Site.php:536 +#: src/Module/Admin/Site.php:545 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:537 +#: src/Module/Admin/Site.php:546 msgid "Only search in tags" msgstr "" -#: src/Module/Admin/Site.php:537 +#: src/Module/Admin/Site.php:546 msgid "On large systems the text search can slow down the system extremely." msgstr "" -#: src/Module/Admin/Site.php:538 +#: src/Module/Admin/Site.php:547 msgid "Generate counts per contact group when calculating network count" msgstr "" -#: src/Module/Admin/Site.php:538 +#: src/Module/Admin/Site.php:547 msgid "" "On systems with users that heavily use contact groups the query can be very " "expensive." msgstr "" -#: src/Module/Admin/Site.php:540 +#: src/Module/Admin/Site.php:549 msgid "Maximum number of parallel workers" msgstr "" -#: src/Module/Admin/Site.php:540 +#: src/Module/Admin/Site.php:549 #, 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:541 +#: src/Module/Admin/Site.php:550 msgid "Enable fastlane" msgstr "" -#: src/Module/Admin/Site.php:541 +#: src/Module/Admin/Site.php:550 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:543 +#: src/Module/Admin/Site.php:552 msgid "Direct relay transfer" msgstr "" -#: src/Module/Admin/Site.php:543 +#: src/Module/Admin/Site.php:552 msgid "" "Enables the direct transfer to other servers without using the relay servers" msgstr "" -#: src/Module/Admin/Site.php:544 +#: src/Module/Admin/Site.php:553 msgid "Relay scope" msgstr "" -#: src/Module/Admin/Site.php:544 +#: src/Module/Admin/Site.php:553 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:544 src/Module/Contact/Profile.php:274 +#: src/Module/Admin/Site.php:553 src/Module/Contact/Profile.php:274 #: src/Module/Settings/TwoFactor/Index.php:125 msgid "Disabled" msgstr "" -#: src/Module/Admin/Site.php:544 +#: src/Module/Admin/Site.php:553 msgid "all" msgstr "" -#: src/Module/Admin/Site.php:544 +#: src/Module/Admin/Site.php:553 msgid "tags" msgstr "" -#: src/Module/Admin/Site.php:545 +#: src/Module/Admin/Site.php:554 msgid "Server tags" msgstr "" -#: src/Module/Admin/Site.php:545 +#: src/Module/Admin/Site.php:554 msgid "Comma separated list of tags for the \"tags\" subscription." msgstr "" -#: src/Module/Admin/Site.php:546 +#: src/Module/Admin/Site.php:555 msgid "Deny Server tags" msgstr "" -#: src/Module/Admin/Site.php:546 +#: src/Module/Admin/Site.php:555 msgid "Comma separated list of tags that are rejected." msgstr "" -#: src/Module/Admin/Site.php:547 +#: src/Module/Admin/Site.php:556 msgid "Allow user tags" msgstr "" -#: src/Module/Admin/Site.php:547 +#: src/Module/Admin/Site.php:556 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:550 +#: src/Module/Admin/Site.php:559 msgid "Start Relocation" msgstr "" @@ -5882,10 +5898,10 @@ msgid "The contact could not be added." msgstr "" #: src/Module/Contact/MatchInterests.php:94 -#: src/Module/Media/Attachment/Upload.php:80 -#: src/Module/Media/Attachment/Upload.php:85 -#: src/Module/Media/Photo/Upload.php:83 src/Module/Media/Photo/Upload.php:88 -#: src/Module/Media/Photo/Upload.php:137 +#: src/Module/Media/Attachment/Upload.php:79 +#: src/Module/Media/Attachment/Upload.php:84 +#: src/Module/Media/Photo/Upload.php:84 src/Module/Media/Photo/Upload.php:89 +#: src/Module/Media/Photo/Upload.php:138 msgid "Invalid request." msgstr "" @@ -7122,30 +7138,30 @@ msgstr "" msgid "You need to be logged in to access this page." msgstr "" -#: src/Module/Media/Attachment/Browser.php:75 +#: src/Module/Media/Attachment/Browser.php:74 msgid "Files" msgstr "" -#: src/Module/Media/Attachment/Browser.php:80 +#: src/Module/Media/Attachment/Browser.php:79 #: src/Module/Media/Photo/Browser.php:90 -#: src/Module/Settings/Profile/Photo/Index.php:128 +#: src/Module/Settings/Profile/Photo/Index.php:132 msgid "Upload" msgstr "" -#: src/Module/Media/Attachment/Upload.php:100 +#: src/Module/Media/Attachment/Upload.php:99 msgid "Sorry, maybe your upload is bigger than the PHP configuration allows" msgstr "" -#: src/Module/Media/Attachment/Upload.php:100 +#: src/Module/Media/Attachment/Upload.php:99 msgid "Or - did you try to upload an empty file?" msgstr "" -#: src/Module/Media/Attachment/Upload.php:107 +#: src/Module/Media/Attachment/Upload.php:106 #, php-format msgid "File exceeds size limit of %s" msgstr "" -#: src/Module/Media/Attachment/Upload.php:117 +#: src/Module/Media/Attachment/Upload.php:116 msgid "File upload failed." msgstr "" @@ -9767,7 +9783,7 @@ msgstr "" #: src/Module/Settings/Profile/Photo/Crop.php:107 #: src/Module/Settings/Profile/Photo/Crop.php:125 #: src/Module/Settings/Profile/Photo/Crop.php:143 -#: src/Module/Settings/Profile/Photo/Index.php:101 +#: src/Module/Settings/Profile/Photo/Index.php:105 #, php-format msgid "Image size reduction [%s] failed." msgstr "" @@ -9807,31 +9823,31 @@ msgstr "" msgid "Missing uploaded image." msgstr "" -#: src/Module/Settings/Profile/Photo/Index.php:124 +#: src/Module/Settings/Profile/Photo/Index.php:128 msgid "Profile Picture Settings" msgstr "" -#: src/Module/Settings/Profile/Photo/Index.php:125 +#: src/Module/Settings/Profile/Photo/Index.php:129 msgid "Current Profile Picture" msgstr "" -#: src/Module/Settings/Profile/Photo/Index.php:126 +#: src/Module/Settings/Profile/Photo/Index.php:130 msgid "Upload Profile Picture" msgstr "" -#: src/Module/Settings/Profile/Photo/Index.php:127 +#: src/Module/Settings/Profile/Photo/Index.php:131 msgid "Upload Picture:" msgstr "" -#: src/Module/Settings/Profile/Photo/Index.php:132 +#: src/Module/Settings/Profile/Photo/Index.php:136 msgid "or" msgstr "" -#: src/Module/Settings/Profile/Photo/Index.php:134 +#: src/Module/Settings/Profile/Photo/Index.php:138 msgid "skip this step" msgstr "" -#: src/Module/Settings/Profile/Photo/Index.php:136 +#: src/Module/Settings/Profile/Photo/Index.php:140 msgid "select a photo from your photo albums" msgstr "" diff --git a/view/theme/frio/css/mod_admin.css b/view/theme/frio/css/mod_admin.css index 3475d1d82..355cfd140 100644 --- a/view/theme/frio/css/mod_admin.css +++ b/view/theme/frio/css/mod_admin.css @@ -40,3 +40,11 @@ tr.details th { .adminpage td { word-break: break-all; } + +.adminpage input[id=id_maximagesize]:valid { + background-color: palegreen; +} + +.adminpage input[id=id_maximagesize]:invalid { + background-color: lightpink; +} \ No newline at end of file