]> git.mxchange.org Git - friendica.git/commitdiff
Merge pull request #6697 from annando/memory-jsonld
authorTobias Diekershoff <tobias.diekershoff@gmx.net>
Tue, 19 Feb 2019 08:40:01 +0000 (09:40 +0100)
committerGitHub <noreply@github.com>
Tue, 19 Feb 2019 08:40:01 +0000 (09:40 +0100)
Avoid memory issue in exception of JSON-LD parser

128 files changed:
bin/auth_ejabberd.php
bin/console.php
bin/daemon.php
bin/worker.php
composer.json
composer.lock
doc/Install.md
doc/Update.md
include/api.php
include/conversation.php
index.php
mod/admin.php
mod/directory.php
src/App.php
src/Content/Text/BBCode.php
src/Content/Text/Markdown.php
src/Core/Addon.php
src/Core/Cache.php
src/Core/Config.php
src/Core/Config/AbstractDbaConfigAdapter.php [deleted file]
src/Core/Config/Adapter/AbstractDbaConfigAdapter.php [new file with mode: 0644]
src/Core/Config/Adapter/IConfigAdapter.php [new file with mode: 0644]
src/Core/Config/Adapter/IPConfigAdapter.php [new file with mode: 0644]
src/Core/Config/Adapter/JITConfigAdapter.php [new file with mode: 0644]
src/Core/Config/Adapter/JITPConfigAdapter.php [new file with mode: 0644]
src/Core/Config/Adapter/PreloadConfigAdapter.php [new file with mode: 0644]
src/Core/Config/Adapter/PreloadPConfigAdapter.php [new file with mode: 0644]
src/Core/Config/Cache/ConfigCache.php [new file with mode: 0644]
src/Core/Config/Cache/ConfigCacheLoader.php [new file with mode: 0644]
src/Core/Config/Cache/IConfigCache.php [new file with mode: 0644]
src/Core/Config/Cache/IPConfigCache.php [new file with mode: 0644]
src/Core/Config/ConfigCache.php [deleted file]
src/Core/Config/ConfigCacheLoader.php [deleted file]
src/Core/Config/Configuration.php [new file with mode: 0644]
src/Core/Config/IConfigAdapter.php [deleted file]
src/Core/Config/IConfigCache.php [deleted file]
src/Core/Config/IPConfigAdapter.php [deleted file]
src/Core/Config/IPConfigCache.php [deleted file]
src/Core/Config/JITConfigAdapter.php [deleted file]
src/Core/Config/JITPConfigAdapter.php [deleted file]
src/Core/Config/PConfiguration.php [new file with mode: 0644]
src/Core/Config/PreloadConfigAdapter.php [deleted file]
src/Core/Config/PreloadPConfigAdapter.php [deleted file]
src/Core/Console/AutomaticInstallation.php
src/Core/Console/Config.php
src/Core/Console/Typo.php
src/Core/Installer.php
src/Core/Logger.php
src/Core/PConfig.php
src/Core/Renderer.php
src/Core/Theme.php
src/Core/Worker.php
src/Database/DBA.php
src/Factory/ConfigFactory.php
src/Factory/DBFactory.php [new file with mode: 0644]
src/Factory/DependencyFactory.php [new file with mode: 0644]
src/Factory/LoggerFactory.php
src/Factory/ProfilerFactory.php [new file with mode: 0644]
src/Model/ItemDeliveryData.php
src/Model/Photo.php
src/Model/Storage/Database.php
src/Model/Storage/SystemResource.php
src/Model/Term.php
src/Module/Install.php
src/Object/Image.php
src/Object/Post.php
src/Util/Network.php
src/Util/Profiler.php [new file with mode: 0644]
src/Worker/Notifier.php
tests/DatabaseTest.php
tests/Util/AppMockTrait.php
tests/Util/DBStructureMockTrait.php
tests/include/ApiTest.php
tests/src/App/ModeTest.php
tests/src/BaseObjectTest.php
tests/src/Core/Cache/CacheTest.php
tests/src/Core/Cache/MemcacheCacheDriverTest.php
tests/src/Core/Cache/MemcachedCacheDriverTest.php
tests/src/Core/Cache/RedisCacheDriverTest.php
tests/src/Core/Config/Cache/ConfigCacheLoaderTest.php [new file with mode: 0644]
tests/src/Core/Config/Cache/ConfigCacheTest.php [new file with mode: 0644]
tests/src/Core/Config/ConfigCacheLoaderTest.php [deleted file]
tests/src/Core/Config/ConfigCacheTest.php [deleted file]
tests/src/Core/Config/ConfigurationTest.php [new file with mode: 0644]
tests/src/Core/Config/PConfigurationTest.php [new file with mode: 0644]
tests/src/Core/Console/AutomaticInstallationConsoleTest.php
tests/src/Core/Console/ConfigConsoleTest.php
tests/src/Core/Console/ConsoleTest.php
tests/src/Core/InstallerTest.php
tests/src/Core/Lock/LockTest.php
tests/src/Core/Lock/MemcacheCacheLockDriverTest.php
tests/src/Core/Lock/MemcachedCacheLockDriverTest.php
tests/src/Core/Lock/RedisCacheLockDriverTest.php
tests/src/Core/Lock/SemaphoreLockDriverTest.php
tests/src/Database/DBATest.php
tests/src/Database/DBStructureTest.php
tests/src/Util/ProfilerTest.php [new file with mode: 0644]
view/global.css
view/js/main.js
view/lang/C/messages.po
view/lang/de/messages.po
view/lang/de/strings.php
view/lang/en-us/messages.po
view/lang/en-us/strings.php
view/lang/fr/messages.po
view/lang/fr/strings.php
view/templates/directory_header.tpl
view/templates/head.tpl
view/templates/jot-header.tpl
view/templates/photos_head.tpl
view/templates/settings/head.tpl
view/templates/wall_thread.tpl
view/theme/frio/css/style.css
view/theme/frio/js/textedit.js
view/theme/frio/js/theme.js
view/theme/frio/style.php
view/theme/frio/templates/comment_item.tpl
view/theme/frio/templates/directory_header.tpl
view/theme/frio/templates/head.tpl
view/theme/frio/templates/jot-header.tpl
view/theme/frio/templates/photos_head.tpl
view/theme/frio/templates/search_item.tpl
view/theme/frio/templates/voting_fakelink.tpl [new file with mode: 0644]
view/theme/frio/templates/wall_thread.tpl
view/theme/quattro/templates/wall_thread.tpl
view/theme/smoothly/templates/jot-header.tpl
view/theme/smoothly/templates/wall_thread.tpl
view/theme/vier/templates/wall_thread.tpl

index 11df438952a06e96ee700a7d6345cba1c90007d8..bf6d069d12bb58f1507f9d9ee6e0c14763c6e08e 100755 (executable)
  *
  */
 
-use Friendica\App;
-use Friendica\Core\Config;
 use Friendica\Factory;
-use Friendica\Util\BasePath;
 use Friendica\Util\ExAuth;
 
 if (sizeof($_SERVER["argv"]) == 0) {
@@ -54,12 +51,7 @@ chdir($directory);
 
 require dirname(__DIR__) . '/vendor/autoload.php';
 
-$basedir = BasePath::create(dirname(__DIR__), $_SERVER);
-$configLoader = new Config\ConfigCacheLoader($basedir);
-$config = Factory\ConfigFactory::createCache($configLoader);
-$logger = Factory\LoggerFactory::create('auth_ejabberd', $config);
-
-$a = new App($config, $logger);
+$a = Factory\DependencyFactory::setUp('auth_ejabbered', dirname(__DIR__));
 
 if ($a->getMode()->isNormal()) {
        $oAuth = new ExAuth();
index 9061824d875b0be10f8f1fad8aa94c1f883c55a0..410eabda094639db0d3d06a9a8eb41ec92220464 100755 (executable)
@@ -3,16 +3,9 @@
 
 require dirname(__DIR__) . '/vendor/autoload.php';
 
-use Friendica\Core\Config;
 use Friendica\Factory;
-use Friendica\Util\BasePath;
 
-$basedir = BasePath::create(dirname(__DIR__), $_SERVER);
-$configLoader = new Config\ConfigCacheLoader($basedir);
-$config = Factory\ConfigFactory::createCache($configLoader);
-$logger = Factory\LoggerFactory::create('console', $config);
-
-$a = new Friendica\App($config, $logger);
+$a = Factory\DependencyFactory::setUp('console', dirname(__DIR__));
 \Friendica\BaseObject::setApp($a);
 
 (new Friendica\Core\Console($argv))->execute();
index 5c014a92702429d58af4dfab1ac163597d34b95d..047bf71be77b4ac31dbea889098e5dd52dce8b5b 100755 (executable)
@@ -7,12 +7,11 @@
  * This script was taken from http://php.net/manual/en/function.pcntl-fork.php
  */
 
-use Friendica\App;
 use Friendica\Core\Config;
+use Friendica\Core\Logger;
 use Friendica\Core\Worker;
 use Friendica\Database\DBA;
 use Friendica\Factory;
-use Friendica\Util\BasePath;
 
 // Get options
 $shortopts = 'f';
@@ -33,12 +32,7 @@ if (!file_exists("boot.php") && (sizeof($_SERVER["argv"]) != 0)) {
 
 require dirname(__DIR__) . '/vendor/autoload.php';
 
-$basedir = BasePath::create(dirname(__DIR__), $_SERVER);
-$configLoader = new Config\ConfigCacheLoader($basedir);
-$config = Factory\ConfigFactory::createCache($configLoader);
-$logger = Factory\LoggerFactory::create('daemon', $config);
-
-$a = new App($config, $logger);
+$a = Factory\DependencyFactory::setUp('daemon', dirname(__DIR__));
 
 if ($a->getMode()->isInstall()) {
        die("Friendica isn't properly installed yet.\n");
@@ -108,7 +102,7 @@ if ($mode == "stop") {
 
        unlink($pidfile);
 
-       $logger->notice("Worker daemon process was killed", ["pid" => $pid]);
+       Logger::notice("Worker daemon process was killed", ["pid" => $pid]);
 
        Config::set('system', 'worker_daemon_mode', false);
        die("Worker daemon process $pid was killed.\n");
@@ -118,7 +112,7 @@ if (!empty($pid) && posix_kill($pid, 0)) {
        die("Daemon process $pid is already running.\n");
 }
 
-$logger->notice('Starting worker daemon.', ["pid" => $pid]);
+Logger::notice('Starting worker daemon.', ["pid" => $pid]);
 
 if (!$foreground) {
        echo "Starting worker daemon.\n";
@@ -150,7 +144,7 @@ if (!$foreground) {
        file_put_contents($pidfile, $pid);
 
        // We lose the database connection upon forking
-       $a->loadDatabase();
+       Factory\DBFactory::init($a->getConfigCache(), $a->getProfiler(), $_SERVER);
 }
 
 Config::set('system', 'worker_daemon_mode', true);
@@ -166,7 +160,7 @@ $last_cron = 0;
 // Now running as a daemon.
 while (true) {
        if (!$do_cron && ($last_cron + $wait_interval) < time()) {
-               $logger->info('Forcing cron worker call.', ["pid" => $pid]);
+               Logger::info('Forcing cron worker call.', ["pid" => $pid]);
                $do_cron = true;
        }
 
@@ -180,7 +174,7 @@ while (true) {
                $last_cron = time();
        }
 
-       $logger->info("Sleeping", ["pid" => $pid]);
+       Logger::info("Sleeping", ["pid" => $pid]);
        $start = time();
        do {
                $seconds = (time() - $start);
@@ -197,10 +191,10 @@ while (true) {
 
        if ($timeout) {
                $do_cron = true;
-               $logger->info("Woke up after $wait_interval seconds.", ["pid" => $pid, 'sleep' => $wait_interval]);
+               Logger::info("Woke up after $wait_interval seconds.", ["pid" => $pid, 'sleep' => $wait_interval]);
        } else {
                $do_cron = false;
-               $logger->info("Worker jobs are calling to be forked.", ["pid" => $pid]);
+               Logger::info("Worker jobs are calling to be forked.", ["pid" => $pid]);
        }
 }
 
index 553e9849774fe307e5f1535b9c090809ce043e80..c7174d81e1813ea0e246e2435c0132a7bdb8249a 100755 (executable)
@@ -10,7 +10,6 @@ use Friendica\Core\Config;
 use Friendica\Core\Update;
 use Friendica\Core\Worker;
 use Friendica\Factory;
-use Friendica\Util\BasePath;
 
 // Get options
 $shortopts = 'sn';
@@ -31,12 +30,7 @@ if (!file_exists("boot.php") && (sizeof($_SERVER["argv"]) != 0)) {
 
 require dirname(__DIR__) . '/vendor/autoload.php';
 
-$basedir = BasePath::create(dirname(__DIR__), $_SERVER);
-$configLoader = new Config\ConfigCacheLoader($basedir);
-$config = Factory\ConfigFactory::createCache($configLoader);
-$logger = Factory\LoggerFactory::create('worker', $config);
-
-$a = new App($config, $logger);
+$a = Factory\DependencyFactory::setUp('worker', dirname(__DIR__));
 
 // Check the database structure and possibly fixes it
 Update::check($a->getBasePath(), true);
index 39d9358926ed905cfe06de144dccb48c8331d0b0..3638a9495921562dd660fb4ef0b9a2c995857d76 100644 (file)
                "lightopenid/lightopenid": "dev-master",
                "michelf/php-markdown": "^1.7",
                "mobiledetect/mobiledetectlib": "2.8.*",
+               "monolog/monolog": "^1.24",
                "paragonie/random_compat": "^2.0",
-               "pear/Text_LanguageDetect": "1.*",
+               "pear/text_languagedetect": "1.*",
+               "psr/container": "^1.0",
                "seld/cli-prompt": "^1.0",
                "smarty/smarty": "^3.1",
                "fxp/composer-asset-plugin": "~1.3",
                "bower-asset/base64": "^1.0",
-               "bower-asset/Chart-js": "^2.7",
+               "bower-asset/chart-js": "^2.7",
                "bower-asset/perfect-scrollbar": "^0.6",
                "bower-asset/vue": "^2.5",
                "npm-asset/jquery": "^2.0",
@@ -49,8 +51,7 @@
                "npm-asset/jgrowl": "^1.4",
                "npm-asset/fullcalendar": "^3.0.1",
                "npm-asset/cropperjs": "1.2.2",
-               "npm-asset/imagesloaded": "4.1.4",
-               "monolog/monolog": "^1.24"
+               "npm-asset/imagesloaded": "4.1.4"
        },
        "repositories": [
                {
@@ -96,7 +97,7 @@
                "phpunit/dbunit": "^2.0",
                "phpdocumentor/reflection-docblock": "^3.0.2",
                "phpunit/php-token-stream": "^1.4.2",
-               "mikey179/vfsStream": "^1.6",
+               "mikey179/vfsstream": "^1.6",
                "mockery/mockery": "^1.2",
                "johnkary/phpunit-speedtrap": "1.1"
        },
index f91b833de74ad1b5ae902809377a90ad3d032fa3..e554b119992198d1d35d8ef65eaf31c88d7ab368 100644 (file)
@@ -4,7 +4,7 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
         "This file is @generated automatically"
     ],
-    "content-hash": "b944adfb6ede89430ba3b7e9ebb45acb",
+    "content-hash": "19fabb14e0dd5d806ef841e51d5f6a0b",
     "packages": [
         {
             "name": "asika/simple-console",
             ],
             "time": "2016-08-06T20:24:11+00:00"
         },
+        {
+            "name": "psr/container",
+            "version": "1.0.0",
+            "source": {
+                "type": "git",
+                "url": "https://github.com/php-fig/container.git",
+                "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
+            },
+            "dist": {
+                "type": "zip",
+                "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+                "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
+                "shasum": ""
+            },
+            "require": {
+                "php": ">=5.3.0"
+            },
+            "type": "library",
+            "extra": {
+                "branch-alias": {
+                    "dev-master": "1.0.x-dev"
+                }
+            },
+            "autoload": {
+                "psr-4": {
+                    "Psr\\Container\\": "src/"
+                }
+            },
+            "notification-url": "https://packagist.org/downloads/",
+            "license": [
+                "MIT"
+            ],
+            "authors": [
+                {
+                    "name": "PHP-FIG",
+                    "homepage": "http://www.php-fig.org/"
+                }
+            ],
+            "description": "Common Container Interface (PHP FIG PSR-11)",
+            "homepage": "https://github.com/php-fig/container",
+            "keywords": [
+                "PSR-11",
+                "container",
+                "container-interface",
+                "container-interop",
+                "psr"
+            ],
+            "time": "2017-02-14T16:28:37+00:00"
+        },
         {
             "name": "psr/http-message",
             "version": "1.0.1",
                 "testing",
                 "xunit"
             ],
+            "abandoned": true,
             "time": "2016-12-02T14:39:14+00:00"
         },
         {
index dd483095c488416d49003774fa679af39c036cc1..005db5b7f38bc6d916532b788f55d29f271db2ad 100644 (file)
@@ -18,10 +18,8 @@ If you do not have a Friendica account yet, you can register a temporary one at
 The account will expire after 7 days, but you can ask the server admin to keep your account longer, should the problem not be resolved after that.
 
 Before you begin: Choose a domain name or subdomain name for your server.
-Put some thought into this. Changing it after installation is currently not supported.
-Things will break, and some of your friends may have difficulty communicating with you.
-We plan to address this limitation in a future release.
-
+Put some thought into this.
+While changing it after installation is supported, things still might break.
 
 Requirements
 ---
@@ -57,7 +55,7 @@ The Linux commands to clone the repository into a directory "mywebsite" would be
 
     git clone https://github.com/friendica/friendica.git -b master mywebsite
     cd mywebsite
-    bin/composer.phar install
+    bin/composer.phar install --no-dev
 
 Make sure the folder *view/smarty3* exists and is writable by the webserver user, in this case `www-data`
 
index 17c2d0e7245b365fb44d22970194ed0743e79f92..7b7ccf7bbd82a7d4375e134c13169951205cdc62 100644 (file)
@@ -21,7 +21,7 @@ You can get the latest changes at any time with
 
     cd path/to/friendica
     git pull
-    bin/composer.phar install
+    bin/composer.phar install --no-dev
 
 The addon tree has to be updated separately like so:
 
@@ -69,4 +69,4 @@ DROP TABLE <table_name>;
 RENAME TABLE <table_name>_new TO <table_name>;
 ```
 
-This method is slower overall, but it is better suited for large numbers of duplicates.
\ No newline at end of file
+This method is slower overall, but it is better suited for large numbers of duplicates.
index 052d32b17b1f8d788db0d7c65559febeb6cd3aa1..e6fd2f22bae9b15aa38a15808b8623a6f8e2849e 100644 (file)
@@ -326,69 +326,7 @@ function api_call(App $a)
 
                                Logger::info(API_LOG_PREFIX . 'username {username}', ['module' => 'api', 'action' => 'call', 'username' => $a->user['username'], 'duration' => round($duration, 2)]);
 
-                               if (Config::get("system", "profiler")) {
-                                       $duration = microtime(true)-$a->performance["start"];
-
-                                       /// @TODO round() really everywhere?
-                                       Logger::debug(
-                                               API_LOG_PREFIX . 'performance',
-                                               [
-                                                       'module' => 'api',
-                                                       'action' => 'call',
-                                                       'database_read' => round($a->performance["database"] - $a->performance["database_write"], 3),
-                                                       'database_write' => round($a->performance["database_write"], 3),
-                                                       'cache_read' => round($a->performance["cache"], 3),
-                                                       'cache_write' => round($a->performance["cache_write"], 3),
-                                                       'network_io' => round($a->performance["network"], 2),
-                                                       'file_io' => round($a->performance["file"], 2),
-                                                       'other_io' => round($duration - ($a->performance["database"]
-                                                                       + $a->performance["cache"] + $a->performance["cache_write"]
-                                                                       + $a->performance["network"] + $a->performance["file"]), 2),
-                                                       'total' => round($duration, 2)
-                                               ]
-                                       );
-
-                                       if (Config::get("rendertime", "callstack")) {
-                                               $o = "Database Read:\n";
-                                               foreach ($a->callstack["database"] as $func => $time) {
-                                                       $time = round($time, 3);
-                                                       if ($time > 0) {
-                                                               $o .= $func . ": " . $time . "\n";
-                                                       }
-                                               }
-                                               $o .= "\nDatabase Write:\n";
-                                               foreach ($a->callstack["database_write"] as $func => $time) {
-                                                       $time = round($time, 3);
-                                                       if ($time > 0) {
-                                                               $o .= $func . ": " . $time . "\n";
-                                                       }
-                                               }
-
-                                               $o = "Cache Read:\n";
-                                               foreach ($a->callstack["cache"] as $func => $time) {
-                                                       $time = round($time, 3);
-                                                       if ($time > 0) {
-                                                               $o .= $func . ": " . $time . "\n";
-                                                       }
-                                               }
-                                               $o .= "\nCache Write:\n";
-                                               foreach ($a->callstack["cache_write"] as $func => $time) {
-                                                       $time = round($time, 3);
-                                                       if ($time > 0) {
-                                                               $o .= $func . ": " . $time . "\n";
-                                                       }
-                                               }
-
-                                               $o .= "\nNetwork:\n";
-                                               foreach ($a->callstack["network"] as $func => $time) {
-                                                       $time = round($time, 3);
-                                                       if ($time > 0) {
-                                                               $o .= $func . ": " . $time . "\n";
-                                                       }
-                                               }
-                                               Logger::debug(API_LOG_PREFIX . $o, ['module' => 'api', 'action' => 'call']);
-                                       }
-                               }
+                               $a->getProfiler()->saveLog($a->getLogger(), API_LOG_PREFIX . 'performance');
 
                                if (false === $return) {
                                        /*
@@ -1590,8 +1528,10 @@ function api_search($type)
 
        if (api_user() === false || $user_info === false) { throw new ForbiddenException(); }
 
-       if (empty($_REQUEST['q'])) { throw new BadRequestException('q parameter is required.'); }
-       
+       if (empty($_REQUEST['q'])) {
+               throw new BadRequestException('q parameter is required.');
+       }
+
        $searchTerm = trim(rawurldecode($_REQUEST['q']));
 
        $data = [];
@@ -4461,6 +4401,7 @@ function api_fr_photo_delete($type)
        if (api_user() === false) {
                throw new ForbiddenException();
        }
+
        // input params
        $photo_id = defaults($_REQUEST, 'photo_id', null);
 
@@ -4469,11 +4410,12 @@ function api_fr_photo_delete($type)
        if ($photo_id == null) {
                throw new BadRequestException("no photo_id specified");
        }
+
        // check if photo is existing in database
-       $r = Photo::exists(['resource-id' => $photo_id, 'uid' => api_user()]);
-       if (!$r) {
+       if (!Photo::exists(['resource-id' => $photo_id, 'uid' => api_user()])) {
                throw new BadRequestException("photo not available");
        }
+
        // now we can perform on the deletion of the photo
        $result = Photo::delete(['uid' => api_user(), 'resource-id' => $photo_id]);
 
index d7e3d54808ed77640c15662a9bc28ae4de40b2b6..23a0dcbf29215318fc776b1cb7821cbf99bfd03c 100644 (file)
@@ -1082,10 +1082,9 @@ function format_like($cnt, array $arr, $type, $id) {
                                break;
                }
 
-               $expanded .= "\t" . '<div class="wall-item-' . $type . '-expanded" id="' . $type . 'list-' . $id . '" style="display: none;" >' . $explikers . EOL . '</div>';
+               $expanded .= "\t" . '<p class="wall-item-' . $type . '-expanded" id="' . $type . 'list-' . $id . '" style="display: none;" >' . $explikers . EOL . '</p>';
        }
 
-       $phrase .= EOL;
        $o .= Renderer::replaceMacros(Renderer::getMarkupTemplate('voting_fakelink.tpl'), [
                '$phrase' => $phrase,
                '$type' => $type,
index 7e7396785f5993c7b17f7a1e74870b7be5b4afcd..ddc851cd4e36654e02d6f3d73cf6e68270ffeef1 100644 (file)
--- a/index.php
+++ b/index.php
@@ -4,10 +4,7 @@
  * Friendica
  */
 
-use Friendica\App;
-use Friendica\Core\Config;
 use Friendica\Factory;
-use Friendica\Util\BasePath;
 
 if (!file_exists(__DIR__ . '/vendor/autoload.php')) {
        die('Vendor path not found. Please execute "bin/composer.phar --no-dev install" on the command line in the web root.');
@@ -15,13 +12,7 @@ if (!file_exists(__DIR__ . '/vendor/autoload.php')) {
 
 require __DIR__ . '/vendor/autoload.php';
 
-$basedir = BasePath::create(__DIR__, $_SERVER);
-$configLoader = new Config\ConfigCacheLoader($basedir);
-$config = Factory\ConfigFactory::createCache($configLoader);
-$logger = Factory\LoggerFactory::create('index', $config);
-
-// We assume that the index.php is called by a frontend process
-// The value is set to "true" by default in App
-$a = new App($config, $logger, false);
+$a = Factory\DependencyFactory::setUp('index', __DIR__, false);
 
 $a->runFrontend();
+
index fcca69644ec85d9020278502aaba664f9afeeb5f..9486f85c98242efb742b8c6ae8e13a0fa215fb67 100644 (file)
@@ -1565,7 +1565,7 @@ function admin_page_site(App $a)
        
        $storage_form = [];
        if (!is_null($storage_current_backend) && $storage_current_backend != "") {
-               foreach($storage_current_backend::getOptions() as $name => $info) {
+               foreach ($storage_current_backend::getOptions() as $name => $info) {
                        $type = $info[0];
                        $info[0] = $storage_form_prefix . '_' . $name;
                        $info['type'] = $type;
index 6ef3134517cf60cf3bd3ecf8ef8681eb7b794b79..256c9bbbd597e69918a4d9ae979b73cea1a02e72 100644 (file)
@@ -45,6 +45,8 @@ function directory_content(App $a)
        }
 
        $o = '';
+       $entries = [];
+
        Nav::setSelected('directory');
 
        if (!empty($a->data['search'])) {
@@ -98,7 +100,7 @@ function directory_content(App $a)
        $limit = $pager->getStart()."," . $pager->getItemsPerPage();
 
        $r = DBA::p("SELECT `profile`.*, `profile`.`uid` AS `profile_uid`, `user`.`nickname`, `user`.`timezone` , `user`.`page-flags`,
-                       `contact`.`addr`, `contact`.`url` AS profile_url FROM `profile`
+                       `contact`.`addr`, `contact`.`url` AS `profile_url` FROM `profile`
                        LEFT JOIN `user` ON `user`.`uid` = `profile`.`uid`
                        LEFT JOIN `contact` ON `contact`.`uid` = `user`.`uid`
                        WHERE `is-default` $publish AND NOT `user`.`blocked` AND NOT `user`.`account_removed` AND `contact`.`self`
@@ -111,115 +113,118 @@ function directory_content(App $a)
                        $photo = 'photo';
                }
 
-               $entries = [];
-
                while ($rr = DBA::fetch($r)) {
-                       $itemurl = (($rr['addr'] != "") ? $rr['addr'] : $rr['profile_url']);
-
-                       $profile_link = $rr['profile_url'];
-
-                       $pdesc = (($rr['pdesc']) ? $rr['pdesc'] . '<br />' : '');
-
-                       $details = '';
-                       if (strlen($rr['locality'])) {
-                               $details .= $rr['locality'];
-                       }
-                       if (strlen($rr['region'])) {
-                               if (strlen($rr['locality'])) {
-                                       $details .= ', ';
-                               }
-                               $details .= $rr['region'];
-                       }
-                       if (strlen($rr['country-name'])) {
-                               if (strlen($details)) {
-                                       $details .= ', ';
-                               }
-                               $details .= $rr['country-name'];
-                       }
-//                     if(strlen($rr['dob'])) {
-//                             if(($years = age($rr['dob'],$rr['timezone'],'')) != 0)
-//                                     $details .= '<br />' . L10n::t('Age: ') . $years;
-//                     }
-//                     if(strlen($rr['gender']))
-//                             $details .= '<br />' . L10n::t('Gender: ') . $rr['gender'];
-
-                       $profile = $rr;
-
-                       if (!empty($profile['address'])
-                               || !empty($profile['locality'])
-                               || !empty($profile['region'])
-                               || !empty($profile['postal-code'])
-                               || !empty($profile['country-name'])
-                       ) {
-                               $location = L10n::t('Location:');
-                       } else {
-                               $location = '';
-                       }
-
-                       $gender   = (!empty($profile['gender']) ? L10n::t('Gender:')   : false);
-                       $marital  = (!empty($profile['marital']) ? L10n::t('Status:')   : false);
-                       $homepage = (!empty($profile['homepage']) ? L10n::t('Homepage:') : false);
-                       $about    = (!empty($profile['about']) ? L10n::t('About:')    : false);
-
-                       $location_e = $location;
-
-                       $photo_menu = [
-                               'profile' => [L10n::t("View Profile"), Contact::magicLink($profile_link)]
-                       ];
-
-                       $entry = [
-                               'id'           => $rr['id'],
-                               'url'          => Contact::magicLInk($profile_link),
-                               'itemurl'      => $itemurl,
-                               'thumb'        => ProxyUtils::proxifyUrl($rr[$photo], false, ProxyUtils::SIZE_THUMB),
-                               'img_hover'    => $rr['name'],
-                               'name'         => $rr['name'],
-                               'details'      => $details,
-                               'account_type' => Contact::getAccountType($rr),
-                               'profile'      => $profile,
-                               'location'     => $location_e,
-                               'tags'         => $rr['pub_keywords'],
-                               'gender'       => $gender,
-                               'pdesc'        => $pdesc,
-                               'marital'      => $marital,
-                               'homepage'     => $homepage,
-                               'about'        => $about,
-                               'photo_menu'   => $photo_menu,
-
-                       ];
-
-                       $arr = ['contact' => $rr, 'entry' => $entry];
-
-                       Hook::callAll('directory_item', $arr);
-
-                       unset($profile);
-                       unset($location);
-
-                       if (!$arr['entry']) {
-                               continue;
-                       }
-
-                       $entries[] = $arr['entry'];
+                       $entries[] = format_directory_entry($rr, $photo);
                }
                DBA::close($r);
-
-               $tpl = Renderer::getMarkupTemplate('directory_header.tpl');
-
-               $o .= Renderer::replaceMacros($tpl, [
-                       '$search'    => $search,
-                       '$globaldir' => L10n::t('Global Directory'),
-                       '$gdirpath'  => $gdirpath,
-                       '$desc'      => L10n::t('Find on this site'),
-                       '$contacts'  => $entries,
-                       '$finding'   => L10n::t('Results for:'),
-                       '$findterm'  => (strlen($search) ? $search : ""),
-                       '$title'     => L10n::t('Site Directory'),
-                       '$submit'    => L10n::t('Find'),
-                       '$paginate'  => $pager->renderFull($total),
-               ]);
        } else {
                info(L10n::t("No entries \x28some entries may be hidden\x29.") . EOL);
        }
 
+       $tpl = Renderer::getMarkupTemplate('directory_header.tpl');
+
+       $o .= Renderer::replaceMacros($tpl, [
+               '$search'    => $search,
+               '$globaldir' => L10n::t('Global Directory'),
+               '$gdirpath'  => $gdirpath,
+               '$desc'      => L10n::t('Find on this site'),
+               '$contacts'  => $entries,
+               '$finding'   => L10n::t('Results for:'),
+               '$findterm'  => (strlen($search) ? $search : ""),
+               '$title'     => L10n::t('Site Directory'),
+               '$search_mod' => 'directory',
+               '$submit'    => L10n::t('Find'),
+               '$paginate'  => $pager->renderFull($total),
+       ]);
+
        return $o;
 }
+
+/**
+ * Format contact/profile/user data from the database into an usable
+ * array for displaying directory entries.
+ * 
+ * @param array $arr The directory entry from the database.
+ * @param string $photo_size Avatar size (thumb, photo or micro).
+ * 
+ * @return array
+ */
+function format_directory_entry(array $arr, $photo_size = 'photo')
+{
+       $itemurl = (($arr['addr'] != "") ? $arr['addr'] : $arr['profile_url']);
+
+       $profile_link = $arr['profile_url'];
+
+       $pdesc = (($arr['pdesc']) ? $arr['pdesc'] . '<br />' : '');
+
+       $details = '';
+       if (strlen($arr['locality'])) {
+               $details .= $arr['locality'];
+       }
+       if (strlen($arr['region'])) {
+               if (strlen($arr['locality'])) {
+                       $details .= ', ';
+               }
+               $details .= $arr['region'];
+       }
+       if (strlen($arr['country-name'])) {
+               if (strlen($details)) {
+                       $details .= ', ';
+               }
+               $details .= $arr['country-name'];
+       }
+
+       $profile = $arr;
+
+       if (!empty($profile['address'])
+               || !empty($profile['locality'])
+               || !empty($profile['region'])
+               || !empty($profile['postal-code'])
+               || !empty($profile['country-name'])
+       ) {
+               $location = L10n::t('Location:');
+       } else {
+               $location = '';
+       }
+
+       $gender   = (!empty($profile['gender'])   ? L10n::t('Gender:')   : false);
+       $marital  = (!empty($profile['marital'])  ? L10n::t('Status:')   : false);
+       $homepage = (!empty($profile['homepage']) ? L10n::t('Homepage:') : false);
+       $about    = (!empty($profile['about'])    ? L10n::t('About:')    : false);
+
+       $location_e = $location;
+
+       $photo_menu = [
+               'profile' => [L10n::t("View Profile"), Contact::magicLink($profile_link)]
+       ];
+
+       $entry = [
+               'id'           => $arr['id'],
+               'url'          => Contact::magicLInk($profile_link),
+               'itemurl'      => $itemurl,
+               'thumb'        => ProxyUtils::proxifyUrl($arr[$photo_size], false, ProxyUtils::SIZE_THUMB),
+               'img_hover'    => $arr['name'],
+               'name'         => $arr['name'],
+               'details'      => $details,
+               'account_type' => Contact::getAccountType($arr),
+               'profile'      => $profile,
+               'location'     => $location_e,
+               'tags'         => $arr['pub_keywords'],
+               'gender'       => $gender,
+               'pdesc'        => $pdesc,
+               'marital'      => $marital,
+               'homepage'     => $homepage,
+               'about'        => $about,
+               'photo_menu'   => $photo_menu,
+
+       ];
+
+       $hook = ['contact' => $arr, 'entry' => $entry];
+
+       Hook::callAll('directory_item', $hook);
+
+       unset($profile);
+       unset($location);
+
+       return $hook['entry'];
+}
index 8068a1530bad71a2e3c462e48c710f2751d99b68..f48abcf9cbda92c1238e27083c73497e720da024 100644 (file)
@@ -8,11 +8,12 @@ use Detection\MobileDetect;
 use DOMDocument;
 use DOMXPath;
 use Exception;
-use Friendica\Core\Config\ConfigCache;
-use Friendica\Core\Config\ConfigCacheLoader;
+use Friendica\Core\Config\Cache\ConfigCacheLoader;
+use Friendica\Core\Config\Cache\IConfigCache;
+use Friendica\Core\Config\Configuration;
 use Friendica\Database\DBA;
-use Friendica\Factory\ConfigFactory;
 use Friendica\Network\HTTPException\InternalServerErrorException;
+use Friendica\Util\Profiler;
 use Psr\Log\LoggerInterface;
 
 /**
@@ -53,8 +54,6 @@ class App
        public $identities;
        public $is_mobile = false;
        public $is_tablet = false;
-       public $performance = [];
-       public $callstack = [];
        public $theme_info = [];
        public $category;
        // Allow themes to control internal parameters
@@ -110,23 +109,28 @@ class App
        public $mobileDetect;
 
        /**
-        * @var LoggerInterface The current logger of this App
+        * @var Configuration The config
+        */
+       private $config;
+
+       /**
+        * @var LoggerInterface The logger
         */
        private $logger;
 
        /**
-        * @var ConfigCache The cached config
+        * @var Profiler The profiler of this app
         */
-       private $config;
+       private $profiler;
 
        /**
         * Returns the current config cache of this node
         *
-        * @return ConfigCache
+        * @return IConfigCache
         */
-       public function getConfig()
+       public function getConfigCache()
        {
-               return $this->config;
+               return $this->config->getCache();
        }
 
        /**
@@ -139,6 +143,26 @@ class App
                return $this->basePath;
        }
 
+       /**
+        * The Logger of this app
+        *
+        * @return LoggerInterface
+        */
+       public function getLogger()
+       {
+               return $this->logger;
+       }
+
+       /**
+        * The profiler of this app
+        *
+        * @return Profiler
+        */
+       public function getProfiler()
+       {
+               return $this->profiler;
+       }
+
        /**
         * Register a stylesheet file path to be included in the <head> tag of every page.
         * Inclusion is done in App->initHead().
@@ -181,48 +205,31 @@ class App
        /**
         * @brief App constructor.
         *
-        * @param ConfigCache      $config    The Cached Config
-        * @param LoggerInterface  $logger    Logger of this application
+        * @param Configuration    $config    The Configuration
+        * @param LoggerInterface  $logger    The current app logger
+        * @param Profiler         $profiler  The profiler of this application
         * @param bool             $isBackend Whether it is used for backend or frontend (Default true=backend)
         *
         * @throws Exception if the Basepath is not usable
         */
-       public function __construct(ConfigCache $config, LoggerInterface $logger, $isBackend = true)
+       public function __construct(Configuration $config, LoggerInterface $logger, Profiler $profiler, $isBackend = true)
        {
-               $this->config   = $config;
+               BaseObject::setApp($this);
+
                $this->logger   = $logger;
+               $this->config   = $config;
+               $this->profiler = $profiler;
                $this->basePath = $this->config->get('system', 'basepath');
 
                if (!Core\System::isDirectoryUsable($this->basePath, false)) {
-                       throw new Exception('Basepath ' . $this->basePath . ' isn\'t usable.');
+                       throw new Exception('Basepath \'' . $this->basePath . '\' isn\'t usable.');
                }
                $this->basePath = rtrim($this->basePath, DIRECTORY_SEPARATOR);
 
-               BaseObject::setApp($this);
-
                $this->checkBackend($isBackend);
                $this->checkFriendicaApp();
 
-               $this->performance['start'] = microtime(true);
-               $this->performance['database'] = 0;
-               $this->performance['database_write'] = 0;
-               $this->performance['cache'] = 0;
-               $this->performance['cache_write'] = 0;
-               $this->performance['network'] = 0;
-               $this->performance['file'] = 0;
-               $this->performance['rendering'] = 0;
-               $this->performance['parser'] = 0;
-               $this->performance['marktime'] = 0;
-               $this->performance['markstart'] = microtime(true);
-
-               $this->callstack['database'] = [];
-               $this->callstack['database_write'] = [];
-               $this->callstack['cache'] = [];
-               $this->callstack['cache_write'] = [];
-               $this->callstack['network'] = [];
-               $this->callstack['file'] = [];
-               $this->callstack['rendering'] = [];
-               $this->callstack['parser'] = [];
+               $this->profiler->reset();
 
                $this->mode = new App\Mode($this->basePath);
 
@@ -341,52 +348,20 @@ class App
                return $this->mode;
        }
 
-       /**
-        * Returns the Logger of the Application
-        *
-        * @return LoggerInterface The Logger
-        * @throws InternalServerErrorException when the logger isn't created
-        */
-       public function getLogger()
-       {
-               if (empty($this->logger)) {
-                       throw new InternalServerErrorException('Logger of the Application is not defined');
-               }
-
-               return $this->logger;
-       }
-
        /**
         * Reloads the whole app instance
         */
        public function reload()
        {
-               Core\Config::init($this->config);
-               Core\PConfig::init($this->config);
-
-               $this->loadDatabase();
-
-               $this->getMode()->determine($this->basePath);
-
                $this->determineURLPath();
 
-               if ($this->getMode()->has(App\Mode::DBCONFIGAVAILABLE)) {
-                       $adapterType = $this->config->get('system', 'config_adapter');
-                       $adapter = ConfigFactory::createConfig($adapterType, $this->config);
-                       Core\Config::setAdapter($adapter);
-                       $adapterP = ConfigFactory::createPConfig($adapterType, $this->config);
-                       Core\PConfig::setAdapter($adapterP);
-                       Core\Config::load();
-               }
-
-               // again because DB-config could change the config
                $this->getMode()->determine($this->basePath);
 
                if ($this->getMode()->has(App\Mode::DBAVAILABLE)) {
                        Core\Hook::loadHooks();
                        $loader = new ConfigCacheLoader($this->basePath);
                        Core\Hook::callAll('load_config', $loader);
-                       $this->config->loadConfigArray($loader->loadCoreConfig('addon'), true);
+                       $this->config->getCache()->load($loader->loadCoreConfig('addon'), true);
                }
 
                $this->loadDefaultTimezone();
@@ -394,8 +369,6 @@ class App
                Core\L10n::init();
 
                $this->process_id = Core\System::processID('log');
-
-               Core\Logger::setLogger($this->logger);
        }
 
        /**
@@ -456,49 +429,6 @@ class App
                }
        }
 
-       public function loadDatabase()
-       {
-               if (DBA::connected()) {
-                       return;
-               }
-
-               $db_host = $this->config->get('database', 'hostname');
-               $db_user = $this->config->get('database', 'username');
-               $db_pass = $this->config->get('database', 'password');
-               $db_data = $this->config->get('database', 'database');
-               $charset = $this->config->get('database', 'charset');
-
-               // Use environment variables for mysql if they are set beforehand
-               if (!empty(getenv('MYSQL_HOST'))
-                       && !empty(getenv('MYSQL_USERNAME') || !empty(getenv('MYSQL_USER')))
-                       && getenv('MYSQL_PASSWORD') !== false
-                       && !empty(getenv('MYSQL_DATABASE')))
-               {
-                       $db_host = getenv('MYSQL_HOST');
-                       if (!empty(getenv('MYSQL_PORT'))) {
-                               $db_host .= ':' . getenv('MYSQL_PORT');
-                       }
-                       if (!empty(getenv('MYSQL_USERNAME'))) {
-                               $db_user = getenv('MYSQL_USERNAME');
-                       } else {
-                               $db_user = getenv('MYSQL_USER');
-                       }
-                       $db_pass = (string) getenv('MYSQL_PASSWORD');
-                       $db_data = getenv('MYSQL_DATABASE');
-               }
-
-               $stamp1 = microtime(true);
-
-               if (DBA::connect($this->config, $db_host, $db_user, $db_pass, $db_data, $charset)) {
-                       // Loads DB_UPDATE_VERSION constant
-                       Database\DBStructure::definition($this->basePath, false);
-               }
-
-               unset($db_host, $db_user, $db_pass, $db_data, $charset);
-
-               $this->saveTimestamp($stamp1, 'network');
-       }
-
        public function getScheme()
        {
                return $this->scheme;
@@ -663,8 +593,6 @@ class App
                        '$local_user'      => local_user(),
                        '$generator'       => 'Friendica' . ' ' . FRIENDICA_VERSION,
                        '$delitem'         => Core\L10n::t('Delete this item?'),
-                       '$showmore'        => Core\L10n::t('show more'),
-                       '$showfewer'       => Core\L10n::t('show fewer'),
                        '$update_interval' => $interval,
                        '$shortcut_icon'   => $shortcut_icon,
                        '$touch_icon'      => $touch_icon,
@@ -742,41 +670,6 @@ class App
                }
        }
 
-       /**
-        * Saves a timestamp for a value - f.e. a call
-        * Necessary for profiling Friendica
-        *
-        * @param int $timestamp the Timestamp
-        * @param string $value A value to profile
-        */
-       public function saveTimestamp($timestamp, $value)
-       {
-               $profiler = $this->config->get('system', 'profiler');
-
-               if (!isset($profiler) || !$profiler) {
-                       return;
-               }
-
-               $duration = (float) (microtime(true) - $timestamp);
-
-               if (!isset($this->performance[$value])) {
-                       // Prevent ugly E_NOTICE
-                       $this->performance[$value] = 0;
-               }
-
-               $this->performance[$value] += (float) $duration;
-               $this->performance['marktime'] += (float) $duration;
-
-               $callstack = Core\System::callstack();
-
-               if (!isset($this->callstack[$value][$callstack])) {
-                       // Prevent ugly E_NOTICE
-                       $this->callstack[$value][$callstack] = 0;
-               }
-
-               $this->callstack[$value][$callstack] += (float) $duration;
-       }
-
        /**
         * Returns the current UserAgent as a String
         *
@@ -1227,7 +1120,7 @@ class App
                if (!$this->isBackend()) {
                        $stamp1 = microtime(true);
                        session_start();
-                       $this->saveTimestamp($stamp1, 'parser');
+                       $this->profiler->saveTimestamp($stamp1, 'parser', Core\System::callstack());
                        Core\L10n::setSessionVariable();
                        Core\L10n::setLangFromSession();
                } else {
index a8b5ec2025546e7ffa0e694597d2f38524ccd8b1..e9b5f98d0b496deb0f6839f78a66b4b0e986a896 100644 (file)
@@ -1027,7 +1027,7 @@ class BBCode extends BaseObject
                        @curl_exec($ch);
                        $curl_info = @curl_getinfo($ch);
 
-                       $a->saveTimestamp($stamp1, "network");
+                       $a->getProfiler()->saveTimestamp($stamp1, "network", System::callstack());
 
                        if (substr($curl_info["content_type"], 0, 6) == "image/") {
                                $text = "[url=" . $match[1] . "]" . $match[1] . "[/url]";
@@ -1086,7 +1086,7 @@ class BBCode extends BaseObject
                        @curl_exec($ch);
                        $curl_info = @curl_getinfo($ch);
 
-                       $a->saveTimestamp($stamp1, "network");
+                       $a->getProfiler()->saveTimestamp($stamp1, "network", System::callstack());
 
                        // if its a link to a picture then embed this picture
                        if (substr($curl_info["content_type"], 0, 6) == "image/") {
@@ -1915,7 +1915,7 @@ class BBCode extends BaseObject
                // unmask the special chars back to HTML
                $text = str_replace(['&\_lt\_;', '&\_gt\_;', '&\_amp\_;'], ['&lt;', '&gt;', '&amp;'], $text);
 
-               $a->saveTimestamp($stamp1, "parser");
+               $a->getProfiler()->saveTimestamp($stamp1, "parser", System::callstack());
 
                // Libertree has a problem with escaped hashtags.
                $text = str_replace(['\#'], ['#'], $text);
index ceb5b043b3065ba045c27891fc0138df916afd31..e3e2cd3ac957750e56f04205179611a3038aac72 100644 (file)
@@ -7,6 +7,7 @@
 namespace Friendica\Content\Text;
 
 use Friendica\BaseObject;
+use Friendica\Core\System;
 use Friendica\Model\Contact;
 use Michelf\MarkdownExtra;
 
@@ -36,7 +37,7 @@ class Markdown extends BaseObject
                $html = $MarkdownParser->transform($text);
                $html = preg_replace('/<a(.*?)href="#/is', '<a$1href="' . ltrim($_SERVER['REQUEST_URI'], '/') . '#', $html);
 
-               self::getApp()->saveTimestamp($stamp1, "parser");
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, "parser", System::callstack());
 
                return $html;
        }
index 6697a44aea13bd60b480fa0cb067d4fa5e9f2be5..7957e08350efefb0cd68c39287b4bd3c7a903fc4 100644 (file)
@@ -219,7 +219,7 @@ class Addon extends BaseObject
 
                $stamp1 = microtime(true);
                $f = file_get_contents("addon/$addon/$addon.php");
-               $a->saveTimestamp($stamp1, "file");
+               $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
 
                $r = preg_match("|/\*.*\*/|msU", $f, $m);
 
index 39c29566d3560df5c5d0ede30804c42ce10798d0..cadb2444b50e4debee4b9eff7a9f55d6e47f1d60 100644 (file)
@@ -63,7 +63,7 @@ class Cache extends \Friendica\BaseObject
 
                $return = self::getDriver()->getAllKeys($prefix);
 
-               self::getApp()->saveTimestamp($time, 'cache');
+               self::getApp()->getProfiler()->saveTimestamp($time, 'cache', System::callstack());
 
                return $return;
        }
@@ -82,7 +82,7 @@ class Cache extends \Friendica\BaseObject
 
                $return = self::getDriver()->get($key);
 
-               self::getApp()->saveTimestamp($time, 'cache');
+               self::getApp()->getProfiler()->saveTimestamp($time, 'cache', System::callstack());
 
                return $return;
        }
@@ -105,7 +105,7 @@ class Cache extends \Friendica\BaseObject
 
                $return = self::getDriver()->set($key, $value, $duration);
 
-               self::getApp()->saveTimestamp($time, 'cache_write');
+               self::getApp()->getProfiler()->saveTimestamp($time, 'cache_write', System::callstack());
 
                return $return;
        }
@@ -124,7 +124,7 @@ class Cache extends \Friendica\BaseObject
 
                $return = self::getDriver()->delete($key);
 
-               self::getApp()->saveTimestamp($time, 'cache_write');
+               self::getApp()->getProfiler()->saveTimestamp($time, 'cache_write', System::callstack());
 
                return $return;
        }
index 559ee83ece57e08b8bfedb53d94510b082606459..4bf9c5b11d2d4aa96495516edfc38dc94c098f25 100644 (file)
@@ -8,10 +8,6 @@
  */
 namespace Friendica\Core;
 
-use Friendica\Core\Config\ConfigCache;
-use Friendica\Core\Config\IConfigAdapter;
-use Friendica\Core\Config\IConfigCache;
-
 /**
  * @brief Arbitrary system configuration storage
  *
@@ -22,116 +18,76 @@ use Friendica\Core\Config\IConfigCache;
 class Config
 {
        /**
-        * @var Config\IConfigAdapter|null
+        * @var Config\Configuration
         */
-       private static $adapter;
+       private static $config;
 
        /**
-        * @var Config\IConfigCache
-        */
-       private static $cache;
-
-       /**
-        * Initialize the config with only the cache
+        * Initialize the config
         *
-        * @param Config\IConfigCache $cache  The configuration cache
+        * @param Config\Configuration $config
         */
-       public static function init(Config\IConfigCache $cache)
+       public static function init(Config\Configuration $config)
        {
-               self::$cache  = $cache;
-       }
-
-       /**
-        * Add the adapter for DB-backend
-        *
-        * @param Config\IConfigAdapter $adapter
-        */
-       public static function setAdapter(Config\IConfigAdapter $adapter)
-       {
-               self::$adapter = $adapter;
+               self::$config = $config;
        }
 
        /**
         * @brief Loads all configuration values of family into a cached storage.
         *
-        * All configuration values of the system are stored in the cache ( @see IConfigCache )
-        *
-        * @param string $family The category of the configuration value
+        * @param string $cat The category of the configuration value
         *
         * @return void
         */
-       public static function load($family = "config")
+       public static function load($cat = "config")
        {
-               if (!isset(self::$adapter) || !self::$adapter->isConnected()) {
-                       return;
-               }
-
-               self::$adapter->load($family);
+               self::$config->load($cat);
        }
 
        /**
         * @brief Get a particular user's config variable given the category name
         * ($family) and a key.
         *
-        * Get a particular config value from the given category ($family)
-        * and the $key from a cached storage either from the self::$adapter
-        * (@see IConfigAdapter ) or from the static::$cache (@see IConfigCache ).
-        *
-        * @param string  $family        The category of the configuration value
+        * @param string  $cat        The category of the configuration value
         * @param string  $key           The configuration key to query
         * @param mixed   $default_value optional, The value to return if key is not set (default: null)
         * @param boolean $refresh       optional, If true the config is loaded from the db and not from the cache (default: false)
         *
         * @return mixed Stored value or null if it does not exist
         */
-       public static function get($family, $key, $default_value = null, $refresh = false)
+       public static function get($cat, $key, $default_value = null, $refresh = false)
        {
-               if (!isset(self::$adapter) || !self::$adapter->isConnected()) {
-                       return self::$cache->get($family, $key, $default_value);
-               }
-
-               return self::$adapter->get($family, $key, $default_value, $refresh);
+               return self::$config->get($cat, $key, $default_value, $refresh);
        }
 
        /**
         * @brief Sets a configuration value for system config
         *
-        * Stores a config value ($value) in the category ($family) under the key ($key)
+        * Stores a config value ($value) in the category ($cat) under the key ($key)
         *
         * Note: Please do not store booleans - convert to 0/1 integer values!
         *
-        * @param string $family The category of the configuration value
+        * @param string $cat The category of the configuration value
         * @param string $key    The configuration key to set
         * @param mixed  $value  The value to store
         *
         * @return bool Operation success
         */
-       public static function set($family, $key, $value)
+       public static function set($cat, $key, $value)
        {
-               if (!isset(self::$adapter) || !self::$adapter->isConnected()) {
-                       return self::$cache->set($family, $key, $value);
-               }
-
-               return self::$adapter->set($family, $key, $value);
+               return self::$config->set($cat, $key, $value);
        }
 
        /**
         * @brief Deletes the given key from the system configuration.
         *
-        * Removes the configured value from the stored cache in self::$config
-        * (@see ConfigCache ) and removes it from the database (@see IConfigAdapter ).
-        *
-        * @param string $family The category of the configuration value
+        * @param string $cat The category of the configuration value
         * @param string $key    The configuration key to delete
         *
-        * @return mixed
+        * @return bool
         */
-       public static function delete($family, $key)
+       public static function delete($cat, $key)
        {
-               if (!isset(self::$adapter) || !self::$adapter->isConnected()) {
-                       self::$cache->delete($family, $key);
-               }
-
-               return self::$adapter->delete($family, $key);
+               return self::$config->delete($cat, $key);
        }
 }
diff --git a/src/Core/Config/AbstractDbaConfigAdapter.php b/src/Core/Config/AbstractDbaConfigAdapter.php
deleted file mode 100644 (file)
index bae7512..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-abstract class AbstractDbaConfigAdapter
-{
-       /** @var bool */
-       protected $connected = true;
-
-       public function isConnected()
-       {
-               return $this->connected;
-       }
-}
diff --git a/src/Core/Config/Adapter/AbstractDbaConfigAdapter.php b/src/Core/Config/Adapter/AbstractDbaConfigAdapter.php
new file mode 100644 (file)
index 0000000..770dfd2
--- /dev/null
@@ -0,0 +1,21 @@
+<?php
+
+namespace Friendica\Core\Config\Adapter;
+
+use Friendica\Database\DBA;
+
+abstract class AbstractDbaConfigAdapter
+{
+       /** @var bool */
+       protected $connected = true;
+
+       public function __construct()
+       {
+               $this->connected = DBA::connected();
+       }
+
+       public function isConnected()
+       {
+               return $this->connected;
+       }
+}
diff --git a/src/Core/Config/Adapter/IConfigAdapter.php b/src/Core/Config/Adapter/IConfigAdapter.php
new file mode 100644 (file)
index 0000000..21cd9a4
--- /dev/null
@@ -0,0 +1,71 @@
+<?php
+
+namespace Friendica\Core\Config\Adapter;
+
+/**
+ *
+ * @author Hypolite Petovan <hypolite@mrpetovan.com>
+ */
+interface IConfigAdapter
+{
+       /**
+        * Loads all configuration values and returns the loaded category as an array.
+        *
+        * @param string  $cat The category of the configuration values to load
+        *
+        * @return array
+        */
+       public function load($cat = "config");
+
+       /**
+        * Get a particular system-wide config variable given the category name
+        * ($family) and a key.
+        *
+        * @param string  $cat The category of the configuration value
+        * @param string  $key The configuration key to query
+        *
+        * @return mixed Stored value or "!<unset>!" if it does not exist
+        */
+       public function get($cat, $key);
+
+       /**
+        * Stores a config value ($value) in the category ($family) under the key ($key).
+        *
+        * Note: Please do not store booleans - convert to 0/1 integer values!
+        *
+        * @param string $cat   The category of the configuration value
+        * @param string $key   The configuration key to set
+        * @param mixed  $value The value to store
+        *
+        * @return bool Operation success
+        */
+       public function set($cat, $key, $value);
+
+       /**
+        * Removes the configured value from the stored cache
+        * and removes it from the database.
+        *
+        * @param string $cat The category of the configuration value
+        * @param string $key   The configuration key to delete
+        *
+        * @return mixed
+        */
+       public function delete($cat, $key);
+
+       /**
+        * Checks, if the current adapter is connected to the backend
+        *
+        * @return bool
+        */
+       public function isConnected();
+
+       /**
+        * Checks, if a config key ($key) in the category ($cat) is already loaded.
+        *
+        * @param string $cat The configuration category
+        * @param string $key The configuration key
+        *
+        * @return bool
+        */
+       public function isLoaded($cat, $key);
+}
diff --git a/src/Core/Config/Adapter/IPConfigAdapter.php b/src/Core/Config/Adapter/IPConfigAdapter.php
new file mode 100644 (file)
index 0000000..8e6c050
--- /dev/null
@@ -0,0 +1,83 @@
+<?php
+
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+namespace Friendica\Core\Config\Adapter;
+
+/**
+ *
+ * @author benlo
+ */
+interface IPConfigAdapter
+{
+       /**
+        * Loads all configuration values of a user's config family and returns the loaded category as an array.
+        *
+        * @param string $uid The user_id
+        * @param string $cat The category of the configuration value
+        *
+        * @return array
+        */
+       public function load($uid, $cat);
+
+       /**
+        * Get a particular user's config variable given the category name
+        * ($family) and a key.
+        *
+        * @param string  $uid           The user_id
+        * @param string  $cat           The category of the configuration value
+        * @param string  $key           The configuration key to query
+        *
+        * @return mixed Stored value or "!<unset>!" if it does not exist
+        */
+       public function get($uid, $cat, $key);
+
+       /**
+        * Stores a config value ($value) in the category ($family) under the key ($key)
+        * for the user_id $uid.
+        *
+        * @note Please do not store booleans - convert to 0/1 integer values!
+        *
+        * @param string $uid   The user_id
+        * @param string $cat   The category of the configuration value
+        * @param string $key   The configuration key to set
+        * @param string $value The value to store
+        *
+        * @return bool Operation success
+        */
+       public function set($uid, $cat, $key, $value);
+
+       /**
+        * Removes the configured value from the stored cache
+        * and removes it from the database.
+        *
+        * @param string $uid The user_id
+        * @param string $cat The category of the configuration value
+        * @param string $key The configuration key to delete
+        *
+        * @return bool
+        */
+       public function delete($uid, $cat, $key);
+
+       /**
+        * Checks, if the current adapter is connected to the backend
+        *
+        * @return bool
+        */
+       public function isConnected();
+
+       /**
+        * Checks, if a config key ($key) in the category ($cat) is already loaded for the user_id $uid.
+        *
+        * @param string $uid The user_id
+        * @param string $cat The configuration category
+        * @param string $key The configuration key
+        *
+        * @return bool
+        */
+       public function isLoaded($uid, $cat, $key);
+}
diff --git a/src/Core/Config/Adapter/JITConfigAdapter.php b/src/Core/Config/Adapter/JITConfigAdapter.php
new file mode 100644 (file)
index 0000000..c0d680d
--- /dev/null
@@ -0,0 +1,139 @@
+<?php
+namespace Friendica\Core\Config\Adapter;
+
+use Friendica\Database\DBA;
+
+/**
+ * JustInTime Configuration Adapter
+ *
+ * Default Config Adapter. Provides the best performance for pages loading few configuration variables.
+ *
+ * @author Hypolite Petovan <hypolite@mrpetovan.com>
+ */
+class JITConfigAdapter extends AbstractDbaConfigAdapter implements IConfigAdapter
+{
+       private $in_db;
+
+       /**
+        * {@inheritdoc}
+        */
+       public function load($cat = "config")
+       {
+               $return = [];
+
+               if (!$this->isConnected()) {
+                       return $return;
+               }
+
+               // We don't preload "system" anymore.
+               // This reduces the number of database reads a lot.
+               if ($cat === 'system') {
+                       return $return;
+               }
+
+               $configs = DBA::select('config', ['v', 'k'], ['cat' => $cat]);
+               while ($config = DBA::fetch($configs)) {
+                       $key   = $config['k'];
+                       $value = $config['v'];
+
+                       if (isset($value) && $value !== '') {
+                               $return[$key] = $value;
+                               $this->in_db[$cat][$key] = true;
+                       }
+               }
+               DBA::close($configs);
+
+               return [$cat => $config];
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function get($cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return '!<unset>!';
+               }
+
+               $config = DBA::selectFirst('config', ['v'], ['cat' => $cat, 'k' => $key]);
+               if (DBA::isResult($config)) {
+                       // manage array value
+                       $value = (preg_match("|^a:[0-9]+:{.*}$|s", $config['v']) ? unserialize($config['v']) : $config['v']);
+
+                       if (isset($value) && $value !== '') {
+                               $this->in_db[$cat][$key] = true;
+                               return $value;
+                       }
+               }
+
+               $this->in_db[$cat][$key] = false;
+               return '!<unset>!';
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function set($cat, $key, $value)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               // We store our setting values in a string variable.
+               // So we have to do the conversion here so that the compare below works.
+               // The exception are array values.
+               $dbvalue = (!is_array($value) ? (string)$value : $value);
+
+               $stored = $this->get($cat, $key);
+
+               if (!isset($this->in_db[$cat])) {
+                       $this->in_db[$cat] = [];
+               }
+               if (!isset($this->in_db[$cat][$key])) {
+                       $this->in_db[$cat][$key] = false;
+               }
+
+               if (($stored === $dbvalue) && $this->in_db[$cat][$key]) {
+                       return true;
+               }
+
+               // manage array value
+               $dbvalue = (is_array($value) ? serialize($value) : $dbvalue);
+
+               $result = DBA::update('config', ['v' => $dbvalue], ['cat' => $cat, 'k' => $key], true);
+
+               $this->in_db[$cat][$key] = $result;
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function delete($cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               if (isset($this->cache[$cat][$key])) {
+                       unset($this->in_db[$cat][$key]);
+               }
+
+               $result = DBA::delete('config', ['cat' => $cat, 'k' => $key]);
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function isLoaded($cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               return (isset($this->in_db[$cat][$key])) && $this->in_db[$cat][$key];
+       }
+}
diff --git a/src/Core/Config/Adapter/JITPConfigAdapter.php b/src/Core/Config/Adapter/JITPConfigAdapter.php
new file mode 100644 (file)
index 0000000..4485ee5
--- /dev/null
@@ -0,0 +1,141 @@
+<?php
+namespace Friendica\Core\Config\Adapter;
+
+use Friendica\Database\DBA;
+
+/**
+ * JustInTime User Configuration Adapter
+ *
+ * Default PConfig Adapter. Provides the best performance for pages loading few configuration variables.
+ *
+ * @author Hypolite Petovan <hypolite@mrpetovan.com>
+ */
+class JITPConfigAdapter extends AbstractDbaConfigAdapter implements IPConfigAdapter
+{
+       private $in_db;
+
+       /**
+        * {@inheritdoc}
+        */
+       public function load($uid, $cat)
+       {
+               $return = [];
+
+               if (!$this->isConnected()) {
+                       return $return;
+               }
+
+               $pconfigs = DBA::select('pconfig', ['v', 'k'], ['cat' => $cat, 'uid' => $uid]);
+               if (DBA::isResult($pconfigs)) {
+                       while ($pconfig = DBA::fetch($pconfigs)) {
+                               $key = $pconfig['k'];
+                               $value = $pconfig['v'];
+
+                               if (isset($value) && $value !== '') {
+                                       $return[$key] = $value;
+                                       $this->in_db[$uid][$cat][$key] = true;
+                               }
+                       }
+               } else if ($cat != 'config') {
+                       // Negative caching
+                       $return = "!<unset>!";
+               }
+               DBA::close($pconfigs);
+
+               return [$cat => $return];
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function get($uid, $cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return '!<unset>!';
+               }
+
+               $pconfig = DBA::selectFirst('pconfig', ['v'], ['uid' => $uid, 'cat' => $cat, 'k' => $key]);
+               if (DBA::isResult($pconfig)) {
+                       // manage array value
+                       $value = (preg_match("|^a:[0-9]+:{.*}$|s", $pconfig['v']) ? unserialize($pconfig['v']) : $pconfig['v']);
+
+                       if (isset($value) && $value !== '') {
+                               $this->in_db[$uid][$cat][$key] = true;
+                               return $value;
+                       }
+               }
+
+               $this->in_db[$uid][$cat][$key] = false;
+               return '!<unset>!';
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function set($uid, $cat, $key, $value)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               // We store our setting values in a string variable.
+               // So we have to do the conversion here so that the compare below works.
+               // The exception are array values.
+               $dbvalue = (!is_array($value) ? (string)$value : $value);
+
+               $stored = $this->get($uid, $cat, $key);
+
+               if (!isset($this->in_db[$uid])) {
+                       $this->in_db[$uid] = [];
+               }
+               if (!isset($this->in_db[$uid][$cat])) {
+                       $this->in_db[$uid][$cat] = [];
+               }
+               if (!isset($this->in_db[$uid][$cat][$key])) {
+                       $this->in_db[$uid][$cat][$key] = false;
+               }
+
+               if (($stored === $dbvalue) && $this->in_db[$uid][$cat][$key]) {
+                       return true;
+               }
+
+               // manage array value
+               $dbvalue = (is_array($value) ? serialize($value) : $dbvalue);
+
+               $result = DBA::update('pconfig', ['v' => $dbvalue], ['uid' => $uid, 'cat' => $cat, 'k' => $key], true);
+
+               $this->in_db[$uid][$cat][$key] = $result;
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function delete($uid, $cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               if (!empty($this->in_db[$uid][$cat][$key])) {
+                       unset($this->in_db[$uid][$cat][$key]);
+               }
+
+               $result = DBA::delete('pconfig', ['uid' => $uid, 'cat' => $cat, 'k' => $key]);
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function isLoaded($uid, $cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               return (isset($this->in_db[$uid][$cat][$key])) && $this->in_db[$uid][$cat][$key];
+       }
+}
diff --git a/src/Core/Config/Adapter/PreloadConfigAdapter.php b/src/Core/Config/Adapter/PreloadConfigAdapter.php
new file mode 100644 (file)
index 0000000..218648c
--- /dev/null
@@ -0,0 +1,122 @@
+<?php
+
+namespace Friendica\Core\Config\Adapter;
+
+use Friendica\Database\DBA;
+
+/**
+ * Preload Configuration Adapter
+ *
+ * Minimizes the number of database queries to retrieve configuration values at the cost of memory.
+ *
+ * @author Hypolite Petovan <hypolite@mrpetovan.com>
+ */
+class PreloadConfigAdapter extends AbstractDbaConfigAdapter implements IConfigAdapter
+{
+       private $config_loaded = false;
+
+       /**
+        * {@inheritdoc}
+        */
+       public function load($cat = 'config')
+       {
+               $return = [];
+
+               if (!$this->isConnected()) {
+                       return $return;
+               }
+
+               if ($this->config_loaded) {
+                       return $return;
+               }
+
+               $configs = DBA::select('config', ['cat', 'v', 'k']);
+               while ($config = DBA::fetch($configs)) {
+                       $value = $config['v'];
+                       if (isset($value) && $value !== '') {
+                               $return[$config['cat']][$config['k']] = $value;
+                       } else {
+                               $return[$config['cat']][$config['k']] = '!<unset>!';
+                       }
+               }
+               DBA::close($configs);
+
+               $this->config_loaded = true;
+
+               return $return;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function get($cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return '!<unset>!';
+               }
+
+               $config = DBA::selectFirst('config', ['v'], ['cat' => $cat, 'k' => $key]);
+               if (DBA::isResult($config)) {
+                       // manage array value
+                       $value = (preg_match("|^a:[0-9]+:{.*}$|s", $config['v']) ? unserialize($config['v']) : $config['v']);
+
+                       if (isset($value) && $value !== '') {
+                               return $value;
+                       }
+               }
+
+               return '!<unset>!';
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function set($cat, $key, $value)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               // We store our setting values as strings.
+               // So we have to do the conversion here so that the compare below works.
+               // The exception are array values.
+               $compare_value = !is_array($value) ? (string)$value : $value;
+
+               if ($this->get($cat, $key) === $compare_value) {
+                       return true;
+               }
+
+               // manage array value
+               $dbvalue = is_array($value) ? serialize($value) : $value;
+
+               $result = DBA::update('config', ['v' => $dbvalue], ['cat' => $cat, 'k' => $key], true);
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function delete($cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               $result = DBA::delete('config', ['cat' => $cat, 'k' => $key]);
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function isLoaded($cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               return $this->config_loaded;
+       }
+}
diff --git a/src/Core/Config/Adapter/PreloadPConfigAdapter.php b/src/Core/Config/Adapter/PreloadPConfigAdapter.php
new file mode 100644 (file)
index 0000000..12e25df
--- /dev/null
@@ -0,0 +1,149 @@
+<?php
+
+namespace Friendica\Core\Config\Adapter;
+
+use Friendica\Database\DBA;
+
+/**
+ * Preload User Configuration Adapter
+ *
+ * Minimizes the number of database queries to retrieve configuration values at the cost of memory.
+ *
+ * @author Hypolite Petovan <hypolite@mrpetovan.com>
+ */
+class PreloadPConfigAdapter extends AbstractDbaConfigAdapter implements IPConfigAdapter
+{
+       /**
+        * @var array true if config for user is loaded
+        */
+       private $config_loaded;
+
+       /**
+        * @param int $uid The UID of the current user
+        */
+       public function __construct($uid = null)
+       {
+               parent::__construct();
+
+               $this->config_loaded = [];
+
+               if (isset($uid)) {
+                       $this->load($uid, 'config');
+               }
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function load($uid, $cat)
+       {
+               $return = [];
+
+               if (empty($uid)) {
+                       return $return;
+               }
+
+               if (!$this->isLoaded($uid, $cat, null)) {
+                       return $return;
+               }
+
+               $pconfigs = DBA::select('pconfig', ['cat', 'v', 'k'], ['uid' => $uid]);
+               while ($pconfig = DBA::fetch($pconfigs)) {
+                       $value = $pconfig['v'];
+                       if (isset($value) && $value !== '') {
+                               $return[$pconfig['cat']][$pconfig['k']] = $value;
+                       } else {
+                               $return[$pconfig['cat']][$pconfig['k']] = '!<unset>!';
+                       }
+               }
+               DBA::close($pconfigs);
+
+               $this->config_loaded[$uid] = true;
+
+               return $return;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function get($uid, $cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return '!<unset>!';
+               }
+
+               if (!$this->isLoaded($uid, $cat, $key)) {
+                       $this->load($uid, $cat);
+               }
+
+               $config = DBA::selectFirst('pconfig', ['v'], ['uid' => $uid, 'cat' => $cat, 'k' => $key]);
+               if (DBA::isResult($config)) {
+                       // manage array value
+                       $value = (preg_match("|^a:[0-9]+:{.*}$|s", $config['v']) ? unserialize($config['v']) : $config['v']);
+
+                       if (isset($value) && $value !== '') {
+                               return $value;
+                       }
+               }
+               return '!<unset>!';
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function set($uid, $cat, $key, $value)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               if (!$this->isLoaded($uid, $cat, $key)) {
+                       $this->load($uid, $cat);
+               }
+               // We store our setting values as strings.
+               // So we have to do the conversion here so that the compare below works.
+               // The exception are array values.
+               $compare_value = !is_array($value) ? (string)$value : $value;
+
+               if ($this->get($uid, $cat, $key) === $compare_value) {
+                       return true;
+               }
+
+               // manage array value
+               $dbvalue = is_array($value) ? serialize($value) : $value;
+
+               $result = DBA::update('pconfig', ['v' => $dbvalue], ['uid' => $uid, 'cat' => $cat, 'k' => $key], true);
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function delete($uid, $cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               if (!$this->isLoaded($uid, $cat, $key)) {
+                       $this->load($uid, $cat);
+               }
+
+               $result = DBA::delete('pconfig', ['uid' => $uid, 'cat' => $cat, 'k' => $key]);
+
+               return $result;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function isLoaded($uid, $cat, $key)
+       {
+               if (!$this->isConnected()) {
+                       return false;
+               }
+
+               return isset($this->config_loaded[$uid]) && $this->config_loaded[$uid];
+       }
+}
diff --git a/src/Core/Config/Cache/ConfigCache.php b/src/Core/Config/Cache/ConfigCache.php
new file mode 100644 (file)
index 0000000..4ebcc87
--- /dev/null
@@ -0,0 +1,217 @@
+<?php
+
+namespace Friendica\Core\Config\Cache;
+
+/**
+ * The Friendica config cache for the application
+ * Initial, all *.config.php files are loaded into this cache with the
+ * ConfigCacheLoader ( @see ConfigCacheLoader )
+ *
+ * Is used for further caching operations too (depending on the ConfigAdapter )
+ */
+class ConfigCache implements IConfigCache, IPConfigCache
+{
+       /**
+        * @var array
+        */
+       private $config;
+
+       /**
+        * @param array $config    A initial config array
+        */
+       public function __construct(array $config = [])
+       {
+               $this->load($config);
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function load(array $config, $overwrite = false)
+       {
+               $categories = array_keys($config);
+
+               foreach ($categories as $category) {
+                       if (isset($config[$category]) && is_array($config[$category])) {
+                               $keys = array_keys($config[$category]);
+
+                               foreach ($keys as $key) {
+                                       $value = $config[$category][$key];
+                                       if (isset($value) && $value !== '!<unset>!') {
+                                               if ($overwrite) {
+                                                       $this->set($category, $key, $value);
+                                               } else {
+                                                       $this->setDefault($category, $key, $value);
+                                               }
+                                       }
+                               }
+                       }
+               }
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function get($cat, $key = null)
+       {
+               if (isset($this->config[$cat][$key])) {
+                       return $this->config[$cat][$key];
+               } elseif ($key == null && isset($this->config[$cat])) {
+                       return $this->config[$cat];
+               } else {
+                       return '!<unset>!';
+               }
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function has($cat, $key = null)
+       {
+               return (isset($this->config[$cat][$key]) && $this->config[$cat][$key] !== '!<unset>!') ||
+               ($key == null && isset($this->config[$cat]) && $this->config[$cat] !== '!<unset>!' && is_array($this->config[$cat]));
+       }
+
+       /**
+        * Sets a default value in the config cache. Ignores already existing keys.
+        *
+        * @param string $cat Config category
+        * @param string $k   Config key
+        * @param mixed  $v   Default value to set
+        */
+       private function setDefault($cat, $k, $v)
+       {
+               if (!isset($this->config[$cat][$k])) {
+                       $this->set($cat, $k, $v);
+               }
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function set($cat, $key, $value)
+       {
+               // Only arrays are serialized in database, so we have to unserialize sparingly
+               $value = is_string($value) && preg_match("|^a:[0-9]+:{.*}$|s", $value) ? unserialize($value) : $value;
+
+               if (!isset($this->config[$cat])) {
+                       $this->config[$cat] = [];
+               }
+
+               $this->config[$cat][$key] = $value;
+
+               return true;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function hasP($uid, $cat, $key = null)
+       {
+               return (isset($this->config[$uid][$cat][$key]) && $this->config[$uid][$cat][$key] !== '!<unset>!') ||
+                       ($key == null && isset($this->config[$uid][$cat]) && $this->config[$uid][$cat] !== '!<unset>!' && is_array($this->config[$uid][$cat]));
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function delete($cat, $key)
+       {
+               if (isset($this->config[$cat][$key])) {
+                       unset($this->config[$cat][$key]);
+                       if (count($this->config[$cat]) == 0) {
+                               unset($this->config[$cat]);
+                       }
+                       return true;
+               } else {
+                       return false;
+               }
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function loadP($uid, array $config)
+       {
+               $categories = array_keys($config);
+
+               foreach ($categories as $category) {
+                       if (isset($config[$category]) && is_array($config[$category])) {
+
+                               $keys = array_keys($config[$category]);
+
+                               foreach ($keys as $key) {
+                                       $value = $config[$category][$key];
+                                       if (isset($value) && $value !== '!<unset>!') {
+                                               $this->setP($uid, $category, $key, $value);
+                                       }
+                               }
+                       }
+               }
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function getP($uid, $cat, $key = null)
+       {
+               if (isset($this->config[$uid][$cat][$key])) {
+                       return $this->config[$uid][$cat][$key];
+               } elseif ($key == null && isset($this->config[$uid][$cat])) {
+                       return $this->config[$uid][$cat];
+               } else {
+                       return '!<unset>!';
+               }
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function setP($uid, $cat, $key, $value)
+       {
+               // Only arrays are serialized in database, so we have to unserialize sparingly
+               $value = is_string($value) && preg_match("|^a:[0-9]+:{.*}$|s", $value) ? unserialize($value) : $value;
+
+               if (!isset($this->config[$uid]) || !is_array($this->config[$uid])) {
+                       $this->config[$uid] = [];
+               }
+
+               if (!isset($this->config[$uid][$cat])) {
+                       $this->config[$uid][$cat] = [];
+               }
+
+               $this->config[$uid][$cat][$key] = $value;
+
+               return true;
+       }
+
+       /**
+        * {@inheritdoc}
+        */
+       public function deleteP($uid, $cat, $key)
+       {
+               if (isset($this->config[$uid][$cat][$key])) {
+                       unset($this->config[$uid][$cat][$key]);
+                       if (count($this->config[$uid][$cat]) == 0) {
+                               unset($this->config[$uid][$cat]);
+                               if (count($this->config[$uid]) == 0) {
+                                       unset($this->config[$uid]);
+                               }
+                       }
+
+                       return true;
+               } else {
+                       return false;
+               }
+       }
+
+       /**
+        * Returns the whole configuration
+        *
+        * @return array The configuration
+        */
+       public function getAll()
+       {
+               return $this->config;
+       }
+}
diff --git a/src/Core/Config/Cache/ConfigCacheLoader.php b/src/Core/Config/Cache/ConfigCacheLoader.php
new file mode 100644 (file)
index 0000000..b728d10
--- /dev/null
@@ -0,0 +1,200 @@
+<?php
+
+namespace Friendica\Core\Config\Cache;
+
+use Friendica\Core\Addon;
+
+/**
+ * The ConfigCacheLoader loads config-files and stores them in a ConfigCache ( @see ConfigCache )
+ *
+ * It is capable of loading the following config files:
+ * - *.config.php   (current)
+ * - *.ini.php      (deprecated)
+ * - *.htconfig.php (deprecated)
+ */
+class ConfigCacheLoader
+{
+       /**
+        * The Sub directory of the config-files
+        * @var string
+        */
+       const SUBDIRECTORY = 'config';
+
+       private $baseDir;
+       private $configDir;
+
+       public function __construct($baseDir)
+       {
+               $this->baseDir = $baseDir;
+               $this->configDir = $baseDir . DIRECTORY_SEPARATOR . self::SUBDIRECTORY;
+       }
+
+       /**
+        * Load the configuration files
+        *
+        * First loads the default value for all the configuration keys, then the legacy configuration files, then the
+        * expected local.config.php
+        */
+       public function loadConfigFiles(ConfigCache $config)
+       {
+               // Setting at least the basepath we know
+               $config->set('system', 'basepath', $this->baseDir);
+
+               $config->load($this->loadCoreConfig('defaults'));
+               $config->load($this->loadCoreConfig('settings'));
+
+               $config->load($this->loadLegacyConfig('htpreconfig'), true);
+               $config->load($this->loadLegacyConfig('htconfig'), true);
+
+               $config->load($this->loadCoreConfig('local'), true);
+       }
+
+       /**
+        * Tries to load the specified core-configuration and returns the config array.
+        *
+        * @param string $name The name of the configuration
+        *
+        * @return array The config array (empty if no config found)
+        *
+        * @throws \Exception if the configuration file isn't readable
+        */
+       public function loadCoreConfig($name)
+       {
+               if (file_exists($this->configDir . DIRECTORY_SEPARATOR . $name . '.config.php')) {
+                       return $this->loadConfigFile($this->configDir . DIRECTORY_SEPARATOR . $name . '.config.php');
+               } elseif (file_exists($this->configDir . DIRECTORY_SEPARATOR . $name . '.ini.php')) {
+                       return $this->loadINIConfigFile($this->configDir . DIRECTORY_SEPARATOR . $name . '.ini.php');
+               } else {
+                       return [];
+               }
+       }
+
+       /**
+        * Tries to load the specified addon-configuration and returns the config array.
+        *
+        * @param string $name The name of the configuration
+        *
+        * @return array The config array (empty if no config found)
+        *
+        * @throws \Exception if the configuration file isn't readable
+        */
+       public function loadAddonConfig($name)
+       {
+               $filepath = $this->baseDir . DIRECTORY_SEPARATOR . // /var/www/html/
+                       Addon::DIRECTORY       . DIRECTORY_SEPARATOR . // addon/
+                       $name                  . DIRECTORY_SEPARATOR . // openstreetmap/
+                       self::SUBDIRECTORY     . DIRECTORY_SEPARATOR . // config/
+                       $name . ".config.php";                         // openstreetmap.config.php
+
+               if (file_exists($filepath)) {
+                       return $this->loadConfigFile($filepath);
+               } else {
+                       return [];
+               }
+       }
+
+       /**
+        * Tries to load the legacy config files (.htconfig.php, .htpreconfig.php) and returns the config array.
+        *
+        * @param string $name The name of the config file
+        *
+        * @return array The configuration array (empty if no config found)
+        *
+        * @deprecated since version 2018.09
+        */
+       private function loadLegacyConfig($name)
+       {
+               $filePath = $this->baseDir  . DIRECTORY_SEPARATOR . '.' . $name . '.php';
+
+               if (file_exists($filePath)) {
+                       $a = new \stdClass();
+                       $a->config = [];
+                       include $filePath;
+
+                       if (isset($db_host)) {
+                               $a->config['database']['hostname'] = $db_host;
+                               unset($db_host);
+                       }
+                       if (isset($db_user)) {
+                               $a->config['database']['username'] = $db_user;
+                               unset($db_user);
+                       }
+                       if (isset($db_pass)) {
+                               $a->config['database']['password'] = $db_pass;
+                               unset($db_pass);
+                       }
+                       if (isset($db_data)) {
+                               $a->config['database']['database'] = $db_data;
+                               unset($db_data);
+                       }
+                       if (isset($a->config['system']['db_charset'])) {
+                               $a->config['database']['charset'] = $a->config['system']['charset'];
+                       }
+                       if (isset($pidfile)) {
+                               $a->config['system']['pidfile'] = $pidfile;
+                               unset($pidfile);
+                       }
+                       if (isset($default_timezone)) {
+                               $a->config['system']['default_timezone'] = $default_timezone;
+                               unset($default_timezone);
+                       }
+                       if (isset($lang)) {
+                               $a->config['system']['language'] = $lang;
+                               unset($lang);
+                       }
+
+                       return $a->config;
+               } else {
+                       return [];
+               }
+       }
+
+       /**
+        * Tries to load the specified legacy configuration file and returns the config array.
+        *
+        * @deprecated since version 2018.12
+        * @param string $filepath
+        *
+        * @return array The configuration array
+        * @throws \Exception
+        */
+       private function loadINIConfigFile($filepath)
+       {
+               $contents = include($filepath);
+
+               $config = parse_ini_string($contents, true, INI_SCANNER_TYPED);
+
+               if ($config === false) {
+                       throw new \Exception('Error parsing INI config file ' . $filepath);
+               }
+
+               return $config;
+       }
+
+       /**
+        * Tries to load the specified configuration file and returns the config array.
+        *
+        * The config format is PHP array and the template for configuration files is the following:
+        *
+        * <?php return [
+        *      'section' => [
+        *          'key' => 'value',
+        *      ],
+        * ];
+        *
+        * @param  string $filepath The filepath of the
+        * @return array The config array0
+        *
+        * @throws \Exception if the config cannot get loaded.
+        */
+       private function loadConfigFile($filepath)
+       {
+               $config = include($filepath);
+
+               if (!is_array($config)) {
+                       throw new \Exception('Error loading config file ' . $filepath);
+               }
+
+               return $config;
+       }
+}
diff --git a/src/Core/Config/Cache/IConfigCache.php b/src/Core/Config/Cache/IConfigCache.php
new file mode 100644 (file)
index 0000000..9d94852
--- /dev/null
@@ -0,0 +1,65 @@
+<?php
+
+namespace Friendica\Core\Config\Cache;
+
+/**
+ * The interface for a system-wide ConfigCache
+ */
+interface IConfigCache
+{
+       /**
+        * Tries to load the specified configuration array into the config array.
+        * Doesn't overwrite previously set values by default to prevent default config files to supersede DB Config.
+        *
+        * @param array $config
+        * @param bool  $overwrite Force value overwrite if the config key already exists
+        */
+       function load(array $config, $overwrite = false);
+
+       /**
+        * Gets a value from the config cache.
+        *
+        * @param string $cat     Config category
+        * @param string $key       Config key
+        *
+        * @return mixed Returns the value of the Config entry or '!<unset>!' if not set
+        */
+       function get($cat, $key = null);
+
+       /**
+        * Sets a value in the config cache. Accepts raw output from the config table
+        *
+        * @param string $cat   Config category
+        * @param string $key   Config key
+        * @param mixed  $value Value to set
+        *
+        * @return bool True, if the value is set
+        */
+       function set($cat, $key, $value);
+
+       /**
+        * Deletes a value from the config cache.
+        *
+        * @param string $cat  Config category
+        * @param string $key  Config key
+        *
+        * @return bool true, if deleted
+        */
+       function delete($cat, $key);
+
+       /**
+        * Checks if a value is set in the config cache.
+        *
+        * @param string $cat  Config category
+        * @param string $key  Config key
+        * @return bool
+        */
+       function has($cat, $key = null);
+
+       /**
+        * Returns the whole configuration cache
+        *
+        * @return array
+        */
+       function getAll();
+}
diff --git a/src/Core/Config/Cache/IPConfigCache.php b/src/Core/Config/Cache/IPConfigCache.php
new file mode 100644 (file)
index 0000000..4ac2148
--- /dev/null
@@ -0,0 +1,70 @@
+<?php
+
+namespace Friendica\Core\Config\Cache;
+
+/**
+ * The interface for a user-specific config cache
+ */
+interface IPConfigCache
+{
+       /**
+        * Tries to load the specified configuration array into the user specific config array.
+        * Doesn't overwrite previously set values by default to prevent default config files to supersede DB Config.
+        *
+        * @param int   $uid
+        * @param array $config
+        */
+       function loadP($uid, array $config);
+
+       /**
+        * Retrieves a value from the user config cache
+        *
+        * @param int    $uid     User Id
+        * @param string $cat     Config category
+        * @param string $key     Config key
+        *
+        * @return string The value of the config entry or '!<unset>!' if not set
+        */
+       function getP($uid, $cat, $key = null);
+
+       /**
+        * Sets a value in the user config cache
+        *
+        * Accepts raw output from the pconfig table
+        *
+        * @param int    $uid   User Id
+        * @param string $cat   Config category
+        * @param string $key   Config key
+        * @param mixed  $value Value to set
+        */
+       function setP($uid, $cat, $key, $value);
+
+       /**
+        * Deletes a value from the user config cache
+        *
+        * @param int    $uid User Id
+        * @param string $cat Config category
+        * @param string $key Config key
+        *
+        * @return bool true, if deleted
+        */
+       function deleteP($uid, $cat, $key);
+
+
+       /**
+        * Checks if a value is set in the user config cache.
+        *
+        * @param int    $uid  User Id
+        * @param string $cat  Config category
+        * @param string $key  Config key
+        * @return bool
+        */
+       function hasP($uid, $cat, $key = null);
+
+       /**
+        * Returns the whole configuration cache
+        *
+        * @return array
+        */
+       function getAll();
+}
diff --git a/src/Core/Config/ConfigCache.php b/src/Core/Config/ConfigCache.php
deleted file mode 100644 (file)
index b86ec38..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-/**
- * The Friendica config cache for the application
- * Initial, all *.config.php files are loaded into this cache with the
- * ConfigCacheLoader ( @see ConfigCacheLoader )
- *
- * Is used for further caching operations too (depending on the ConfigAdapter )
- */
-class ConfigCache implements IConfigCache, IPConfigCache
-{
-       private $config;
-
-       /**
-        * @param array $config    A initial config array
-        */
-       public function __construct(array $config = [])
-       {
-               $this->loadConfigArray($config);
-       }
-
-       /**
-        * Tries to load the specified configuration array into the App->config array.
-        * Doesn't overwrite previously set values by default to prevent default config files to supersede DB Config.
-        *
-        * @param array $config
-        * @param bool  $overwrite Force value overwrite if the config key already exists
-        */
-       public function loadConfigArray(array $config, $overwrite = false)
-       {
-               foreach ($config as $category => $values) {
-                       foreach ($values as $key => $value) {
-                               if ($overwrite) {
-                                       $this->set($category, $key, $value);
-                               } else {
-                                       $this->setDefault($category, $key, $value);
-                               }
-                       }
-               }
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function get($cat, $key = null, $default = null)
-       {
-               $return = $default;
-
-               if ($cat === 'config') {
-                       if (isset($this->config[$key])) {
-                               $return = $this->config[$key];
-                       }
-               } else {
-                       if (isset($this->config[$cat][$key])) {
-                               $return = $this->config[$cat][$key];
-                       } elseif ($key == null && isset($this->config[$cat])) {
-                               $return = $this->config[$cat];
-                       }
-               }
-
-               return $return;
-       }
-
-       /**
-        * Sets a default value in the config cache. Ignores already existing keys.
-        *
-        * @param string $cat Config category
-        * @param string $k   Config key
-        * @param mixed  $v   Default value to set
-        */
-       private function setDefault($cat, $k, $v)
-       {
-               if (!isset($this->config[$cat][$k])) {
-                       $this->set($cat, $k, $v);
-               }
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function set($cat, $key, $value)
-       {
-               // Only arrays are serialized in database, so we have to unserialize sparingly
-               $value = is_string($value) && preg_match("|^a:[0-9]+:{.*}$|s", $value) ? unserialize($value) : $value;
-
-               if ($cat === 'config') {
-                       $this->config[$key] = $value;
-               } else {
-                       if (!isset($this->config[$cat])) {
-                               $this->config[$cat] = [];
-                       }
-
-                       $this->config[$cat][$key] = $value;
-               }
-
-               return true;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function delete($cat, $key)
-       {
-               if ($cat === 'config') {
-                       if (isset($this->config[$key])) {
-                               unset($this->config[$key]);
-                       }
-               } else {
-                       if (isset($this->config[$cat][$key])) {
-                               unset($this->config[$cat][$key]);
-                               if (count($this->config[$cat]) == 0) {
-                                       unset($this->config[$cat]);
-                               }
-                       }
-               }
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function getP($uid, $cat, $key = null, $default = null)
-       {
-               $return = $default;
-
-               if (isset($this->config[$uid][$cat][$key])) {
-                       $return = $this->config[$uid][$cat][$key];
-               } elseif ($key === null && isset($this->config[$uid][$cat])) {
-                       $return = $this->config[$uid][$cat];
-               }
-
-               return $return;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function setP($uid, $cat, $key, $value)
-       {
-               // Only arrays are serialized in database, so we have to unserialize sparingly
-               $value = is_string($value) && preg_match("|^a:[0-9]+:{.*}$|s", $value) ? unserialize($value) : $value;
-
-               if (!isset($this->config[$uid]) || !is_array($this->config[$uid])) {
-                       $this->config[$uid] = [];
-               }
-
-               if (!isset($this->config[$uid][$cat]) || !is_array($this->config[$uid][$cat])) {
-                       $this->config[$uid][$cat] = [];
-               }
-
-               if ($key === null) {
-                       $this->config[$uid][$cat] = $value;
-               } else {
-                       $this->config[$uid][$cat][$key] = $value;
-               }
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function deleteP($uid, $cat, $key)
-       {
-               if (isset($this->config[$uid][$cat][$key])) {
-                       unset($this->config[$uid][$cat][$key]);
-                       if (count($this->config[$uid][$cat]) == 0) {
-                               unset($this->config[$uid][$cat]);
-                               if (count($this->config[$uid]) == 0) {
-                                       unset($this->config[$uid]);
-                               }
-                       }
-               }
-       }
-
-       /**
-        * Returns the whole configuration
-        *
-        * @return array The configuration
-        */
-       public function getAll()
-       {
-               return $this->config;
-       }
-}
diff --git a/src/Core/Config/ConfigCacheLoader.php b/src/Core/Config/ConfigCacheLoader.php
deleted file mode 100644 (file)
index 3a6a3c8..0000000
+++ /dev/null
@@ -1,200 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-use Friendica\Core\Addon;
-
-/**
- * The ConfigCacheLoader loads config-files and stores them in a ConfigCache ( @see ConfigCache )
- *
- * It is capable of loading the following config files:
- * - *.config.php   (current)
- * - *.ini.php      (deprecated)
- * - *.htconfig.php (deprecated)
- */
-class ConfigCacheLoader
-{
-       /**
-        * The Sub directory of the config-files
-        * @var string
-        */
-       const SUBDIRECTORY = 'config';
-
-       private $baseDir;
-       private $configDir;
-
-       public function __construct($baseDir)
-       {
-               $this->baseDir = $baseDir;
-               $this->configDir = $baseDir . DIRECTORY_SEPARATOR . self::SUBDIRECTORY;
-       }
-
-       /**
-        * Load the configuration files
-        *
-        * First loads the default value for all the configuration keys, then the legacy configuration files, then the
-        * expected local.config.php
-        */
-       public function loadConfigFiles(ConfigCache $config)
-       {
-               // Setting at least the basepath we know
-               $config->set('system', 'basepath', $this->baseDir);
-
-               $config->loadConfigArray($this->loadCoreConfig('defaults'));
-               $config->loadConfigArray($this->loadCoreConfig('settings'));
-
-               $config->loadConfigArray($this->loadLegacyConfig('htpreconfig'), true);
-               $config->loadConfigArray($this->loadLegacyConfig('htconfig'), true);
-
-               $config->loadConfigArray($this->loadCoreConfig('local'), true);
-       }
-
-       /**
-        * Tries to load the specified core-configuration and returns the config array.
-        *
-        * @param string $name The name of the configuration
-        *
-        * @return array The config array (empty if no config found)
-        *
-        * @throws \Exception if the configuration file isn't readable
-        */
-       public function loadCoreConfig($name)
-       {
-               if (file_exists($this->configDir . DIRECTORY_SEPARATOR . $name . '.config.php')) {
-                       return $this->loadConfigFile($this->configDir . DIRECTORY_SEPARATOR . $name . '.config.php');
-               } elseif (file_exists($this->configDir . DIRECTORY_SEPARATOR . $name . '.ini.php')) {
-                       return $this->loadINIConfigFile($this->configDir . DIRECTORY_SEPARATOR . $name . '.ini.php');
-               } else {
-                       return [];
-               }
-       }
-
-       /**
-        * Tries to load the specified addon-configuration and returns the config array.
-        *
-        * @param string $name The name of the configuration
-        *
-        * @return array The config array (empty if no config found)
-        *
-        * @throws \Exception if the configuration file isn't readable
-        */
-       public function loadAddonConfig($name)
-       {
-               $filepath = $this->baseDir . DIRECTORY_SEPARATOR . // /var/www/html/
-                       Addon::DIRECTORY       . DIRECTORY_SEPARATOR . // addon/
-                       $name                  . DIRECTORY_SEPARATOR . // openstreetmap/
-                       self::SUBDIRECTORY     . DIRECTORY_SEPARATOR . // config/
-                       $name . ".config.php";                         // openstreetmap.config.php
-
-               if (file_exists($filepath)) {
-                       return $this->loadConfigFile($filepath);
-               } else {
-                       return [];
-               }
-       }
-
-       /**
-        * Tries to load the legacy config files (.htconfig.php, .htpreconfig.php) and returns the config array.
-        *
-        * @param string $name The name of the config file
-        *
-        * @return array The configuration array (empty if no config found)
-        *
-        * @deprecated since version 2018.09
-        */
-       private function loadLegacyConfig($name)
-       {
-               $filePath = $this->baseDir  . DIRECTORY_SEPARATOR . '.' . $name . '.php';
-
-               if (file_exists($filePath)) {
-                       $a = new \stdClass();
-                       $a->config = [];
-                       include $filePath;
-
-                       if (isset($db_host)) {
-                               $a->config['database']['hostname'] = $db_host;
-                               unset($db_host);
-                       }
-                       if (isset($db_user)) {
-                               $a->config['database']['username'] = $db_user;
-                               unset($db_user);
-                       }
-                       if (isset($db_pass)) {
-                               $a->config['database']['password'] = $db_pass;
-                               unset($db_pass);
-                       }
-                       if (isset($db_data)) {
-                               $a->config['database']['database'] = $db_data;
-                               unset($db_data);
-                       }
-                       if (isset($a->config['system']['db_charset'])) {
-                               $a->config['database']['charset'] = $a->config['system']['charset'];
-                       }
-                       if (isset($pidfile)) {
-                               $a->config['system']['pidfile'] = $pidfile;
-                               unset($pidfile);
-                       }
-                       if (isset($default_timezone)) {
-                               $a->config['system']['default_timezone'] = $default_timezone;
-                               unset($default_timezone);
-                       }
-                       if (isset($lang)) {
-                               $a->config['system']['language'] = $lang;
-                               unset($lang);
-                       }
-
-                       return $a->config;
-               } else {
-                       return [];
-               }
-       }
-
-       /**
-        * Tries to load the specified legacy configuration file and returns the config array.
-        *
-        * @deprecated since version 2018.12
-        * @param string $filepath
-        *
-        * @return array The configuration array
-        * @throws \Exception
-        */
-       private function loadINIConfigFile($filepath)
-       {
-               $contents = include($filepath);
-
-               $config = parse_ini_string($contents, true, INI_SCANNER_TYPED);
-
-               if ($config === false) {
-                       throw new \Exception('Error parsing INI config file ' . $filepath);
-               }
-
-               return $config;
-       }
-
-       /**
-        * Tries to load the specified configuration file and returns the config array.
-        *
-        * The config format is PHP array and the template for configuration files is the following:
-        *
-        * <?php return [
-        *      'section' => [
-        *          'key' => 'value',
-        *      ],
-        * ];
-        *
-        * @param  string $filepath The filepath of the
-        * @return array The config array0
-        *
-        * @throws \Exception if the config cannot get loaded.
-        */
-       private function loadConfigFile($filepath)
-       {
-               $config = include($filepath);
-
-               if (!is_array($config)) {
-                       throw new \Exception('Error loading config file ' . $filepath);
-               }
-
-               return $config;
-       }
-}
diff --git a/src/Core/Config/Configuration.php b/src/Core/Config/Configuration.php
new file mode 100644 (file)
index 0000000..2ac0da0
--- /dev/null
@@ -0,0 +1,153 @@
+<?php
+
+namespace Friendica\Core\Config;
+
+/**
+ * This class is responsible for all system-wide configuration values in Friendica
+ * There are two types of storage
+ * - The Config-Files    (loaded into the FileCache @see Cache\IConfigCache )
+ * - The Config-DB-Table (per Config-DB-adapter @see Adapter\IConfigAdapter )
+ */
+class Configuration
+{
+       /**
+        * @var Cache\IConfigCache
+        */
+       private $configCache;
+
+       /**
+        * @var Adapter\IConfigAdapter
+        */
+       private $configAdapter;
+
+       /**
+        * @param Cache\IConfigCache     $configCache   The configuration cache (based on the config-files)
+        * @param Adapter\IConfigAdapter $configAdapter The configuration DB-backend
+        */
+       public function __construct(Cache\IConfigCache $configCache, Adapter\IConfigAdapter $configAdapter)
+       {
+               $this->configCache = $configCache;
+               $this->configAdapter = $configAdapter;
+
+               $this->load();
+       }
+
+       /**
+        * Returns the Config Cache
+        *
+        * @return Cache\IConfigCache
+        */
+       public function getCache()
+       {
+               return $this->configCache;
+       }
+
+       /**
+        * @brief Loads all configuration values of family into a cached storage.
+        *
+        * All configuration values of the system are stored in the cache ( @see IConfigCache )
+        *
+        * @param string $cat The category of the configuration value
+        *
+        * @return void
+        */
+       public function load($cat = 'config')
+       {
+               // If not connected, do nothing
+               if (!$this->configAdapter->isConnected()) {
+                       return;
+               }
+
+               // load the whole category out of the DB into the cache
+               $this->configCache->load($this->configAdapter->load($cat), true);
+       }
+
+       /**
+        * @brief Get a particular user's config variable given the category name
+        * ($cat) and a $key.
+        *
+        * Get a particular config value from the given category ($cat)
+        * and the $key from a cached storage either from the $this->configAdapter
+        * (@see IConfigAdapter ) or from the $this->configCache (@see IConfigCache ).
+        *
+        * @param string  $cat        The category of the configuration value
+        * @param string  $key           The configuration key to query
+        * @param mixed   $default_value optional, The value to return if key is not set (default: null)
+        * @param boolean $refresh       optional, If true the config is loaded from the db and not from the cache (default: false)
+        *
+        * @return mixed Stored value or null if it does not exist
+        */
+       public function get($cat, $key, $default_value = null, $refresh = false)
+       {
+               // if the value isn't loaded or refresh is needed, load it to the cache
+               if ($this->configAdapter->isConnected() &&
+                       (!$this->configAdapter->isLoaded($cat, $key) ||
+                       $refresh)) {
+                       $dbvalue = $this->configAdapter->get($cat, $key);
+
+                       if ($dbvalue !== '!<unset>!') {
+                               $this->configCache->set($cat, $key, $dbvalue);
+                               return $dbvalue;
+                       }
+               }
+
+               // use the config cache for return
+               if ($this->configCache->has($cat, $key)) {
+                       return $this->configCache->get($cat, $key);
+               } else {
+                       return $default_value;
+               }
+       }
+
+       /**
+        * @brief Sets a configuration value for system config
+        *
+        * Stores a config value ($value) in the category ($cat) under the key ($key)
+        *
+        * Note: Please do not store booleans - convert to 0/1 integer values!
+        *
+        * @param string $cat The category of the configuration value
+        * @param string $key    The configuration key to set
+        * @param mixed  $value  The value to store
+        *
+        * @return bool Operation success
+        */
+       public function set($cat, $key, $value)
+       {
+               // set the cache first
+               $cached = $this->configCache->set($cat, $key, $value);
+
+               // If there is no connected adapter, we're finished
+               if (!$this->configAdapter->isConnected()) {
+                       return $cached;
+               }
+
+               $stored = $this->configAdapter->set($cat, $key, $value);
+
+               return $cached && $stored;
+       }
+
+       /**
+        * @brief Deletes the given key from the system configuration.
+        *
+        * Removes the configured value from the stored cache in $this->configCache
+        * (@see ConfigCache ) and removes it from the database (@see IConfigAdapter ).
+        *
+        * @param string $cat The category of the configuration value
+        * @param string $key    The configuration key to delete
+        *
+        * @return bool
+        */
+       public function delete($cat, $key)
+       {
+               $cacheRemoved = $this->configCache->delete($cat, $key);
+
+               if (!$this->configAdapter->isConnected()) {
+                       return $cacheRemoved;
+               }
+
+               $storeRemoved = $this->configAdapter->delete($cat, $key);
+
+               return $cacheRemoved || $storeRemoved;
+       }
+}
diff --git a/src/Core/Config/IConfigAdapter.php b/src/Core/Config/IConfigAdapter.php
deleted file mode 100644 (file)
index 70e1414..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-/**
- *
- * @author Hypolite Petovan <hypolite@mrpetovan.com>
- */
-interface IConfigAdapter
-{
-       /**
-        * Loads all configuration values into a cached storage.
-        *
-        * @param string  $cat The category of the configuration values to load
-        *
-        * @return void
-        */
-       public function load($cat = "config");
-
-       /**
-        * Get a particular user's config variable given the category name
-        * ($family) and a key.
-        *
-        * @param string  $cat           The category of the configuration value
-        * @param string  $k             The configuration key to query
-        * @param mixed   $default_value optional, The value to return if key is not set (default: null)
-        * @param boolean $refresh       optional, If true the config is loaded from the db and not from the cache (default: false)
-        *
-        * @return mixed Stored value or null if it does not exist
-        */
-       public function get($cat, $k, $default_value = null, $refresh = false);
-
-       /**
-        * Stores a config value ($value) in the category ($family) under the key ($key)
-        * for the user_id $uid.
-        *
-        * Note: Please do not store booleans - convert to 0/1 integer values!
-        *
-        * @param string $cat   The category of the configuration value
-        * @param string $k     The configuration key to set
-        * @param mixed  $value The value to store
-        *
-        * @return bool Operation success
-        */
-       public function set($cat, $k, $value);
-
-       /**
-        * Removes the configured value from the stored cache
-        * and removes it from the database.
-        *
-        * @param string $cat The category of the configuration value
-        * @param string $k   The configuration key to delete
-        *
-        * @return mixed
-        */
-       public function delete($cat, $k);
-
-       /**
-        * Checks, if the current adapter is connected to the backend
-        *
-        * @return bool
-        */
-       public function isConnected();
-}
diff --git a/src/Core/Config/IConfigCache.php b/src/Core/Config/IConfigCache.php
deleted file mode 100644 (file)
index 898e3c0..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-/**
- * The interface for a system-wide ConfigCache
- */
-interface IConfigCache
-{
-       /**
-        * @param string $cat     Config category
-        * @param string $key       Config key
-        * @param mixed  $default Default value if it isn't set
-        *
-        * @return mixed Returns the value of the Config entry
-        */
-       function get($cat, $key = null, $default = null);
-
-       /**
-        * Sets a value in the config cache. Accepts raw output from the config table
-        *
-        * @param string $cat   Config category
-        * @param string $key   Config key
-        * @param mixed  $value Value to set
-        *
-        * @return bool True, if the value is set
-        */
-       function set($cat, $key, $value);
-
-       /**
-        * Deletes a value from the config cache
-        *
-        * @param string $cat  Config category
-        * @param string $key  Config key
-        */
-       function delete($cat, $key);
-
-       function getAll();
-}
diff --git a/src/Core/Config/IPConfigAdapter.php b/src/Core/Config/IPConfigAdapter.php
deleted file mode 100644 (file)
index e62fc9c..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-<?php
-
-/*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
-
-namespace Friendica\Core\Config;
-
-/**
- *
- * @author benlo
- */
-interface IPConfigAdapter
-{
-       /**
-        * Loads all configuration values of a user's config family into a cached storage.
-        *
-        * @param string $uid The user_id
-        * @param string $cat The category of the configuration value
-        *
-        * @return void
-        */
-       public function load($uid, $cat);
-
-       /**
-        * Get a particular user's config variable given the category name
-        * ($family) and a key.
-        *
-        * @param string  $uid           The user_id
-        * @param string  $cat           The category of the configuration value
-        * @param string  $k             The configuration key to query
-        * @param mixed   $default_value optional, The value to return if key is not set (default: null)
-        * @param boolean $refresh       optional, If true the config is loaded from the db and not from the cache (default: false)
-        *
-        * @return mixed Stored value or null if it does not exist
-        */
-       public function get($uid, $cat, $k, $default_value = null, $refresh = false);
-
-       /**
-        * Stores a config value ($value) in the category ($family) under the key ($key)
-        * for the user_id $uid.
-        *
-        * @note Please do not store booleans - convert to 0/1 integer values!
-        *
-        * @param string $uid   The user_id
-        * @param string $cat   The category of the configuration value
-        * @param string $k     The configuration key to set
-        * @param string $value The value to store
-        *
-        * @return bool Operation success
-        */
-       public function set($uid, $cat, $k, $value);
-
-       /**
-        * Removes the configured value from the stored cache
-        * and removes it from the database.
-        *
-        * @param string $uid The user_id
-        * @param string $cat The category of the configuration value
-        * @param string $k   The configuration key to delete
-        *
-        * @return mixed
-        */
-       public function delete($uid, $cat, $k);
-}
diff --git a/src/Core/Config/IPConfigCache.php b/src/Core/Config/IPConfigCache.php
deleted file mode 100644 (file)
index 6a57daf..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-/**
- * The interface for a user-specific config cache
- */
-interface IPConfigCache
-{
-       /**
-        * Retrieves a value from the user config cache
-        *
-        * @param int    $uid     User Id
-        * @param string $cat     Config category
-        * @param string $key     Config key
-        * @param mixed  $default Default value if key isn't set
-        *
-        * @return string The value of the config entry
-        */
-       function getP($uid, $cat, $key = null, $default = null);
-
-       /**
-        * Sets a value in the user config cache
-        *
-        * Accepts raw output from the pconfig table
-        *
-        * @param int    $uid   User Id
-        * @param string $cat   Config category
-        * @param string $key   Config key
-        * @param mixed  $value Value to set
-        */
-       function setP($uid, $cat, $key, $value);
-
-       /**
-        * Deletes a value from the user config cache
-        *
-        * @param int    $uid User Id
-        * @param string $cat Config category
-        * @param string $key Config key
-        */
-       function deleteP($uid, $cat, $key);
-
-       function getAll();
-}
diff --git a/src/Core/Config/JITConfigAdapter.php b/src/Core/Config/JITConfigAdapter.php
deleted file mode 100644 (file)
index ecd88bb..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-<?php
-namespace Friendica\Core\Config;
-
-use Friendica\Database\DBA;
-
-/**
- * JustInTime Configuration Adapter
- *
- * Default Config Adapter. Provides the best performance for pages loading few configuration variables.
- *
- * @author Hypolite Petovan <hypolite@mrpetovan.com>
- */
-class JITConfigAdapter extends AbstractDbaConfigAdapter implements IConfigAdapter
-{
-       private $cache;
-       private $in_db;
-
-       /**
-        * @var IConfigCache The config cache of this driver
-        */
-       private $configCache;
-
-       /**
-        * @param IConfigCache $configCache The config cache of this driver
-        */
-       public function __construct(IConfigCache $configCache)
-       {
-               $this->configCache = $configCache;
-               $this->connected = DBA::connected();
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function load($cat = "config")
-       {
-               if (!$this->isConnected()) {
-                       return;
-               }
-
-               // We don't preload "system" anymore.
-               // This reduces the number of database reads a lot.
-               if ($cat === 'system') {
-                       return;
-               }
-
-               $configs = DBA::select('config', ['v', 'k'], ['cat' => $cat]);
-               while ($config = DBA::fetch($configs)) {
-                       $k = $config['k'];
-
-                       $this->configCache->set($cat, $k, $config['v']);
-
-                       if ($cat !== 'config') {
-                               $this->cache[$cat][$k] = $config['v'];
-                               $this->in_db[$cat][$k] = true;
-                       }
-               }
-               DBA::close($configs);
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function get($cat, $k, $default_value = null, $refresh = false)
-       {
-               if (!$this->isConnected()) {
-                       return $default_value;
-               }
-
-               if (!$refresh) {
-                       // Do we have the cached value? Then return it
-                       if (isset($this->cache[$cat][$k])) {
-                               if ($this->cache[$cat][$k] === '!<unset>!') {
-                                       return $default_value;
-                               } else {
-                                       return $this->cache[$cat][$k];
-                               }
-                       }
-               }
-
-               $config = DBA::selectFirst('config', ['v'], ['cat' => $cat, 'k' => $k]);
-               if (DBA::isResult($config)) {
-                       // manage array value
-                       $value = (preg_match("|^a:[0-9]+:{.*}$|s", $config['v']) ? unserialize($config['v']) : $config['v']);
-
-                       // Assign the value from the database to the cache
-                       $this->cache[$cat][$k] = $value;
-                       $this->in_db[$cat][$k] = true;
-                       return $value;
-               } elseif ($this->configCache->get($cat, $k) !== null) {
-                       // Assign the value (mostly) from config/local.config.php file to the cache
-                       $this->cache[$cat][$k] = $this->configCache->get($cat, $k);
-                       $this->in_db[$cat][$k] = false;
-
-                       return $this->configCache->get($cat, $k);
-               } elseif ($this->configCache->get('config', $k) !== null) {
-                       // Assign the value (mostly) from config/local.config.php file to the cache
-                       $this->cache[$k] = $this->configCache->get('config', $k);
-                       $this->in_db[$k] = false;
-
-                       return $this->configCache->get('config', $k);
-               }
-
-               $this->cache[$cat][$k] = '!<unset>!';
-               $this->in_db[$cat][$k] = false;
-
-               return $default_value;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function set($cat, $k, $value)
-       {
-               if (!$this->isConnected()) {
-                       return false;
-               }
-
-               // We store our setting values in a string variable.
-               // So we have to do the conversion here so that the compare below works.
-               // The exception are array values.
-               $dbvalue = (!is_array($value) ? (string)$value : $value);
-
-               $stored = $this->get($cat, $k, null, true);
-
-               if (!isset($this->in_db[$cat])) {
-                       $this->in_db[$cat] = [];
-               }
-               if (!isset($this->in_db[$cat][$k])) {
-                       $this->in_db[$cat] = false;
-               }
-
-               if (($stored === $dbvalue) && $this->in_db[$cat][$k]) {
-                       return true;
-               }
-
-               $this->configCache->set($cat, $k, $value);
-
-               // Assign the just added value to the cache
-               $this->cache[$cat][$k] = $dbvalue;
-
-               // manage array value
-               $dbvalue = (is_array($value) ? serialize($value) : $dbvalue);
-
-               $result = DBA::update('config', ['v' => $dbvalue], ['cat' => $cat, 'k' => $k], true);
-
-               if ($result) {
-                       $this->in_db[$cat][$k] = true;
-               }
-
-               return $result;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function delete($cat, $k)
-       {
-               if (!$this->isConnected()) {
-                       return false;
-               }
-
-               if (isset($this->cache[$cat][$k])) {
-                       unset($this->cache[$cat][$k]);
-                       unset($this->in_db[$cat][$k]);
-               }
-
-               $result = DBA::delete('config', ['cat' => $cat, 'k' => $k]);
-
-               return $result;
-       }
-}
diff --git a/src/Core/Config/JITPConfigAdapter.php b/src/Core/Config/JITPConfigAdapter.php
deleted file mode 100644 (file)
index b1a1560..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-<?php
-namespace Friendica\Core\Config;
-
-use Friendica\Database\DBA;
-
-/**
- * JustInTime User Configuration Adapter
- *
- * Default PConfig Adapter. Provides the best performance for pages loading few configuration variables.
- *
- * @author Hypolite Petovan <hypolite@mrpetovan.com>
- */
-class JITPConfigAdapter implements IPConfigAdapter
-{
-       private $in_db;
-
-       /**
-        * The config cache of this adapter
-        * @var IPConfigCache
-        */
-       private $configCache;
-
-       /**
-        * @param IPConfigCache $configCache The config cache of this adapter
-        */
-       public function __construct(IPConfigCache $configCache)
-       {
-               $this->configCache = $configCache;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function load($uid, $cat)
-       {
-               $pconfigs = DBA::select('pconfig', ['v', 'k'], ['cat' => $cat, 'uid' => $uid]);
-               if (DBA::isResult($pconfigs)) {
-                       while ($pconfig = DBA::fetch($pconfigs)) {
-                               $k = $pconfig['k'];
-
-                               $this->configCache->setP($uid, $cat, $k, $pconfig['v']);
-
-                               $this->in_db[$uid][$cat][$k] = true;
-                       }
-               } else if ($cat != 'config') {
-                       // Negative caching
-                       $this->configCache->setP($uid, $cat, null, "!<unset>!");
-               }
-               DBA::close($pconfigs);
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function get($uid, $cat, $k, $default_value = null, $refresh = false)
-       {
-               if (!$refresh) {
-                       // Looking if the whole family isn't set
-                       if ($this->configCache->getP($uid, $cat) !== null) {
-                               if ($this->configCache->getP($uid, $cat) === '!<unset>!') {
-                                       return $default_value;
-                               }
-                       }
-
-                       if ($this->configCache->getP($uid, $cat, $k) !== null) {
-                               if ($this->configCache->getP($uid, $cat, $k) === '!<unset>!') {
-                                       return $default_value;
-                               }
-                               return $this->configCache->getP($uid, $cat, $k);
-                       }
-               }
-
-               $pconfig = DBA::selectFirst('pconfig', ['v'], ['uid' => $uid, 'cat' => $cat, 'k' => $k]);
-               if (DBA::isResult($pconfig)) {
-                       $val = (preg_match("|^a:[0-9]+:{.*}$|s", $pconfig['v']) ? unserialize($pconfig['v']) : $pconfig['v']);
-
-                       $this->configCache->setP($uid, $cat, $k, $val);
-
-                       $this->in_db[$uid][$cat][$k] = true;
-
-                       return $val;
-               } else {
-                       $this->configCache->setP($uid, $cat, $k, '!<unset>!');
-
-                       $this->in_db[$uid][$cat][$k] = false;
-
-                       return $default_value;
-               }
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function set($uid, $cat, $k, $value)
-       {
-               // We store our setting values in a string variable.
-               // So we have to do the conversion here so that the compare below works.
-               // The exception are array values.
-               $dbvalue = (!is_array($value) ? (string)$value : $value);
-
-               $stored = $this->get($uid, $cat, $k, null, true);
-
-               if (($stored === $dbvalue) && $this->in_db[$uid][$cat][$k]) {
-                       return true;
-               }
-
-               $this->configCache->setP($uid, $cat, $k, $value);
-
-               // manage array value
-               $dbvalue = (is_array($value) ? serialize($value) : $dbvalue);
-
-               $result = DBA::update('pconfig', ['v' => $dbvalue], ['uid' => $uid, 'cat' => $cat, 'k' => $k], true);
-
-               if ($result) {
-                       $this->in_db[$uid][$cat][$k] = true;
-               }
-
-               return $result;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function delete($uid, $cat, $k)
-       {
-               $this->configCache->deleteP($uid, $cat, $k);
-
-               if (!empty($this->in_db[$uid][$cat][$k])) {
-                       unset($this->in_db[$uid][$cat][$k]);
-               }
-
-               $result = DBA::delete('pconfig', ['uid' => $uid, 'cat' => $cat, 'k' => $k]);
-
-               return $result;
-       }
-}
diff --git a/src/Core/Config/PConfiguration.php b/src/Core/Config/PConfiguration.php
new file mode 100644 (file)
index 0000000..99b1aa1
--- /dev/null
@@ -0,0 +1,149 @@
+<?php
+
+namespace Friendica\Core\Config;
+
+/**
+ * This class is responsible for the user-specific configuration values in Friendica
+ * The values are set through the Config-DB-Table (per Config-DB-adapter @see Adapter\IPConfigAdapter )
+ *
+ * The configuration cache (@see Cache\IPConfigCache ) is used for temporary caching of database calls. This will
+ * increase the performance.
+ */
+class PConfiguration
+{
+       /**
+        * @var Cache\IPConfigCache
+        */
+       private $configCache;
+
+       /**
+        * @var Adapter\IPConfigAdapter
+        */
+       private $configAdapter;
+
+       /**
+        * @param Cache\IPConfigCache     $configCache   The configuration cache
+        * @param Adapter\IPConfigAdapter $configAdapter The configuration DB-backend
+        */
+       public function __construct(Cache\IPConfigCache $configCache, Adapter\IPConfigAdapter $configAdapter)
+       {
+               $this->configCache = $configCache;
+               $this->configAdapter = $configAdapter;
+       }
+
+       /**
+        * @brief Loads all configuration values of a user's config family into a cached storage.
+        *
+        * All configuration values of the given user are stored with the $uid in
+        * the cache ( @see IPConfigCache )
+        *
+        * @param string $uid The user_id
+        * @param string $cat The category of the configuration value
+        *
+        * @return void
+        */
+       public function load($uid, $cat = 'config')
+       {
+               // If not connected, do nothing
+               if (!$this->configAdapter->isConnected()) {
+                       return;
+               }
+
+               // load the whole category out of the DB into the cache
+               $this->configCache->loadP($uid, $this->configAdapter->load($uid, $cat));
+       }
+
+       /**
+        * @brief Get a particular user's config variable given the category name
+        * ($cat) and a key.
+        *
+        * Get a particular user's config value from the given category ($cat)
+        * and the $key with the $uid from a cached storage either from the $this->configAdapter
+        * (@see IConfigAdapter ) or from the $this->configCache (@see IConfigCache ).
+        *
+        * @param string  $uid           The user_id
+        * @param string  $cat           The category of the configuration value
+        * @param string  $key           The configuration key to query
+        * @param mixed   $default_value optional, The value to return if key is not set (default: null)
+        * @param boolean $refresh       optional, If true the config is loaded from the db and not from the cache (default: false)
+        *
+        * @return mixed Stored value or null if it does not exist
+        */
+       public function get($uid, $cat, $key, $default_value = null, $refresh = false)
+       {
+               // if the value isn't loaded or refresh is needed, load it to the cache
+               if ($this->configAdapter->isConnected() &&
+                       (!$this->configAdapter->isLoaded($uid, $cat, $key) ||
+                               $refresh)) {
+                       $dbValue = $this->configAdapter->get($uid, $cat, $key);
+
+                       if ($dbValue !== '!<unset>!') {
+                               $this->configCache->setP($uid, $cat, $key, $dbValue);
+                               return $dbValue;
+                       }
+               }
+
+               // use the config cache for return
+               if ($this->configCache->hasP($uid, $cat, $key)) {
+                       return $this->configCache->getP($uid, $cat, $key);
+               } else {
+                       return $default_value;
+               }
+       }
+
+       /**
+        * @brief Sets a configuration value for a user
+        *
+        * Stores a config value ($value) in the category ($family) under the key ($key)
+        * for the user_id $uid.
+        *
+        * @note  Please do not store booleans - convert to 0/1 integer values!
+        *
+        * @param string $uid    The user_id
+        * @param string $cat    The category of the configuration value
+        * @param string $key    The configuration key to set
+        * @param mixed  $value  The value to store
+        *
+        * @return bool Operation success
+        */
+       public function set($uid, $cat, $key, $value)
+       {
+               // set the cache first
+               $cached = $this->configCache->setP($uid, $cat, $key, $value);
+
+               // If there is no connected adapter, we're finished
+               if (!$this->configAdapter->isConnected()) {
+                       return $cached;
+               }
+
+               $stored = $this->configAdapter->set($uid, $cat, $key, $value);
+
+               return $cached && $stored;
+       }
+
+       /**
+        * @brief Deletes the given key from the users's configuration.
+        *
+        * Removes the configured value from the stored cache in $this->configCache
+        * (@see ConfigCache ) and removes it from the database (@see IConfigAdapter )
+        * with the given $uid.
+        *
+        * @param string $uid The user_id
+        * @param string $cat The category of the configuration value
+        * @param string $key The configuration key to delete
+        *
+        * @return bool
+        */
+       public function delete($uid, $cat, $key)
+       {
+               $cacheRemoved = $this->configCache->deleteP($uid, $cat, $key);
+
+               if (!$this->configAdapter->isConnected()) {
+                       return $cacheRemoved;
+               }
+
+               $storeRemoved = $this->configAdapter->delete($uid, $cat, $key);
+
+               return $cacheRemoved || $storeRemoved;
+       }
+}
diff --git a/src/Core/Config/PreloadConfigAdapter.php b/src/Core/Config/PreloadConfigAdapter.php
deleted file mode 100644 (file)
index 96331e7..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-use Exception;
-use Friendica\Database\DBA;
-
-/**
- * Preload Configuration Adapter
- *
- * Minimizes the number of database queries to retrieve configuration values at the cost of memory.
- *
- * @author Hypolite Petovan <hypolite@mrpetovan.com>
- */
-class PreloadConfigAdapter extends AbstractDbaConfigAdapter implements IConfigAdapter
-{
-       private $config_loaded = false;
-
-       /**
-        * @var IConfigCache The config cache of this driver
-        */
-       private $configCache;
-
-       /**
-        * @param IConfigCache $configCache The config cache of this driver
-        */
-       public function __construct(IConfigCache $configCache)
-       {
-               $this->configCache = $configCache;
-               $this->connected = DBA::connected();
-               $this->load();
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function load($family = 'config')
-       {
-               if (!$this->isConnected()) {
-                       return;
-               }
-
-               if ($this->config_loaded) {
-                       return;
-               }
-
-               $configs = DBA::select('config', ['cat', 'v', 'k']);
-               while ($config = DBA::fetch($configs)) {
-                       $this->configCache->set($config['cat'], $config['k'], $config['v']);
-               }
-               DBA::close($configs);
-
-               $this->config_loaded = true;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function get($cat, $k, $default_value = null, $refresh = false)
-       {
-               if (!$this->isConnected()) {
-                       return $default_value;
-               }
-
-               if ($refresh) {
-                       $config = DBA::selectFirst('config', ['v'], ['cat' => $cat, 'k' => $k]);
-                       if (DBA::isResult($config)) {
-                               $this->configCache->set($cat, $k, $config['v']);
-                       }
-               }
-
-               $return = $this->configCache->get($cat, $k, $default_value);
-
-               return $return;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function set($cat, $k, $value)
-       {
-               if (!$this->isConnected()) {
-                       return false;
-               }
-
-               // We store our setting values as strings.
-               // So we have to do the conversion here so that the compare below works.
-               // The exception are array values.
-               $compare_value = !is_array($value) ? (string)$value : $value;
-
-               if ($this->configCache->get($cat, $k) === $compare_value) {
-                       return true;
-               }
-
-               $this->configCache->set($cat, $k, $value);
-
-               // manage array value
-               $dbvalue = is_array($value) ? serialize($value) : $value;
-
-               $result = DBA::update('config', ['v' => $dbvalue], ['cat' => $cat, 'k' => $k], true);
-               if (!$result) {
-                       throw new Exception('Unable to store config value in [' . $cat . '][' . $k . ']');
-               }
-
-               return true;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function delete($cat, $k)
-       {
-               if (!$this->isConnected()) {
-                       return false;
-               }
-
-               $this->configCache->delete($cat, $k);
-
-               $result = DBA::delete('config', ['cat' => $cat, 'k' => $k]);
-
-               return $result;
-       }
-}
diff --git a/src/Core/Config/PreloadPConfigAdapter.php b/src/Core/Config/PreloadPConfigAdapter.php
deleted file mode 100644 (file)
index af97815..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-<?php
-
-namespace Friendica\Core\Config;
-
-use Exception;
-use Friendica\Database\DBA;
-
-/**
- * Preload User Configuration Adapter
- *
- * Minimizes the number of database queries to retrieve configuration values at the cost of memory.
- *
- * @author Hypolite Petovan <hypolite@mrpetovan.com>
- */
-class PreloadPConfigAdapter implements IPConfigAdapter
-{
-       private $config_loaded = false;
-
-       /**
-        * The config cache of this adapter
-        * @var IPConfigCache
-        */
-       private $configCache;
-
-       /**
-        * @param IPConfigCache $configCache The config cache of this adapter
-        * @param int           $uid    The UID of the current user
-        */
-       public function __construct(IPConfigCache $configCache, $uid = null)
-       {
-               $this->configCache = $configCache;
-               if (isset($uid)) {
-                       $this->load($uid, 'config');
-               }
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function load($uid, $family)
-       {
-               if ($this->config_loaded) {
-                       return;
-               }
-
-               if (empty($uid)) {
-                       return;
-               }
-
-               $pconfigs = DBA::select('pconfig', ['cat', 'v', 'k'], ['uid' => $uid]);
-               while ($pconfig = DBA::fetch($pconfigs)) {
-                       $this->configCache->setP($uid, $pconfig['cat'], $pconfig['k'], $pconfig['v']);
-               }
-               DBA::close($pconfigs);
-
-               $this->config_loaded = true;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function get($uid, $cat, $k, $default_value = null, $refresh = false)
-       {
-               if (!$this->config_loaded) {
-                       $this->load($uid, $cat);
-               }
-
-               if ($refresh) {
-                       $config = DBA::selectFirst('pconfig', ['v'], ['uid' => $uid, 'cat' => $cat, 'k' => $k]);
-                       if (DBA::isResult($config)) {
-                               $this->configCache->setP($uid, $cat, $k, $config['v']);
-                       } else {
-                               $this->configCache->deleteP($uid, $cat, $k);
-                       }
-               }
-
-               return $this->configCache->getP($uid, $cat, $k, $default_value);;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function set($uid, $cat, $k, $value)
-       {
-               if (!$this->config_loaded) {
-                       $this->load($uid, $cat);
-               }
-               // We store our setting values as strings.
-               // So we have to do the conversion here so that the compare below works.
-               // The exception are array values.
-               $compare_value = !is_array($value) ? (string)$value : $value;
-
-               if ($this->configCache->getP($uid, $cat, $k) === $compare_value) {
-                       return true;
-               }
-
-               $this->configCache->setP($uid, $cat, $k, $value);
-
-               // manage array value
-               $dbvalue = is_array($value) ? serialize($value) : $value;
-
-               $result = DBA::update('pconfig', ['v' => $dbvalue], ['uid' => $uid, 'cat' => $cat, 'k' => $k], true);
-               if (!$result) {
-                       throw new Exception('Unable to store config value in [' . $uid . '][' . $cat . '][' . $k . ']');
-               }
-
-               return true;
-       }
-
-       /**
-        * {@inheritdoc}
-        */
-       public function delete($uid, $cat, $k)
-       {
-               if (!$this->config_loaded) {
-                       $this->load($uid, $cat);
-               }
-
-               $this->configCache->deleteP($uid, $cat, $k);
-
-               $result = DBA::delete('pconfig', ['uid' => $uid, 'cat' => $cat, 'k' => $k]);
-
-               return $result;
-       }
-}
index 7f2585e63a3f359bfee056fbfa2f79a40bd59f21..682d109712fb5fbfee1e551455ac2222714379cb 100644 (file)
@@ -100,10 +100,10 @@ HELP;
                                }
                        }
 
-                       $db_host = $a->getConfig()->get('database', 'hostname');
-                       $db_user = $a->getConfig()->get('database', 'username');
-                       $db_pass = $a->getConfig()->get('database', 'password');
-                       $db_data = $a->getConfig()->get('database', 'database');
+                       $db_host = $a->getConfigCache()->get('database', 'hostname');
+                       $db_user = $a->getConfigCache()->get('database', 'username');
+                       $db_pass = $a->getConfigCache()->get('database', 'password');
+                       $db_data = $a->getConfigCache()->get('database', 'database');
                } else {
                        // Creating config file
                        $this->out("Creating config file...\n");
@@ -146,7 +146,7 @@ HELP;
 
                $installer->resetChecks();
 
-               if (!$installer->checkDB($a->getConfig(), $db_host, $db_user, $db_pass, $db_data)) {
+               if (!$installer->checkDB($a->getConfigCache(), $a->getProfiler(), $db_host, $db_user, $db_pass, $db_data)) {
                        $errorMessage = $this->extractErrors($installer->getChecks());
                        throw new RuntimeException($errorMessage);
                }
index b1c3df54e024fc59738c259c9cddf0b54327292b..cf5c09fc0a4281bf5e6fe925d768f65e396a8f6c 100644 (file)
@@ -124,9 +124,9 @@ HELP;
                        $cat = $this->getArgument(0);
                        Core\Config::load($cat);
 
-                       if ($a->getConfig()->get($cat) !== null) {
+                       if ($a->getConfigCache()->get($cat) !== null) {
                                $this->out("[{$cat}]");
-                               $catVal = $a->getConfig()->get($cat);
+                               $catVal = $a->getConfigCache()->get($cat);
                                foreach ($catVal as $key => $value) {
                                        if (is_array($value)) {
                                                foreach ($value as $k => $v) {
@@ -148,7 +148,7 @@ HELP;
                                $this->out('Warning: The JIT (Just In Time) Config adapter doesn\'t support loading the entire configuration, showing file config only');
                        }
 
-                       $config = $a->getConfig()->getAll();
+                       $config = $a->getConfigCache()->getAll();
                        foreach ($config as $cat => $section) {
                                if (is_array($section)) {
                                        foreach ($section as $key => $value) {
index 32ba6ded35186878bea79e9bf8cac456c8444172..8d07051e8393861679c1b82b2ad8f848709fab3c 100644 (file)
@@ -43,7 +43,7 @@ HELP;
                        throw new \Asika\SimpleConsole\CommandArgsException('Too many arguments');
                }
 
-               $php_path = BaseObject::getApp()->getConfig()->get('config', 'php_path', 'php');
+               $php_path = BaseObject::getApp()->getConfigCache()->get('config', 'php_path', 'php');
 
                if ($this->getOption('v')) {
                        $this->out('Directory: src');
index 4a287a885f50e9d5e47988de099608fe567f4e74..ed4721014191dac11316bb8eb8bf685849b58de0 100644 (file)
@@ -6,11 +6,12 @@ namespace Friendica\Core;
 
 use DOMDocument;
 use Exception;
-use Friendica\Core\Config\ConfigCache;
+use Friendica\Core\Config\Cache\IConfigCache;
 use Friendica\Database\DBA;
 use Friendica\Database\DBStructure;
 use Friendica\Object\Image;
 use Friendica\Util\Network;
+use Friendica\Util\Profiler;
 use Friendica\Util\Strings;
 
 /**
@@ -357,6 +358,7 @@ class Installer
         * - mb_string
         * - XML
         * - iconv
+        * - fileinfo
         * - POSIX
         *
         * @return bool false if something required failed
@@ -452,6 +454,13 @@ class Installer
                );
                $returnVal = $returnVal ? $status : false;
 
+               $status = $this->checkFunction('finfo_open',
+                       L10n::t('File Information PHP module'),
+                       L10n::t('Error: File Information PHP module required but not installed.'),
+                       true
+               );
+               $returnVal = $returnVal ? $status : false;
+
                return $returnVal;
        }
 
@@ -582,7 +591,8 @@ class Installer
        /**
         * Checking the Database connection and if it is available for the current installation
         *
-        * @param ConfigCache $configCache The configuration cache
+        * @param IConfigCache $configCache The configuration cache
+        * @param Profiler    $profiler    The profiler of this app
         * @param string $dbhost           Hostname/IP of the Friendica Database
         * @param string $dbuser           Username of the Database connection credentials
         * @param string $dbpass           Password of the Database connection credentials
@@ -591,9 +601,9 @@ class Installer
         * @return bool true if the check was successful, otherwise false
         * @throws Exception
         */
-       public function checkDB(ConfigCache $configCache, $dbhost, $dbuser, $dbpass, $dbdata)
+       public function checkDB(IConfigCache $configCache, Profiler $profiler, $dbhost, $dbuser, $dbpass, $dbdata)
        {
-               if (!DBA::connect($configCache, $dbhost, $dbuser, $dbpass, $dbdata)) {
+               if (!DBA::connect($configCache, $profiler, $dbhost, $dbuser, $dbpass, $dbdata)) {
                        $this->addCheck(L10n::t('Could not connect to database.'), false, true, '');
 
                        return false;
index 6b8112796f557f00dea156a9c22fef3993097584..3cb22e1e478aeef78dc2e2467af3fe35523c4771 100644 (file)
@@ -5,8 +5,6 @@
 namespace Friendica\Core;
 
 use Friendica\BaseObject;
-use Friendica\Factory\LoggerFactory;
-use Friendica\Network\HTTPException\InternalServerErrorException;
 use Psr\Log\LoggerInterface;
 use Psr\Log\LogLevel;
 
@@ -67,73 +65,22 @@ class Logger extends BaseObject
 
        /**
         * Sets the default logging handler for Friendica.
-        * @todo Can be combined with other handlers too if necessary, could be configurable.
         *
         * @param LoggerInterface $logger The Logger instance of this Application
-        *
-        * @throws InternalServerErrorException if the logger factory is incompatible to this logger
         */
-       public static function setLogger($logger)
+       public static function init(LoggerInterface $logger)
        {
-               $debugging = Config::get('system', 'debugging');
-               $logfile = Config::get('system', 'logfile');
-               $loglevel = Config::get('system', 'loglevel');
-
-               if (!$debugging || !$logfile) {
-                       return;
-               }
-
-               $loglevel = self::mapLegacyConfigDebugLevel((string)$loglevel);
-
-               LoggerFactory::addStreamHandler($logger, $logfile, $loglevel);
-
                self::$logger = $logger;
-
-               $logfile = Config::get('system', 'dlogfile');
-
-               if (!$logfile) {
-                       return;
-               }
-
-               $developIp = Config::get('system', 'dlogip');
-
-               self::$devLogger = LoggerFactory::createDev('develop', $developIp);
-               LoggerFactory::addStreamHandler(self::$devLogger, $logfile, LogLevel::DEBUG);
        }
 
        /**
-        * Mapping a legacy level to the PSR-3 compliant levels
-        * @see https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md#5-psrlogloglevel
+        * Sets the default dev-logging handler for Friendica.
         *
-        * @param string $level the level to be mapped
-        *
-        * @return string the PSR-3 compliant level
+        * @param LoggerInterface $logger The Logger instance of this Application
         */
-       private static function mapLegacyConfigDebugLevel($level)
+       public static function setDevLogger(LoggerInterface $logger)
        {
-               switch ($level) {
-                       // legacy WARNING
-                       case "0":
-                               return LogLevel::ERROR;
-                       // legacy INFO
-                       case "1":
-                               return LogLevel::WARNING;
-                       // legacy TRACE
-                       case "2":
-                               return LogLevel::NOTICE;
-                       // legacy DEBUG
-                       case "3":
-                               return LogLevel::INFO;
-                       // legacy DATA
-                       case "4":
-                               return LogLevel::DEBUG;
-                       // legacy ALL
-                       case "5":
-                               return LogLevel::DEBUG;
-                       // default if nothing set
-                       default:
-                               return $level;
-               }
+               self::$devLogger = $logger;
        }
 
        /**
@@ -155,7 +102,7 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->emergency($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->GetProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
        /**
@@ -179,7 +126,7 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->alert($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
        /**
@@ -202,7 +149,7 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->critical($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
        /**
@@ -225,7 +172,7 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->error($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
        /**
@@ -249,7 +196,7 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->warning($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
        /**
@@ -270,7 +217,7 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->notice($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
        /**
@@ -293,7 +240,7 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->info($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
        /**
@@ -314,28 +261,28 @@ class Logger extends BaseObject
 
                $stamp1 = microtime(true);
                self::$logger->debug($message, $context);
-               self::getApp()->saveTimestamp($stamp1, 'file');
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, 'file', System::callstack());
        }
 
-    /**
-     * @brief Logs the given message at the given log level
-     *
-     * @param string $msg
-     * @param string $level
+           /**
+        * @brief Logs the given message at the given log level
+        *
+        * @param string $msg
+        * @param string $level
         *
         * @throws \Exception
         * @deprecated since 2019.03 Use Logger::debug() Logger::info() , ... instead
-     */
-    public static function log($msg, $level = LogLevel::INFO)
-    {
+        */
+       public static function log($msg, $level = LogLevel::INFO)
+       {
                if (!isset(self::$logger)) {
                        return;
                }
 
-        $stamp1 = microtime(true);
+               $stamp1 = microtime(true);
                self::$logger->log($level, $msg);
-        self::getApp()->saveTimestamp($stamp1, "file");
-    }
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
+       }
 
        /**
         * @brief An alternative logger for development.
@@ -347,14 +294,14 @@ class Logger extends BaseObject
         * @param string $level
         * @throws \Exception
         */
-    public static function devLog($msg, $level = LogLevel::DEBUG)
-    {
+       public static function devLog($msg, $level = LogLevel::DEBUG)
+       {
                if (!isset(self::$logger)) {
                        return;
                }
 
-        $stamp1 = microtime(true);
-        self::$devLogger->log($level, $msg);
-        self::getApp()->saveTimestamp($stamp1, "file");
-    }
+               $stamp1 = microtime(true);
+               self::$devLogger->log($level, $msg);
+               self::getApp()->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
+       }
 }
index df024f0f3426dfa84abc665789066a1c6427316a..f62b59f4765342e2b5b77fc5d35b9a09b6c9b1e2 100644 (file)
@@ -18,123 +18,78 @@ namespace Friendica\Core;
 class PConfig
 {
        /**
-        * @var Config\IPConfigAdapter
+        * @var Config\PConfiguration
         */
-       private static $adapter;
-
-       /**
-        * @var Config\IPConfigCache
-        */
-       private static $cache;
+       private static $config;
 
        /**
         * Initialize the config with only the cache
         *
-        * @param Config\IPConfigCache $cache  The configuration cache
-        */
-       public static function init(Config\IPConfigCache $cache)
-       {
-               self::$cache  = $cache;
-       }
-
-       /**
-        * Add the adapter for DB-backend
-        *
-        * @param Config\IPConfigAdapter $adapter
+        * @param Config\PConfiguration $config The configuration cache
         */
-       public static function setAdapter(Config\IPConfigAdapter $adapter)
+       public static function init(Config\PConfiguration $config)
        {
-               self::$adapter = $adapter;
+               self::$config = $config;
        }
 
        /**
         * @brief Loads all configuration values of a user's config family into a cached storage.
         *
-        * All configuration values of the given user are stored with the $uid in
-        * the cache ( @see IPConfigCache )
-        *
-        * @param string $uid    The user_id
-        * @param string $family The category of the configuration value
+        * @param string $uid The user_id
+        * @param string $cat The category of the configuration value
         *
         * @return void
         */
-       public static function load($uid, $family)
+       public static function load($uid, $cat)
        {
-               if (!isset(self::$adapter)) {
-                       return;
-               }
-
-               self::$adapter->load($uid, $family);
+               self::$config->load($uid, $cat);
        }
 
        /**
         * @brief Get a particular user's config variable given the category name
-        * ($family) and a key.
-        *
-        * Get a particular user's config value from the given category ($family)
-        * and the $key with the $uid from a cached storage either from the self::$adapter
-        * (@see IConfigAdapter ) or from the static::$cache (@see IConfigCache ).
+        * ($cat) and a key.
         *
         * @param string  $uid           The user_id
-        * @param string  $family        The category of the configuration value
+        * @param string  $cat           The category of the configuration value
         * @param string  $key           The configuration key to query
         * @param mixed   $default_value optional, The value to return if key is not set (default: null)
         * @param boolean $refresh       optional, If true the config is loaded from the db and not from the cache (default: false)
         *
         * @return mixed Stored value or null if it does not exist
         */
-       public static function get($uid, $family, $key, $default_value = null, $refresh = false)
+       public static function get($uid, $cat, $key, $default_value = null, $refresh = false)
        {
-               if (!isset(self::$adapter)) {
-                       return self::$cache->getP($uid, $family, $key, $default_value);
-               }
-
-               return self::$adapter->get($uid, $family, $key, $default_value, $refresh);
+               return self::$config->get($uid, $cat, $key, $default_value, $refresh);
        }
 
        /**
         * @brief Sets a configuration value for a user
         *
-        * Stores a config value ($value) in the category ($family) under the key ($key)
-        * for the user_id $uid.
-        *
         * @note  Please do not store booleans - convert to 0/1 integer values!
         *
         * @param string $uid    The user_id
-        * @param string $family The category of the configuration value
+        * @param string $cat    The category of the configuration value
         * @param string $key    The configuration key to set
         * @param mixed  $value  The value to store
         *
         * @return bool Operation success
         */
-       public static function set($uid, $family, $key, $value)
+       public static function set($uid, $cat, $key, $value)
        {
-               if (!isset(self::$adapter)) {
-                       return self::$cache->setP($uid, $family, $key, $value);
-               }
-
-               return self::$adapter->set($uid, $family, $key, $value);
+               return self::$config->set($uid, $cat, $key, $value);
        }
 
        /**
         * @brief Deletes the given key from the users's configuration.
         *
-        * Removes the configured value from the stored cache in self::$config
-        * (@see ConfigCache ) and removes it from the database (@see IConfigAdapter )
-        * with the given $uid.
-        *
-        * @param string $uid    The user_id
-        * @param string $family The category of the configuration value
-        * @param string $key    The configuration key to delete
+        * @param string $uid The user_id
+        * @param string $cat The category of the configuration value
+        * @param string $key The configuration key to delete
         *
-        * @return mixed
+        * @return bool
         */
-       public static function delete($uid, $family, $key)
+       public static function delete($uid, $cat, $key)
        {
-               if (!isset(self::$adapter)) {
-                       return self::$cache->deleteP($uid, $family, $key);
-               }
-
-               return self::$adapter->delete($uid, $family, $key);
+               return self::$config->delete($uid, $cat, $key);
        }
 }
index 67bc5e3babc515a6377d9b013a6e20d018d349b5..8844f26881c35183e84874ccfd5431881415a00e 100644 (file)
@@ -74,7 +74,7 @@ class Renderer extends BaseObject
             exit();
         }
 
-        $a->saveTimestamp($stamp1, "rendering");
+               $a->getProfiler()->saveTimestamp($stamp1, "rendering", System::callstack());
 
         return $output;
     }
@@ -101,7 +101,7 @@ class Renderer extends BaseObject
             exit();
         }
 
-        $a->saveTimestamp($stamp1, "file");
+        $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
 
         return $template;
     }
index 62dfaa51f3072f45ce8d3bc56e871b2f0f4e3d5a..5479f8f46f8e2deeb097d1dd0c98d9401da0cccb 100644 (file)
@@ -51,7 +51,7 @@ class Theme
                $a = \get_app();
                $stamp1 = microtime(true);
                $theme_file = file_get_contents("view/theme/$theme/theme.php");
-               $a->saveTimestamp($stamp1, "file");
+               $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
 
                $result = preg_match("|/\*.*\*/|msU", $theme_file, $matches);
 
index 75d4e48740ef60867b179a3da2ac12d97b5c5525..4007a7923cae2dda94ec8f3af051ebc1551b4e27 100644 (file)
@@ -380,20 +380,7 @@ class Worker
 
                // We use the callstack here to analyze the performance of executed worker entries.
                // For this reason the variables have to be initialized.
-               if (Config::get("system", "profiler")) {
-                       $a->performance["start"] = microtime(true);
-                       $a->performance["database"] = 0;
-                       $a->performance["database_write"] = 0;
-                       $a->performance["cache"] = 0;
-                       $a->performance["cache_write"] = 0;
-                       $a->performance["network"] = 0;
-                       $a->performance["file"] = 0;
-                       $a->performance["rendering"] = 0;
-                       $a->performance["parser"] = 0;
-                       $a->performance["marktime"] = 0;
-                       $a->performance["markstart"] = microtime(true);
-                       $a->callstack = [];
-               }
+               $a->getProfiler()->reset();
 
                // For better logging create a new process id for every worker call
                // But preserve the old one for the worker
@@ -452,76 +439,7 @@ class Worker
 
                Logger::log("Process ".$mypid." - Prio ".$queue["priority"]." - ID ".$queue["id"].": ".$funcname." - done in ".number_format($duration, 4)." seconds. Process PID: ".$new_process_id);
 
-               // Write down the performance values into the log
-               if (Config::get("system", "profiler")) {
-                       $duration = microtime(true)-$a->performance["start"];
-
-                       $o = '';
-                       if (Config::get("rendertime", "callstack")) {
-                               if (isset($a->callstack["database"])) {
-                                       $o .= "\nDatabase Read:\n";
-                                       foreach ($a->callstack["database"] as $func => $time) {
-                                               $time = round($time, 3);
-                                               if ($time > 0) {
-                                                       $o .= $func.": ".$time."\n";
-                                               }
-                                       }
-                               }
-                               if (isset($a->callstack["database_write"])) {
-                                       $o .= "\nDatabase Write:\n";
-                                       foreach ($a->callstack["database_write"] as $func => $time) {
-                                               $time = round($time, 3);
-                                               if ($time > 0) {
-                                                       $o .= $func.": ".$time."\n";
-                                               }
-                                       }
-                               }
-                               if (isset($a->callstack["dache"])) {
-                                       $o .= "\nCache Read:\n";
-                                       foreach ($a->callstack["dache"] as $func => $time) {
-                                               $time = round($time, 3);
-                                               if ($time > 0) {
-                                                       $o .= $func.": ".$time."\n";
-                                               }
-                                       }
-                               }
-                               if (isset($a->callstack["dache_write"])) {
-                                       $o .= "\nCache Write:\n";
-                                       foreach ($a->callstack["dache_write"] as $func => $time) {
-                                               $time = round($time, 3);
-                                               if ($time > 0) {
-                                                       $o .= $func.": ".$time."\n";
-                                               }
-                                       }
-                               }
-                               if (isset($a->callstack["network"])) {
-                                       $o .= "\nNetwork:\n";
-                                       foreach ($a->callstack["network"] as $func => $time) {
-                                               $time = round($time, 3);
-                                               if ($time > 0) {
-                                                       $o .= $func.": ".$time."\n";
-                                               }
-                                       }
-                               }
-                       }
-
-                       Logger::log(
-                               "ID ".$queue["id"].": ".$funcname.": ".sprintf(
-                                       "DB: %s/%s, Cache: %s/%s, Net: %s, I/O: %s, Other: %s, Total: %s".$o,
-                                       number_format($a->performance["database"] - $a->performance["database_write"], 2),
-                                       number_format($a->performance["database_write"], 2),
-                                       number_format($a->performance["cache"], 2),
-                                       number_format($a->performance["cache_write"], 2),
-                                       number_format($a->performance["network"], 2),
-                                       number_format($a->performance["file"], 2),
-                                       number_format($duration - ($a->performance["database"]
-                                               + $a->performance["cache"] + $a->performance["cache_write"]
-                                               + $a->performance["network"] + $a->performance["file"]), 2),
-                                       number_format($duration, 2)
-                               ),
-                               Logger::DEBUG
-                       );
-               }
+               $a->getProfiler()->saveLog($a->getLogger(), "ID " . $queue["id"] . ": " . $funcname);
 
                $cooldown = Config::get("system", "worker_cooldown", 0);
 
index d2a739e9313aa07b9be4aaf948bab6398c1930e2..1c17d9aca52d38f7a59ea91e9a9cf2ccfef85c10 100644 (file)
@@ -2,10 +2,11 @@
 
 namespace Friendica\Database;
 
-use Friendica\Core\Config\IConfigCache;
+use Friendica\Core\Config\Cache\IConfigCache;
 use Friendica\Core\Logger;
 use Friendica\Core\System;
 use Friendica\Util\DateTimeFormat;
+use Friendica\Util\Profiler;
 use mysqli;
 use mysqli_result;
 use mysqli_stmt;
@@ -35,6 +36,10 @@ class DBA
         * @var IConfigCache
         */
        private static $configCache;
+       /**
+        * @var Profiler
+        */
+       private static $profiler;
        private static $server_info = '';
        private static $connection;
        private static $driver;
@@ -50,7 +55,7 @@ class DBA
        private static $db_name = '';
        private static $db_charset = '';
 
-       public static function connect($configCache, $serveraddr, $user, $pass, $db, $charset = null)
+       public static function connect(IConfigCache $configCache, Profiler $profiler, $serveraddr, $user, $pass, $db, $charset = null)
        {
                if (!is_null(self::$connection) && self::connected()) {
                        return true;
@@ -58,6 +63,7 @@ class DBA
 
                // We are storing these values for being able to perform a reconnect
                self::$configCache = $configCache;
+               self::$profiler = $profiler;
                self::$db_serveraddr = $serveraddr;
                self::$db_user = $user;
                self::$db_pass = $pass;
@@ -158,7 +164,7 @@ class DBA
        public static function reconnect() {
                self::disconnect();
 
-               $ret = self::connect(self::$configCache, self::$db_serveraddr, self::$db_user, self::$db_pass, self::$db_name, self::$db_charset);
+               $ret = self::connect(self::$configCache, self::$profiler, self::$db_serveraddr, self::$db_user, self::$db_pass, self::$db_name, self::$db_charset);
                return $ret;
        }
 
@@ -392,7 +398,6 @@ class DBA
         * @throws \Exception
         */
        public static function p($sql) {
-               $a = \get_app();
 
                $stamp1 = microtime(true);
 
@@ -582,7 +587,7 @@ class DBA
                        self::$errorno = $errorno;
                }
 
-               $a->saveTimestamp($stamp1, 'database');
+               self::$profiler->saveTimestamp($stamp1, 'database', System::callstack());
 
                if (self::$configCache->get('system', 'db_log')) {
                        $stamp2 = microtime(true);
@@ -611,7 +616,6 @@ class DBA
         * @throws \Exception
         */
        public static function e($sql) {
-               $a = \get_app();
 
                $stamp = microtime(true);
 
@@ -654,7 +658,7 @@ class DBA
                        self::$errorno = $errorno;
                }
 
-               $a->saveTimestamp($stamp, "database_write");
+               self::$profiler->saveTimestamp($stamp, "database_write", System::callstack());
 
                return $retval;
        }
@@ -777,7 +781,6 @@ class DBA
         * @return array current row
         */
        public static function fetch($stmt) {
-               $a = \get_app();
 
                $stamp1 = microtime(true);
 
@@ -824,7 +827,7 @@ class DBA
                                }
                }
 
-               $a->saveTimestamp($stamp1, 'database');
+               self::$profiler->saveTimestamp($stamp1, 'database', System::callstack());
 
                return $columns;
        }
@@ -1534,7 +1537,6 @@ class DBA
         * @return boolean was the close successful?
         */
        public static function close($stmt) {
-               $a = \get_app();
 
                $stamp1 = microtime(true);
 
@@ -1562,7 +1564,7 @@ class DBA
                                break;
                }
 
-               $a->saveTimestamp($stamp1, 'database');
+               self::$profiler->saveTimestamp($stamp1, 'database', System::callstack());
 
                return $ret;
        }
index 269daea8b8d5514d6a19497a912dc43d54c50506..6a30cf0e0577d269b0468948ade177669d3826e3 100644 (file)
@@ -2,51 +2,66 @@
 
 namespace Friendica\Factory;
 
+use Friendica\Core;
 use Friendica\Core\Config;
+use Friendica\Core\Config\Adapter;
+use Friendica\Core\Config\Cache;
 
 class ConfigFactory
 {
        /**
-        * @param Config\ConfigCacheLoader $loader The Config Cache loader (INI/config/.htconfig)
+        * @param Cache\ConfigCacheLoader $loader The Config Cache loader (INI/config/.htconfig)
         *
-        * @return Config\ConfigCache
+        * @return Cache\ConfigCache
         */
-       public static function createCache(Config\ConfigCacheLoader $loader)
+       public static function createCache(Cache\ConfigCacheLoader $loader)
        {
-               $configCache = new Config\ConfigCache();
+               $configCache = new Cache\ConfigCache();
                $loader->loadConfigFiles($configCache);
 
                return $configCache;
        }
 
        /**
-        * @param string              $type   The adapter type
-        * @param Config\IConfigCache $config The config cache of this adapter
+        * @param Cache\ConfigCache $configCache The config cache of this adapter
         *
-        * @return Config\IConfigAdapter
+        * @return Config\Configuration
         */
-       public static function createConfig($type, Config\IConfigCache $config)
+       public static function createConfig(Cache\ConfigCache $configCache)
        {
-               if ($type == 'preload') {
-                       return new Config\PreloadConfigAdapter($config);
+               if ($configCache->get('system', 'config_adapter') === 'preload') {
+                       $configAdapter = new Adapter\PreloadConfigAdapter();
                } else {
-                       return new Config\JITConfigAdapter($config);
+                       $configAdapter = new Adapter\JITConfigAdapter();
                }
+
+               $configuration = new Config\Configuration($configCache, $configAdapter);
+
+               // Set the config in the static container for legacy usage
+               Core\Config::init($configuration);
+
+               return $configuration;
        }
 
        /**
-        * @param string               $type   The adapter type
-        * @param Config\IPConfigCache $config The config cache of this adapter
-        * @param int                  $uid    The UID of the current user
+        * @param Cache\ConfigCache  $configCache The config cache of this adapter
+        * @param int                $uid         The UID of the current user
         *
-        * @return Config\IPConfigAdapter
+        * @return Config\PConfiguration
         */
-       public static function createPConfig($type, Config\IPConfigCache $config, $uid = null)
+       public static function createPConfig(Cache\ConfigCache $configCache, $uid = null)
        {
-               if ($type == 'preload') {
-                       return new Config\PreloadPConfigAdapter($config, $uid);
+               if ($configCache->get('system', 'config_adapter') === 'preload') {
+                       $configAdapter = new Adapter\PreloadPConfigAdapter($uid);
                } else {
-                       return new Config\JITPConfigAdapter($config);
+                       $configAdapter = new Adapter\JITPConfigAdapter();
                }
+
+               $configuration = new Config\PConfiguration($configCache, $configAdapter);
+
+               // Set the config in the static container for legacy usage
+               Core\PConfig::init($configuration);
+
+               return $configuration;
        }
 }
diff --git a/src/Factory/DBFactory.php b/src/Factory/DBFactory.php
new file mode 100644 (file)
index 0000000..c1a7965
--- /dev/null
@@ -0,0 +1,58 @@
+<?php
+
+namespace Friendica\Factory;
+
+use Friendica\Core\Config\Cache;
+use Friendica\Database;
+use Friendica\Util\Profiler;
+
+class DBFactory
+{
+       /**
+        * Initialize the DBA connection
+        *
+        * @param Cache\IConfigCache $configCache The configuration cache
+        * @param Profiler          $profiler    The profiler
+        * @param array             $server      The $_SERVER variables
+        *
+        * @throws \Exception if connection went bad
+        */
+       public static function init(Cache\IConfigCache $configCache, Profiler $profiler, array $server)
+       {
+               if (Database\DBA::connected()) {
+                       return;
+               }
+
+               $db_host = $configCache->get('database', 'hostname');
+               $db_user = $configCache->get('database', 'username');
+               $db_pass = $configCache->get('database', 'password');
+               $db_data = $configCache->get('database', 'database');
+               $charset = $configCache->get('database', 'charset');
+
+               // Use environment variables for mysql if they are set beforehand
+               if (!empty($server['MYSQL_HOST'])
+                       && !empty($server['MYSQL_USERNAME'] || !empty($server['MYSQL_USER']))
+                       && $server['MYSQL_PASSWORD'] !== false
+                       && !empty($server['MYSQL_DATABASE']))
+               {
+                       $db_host = $server['MYSQL_HOST'];
+                       if (!empty($server['MYSQL_PORT'])) {
+                               $db_host .= ':' . $server['MYSQL_PORT'];
+                       }
+                       if (!empty($server['MYSQL_USERNAME'])) {
+                               $db_user = $server['MYSQL_USERNAME'];
+                       } else {
+                               $db_user = $server['MYSQL_USER'];
+                       }
+                       $db_pass = (string) $server['MYSQL_PASSWORD'];
+                       $db_data = $server['MYSQL_DATABASE'];
+               }
+
+               if (Database\DBA::connect($configCache, $profiler, $db_host, $db_user, $db_pass, $db_data, $charset)) {
+                       // Loads DB_UPDATE_VERSION constant
+                       Database\DBStructure::definition($configCache->get('system', 'basepath'), false);
+               }
+
+               unset($db_host, $db_user, $db_pass, $db_data, $charset);
+       }
+}
diff --git a/src/Factory/DependencyFactory.php b/src/Factory/DependencyFactory.php
new file mode 100644 (file)
index 0000000..acbf4bf
--- /dev/null
@@ -0,0 +1,37 @@
+<?php
+
+namespace Friendica\Factory;
+
+use Friendica\App;
+use Friendica\Core\Config\Cache;
+use Friendica\Factory;
+use Friendica\Util\BasePath;
+
+class DependencyFactory
+{
+       /**
+        * Setting all default-dependencies of a friendica execution
+        *
+        * @param string $channel   The channel of this execution
+        * @param string $directory The base directory
+        * @param bool   $isBackend True, if it's a backend execution, otherwise false (Default true)
+        *
+        * @return App The application
+        *
+        * @throws \Exception
+        */
+       public static function setUp($channel, $directory, $isBackend = true)
+       {
+               $basedir = BasePath::create($directory, $_SERVER);
+               $configLoader = new Cache\ConfigCacheLoader($basedir);
+               $configCache = Factory\ConfigFactory::createCache($configLoader);
+               $profiler = Factory\ProfilerFactory::create($configCache);
+               Factory\DBFactory::init($configCache, $profiler, $_SERVER);
+               $config = Factory\ConfigFactory::createConfig($configCache);
+               // needed to call PConfig::init()
+               Factory\ConfigFactory::createPConfig($configCache);
+               $logger = Factory\LoggerFactory::create($channel, $config);
+
+               return new App($config, $logger, $profiler, $isBackend);
+       }
+}
index 751a6357da84d4d3c00358196846979e949bfafb..77a09637c46d9dc3dffc23330f543de9ffe31e23 100644 (file)
@@ -2,10 +2,12 @@
 
 namespace Friendica\Factory;
 
-use Friendica\Core\Config\ConfigCache;
+use Friendica\Core\Config\Configuration;
+use Friendica\Core\Logger;
 use Friendica\Network\HTTPException\InternalServerErrorException;
 use Friendica\Util\Logger\FriendicaDevelopHandler;
 use Friendica\Util\Logger\FriendicaIntrospectionProcessor;
+use Friendica\Util\Profiler;
 use Monolog;
 use Psr\Log\LoggerInterface;
 use Psr\Log\LogLevel;
@@ -20,29 +22,32 @@ class LoggerFactory
        /**
         * Creates a new PSR-3 compliant logger instances
         *
-        * @param string      $channel The channel of the logger instance
-        * @param ConfigCache $config  The config
+        * @param string        $channel The channel of the logger instance
+        * @param Configuration $config  The config
         *
         * @return LoggerInterface The PSR-3 compliant logger instance
         */
-       public static function create($channel, ConfigCache $config = null)
+       public static function create($channel, Configuration $config)
        {
                $logger = new Monolog\Logger($channel);
                $logger->pushProcessor(new Monolog\Processor\PsrLogMessageProcessor());
                $logger->pushProcessor(new Monolog\Processor\ProcessIdProcessor());
                $logger->pushProcessor(new Monolog\Processor\UidProcessor());
-               $logger->pushProcessor(new FriendicaIntrospectionProcessor(LogLevel::DEBUG, ['Friendica\\Core\\Logger']));
+               $logger->pushProcessor(new FriendicaIntrospectionProcessor(LogLevel::DEBUG, [Logger::class, Profiler::class]));
 
-               if (isset($config)) {
-                       $debugging = $config->get('system', 'debugging');
-                       $stream = $config->get('system', 'logfile');
-                       $level = $config->get('system', 'loglevel');
+               $debugging = $config->get('system', 'debugging');
+               $stream    = $config->get('system', 'logfile');
+               $level     = $config->get('system', 'loglevel');
 
-                       if ($debugging) {
-                               static::addStreamHandler($logger, $stream, $level);
-                       }
+               if ($debugging) {
+                       $loglevel = self::mapLegacyConfigDebugLevel((string)$level);
+                       static::addStreamHandler($logger, $stream, $loglevel);
+               } else {
+                       static::addVoidHandler($logger);
                }
 
+               Logger::init($logger);
+
                return $logger;
        }
 
@@ -54,25 +59,71 @@ class LoggerFactory
         *
         * It should never get filled during normal usage of Friendica
         *
-        * @param string $channel      The channel of the logger instance
-        * @param string $developerIp  The IP of the developer who wants to use the logger
+        * @param string        $channel The channel of the logger instance
+        * @param Configuration $config  The config
         *
         * @return LoggerInterface The PSR-3 compliant logger instance
         */
-       public static function createDev($channel, $developerIp)
+       public static function createDev($channel, Configuration $config)
        {
+               $debugging   = $config->get('system', 'debugging');
+               $stream      = $config->get('system', 'dlogfile');
+               $developerIp = $config->get('system', 'dlogip');
+
+               if (!isset($developerIp) || !$debugging) {
+                       return null;
+               }
+
                $logger = new Monolog\Logger($channel);
                $logger->pushProcessor(new Monolog\Processor\PsrLogMessageProcessor());
                $logger->pushProcessor(new Monolog\Processor\ProcessIdProcessor());
                $logger->pushProcessor(new Monolog\Processor\UidProcessor());
                $logger->pushProcessor(new FriendicaIntrospectionProcessor(LogLevel::DEBUG, ['Friendica\\Core\\Logger']));
 
-
                $logger->pushHandler(new FriendicaDevelopHandler($developerIp));
 
+               static::addStreamHandler($logger, $stream, LogLevel::DEBUG);
+
+               Logger::setDevLogger($logger);
+
                return $logger;
        }
 
+       /**
+        * Mapping a legacy level to the PSR-3 compliant levels
+        * @see https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-3-logger-interface.md#5-psrlogloglevel
+        *
+        * @param string $level the level to be mapped
+        *
+        * @return string the PSR-3 compliant level
+        */
+       private static function mapLegacyConfigDebugLevel($level)
+       {
+               switch ($level) {
+                       // legacy WARNING
+                       case "0":
+                               return LogLevel::ERROR;
+                       // legacy INFO
+                       case "1":
+                               return LogLevel::WARNING;
+                       // legacy TRACE
+                       case "2":
+                               return LogLevel::NOTICE;
+                       // legacy DEBUG
+                       case "3":
+                               return LogLevel::INFO;
+                       // legacy DATA
+                       case "4":
+                               return LogLevel::DEBUG;
+                       // legacy ALL
+                       case "5":
+                               return LogLevel::DEBUG;
+                       // default if nothing set
+                       default:
+                               return $level;
+               }
+       }
+
        /**
         * Adding a handler to a given logger instance
         *
@@ -105,31 +156,10 @@ class LoggerFactory
                }
        }
 
-       /**
-        * This method enables the test mode of a given logger
-        *
-        * @param LoggerInterface $logger The logger
-        *
-        * @return Monolog\Handler\TestHandler the Handling for tests
-        *
-        * @throws InternalServerErrorException if the logger is incompatible to the logger factory
-        */
-       public static function enableTest($logger)
+       public static function addVoidHandler($logger)
        {
                if ($logger instanceof Monolog\Logger) {
-                       // disable every handler so far
                        $logger->pushHandler(new Monolog\Handler\NullHandler());
-
-                       // enable the test handler
-                       $fileHandler = new Monolog\Handler\TestHandler();
-                       $formatter = new Monolog\Formatter\LineFormatter("%datetime% %channel% [%level_name%]: %message% %context% %extra%\n");
-                       $fileHandler->setFormatter($formatter);
-
-                       $logger->pushHandler($fileHandler);
-
-                       return $fileHandler;
-               } else {
-                       throw new InternalServerErrorException('Logger instance incompatible for MonologFactory');
                }
        }
 }
diff --git a/src/Factory/ProfilerFactory.php b/src/Factory/ProfilerFactory.php
new file mode 100644 (file)
index 0000000..26a1566
--- /dev/null
@@ -0,0 +1,26 @@
+<?php
+
+namespace Friendica\Factory;
+
+use Friendica\Core\Config\Cache\IConfigCache;
+use Friendica\Util\Profiler;
+
+class ProfilerFactory
+{
+       /**
+        * Creates a Profiler for the current execution
+        *
+        * @param IConfigCache     $configCache The configuration cache
+        *
+        * @return Profiler
+        */
+       public static function create(IConfigCache $configCache)
+       {
+               $enabled = $configCache->get('system', 'profiler');
+               $enabled = isset($enabled) && $enabled !== '!<unset>!';
+               $renderTime = $configCache->get('rendertime', 'callstack');
+               $renderTime = isset($renderTime) && $renderTime !== '!<unset>!';
+
+               return new Profiler($enabled, $renderTime);
+       }
+}
index 1cd9c4f448acb897a8817bf507dfe05f12a6fdc1..b1fd28e3cb19b181ade9c168d900b7bd41cb62f5 100644 (file)
@@ -7,6 +7,7 @@
 namespace Friendica\Model;
 
 use Friendica\Database\DBA;
+use \BadMethodCallException;
 
 class ItemDeliveryData
 {
@@ -71,7 +72,7 @@ class ItemDeliveryData
        public static function insert($item_id, array $fields)
        {
                if (empty($item_id)) {
-                       throw new \BadMethodCallException('Empty item_id');
+                       throw new BadMethodCallException('Empty item_id');
                }
 
                $fields['iid'] = $item_id;
@@ -92,7 +93,7 @@ class ItemDeliveryData
        public static function update($item_id, array $fields)
        {
                if (empty($item_id)) {
-                       throw new \BadMethodCallException('Empty item_id');
+                       throw new BadMethodCallException('Empty item_id');
                }
 
                if (empty($fields)) {
@@ -113,7 +114,7 @@ class ItemDeliveryData
        public static function delete($item_id)
        {
                if (empty($item_id)) {
-                       throw new \BadMethodCallException('Empty item_id');
+                       throw new BadMethodCallException('Empty item_id');
                }
 
                return DBA::delete('item-delivery-data', ['iid' => $item_id]);
index 0778bf41969d4ce346c41553e75f1fda79ff2c4a..152e870e8595c57da88a7f14212b9a8131cb173b 100644 (file)
@@ -173,6 +173,8 @@ class Photo extends BaseObject
         */
        public static function getImageForPhoto(array $photo)
        {
+               $data = "";
+
                if ($photo["backend-class"] == "") {
                        // legacy data storage in "data" column
                        $i = self::selectFirst(["data"], ["id" => $photo["id"]]);
@@ -189,6 +191,7 @@ class Photo extends BaseObject
                if ($data === "") {
                        return null;
                }
+
                return new Image($data, $photo["type"]);
        }
 
@@ -219,11 +222,13 @@ class Photo extends BaseObject
        {
                $fields = self::getFields();
                $values = array_fill(0, count($fields), "");
+
                $photo = array_combine($fields, $values);
                $photo["backend-class"] = Storage\SystemResource::class;
                $photo["backend-ref"] = $filename;
                $photo["type"] = $mimetype;
                $photo["cacheable"] = false;
+
                return $photo;
        }
 
index f9ad7fb7d41697c50b1b33204e0839594b0217e0..60bd154e6a863188040134bda3405699244d26e3 100644 (file)
@@ -50,8 +50,14 @@ class Database implements IStorage
        {
                return DBA::delete('storage', ['id' => $ref]);
        }
-       
-       public static function getOptions() { return []; }
-       
-       public static function saveOptions($data) { return []; }
+
+       public static function getOptions()
+       {
+               return [];
+       }
+
+       public static function saveOptions($data)
+       {
+               return [];
+       }
 }
index 718a2e90affc8ffc756d38e2a5a862dc2ed65810..3afe8ee6f5e7f88bc5cf6b2cdbffbfc6179e9513 100644 (file)
@@ -6,6 +6,8 @@
 
 namespace Friendica\Model\Storage;
 
+use \BadMethodCallException;
+
 /**
  * @brief System resource storage class
  *
@@ -32,12 +34,12 @@ class SystemResource implements IStorage
 
        public static function put($data, $filename = "")
        {
-               throw new \BadMethodCallException();
+               throw new BadMethodCallException();
        }
 
        public static function delete($filename)
        {
-               throw new \BadMethodCallException();
+               throw new BadMethodCallException();
        }
 
        public static function getOptions()
index 6a213d445b2df4c7b036c7c0728b8cd86a8d13a4..6e3425524a1dcff0dd6e5b2f10effd6babcd5385 100644 (file)
@@ -272,10 +272,10 @@ class Term
 
                        $author = ['uid' => 0, 'id' => $item['author-id'],
                                'network' => $item['author-network'], 'url' => $item['author-link']];
-                       $tag['url'] = Contact::magicLinkByContact($author, $tag['url']);
 
                        $prefix = '';
                        if ($tag['type'] == TERM_HASHTAG) {
+                               $tag['url'] = Contact::magicLinkByContact($author, $tag['url']);
                                if ($orig_tag != $tag['url']) {
                                        $item['body'] = str_replace($orig_tag, $tag['url'], $item['body']);
                                }
@@ -283,6 +283,7 @@ class Term
                                $return['hashtags'][] = '#<a href="' . $tag['url'] . '" target="_blank">' . $tag['term'] . '</a>';
                                $prefix = '#';
                        } elseif ($tag['type'] == TERM_MENTION) {
+                               $tag['url'] = Contact::magicLink($tag['url']);
                                $return['mentions'][] = '@<a href="' . $tag['url'] . '" target="_blank">' . $tag['term'] . '</a>';
                                $prefix = '@';
                        }
index 6948dee6e0c52255c1f30d46c20c91b94a673769..3414e887fa93438b89253a565751ad178a0273de 100644 (file)
@@ -75,7 +75,7 @@ class Install extends BaseModule
                                $dbdata  = Strings::escapeTags(trim(defaults($_POST, 'dbdata', '')));
 
                                // If we cannot connect to the database, return to the previous step
-                               if (!self::$installer->checkDB($a->getConfig(), $dbhost, $dbuser, $dbpass, $dbdata)) {
+                               if (!self::$installer->checkDB($a->getConfigCache(), $a->getProfiler(), $dbhost, $dbuser, $dbpass, $dbdata)) {
                                        self::$currentWizardStep = self::DATABASE_CONFIG;
                                }
 
@@ -92,7 +92,7 @@ class Install extends BaseModule
                                $adminmail = Strings::escapeTags(trim(defaults($_POST, 'adminmail', '')));
 
                                // If we cannot connect to the database, return to the Database config wizard
-                               if (!self::$installer->checkDB($a->getConfig(), $dbhost, $dbuser, $dbpass, $dbdata)) {
+                               if (!self::$installer->checkDB($a->getConfigCache(), $a->getProfiler(), $dbhost, $dbuser, $dbpass, $dbdata)) {
                                        self::$currentWizardStep = self::DATABASE_CONFIG;
                                        return;
                                }
index 9143c23c16b3d2d15f095a097832df604365d6d1..45c8bedeaf58397abe15b1b7684a009156f63cad 100644 (file)
@@ -5,6 +5,7 @@
  */
 namespace Friendica\Object;
 
+use Exception;
 use Friendica\App;
 use Friendica\Core\Cache;
 use Friendica\Core\Config;
@@ -14,7 +15,6 @@ use Friendica\Core\System;
 use Friendica\Database\DBA;
 use Friendica\Model\Photo;
 use Friendica\Util\Network;
-use Exception;
 use Imagick;
 use ImagickPixel;
 
@@ -656,7 +656,7 @@ class Image
 
                $stamp1 = microtime(true);
                file_put_contents($path, $string);
-               $a->saveTimestamp($stamp1, "file");
+               $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
        }
 
        /**
@@ -802,7 +802,7 @@ class Image
                                        $a = \get_app();
                                        $stamp1 = microtime(true);
                                        file_put_contents($tempfile, $img_str);
-                                       $a->saveTimestamp($stamp1, "file");
+                                       $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
 
                                        $data = getimagesize($tempfile);
                                        unlink($tempfile);
@@ -910,7 +910,7 @@ class Image
 
                        $stamp1 = microtime(true);
                        $imagedata = @file_get_contents($url);
-                       $a->saveTimestamp($stamp1, "file");
+                       $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
                }
 
                $maximagesize = Config::get('system', 'maximagesize');
@@ -924,7 +924,7 @@ class Image
 
                $stamp1 = microtime(true);
                file_put_contents($tempfile, $imagedata);
-               $a->saveTimestamp($stamp1, "file");
+               $a->getProfiler()->saveTimestamp($stamp1, "file", System::callstack());
 
                $data = getimagesize($tempfile);
 
index 9fa9fcb50749ce30a0c13fcdd184eea96463af7a..05ffeb52b213a75df1d44e576195a9b8b0759576 100644 (file)
@@ -415,6 +415,7 @@ class Post extends BaseObject
                        'dislike'         => $responses['dislike']['output'],
                        'responses'       => $responses,
                        'switchcomment'   => L10n::t('Comment'),
+                       'reply_label'     => L10n::t('Reply to %s', $name_e),
                        'comment'         => $comment,
                        'previewing'      => $conv->isPreview() ? ' preview ' : '',
                        'wait'            => L10n::t('Please wait'),
@@ -449,13 +450,13 @@ class Post extends BaseObject
                        foreach ($children as $child) {
                                $result['children'][] = $child->getTemplateData($conv_responses, $thread_level + 1);
                        }
+
                        // Collapse
                        if (($nb_children > 2) || ($thread_level > 1)) {
                                $result['children'][0]['comment_firstcollapsed'] = true;
                                $result['children'][0]['num_comments'] = L10n::tt('%d comment', '%d comments', $total_children);
-                               $result['children'][0]['hidden_comments_num'] = $total_children;
-                               $result['children'][0]['hidden_comments_text'] = L10n::tt('comment', 'comments', $total_children);
-                               $result['children'][0]['hide_text'] = L10n::t('show more');
+                               $result['children'][0]['show_text'] = L10n::t('Show more');
+                               $result['children'][0]['hide_text'] = L10n::t('Show fewer');
                                if ($thread_level > 1) {
                                        $result['children'][$nb_children - 1]['comment_lastcollapsed'] = true;
                                } else {
index de4b45da9a35bcf7c60572b140af0c8ac13b17c6..cda8c9a71d7113ddb0812af350195943425cf6d8 100644 (file)
@@ -4,13 +4,13 @@
  */
 namespace Friendica\Util;
 
+use DOMDocument;
+use DomXPath;
+use Friendica\Core\Config;
 use Friendica\Core\Hook;
 use Friendica\Core\Logger;
 use Friendica\Core\System;
-use Friendica\Core\Config;
 use Friendica\Network\CurlResult;
-use DOMDocument;
-use DomXPath;
 
 class Network
 {
@@ -232,7 +232,7 @@ class Network
 
                @curl_close($ch);
 
-               $a->saveTimestamp($stamp1, 'network');
+               $a->getProfiler()->saveTimestamp($stamp1, 'network', System::callstack());
 
                return $curlResponse;
        }
@@ -334,7 +334,7 @@ class Network
 
                curl_close($ch);
 
-               $a->saveTimestamp($stamp1, 'network');
+               $a->getProfiler()->saveTimestamp($stamp1, 'network', System::callstack());
 
                Logger::log('post_url: end ' . $url, Logger::DATA);
 
@@ -641,7 +641,7 @@ class Network
                $http_code = $curl_info['http_code'];
                curl_close($ch);
 
-               $a->saveTimestamp($stamp1, "network");
+               $a->getProfiler()->saveTimestamp($stamp1, "network", System::callstack());
 
                if ($http_code == 0) {
                        return $url;
@@ -683,7 +683,7 @@ class Network
                $body = curl_exec($ch);
                curl_close($ch);
 
-               $a->saveTimestamp($stamp1, "network");
+               $a->getProfiler()->saveTimestamp($stamp1, "network", System::callstack());
 
                if (trim($body) == "") {
                        return $url;
diff --git a/src/Util/Profiler.php b/src/Util/Profiler.php
new file mode 100644 (file)
index 0000000..2d3da3a
--- /dev/null
@@ -0,0 +1,239 @@
+<?php
+
+namespace Friendica\Util;
+
+use Psr\Container\ContainerExceptionInterface;
+use Psr\Container\ContainerInterface;
+use Psr\Container\NotFoundExceptionInterface;
+use Psr\Log\LoggerInterface;
+
+/**
+ * A class to store profiling data
+ * It can handle different logging data for specific functions or global performance measures
+ *
+ * It stores the data as log entries (@see LoggerInterface )
+ */
+class Profiler implements ContainerInterface
+{
+       /**
+        * @var array The global performance array
+        */
+       private $performance;
+       /**
+        * @var array The function specific callstack
+        */
+       private $callstack;
+       /**
+        * @var bool True, if the Profiler is enabled
+        */
+       private $enabled;
+       /**
+        * @var bool True, if the Profiler should measure the whole rendertime including functions
+        */
+       private $rendertime;
+
+       /**
+        * @param bool $enabled           True, if the Profiler is enabled
+        * @param bool $renderTime        True, if the Profiler should measure the whole rendertime including functions
+        */
+       public function __construct($enabled = false, $renderTime = false)
+       {
+               $this->enabled = $enabled;
+               $this->rendertime = $renderTime;
+               $this->reset();
+       }
+
+       /**
+        * Saves a timestamp for a value - f.e. a call
+        * Necessary for profiling Friendica
+        *
+        * @param int $timestamp the Timestamp
+        * @param string $value A value to profile
+        * @param string $callstack The callstack of the current profiling data
+        */
+       public function saveTimestamp($timestamp, $value, $callstack = '')
+       {
+               if (!$this->enabled) {
+                       return;
+               }
+
+               $duration = (float) (microtime(true) - $timestamp);
+
+               if (!isset($this->performance[$value])) {
+                       // Prevent ugly E_NOTICE
+                       $this->performance[$value] = 0;
+               }
+
+               $this->performance[$value] += (float) $duration;
+               $this->performance['marktime'] += (float) $duration;
+
+               if (!isset($this->callstack[$value][$callstack])) {
+                       // Prevent ugly E_NOTICE
+                       $this->callstack[$value][$callstack] = 0;
+               }
+
+               $this->callstack[$value][$callstack] += (float) $duration;
+       }
+
+       /**
+        * Resets the performance and callstack profiling
+        */
+       public function reset()
+       {
+               $this->resetPerformance();
+               $this->resetCallstack();
+       }
+
+       /**
+        * Resets the performance profiling data
+        */
+       public function resetPerformance()
+       {
+               $this->performance = [];
+               $this->performance['start'] = microtime(true);
+               $this->performance['database'] = 0;
+               $this->performance['database_write'] = 0;
+               $this->performance['cache'] = 0;
+               $this->performance['cache_write'] = 0;
+               $this->performance['network'] = 0;
+               $this->performance['file'] = 0;
+               $this->performance['rendering'] = 0;
+               $this->performance['parser'] = 0;
+               $this->performance['marktime'] = 0;
+               $this->performance['marktime'] = microtime(true);
+       }
+
+       /**
+        * Resets the callstack profiling data
+        */
+       public function resetCallstack()
+       {
+               $this->callstack = [];
+               $this->callstack['database'] = [];
+               $this->callstack['database_write'] = [];
+               $this->callstack['cache'] = [];
+               $this->callstack['cache_write'] = [];
+               $this->callstack['network'] = [];
+               $this->callstack['file'] = [];
+               $this->callstack['rendering'] = [];
+               $this->callstack['parser'] = [];
+       }
+
+       /**
+        * Save the current profiling data to a log entry
+        *
+        * @param LoggerInterface $logger The logger to save the current log
+        * @param string          $message Additional message for the log
+        */
+       public function saveLog(LoggerInterface $logger, $message = '')
+       {
+               // Write down the performance values into the log
+               if (!$this->enabled) {
+                       return;
+               }
+               $duration = microtime(true) - $this->get('start');
+               $logger->info(
+                       $message,
+                       [
+                               'action' => 'profiling',
+                               'database_read' => round($this->get('database') - $this->get('database_write'), 3),
+                               'database_write' => round($this->get('database_write'), 3),
+                               'cache_read' => round($this->get('cache'), 3),
+                               'cache_write' => round($this->get('cache_write'), 3),
+                               'network_io' => round($this->get('network'), 2),
+                               'file_io' => round($this->get('file'), 2),
+                               'other_io' => round($duration - ($this->get('database')
+                                               + $this->get('cache') + $this->get('cache_write')
+                                               + $this->get('network') + $this->get('file')), 2),
+                               'total' => round($duration, 2)
+                       ]
+               );
+
+               if (!$this->rendertime) {
+                       return;
+               }
+               
+               $o = '';
+               if (isset($this->callstack["database"])) {
+                       $o .= "\nDatabase Read:\n";
+                       foreach ($this->callstack["database"] as $func => $time) {
+                               $time = round($time, 3);
+                               if ($time > 0) {
+                                       $o .= $func . ": " . $time . "\n";
+                               }
+                       }
+               }
+               if (isset($this->callstack["database_write"])) {
+                       $o .= "\nDatabase Write:\n";
+                       foreach ($this->callstack["database_write"] as $func => $time) {
+                               $time = round($time, 3);
+                               if ($time > 0) {
+                                       $o .= $func . ": " . $time . "\n";
+                               }
+                       }
+               }
+               if (isset($this->callstack["cache"])) {
+                       $o .= "\nCache Read:\n";
+                       foreach ($this->callstack["cache"] as $func => $time) {
+                               $time = round($time, 3);
+                               if ($time > 0) {
+                                       $o .= $func . ": " . $time . "\n";
+                               }
+                       }
+               }
+               if (isset($this->callstack["cache_write"])) {
+                       $o .= "\nCache Write:\n";
+                       foreach ($this->callstack["cache_write"] as $func => $time) {
+                               $time = round($time, 3);
+                               if ($time > 0) {
+                                       $o .= $func . ": " . $time . "\n";
+                               }
+                       }
+               }
+               if (isset($this->callstack["network"])) {
+                       $o .= "\nNetwork:\n";
+                       foreach ($this->callstack["network"] as $func => $time) {
+                               $time = round($time, 3);
+                               if ($time > 0) {
+                                       $o .= $func . ": " . $time . "\n";
+                               }
+                       }
+               }
+               $logger->info($message . ": " . $o, ['action' => 'profiling']);
+       }
+
+       /**
+        * Finds an entry of the container by its identifier and returns it.
+        *
+        * @param string $id Identifier of the entry to look for.
+        *
+        * @throws NotFoundExceptionInterface  No entry was found for **this** identifier.
+        * @throws ContainerExceptionInterface Error while retrieving the entry.
+        *
+        * @return int Entry.
+        */
+       public function get($id)
+       {
+               if (!$this->has($id)) {
+                       return 0;
+               } else {
+                       return $this->performance[$id];
+               }
+       }
+
+       /**
+        * Returns true if the container can return an entry for the given identifier.
+        * Returns false otherwise.
+        *
+        * `has($id)` returning true does not mean that `get($id)` will not throw an exception.
+        * It does however mean that `get($id)` will not throw a `NotFoundExceptionInterface`.
+        *
+        * @param string $id Identifier of the entry to look for.
+        *
+        * @return bool
+        */
+       public function has($id)
+       {
+               return isset($this->performance[$id]);
+       }
+}
index 4492e3ce92fb65c7aa970e0808f711bab37aaee4..57c25a68faa399053485a364af38db6c8acff554 100644 (file)
@@ -498,7 +498,6 @@ class Notifier
                }
                DBA::close($delivery_contacts_stmt);
 
-
                $url_recipients = array_filter($url_recipients);
                // send salmon slaps to mentioned remote tags (@foo@example.com) in OStatus posts
                // They are especially used for notifications to OStatus users that don't follow us.
index 79af5b5468a9495f86d390ceda58d1afdc4d64eb..dde61e856b8d6392f525df1c4461559d1278ea00 100644 (file)
@@ -5,10 +5,11 @@
 
 namespace Friendica\Test;
 
-use Friendica\Core\Config;
+use Friendica\Core\Config\Cache;
 use Friendica\Database\DBA;
 use Friendica\Factory;
 use Friendica\Util\BasePath;
+use Friendica\Util\Profiler;
 use PHPUnit\DbUnit\DataSet\YamlDataSet;
 use PHPUnit\DbUnit\TestCaseTrait;
 use PHPUnit_Extensions_Database_DB_IDatabaseConnection;
@@ -40,11 +41,14 @@ abstract class DatabaseTest extends MockedTest
                }
 
                $basedir = BasePath::create(dirname(__DIR__));
-               $configLoader = new Config\ConfigCacheLoader($basedir);
+               $configLoader = new Cache\ConfigCacheLoader($basedir);
                $config = Factory\ConfigFactory::createCache($configLoader);
 
+               $profiler = \Mockery::mock(Profiler::class);
+
                DBA::connect(
                        $config,
+                       $profiler,
                        getenv('MYSQL_HOST'),
                        getenv('MYSQL_USERNAME'),
                        getenv('MYSQL_PASSWORD'),
index 18188239f1760ee2aff511f9a4a3a5524d10a270..817570dd58c948cd4418e3217e4a660f3d6d1ac2 100644 (file)
@@ -5,8 +5,8 @@ namespace Friendica\Test\Util;
 use Friendica\App;
 use Friendica\BaseObject;
 use Friendica\Core\Config;
-use Friendica\Core\Config\ConfigCache;
 use Friendica\Render\FriendicaSmartyEngine;
+use Friendica\Util\Profiler;
 use Mockery\MockInterface;
 use org\bovigo\vfs\vfsStreamDirectory;
 
@@ -21,74 +21,83 @@ trait AppMockTrait
        protected $app;
 
        /**
-        * @var MockInterface|ConfigCache The mocked Config Cache
+        * @var MockInterface|Config\Configuration The mocked Config Cache
         */
-       protected $configCache;
+       protected $configMock;
+
+       /**
+        * @var MockInterface|Profiler The mocked profiler
+        */
+       protected $profilerMock;
 
        /**
         * Mock the App
         *
         * @param vfsStreamDirectory $root The root directory
-        * @param MockInterface|ConfigCache $config The config cache
         */
-       public function mockApp($root, $config)
+       public function mockApp($root)
        {
-               $this->configCache = $config;
+               $this->configMock = \Mockery::mock(Config\Cache\IConfigCache::class);
+               $configAdapterMock = \Mockery::mock(Config\Adapter\IConfigAdapter::class);
+               // Disable the adapter
+               $configAdapterMock->shouldReceive('isConnected')->andReturn(false);
+
+               $config = new Config\Configuration($this->configMock, $configAdapterMock);
+               // Initialize empty Config
+               Config::init($config);
+
                // Mocking App and most used functions
                $this->app = \Mockery::mock(App::class);
                $this->app
                        ->shouldReceive('getBasePath')
                        ->andReturn($root->url());
 
-               $config
+               $this->configMock
+                       ->shouldReceive('has')
+                       ->andReturn(true);
+               $this->configMock
                        ->shouldReceive('get')
                        ->with('database', 'hostname')
                        ->andReturn(getenv('MYSQL_HOST'));
-               $config
+               $this->configMock
                        ->shouldReceive('get')
                        ->with('database', 'username')
                        ->andReturn(getenv('MYSQL_USERNAME'));
-               $config
+               $this->configMock
                        ->shouldReceive('get')
                        ->with('database', 'password')
                        ->andReturn(getenv('MYSQL_PASSWORD'));
-               $config
+               $this->configMock
                        ->shouldReceive('get')
                        ->with('database', 'database')
                        ->andReturn(getenv('MYSQL_DATABASE'));
-               $config
+               $this->configMock
                        ->shouldReceive('get')
                        ->with('config', 'hostname')
                        ->andReturn('localhost');
-               $config
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'theme', NULL)
+                       ->with('system', 'theme')
                        ->andReturn('system_theme');
 
-               $this->app
-                       ->shouldReceive('getConfig')
-                       ->andReturn($config);
+               $this->profilerMock = \Mockery::mock(Profiler::class);
+               $this->profilerMock->shouldReceive('saveTimestamp');
 
+               $this->app
+                       ->shouldReceive('getConfigCache')
+                       ->andReturn($this->configMock);
                $this->app
                        ->shouldReceive('getTemplateEngine')
                        ->andReturn(new FriendicaSmartyEngine());
                $this->app
                        ->shouldReceive('getCurrentTheme')
                        ->andReturn('Smarty3');
-               $this->app
-                       ->shouldReceive('saveTimestamp')
-                       ->andReturn(true);
                $this->app
                        ->shouldReceive('getBaseUrl')
                        ->andReturn('http://friendica.local');
-
-               // Initialize empty Config
-               Config::init($config);
-               $configAdapter = \Mockery::mock('Friendica\Core\Config\IConfigAdapter');
-               $configAdapter
-                       ->shouldReceive('isConnected')
-                       ->andReturn(false);
-               Config::setAdapter($configAdapter);
+               $this->app
+                       ->shouldReceive('getProfiler')
+                       ->andReturn($this->profilerMock);
 
                BaseObject::setApp($this->app);
        }
index 87c120d3f22337d0e5c8b83ee96ebaa681bb537d..92ec412cb7ed4bec698c49c768248b2efe9d67a1 100644 (file)
@@ -2,6 +2,7 @@
 
 namespace Friendica\Test\Util;
 
+use Friendica\Database\DBStructure;
 use Mockery\MockInterface;
 
 /**
@@ -16,6 +17,7 @@ trait DBStructureMockTrait
 
        /**
         * Mocking DBStructure::update()
+        * @see DBStructure::update();
         *
         * @param array $args The arguments for the update call
         * @param bool $return True, if the connect was successful, otherwise false
index be70d923bd4866c42e3f084cf4a543cb5ef72f2a..289b3fcea54f278db4f5b099817d7dd7109b0f0f 100644 (file)
@@ -7,6 +7,7 @@ namespace Friendica\Test;
 
 use Friendica\App;
 use Friendica\Core\Config;
+use Friendica\Core\Config\Cache;
 use Friendica\Core\PConfig;
 use Friendica\Core\Protocol;
 use Friendica\Core\System;
@@ -36,11 +37,14 @@ class ApiTest extends DatabaseTest
        public function setUp()
        {
                $basedir = BasePath::create(dirname(__DIR__) . '/../');
-               $configLoader = new Config\ConfigCacheLoader($basedir);
-               $config = Factory\ConfigFactory::createCache($configLoader);
+               $configLoader = new Cache\ConfigCacheLoader($basedir);
+               $configCache = Factory\ConfigFactory::createCache($configLoader);
+               $profiler = Factory\ProfilerFactory::create($configCache);
+               Factory\DBFactory::init($configCache, $profiler, $_SERVER);
+               $config = Factory\ConfigFactory::createConfig($configCache);
+               Factory\ConfigFactory::createPConfig($configCache);
                $logger = Factory\LoggerFactory::create('test', $config);
-               $this->app = new App($config, $logger, false);
-               $this->logOutput = FActory\LoggerFactory::enableTest($this->app->getLogger());
+               $this->app = new App($config, $logger, $profiler, false);
 
                parent::setUp();
 
index 19dad07cd6eae94af0e590cc0f410889eaa6e38b..9059e8bebf4ad6b6d1ec29812dcc239a9e774f7e 100644 (file)
@@ -90,19 +90,14 @@ class ModeTest extends MockedTest
                $this->mockConnected(true, 1);
                $this->mockFetchFirst('SHOW TABLES LIKE \'config\'', true, 1);
 
-               $config = \Mockery::mock('Friendica\Core\Config\ConfigCache');
+               $config = \Mockery::mock(Config\Configuration::class);
                $config
                        ->shouldReceive('get')
-                       ->with('system', 'maintenance', null)
+                       ->with('system', 'maintenance', null, false)
                        ->andReturn(true)
                        ->once();
                // Initialize empty Config
                Config::init($config);
-               $configAdapter = \Mockery::mock('Friendica\Core\Config\IConfigAdapter');
-               $configAdapter
-                       ->shouldReceive('isConnected')
-                       ->andReturn(false);
-               Config::setAdapter($configAdapter);
 
                $mode = new Mode($this->root->url());
                $mode->determine();
@@ -123,19 +118,14 @@ class ModeTest extends MockedTest
                $this->mockConnected(true, 1);
                $this->mockFetchFirst('SHOW TABLES LIKE \'config\'', true, 1);
 
-               $config = \Mockery::mock('Friendica\Core\Config\ConfigCache');
+               $config = \Mockery::mock(Config\Configuration::class);
                $config
                        ->shouldReceive('get')
-                       ->with('system', 'maintenance', null)
+                       ->with('system', 'maintenance', null, false)
                        ->andReturn(false)
                        ->once();
                // Initialize empty Config
                Config::init($config);
-               $configAdapter = \Mockery::mock('Friendica\Core\Config\IConfigAdapter');
-               $configAdapter
-                       ->shouldReceive('isConnected')
-                       ->andReturn(false);
-               Config::setAdapter($configAdapter);
 
                $mode = new Mode($this->root->url());
                $mode->determine();
index 784944c3a06425a35a6aa8b78da5f5245c6fa299..3341503915f4738e68cad7d74e6cfaab641e72e6 100644 (file)
@@ -31,8 +31,7 @@ class BaseObjectTest extends TestCase
        {
                $baseObject = new BaseObject();
                $this->setUpVfsDir();
-               $configMock = \Mockery::mock('Friendica\Core\Config\ConfigCache');
-               $this->mockApp($this->root, $configMock);
+               $this->mockApp($this->root);
 
                $this->assertNull($baseObject->setApp($this->app));
                $this->assertEquals($this->app, $baseObject->getApp());
index e8bd65cbfe5670c0865dd28537b6f39b67684c44..ef97f5a172214ea16ed325ca79b7ff8cb5f2d027 100644 (file)
@@ -67,8 +67,7 @@ abstract class CacheTest extends MockedTest
        protected function setUp()
        {
                $this->setUpVfsDir();
-               $configMock = \Mockery::mock('Friendica\Core\Config\ConfigCache');
-               $this->mockApp($this->root, $configMock);
+               $this->mockApp($this->root);
                $this->app
                        ->shouldReceive('getHostname')
                        ->andReturn('friendica.local');
index 7832344a89522071a47da49efada0689d9e8256c..f9df9eaba089b996ab62ed108908801451f9f486 100644 (file)
@@ -12,14 +12,14 @@ class MemcacheCacheDriverTest extends MemoryCacheTest
 {
        protected function getInstance()
        {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'memcache_host', NULL)
+                       ->with('system', 'memcache_host')
                        ->andReturn('localhost');
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'memcache_port', NULL)
+                       ->with('system', 'memcache_port')
                        ->andReturn(11211);
 
                $this->cache = CacheDriverFactory::create('memcache');
index fe401f97dd40d95d718ebf8fe5959884684300de..4e16ef947f7fadd4373d19432cca98e6f267eb1a 100644 (file)
@@ -12,9 +12,9 @@ class MemcachedCacheDriverTest extends MemoryCacheTest
 {
        protected function getInstance()
        {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'memcached_hosts', NULL)
+                       ->with('system', 'memcached_hosts')
                        ->andReturn([0 => 'localhost, 11211']);
 
                $this->cache = CacheDriverFactory::create('memcached');
index 0a3dba439d83ace9f5b254667e06d73e50de131f..20fe7eb53f299fcaa8e7fb9dc3611fc2d916b805 100644 (file)
@@ -12,14 +12,14 @@ class RedisCacheDriverTest extends MemoryCacheTest
 {
        protected function getInstance()
        {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'redis_host', NULL)
+                       ->with('system', 'redis_host')
                        ->andReturn('localhost');
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'redis_port', NULL)
+                       ->with('system', 'redis_port')
                        ->andReturn(null);
 
                $this->cache = CacheDriverFactory::create('redis');
diff --git a/tests/src/Core/Config/Cache/ConfigCacheLoaderTest.php b/tests/src/Core/Config/Cache/ConfigCacheLoaderTest.php
new file mode 100644 (file)
index 0000000..f91f267
--- /dev/null
@@ -0,0 +1,188 @@
+<?php
+
+namespace Friendica\Test\Core\Config\Cache;
+
+use Friendica\Core\Config\Cache\ConfigCache;
+use Friendica\Core\Config\Cache\ConfigCacheLoader;
+use Friendica\Test\MockedTest;
+use Friendica\Test\Util\VFSTrait;
+use org\bovigo\vfs\vfsStream;
+
+class ConfigCacheLoaderTest extends MockedTest
+{
+       use VFSTrait;
+
+       protected function setUp()
+       {
+               parent::setUp();
+
+               $this->setUpVfsDir();
+       }
+
+       /**
+        * Test the loadConfigFiles() method with default values
+        */
+       public function testLoadConfigFiles()
+       {
+               $configCacheLoader = new ConfigCacheLoader($this->root->url());
+               $configCache = new ConfigCache();
+
+               $configCacheLoader->loadConfigFiles($configCache);
+
+               $this->assertEquals($this->root->url(), $configCache->get('system', 'basepath'));
+       }
+
+       /**
+        * Test the loadConfigFiles() method with a wrong local.config.php
+        * @expectedException \Exception
+        * @expectedExceptionMessageRegExp /Error loading config file \w+/
+        */
+       public function testLoadConfigWrong()
+       {
+               $this->delConfigFile('local.config.php');
+
+               vfsStream::newFile('local.config.php')
+                       ->at($this->root->getChild('config'))
+                       ->setContent('<?php return true;');
+
+               $configCacheLoader = new ConfigCacheLoader($this->root->url());
+               $configCache = new ConfigCache();
+
+               $configCacheLoader->loadConfigFiles($configCache);
+       }
+
+       /**
+        * Test the loadConfigFiles() method with a local.config.php file
+        */
+       public function testLoadConfigFilesLocal()
+       {
+               $this->delConfigFile('local.config.php');
+
+               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       'datasets' . DIRECTORY_SEPARATOR .
+                       'config' . DIRECTORY_SEPARATOR .
+                       'local.config.php';
+
+               vfsStream::newFile('local.config.php')
+                       ->at($this->root->getChild('config'))
+                       ->setContent(file_get_contents($file));
+
+               $configCacheLoader = new ConfigCacheLoader($this->root->url());
+               $configCache = new ConfigCache();
+
+               $configCacheLoader->loadConfigFiles($configCache);
+
+               $this->assertEquals('testhost', $configCache->get('database', 'hostname'));
+               $this->assertEquals('testuser', $configCache->get('database', 'username'));
+               $this->assertEquals('testpw', $configCache->get('database', 'password'));
+               $this->assertEquals('testdb', $configCache->get('database', 'database'));
+
+               $this->assertEquals('admin@test.it', $configCache->get('config', 'admin_email'));
+               $this->assertEquals('Friendica Social Network', $configCache->get('config', 'sitename'));
+       }
+
+       /**
+        * Test the loadConfigFile() method with a local.ini.php file
+        */
+       public function testLoadConfigFilesINI()
+       {
+               $this->delConfigFile('local.config.php');
+
+               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       'datasets' . DIRECTORY_SEPARATOR .
+                       'config' . DIRECTORY_SEPARATOR .
+                       'local.ini.php';
+
+               vfsStream::newFile('local.ini.php')
+                       ->at($this->root->getChild('config'))
+                       ->setContent(file_get_contents($file));
+
+               $configCacheLoader = new ConfigCacheLoader($this->root->url());
+               $configCache = new ConfigCache();
+
+               $configCacheLoader->loadConfigFiles($configCache);
+
+               $this->assertEquals('testhost', $configCache->get('database', 'hostname'));
+               $this->assertEquals('testuser', $configCache->get('database', 'username'));
+               $this->assertEquals('testpw', $configCache->get('database', 'password'));
+               $this->assertEquals('testdb', $configCache->get('database', 'database'));
+
+               $this->assertEquals('admin@test.it', $configCache->get('config', 'admin_email'));
+       }
+
+       /**
+        * Test the loadConfigFile() method with a .htconfig.php file
+        */
+       public function testLoadConfigFilesHtconfig()
+       {
+               $this->delConfigFile('local.config.php');
+
+               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       'datasets' . DIRECTORY_SEPARATOR .
+                       'config' . DIRECTORY_SEPARATOR .
+                       '.htconfig.test.php';
+
+               vfsStream::newFile('.htconfig.php')
+                       ->at($this->root)
+                       ->setContent(file_get_contents($file));
+
+               $configCacheLoader = new ConfigCacheLoader($this->root->url());
+               $configCache = new ConfigCache();
+
+               $configCacheLoader->loadConfigFiles($configCache);
+
+               $this->assertEquals('testhost', $configCache->get('database', 'hostname'));
+               $this->assertEquals('testuser', $configCache->get('database', 'username'));
+               $this->assertEquals('testpw', $configCache->get('database', 'password'));
+               $this->assertEquals('testdb', $configCache->get('database', 'database'));
+
+               $this->assertEquals('/var/run/friendica.pid', $configCache->get('system', 'pidfile'));
+               $this->assertEquals('Europe/Berlin', $configCache->get('system', 'default_timezone'));
+               $this->assertEquals('fr', $configCache->get('system', 'language'));
+       }
+
+       public function testLoadAddonConfig()
+       {
+               $structure = [
+                       'addon' => [
+                               'test' => [
+                                       'config' => [],
+                               ],
+                       ],
+               ];
+
+               vfsStream::create($structure, $this->root);
+
+               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       '..' . DIRECTORY_SEPARATOR .
+                       'datasets' . DIRECTORY_SEPARATOR .
+                       'config' . DIRECTORY_SEPARATOR .
+                       'local.config.php';
+
+               vfsStream::newFile('test.config.php')
+                       ->at($this->root->getChild('addon')->getChild('test')->getChild('config'))
+                       ->setContent(file_get_contents($file));
+
+               $configCacheLoader = new ConfigCacheLoader($this->root->url());
+
+               $conf = $configCacheLoader->loadAddonConfig('test');
+
+               $this->assertEquals('testhost', $conf['database']['hostname']);
+               $this->assertEquals('testuser', $conf['database']['username']);
+               $this->assertEquals('testpw', $conf['database']['password']);
+               $this->assertEquals('testdb', $conf['database']['database']);
+
+               $this->assertEquals('admin@test.it', $conf['config']['admin_email']);
+       }
+}
diff --git a/tests/src/Core/Config/Cache/ConfigCacheTest.php b/tests/src/Core/Config/Cache/ConfigCacheTest.php
new file mode 100644 (file)
index 0000000..ac9fae5
--- /dev/null
@@ -0,0 +1,283 @@
+<?php
+
+namespace Friendica\Test\Core\Config\Cache;
+
+use Friendica\Core\Config\Cache\ConfigCache;
+use Friendica\Test\MockedTest;
+
+class ConfigCacheTest extends MockedTest
+{
+       public function dataTests()
+       {
+               return [
+                       'normal' => [
+                               'data' => [
+                                       'system' => [
+                                               'test' => 'it',
+                                               'boolTrue' => true,
+                                               'boolFalse' => false,
+                                               'int' => 235,
+                                               'dec' => 2.456,
+                                               'array' => ['1', 2, '3', true, false],
+                                       ],
+                                       'config' => [
+                                               'a' => 'value',
+                                       ],
+                               ]
+                       ]
+               ];
+       }
+
+       private function assertConfigValues($data, ConfigCache $configCache, $uid = null)
+       {
+               foreach ($data as $cat => $values) {
+                       foreach ($values as $key => $value) {
+                               if (isset($uid)) {
+                                       $this->assertEquals($data[$cat][$key], $configCache->getP($uid, $cat, $key));
+                               } else {
+                                       $this->assertEquals($data[$cat][$key], $configCache->get($cat, $key));
+                               }
+                       }
+               }
+       }
+
+       /**
+        * Test the loadConfigArray() method without override
+        * @dataProvider dataTests
+        */
+       public function testLoadConfigArray($data)
+       {
+               $configCache = new ConfigCache();
+               $configCache->load($data);
+
+               $this->assertConfigValues($data, $configCache);
+       }
+
+       /**
+        * Test the loadConfigArray() method with overrides
+        * @dataProvider dataTests
+        */
+       public function testLoadConfigArrayOverride($data)
+       {
+               $override = [
+                       'system' => [
+                               'test' => 'not',
+                               'boolTrue' => false,
+                       ]
+               ];
+
+               $configCache = new ConfigCache();
+               $configCache->load($data);
+               $configCache->load($override);
+
+               $this->assertConfigValues($data, $configCache);
+
+               // override the value
+               $configCache->load($override, true);
+
+               $this->assertEquals($override['system']['test'], $configCache->get('system', 'test'));
+               $this->assertEquals($override['system']['boolTrue'], $configCache->get('system', 'boolTrue'));
+       }
+
+       /**
+        * Test the loadConfigArray() method with wrong/empty datasets
+        */
+       public function testLoadConfigArrayWrong()
+       {
+               $configCache = new ConfigCache();
+
+               // empty dataset
+               $configCache->load([]);
+               $this->assertEmpty($configCache->getAll());
+
+               // wrong dataset
+               $configCache->load(['system' => 'not_array']);
+               $this->assertEmpty($configCache->getAll());
+
+               // incomplete dataset (key is integer ID of the array)
+               $configCache->load(['system' => ['value']]);
+               $this->assertEquals('value', $configCache->get('system', 0));
+       }
+
+       /**
+        * Test the getAll() method
+        * @dataProvider dataTests
+        */
+       public function testGetAll($data)
+       {
+               $configCache = new ConfigCache();
+               $configCache->load($data);
+
+               $all = $configCache->getAll();
+
+               $this->assertContains($data['system'], $all);
+               $this->assertContains($data['config'], $all);
+       }
+
+       /**
+        * Test the set() and get() method
+        * @dataProvider dataTests
+        */
+       public function testSetGet($data)
+       {
+               $configCache = new ConfigCache();
+
+               foreach ($data as $cat => $values) {
+                       foreach ($values as $key => $value) {
+                               $configCache->set($cat, $key, $value);
+                       }
+               }
+
+               $this->assertConfigValues($data, $configCache);
+       }
+
+       /**
+        * Test the get() method without a value
+        */
+       public function testGetEmpty()
+       {
+               $configCache = new ConfigCache();
+
+               $this->assertEquals('!<unset>!', $configCache->get('something', 'value'));
+       }
+
+       /**
+        * Test the has() method
+        */
+       public function testHas()
+       {
+               $configCache = new ConfigCache();
+
+               $this->assertFalse($configCache->has('system', 'test'));
+               $this->assertFalse($configCache->has('system'));
+
+               $configCache->set('system', 'test', 'it');
+               $this->assertTrue($configCache->has('system', 'test'));
+               $this->assertTrue($configCache->has('system'));
+       }
+
+       /**
+        * Test the get() method with a category
+        */
+       public function testGetCat()
+       {
+               $configCache = new ConfigCache([
+                       'system' => [
+                               'key1' => 'value1',
+                               'key2' => 'value2',
+                       ],
+                       'config' => [
+                               'key3' => 'value3',
+                       ],
+               ]);
+
+               $this->assertTrue($configCache->has('system'));
+
+               $this->assertEquals([
+                       'key1' => 'value1',
+                       'key2' => 'value2',
+               ], $configCache->get('system'));
+       }
+
+       /**
+        * Test the delete() method
+        * @dataProvider dataTests
+        */
+       public function testDelete($data)
+       {
+               $configCache = new ConfigCache($data);
+
+               foreach ($data as $cat => $values) {
+                       foreach ($values as $key => $value) {
+                               $configCache->delete($cat, $key);
+                       }
+               }
+
+               $this->assertEmpty($configCache->getAll());
+       }
+
+       /**
+        * Test the setP() and getP() methods
+        * @dataProvider dataTests
+        */
+       public function testSetGetP($data)
+       {
+               $configCache = new ConfigCache();
+               $uid = 345;
+
+               foreach ($data as $cat => $values) {
+                       foreach ($values as $key => $value) {
+                               $configCache->setP($uid, $cat, $key, $value);
+                       }
+               }
+
+               $this->assertConfigValues($data, $configCache, $uid);
+       }
+
+
+       /**
+        * Test the getP() method with a category
+        */
+       public function testGetPCat()
+       {
+               $configCache = new ConfigCache();
+               $uid = 345;
+
+               $configCache->loadP($uid, [
+                       'system' => [
+                               'key1' => 'value1',
+                               'key2' => 'value2',
+                       ],
+                       'config' => [
+                               'key3' => 'value3',
+                       ],
+               ]);
+
+               $this->assertTrue($configCache->hasP($uid,'system'));
+
+               $this->assertEquals([
+                       'key1' => 'value1',
+                       'key2' => 'value2',
+               ], $configCache->get($uid, 'system'));
+       }
+
+       /**
+        * Test the deleteP() method
+        * @dataProvider dataTests
+        */
+       public function testDeleteP($data)
+       {
+               $configCache = new ConfigCache();
+               $uid = 345;
+
+               foreach ($data as $cat => $values) {
+                       foreach ($values as $key => $value) {
+                               $configCache->setP($uid, $cat, $key, $value);
+                       }
+               }
+
+               foreach ($data as $cat => $values) {
+                       foreach ($values as $key => $value) {
+                               $configCache->deleteP($uid, $cat, $key);
+                       }
+               }
+
+               $this->assertEmpty($configCache->getAll());
+       }
+
+       /**
+        * Test the hasP() method
+        */
+       public function testHasP()
+       {
+               $configCache = new ConfigCache();
+               $uid = 345;
+
+               $this->assertFalse($configCache->hasP($uid, 'system', 'test'));
+               $this->assertFalse($configCache->hasP($uid, 'system'));
+
+               $configCache->setP($uid, 'system', 'test', 'it');
+               $this->assertTrue($configCache->hasP($uid, 'system', 'test'));
+               $this->assertTrue($configCache->hasP($uid, 'system'));
+       }
+}
diff --git a/tests/src/Core/Config/ConfigCacheLoaderTest.php b/tests/src/Core/Config/ConfigCacheLoaderTest.php
deleted file mode 100644 (file)
index 6be89bc..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-<?php
-
-namespace Friendica\Test\Core\Config;
-
-use Friendica\Core\Config\ConfigCache;
-use Friendica\Core\Config\ConfigCacheLoader;
-use Friendica\Test\MockedTest;
-use Friendica\Test\Util\VFSTrait;
-use org\bovigo\vfs\vfsStream;
-
-class ConfigCacheLoaderTest extends MockedTest
-{
-       use VFSTrait;
-
-       protected function setUp()
-       {
-               parent::setUp();
-
-               $this->setUpVfsDir();
-       }
-
-       /**
-        * Test the loadConfigFiles() method with default values
-        */
-       public function testLoadConfigFiles()
-       {
-               $configCacheLoader = new ConfigCacheLoader($this->root->url());
-               $configCache = new ConfigCache();
-
-               $configCacheLoader->loadConfigFiles($configCache);
-
-               $this->assertEquals($this->root->url(), $configCache->get('system', 'basepath'));
-       }
-
-       /**
-        * Test the loadConfigFiles() method with a wrong local.config.php
-        * @expectedException \Exception
-        * @expectedExceptionMessageRegExp /Error loading config file \w+/
-        */
-       public function testLoadConfigWrong()
-       {
-               $this->delConfigFile('local.config.php');
-
-               vfsStream::newFile('local.config.php')
-                       ->at($this->root->getChild('config'))
-                       ->setContent('<?php return true;');
-
-               $configCacheLoader = new ConfigCacheLoader($this->root->url());
-               $configCache = new ConfigCache();
-
-               $configCacheLoader->loadConfigFiles($configCache);
-       }
-
-       /**
-        * Test the loadConfigFiles() method with a local.config.php file
-        */
-       public function testLoadConfigFilesLocal()
-       {
-               $this->delConfigFile('local.config.php');
-
-               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       'datasets' . DIRECTORY_SEPARATOR .
-                       'config' . DIRECTORY_SEPARATOR .
-                       'local.config.php';
-
-               vfsStream::newFile('local.config.php')
-                       ->at($this->root->getChild('config'))
-                       ->setContent(file_get_contents($file));
-
-               $configCacheLoader = new ConfigCacheLoader($this->root->url());
-               $configCache = new ConfigCache();
-
-               $configCacheLoader->loadConfigFiles($configCache);
-
-               $this->assertEquals('testhost', $configCache->get('database', 'hostname'));
-               $this->assertEquals('testuser', $configCache->get('database', 'username'));
-               $this->assertEquals('testpw', $configCache->get('database', 'password'));
-               $this->assertEquals('testdb', $configCache->get('database', 'database'));
-
-               $this->assertEquals('admin@test.it', $configCache->get('config', 'admin_email'));
-               $this->assertEquals('Friendica Social Network', $configCache->get('config', 'sitename'));
-       }
-
-       /**
-        * Test the loadConfigFile() method with a local.ini.php file
-        */
-       public function testLoadConfigFilesINI()
-       {
-               $this->delConfigFile('local.config.php');
-
-               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       'datasets' . DIRECTORY_SEPARATOR .
-                       'config' . DIRECTORY_SEPARATOR .
-                       'local.ini.php';
-
-               vfsStream::newFile('local.ini.php')
-                       ->at($this->root->getChild('config'))
-                       ->setContent(file_get_contents($file));
-
-               $configCacheLoader = new ConfigCacheLoader($this->root->url());
-               $configCache = new ConfigCache();
-
-               $configCacheLoader->loadConfigFiles($configCache);
-
-               $this->assertEquals('testhost', $configCache->get('database', 'hostname'));
-               $this->assertEquals('testuser', $configCache->get('database', 'username'));
-               $this->assertEquals('testpw', $configCache->get('database', 'password'));
-               $this->assertEquals('testdb', $configCache->get('database', 'database'));
-
-               $this->assertEquals('admin@test.it', $configCache->get('config', 'admin_email'));
-       }
-
-       /**
-        * Test the loadConfigFile() method with a .htconfig.php file
-        */
-       public function testLoadConfigFilesHtconfig()
-       {
-               $this->delConfigFile('local.config.php');
-
-               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       'datasets' . DIRECTORY_SEPARATOR .
-                       'config' . DIRECTORY_SEPARATOR .
-                       '.htconfig.test.php';
-
-               vfsStream::newFile('.htconfig.php')
-                       ->at($this->root)
-                       ->setContent(file_get_contents($file));
-
-               $configCacheLoader = new ConfigCacheLoader($this->root->url());
-               $configCache = new ConfigCache();
-
-               $configCacheLoader->loadConfigFiles($configCache);
-
-               $this->assertEquals('testhost', $configCache->get('database', 'hostname'));
-               $this->assertEquals('testuser', $configCache->get('database', 'username'));
-               $this->assertEquals('testpw', $configCache->get('database', 'password'));
-               $this->assertEquals('testdb', $configCache->get('database', 'database'));
-
-               $this->assertEquals('/var/run/friendica.pid', $configCache->get('system', 'pidfile'));
-               $this->assertEquals('Europe/Berlin', $configCache->get('system', 'default_timezone'));
-               $this->assertEquals('fr', $configCache->get('system', 'language'));
-       }
-
-       public function testLoadAddonConfig()
-       {
-               $structure = [
-                       'addon' => [
-                               'test' => [
-                                       'config' => [],
-                               ],
-                       ],
-               ];
-
-               vfsStream::create($structure, $this->root);
-
-               $file = dirname(__DIR__) . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       '..' . DIRECTORY_SEPARATOR .
-                       'datasets' . DIRECTORY_SEPARATOR .
-                       'config' . DIRECTORY_SEPARATOR .
-                       'local.config.php';
-
-               vfsStream::newFile('test.config.php')
-                       ->at($this->root->getChild('addon')->getChild('test')->getChild('config'))
-                       ->setContent(file_get_contents($file));
-
-               $configCacheLoader = new ConfigCacheLoader($this->root->url());
-
-               $conf = $configCacheLoader->loadAddonConfig('test');
-
-               $this->assertEquals('testhost', $conf['database']['hostname']);
-               $this->assertEquals('testuser', $conf['database']['username']);
-               $this->assertEquals('testpw', $conf['database']['password']);
-               $this->assertEquals('testdb', $conf['database']['database']);
-
-               $this->assertEquals('admin@test.it', $conf['config']['admin_email']);
-       }
-}
diff --git a/tests/src/Core/Config/ConfigCacheTest.php b/tests/src/Core/Config/ConfigCacheTest.php
deleted file mode 100644 (file)
index 25ea603..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-<?php
-
-namespace Friendica\Test\Core\Config;
-
-use Friendica\Core\Config\ConfigCache;
-use Friendica\Test\MockedTest;
-
-class ConfigCacheTest extends MockedTest
-{
-       public function dataTests()
-       {
-               return [
-                       'normal' => [
-                               'data' => [
-                                       'system' => [
-                                               'test' => 'it',
-                                               'boolTrue' => true,
-                                               'boolFalse' => false,
-                                               'int' => 235,
-                                               'dec' => 2.456,
-                                               'array' => ['1', 2, '3', true, false],
-                                       ],
-                                       'config' => [
-                                               'a' => 'value',
-                                       ],
-                               ]
-                       ]
-               ];
-       }
-
-       private function assertConfigValues($data, ConfigCache $configCache, $uid = null)
-       {
-               foreach ($data as $cat => $values) {
-                       foreach ($values as $key => $value) {
-                               if (isset($uid)) {
-                                       $this->assertEquals($data[$cat][$key], $configCache->getP($uid, $cat, $key));
-                               } else {
-                                       $this->assertEquals($data[$cat][$key], $configCache->get($cat, $key));
-                               }
-                       }
-               }
-       }
-
-       /**
-        * Test the loadConfigArray() method without override
-        * @dataProvider dataTests
-        */
-       public function testLoadConfigArray($data)
-       {
-               $configCache = new ConfigCache();
-               $configCache->loadConfigArray($data);
-
-               $this->assertConfigValues($data, $configCache);
-       }
-
-       /**
-        * Test the loadConfigArray() method with overrides
-        * @dataProvider dataTests
-        */
-       public function testLoadConfigArrayOverride($data)
-       {
-               $override = [
-                       'system' => [
-                               'test' => 'not',
-                               'boolTrue' => false,
-                       ]
-               ];
-
-               $configCache = new ConfigCache();
-               $configCache->loadConfigArray($data);
-               $configCache->loadConfigArray($override);
-
-               $this->assertConfigValues($data, $configCache);
-
-               // override the value
-               $configCache->loadConfigArray($override, true);
-
-               $this->assertEquals($override['system']['test'], $configCache->get('system', 'test'));
-               $this->assertEquals($override['system']['boolTrue'], $configCache->get('system', 'boolTrue'));
-       }
-
-       /**
-        * Test the getAll() method
-        * @dataProvider dataTests
-        */
-       public function testGetAll($data)
-       {
-               $configCache = new ConfigCache();
-               $configCache->loadConfigArray($data);
-
-               $all = $configCache->getAll();
-
-               $this->assertContains($data['system'], $all);
-
-               // config values are stored directly in the array base
-               $this->assertEquals($data['config']['a'], $all['a']);
-       }
-
-       /**
-        * Test the set() and get() method
-        * @dataProvider dataTests
-        */
-       public function testSetGet($data)
-       {
-               $configCache = new ConfigCache();
-
-               foreach ($data as $cat => $values) {
-                       foreach ($values as $key => $value) {
-                               $configCache->set($cat, $key, $value);
-                       }
-               }
-
-               $this->assertConfigValues($data, $configCache);
-       }
-
-       /**
-        * Test the delete() method
-        * @dataProvider dataTests
-        */
-       public function testDelete($data)
-       {
-               $configCache = new ConfigCache($data);
-
-               foreach ($data as $cat => $values) {
-                       foreach ($values as $key => $value) {
-                               $configCache->delete($cat, $key);
-                       }
-               }
-
-               $this->assertEmpty($configCache->getAll());
-       }
-
-       /**
-        * Test the setP() and getP() methods
-        * @dataProvider dataTests
-        */
-       public function testSetGetP($data)
-       {
-               $configCache = new ConfigCache();
-               $uid = 345;
-
-               foreach ($data as $cat => $values) {
-                       foreach ($values as $key => $value) {
-                               $configCache->setP($uid, $cat, $key, $value);
-                       }
-               }
-
-               $this->assertConfigValues($data, $configCache, $uid);
-       }
-
-
-       /**
-        * Test the deleteP() method
-        * @dataProvider dataTests
-        */
-       public function testDeleteP($data)
-       {
-               $configCache = new ConfigCache();
-               $uid = 345;
-
-               foreach ($data as $cat => $values) {
-                       foreach ($values as $key => $value) {
-                               $configCache->setP($uid, $cat, $key, $value);
-                       }
-               }
-
-               foreach ($data as $cat => $values) {
-                       foreach ($values as $key => $value) {
-                               $configCache->deleteP($uid, $cat, $key);
-                       }
-               }
-
-               $this->assertEmpty($configCache->getAll());
-       }
-}
diff --git a/tests/src/Core/Config/ConfigurationTest.php b/tests/src/Core/Config/ConfigurationTest.php
new file mode 100644 (file)
index 0000000..2e4fcd4
--- /dev/null
@@ -0,0 +1,276 @@
+<?php
+
+namespace Friendica\Test\Core\Config;
+
+use Friendica\Core\Config\Adapter\IConfigAdapter;
+use Friendica\Core\Config\Cache\ConfigCache;
+use Friendica\Core\Config\Cache\IConfigCache;
+use Friendica\Core\Config\Configuration;
+use Friendica\Test\MockedTest;
+
+class ConfigurationTest extends MockedTest
+{
+       public function dataTests()
+       {
+               return [
+                       'string'       => ['data' => 'it'],
+                       'boolTrue'     => ['data' => true],
+                       'boolFalse'    => ['data' => false],
+                       'integer'      => ['data' => 235],
+                       'decimal'      => ['data' => 2.456],
+                       'array'        => ['data' => ['1', 2, '3', true, false]],
+                       'boolIntTrue'  => ['data' => 1],
+                       'boolIntFalse' => ['Data' => 0],
+               ];
+       }
+
+       /**
+        * Test the configuration initialization
+        */
+       public function testSetUp()
+       {
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(false)->once();
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               $this->assertInstanceOf(IConfigCache::class, $configuration->getCache());
+       }
+
+       /**
+        * Test the configuration load() method
+        */
+       public function testCacheLoad()
+       {
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(3);
+               // constructor loading
+               $configAdapter->shouldReceive('load')->andReturn([])->once();
+               // expected loading
+               $configAdapter->shouldReceive('load')->andReturn(['testing' => ['test' => 'it']])->once();
+               $configAdapter->shouldReceive('isLoaded')->with('testing', 'test')->andReturn(true)->once();
+
+               $configuration = new Configuration($configCache, $configAdapter);
+               $configuration->load('testing');
+
+               $this->assertEquals('it', $configuration->get('testing', 'test'));
+               $this->assertEquals('it', $configuration->getCache()->get('testing', 'test'));
+       }
+
+       /**
+        * Test the configuration load() method with overwrite
+        */
+       public function testCacheLoadDouble()
+       {
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(5);
+               // constructor loading
+               $configAdapter->shouldReceive('load')->andReturn([])->once();
+               // expected loading
+               $configAdapter->shouldReceive('load')->andReturn(['testing' => ['test' => 'it']])->once();
+               $configAdapter->shouldReceive('isLoaded')->with('testing', 'test')->andReturn(true)->twice();
+               // expected next loading
+               $configAdapter->shouldReceive('load')->andReturn(['testing' => ['test' => 'again']])->once();
+
+               $configuration = new Configuration($configCache, $configAdapter);
+               $configuration->load('testing');
+
+               $this->assertEquals('it', $configuration->get('testing', 'test'));
+               $this->assertEquals('it', $configuration->getCache()->get('testing', 'test'));
+
+               $configuration->load('testing');
+
+               $this->assertEquals('again', $configuration->get('testing', 'test'));
+               $this->assertEquals('again', $configuration->getCache()->get('testing', 'test'));
+       }
+
+       /**
+        * Test the configuration get() and set() methods without adapter
+        * @dataProvider dataTests
+        */
+       public function testSetGetWithoutDB($data)
+       {
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(false)->times(3);
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               $this->assertTrue($configuration->set('test', 'it', $data));
+
+               $this->assertEquals($data, $configuration->get('test', 'it'));
+               $this->assertEquals($data, $configuration->getCache()->get('test', 'it'));
+       }
+
+       /**
+        * Test the configuration get() and set() methods with adapter
+        * @dataProvider dataTests
+        */
+       public function testSetGetWithDB($data)
+       {
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(3);
+               // constructor loading
+               $configAdapter->shouldReceive('load')->andReturn([])->once();
+               $configAdapter->shouldReceive('isLoaded')->with('test', 'it')->andReturn(true)->once();
+               $configAdapter->shouldReceive('set')->with('test', 'it', $data)->andReturn(true)->once();
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               $this->assertTrue($configuration->set('test', 'it', $data));
+
+               $this->assertEquals($data, $configuration->get('test', 'it'));
+               $this->assertEquals($data, $configuration->getCache()->get('test', 'it'));
+       }
+
+       /**
+        * Test the configuration get() method with wrong value and no db
+        */
+       public function testGetWrongWithoutDB()
+       {
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(false)->times(4);
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               // without refresh
+               $this->assertNull($configuration->get('test', 'it'));
+
+               /// beware that the cache returns '!<unset>!' and not null for a non existing value
+               $this->assertEquals('!<unset>!', $configuration->getCache()->get('test', 'it'));
+
+               // with default value
+               $this->assertEquals('default', $configuration->get('test', 'it', 'default'));
+
+               // with default value and refresh
+               $this->assertEquals('default', $configuration->get('test', 'it', 'default', true));
+       }
+
+       /**
+        * Test the configuration get() method with refresh
+        * @dataProvider dataTests
+        */
+       public function testGetWithRefresh($data)
+       {
+               $configCache = new ConfigCache(['test' => ['it' => 'now']]);
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(4);
+               // constructor loading
+               $configAdapter->shouldReceive('load')->andReturn([])->once();
+               $configAdapter->shouldReceive('isLoaded')->with('test', 'it')->andReturn(true)->twice();
+               $configAdapter->shouldReceive('get')->with('test', 'it')->andReturn($data)->once();
+               $configAdapter->shouldReceive('isLoaded')->with('test', 'not')->andReturn(false)->once();
+               $configAdapter->shouldReceive('get')->with('test', 'not')->andReturn('!<unset>!')->once();
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               // without refresh
+               $this->assertEquals('now', $configuration->get('test', 'it'));
+               $this->assertEquals('now', $configuration->getCache()->get('test', 'it'));
+
+               // with refresh
+               $this->assertEquals($data, $configuration->get('test', 'it', null, true));
+               $this->assertEquals($data, $configuration->getCache()->get('test', 'it'));
+
+               // without refresh and wrong value and default
+               $this->assertEquals('default', $configuration->get('test', 'not', 'default'));
+               $this->assertEquals('!<unset>!', $configuration->getCache()->get('test', 'not'));
+       }
+
+       /**
+        * Test the configuration get() method with different isLoaded settings
+        * @dataProvider dataTests
+        */
+       public function testGetWithoutLoaded($data)
+       {
+               $configCache = new ConfigCache(['test' => ['it' => 'now']]);
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(4);
+               // constructor loading
+               $configAdapter->shouldReceive('load')->andReturn([])->once();
+
+               $configAdapter->shouldReceive('isLoaded')->with('test', 'it')->andReturn(false)->once();
+               $configAdapter->shouldReceive('get')->with('test', 'it')->andReturn('!<unset>!')->once();
+
+               $configAdapter->shouldReceive('isLoaded')->with('test', 'it')->andReturn(false)->once();
+               $configAdapter->shouldReceive('get')->with('test', 'it')->andReturn($data)->once();
+
+               $configAdapter->shouldReceive('isLoaded')->with('test', 'it')->andReturn(true)->once();
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               // first run is not loaded and no data is found in the DB
+               $this->assertEquals('now', $configuration->get('test', 'it'));
+               $this->assertEquals('now', $configuration->getCache()->get('test', 'it'));
+
+               // second run is not loaded, but now data is found in the db (overwrote cache)
+               $this->assertEquals($data, $configuration->get('test', 'it'));
+               $this->assertEquals($data, $configuration->getCache()->get('test', 'it'));
+
+               // third run is loaded and therefore cache is used
+               $this->assertEquals($data, $configuration->get('test', 'it'));
+               $this->assertEquals($data, $configuration->getCache()->get('test', 'it'));
+       }
+
+       /**
+        * Test the configuration delete() method without adapter
+        * @dataProvider dataTests
+        */
+       public function testDeleteWithoutDB($data)
+       {
+               $configCache = new ConfigCache(['test' => ['it' => $data]]);
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(false)->times(4);
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               $this->assertEquals($data, $configuration->get('test', 'it'));
+               $this->assertEquals($data, $configuration->getCache()->get('test', 'it'));
+
+               $this->assertTrue($configuration->delete('test', 'it'));
+               $this->assertNull($configuration->get('test', 'it'));
+               $this->assertEquals('!<unset>!', $configuration->getCache()->get('test', 'it'));
+
+               $this->assertEmpty($configuration->getCache()->getAll());
+       }
+
+       /**
+        * Test the configuration delete() method with adapter
+        */
+       public function testDeleteWithDB()
+       {
+               $configCache = new ConfigCache(['test' => ['it' => 'now', 'quarter' => 'true']]);
+               $configAdapter = \Mockery::mock(IConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(6);
+               // constructor loading
+               $configAdapter->shouldReceive('load')->andReturn([])->once();
+               $configAdapter->shouldReceive('isLoaded')->with('test', 'it')->andReturn(true)->once();
+
+               $configAdapter->shouldReceive('delete')->with('test', 'it')->andReturn(false)->once();
+
+               $configAdapter->shouldReceive('delete')->with('test', 'second')->andReturn(true)->once();
+               $configAdapter->shouldReceive('delete')->with('test', 'third')->andReturn(false)->once();
+               $configAdapter->shouldReceive('delete')->with('test', 'quarter')->andReturn(true)->once();
+
+               $configuration = new Configuration($configCache, $configAdapter);
+
+               $this->assertEquals('now', $configuration->get('test', 'it'));
+               $this->assertEquals('now', $configuration->getCache()->get('test', 'it'));
+
+               // delete from cache only
+               $this->assertTrue($configuration->delete('test', 'it'));
+               // delete from db only
+               $this->assertTrue($configuration->delete('test', 'second'));
+               // no delete
+               $this->assertFalse($configuration->delete('test', 'third'));
+               // delete both
+               $this->assertTrue($configuration->delete('test', 'quarter'));
+
+               $this->assertEmpty($configuration->getCache()->getAll());
+       }
+}
diff --git a/tests/src/Core/Config/PConfigurationTest.php b/tests/src/Core/Config/PConfigurationTest.php
new file mode 100644 (file)
index 0000000..0259944
--- /dev/null
@@ -0,0 +1,247 @@
+<?php
+
+namespace Friendica\Test\Core\Config;
+
+use Friendica\Core\Config\Adapter\IPConfigAdapter;
+use Friendica\Core\Config\Cache\ConfigCache;
+use Friendica\Core\Config\PConfiguration;
+use Friendica\Test\MockedTest;
+
+class PConfigurationTest extends MockedTest
+{
+       public function dataTests()
+       {
+               return [
+                       'string'       => ['data' => 'it'],
+                       'boolTrue'     => ['data' => true],
+                       'boolFalse'    => ['data' => false],
+                       'integer'      => ['data' => 235],
+                       'decimal'      => ['data' => 2.456],
+                       'array'        => ['data' => ['1', 2, '3', true, false]],
+                       'boolIntTrue'  => ['data' => 1],
+                       'boolIntFalse' => ['Data' => 0],
+               ];
+       }
+
+       /**
+        * Test the configuration load() method
+        */
+       public function testCacheLoad()
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->twice();
+               // expected loading
+               $configAdapter->shouldReceive('load')
+                       ->with($uid, 'testing')
+                       ->andReturn(['testing' => ['test' => 'it']])
+                       ->once();
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'testing', 'test')->andReturn(true)->once();
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+               $configuration->load($uid, 'testing');
+
+               $this->assertEquals('it', $configuration->get($uid, 'testing', 'test'));
+       }
+
+       /**
+        * Test the configuration load() method with overwrite
+        */
+       public function testCacheLoadDouble()
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(4);
+               // expected loading
+               $configAdapter->shouldReceive('load')->with($uid, 'testing')->andReturn(['testing' => ['test' => 'it']])->once();
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'testing', 'test')->andReturn(true)->twice();
+               // expected next loading
+               $configAdapter->shouldReceive('load')->andReturn(['testing' => ['test' => 'again']])->once();
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+               $configuration->load($uid, 'testing');
+
+               $this->assertEquals('it', $configuration->get($uid, 'testing', 'test'));
+
+               $configuration->load($uid, 'testing');
+
+               $this->assertEquals('again', $configuration->get($uid, 'testing', 'test'));
+       }
+
+       /**
+        * Test the configuration get() and set() methods without adapter
+        * @dataProvider dataTests
+        */
+       public function testSetGetWithoutDB($data)
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(false)->times(2);
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+
+               $this->assertTrue($configuration->set($uid, 'test', 'it', $data));
+
+               $this->assertEquals($data, $configuration->get($uid, 'test', 'it'));
+       }
+
+       /**
+        * Test the configuration get() and set() methods with adapter
+        * @dataProvider dataTests
+        */
+       public function testSetGetWithDB($data)
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(2);
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'it')->andReturn(true)->once();
+               $configAdapter->shouldReceive('set')->with($uid, 'test', 'it', $data)->andReturn(true)->once();
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+
+               $this->assertTrue($configuration->set($uid, 'test', 'it', $data));
+
+               $this->assertEquals($data, $configuration->get($uid, 'test', 'it'));
+       }
+
+       /**
+        * Test the configuration get() method with wrong value and no db
+        */
+       public function testGetWrongWithoutDB()
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(false)->times(3);
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+
+               // without refresh
+               $this->assertNull($configuration->get($uid, 'test', 'it'));
+
+               // with default value
+               $this->assertEquals('default', $configuration->get($uid, 'test', 'it', 'default'));
+
+               // with default value and refresh
+               $this->assertEquals('default', $configuration->get($uid, 'test', 'it', 'default', true));
+       }
+
+       /**
+        * Test the configuration get() method with refresh
+        * @dataProvider dataTests
+        */
+       public function testGetWithRefresh($data)
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(4);
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'it')->andReturn(false)->once();
+               $configAdapter->shouldReceive('get')->with($uid, 'test', 'it')->andReturn('now')->once();
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'it')->andReturn(true)->twice();
+               $configAdapter->shouldReceive('get')->with($uid, 'test', 'it')->andReturn($data)->once();
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'not')->andReturn(false)->once();
+               $configAdapter->shouldReceive('get')->with($uid, 'test', 'not')->andReturn('!<unset>!')->once();
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+
+               // without refresh
+               $this->assertEquals('now', $configuration->get($uid, 'test', 'it'));
+               // use the cache again
+               $this->assertEquals('now', $configuration->get($uid, 'test', 'it'));
+
+               // with refresh (and load the second value out of the db)
+               $this->assertEquals($data, $configuration->get($uid, 'test', 'it', null, true));
+
+               // without refresh and wrong value and default
+               $this->assertEquals('default', $configuration->get($uid, 'test', 'not', 'default'));
+       }
+
+       /**
+        * Test the configuration get() method with different isLoaded settings
+        * @dataProvider dataTests
+        */
+       public function testGetWithoutLoaded($data)
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(3);
+
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'it')->andReturn(false)->once();
+               $configAdapter->shouldReceive('get')->with($uid, 'test', 'it')->andReturn('!<unset>!')->once();
+
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'it')->andReturn(false)->once();
+               $configAdapter->shouldReceive('get')->with($uid, 'test', 'it')->andReturn($data)->once();
+
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'it')->andReturn(true)->once();
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+
+               // first run is not loaded and no data is found in the DB
+               $this->assertNull($configuration->get($uid, 'test', 'it'));
+
+               // second run is not loaded, but now data is found in the db (overwrote cache)
+               $this->assertEquals($data, $configuration->get($uid,'test', 'it'));
+
+               // third run is loaded and therefore cache is used
+               $this->assertEquals($data, $configuration->get($uid,'test', 'it'));
+       }
+
+       /**
+        * Test the configuration delete() method without adapter
+        * @dataProvider dataTests
+        */
+       public function testDeleteWithoutDB($data)
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(false)->times(4);
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+
+               $this->assertTrue($configuration->set($uid, 'test', 'it', $data));
+               $this->assertEquals($data, $configuration->get($uid, 'test', 'it'));
+
+               $this->assertTrue($configuration->delete($uid, 'test', 'it'));
+               $this->assertNull($configuration->get($uid, 'test', 'it'));
+       }
+
+       /**
+        * Test the configuration delete() method with adapter
+        */
+       public function testDeleteWithDB()
+       {
+               $uid = 234;
+               $configCache = new ConfigCache();
+               $configAdapter = \Mockery::mock(IPConfigAdapter::class);
+               $configAdapter->shouldReceive('isConnected')->andReturn(true)->times(6);
+               $configAdapter->shouldReceive('set')->with($uid, 'test', 'it', 'now')->andReturn(false)->once();
+               $configAdapter->shouldReceive('isLoaded')->with($uid, 'test', 'it')->andReturn(true)->once();
+
+               $configAdapter->shouldReceive('delete')->with($uid, 'test', 'it')->andReturn(false)->once();
+
+               $configAdapter->shouldReceive('delete')->with($uid, 'test', 'second')->andReturn(true)->once();
+               $configAdapter->shouldReceive('delete')->with($uid, 'test', 'third')->andReturn(false)->once();
+               $configAdapter->shouldReceive('delete')->with($uid, 'test', 'quarter')->andReturn(true)->once();
+
+               $configuration = new PConfiguration($configCache, $configAdapter);
+
+               $this->assertFalse($configuration->set($uid, 'test', 'it', 'now'));
+               $this->assertEquals('now', $configuration->get($uid, 'test', 'it'));
+
+               // delete from set
+               $this->assertTrue($configuration->delete($uid, 'test', 'it'));
+               // delete from db only
+               $this->assertTrue($configuration->delete($uid, 'test', 'second'));
+               // no delete
+               $this->assertFalse($configuration->delete($uid, 'test', 'third'));
+               // delete both
+               $this->assertTrue($configuration->delete($uid, 'test', 'quarter'));
+       }
+}
index 41ccce0b28827410ebe67a6695d9788032af77b1..73b6835fb5cce41a46731c4a800079a978beab1d 100644 (file)
@@ -52,9 +52,9 @@ class AutomaticInstallationConsoleTest extends ConsoleTest
                $this->db_user = getenv('MYSQL_USERNAME') . getenv('MYSQL_USER');
                $this->db_pass = getenv('MYSQL_PASSWORD');
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('config', 'php_path', NULL)
+                       ->with('config', 'php_path')
                        ->andReturn(false);
 
                $this->mockL10nT();
index 505c4f794dc58db64f1299d673798e2cb7c14a70..579b28e026b4a94ff1623c5e4710a65472d27c00 100644 (file)
@@ -32,14 +32,14 @@ class ConfigConsoleTest extends ConsoleTest
        }
 
        function testSetGetKeyValue() {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('set')
                        ->with('config', 'test', 'now')
                        ->andReturn(true)
                        ->once();
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('config', 'test', NULL)
+                       ->with('config', 'test')
                        ->andReturn('now')
                        ->twice();
 
@@ -50,9 +50,9 @@ class ConfigConsoleTest extends ConsoleTest
                $txt = $this->dumpExecute($console);
                $this->assertEquals("config.test <= now\n", $txt);
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('config', 'test', null)
+                       ->with('config', 'test')
                        ->andReturn('now')
                        ->once();
 
@@ -62,9 +62,9 @@ class ConfigConsoleTest extends ConsoleTest
                $txt = $this->dumpExecute($console);
                $this->assertEquals("config.test => now\n", $txt);
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('config', 'test', null)
+                       ->with('config', 'test')
                        ->andReturn(null)
                        ->once();
 
@@ -77,9 +77,9 @@ class ConfigConsoleTest extends ConsoleTest
 
        function testSetArrayValue() {
                $testArray = [1, 2, 3];
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('config', 'test', null)
+                       ->with('config', 'test')
                        ->andReturn($testArray)
                        ->once();
 
@@ -105,9 +105,9 @@ class ConfigConsoleTest extends ConsoleTest
        }
 
        function testVerbose() {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('test', 'it', null)
+                       ->with('test', 'it')
                        ->andReturn('now')
                        ->once();
                $console = new Config($this->consoleArgv);
@@ -133,14 +133,14 @@ CONF;
        }
 
        function testUnableToSet() {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('set')
                        ->with('test', 'it', 'now')
                        ->andReturn(false)
                        ->once();
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('test', 'it', NULL)
+                       ->with('test', 'it')
                        ->andReturn(NULL)
                        ->once();
                $console = new Config();
index 905d214cac2b6282ceb298c5c5a391d3073d0587..4f7acc9c4229f62223b42cbdfca7121e46bffc81 100644 (file)
@@ -29,8 +29,7 @@ abstract class ConsoleTest extends MockedTest
                Intercept::setUp();
 
                $this->setUpVfsDir();
-               $configMock = \Mockery::mock('Friendica\Core\Config\ConfigCache');
-               $this->mockApp($this->root, $configMock);
+               $this->mockApp($this->root);
        }
 
        /**
index f7f8f5c7d494834c2e4734d1a6e6c4768217ef52..c1a003bade6d0ba374ca5b61056112afbf404b3e 100644 (file)
@@ -45,6 +45,8 @@ class InstallerTest extends MockedTest
                $this->mockL10nT('Error: POSIX PHP module required but not installed.', 1);
                $this->mockL10nT('JSON PHP module', 1);
                $this->mockL10nT('Error: JSON PHP module required but not installed.', 1);
+               $this->mockL10nT('File Information PHP module', 1);
+               $this->mockL10nT('Error: File Information PHP module required but not installed.', 1);
        }
 
        private function assertCheckExist($position, $title, $help, $status, $required, $assertionArray)
@@ -192,6 +194,17 @@ class InstallerTest extends MockedTest
                        true,
                        $install->getChecks());
 
+               $this->mockFunctionL10TCalls();
+               $this->setFunctions(['finfo_open' => false]);
+               $install = new Installer();
+               $this->assertFalse($install->checkFunctions());
+               $this->assertCheckExist(10,
+                       'File Information PHP module',
+                       'Error: File Information PHP module required but not installed.',
+                       false,
+                       true,
+                       $install->getChecks());
+
                $this->mockFunctionL10TCalls();
                $this->setFunctions([
                        'curl_init' => true,
@@ -200,7 +213,8 @@ class InstallerTest extends MockedTest
                        'mb_strlen' => true,
                        'iconv_strlen' => true,
                        'posix_kill' => true,
-                       'json_encode' => true
+                       'json_encode' => true,
+                       'finfo_open' => true,
                ]);
                $install = new Installer();
                $this->assertTrue($install->checkFunctions());
index ab8e1b2f2efc1f60171c22b021b908e4f33bcde4..6dc170e51429bdfc659e8979b5e36cdc0e239d86 100644 (file)
@@ -27,8 +27,7 @@ abstract class LockTest extends MockedTest
        {
                // Reusable App object
                $this->setUpVfsDir();
-               $configMock = \Mockery::mock('Friendica\Core\Config\ConfigCache');
-               $this->mockApp($this->root, $configMock);
+               $this->mockApp($this->root);
                $this->app
                        ->shouldReceive('getHostname')
                        ->andReturn('friendica.local');
index 46f29f52e2f9da8a758f2d3a68e9e063bfa390d6..ad20f5bfdb79dbe31ee29ed282b8836af0084f14 100644 (file)
@@ -13,14 +13,14 @@ class MemcacheCacheLockDriverTest extends LockTest
 {
        protected function getInstance()
        {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'memcache_host', NULL)
+                       ->with('system', 'memcache_host')
                        ->andReturn('localhost');
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'memcache_port', NULL)
+                       ->with('system', 'memcache_port')
                        ->andReturn(11211);
 
                return new CacheLockDriver(CacheDriverFactory::create('memcache'));
index 72271c98b9ef98d2c87dd72998e0e687e39156bf..a5bdeaedb8a940492420ae8066b52f4bea062a43 100644 (file)
@@ -13,9 +13,9 @@ class MemcachedCacheLockDriverTest extends LockTest
 {
        protected function getInstance()
        {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'memcached_hosts', NULL)
+                       ->with('system', 'memcached_hosts')
                        ->andReturn([0 => 'localhost, 11211']);
 
                return new CacheLockDriver(CacheDriverFactory::create('memcached'));
index 0c9deea16e3ba9124d43e526f4fa0d7f8e53a3fd..5f047bc66418124e5005bb0560a25311d62f8f18 100644 (file)
@@ -13,14 +13,14 @@ class RedisCacheLockDriverTest extends LockTest
 {
        protected function getInstance()
        {
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'redis_host', NULL)
+                       ->with('system', 'redis_host')
                        ->andReturn('localhost');
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'redis_port', NULL)
+                       ->with('system', 'redis_port')
                        ->andReturn(null);
 
                return new CacheLockDriver(CacheDriverFactory::create('redis'));
index c2b94145725187d7e951d644903b15e4cdf06f3f..a37fbffbed24c86a7076fd060216e50b751a84cd 100644 (file)
@@ -12,9 +12,9 @@ class SemaphoreLockDriverTest extends LockTest
 
                $this->app->shouldReceive('getHostname')->andReturn('friendica.local');
 
-               $this->configCache
+               $this->configMock
                        ->shouldReceive('get')
-                       ->with('system', 'temppath', NULL)
+                       ->with('system', 'temppath')
                        ->andReturn('/tmp/');
        }
 
index f2a5cc5558f7dcd853a377d2065f905fbe245331..e8b9c68b19c3aff0f40e9457c923931ab4bf4e4a 100644 (file)
@@ -3,6 +3,7 @@ namespace Friendica\Test\Database;
 
 use Friendica\App;
 use Friendica\Core\Config;
+use Friendica\Core\Config\Cache;
 use Friendica\Database\DBA;
 use Friendica\Factory;
 use Friendica\Test\DatabaseTest;
@@ -13,11 +14,14 @@ class DBATest extends DatabaseTest
        public function setUp()
        {
                $basedir = BasePath::create(dirname(__DIR__) . '/../../');
-               $configLoader = new Config\ConfigCacheLoader($basedir);
-               $config = Factory\ConfigFactory::createCache($configLoader);
+               $configLoader = new Cache\ConfigCacheLoader($basedir);
+               $configCache = Factory\ConfigFactory::createCache($configLoader);
+               $profiler = Factory\ProfilerFactory::create($configCache);
+               Factory\DBFactory::init($configCache, $profiler, $_SERVER);
+               $config = Factory\ConfigFactory::createConfig($configCache);
+               Factory\ConfigFactory::createPConfig($configCache);
                $logger = Factory\LoggerFactory::create('test', $config);
-               $this->app = new App($config, $logger, false);
-               $this->logOutput = FActory\LoggerFactory::enableTest($this->app->getLogger());
+               $this->app = new App($config, $logger, $profiler, false);
 
                parent::setUp();
 
index bc50a0a691aa43cb4cf2121196767be1aa403f60..325ad4e5e7f18571358e7403473b265c0d437129 100644 (file)
@@ -3,7 +3,7 @@
 namespace Friendica\Test\Database;
 
 use Friendica\App;
-use Friendica\Core\Config;
+use Friendica\Core\Config\Cache;
 use Friendica\Database\DBStructure;
 use Friendica\Factory;
 use Friendica\Test\DatabaseTest;
@@ -14,11 +14,14 @@ class DBStructureTest extends DatabaseTest
        public function setUp()
        {
                $basedir = BasePath::create(dirname(__DIR__) . '/../../');
-               $configLoader = new Config\ConfigCacheLoader($basedir);
-               $config = Factory\ConfigFactory::createCache($configLoader);
+               $configLoader = new Cache\ConfigCacheLoader($basedir);
+               $configCache = Factory\ConfigFactory::createCache($configLoader);
+               $profiler = Factory\ProfilerFactory::create($configCache);
+               Factory\DBFactory::init($configCache, $profiler, $_SERVER);
+               $config = Factory\ConfigFactory::createConfig($configCache);
+               Factory\ConfigFactory::createPConfig($configCache);
                $logger = Factory\LoggerFactory::create('test', $config);
-               $this->app = new App($config, $logger, false);
-               $this->logOutput = FActory\LoggerFactory::enableTest($this->app->getLogger());
+               $this->app = new App($config, $logger, $profiler, false);
 
                parent::setUp();
        }
diff --git a/tests/src/Util/ProfilerTest.php b/tests/src/Util/ProfilerTest.php
new file mode 100644 (file)
index 0000000..f242fd4
--- /dev/null
@@ -0,0 +1,181 @@
+<?php
+
+namespace src\Util;
+
+use Friendica\Test\MockedTest;
+use Friendica\Util\Profiler;
+use Mockery\MockInterface;
+use Psr\Log\LoggerInterface;
+
+class ProfilerTest extends MockedTest
+{
+       /**
+        * @var LoggerInterface|MockInterface
+        */
+       private $logger;
+
+       protected function setUp()
+       {
+               parent::setUp();
+
+               $this->logger = \Mockery::mock('Psr\Log\LoggerInterface');
+       }
+
+       /**
+        * Test the Profiler setup
+        */
+       public function testSetUp()
+       {
+               $profiler = new Profiler(true, true);
+       }
+
+       /**
+        * A dataset for different profiling settings
+        * @return array
+        */
+       public function dataPerformance()
+       {
+               return [
+                       'database' => [
+                               'timestamp' => time(),
+                               'name' => 'database',
+                               'functions' => ['test', 'it'],
+                       ],
+                       'database_write' => [
+                               'timestamp' => time(),
+                               'name' => 'database_write',
+                               'functions' => ['test', 'it2'],
+                       ],
+                       'cache' => [
+                               'timestamp' => time(),
+                               'name' => 'cache',
+                               'functions' => ['test', 'it3'],
+                       ],
+                       'cache_write' => [
+                               'timestamp' => time(),
+                               'name' => 'cache_write',
+                               'functions' => ['test', 'it4'],
+                       ],
+                       'network' => [
+                               'timestamp' => time(),
+                               'name' => 'network',
+                               'functions' => ['test', 'it5'],
+                       ],
+                       'file' => [
+                               'timestamp' => time(),
+                               'name' => 'file',
+                               'functions' => [],
+                       ],
+                       'rendering' => [
+                               'timestamp' => time(),
+                               'name' => 'rendering',
+                               'functions' => ['test', 'it7'],
+                       ],
+                       'parser' => [
+                               'timestamp' => time(),
+                               'name' => 'parser',
+                               'functions' => ['test', 'it8'],
+                       ],
+                       'marktime' => [
+                               'timestamp' => time(),
+                               'name' => 'parser',
+                               'functions' => ['test'],
+                       ],
+                       // This one isn't set during reset
+                       'unknown' => [
+                               'timestamp' => time(),
+                               'name' => 'unknown',
+                               'functions' => ['test'],
+                       ],
+               ];
+       }
+
+       /**
+        * Test the Profiler savetimestamp
+        * @dataProvider dataPerformance
+        */
+       public function testSaveTimestamp($timestamp, $name, array $functions)
+       {
+               $profiler = new Profiler(true, true);
+
+               foreach ($functions as $function) {
+                       $profiler->saveTimestamp($timestamp, $name, $function);
+               }
+
+               $this->assertGreaterThanOrEqual(0, $profiler->get($name));
+       }
+
+       /**
+        * Test the Profiler reset
+        * @dataProvider dataPerformance
+        */
+       public function testReset($timestamp, $name, array $functions)
+       {
+               $profiler = new Profiler(true, true);
+
+               $profiler->saveTimestamp($timestamp, $name);
+               $profiler->reset();
+
+               $this->assertEquals(0, $profiler->get($name));
+       }
+
+       public function dataBig()
+       {
+               return [
+                       'big' => [
+                               'data' => [
+                                       'database' => [
+                                               'timestamp' => time(),
+                                               'name' => 'database',
+                                               'functions' => ['test', 'it'],
+                                       ],
+                                       'database_write' => [
+                                               'timestamp' => time(),
+                                               'name' => 'database_write',
+                                               'functions' => ['test', 'it2'],
+                                       ],
+                                       'cache' => [
+                                               'timestamp' => time(),
+                                               'name' => 'cache',
+                                               'functions' => ['test', 'it3'],
+                                       ],
+                                       'cache_write' => [
+                                               'timestamp' => time(),
+                                               'name' => 'cache_write',
+                                               'functions' => ['test', 'it4'],
+                                       ],
+                                       'network' => [
+                                               'timestamp' => time(),
+                                               'name' => 'network',
+                                               'functions' => ['test', 'it5'],
+                                       ],
+                               ]
+                       ]
+               ];
+       }
+
+       /**
+        * Test the output of the Profiler
+        * @dataProvider dataBig
+        */
+       public function testSaveLog($data)
+       {
+               $this->logger
+                       ->shouldReceive('info')
+                       ->with('test', \Mockery::any())
+                       ->once();
+               $this->logger
+                       ->shouldReceive('info')
+                       ->once();
+
+               $profiler = new Profiler(true, true);
+
+               foreach ($data as $perf => $items) {
+                       foreach ($items['functions'] as $function) {
+                               $profiler->saveTimestamp($items['timestamp'], $items['name'], $function);
+                       }
+               }
+
+               $profiler->saveLog($this->logger, 'test');
+       }
+}
index 6b0f38a071f9c14ed3db6bf3a16802dc77bea979..afab5d9032e6839f2b615d26c821302c50a704ea 100644 (file)
@@ -90,6 +90,15 @@ span.connector {
   margin-right: 0px;
 }
 
+
+.wall-item-like-expanded,
+.wall-item-dislike-expanded,
+.wall-item-attendyes-expanded,
+.wall-item-attendno-expanded,
+.wall-item-attendmaybe-expanded {
+  margin: 0;
+}
+
 .type-link blockquote, .type-video blockquote {
   margin-left: 0px;
   max-height: 160px;
index f81d7a42352125231972f63e08518ab12525e513..3370d7ccd3a20515e2b1dbed10459756b4fcb103 100644 (file)
@@ -17,25 +17,30 @@ function _resizeIframe(obj, desth) {
 }
 
 function openClose(theID) {
-       if (document.getElementById(theID).style.display == "block") {
-               document.getElementById(theID).style.display = "none"
-       } else {
-               document.getElementById(theID).style.display = "block"
+       var el = document.getElementById(theID);
+       if (el) {
+               if (window.getComputedStyle(el).display === "none") {
+                       openMenu(theID);
+               } else {
+                       closeMenu(theID);
+               }
        }
 }
 
 function openMenu(theID) {
        var el = document.getElementById(theID);
-
        if (el) {
-               el.style.display = "block";
+               if (!el.dataset.display) {
+                       el.dataset.display = 'block';
+               }
+               el.style.display = el.dataset.display;
        }
 }
 
 function closeMenu(theID) {
-       var el = document.getElementById(theID)
-
+       var el = document.getElementById(theID);
        if (el) {
+               el.dataset.display = window.getComputedStyle(el).display;
                el.style.display = "none";
        }
 }
@@ -656,12 +661,14 @@ function preview_comment(id) {
 }
 
 function showHideComments(id) {
-       if ($("#collapsed-comments-" + id).is(":visible")) {
-               $("#collapsed-comments-" + id).hide();
-               $("#hide-comments-" + id).html(window.showMore);
+       if ($('#collapsed-comments-' + id).is(':visible')) {
+               $('#collapsed-comments-' + id).slideUp();
+               $('#hide-comments-' + id).hide();
+               $('#hide-comments-total-' + id).show();
        } else {
-               $("#collapsed-comments-" + id).show();
-               $("#hide-comments-" + id).html(window.showFewer);
+               $('#collapsed-comments-' + id).slideDown();
+               $('#hide-comments-' + id).show();
+               $('#hide-comments-total-' + id).hide();
        }
 }
 
index 525a29c6946d76d34d4ca754f481f0d7cdfec84e..b0a1cf3f0a26b27b0c25f1507c75372d37eb3156 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: \n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-02-10 08:14+0100\n"
+"POT-Creation-Date: 2019-02-15 09:33-0500\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -41,13 +41,13 @@ msgstr ""
 #: mod/photos.php:1126 mod/photos.php:1143 mod/photos.php:1636
 #: mod/profile_photo.php:85 mod/profile_photo.php:94 mod/profile_photo.php:103
 #: mod/profile_photo.php:217 mod/profile_photo.php:305
-#: mod/profile_photo.php:315 src/Model/User.php:735 src/Model/User.php:743
-#: src/Model/User.php:751
+#: mod/profile_photo.php:315 src/Model/User.php:736 src/Model/User.php:744
+#: src/Model/User.php:752
 msgid "Profile Photos"
 msgstr ""
 
 #: include/conversation.php:160 include/conversation.php:297
-#: src/Model/Item.php:3265
+#: src/Model/Item.php:3283
 msgid "event"
 msgstr ""
 
@@ -58,7 +58,7 @@ msgid "status"
 msgstr ""
 
 #: include/conversation.php:168 include/conversation.php:305
-#: mod/subthread.php:88 mod/tagger.php:70 src/Model/Item.php:3267
+#: mod/subthread.php:88 mod/tagger.php:70 src/Model/Item.php:3285
 msgid "photo"
 msgstr ""
 
@@ -119,7 +119,7 @@ msgstr ""
 msgid "Dislikes"
 msgstr ""
 
-#: include/conversation.php:569 include/conversation.php:1506
+#: include/conversation.php:569 include/conversation.php:1505
 #: mod/photos.php:1468
 msgid "Attending"
 msgid_plural "Attending"
@@ -165,9 +165,9 @@ msgstr ""
 msgid "View in context"
 msgstr ""
 
-#: include/conversation.php:721 include/conversation.php:1172
+#: include/conversation.php:721 include/conversation.php:1171
 #: mod/editpost.php:88 mod/message.php:260 mod/message.php:442
-#: mod/photos.php:1440 mod/wallmessage.php:141 src/Object/Post.php:420
+#: mod/photos.php:1440 mod/wallmessage.php:141 src/Object/Post.php:421
 msgid "Please wait"
 msgstr ""
 
@@ -183,43 +183,43 @@ msgstr ""
 msgid "Follow Thread"
 msgstr ""
 
-#: include/conversation.php:894 src/Model/Contact.php:1032
+#: include/conversation.php:894 src/Model/Contact.php:1049
 msgid "View Status"
 msgstr ""
 
 #: include/conversation.php:895 include/conversation.php:911
 #: mod/allfriends.php:72 mod/directory.php:167 mod/dirfind.php:226
-#: mod/match.php:87 mod/suggest.php:87 src/Model/Contact.php:972
-#: src/Model/Contact.php:1025 src/Model/Contact.php:1033
+#: mod/match.php:87 mod/suggest.php:87 src/Model/Contact.php:989
+#: src/Model/Contact.php:1042 src/Model/Contact.php:1050
 msgid "View Profile"
 msgstr ""
 
-#: include/conversation.php:896 src/Model/Contact.php:1034
+#: include/conversation.php:896 src/Model/Contact.php:1051
 msgid "View Photos"
 msgstr ""
 
-#: include/conversation.php:897 src/Model/Contact.php:1026
-#: src/Model/Contact.php:1035
+#: include/conversation.php:897 src/Model/Contact.php:1043
+#: src/Model/Contact.php:1052
 msgid "Network Posts"
 msgstr ""
 
-#: include/conversation.php:898 src/Model/Contact.php:1027
-#: src/Model/Contact.php:1036
+#: include/conversation.php:898 src/Model/Contact.php:1044
+#: src/Model/Contact.php:1053
 msgid "View Contact"
 msgstr ""
 
-#: include/conversation.php:899 src/Model/Contact.php:1038
+#: include/conversation.php:899 src/Model/Contact.php:1055
 msgid "Send PM"
 msgstr ""
 
-#: include/conversation.php:903 src/Model/Contact.php:1039
+#: include/conversation.php:903 src/Model/Contact.php:1056
 msgid "Poke"
 msgstr ""
 
 #: include/conversation.php:908 mod/allfriends.php:73 mod/dirfind.php:227
 #: mod/follow.php:147 mod/match.php:88 mod/suggest.php:88
-#: view/theme/vier/theme.php:201 src/Content/Widget.php:63
-#: src/Model/Contact.php:1028 src/Module/Contact.php:574
+#: src/Content/Widget.php:63 src/Model/Contact.php:1045
+#: src/Module/Contact.php:574 view/theme/vier/theme.php:201
 msgid "Connect/Follow"
 msgstr ""
 
@@ -307,130 +307,130 @@ msgstr ""
 msgid "%s attend maybe."
 msgstr ""
 
-#: include/conversation.php:1111
+#: include/conversation.php:1110
 msgid "Visible to <strong>everybody</strong>"
 msgstr ""
 
-#: include/conversation.php:1112 src/Object/Post.php:882
+#: include/conversation.php:1111 src/Object/Post.php:883
 msgid "Please enter a image/video/audio/webpage URL:"
 msgstr ""
 
-#: include/conversation.php:1113
+#: include/conversation.php:1112
 msgid "Tag term:"
 msgstr ""
 
-#: include/conversation.php:1114 mod/filer.php:35
+#: include/conversation.php:1113 mod/filer.php:35
 msgid "Save to Folder:"
 msgstr ""
 
-#: include/conversation.php:1115
+#: include/conversation.php:1114
 msgid "Where are you right now?"
 msgstr ""
 
-#: include/conversation.php:1116
+#: include/conversation.php:1115
 msgid "Delete item(s)?"
 msgstr ""
 
-#: include/conversation.php:1148
+#: include/conversation.php:1147
 msgid "New Post"
 msgstr ""
 
-#: include/conversation.php:1151
+#: include/conversation.php:1150
 msgid "Share"
 msgstr ""
 
-#: include/conversation.php:1152 mod/editpost.php:74 mod/message.php:258
+#: include/conversation.php:1151 mod/editpost.php:74 mod/message.php:258
 #: mod/message.php:439 mod/wallmessage.php:139
 msgid "Upload photo"
 msgstr ""
 
-#: include/conversation.php:1153 mod/editpost.php:75
+#: include/conversation.php:1152 mod/editpost.php:75
 msgid "upload photo"
 msgstr ""
 
-#: include/conversation.php:1154 mod/editpost.php:76
+#: include/conversation.php:1153 mod/editpost.php:76
 msgid "Attach file"
 msgstr ""
 
-#: include/conversation.php:1155 mod/editpost.php:77
+#: include/conversation.php:1154 mod/editpost.php:77
 msgid "attach file"
 msgstr ""
 
-#: include/conversation.php:1156 src/Object/Post.php:874
+#: include/conversation.php:1155 src/Object/Post.php:875
 msgid "Bold"
 msgstr ""
 
-#: include/conversation.php:1157 src/Object/Post.php:875
+#: include/conversation.php:1156 src/Object/Post.php:876
 msgid "Italic"
 msgstr ""
 
-#: include/conversation.php:1158 src/Object/Post.php:876
+#: include/conversation.php:1157 src/Object/Post.php:877
 msgid "Underline"
 msgstr ""
 
-#: include/conversation.php:1159 src/Object/Post.php:877
+#: include/conversation.php:1158 src/Object/Post.php:878
 msgid "Quote"
 msgstr ""
 
-#: include/conversation.php:1160 src/Object/Post.php:878
+#: include/conversation.php:1159 src/Object/Post.php:879
 msgid "Code"
 msgstr ""
 
-#: include/conversation.php:1161 src/Object/Post.php:879
+#: include/conversation.php:1160 src/Object/Post.php:880
 msgid "Image"
 msgstr ""
 
-#: include/conversation.php:1162 src/Object/Post.php:880
+#: include/conversation.php:1161 src/Object/Post.php:881
 msgid "Link"
 msgstr ""
 
-#: include/conversation.php:1163 src/Object/Post.php:881
+#: include/conversation.php:1162 src/Object/Post.php:882
 msgid "Link or Media"
 msgstr ""
 
-#: include/conversation.php:1164 mod/editpost.php:84
+#: include/conversation.php:1163 mod/editpost.php:84
 msgid "Set your location"
 msgstr ""
 
-#: include/conversation.php:1165 mod/editpost.php:85
+#: include/conversation.php:1164 mod/editpost.php:85
 msgid "set location"
 msgstr ""
 
-#: include/conversation.php:1166 mod/editpost.php:86
+#: include/conversation.php:1165 mod/editpost.php:86
 msgid "Clear browser location"
 msgstr ""
 
-#: include/conversation.php:1167 mod/editpost.php:87
+#: include/conversation.php:1166 mod/editpost.php:87
 msgid "clear location"
 msgstr ""
 
-#: include/conversation.php:1169 mod/editpost.php:102
+#: include/conversation.php:1168 mod/editpost.php:102
 msgid "Set title"
 msgstr ""
 
-#: include/conversation.php:1171 mod/editpost.php:104
+#: include/conversation.php:1170 mod/editpost.php:104
 msgid "Categories (comma-separated list)"
 msgstr ""
 
-#: include/conversation.php:1173 mod/editpost.php:89
+#: include/conversation.php:1172 mod/editpost.php:89
 msgid "Permission settings"
 msgstr ""
 
-#: include/conversation.php:1174 mod/editpost.php:119
+#: include/conversation.php:1173 mod/editpost.php:119
 msgid "permissions"
 msgstr ""
 
-#: include/conversation.php:1183 mod/editpost.php:99
+#: include/conversation.php:1182 mod/editpost.php:99
 msgid "Public post"
 msgstr ""
 
-#: include/conversation.php:1187 mod/editpost.php:110 mod/events.php:551
+#: include/conversation.php:1186 mod/editpost.php:110 mod/events.php:551
 #: mod/photos.php:1458 mod/photos.php:1497 mod/photos.php:1557
-#: src/Object/Post.php:883
+#: src/Object/Post.php:884
 msgid "Preview"
 msgstr ""
 
-#: include/conversation.php:1191 include/items.php:396 mod/dfrn_request.php:650
+#: include/conversation.php:1190 include/items.php:396 mod/dfrn_request.php:650
 #: mod/editpost.php:113 mod/fbrowser.php:104 mod/fbrowser.php:134
 #: mod/follow.php:161 mod/message.php:153 mod/photos.php:257 mod/photos.php:325
 #: mod/settings.php:666 mod/settings.php:692 mod/suggest.php:44
@@ -439,49 +439,49 @@ msgstr ""
 msgid "Cancel"
 msgstr ""
 
-#: include/conversation.php:1196
+#: include/conversation.php:1195
 msgid "Post to Groups"
 msgstr ""
 
-#: include/conversation.php:1197
+#: include/conversation.php:1196
 msgid "Post to Contacts"
 msgstr ""
 
-#: include/conversation.php:1198
+#: include/conversation.php:1197
 msgid "Private post"
 msgstr ""
 
-#: include/conversation.php:1203 mod/editpost.php:117 src/Model/Profile.php:370
+#: include/conversation.php:1202 mod/editpost.php:117 src/Model/Profile.php:370
 msgid "Message"
 msgstr ""
 
-#: include/conversation.php:1204 mod/editpost.php:118
+#: include/conversation.php:1203 mod/editpost.php:118
 msgid "Browser"
 msgstr ""
 
-#: include/conversation.php:1476
+#: include/conversation.php:1475
 msgid "View all"
 msgstr ""
 
-#: include/conversation.php:1500
+#: include/conversation.php:1499
 msgid "Like"
 msgid_plural "Likes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: include/conversation.php:1503
+#: include/conversation.php:1502
 msgid "Dislike"
 msgid_plural "Dislikes"
 msgstr[0] ""
 msgstr[1] ""
 
-#: include/conversation.php:1509
+#: include/conversation.php:1508
 msgid "Not Attending"
 msgid_plural "Not Attending"
 msgstr[0] ""
 msgstr[1] ""
 
-#: include/conversation.php:1512 src/Content/ContactSelector.php:167
+#: include/conversation.php:1511 src/Content/ContactSelector.php:167
 msgid "Undecided"
 msgid_plural "Undecided"
 msgstr[0] ""
@@ -829,16 +829,17 @@ msgstr ""
 #: mod/invite.php:111 mod/item.php:167 mod/manage.php:129 mod/message.php:56
 #: mod/message.php:101 mod/network.php:35 mod/nogroup.php:18 mod/notes.php:27
 #: mod/notifications.php:70 mod/ostatus_subscribe.php:18 mod/photos.php:186
-#: mod/photos.php:1020 mod/poke.php:141 mod/profile_photo.php:32
-#: mod/profile_photo.php:177 mod/profile_photo.php:204 mod/profiles.php:182
-#: mod/profiles.php:499 mod/regmod.php:89 mod/repair_ostatus.php:16
+#: mod/photos.php:1020 mod/poke.php:141 mod/profiles.php:182
+#: mod/profiles.php:499 mod/profile_photo.php:32 mod/profile_photo.php:177
+#: mod/profile_photo.php:204 mod/regmod.php:89 mod/repair_ostatus.php:16
 #: mod/settings.php:48 mod/settings.php:154 mod/settings.php:655
 #: mod/suggest.php:62 mod/uimport.php:17 mod/unfollow.php:22
 #: mod/unfollow.php:77 mod/unfollow.php:109 mod/viewcontacts.php:56
-#: mod/wall_attach.php:76 mod/wall_attach.php:79 mod/wall_upload.php:107
-#: mod/wall_upload.php:110 mod/wallmessage.php:19 mod/wallmessage.php:43
-#: mod/wallmessage.php:82 mod/wallmessage.php:106 src/Module/Attach.php:42
-#: src/Module/Contact.php:360 src/Module/Register.php:193 src/App.php:1482
+#: mod/wallmessage.php:19 mod/wallmessage.php:43 mod/wallmessage.php:82
+#: mod/wallmessage.php:106 mod/wall_attach.php:76 mod/wall_attach.php:79
+#: mod/wall_upload.php:107 mod/wall_upload.php:110 src/App.php:1480
+#: src/Module/Attach.php:42 src/Module/Contact.php:360
+#: src/Module/Register.php:193
 msgid "Permission denied."
 msgstr ""
 
@@ -846,28 +847,11 @@ msgstr ""
 msgid "Archives"
 msgstr ""
 
-#: include/items.php:520 view/theme/vier/theme.php:255
-#: src/Content/ForumManager.php:135 src/Content/Widget.php:329
-#: src/Object/Post.php:458 src/App.php:666
+#: include/items.php:520 src/Content/ForumManager.php:135
+#: src/Content/Widget.php:329 view/theme/vier/theme.php:255
 msgid "show more"
 msgstr ""
 
-#: mod/apps.php:15 src/App.php:1351
-msgid "You must be logged in to use addons. "
-msgstr ""
-
-#: mod/apps.php:20
-msgid "Applications"
-msgstr ""
-
-#: mod/apps.php:25
-msgid "No installed applications."
-msgstr ""
-
-#: mod/maintenance.php:26
-msgid "System down for maintenance"
-msgstr ""
-
 #: mod/admin.php:122
 msgid "Theme settings updated."
 msgstr ""
@@ -1035,7 +1019,7 @@ msgid "Save Settings"
 msgstr ""
 
 #: mod/admin.php:386 mod/admin.php:404 mod/dfrn_request.php:346
-#: mod/friendica.php:131 src/Model/Contact.php:1702
+#: mod/friendica.php:131 src/Model/Contact.php:1719
 msgid "Blocked domain"
 msgstr ""
 
@@ -1275,8 +1259,8 @@ msgstr ""
 msgid "Recipient Profile"
 msgstr ""
 
-#: mod/admin.php:828 view/theme/frio/theme.php:269
-#: src/Core/NotificationsManager.php:182 src/Content/Nav.php:239
+#: mod/admin.php:828 src/Content/Nav.php:239
+#: src/Core/NotificationsManager.php:182 view/theme/frio/theme.php:269
 msgid "Network"
 msgstr ""
 
@@ -2525,7 +2509,7 @@ msgid ""
 "\t\t\tThank you and welcome to %4$s."
 msgstr ""
 
-#: mod/admin.php:1871 src/Model/User.php:858
+#: mod/admin.php:1871 src/Model/User.php:859
 #, php-format
 msgid "Registration details for %s"
 msgstr ""
@@ -2727,7 +2711,7 @@ msgid "Toggle"
 msgstr ""
 
 #: mod/admin.php:2181 mod/admin.php:2438 mod/newmember.php:20
-#: mod/settings.php:136 view/theme/frio/theme.php:272 src/Content/Nav.php:263
+#: mod/settings.php:136 src/Content/Nav.php:263 view/theme/frio/theme.php:272
 msgid "Settings"
 msgstr ""
 
@@ -2891,6 +2875,18 @@ msgstr ""
 msgid "No"
 msgstr ""
 
+#: mod/apps.php:15 src/App.php:1349
+msgid "You must be logged in to use addons. "
+msgstr ""
+
+#: mod/apps.php:20
+msgid "Applications"
+msgstr ""
+
+#: mod/apps.php:25
+msgid "No installed applications."
+msgstr ""
+
 #: mod/babel.php:25
 msgid "Source input"
 msgstr ""
@@ -3013,7 +3009,7 @@ msgid "Access denied."
 msgstr ""
 
 #: mod/cal.php:46 mod/dfrn_poll.php:486 mod/help.php:68 mod/viewcontacts.php:34
-#: src/App.php:1402
+#: src/App.php:1400
 msgid "Page not found."
 msgstr ""
 
@@ -3021,9 +3017,9 @@ msgstr ""
 msgid "Access to this profile has been restricted."
 msgstr ""
 
-#: mod/cal.php:273 mod/events.php:384 view/theme/frio/theme.php:266
-#: view/theme/frio/theme.php:270 src/Content/Nav.php:160
+#: mod/cal.php:273 mod/events.php:384 src/Content/Nav.php:160
 #: src/Content/Nav.php:226 src/Model/Profile.php:937 src/Model/Profile.php:948
+#: view/theme/frio/theme.php:266 view/theme/frio/theme.php:270
 msgid "Events"
 msgstr ""
 
@@ -3039,22 +3035,22 @@ msgstr ""
 msgid "Next"
 msgstr ""
 
-#: mod/cal.php:279 mod/events.php:393 src/Model/Event.php:429
+#: mod/cal.php:279 mod/events.php:393 src/Model/Event.php:428
 msgid "today"
 msgstr ""
 
-#: mod/cal.php:280 mod/events.php:394 src/Util/Temporal.php:314
-#: src/Model/Event.php:430
+#: mod/cal.php:280 mod/events.php:394 src/Model/Event.php:429
+#: src/Util/Temporal.php:314
 msgid "month"
 msgstr ""
 
-#: mod/cal.php:281 mod/events.php:395 src/Util/Temporal.php:315
-#: src/Model/Event.php:431
+#: mod/cal.php:281 mod/events.php:395 src/Model/Event.php:430
+#: src/Util/Temporal.php:315
 msgid "week"
 msgstr ""
 
-#: mod/cal.php:282 mod/events.php:396 src/Util/Temporal.php:316
-#: src/Model/Event.php:432
+#: mod/cal.php:282 mod/events.php:396 src/Model/Event.php:431
+#: src/Util/Temporal.php:316
 msgid "day"
 msgstr ""
 
@@ -3062,7 +3058,7 @@ msgstr ""
 msgid "list"
 msgstr ""
 
-#: mod/cal.php:296 src/Core/Console/NewPassword.php:67 src/Model/User.php:323
+#: mod/cal.php:296 src/Core/Console/NewPassword.php:67 src/Model/User.php:324
 msgid "User not found"
 msgstr ""
 
@@ -3188,11 +3184,10 @@ msgstr ""
 #: mod/message.php:261 mod/message.php:441 mod/photos.php:1049
 #: mod/photos.php:1137 mod/photos.php:1412 mod/photos.php:1457
 #: mod/photos.php:1496 mod/photos.php:1556 mod/poke.php:188
-#: mod/profiles.php:562 view/theme/duepuntozero/config.php:72
-#: view/theme/frio/config.php:119 view/theme/quattro/config.php:74
-#: view/theme/vier/config.php:120 src/Module/Contact.php:594
-#: src/Module/Install.php:187 src/Module/Install.php:222
-#: src/Object/Post.php:873
+#: mod/profiles.php:562 src/Module/Contact.php:594 src/Module/Install.php:187
+#: src/Module/Install.php:222 src/Object/Post.php:874
+#: view/theme/duepuntozero/config.php:72 view/theme/frio/config.php:119
+#: view/theme/quattro/config.php:74 view/theme/vier/config.php:120
 msgid "Submit"
 msgstr ""
 
@@ -3383,7 +3378,7 @@ msgstr ""
 msgid "Unable to update your contact profile details on our system"
 msgstr ""
 
-#: mod/dfrn_confirm.php:612 mod/dfrn_request.php:560 src/Model/Contact.php:2026
+#: mod/dfrn_confirm.php:612 mod/dfrn_request.php:560 src/Model/Contact.php:2043
 msgid "[Name Withheld]"
 msgstr ""
 
@@ -3457,7 +3452,7 @@ msgstr ""
 msgid "Invalid profile URL."
 msgstr ""
 
-#: mod/dfrn_request.php:340 src/Model/Contact.php:1697
+#: mod/dfrn_request.php:340 src/Model/Contact.php:1714
 msgid "Disallowed profile URL."
 msgstr ""
 
@@ -3567,8 +3562,8 @@ msgid "Submit Request"
 msgstr ""
 
 #: mod/directory.php:154 mod/events.php:541 mod/notifications.php:253
-#: src/Model/Event.php:68 src/Model/Event.php:95 src/Model/Event.php:438
-#: src/Model/Event.php:934 src/Model/Profile.php:443 src/Module/Contact.php:643
+#: src/Model/Event.php:68 src/Model/Event.php:95 src/Model/Event.php:437
+#: src/Model/Event.php:933 src/Model/Profile.php:443 src/Module/Contact.php:643
 msgid "Location:"
 msgstr ""
 
@@ -3590,8 +3585,8 @@ msgstr ""
 msgid "About:"
 msgstr ""
 
-#: mod/directory.php:210 view/theme/vier/theme.php:208
-#: src/Content/Widget.php:70
+#: mod/directory.php:210 src/Content/Widget.php:70
+#: view/theme/vier/theme.php:208
 msgid "Global Directory"
 msgstr ""
 
@@ -3607,8 +3602,8 @@ msgstr ""
 msgid "Site Directory"
 msgstr ""
 
-#: mod/directory.php:217 view/theme/vier/theme.php:203
-#: src/Content/Widget.php:65 src/Module/Contact.php:817
+#: mod/directory.php:217 src/Content/Widget.php:65 src/Module/Contact.php:817
+#: view/theme/vier/theme.php:203
 msgid "Find"
 msgstr ""
 
@@ -3745,8 +3740,8 @@ msgstr ""
 msgid "Event removed"
 msgstr ""
 
-#: mod/fbrowser.php:36 view/theme/frio/theme.php:264 src/Content/Nav.php:158
-#: src/Model/Profile.php:917
+#: mod/fbrowser.php:36 src/Content/Nav.php:158 src/Model/Profile.php:917
+#: view/theme/frio/theme.php:264
 msgid "Photos"
 msgstr ""
 
@@ -3879,7 +3874,7 @@ msgstr ""
 msgid "Group name changed."
 msgstr ""
 
-#: mod/group.php:85 mod/profperm.php:30 src/App.php:1481
+#: mod/group.php:85 mod/profperm.php:30 src/App.php:1479
 msgid "Permission denied"
 msgstr ""
 
@@ -3952,11 +3947,11 @@ msgstr ""
 msgid "Help:"
 msgstr ""
 
-#: mod/help.php:59 view/theme/vier/theme.php:294 src/Content/Nav.php:190
+#: mod/help.php:59 src/Content/Nav.php:190 view/theme/vier/theme.php:294
 msgid "Help"
 msgstr ""
 
-#: mod/help.php:65 src/App.php:1399
+#: mod/help.php:65 src/App.php:1397
 msgid "Not Found"
 msgstr ""
 
@@ -4104,7 +4099,7 @@ msgstr ""
 msgid "%s posted an update."
 msgstr ""
 
-#: mod/localtime.php:19 src/Model/Event.php:34 src/Model/Event.php:848
+#: mod/localtime.php:19 src/Model/Event.php:34 src/Model/Event.php:847
 msgid "l F d, Y \\@ g:i A"
 msgstr ""
 
@@ -4279,6 +4274,10 @@ msgstr ""
 msgid "Your password has been changed at %s"
 msgstr ""
 
+#: mod/maintenance.php:26
+msgid "System down for maintenance"
+msgstr ""
+
 #: mod/manage.php:178
 msgid "Manage Identities and/or Pages"
 msgstr ""
@@ -4338,7 +4337,7 @@ msgstr ""
 msgid "Discard"
 msgstr ""
 
-#: mod/message.php:123 view/theme/frio/theme.php:271 src/Content/Nav.php:252
+#: mod/message.php:123 src/Content/Nav.php:252 view/theme/frio/theme.php:271
 msgid "Messages"
 msgstr ""
 
@@ -4569,13 +4568,14 @@ msgid ""
 "potential friends know exactly how to find you."
 msgstr ""
 
-#: mod/newmember.php:25 mod/profperm.php:117 view/theme/frio/theme.php:263
-#: src/Content/Nav.php:157 src/Model/Profile.php:876 src/Model/Profile.php:909
+#: mod/newmember.php:25 mod/profperm.php:117 src/Content/Nav.php:157
+#: src/Model/Profile.php:876 src/Model/Profile.php:909
 #: src/Module/Contact.php:654 src/Module/Contact.php:869
+#: view/theme/frio/theme.php:263
 msgid "Profile"
 msgstr ""
 
-#: mod/newmember.php:27 mod/profile_photo.php:253 mod/profiles.php:583
+#: mod/newmember.php:27 mod/profiles.php:583 mod/profile_photo.php:253
 msgid "Upload Profile Photo"
 msgstr ""
 
@@ -5083,12 +5083,12 @@ msgid "I don't like this (toggle)"
 msgstr ""
 
 #: mod/photos.php:1454 mod/photos.php:1493 mod/photos.php:1553
-#: src/Module/Contact.php:1018 src/Object/Post.php:870
+#: src/Module/Contact.php:1018 src/Object/Post.php:871
 msgid "This is you"
 msgstr ""
 
 #: mod/photos.php:1456 mod/photos.php:1495 mod/photos.php:1555
-#: src/Object/Post.php:417 src/Object/Post.php:872
+#: src/Object/Post.php:417 src/Object/Post.php:873
 msgid "Comment"
 msgstr ""
 
@@ -5132,62 +5132,6 @@ msgstr ""
 msgid "Only logged in users are permitted to perform a probing."
 msgstr ""
 
-#: mod/profile_photo.php:58
-msgid "Image uploaded but image cropping failed."
-msgstr ""
-
-#: mod/profile_photo.php:88 mod/profile_photo.php:97 mod/profile_photo.php:106
-#: mod/profile_photo.php:318
-#, php-format
-msgid "Image size reduction [%s] failed."
-msgstr ""
-
-#: mod/profile_photo.php:125
-msgid ""
-"Shift-reload the page or clear browser cache if the new photo does not "
-"display immediately."
-msgstr ""
-
-#: mod/profile_photo.php:133
-msgid "Unable to process image"
-msgstr ""
-
-#: mod/profile_photo.php:251
-msgid "Upload File:"
-msgstr ""
-
-#: mod/profile_photo.php:252
-msgid "Select a profile:"
-msgstr ""
-
-#: mod/profile_photo.php:257
-msgid "or"
-msgstr ""
-
-#: mod/profile_photo.php:258
-msgid "skip this step"
-msgstr ""
-
-#: mod/profile_photo.php:258
-msgid "select a photo from your photo albums"
-msgstr ""
-
-#: mod/profile_photo.php:271
-msgid "Crop Image"
-msgstr ""
-
-#: mod/profile_photo.php:272
-msgid "Please adjust the image cropping for optimum viewing."
-msgstr ""
-
-#: mod/profile_photo.php:274
-msgid "Done Editing"
-msgstr ""
-
-#: mod/profile_photo.php:308
-msgid "Image uploaded successfully."
-msgstr ""
-
 #: mod/profiles.php:62
 msgid "Profile deleted."
 msgstr ""
@@ -5512,6 +5456,62 @@ msgstr ""
 msgid "Create New Profile"
 msgstr ""
 
+#: mod/profile_photo.php:58
+msgid "Image uploaded but image cropping failed."
+msgstr ""
+
+#: mod/profile_photo.php:88 mod/profile_photo.php:97 mod/profile_photo.php:106
+#: mod/profile_photo.php:318
+#, php-format
+msgid "Image size reduction [%s] failed."
+msgstr ""
+
+#: mod/profile_photo.php:125
+msgid ""
+"Shift-reload the page or clear browser cache if the new photo does not "
+"display immediately."
+msgstr ""
+
+#: mod/profile_photo.php:133
+msgid "Unable to process image"
+msgstr ""
+
+#: mod/profile_photo.php:251
+msgid "Upload File:"
+msgstr ""
+
+#: mod/profile_photo.php:252
+msgid "Select a profile:"
+msgstr ""
+
+#: mod/profile_photo.php:257
+msgid "or"
+msgstr ""
+
+#: mod/profile_photo.php:258
+msgid "skip this step"
+msgstr ""
+
+#: mod/profile_photo.php:258
+msgid "select a photo from your photo albums"
+msgstr ""
+
+#: mod/profile_photo.php:271
+msgid "Crop Image"
+msgstr ""
+
+#: mod/profile_photo.php:272
+msgid "Please adjust the image cropping for optimum viewing."
+msgstr ""
+
+#: mod/profile_photo.php:274
+msgid "Done Editing"
+msgstr ""
+
+#: mod/profile_photo.php:308
+msgid "Image uploaded successfully."
+msgstr ""
+
 #: mod/profperm.php:36 mod/profperm.php:69
 msgid "Invalid profile identifier."
 msgstr ""
@@ -5590,7 +5590,7 @@ msgstr ""
 msgid "Only one search per minute is permitted for not logged in users."
 msgstr ""
 
-#: mod/search.php:149 src/Content/Text/HTML.php:900 src/Content/Nav.php:198
+#: mod/search.php:149 src/Content/Nav.php:198 src/Content/Text/HTML.php:900
 msgid "Search"
 msgstr ""
 
@@ -5918,11 +5918,11 @@ msgstr ""
 msgid "%s - (Experimental)"
 msgstr ""
 
-#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:396
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:395
 msgid "Sunday"
 msgstr ""
 
-#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:397
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:396
 msgid "Monday"
 msgstr ""
 
@@ -6451,7 +6451,7 @@ msgstr ""
 msgid "Ignore/Hide"
 msgstr ""
 
-#: mod/suggest.php:119 view/theme/vier/theme.php:204 src/Content/Widget.php:66
+#: mod/suggest.php:119 src/Content/Widget.php:66 view/theme/vier/theme.php:204
 msgid "Friend Suggestions"
 msgstr ""
 
@@ -6567,7 +6567,7 @@ msgstr ""
 msgid "No videos selected"
 msgstr ""
 
-#: mod/videos.php:309 src/Model/Item.php:3435
+#: mod/videos.php:309 src/Model/Item.php:3453
 msgid "View Video"
 msgstr ""
 
@@ -6589,13 +6589,33 @@ msgstr ""
 msgid "Visit %s's profile [%s]"
 msgstr ""
 
-#: mod/viewcontacts.php:114 view/theme/frio/theme.php:273
-#: src/Content/Text/HTML.php:911 src/Content/Nav.php:203
-#: src/Content/Nav.php:269 src/Model/Profile.php:980 src/Model/Profile.php:983
-#: src/Module/Contact.php:811 src/Module/Contact.php:881
+#: mod/viewcontacts.php:114 src/Content/Nav.php:203 src/Content/Nav.php:269
+#: src/Content/Text/HTML.php:911 src/Model/Profile.php:980
+#: src/Model/Profile.php:983 src/Module/Contact.php:811
+#: src/Module/Contact.php:881 view/theme/frio/theme.php:273
 msgid "Contacts"
 msgstr ""
 
+#: mod/wallmessage.php:52 mod/wallmessage.php:115
+#, php-format
+msgid "Number of daily wall messages for %s exceeded. Message failed."
+msgstr ""
+
+#: mod/wallmessage.php:63
+msgid "Unable to check your home location."
+msgstr ""
+
+#: mod/wallmessage.php:89 mod/wallmessage.php:98
+msgid "No recipient."
+msgstr ""
+
+#: mod/wallmessage.php:129
+#, php-format
+msgid ""
+"If you wish for %s to respond, please check that the privacy settings on "
+"your site allow private mail from unknown senders."
+msgstr ""
+
 #: mod/wall_attach.php:26 mod/wall_attach.php:33 mod/wall_attach.php:85
 #: mod/wall_upload.php:42 mod/wall_upload.php:58 mod/wall_upload.php:116
 #: mod/wall_upload.php:167 mod/wall_upload.php:170
@@ -6624,1982 +6644,1722 @@ msgstr ""
 msgid "Wall Photos"
 msgstr ""
 
-#: mod/wallmessage.php:52 mod/wallmessage.php:115
-#, php-format
-msgid "Number of daily wall messages for %s exceeded. Message failed."
+#: src/App.php:665
+msgid "Delete this item?"
 msgstr ""
 
-#: mod/wallmessage.php:63
-msgid "Unable to check your home location."
+#: src/App.php:707
+msgid "toggle mobile"
 msgstr ""
 
-#: mod/wallmessage.php:89 mod/wallmessage.php:98
-msgid "No recipient."
+#: src/App.php:1075
+msgid "No system theme config value set."
 msgstr ""
 
-#: mod/wallmessage.php:129
-#, php-format
+#: src/BaseModule.php:133
 msgid ""
-"If you wish for %s to respond, please check that the privacy settings on "
-"your site allow private mail from unknown senders."
+"The form security token was not correct. This probably happened because the "
+"form has been opened for too long (>3 hours) before submitting it."
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:55 src/Model/User.php:684
-msgid "default"
+#: src/Content/ContactSelector.php:58
+msgid "Frequently"
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:56
-msgid "greenzero"
+#: src/Content/ContactSelector.php:59
+msgid "Hourly"
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:57
-msgid "purplezero"
+#: src/Content/ContactSelector.php:60
+msgid "Twice daily"
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:58
-msgid "easterbunny"
+#: src/Content/ContactSelector.php:61
+msgid "Daily"
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:59
-msgid "darkzero"
+#: src/Content/ContactSelector.php:62
+msgid "Weekly"
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:60
-msgid "comix"
+#: src/Content/ContactSelector.php:63
+msgid "Monthly"
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:61
-msgid "slackr"
+#: src/Content/ContactSelector.php:83
+msgid "DFRN"
 msgstr ""
 
-#: view/theme/duepuntozero/config.php:75
-msgid "Variations"
+#: src/Content/ContactSelector.php:84
+msgid "OStatus"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:24
-msgid "Top Banner"
+#: src/Content/ContactSelector.php:85
+msgid "RSS/Atom"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:24
-msgid ""
-"Resize image to the width of the screen and show background color below on "
-"long pages."
+#: src/Content/ContactSelector.php:88
+msgid "Zot!"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:25
-msgid "Full screen"
+#: src/Content/ContactSelector.php:89
+msgid "LinkedIn"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:25
-msgid ""
-"Resize image to fill entire screen, clipping either the right or the bottom."
+#: src/Content/ContactSelector.php:90
+msgid "XMPP/IM"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:26
-msgid "Single row mosaic"
+#: src/Content/ContactSelector.php:91
+msgid "MySpace"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:26
-msgid ""
-"Resize image to repeat it on a single row, either vertical or horizontal."
+#: src/Content/ContactSelector.php:92
+msgid "Google+"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:27
-msgid "Mosaic"
+#: src/Content/ContactSelector.php:93
+msgid "pump.io"
 msgstr ""
 
-#: view/theme/frio/php/Image.php:27
-msgid "Repeat image to fill the screen."
+#: src/Content/ContactSelector.php:94
+msgid "Twitter"
 msgstr ""
 
-#: view/theme/frio/config.php:103
-msgid "Custom"
+#: src/Content/ContactSelector.php:95
+msgid "Diaspora Connector"
 msgstr ""
 
-#: view/theme/frio/config.php:115
-msgid "Note"
+#: src/Content/ContactSelector.php:96
+msgid "GNU Social Connector"
 msgstr ""
 
-#: view/theme/frio/config.php:115
-msgid "Check image permissions if all users are allowed to see the image"
+#: src/Content/ContactSelector.php:97
+msgid "ActivityPub"
 msgstr ""
 
-#: view/theme/frio/config.php:122
-msgid "Select color scheme"
+#: src/Content/ContactSelector.php:98
+msgid "pnut"
 msgstr ""
 
-#: view/theme/frio/config.php:123
-msgid "Navigation bar background color"
+#: src/Content/ContactSelector.php:154
+msgid "Male"
 msgstr ""
 
-#: view/theme/frio/config.php:124
-msgid "Navigation bar icon color "
+#: src/Content/ContactSelector.php:155
+msgid "Female"
 msgstr ""
 
-#: view/theme/frio/config.php:125
-msgid "Link color"
+#: src/Content/ContactSelector.php:156
+msgid "Currently Male"
 msgstr ""
 
-#: view/theme/frio/config.php:126
-msgid "Set the background color"
+#: src/Content/ContactSelector.php:157
+msgid "Currently Female"
 msgstr ""
 
-#: view/theme/frio/config.php:127
-msgid "Content background opacity"
+#: src/Content/ContactSelector.php:158
+msgid "Mostly Male"
 msgstr ""
 
-#: view/theme/frio/config.php:128
-msgid "Set the background image"
+#: src/Content/ContactSelector.php:159
+msgid "Mostly Female"
 msgstr ""
 
-#: view/theme/frio/config.php:129
-msgid "Background image style"
+#: src/Content/ContactSelector.php:160
+msgid "Transgender"
 msgstr ""
 
-#: view/theme/frio/config.php:134
-msgid "Login page background image"
+#: src/Content/ContactSelector.php:161
+msgid "Intersex"
 msgstr ""
 
-#: view/theme/frio/config.php:138
-msgid "Login page background color"
+#: src/Content/ContactSelector.php:162
+msgid "Transsexual"
 msgstr ""
 
-#: view/theme/frio/config.php:138
-msgid "Leave background image and color empty for theme defaults"
+#: src/Content/ContactSelector.php:163
+msgid "Hermaphrodite"
 msgstr ""
 
-#: view/theme/frio/theme.php:239
-msgid "Guest"
+#: src/Content/ContactSelector.php:164
+msgid "Neuter"
 msgstr ""
 
-#: view/theme/frio/theme.php:244
-msgid "Visitor"
+#: src/Content/ContactSelector.php:165
+msgid "Non-specific"
 msgstr ""
 
-#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
-#: src/Module/Login.php:321
-msgid "Logout"
+#: src/Content/ContactSelector.php:166
+msgid "Other"
 msgstr ""
 
-#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
-msgid "End this session"
+#: src/Content/ContactSelector.php:194
+msgid "Males"
 msgstr ""
 
-#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
-#: src/Model/Profile.php:901 src/Module/Contact.php:652
-#: src/Module/Contact.php:853
-msgid "Status"
+#: src/Content/ContactSelector.php:195
+msgid "Females"
 msgstr ""
 
-#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
-#: src/Content/Nav.php:242
-msgid "Your posts and conversations"
+#: src/Content/ContactSelector.php:196
+msgid "Gay"
 msgstr ""
 
-#: view/theme/frio/theme.php:263 src/Content/Nav.php:157
-msgid "Your profile page"
+#: src/Content/ContactSelector.php:197
+msgid "Lesbian"
 msgstr ""
 
-#: view/theme/frio/theme.php:264 src/Content/Nav.php:158
-msgid "Your photos"
+#: src/Content/ContactSelector.php:198
+msgid "No Preference"
 msgstr ""
 
-#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
-#: src/Model/Profile.php:925 src/Model/Profile.php:928
-msgid "Videos"
+#: src/Content/ContactSelector.php:199
+msgid "Bisexual"
 msgstr ""
 
-#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
-msgid "Your videos"
+#: src/Content/ContactSelector.php:200
+msgid "Autosexual"
 msgstr ""
 
-#: view/theme/frio/theme.php:266 src/Content/Nav.php:160
-msgid "Your events"
+#: src/Content/ContactSelector.php:201
+msgid "Abstinent"
 msgstr ""
 
-#: view/theme/frio/theme.php:269 src/Content/Nav.php:239
-msgid "Conversations from your friends"
+#: src/Content/ContactSelector.php:202
+msgid "Virgin"
 msgstr ""
 
-#: view/theme/frio/theme.php:270 src/Content/Nav.php:226
-#: src/Model/Profile.php:940 src/Model/Profile.php:951
-msgid "Events and Calendar"
+#: src/Content/ContactSelector.php:203
+msgid "Deviant"
 msgstr ""
 
-#: view/theme/frio/theme.php:271 src/Content/Nav.php:252
-msgid "Private mail"
+#: src/Content/ContactSelector.php:204
+msgid "Fetish"
 msgstr ""
 
-#: view/theme/frio/theme.php:272 src/Content/Nav.php:263
-msgid "Account settings"
+#: src/Content/ContactSelector.php:205
+msgid "Oodles"
 msgstr ""
 
-#: view/theme/frio/theme.php:273 src/Content/Nav.php:269
-msgid "Manage/edit friends and contacts"
+#: src/Content/ContactSelector.php:206
+msgid "Nonsexual"
 msgstr ""
 
-#: view/theme/quattro/config.php:77
-msgid "Alignment"
+#: src/Content/ContactSelector.php:232
+msgid "Single"
 msgstr ""
 
-#: view/theme/quattro/config.php:77
-msgid "Left"
+#: src/Content/ContactSelector.php:233
+msgid "Lonely"
 msgstr ""
 
-#: view/theme/quattro/config.php:77
-msgid "Center"
+#: src/Content/ContactSelector.php:234
+msgid "Available"
 msgstr ""
 
-#: view/theme/quattro/config.php:78
-msgid "Color scheme"
+#: src/Content/ContactSelector.php:235
+msgid "Unavailable"
 msgstr ""
 
-#: view/theme/quattro/config.php:79
-msgid "Posts font size"
+#: src/Content/ContactSelector.php:236
+msgid "Has crush"
 msgstr ""
 
-#: view/theme/quattro/config.php:80
-msgid "Textareas font size"
+#: src/Content/ContactSelector.php:237
+msgid "Infatuated"
 msgstr ""
 
-#: view/theme/vier/config.php:76
-msgid "Comma separated list of helper forums"
+#: src/Content/ContactSelector.php:238
+msgid "Dating"
 msgstr ""
 
-#: view/theme/vier/config.php:116 src/Core/ACL.php:301
-msgid "don't show"
+#: src/Content/ContactSelector.php:239
+msgid "Unfaithful"
 msgstr ""
 
-#: view/theme/vier/config.php:116 src/Core/ACL.php:300
-msgid "show"
+#: src/Content/ContactSelector.php:240
+msgid "Sex Addict"
 msgstr ""
 
-#: view/theme/vier/config.php:123
-msgid "Set style"
+#: src/Content/ContactSelector.php:241 src/Model/User.php:702
+msgid "Friends"
 msgstr ""
 
-#: view/theme/vier/config.php:124
-msgid "Community Pages"
+#: src/Content/ContactSelector.php:242
+msgid "Friends/Benefits"
 msgstr ""
 
-#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
-msgid "Community Profiles"
+#: src/Content/ContactSelector.php:243
+msgid "Casual"
 msgstr ""
 
-#: view/theme/vier/config.php:126
-msgid "Help or @NewHere ?"
+#: src/Content/ContactSelector.php:244
+msgid "Engaged"
 msgstr ""
 
-#: view/theme/vier/config.php:127 view/theme/vier/theme.php:373
-msgid "Connect Services"
+#: src/Content/ContactSelector.php:245
+msgid "Married"
 msgstr ""
 
-#: view/theme/vier/config.php:128
-msgid "Find Friends"
+#: src/Content/ContactSelector.php:246
+msgid "Imaginarily married"
 msgstr ""
 
-#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
-msgid "Last users"
+#: src/Content/ContactSelector.php:247
+msgid "Partners"
 msgstr ""
 
-#: view/theme/vier/theme.php:199 src/Content/Widget.php:61
-msgid "Find People"
+#: src/Content/ContactSelector.php:248
+msgid "Cohabiting"
 msgstr ""
 
-#: view/theme/vier/theme.php:200 src/Content/Widget.php:62
-msgid "Enter name or interest"
+#: src/Content/ContactSelector.php:249
+msgid "Common law"
 msgstr ""
 
-#: view/theme/vier/theme.php:202 src/Content/Widget.php:64
-msgid "Examples: Robert Morgenstein, Fishing"
+#: src/Content/ContactSelector.php:250
+msgid "Happy"
 msgstr ""
 
-#: view/theme/vier/theme.php:205 src/Content/Widget.php:67
-msgid "Similar Interests"
+#: src/Content/ContactSelector.php:251
+msgid "Not looking"
 msgstr ""
 
-#: view/theme/vier/theme.php:206 src/Content/Widget.php:68
-msgid "Random Profile"
+#: src/Content/ContactSelector.php:252
+msgid "Swinger"
 msgstr ""
 
-#: view/theme/vier/theme.php:207 src/Content/Widget.php:69
-msgid "Invite Friends"
+#: src/Content/ContactSelector.php:253
+msgid "Betrayed"
 msgstr ""
 
-#: view/theme/vier/theme.php:210 src/Content/Widget.php:72
-msgid "Local Directory"
+#: src/Content/ContactSelector.php:254
+msgid "Separated"
 msgstr ""
 
-#: view/theme/vier/theme.php:250 src/Content/Text/HTML.php:914
-#: src/Content/ForumManager.php:130 src/Content/Nav.php:207
-msgid "Forums"
+#: src/Content/ContactSelector.php:255
+msgid "Unstable"
 msgstr ""
 
-#: view/theme/vier/theme.php:252 src/Content/ForumManager.php:132
-msgid "External link to forum"
+#: src/Content/ContactSelector.php:256
+msgid "Divorced"
 msgstr ""
 
-#: view/theme/vier/theme.php:288
-msgid "Quick Start"
+#: src/Content/ContactSelector.php:257
+msgid "Imaginarily divorced"
 msgstr ""
 
-#: src/Core/Console/ArchiveContact.php:65
-#, php-format
-msgid "Could not find any unarchived contact entry for this URL (%s)"
+#: src/Content/ContactSelector.php:258
+msgid "Widowed"
 msgstr ""
 
-#: src/Core/Console/ArchiveContact.php:70
-msgid "The contact entries have been archived"
+#: src/Content/ContactSelector.php:259
+msgid "Uncertain"
 msgstr ""
 
-#: src/Core/Console/NewPassword.php:72
-msgid "Enter new password: "
+#: src/Content/ContactSelector.php:260
+msgid "It's complicated"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:50
-#, php-format
-msgid "Post update version number has been set to %s."
+#: src/Content/ContactSelector.php:261
+msgid "Don't care"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:58
-msgid "Check for pending update actions."
+#: src/Content/ContactSelector.php:262
+msgid "Ask me"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:60
-msgid "Done."
+#: src/Content/Feature.php:82
+msgid "General Features"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:62
-msgid "Execute pending post updates."
+#: src/Content/Feature.php:84
+msgid "Multiple Profiles"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:68
-msgid "All pending post updates are done."
+#: src/Content/Feature.php:84
+msgid "Ability to create multiple profiles"
 msgstr ""
 
-#: src/Core/ACL.php:287
-msgid "Post to Email"
+#: src/Content/Feature.php:85
+msgid "Photo Location"
 msgstr ""
 
-#: src/Core/ACL.php:293
-msgid "Hide your profile details from unknown viewers?"
+#: src/Content/Feature.php:85
+msgid ""
+"Photo metadata is normally stripped. This extracts the location (if present) "
+"prior to stripping metadata and links it to a map."
 msgstr ""
 
-#: src/Core/ACL.php:292
-#, php-format
-msgid "Connectors disabled, since \"%s\" is enabled."
+#: src/Content/Feature.php:86
+msgid "Export Public Calendar"
 msgstr ""
 
-#: src/Core/ACL.php:299
-msgid "Visible to everybody"
+#: src/Content/Feature.php:86
+msgid "Ability for visitors to download the public calendar"
 msgstr ""
 
-#: src/Core/ACL.php:311
-msgid "Close"
+#: src/Content/Feature.php:91
+msgid "Post Composition Features"
 msgstr ""
 
-#: src/Core/Authentication.php:87
-msgid "Welcome "
+#: src/Content/Feature.php:92
+msgid "Auto-mention Forums"
 msgstr ""
 
-#: src/Core/Authentication.php:88
-msgid "Please upload a profile photo."
+#: src/Content/Feature.php:92
+msgid ""
+"Add/remove mention when a forum page is selected/deselected in ACL window."
 msgstr ""
 
-#: src/Core/Authentication.php:90
-msgid "Welcome back "
+#: src/Content/Feature.php:93
+msgid "Explicit Mentions"
 msgstr ""
 
-#: src/Core/Installer.php:162
+#: src/Content/Feature.php:93
 msgid ""
-"The database configuration file \"config/local.config.php\" could not be "
-"written. Please use the enclosed text to create a configuration file in your "
-"web server root."
+"Add explicit mentions to comment box for manual control over who gets "
+"mentioned in replies."
 msgstr ""
 
-#: src/Core/Installer.php:181
-msgid ""
-"You may need to import the file \"database.sql\" manually using phpmyadmin "
-"or mysql."
+#: src/Content/Feature.php:98
+msgid "Network Sidebar"
 msgstr ""
 
-#: src/Core/Installer.php:182 src/Module/Install.php:132
-#: src/Module/Install.php:263
-msgid "Please see the file \"INSTALL.txt\"."
+#: src/Content/Feature.php:99
+msgid "Ability to select posts by date ranges"
 msgstr ""
 
-#: src/Core/Installer.php:243
-msgid "Could not find a command line version of PHP in the web server PATH."
+#: src/Content/Feature.php:100
+msgid "Protocol Filter"
 msgstr ""
 
-#: src/Core/Installer.php:244
-msgid ""
-"If you don't have a command line version of PHP installed on your server, "
-"you will not be able to run the background processing. See <a href='https://"
-"github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-"
-"worker'>'Setup the worker'</a>"
+#: src/Content/Feature.php:100
+msgid "Enable widget to display Network posts only from selected protocols"
 msgstr ""
 
-#: src/Core/Installer.php:248
-msgid "PHP executable path"
+#: src/Content/Feature.php:105
+msgid "Network Tabs"
 msgstr ""
 
-#: src/Core/Installer.php:248
-msgid ""
-"Enter full path to php executable. You can leave this blank to continue the "
-"installation."
+#: src/Content/Feature.php:106
+msgid "Network New Tab"
 msgstr ""
 
-#: src/Core/Installer.php:253
-msgid "Command line PHP"
+#: src/Content/Feature.php:106
+msgid "Enable tab to display only new Network posts (from the last 12 hours)"
 msgstr ""
 
-#: src/Core/Installer.php:262
-msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
+#: src/Content/Feature.php:107
+msgid "Network Shared Links Tab"
 msgstr ""
 
-#: src/Core/Installer.php:263
-msgid "Found PHP version: "
+#: src/Content/Feature.php:107
+msgid "Enable tab to display only Network posts with links in them"
 msgstr ""
 
-#: src/Core/Installer.php:265
-msgid "PHP cli binary"
+#: src/Content/Feature.php:112
+msgid "Post/Comment Tools"
 msgstr ""
 
-#: src/Core/Installer.php:278
-msgid ""
-"The command line version of PHP on your system does not have "
-"\"register_argc_argv\" enabled."
+#: src/Content/Feature.php:113
+msgid "Post Categories"
 msgstr ""
 
-#: src/Core/Installer.php:279
-msgid "This is required for message delivery to work."
+#: src/Content/Feature.php:113
+msgid "Add categories to your posts"
 msgstr ""
 
-#: src/Core/Installer.php:284
-msgid "PHP register_argc_argv"
+#: src/Content/Feature.php:118
+msgid "Advanced Profile Settings"
 msgstr ""
 
-#: src/Core/Installer.php:316
-msgid ""
-"Error: the \"openssl_pkey_new\" function on this system is not able to "
-"generate encryption keys"
+#: src/Content/Feature.php:119
+msgid "List Forums"
 msgstr ""
 
-#: src/Core/Installer.php:317
-msgid ""
-"If running under Windows, please see \"http://www.php.net/manual/en/openssl."
-"installation.php\"."
+#: src/Content/Feature.php:119
+msgid "Show visitors public community forums at the Advanced Profile Page"
 msgstr ""
 
-#: src/Core/Installer.php:320
-msgid "Generate encryption keys"
+#: src/Content/Feature.php:120
+msgid "Tag Cloud"
 msgstr ""
 
-#: src/Core/Installer.php:371
-msgid ""
-"Error: Apache webserver mod-rewrite module is required but not installed."
+#: src/Content/Feature.php:120
+msgid "Provide a personal tag cloud on your profile page"
 msgstr ""
 
-#: src/Core/Installer.php:376
-msgid "Apache mod_rewrite module"
+#: src/Content/Feature.php:121
+msgid "Display Membership Date"
 msgstr ""
 
-#: src/Core/Installer.php:382
-msgid "Error: PDO or MySQLi PHP module required but not installed."
+#: src/Content/Feature.php:121
+msgid "Display membership date in profile"
 msgstr ""
 
-#: src/Core/Installer.php:387
-msgid "Error: The MySQL driver for PDO is not installed."
+#: src/Content/ForumManager.php:130 src/Content/Nav.php:207
+#: src/Content/Text/HTML.php:914 view/theme/vier/theme.php:250
+msgid "Forums"
 msgstr ""
 
-#: src/Core/Installer.php:391
-msgid "PDO or MySQLi PHP module"
+#: src/Content/ForumManager.php:132 view/theme/vier/theme.php:252
+msgid "External link to forum"
 msgstr ""
 
-#: src/Core/Installer.php:399
-msgid "Error, XML PHP module required but not installed."
+#: src/Content/Nav.php:74
+msgid "Nothing new here"
 msgstr ""
 
-#: src/Core/Installer.php:403
-msgid "XML PHP module"
+#: src/Content/Nav.php:78
+msgid "Clear notifications"
 msgstr ""
 
-#: src/Core/Installer.php:406
-msgid "libCurl PHP module"
+#: src/Content/Nav.php:79 src/Content/Text/HTML.php:903
+msgid "@name, !forum, #tags, content"
 msgstr ""
 
-#: src/Core/Installer.php:407
-msgid "Error: libCURL PHP module required but not installed."
+#: src/Content/Nav.php:153 src/Module/Login.php:321
+#: view/theme/frio/theme.php:259
+msgid "Logout"
 msgstr ""
 
-#: src/Core/Installer.php:413
-msgid "GD graphics PHP module"
+#: src/Content/Nav.php:153 view/theme/frio/theme.php:259
+msgid "End this session"
 msgstr ""
 
-#: src/Core/Installer.php:414
-msgid ""
-"Error: GD graphics PHP module with JPEG support required but not installed."
+#: src/Content/Nav.php:156 src/Model/Profile.php:901 src/Module/Contact.php:652
+#: src/Module/Contact.php:853 view/theme/frio/theme.php:262
+msgid "Status"
 msgstr ""
 
-#: src/Core/Installer.php:420
-msgid "OpenSSL PHP module"
+#: src/Content/Nav.php:156 src/Content/Nav.php:242
+#: view/theme/frio/theme.php:262
+msgid "Your posts and conversations"
 msgstr ""
 
-#: src/Core/Installer.php:421
-msgid "Error: openssl PHP module required but not installed."
+#: src/Content/Nav.php:157 view/theme/frio/theme.php:263
+msgid "Your profile page"
 msgstr ""
 
-#: src/Core/Installer.php:427
-msgid "mb_string PHP module"
+#: src/Content/Nav.php:158 view/theme/frio/theme.php:264
+msgid "Your photos"
 msgstr ""
 
-#: src/Core/Installer.php:428
-msgid "Error: mb_string PHP module required but not installed."
+#: src/Content/Nav.php:159 src/Model/Profile.php:925 src/Model/Profile.php:928
+#: view/theme/frio/theme.php:265
+msgid "Videos"
 msgstr ""
 
-#: src/Core/Installer.php:434
-msgid "iconv PHP module"
+#: src/Content/Nav.php:159 view/theme/frio/theme.php:265
+msgid "Your videos"
 msgstr ""
 
-#: src/Core/Installer.php:435
-msgid "Error: iconv PHP module required but not installed."
+#: src/Content/Nav.php:160 view/theme/frio/theme.php:266
+msgid "Your events"
 msgstr ""
 
-#: src/Core/Installer.php:441
-msgid "POSIX PHP module"
+#: src/Content/Nav.php:161
+msgid "Personal notes"
 msgstr ""
 
-#: src/Core/Installer.php:442
-msgid "Error: POSIX PHP module required but not installed."
+#: src/Content/Nav.php:161
+msgid "Your personal notes"
 msgstr ""
 
-#: src/Core/Installer.php:448
-msgid "JSON PHP module"
+#: src/Content/Nav.php:170
+msgid "Sign in"
 msgstr ""
 
-#: src/Core/Installer.php:449
-msgid "Error: JSON PHP module required but not installed."
+#: src/Content/Nav.php:180 src/Content/Nav.php:242
+#: src/Core/NotificationsManager.php:196
+msgid "Home"
 msgstr ""
 
-#: src/Core/Installer.php:472
-msgid ""
-"The web installer needs to be able to create a file called \"local.config.php"
-"\" in the \"config\" folder of your web server and it is unable to do so."
+#: src/Content/Nav.php:180
+msgid "Home Page"
 msgstr ""
 
-#: src/Core/Installer.php:473
-msgid ""
-"This is most often a permission setting, as the web server may not be able "
-"to write files in your folder - even if you can."
+#: src/Content/Nav.php:184 src/Module/Login.php:293 src/Module/Register.php:136
+msgid "Register"
 msgstr ""
 
-#: src/Core/Installer.php:474
-msgid ""
-"At the end of this procedure, we will give you a text to save in a file "
-"named local.config.php in your Friendica \"config\" folder."
+#: src/Content/Nav.php:184
+msgid "Create an account"
 msgstr ""
 
-#: src/Core/Installer.php:475
-msgid ""
-"You can alternatively skip this procedure and perform a manual installation. "
-"Please see the file \"INSTALL.txt\" for instructions."
+#: src/Content/Nav.php:190
+msgid "Help and documentation"
 msgstr ""
 
-#: src/Core/Installer.php:478
-msgid "config/local.config.php is writable"
+#: src/Content/Nav.php:194
+msgid "Apps"
 msgstr ""
 
-#: src/Core/Installer.php:498
-msgid ""
-"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
-"compiles templates to PHP to speed up rendering."
+#: src/Content/Nav.php:194
+msgid "Addon applications, utilities, games"
 msgstr ""
 
-#: src/Core/Installer.php:499
-msgid ""
-"In order to store these compiled templates, the web server needs to have "
-"write access to the directory view/smarty3/ under the Friendica top level "
-"folder."
+#: src/Content/Nav.php:198
+msgid "Search site content"
 msgstr ""
 
-#: src/Core/Installer.php:500
-msgid ""
-"Please ensure that the user that your web server runs as (e.g. www-data) has "
-"write access to this folder."
+#: src/Content/Nav.php:201 src/Content/Text/HTML.php:909
+msgid "Full Text"
 msgstr ""
 
-#: src/Core/Installer.php:501
-msgid ""
-"Note: as a security measure, you should give the web server write access to "
-"view/smarty3/ only--not the template files (.tpl) that it contains."
+#: src/Content/Nav.php:202 src/Content/Text/HTML.php:910
+#: src/Content/Widget/TagCloud.php:54
+msgid "Tags"
 msgstr ""
 
-#: src/Core/Installer.php:504
-msgid "view/smarty3 is writable"
+#: src/Content/Nav.php:222
+msgid "Community"
 msgstr ""
 
-#: src/Core/Installer.php:533
-msgid ""
-"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist "
-"to .htaccess."
+#: src/Content/Nav.php:222
+msgid "Conversations on this and other servers"
 msgstr ""
 
-#: src/Core/Installer.php:535
-msgid "Error message from Curl when fetching"
+#: src/Content/Nav.php:226 src/Model/Profile.php:940 src/Model/Profile.php:951
+#: view/theme/frio/theme.php:270
+msgid "Events and Calendar"
 msgstr ""
 
-#: src/Core/Installer.php:540
-msgid "Url rewrite is working"
+#: src/Content/Nav.php:229
+msgid "Directory"
 msgstr ""
 
-#: src/Core/Installer.php:569
-msgid "ImageMagick PHP extension is not installed"
+#: src/Content/Nav.php:229
+msgid "People directory"
 msgstr ""
 
-#: src/Core/Installer.php:571
-msgid "ImageMagick PHP extension is installed"
+#: src/Content/Nav.php:231
+msgid "Information about this friendica instance"
 msgstr ""
 
-#: src/Core/Installer.php:573 tests/src/Core/InstallerTest.php:329
-#: tests/src/Core/InstallerTest.php:355
-msgid "ImageMagick supports GIF"
+#: src/Content/Nav.php:234
+msgid "Terms of Service of this Friendica instance"
 msgstr ""
 
-#: src/Core/Installer.php:595
-msgid "Could not connect to database."
+#: src/Content/Nav.php:239 view/theme/frio/theme.php:269
+msgid "Conversations from your friends"
 msgstr ""
 
-#: src/Core/Installer.php:602
-msgid "Database already in use."
+#: src/Content/Nav.php:240
+msgid "Network Reset"
 msgstr ""
 
-#: src/Core/L10n.php:368 src/Model/Event.php:398
-msgid "Tuesday"
+#: src/Content/Nav.php:240
+msgid "Load Network page with no filters"
 msgstr ""
 
-#: src/Core/L10n.php:368 src/Model/Event.php:399
-msgid "Wednesday"
+#: src/Content/Nav.php:246 src/Core/NotificationsManager.php:203
+msgid "Introductions"
 msgstr ""
 
-#: src/Core/L10n.php:368 src/Model/Event.php:400
-msgid "Thursday"
+#: src/Content/Nav.php:246
+msgid "Friend Requests"
 msgstr ""
 
-#: src/Core/L10n.php:368 src/Model/Event.php:401
-msgid "Friday"
+#: src/Content/Nav.php:248
+msgid "See all notifications"
 msgstr ""
 
-#: src/Core/L10n.php:368 src/Model/Event.php:402
-msgid "Saturday"
+#: src/Content/Nav.php:249
+msgid "Mark all system notifications seen"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:417
-msgid "January"
+#: src/Content/Nav.php:252 view/theme/frio/theme.php:271
+msgid "Private mail"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:418
-msgid "February"
+#: src/Content/Nav.php:253
+msgid "Inbox"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:419
-msgid "March"
+#: src/Content/Nav.php:254
+msgid "Outbox"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:420
-msgid "April"
-msgstr ""
-
-#: src/Core/L10n.php:372 src/Core/L10n.php:391 src/Model/Event.php:408
-msgid "May"
+#: src/Content/Nav.php:258
+msgid "Manage"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:421
-msgid "June"
+#: src/Content/Nav.php:258
+msgid "Manage other pages"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:422
-msgid "July"
+#: src/Content/Nav.php:263 view/theme/frio/theme.php:272
+msgid "Account settings"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:423
-msgid "August"
+#: src/Content/Nav.php:266
+msgid "Manage/Edit Profiles"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:424
-msgid "September"
+#: src/Content/Nav.php:269 view/theme/frio/theme.php:273
+msgid "Manage/edit friends and contacts"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:425
-msgid "October"
+#: src/Content/Nav.php:274
+msgid "Site setup and configuration"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:426
-msgid "November"
+#: src/Content/Nav.php:277
+msgid "Navigation"
 msgstr ""
 
-#: src/Core/L10n.php:372 src/Model/Event.php:427
-msgid "December"
+#: src/Content/Nav.php:277
+msgid "Site map"
 msgstr ""
 
-#: src/Core/L10n.php:387 src/Model/Event.php:389
-msgid "Mon"
+#: src/Content/OEmbed.php:256
+msgid "Embedding disabled"
 msgstr ""
 
-#: src/Core/L10n.php:387 src/Model/Event.php:390
-msgid "Tue"
+#: src/Content/OEmbed.php:379
+msgid "Embedded content"
 msgstr ""
 
-#: src/Core/L10n.php:387 src/Model/Event.php:391
-msgid "Wed"
+#: src/Content/Pager.php:153
+msgid "newer"
 msgstr ""
 
-#: src/Core/L10n.php:387 src/Model/Event.php:392
-msgid "Thu"
+#: src/Content/Pager.php:158
+msgid "older"
 msgstr ""
 
-#: src/Core/L10n.php:387 src/Model/Event.php:393
-msgid "Fri"
+#: src/Content/Pager.php:203
+msgid "prev"
 msgstr ""
 
-#: src/Core/L10n.php:387 src/Model/Event.php:394
-msgid "Sat"
+#: src/Content/Pager.php:263
+msgid "last"
 msgstr ""
 
-#: src/Core/L10n.php:387 src/Model/Event.php:388
-msgid "Sun"
+#: src/Content/Text/BBCode.php:429
+msgid "view full size"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:404
-msgid "Jan"
+#: src/Content/Text/BBCode.php:863 src/Content/Text/BBCode.php:1596
+#: src/Content/Text/BBCode.php:1597
+msgid "Image/photo"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:405
-msgid "Feb"
+#: src/Content/Text/BBCode.php:967
+#, php-format
+msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:406
-msgid "Mar"
+#: src/Content/Text/BBCode.php:1523 src/Content/Text/BBCode.php:1545
+msgid "$1 wrote:"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:407
-msgid "Apr"
+#: src/Content/Text/BBCode.php:1607 src/Content/Text/BBCode.php:1608
+msgid "Encrypted content"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:410
-msgid "Jul"
+#: src/Content/Text/BBCode.php:1715
+msgid "Invalid source protocol"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:411
-msgid "Aug"
+#: src/Content/Text/BBCode.php:1726
+msgid "Invalid link protocol"
 msgstr ""
 
-#: src/Core/L10n.php:391
-msgid "Sep"
+#: src/Content/Text/HTML.php:800
+msgid "Loading more entries..."
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:413
-msgid "Oct"
+#: src/Content/Text/HTML.php:801
+msgid "The end"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:414
-msgid "Nov"
+#: src/Content/Text/HTML.php:894
+msgid "Follow"
 msgstr ""
 
-#: src/Core/L10n.php:391 src/Model/Event.php:415
-msgid "Dec"
+#: src/Content/Text/HTML.php:951 src/Model/Item.php:3503
+#: src/Model/Item.php:3514
+msgid "Click to open/close"
 msgstr ""
 
-#: src/Core/L10n.php:410
-msgid "poke"
+#: src/Content/Widget/CalendarExport.php:64
+msgid "Export"
 msgstr ""
 
-#: src/Core/L10n.php:410
-msgid "poked"
+#: src/Content/Widget/CalendarExport.php:65
+msgid "Export calendar as ical"
 msgstr ""
 
-#: src/Core/L10n.php:411
-msgid "ping"
+#: src/Content/Widget/CalendarExport.php:66
+msgid "Export calendar as csv"
 msgstr ""
 
-#: src/Core/L10n.php:411
-msgid "pinged"
+#: src/Content/Widget/ContactBlock.php:58
+msgid "No contacts"
 msgstr ""
 
-#: src/Core/L10n.php:412
-msgid "prod"
+#: src/Content/Widget/ContactBlock.php:90
+#, php-format
+msgid "%d Contact"
+msgid_plural "%d Contacts"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/Content/Widget/ContactBlock.php:109
+msgid "View Contacts"
 msgstr ""
 
-#: src/Core/L10n.php:412
-msgid "prodded"
+#: src/Content/Widget.php:35
+msgid "Add New Contact"
 msgstr ""
 
-#: src/Core/L10n.php:413
-msgid "slap"
+#: src/Content/Widget.php:36
+msgid "Enter address or web location"
 msgstr ""
 
-#: src/Core/L10n.php:413
-msgid "slapped"
+#: src/Content/Widget.php:37
+msgid "Example: bob@example.com, http://example.com/barbara"
 msgstr ""
 
-#: src/Core/L10n.php:414
-msgid "finger"
+#: src/Content/Widget.php:55
+#, php-format
+msgid "%d invitation available"
+msgid_plural "%d invitations available"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/Content/Widget.php:61 view/theme/vier/theme.php:199
+msgid "Find People"
 msgstr ""
 
-#: src/Core/L10n.php:414
-msgid "fingered"
+#: src/Content/Widget.php:62 view/theme/vier/theme.php:200
+msgid "Enter name or interest"
 msgstr ""
 
-#: src/Core/L10n.php:415
-msgid "rebuff"
+#: src/Content/Widget.php:64 view/theme/vier/theme.php:202
+msgid "Examples: Robert Morgenstein, Fishing"
 msgstr ""
 
-#: src/Core/L10n.php:415
-msgid "rebuffed"
+#: src/Content/Widget.php:67 view/theme/vier/theme.php:205
+msgid "Similar Interests"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:175
-msgid "System"
+#: src/Content/Widget.php:68 view/theme/vier/theme.php:206
+msgid "Random Profile"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:196 src/Content/Nav.php:180
-#: src/Content/Nav.php:242
-msgid "Home"
+#: src/Content/Widget.php:69 view/theme/vier/theme.php:207
+msgid "Invite Friends"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:203 src/Content/Nav.php:246
-msgid "Introductions"
+#: src/Content/Widget.php:72 view/theme/vier/theme.php:210
+msgid "Local Directory"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:265 src/Core/NotificationsManager.php:277
-#, php-format
-msgid "%s commented on %s's post"
+#: src/Content/Widget.php:158
+msgid "Protocols"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:276
-#, php-format
-msgid "%s created a new post"
+#: src/Content/Widget.php:161
+msgid "All Protocols"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:290
-#, php-format
-msgid "%s liked %s's post"
+#: src/Content/Widget.php:198
+msgid "Saved Folders"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:303
-#, php-format
-msgid "%s disliked %s's post"
+#: src/Content/Widget.php:201 src/Content/Widget.php:243
+msgid "Everything"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:316
-#, php-format
-msgid "%s is attending %s's event"
+#: src/Content/Widget.php:240
+msgid "Categories"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:329
+#: src/Content/Widget.php:324
 #, php-format
-msgid "%s is not attending %s's event"
+msgid "%d contact in common"
+msgid_plural "%d contacts in common"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/Core/ACL.php:287
+msgid "Post to Email"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:342
-#, php-format
-msgid "%s may attend %s's event"
+#: src/Core/ACL.php:293
+msgid "Hide your profile details from unknown viewers?"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:375
+#: src/Core/ACL.php:292
 #, php-format
-msgid "%s is now friends with %s"
+msgid "Connectors disabled, since \"%s\" is enabled."
 msgstr ""
 
-#: src/Core/NotificationsManager.php:651
-msgid "Friend Suggestion"
+#: src/Core/ACL.php:299
+msgid "Visible to everybody"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:685
-msgid "Friend/Connect Request"
+#: src/Core/ACL.php:300 view/theme/vier/config.php:116
+msgid "show"
 msgstr ""
 
-#: src/Core/NotificationsManager.php:685
-msgid "New Follower"
+#: src/Core/ACL.php:301 view/theme/vier/config.php:116
+msgid "don't show"
 msgstr ""
 
-#: src/Core/System.php:137
-msgid "Error 400 - Bad Request"
+#: src/Core/ACL.php:311
+msgid "Close"
 msgstr ""
 
-#: src/Core/System.php:138
-msgid "Error 401 - Unauthorized"
+#: src/Core/Authentication.php:87
+msgid "Welcome "
 msgstr ""
 
-#: src/Core/System.php:139
-msgid "Error 403 - Forbidden"
+#: src/Core/Authentication.php:88
+msgid "Please upload a profile photo."
 msgstr ""
 
-#: src/Core/System.php:140
-msgid "Error 404 - Not Found"
+#: src/Core/Authentication.php:90
+msgid "Welcome back "
 msgstr ""
 
-#: src/Core/System.php:141
-msgid "Error 500 - Internal Server Error"
+#: src/Core/Console/ArchiveContact.php:65
+#, php-format
+msgid "Could not find any unarchived contact entry for this URL (%s)"
 msgstr ""
 
-#: src/Core/System.php:142
-msgid "Error 503 - Service Unavailable"
+#: src/Core/Console/ArchiveContact.php:70
+msgid "The contact entries have been archived"
 msgstr ""
 
-#: src/Core/System.php:150
-msgid ""
-"The server cannot or will not process the request due to an apparent client "
-"error."
+#: src/Core/Console/NewPassword.php:72
+msgid "Enter new password: "
 msgstr ""
 
-#: src/Core/System.php:151
-msgid "Authentication is required and has failed or has not yet been provided."
+#: src/Core/Console/PostUpdate.php:50
+#, php-format
+msgid "Post update version number has been set to %s."
 msgstr ""
 
-#: src/Core/System.php:152
-msgid ""
-"The request was valid, but the server is refusing action. The user might not "
-"have the necessary permissions for a resource, or may need an account."
+#: src/Core/Console/PostUpdate.php:58
+msgid "Check for pending update actions."
 msgstr ""
 
-#: src/Core/System.php:153
-msgid ""
-"The requested resource could not be found but may be available in the future."
-msgstr ""
-
-#: src/Core/System.php:154
-msgid ""
-"An unexpected condition was encountered and no more specific message is "
-"suitable."
+#: src/Core/Console/PostUpdate.php:60
+msgid "Done."
 msgstr ""
 
-#: src/Core/System.php:155
-msgid ""
-"The server is currently unavailable (because it is overloaded or down for "
-"maintenance). Please try again later."
+#: src/Core/Console/PostUpdate.php:62
+msgid "Execute pending post updates."
 msgstr ""
 
-#: src/Core/Update.php:168
-#, php-format
-msgid "Update %s failed. See error logs."
+#: src/Core/Console/PostUpdate.php:68
+msgid "All pending post updates are done."
 msgstr ""
 
-#: src/Core/Update.php:225
-#, php-format
+#: src/Core/Installer.php:163
 msgid ""
-"\n"
-"\t\t\t\tThe friendica developers released update %s recently,\n"
-"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
-"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact "
-"a\n"
-"\t\t\t\tfriendica developer if you can not help me on your own. My database "
-"might be invalid."
+"The database configuration file \"config/local.config.php\" could not be "
+"written. Please use the enclosed text to create a configuration file in your "
+"web server root."
 msgstr ""
 
-#: src/Core/Update.php:231
-#, php-format
+#: src/Core/Installer.php:182
 msgid ""
-"The error message is\n"
-"[pre]%s[/pre]"
+"You may need to import the file \"database.sql\" manually using phpmyadmin "
+"or mysql."
 msgstr ""
 
-#: src/Core/Update.php:260
-#, php-format
-msgid ""
-"\n"
-"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
+#: src/Core/Installer.php:183 src/Module/Install.php:132
+#: src/Module/Install.php:263
+msgid "Please see the file \"INSTALL.txt\"."
 msgstr ""
 
-#: src/Core/UserImport.php:103
-msgid "Error decoding account file"
+#: src/Core/Installer.php:244
+msgid "Could not find a command line version of PHP in the web server PATH."
 msgstr ""
 
-#: src/Core/UserImport.php:109
-msgid "Error! No version data in file! This is not a Friendica account file?"
+#: src/Core/Installer.php:245
+msgid ""
+"If you don't have a command line version of PHP installed on your server, "
+"you will not be able to run the background processing. See <a href='https://"
+"github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-"
+"worker'>'Setup the worker'</a>"
 msgstr ""
 
-#: src/Core/UserImport.php:117
-#, php-format
-msgid "User '%s' already exists on this server!"
+#: src/Core/Installer.php:249
+msgid "PHP executable path"
 msgstr ""
 
-#: src/Core/UserImport.php:153
-msgid "User creation error"
+#: src/Core/Installer.php:249
+msgid ""
+"Enter full path to php executable. You can leave this blank to continue the "
+"installation."
 msgstr ""
 
-#: src/Core/UserImport.php:171
-msgid "User profile creation error"
+#: src/Core/Installer.php:254
+msgid "Command line PHP"
 msgstr ""
 
-#: src/Core/UserImport.php:215
-#, php-format
-msgid "%d contact not imported"
-msgid_plural "%d contacts not imported"
-msgstr[0] ""
-msgstr[1] ""
+#: src/Core/Installer.php:263
+msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
+msgstr ""
 
-#: src/Core/UserImport.php:280
-msgid "Done. You can now login with your username and password"
+#: src/Core/Installer.php:264
+msgid "Found PHP version: "
 msgstr ""
 
-#: src/Util/Temporal.php:147 src/Model/Profile.php:771
-msgid "Birthday:"
+#: src/Core/Installer.php:266
+msgid "PHP cli binary"
 msgstr ""
 
-#: src/Util/Temporal.php:151
-msgid "YYYY-MM-DD or MM-DD"
+#: src/Core/Installer.php:279
+msgid ""
+"The command line version of PHP on your system does not have "
+"\"register_argc_argv\" enabled."
 msgstr ""
 
-#: src/Util/Temporal.php:298
-msgid "never"
+#: src/Core/Installer.php:280
+msgid "This is required for message delivery to work."
 msgstr ""
 
-#: src/Util/Temporal.php:305
-msgid "less than a second ago"
+#: src/Core/Installer.php:285
+msgid "PHP register_argc_argv"
 msgstr ""
 
-#: src/Util/Temporal.php:313
-msgid "year"
+#: src/Core/Installer.php:317
+msgid ""
+"Error: the \"openssl_pkey_new\" function on this system is not able to "
+"generate encryption keys"
 msgstr ""
 
-#: src/Util/Temporal.php:313
-msgid "years"
+#: src/Core/Installer.php:318
+msgid ""
+"If running under Windows, please see \"http://www.php.net/manual/en/openssl."
+"installation.php\"."
 msgstr ""
 
-#: src/Util/Temporal.php:314
-msgid "months"
+#: src/Core/Installer.php:321
+msgid "Generate encryption keys"
 msgstr ""
 
-#: src/Util/Temporal.php:315
-msgid "weeks"
+#: src/Core/Installer.php:372
+msgid ""
+"Error: Apache webserver mod-rewrite module is required but not installed."
 msgstr ""
 
-#: src/Util/Temporal.php:316
-msgid "days"
+#: src/Core/Installer.php:377
+msgid "Apache mod_rewrite module"
 msgstr ""
 
-#: src/Util/Temporal.php:317
-msgid "hour"
+#: src/Core/Installer.php:383
+msgid "Error: PDO or MySQLi PHP module required but not installed."
 msgstr ""
 
-#: src/Util/Temporal.php:317
-msgid "hours"
+#: src/Core/Installer.php:388
+msgid "Error: The MySQL driver for PDO is not installed."
 msgstr ""
 
-#: src/Util/Temporal.php:318
-msgid "minute"
+#: src/Core/Installer.php:392
+msgid "PDO or MySQLi PHP module"
 msgstr ""
 
-#: src/Util/Temporal.php:318
-msgid "minutes"
+#: src/Core/Installer.php:400
+msgid "Error, XML PHP module required but not installed."
 msgstr ""
 
-#: src/Util/Temporal.php:319
-msgid "second"
+#: src/Core/Installer.php:404
+msgid "XML PHP module"
 msgstr ""
 
-#: src/Util/Temporal.php:319
-msgid "seconds"
+#: src/Core/Installer.php:407
+msgid "libCurl PHP module"
 msgstr ""
 
-#: src/Util/Temporal.php:329
-#, php-format
-msgid "in %1$d %2$s"
+#: src/Core/Installer.php:408
+msgid "Error: libCURL PHP module required but not installed."
 msgstr ""
 
-#: src/Util/Temporal.php:332
-#, php-format
-msgid "%1$d %2$s ago"
+#: src/Core/Installer.php:414
+msgid "GD graphics PHP module"
 msgstr ""
 
-#: src/Content/Text/BBCode.php:429
-msgid "view full size"
+#: src/Core/Installer.php:415
+msgid ""
+"Error: GD graphics PHP module with JPEG support required but not installed."
 msgstr ""
 
-#: src/Content/Text/BBCode.php:863 src/Content/Text/BBCode.php:1596
-#: src/Content/Text/BBCode.php:1597
-msgid "Image/photo"
+#: src/Core/Installer.php:421
+msgid "OpenSSL PHP module"
 msgstr ""
 
-#: src/Content/Text/BBCode.php:967
-#, php-format
-msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
+#: src/Core/Installer.php:422
+msgid "Error: openssl PHP module required but not installed."
 msgstr ""
 
-#: src/Content/Text/BBCode.php:1523 src/Content/Text/BBCode.php:1545
-msgid "$1 wrote:"
+#: src/Core/Installer.php:428
+msgid "mb_string PHP module"
 msgstr ""
 
-#: src/Content/Text/BBCode.php:1607 src/Content/Text/BBCode.php:1608
-msgid "Encrypted content"
+#: src/Core/Installer.php:429
+msgid "Error: mb_string PHP module required but not installed."
 msgstr ""
 
-#: src/Content/Text/BBCode.php:1715
-msgid "Invalid source protocol"
+#: src/Core/Installer.php:435
+msgid "iconv PHP module"
 msgstr ""
 
-#: src/Content/Text/BBCode.php:1726
-msgid "Invalid link protocol"
+#: src/Core/Installer.php:436
+msgid "Error: iconv PHP module required but not installed."
 msgstr ""
 
-#: src/Content/Text/HTML.php:800
-msgid "Loading more entries..."
+#: src/Core/Installer.php:442
+msgid "POSIX PHP module"
 msgstr ""
 
-#: src/Content/Text/HTML.php:801
-msgid "The end"
+#: src/Core/Installer.php:443
+msgid "Error: POSIX PHP module required but not installed."
 msgstr ""
 
-#: src/Content/Text/HTML.php:894
-msgid "Follow"
+#: src/Core/Installer.php:449
+msgid "JSON PHP module"
 msgstr ""
 
-#: src/Content/Text/HTML.php:903 src/Content/Nav.php:79
-msgid "@name, !forum, #tags, content"
+#: src/Core/Installer.php:450
+msgid "Error: JSON PHP module required but not installed."
 msgstr ""
 
-#: src/Content/Text/HTML.php:909 src/Content/Nav.php:201
-msgid "Full Text"
+#: src/Core/Installer.php:473
+msgid ""
+"The web installer needs to be able to create a file called \"local.config.php"
+"\" in the \"config\" folder of your web server and it is unable to do so."
 msgstr ""
 
-#: src/Content/Text/HTML.php:910 src/Content/Widget/TagCloud.php:54
-#: src/Content/Nav.php:202
-msgid "Tags"
+#: src/Core/Installer.php:474
+msgid ""
+"This is most often a permission setting, as the web server may not be able "
+"to write files in your folder - even if you can."
 msgstr ""
 
-#: src/Content/Text/HTML.php:951 src/Model/Item.php:3485
-#: src/Model/Item.php:3496
-msgid "Click to open/close"
+#: src/Core/Installer.php:475
+msgid ""
+"At the end of this procedure, we will give you a text to save in a file "
+"named local.config.php in your Friendica \"config\" folder."
 msgstr ""
 
-#: src/Content/Widget/CalendarExport.php:64
-msgid "Export"
+#: src/Core/Installer.php:476
+msgid ""
+"You can alternatively skip this procedure and perform a manual installation. "
+"Please see the file \"INSTALL.txt\" for instructions."
 msgstr ""
 
-#: src/Content/Widget/CalendarExport.php:65
-msgid "Export calendar as ical"
+#: src/Core/Installer.php:479
+msgid "config/local.config.php is writable"
 msgstr ""
 
-#: src/Content/Widget/CalendarExport.php:66
-msgid "Export calendar as csv"
+#: src/Core/Installer.php:499
+msgid ""
+"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
+"compiles templates to PHP to speed up rendering."
 msgstr ""
 
-#: src/Content/Widget/ContactBlock.php:58
-msgid "No contacts"
+#: src/Core/Installer.php:500
+msgid ""
+"In order to store these compiled templates, the web server needs to have "
+"write access to the directory view/smarty3/ under the Friendica top level "
+"folder."
 msgstr ""
 
-#: src/Content/Widget/ContactBlock.php:90
-#, php-format
-msgid "%d Contact"
-msgid_plural "%d Contacts"
-msgstr[0] ""
-msgstr[1] ""
+#: src/Core/Installer.php:501
+msgid ""
+"Please ensure that the user that your web server runs as (e.g. www-data) has "
+"write access to this folder."
+msgstr ""
 
-#: src/Content/Widget/ContactBlock.php:109
-msgid "View Contacts"
+#: src/Core/Installer.php:502
+msgid ""
+"Note: as a security measure, you should give the web server write access to "
+"view/smarty3/ only--not the template files (.tpl) that it contains."
 msgstr ""
 
-#: src/Content/ContactSelector.php:58
-msgid "Frequently"
+#: src/Core/Installer.php:505
+msgid "view/smarty3 is writable"
 msgstr ""
 
-#: src/Content/ContactSelector.php:59
-msgid "Hourly"
+#: src/Core/Installer.php:534
+msgid ""
+"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist "
+"to .htaccess."
 msgstr ""
 
-#: src/Content/ContactSelector.php:60
-msgid "Twice daily"
+#: src/Core/Installer.php:536
+msgid "Error message from Curl when fetching"
 msgstr ""
 
-#: src/Content/ContactSelector.php:61
-msgid "Daily"
+#: src/Core/Installer.php:541
+msgid "Url rewrite is working"
 msgstr ""
 
-#: src/Content/ContactSelector.php:62
-msgid "Weekly"
+#: src/Core/Installer.php:570
+msgid "ImageMagick PHP extension is not installed"
 msgstr ""
 
-#: src/Content/ContactSelector.php:63
-msgid "Monthly"
+#: src/Core/Installer.php:572
+msgid "ImageMagick PHP extension is installed"
 msgstr ""
 
-#: src/Content/ContactSelector.php:83
-msgid "DFRN"
+#: src/Core/Installer.php:574 tests/src/Core/InstallerTest.php:329
+#: tests/src/Core/InstallerTest.php:355
+msgid "ImageMagick supports GIF"
 msgstr ""
 
-#: src/Content/ContactSelector.php:84
-msgid "OStatus"
+#: src/Core/Installer.php:597
+msgid "Could not connect to database."
 msgstr ""
 
-#: src/Content/ContactSelector.php:85
-msgid "RSS/Atom"
+#: src/Core/Installer.php:604
+msgid "Database already in use."
 msgstr ""
 
-#: src/Content/ContactSelector.php:88
-msgid "Zot!"
+#: src/Core/L10n.php:368 src/Model/Event.php:397
+msgid "Tuesday"
 msgstr ""
 
-#: src/Content/ContactSelector.php:89
-msgid "LinkedIn"
+#: src/Core/L10n.php:368 src/Model/Event.php:398
+msgid "Wednesday"
 msgstr ""
 
-#: src/Content/ContactSelector.php:90
-msgid "XMPP/IM"
+#: src/Core/L10n.php:368 src/Model/Event.php:399
+msgid "Thursday"
 msgstr ""
 
-#: src/Content/ContactSelector.php:91
-msgid "MySpace"
+#: src/Core/L10n.php:368 src/Model/Event.php:400
+msgid "Friday"
 msgstr ""
 
-#: src/Content/ContactSelector.php:92
-msgid "Google+"
+#: src/Core/L10n.php:368 src/Model/Event.php:401
+msgid "Saturday"
 msgstr ""
 
-#: src/Content/ContactSelector.php:93
-msgid "pump.io"
+#: src/Core/L10n.php:372 src/Model/Event.php:416
+msgid "January"
 msgstr ""
 
-#: src/Content/ContactSelector.php:94
-msgid "Twitter"
+#: src/Core/L10n.php:372 src/Model/Event.php:417
+msgid "February"
 msgstr ""
 
-#: src/Content/ContactSelector.php:95
-msgid "Diaspora Connector"
+#: src/Core/L10n.php:372 src/Model/Event.php:418
+msgid "March"
 msgstr ""
 
-#: src/Content/ContactSelector.php:96
-msgid "GNU Social Connector"
+#: src/Core/L10n.php:372 src/Model/Event.php:419
+msgid "April"
 msgstr ""
 
-#: src/Content/ContactSelector.php:97
-msgid "ActivityPub"
+#: src/Core/L10n.php:372 src/Core/L10n.php:391 src/Model/Event.php:407
+msgid "May"
 msgstr ""
 
-#: src/Content/ContactSelector.php:98
-msgid "pnut"
+#: src/Core/L10n.php:372 src/Model/Event.php:420
+msgid "June"
 msgstr ""
 
-#: src/Content/ContactSelector.php:154
-msgid "Male"
+#: src/Core/L10n.php:372 src/Model/Event.php:421
+msgid "July"
 msgstr ""
 
-#: src/Content/ContactSelector.php:155
-msgid "Female"
+#: src/Core/L10n.php:372 src/Model/Event.php:422
+msgid "August"
 msgstr ""
 
-#: src/Content/ContactSelector.php:156
-msgid "Currently Male"
+#: src/Core/L10n.php:372 src/Model/Event.php:423
+msgid "September"
 msgstr ""
 
-#: src/Content/ContactSelector.php:157
-msgid "Currently Female"
+#: src/Core/L10n.php:372 src/Model/Event.php:424
+msgid "October"
 msgstr ""
 
-#: src/Content/ContactSelector.php:158
-msgid "Mostly Male"
+#: src/Core/L10n.php:372 src/Model/Event.php:425
+msgid "November"
 msgstr ""
 
-#: src/Content/ContactSelector.php:159
-msgid "Mostly Female"
+#: src/Core/L10n.php:372 src/Model/Event.php:426
+msgid "December"
 msgstr ""
 
-#: src/Content/ContactSelector.php:160
-msgid "Transgender"
+#: src/Core/L10n.php:387 src/Model/Event.php:388
+msgid "Mon"
 msgstr ""
 
-#: src/Content/ContactSelector.php:161
-msgid "Intersex"
+#: src/Core/L10n.php:387 src/Model/Event.php:389
+msgid "Tue"
 msgstr ""
 
-#: src/Content/ContactSelector.php:162
-msgid "Transsexual"
+#: src/Core/L10n.php:387 src/Model/Event.php:390
+msgid "Wed"
 msgstr ""
 
-#: src/Content/ContactSelector.php:163
-msgid "Hermaphrodite"
+#: src/Core/L10n.php:387 src/Model/Event.php:391
+msgid "Thu"
 msgstr ""
 
-#: src/Content/ContactSelector.php:164
-msgid "Neuter"
+#: src/Core/L10n.php:387 src/Model/Event.php:392
+msgid "Fri"
 msgstr ""
 
-#: src/Content/ContactSelector.php:165
-msgid "Non-specific"
+#: src/Core/L10n.php:387 src/Model/Event.php:393
+msgid "Sat"
 msgstr ""
 
-#: src/Content/ContactSelector.php:166
-msgid "Other"
+#: src/Core/L10n.php:387 src/Model/Event.php:387
+msgid "Sun"
 msgstr ""
 
-#: src/Content/ContactSelector.php:194
-msgid "Males"
+#: src/Core/L10n.php:391 src/Model/Event.php:403
+msgid "Jan"
 msgstr ""
 
-#: src/Content/ContactSelector.php:195
-msgid "Females"
+#: src/Core/L10n.php:391 src/Model/Event.php:404
+msgid "Feb"
 msgstr ""
 
-#: src/Content/ContactSelector.php:196
-msgid "Gay"
+#: src/Core/L10n.php:391 src/Model/Event.php:405
+msgid "Mar"
 msgstr ""
 
-#: src/Content/ContactSelector.php:197
-msgid "Lesbian"
+#: src/Core/L10n.php:391 src/Model/Event.php:406
+msgid "Apr"
 msgstr ""
 
-#: src/Content/ContactSelector.php:198
-msgid "No Preference"
+#: src/Core/L10n.php:391 src/Model/Event.php:409
+msgid "Jul"
 msgstr ""
 
-#: src/Content/ContactSelector.php:199
-msgid "Bisexual"
+#: src/Core/L10n.php:391 src/Model/Event.php:410
+msgid "Aug"
 msgstr ""
 
-#: src/Content/ContactSelector.php:200
-msgid "Autosexual"
+#: src/Core/L10n.php:391
+msgid "Sep"
 msgstr ""
 
-#: src/Content/ContactSelector.php:201
-msgid "Abstinent"
+#: src/Core/L10n.php:391 src/Model/Event.php:412
+msgid "Oct"
 msgstr ""
 
-#: src/Content/ContactSelector.php:202
-msgid "Virgin"
+#: src/Core/L10n.php:391 src/Model/Event.php:413
+msgid "Nov"
 msgstr ""
 
-#: src/Content/ContactSelector.php:203
-msgid "Deviant"
+#: src/Core/L10n.php:391 src/Model/Event.php:414
+msgid "Dec"
 msgstr ""
 
-#: src/Content/ContactSelector.php:204
-msgid "Fetish"
+#: src/Core/L10n.php:410
+msgid "poke"
 msgstr ""
 
-#: src/Content/ContactSelector.php:205
-msgid "Oodles"
+#: src/Core/L10n.php:410
+msgid "poked"
 msgstr ""
 
-#: src/Content/ContactSelector.php:206
-msgid "Nonsexual"
+#: src/Core/L10n.php:411
+msgid "ping"
 msgstr ""
 
-#: src/Content/ContactSelector.php:232
-msgid "Single"
+#: src/Core/L10n.php:411
+msgid "pinged"
 msgstr ""
 
-#: src/Content/ContactSelector.php:233
-msgid "Lonely"
+#: src/Core/L10n.php:412
+msgid "prod"
 msgstr ""
 
-#: src/Content/ContactSelector.php:234
-msgid "Available"
+#: src/Core/L10n.php:412
+msgid "prodded"
 msgstr ""
 
-#: src/Content/ContactSelector.php:235
-msgid "Unavailable"
+#: src/Core/L10n.php:413
+msgid "slap"
 msgstr ""
 
-#: src/Content/ContactSelector.php:236
-msgid "Has crush"
+#: src/Core/L10n.php:413
+msgid "slapped"
 msgstr ""
 
-#: src/Content/ContactSelector.php:237
-msgid "Infatuated"
+#: src/Core/L10n.php:414
+msgid "finger"
 msgstr ""
 
-#: src/Content/ContactSelector.php:238
-msgid "Dating"
+#: src/Core/L10n.php:414
+msgid "fingered"
 msgstr ""
 
-#: src/Content/ContactSelector.php:239
-msgid "Unfaithful"
+#: src/Core/L10n.php:415
+msgid "rebuff"
 msgstr ""
 
-#: src/Content/ContactSelector.php:240
-msgid "Sex Addict"
+#: src/Core/L10n.php:415
+msgid "rebuffed"
 msgstr ""
 
-#: src/Content/ContactSelector.php:241 src/Model/User.php:701
-msgid "Friends"
+#: src/Core/NotificationsManager.php:175
+msgid "System"
 msgstr ""
 
-#: src/Content/ContactSelector.php:242
-msgid "Friends/Benefits"
+#: src/Core/NotificationsManager.php:265 src/Core/NotificationsManager.php:277
+#, php-format
+msgid "%s commented on %s's post"
 msgstr ""
 
-#: src/Content/ContactSelector.php:243
-msgid "Casual"
+#: src/Core/NotificationsManager.php:276
+#, php-format
+msgid "%s created a new post"
 msgstr ""
 
-#: src/Content/ContactSelector.php:244
-msgid "Engaged"
+#: src/Core/NotificationsManager.php:290
+#, php-format
+msgid "%s liked %s's post"
 msgstr ""
 
-#: src/Content/ContactSelector.php:245
-msgid "Married"
+#: src/Core/NotificationsManager.php:303
+#, php-format
+msgid "%s disliked %s's post"
 msgstr ""
 
-#: src/Content/ContactSelector.php:246
-msgid "Imaginarily married"
+#: src/Core/NotificationsManager.php:316
+#, php-format
+msgid "%s is attending %s's event"
 msgstr ""
 
-#: src/Content/ContactSelector.php:247
-msgid "Partners"
+#: src/Core/NotificationsManager.php:329
+#, php-format
+msgid "%s is not attending %s's event"
 msgstr ""
 
-#: src/Content/ContactSelector.php:248
-msgid "Cohabiting"
+#: src/Core/NotificationsManager.php:342
+#, php-format
+msgid "%s may attend %s's event"
 msgstr ""
 
-#: src/Content/ContactSelector.php:249
-msgid "Common law"
+#: src/Core/NotificationsManager.php:375
+#, php-format
+msgid "%s is now friends with %s"
 msgstr ""
 
-#: src/Content/ContactSelector.php:250
-msgid "Happy"
+#: src/Core/NotificationsManager.php:651
+msgid "Friend Suggestion"
 msgstr ""
 
-#: src/Content/ContactSelector.php:251
-msgid "Not looking"
+#: src/Core/NotificationsManager.php:685
+msgid "Friend/Connect Request"
 msgstr ""
 
-#: src/Content/ContactSelector.php:252
-msgid "Swinger"
+#: src/Core/NotificationsManager.php:685
+msgid "New Follower"
 msgstr ""
 
-#: src/Content/ContactSelector.php:253
-msgid "Betrayed"
+#: src/Core/System.php:137
+msgid "Error 400 - Bad Request"
 msgstr ""
 
-#: src/Content/ContactSelector.php:254
-msgid "Separated"
+#: src/Core/System.php:138
+msgid "Error 401 - Unauthorized"
 msgstr ""
 
-#: src/Content/ContactSelector.php:255
-msgid "Unstable"
+#: src/Core/System.php:139
+msgid "Error 403 - Forbidden"
 msgstr ""
 
-#: src/Content/ContactSelector.php:256
-msgid "Divorced"
+#: src/Core/System.php:140
+msgid "Error 404 - Not Found"
 msgstr ""
 
-#: src/Content/ContactSelector.php:257
-msgid "Imaginarily divorced"
+#: src/Core/System.php:141
+msgid "Error 500 - Internal Server Error"
 msgstr ""
 
-#: src/Content/ContactSelector.php:258
-msgid "Widowed"
+#: src/Core/System.php:142
+msgid "Error 503 - Service Unavailable"
 msgstr ""
 
-#: src/Content/ContactSelector.php:259
-msgid "Uncertain"
+#: src/Core/System.php:150
+msgid ""
+"The server cannot or will not process the request due to an apparent client "
+"error."
 msgstr ""
 
-#: src/Content/ContactSelector.php:260
-msgid "It's complicated"
+#: src/Core/System.php:151
+msgid "Authentication is required and has failed or has not yet been provided."
 msgstr ""
 
-#: src/Content/ContactSelector.php:261
-msgid "Don't care"
+#: src/Core/System.php:152
+msgid ""
+"The request was valid, but the server is refusing action. The user might not "
+"have the necessary permissions for a resource, or may need an account."
 msgstr ""
 
-#: src/Content/ContactSelector.php:262
-msgid "Ask me"
+#: src/Core/System.php:153
+msgid ""
+"The requested resource could not be found but may be available in the future."
 msgstr ""
 
-#: src/Content/Feature.php:82
-msgid "General Features"
+#: src/Core/System.php:154
+msgid ""
+"An unexpected condition was encountered and no more specific message is "
+"suitable."
 msgstr ""
 
-#: src/Content/Feature.php:84
-msgid "Multiple Profiles"
+#: src/Core/System.php:155
+msgid ""
+"The server is currently unavailable (because it is overloaded or down for "
+"maintenance). Please try again later."
 msgstr ""
 
-#: src/Content/Feature.php:84
-msgid "Ability to create multiple profiles"
+#: src/Core/Update.php:168
+#, php-format
+msgid "Update %s failed. See error logs."
 msgstr ""
 
-#: src/Content/Feature.php:85
-msgid "Photo Location"
+#: src/Core/Update.php:225
+#, php-format
+msgid ""
+"\n"
+"\t\t\t\tThe friendica developers released update %s recently,\n"
+"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
+"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact "
+"a\n"
+"\t\t\t\tfriendica developer if you can not help me on your own. My database "
+"might be invalid."
 msgstr ""
 
-#: src/Content/Feature.php:85
+#: src/Core/Update.php:231
+#, php-format
 msgid ""
-"Photo metadata is normally stripped. This extracts the location (if present) "
-"prior to stripping metadata and links it to a map."
+"The error message is\n"
+"[pre]%s[/pre]"
 msgstr ""
 
-#: src/Content/Feature.php:86
-msgid "Export Public Calendar"
+#: src/Core/Update.php:260
+#, php-format
+msgid ""
+"\n"
+"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
 msgstr ""
 
-#: src/Content/Feature.php:86
-msgid "Ability for visitors to download the public calendar"
+#: src/Core/UserImport.php:103
+msgid "Error decoding account file"
 msgstr ""
 
-#: src/Content/Feature.php:91
-msgid "Post Composition Features"
+#: src/Core/UserImport.php:109
+msgid "Error! No version data in file! This is not a Friendica account file?"
 msgstr ""
 
-#: src/Content/Feature.php:92
-msgid "Auto-mention Forums"
+#: src/Core/UserImport.php:117
+#, php-format
+msgid "User '%s' already exists on this server!"
 msgstr ""
 
-#: src/Content/Feature.php:92
-msgid ""
-"Add/remove mention when a forum page is selected/deselected in ACL window."
+#: src/Core/UserImport.php:153
+msgid "User creation error"
 msgstr ""
 
-#: src/Content/Feature.php:93
-msgid "Explicit Mentions"
+#: src/Core/UserImport.php:171
+msgid "User profile creation error"
 msgstr ""
 
-#: src/Content/Feature.php:93
-msgid ""
-"Add explicit mentions to comment box for manual control over who gets "
-"mentioned in replies."
+#: src/Core/UserImport.php:215
+#, php-format
+msgid "%d contact not imported"
+msgid_plural "%d contacts not imported"
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/Core/UserImport.php:280
+msgid "Done. You can now login with your username and password"
 msgstr ""
 
-#: src/Content/Feature.php:98
-msgid "Network Sidebar"
+#: src/Database/DBStructure.php:47
+msgid "There are no tables on MyISAM."
 msgstr ""
 
-#: src/Content/Feature.php:99
-msgid "Ability to select posts by date ranges"
+#: src/Database/DBStructure.php:71
+#, php-format
+msgid ""
+"\n"
+"Error %d occurred during database update:\n"
+"%s\n"
 msgstr ""
 
-#: src/Content/Feature.php:100
-msgid "Protocol Filter"
+#: src/Database/DBStructure.php:74
+msgid "Errors encountered performing database changes: "
 msgstr ""
 
-#: src/Content/Feature.php:100
-msgid "Enable widget to display Network posts only from selected protocols"
+#: src/Database/DBStructure.php:263
+#, php-format
+msgid "%s: Database update"
 msgstr ""
 
-#: src/Content/Feature.php:105
-msgid "Network Tabs"
+#: src/Database/DBStructure.php:524
+#, php-format
+msgid "%s: updating %s table."
 msgstr ""
 
-#: src/Content/Feature.php:106
-msgid "Network New Tab"
+#: src/LegacyModule.php:30
+#, php-format
+msgid "Legacy module file not found: %s"
 msgstr ""
 
-#: src/Content/Feature.php:106
-msgid "Enable tab to display only new Network posts (from the last 12 hours)"
+#: src/Model/Contact.php:1054
+msgid "Drop Contact"
 msgstr ""
 
-#: src/Content/Feature.php:107
-msgid "Network Shared Links Tab"
+#: src/Model/Contact.php:1526
+msgid "Organisation"
 msgstr ""
 
-#: src/Content/Feature.php:107
-msgid "Enable tab to display only Network posts with links in them"
+#: src/Model/Contact.php:1530
+msgid "News"
 msgstr ""
 
-#: src/Content/Feature.php:112
-msgid "Post/Comment Tools"
+#: src/Model/Contact.php:1534
+msgid "Forum"
 msgstr ""
 
-#: src/Content/Feature.php:113
-msgid "Post Categories"
+#: src/Model/Contact.php:1724
+msgid "Connect URL missing."
 msgstr ""
 
-#: src/Content/Feature.php:113
-msgid "Add categories to your posts"
+#: src/Model/Contact.php:1733
+msgid ""
+"The contact could not be added. Please check the relevant network "
+"credentials in your Settings -> Social Networks page."
 msgstr ""
 
-#: src/Content/Feature.php:118
-msgid "Advanced Profile Settings"
+#: src/Model/Contact.php:1772
+msgid ""
+"This site is not configured to allow communications with other networks."
 msgstr ""
 
-#: src/Content/Feature.php:119
-msgid "List Forums"
+#: src/Model/Contact.php:1773 src/Model/Contact.php:1786
+msgid "No compatible communication protocols or feeds were discovered."
 msgstr ""
 
-#: src/Content/Feature.php:119
-msgid "Show visitors public community forums at the Advanced Profile Page"
+#: src/Model/Contact.php:1784
+msgid "The profile address specified does not provide adequate information."
 msgstr ""
 
-#: src/Content/Feature.php:120
-msgid "Tag Cloud"
+#: src/Model/Contact.php:1789
+msgid "An author or name was not found."
 msgstr ""
 
-#: src/Content/Feature.php:120
-msgid "Provide a personal tag cloud on your profile page"
+#: src/Model/Contact.php:1792
+msgid "No browser URL could be matched to this address."
 msgstr ""
 
-#: src/Content/Feature.php:121
-msgid "Display Membership Date"
+#: src/Model/Contact.php:1795
+msgid ""
+"Unable to match @-style Identity Address with a known protocol or email "
+"contact."
 msgstr ""
 
-#: src/Content/Feature.php:121
-msgid "Display membership date in profile"
+#: src/Model/Contact.php:1796
+msgid "Use mailto: in front of address to force email check."
 msgstr ""
 
-#: src/Content/Nav.php:74
-msgid "Nothing new here"
+#: src/Model/Contact.php:1802
+msgid ""
+"The profile address specified belongs to a network which has been disabled "
+"on this site."
 msgstr ""
 
-#: src/Content/Nav.php:78
-msgid "Clear notifications"
+#: src/Model/Contact.php:1807
+msgid ""
+"Limited profile. This person will be unable to receive direct/personal "
+"notifications from you."
 msgstr ""
 
-#: src/Content/Nav.php:161
-msgid "Personal notes"
+#: src/Model/Contact.php:1860
+msgid "Unable to retrieve contact information."
 msgstr ""
 
-#: src/Content/Nav.php:161
-msgid "Your personal notes"
+#: src/Model/Event.php:61 src/Model/Event.php:78 src/Model/Event.php:435
+#: src/Model/Event.php:915
+msgid "Starts:"
 msgstr ""
 
-#: src/Content/Nav.php:170
-msgid "Sign in"
+#: src/Model/Event.php:64 src/Model/Event.php:84 src/Model/Event.php:436
+#: src/Model/Event.php:919
+msgid "Finishes:"
 msgstr ""
 
-#: src/Content/Nav.php:180
-msgid "Home Page"
+#: src/Model/Event.php:385
+msgid "all-day"
 msgstr ""
 
-#: src/Content/Nav.php:184 src/Module/Login.php:293 src/Module/Register.php:136
-msgid "Register"
+#: src/Model/Event.php:408
+msgid "Jun"
 msgstr ""
 
-#: src/Content/Nav.php:184
-msgid "Create an account"
+#: src/Model/Event.php:411
+msgid "Sept"
 msgstr ""
 
-#: src/Content/Nav.php:190
-msgid "Help and documentation"
+#: src/Model/Event.php:433
+msgid "No events to display"
 msgstr ""
 
-#: src/Content/Nav.php:194
-msgid "Apps"
+#: src/Model/Event.php:561
+msgid "l, F j"
 msgstr ""
 
-#: src/Content/Nav.php:194
-msgid "Addon applications, utilities, games"
+#: src/Model/Event.php:592
+msgid "Edit event"
 msgstr ""
 
-#: src/Content/Nav.php:198
-msgid "Search site content"
+#: src/Model/Event.php:593
+msgid "Duplicate event"
 msgstr ""
 
-#: src/Content/Nav.php:222
-msgid "Community"
+#: src/Model/Event.php:594
+msgid "Delete event"
 msgstr ""
 
-#: src/Content/Nav.php:222
-msgid "Conversations on this and other servers"
+#: src/Model/Event.php:626 src/Model/Item.php:3554 src/Model/Item.php:3561
+msgid "link to source"
 msgstr ""
 
-#: src/Content/Nav.php:229
-msgid "Directory"
+#: src/Model/Event.php:848
+msgid "D g:i A"
 msgstr ""
 
-#: src/Content/Nav.php:229
-msgid "People directory"
+#: src/Model/Event.php:849
+msgid "g:i A"
 msgstr ""
 
-#: src/Content/Nav.php:231
-msgid "Information about this friendica instance"
+#: src/Model/Event.php:934 src/Model/Event.php:936
+msgid "Show map"
 msgstr ""
 
-#: src/Content/Nav.php:234
-msgid "Terms of Service of this Friendica instance"
+#: src/Model/Event.php:935
+msgid "Hide map"
 msgstr ""
 
-#: src/Content/Nav.php:240
-msgid "Network Reset"
+#: src/Model/Event.php:1027
+#, php-format
+msgid "%s's birthday"
 msgstr ""
 
-#: src/Content/Nav.php:240
-msgid "Load Network page with no filters"
-msgstr ""
-
-#: src/Content/Nav.php:246
-msgid "Friend Requests"
-msgstr ""
-
-#: src/Content/Nav.php:248
-msgid "See all notifications"
-msgstr ""
-
-#: src/Content/Nav.php:249
-msgid "Mark all system notifications seen"
-msgstr ""
-
-#: src/Content/Nav.php:253
-msgid "Inbox"
-msgstr ""
-
-#: src/Content/Nav.php:254
-msgid "Outbox"
-msgstr ""
-
-#: src/Content/Nav.php:258
-msgid "Manage"
-msgstr ""
-
-#: src/Content/Nav.php:258
-msgid "Manage other pages"
-msgstr ""
-
-#: src/Content/Nav.php:266
-msgid "Manage/Edit Profiles"
-msgstr ""
-
-#: src/Content/Nav.php:274
-msgid "Site setup and configuration"
-msgstr ""
-
-#: src/Content/Nav.php:277
-msgid "Navigation"
-msgstr ""
-
-#: src/Content/Nav.php:277
-msgid "Site map"
-msgstr ""
-
-#: src/Content/OEmbed.php:256
-msgid "Embedding disabled"
-msgstr ""
-
-#: src/Content/OEmbed.php:379
-msgid "Embedded content"
-msgstr ""
-
-#: src/Content/Pager.php:153
-msgid "newer"
-msgstr ""
-
-#: src/Content/Pager.php:158
-msgid "older"
-msgstr ""
-
-#: src/Content/Pager.php:203
-msgid "prev"
-msgstr ""
-
-#: src/Content/Pager.php:263
-msgid "last"
-msgstr ""
-
-#: src/Content/Widget.php:35
-msgid "Add New Contact"
-msgstr ""
-
-#: src/Content/Widget.php:36
-msgid "Enter address or web location"
-msgstr ""
-
-#: src/Content/Widget.php:37
-msgid "Example: bob@example.com, http://example.com/barbara"
-msgstr ""
-
-#: src/Content/Widget.php:55
-#, php-format
-msgid "%d invitation available"
-msgid_plural "%d invitations available"
-msgstr[0] ""
-msgstr[1] ""
-
-#: src/Content/Widget.php:158
-msgid "Protocols"
-msgstr ""
-
-#: src/Content/Widget.php:161
-msgid "All Protocols"
-msgstr ""
-
-#: src/Content/Widget.php:198
-msgid "Saved Folders"
-msgstr ""
-
-#: src/Content/Widget.php:201 src/Content/Widget.php:243
-msgid "Everything"
-msgstr ""
-
-#: src/Content/Widget.php:240
-msgid "Categories"
-msgstr ""
-
-#: src/Content/Widget.php:324
-#, php-format
-msgid "%d contact in common"
-msgid_plural "%d contacts in common"
-msgstr[0] ""
-msgstr[1] ""
-
-#: src/Database/DBStructure.php:47
-msgid "There are no tables on MyISAM."
-msgstr ""
-
-#: src/Database/DBStructure.php:71
-#, php-format
-msgid ""
-"\n"
-"Error %d occurred during database update:\n"
-"%s\n"
-msgstr ""
-
-#: src/Database/DBStructure.php:74
-msgid "Errors encountered performing database changes: "
-msgstr ""
-
-#: src/Database/DBStructure.php:263
-#, php-format
-msgid "%s: Database update"
-msgstr ""
-
-#: src/Database/DBStructure.php:524
-#, php-format
-msgid "%s: updating %s table."
-msgstr ""
-
-#: src/Model/Contact.php:1037
-msgid "Drop Contact"
-msgstr ""
-
-#: src/Model/Contact.php:1509
-msgid "Organisation"
-msgstr ""
-
-#: src/Model/Contact.php:1513
-msgid "News"
-msgstr ""
-
-#: src/Model/Contact.php:1517
-msgid "Forum"
-msgstr ""
-
-#: src/Model/Contact.php:1707
-msgid "Connect URL missing."
-msgstr ""
-
-#: src/Model/Contact.php:1716
-msgid ""
-"The contact could not be added. Please check the relevant network "
-"credentials in your Settings -> Social Networks page."
-msgstr ""
-
-#: src/Model/Contact.php:1755
-msgid ""
-"This site is not configured to allow communications with other networks."
-msgstr ""
-
-#: src/Model/Contact.php:1756 src/Model/Contact.php:1769
-msgid "No compatible communication protocols or feeds were discovered."
-msgstr ""
-
-#: src/Model/Contact.php:1767
-msgid "The profile address specified does not provide adequate information."
-msgstr ""
-
-#: src/Model/Contact.php:1772
-msgid "An author or name was not found."
-msgstr ""
-
-#: src/Model/Contact.php:1775
-msgid "No browser URL could be matched to this address."
-msgstr ""
-
-#: src/Model/Contact.php:1778
-msgid ""
-"Unable to match @-style Identity Address with a known protocol or email "
-"contact."
-msgstr ""
-
-#: src/Model/Contact.php:1779
-msgid "Use mailto: in front of address to force email check."
-msgstr ""
-
-#: src/Model/Contact.php:1785
-msgid ""
-"The profile address specified belongs to a network which has been disabled "
-"on this site."
-msgstr ""
-
-#: src/Model/Contact.php:1790
-msgid ""
-"Limited profile. This person will be unable to receive direct/personal "
-"notifications from you."
-msgstr ""
-
-#: src/Model/Contact.php:1843
-msgid "Unable to retrieve contact information."
-msgstr ""
-
-#: src/Model/Event.php:61 src/Model/Event.php:78 src/Model/Event.php:436
-#: src/Model/Event.php:916
-msgid "Starts:"
-msgstr ""
-
-#: src/Model/Event.php:64 src/Model/Event.php:84 src/Model/Event.php:437
-#: src/Model/Event.php:920
-msgid "Finishes:"
-msgstr ""
-
-#: src/Model/Event.php:386
-msgid "all-day"
-msgstr ""
-
-#: src/Model/Event.php:409
-msgid "Jun"
-msgstr ""
-
-#: src/Model/Event.php:412
-msgid "Sept"
-msgstr ""
-
-#: src/Model/Event.php:434
-msgid "No events to display"
-msgstr ""
-
-#: src/Model/Event.php:562
-msgid "l, F j"
-msgstr ""
-
-#: src/Model/Event.php:593
-msgid "Edit event"
-msgstr ""
-
-#: src/Model/Event.php:594
-msgid "Duplicate event"
-msgstr ""
-
-#: src/Model/Event.php:595
-msgid "Delete event"
-msgstr ""
-
-#: src/Model/Event.php:627 src/Model/Item.php:3536 src/Model/Item.php:3543
-msgid "link to source"
-msgstr ""
-
-#: src/Model/Event.php:849
-msgid "D g:i A"
-msgstr ""
-
-#: src/Model/Event.php:850
-msgid "g:i A"
-msgstr ""
-
-#: src/Model/Event.php:935 src/Model/Event.php:937
-msgid "Show map"
-msgstr ""
-
-#: src/Model/Event.php:936
-msgid "Hide map"
-msgstr ""
-
-#: src/Model/Event.php:1028
-#, php-format
-msgid "%s's birthday"
-msgstr ""
-
-#: src/Model/Event.php:1029
-#, php-format
-msgid "Happy Birthday %s"
+#: src/Model/Event.php:1028
+#, php-format
+msgid "Happy Birthday %s"
 msgstr ""
 
 #: src/Model/FileTag.php:256
@@ -8637,34 +8397,34 @@ msgstr ""
 msgid "Edit groups"
 msgstr ""
 
-#: src/Model/Item.php:3269
+#: src/Model/Item.php:3287
 msgid "activity"
 msgstr ""
 
-#: src/Model/Item.php:3271 src/Object/Post.php:457 src/Object/Post.php:469
+#: src/Model/Item.php:3289 src/Object/Post.php:470
 msgid "comment"
 msgid_plural "comments"
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/Model/Item.php:3274
+#: src/Model/Item.php:3292
 msgid "post"
 msgstr ""
 
-#: src/Model/Item.php:3373
+#: src/Model/Item.php:3391
 #, php-format
 msgid "Content warning: %s"
 msgstr ""
 
-#: src/Model/Item.php:3452
+#: src/Model/Item.php:3470
 msgid "bytes"
 msgstr ""
 
-#: src/Model/Item.php:3530
+#: src/Model/Item.php:3548
 msgid "View on separate page"
 msgstr ""
 
-#: src/Model/Item.php:3531
+#: src/Model/Item.php:3549
 msgid "view on separate page"
 msgstr ""
 
@@ -8741,8 +8501,12 @@ msgstr ""
 msgid "j F"
 msgstr ""
 
-#: src/Model/Profile.php:778
-msgid "Age:"
+#: src/Model/Profile.php:771 src/Util/Temporal.php:147
+msgid "Birthday:"
+msgstr ""
+
+#: src/Model/Profile.php:778
+msgid "Age:"
 msgstr ""
 
 #: src/Model/Profile.php:791
@@ -8847,134 +8611,138 @@ msgstr ""
 msgid "Enter a valid existing folder"
 msgstr ""
 
-#: src/Model/User.php:270
+#: src/Model/User.php:271
 msgid "Login failed"
 msgstr ""
 
-#: src/Model/User.php:301
+#: src/Model/User.php:302
 msgid "Not enough information to authenticate"
 msgstr ""
 
-#: src/Model/User.php:379
+#: src/Model/User.php:380
 msgid "Password can't be empty"
 msgstr ""
 
-#: src/Model/User.php:398
+#: src/Model/User.php:399
 msgid "Empty passwords are not allowed."
 msgstr ""
 
-#: src/Model/User.php:402
+#: src/Model/User.php:403
 msgid ""
 "The new password has been exposed in a public data dump, please choose "
 "another."
 msgstr ""
 
-#: src/Model/User.php:408
+#: src/Model/User.php:409
 msgid ""
 "The password can't contain accentuated letters, white spaces or colons (:)"
 msgstr ""
 
-#: src/Model/User.php:508
+#: src/Model/User.php:509
 msgid "Passwords do not match. Password unchanged."
 msgstr ""
 
-#: src/Model/User.php:515
+#: src/Model/User.php:516
 msgid "An invitation is required."
 msgstr ""
 
-#: src/Model/User.php:519
+#: src/Model/User.php:520
 msgid "Invitation could not be verified."
 msgstr ""
 
-#: src/Model/User.php:526
+#: src/Model/User.php:527
 msgid "Invalid OpenID url"
 msgstr ""
 
-#: src/Model/User.php:539 src/Module/Login.php:106
+#: src/Model/User.php:540 src/Module/Login.php:106
 msgid ""
 "We encountered a problem while logging in with the OpenID you provided. "
 "Please check the correct spelling of the ID."
 msgstr ""
 
-#: src/Model/User.php:539 src/Module/Login.php:106
+#: src/Model/User.php:540 src/Module/Login.php:106
 msgid "The error message was:"
 msgstr ""
 
-#: src/Model/User.php:545
+#: src/Model/User.php:546
 msgid "Please enter the required information."
 msgstr ""
 
-#: src/Model/User.php:559
+#: src/Model/User.php:560
 #, php-format
 msgid ""
 "system.username_min_length (%s) and system.username_max_length (%s) are "
 "excluding each other, swapping values."
 msgstr ""
 
-#: src/Model/User.php:566
+#: src/Model/User.php:567
 #, php-format
 msgid "Username should be at least %s character."
 msgid_plural "Username should be at least %s characters."
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/Model/User.php:570
+#: src/Model/User.php:571
 #, php-format
 msgid "Username should be at most %s character."
 msgid_plural "Username should be at most %s characters."
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/Model/User.php:578
+#: src/Model/User.php:579
 msgid "That doesn't appear to be your full (First Last) name."
 msgstr ""
 
-#: src/Model/User.php:583
+#: src/Model/User.php:584
 msgid "Your email domain is not among those allowed on this site."
 msgstr ""
 
-#: src/Model/User.php:587
+#: src/Model/User.php:588
 msgid "Not a valid email address."
 msgstr ""
 
-#: src/Model/User.php:590
+#: src/Model/User.php:591
 msgid "The nickname was blocked from registration by the nodes admin."
 msgstr ""
 
-#: src/Model/User.php:594 src/Model/User.php:602
+#: src/Model/User.php:595 src/Model/User.php:603
 msgid "Cannot use that email."
 msgstr ""
 
-#: src/Model/User.php:609
+#: src/Model/User.php:610
 msgid "Your nickname can only contain a-z, 0-9 and _."
 msgstr ""
 
-#: src/Model/User.php:616 src/Model/User.php:673
+#: src/Model/User.php:617 src/Model/User.php:674
 msgid "Nickname is already registered. Please choose another."
 msgstr ""
 
-#: src/Model/User.php:626
+#: src/Model/User.php:627
 msgid "SERIOUS ERROR: Generation of security keys failed."
 msgstr ""
 
-#: src/Model/User.php:660 src/Model/User.php:664
+#: src/Model/User.php:661 src/Model/User.php:665
 msgid "An error occurred during registration. Please try again."
 msgstr ""
 
-#: src/Model/User.php:689
+#: src/Model/User.php:685 view/theme/duepuntozero/config.php:55
+msgid "default"
+msgstr ""
+
+#: src/Model/User.php:690
 msgid "An error occurred creating your default profile. Please try again."
 msgstr ""
 
-#: src/Model/User.php:696
+#: src/Model/User.php:697
 msgid "An error occurred creating your self contact. Please try again."
 msgstr ""
 
-#: src/Model/User.php:705
+#: src/Model/User.php:706
 msgid ""
 "An error occurred creating your default contact group. Please try again."
 msgstr ""
 
-#: src/Model/User.php:781
+#: src/Model/User.php:782
 #, php-format
 msgid ""
 "\n"
@@ -8990,12 +8758,12 @@ msgid ""
 "\t\t"
 msgstr ""
 
-#: src/Model/User.php:798
+#: src/Model/User.php:799
 #, php-format
 msgid "Registration at %s"
 msgstr ""
 
-#: src/Model/User.php:817
+#: src/Model/User.php:818
 #, php-format
 msgid ""
 "\n"
@@ -9004,7 +8772,7 @@ msgid ""
 "\t\t"
 msgstr ""
 
-#: src/Model/User.php:823
+#: src/Model/User.php:824
 #, php-format
 msgid ""
 "\n"
@@ -9043,52 +8811,6 @@ msgid ""
 "\t\t\tThank you and welcome to %2$s."
 msgstr ""
 
-#: src/Protocol/Diaspora.php:2496
-msgid "Sharing notification from Diaspora network"
-msgstr ""
-
-#: src/Protocol/Diaspora.php:3613
-msgid "Attachments:"
-msgstr ""
-
-#: src/Protocol/OStatus.php:1302 src/Module/Profile.php:102
-#: src/Module/Profile.php:105
-#, php-format
-msgid "%s's timeline"
-msgstr ""
-
-#: src/Protocol/OStatus.php:1306 src/Module/Profile.php:103
-#, php-format
-msgid "%s's posts"
-msgstr ""
-
-#: src/Protocol/OStatus.php:1309 src/Module/Profile.php:104
-#, php-format
-msgid "%s's comments"
-msgstr ""
-
-#: src/Protocol/OStatus.php:1866
-#, php-format
-msgid "%s is now following %s."
-msgstr ""
-
-#: src/Protocol/OStatus.php:1867
-msgid "following"
-msgstr ""
-
-#: src/Protocol/OStatus.php:1870
-#, php-format
-msgid "%s stopped following %s."
-msgstr ""
-
-#: src/Protocol/OStatus.php:1871
-msgid "stopped following"
-msgstr ""
-
-#: src/Worker/Delivery.php:453
-msgid "(no subject)"
-msgstr ""
-
 #: src/Module/Attach.php:36 src/Module/Attach.php:48
 msgid "Item was not found."
 msgstr ""
@@ -9597,6 +9319,22 @@ msgstr ""
 msgid "Logged out."
 msgstr ""
 
+#: src/Module/Profile.php:102 src/Module/Profile.php:105
+#: src/Protocol/OStatus.php:1302
+#, php-format
+msgid "%s's timeline"
+msgstr ""
+
+#: src/Module/Profile.php:103 src/Protocol/OStatus.php:1306
+#, php-format
+msgid "%s's posts"
+msgstr ""
+
+#: src/Module/Profile.php:104 src/Protocol/OStatus.php:1309
+#, php-format
+msgid "%s's comments"
+msgstr ""
+
 #: src/Module/Proxy.php:73
 msgid "Bad Request."
 msgstr ""
@@ -9824,58 +9562,140 @@ msgstr ""
 msgid "via Wall-To-Wall:"
 msgstr ""
 
-#: src/Object/Post.php:432
-msgid "Notifier task is pending"
+#: src/Object/Post.php:418
+#, php-format
+msgid "Reply to %s"
 msgstr ""
 
 #: src/Object/Post.php:433
-msgid "Delivery to remote servers is pending"
+msgid "Notifier task is pending"
 msgstr ""
 
 #: src/Object/Post.php:434
-msgid "Delivery to remote servers is underway"
+msgid "Delivery to remote servers is pending"
 msgstr ""
 
 #: src/Object/Post.php:435
-msgid "Delivery to remote servers is mostly done"
+msgid "Delivery to remote servers is underway"
 msgstr ""
 
 #: src/Object/Post.php:436
+msgid "Delivery to remote servers is mostly done"
+msgstr ""
+
+#: src/Object/Post.php:437
 msgid "Delivery to remote servers is done"
 msgstr ""
 
-#: src/Object/Post.php:455
+#: src/Object/Post.php:457
 #, php-format
 msgid "%d comment"
 msgid_plural "%d comments"
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/App.php:665
-msgid "Delete this item?"
+#: src/Object/Post.php:458
+msgid "Show more"
 msgstr ""
 
-#: src/App.php:667
-msgid "show fewer"
+#: src/Object/Post.php:459
+msgid "Show fewer"
 msgstr ""
 
-#: src/App.php:709
-msgid "toggle mobile"
+#: src/Protocol/Diaspora.php:2496
+msgid "Sharing notification from Diaspora network"
 msgstr ""
 
-#: src/App.php:1077
-msgid "No system theme config value set."
+#: src/Protocol/Diaspora.php:3613
+msgid "Attachments:"
 msgstr ""
 
-#: src/BaseModule.php:133
-msgid ""
-"The form security token was not correct. This probably happened because the "
-"form has been opened for too long (>3 hours) before submitting it."
+#: src/Protocol/OStatus.php:1866
+#, php-format
+msgid "%s is now following %s."
 msgstr ""
 
-#: src/LegacyModule.php:30
+#: src/Protocol/OStatus.php:1867
+msgid "following"
+msgstr ""
+
+#: src/Protocol/OStatus.php:1870
 #, php-format
-msgid "Legacy module file not found: %s"
+msgid "%s stopped following %s."
+msgstr ""
+
+#: src/Protocol/OStatus.php:1871
+msgid "stopped following"
+msgstr ""
+
+#: src/Util/Temporal.php:151
+msgid "YYYY-MM-DD or MM-DD"
+msgstr ""
+
+#: src/Util/Temporal.php:298
+msgid "never"
+msgstr ""
+
+#: src/Util/Temporal.php:305
+msgid "less than a second ago"
+msgstr ""
+
+#: src/Util/Temporal.php:313
+msgid "year"
+msgstr ""
+
+#: src/Util/Temporal.php:313
+msgid "years"
+msgstr ""
+
+#: src/Util/Temporal.php:314
+msgid "months"
+msgstr ""
+
+#: src/Util/Temporal.php:315
+msgid "weeks"
+msgstr ""
+
+#: src/Util/Temporal.php:316
+msgid "days"
+msgstr ""
+
+#: src/Util/Temporal.php:317
+msgid "hour"
+msgstr ""
+
+#: src/Util/Temporal.php:317
+msgid "hours"
+msgstr ""
+
+#: src/Util/Temporal.php:318
+msgid "minute"
+msgstr ""
+
+#: src/Util/Temporal.php:318
+msgid "minutes"
+msgstr ""
+
+#: src/Util/Temporal.php:319
+msgid "second"
+msgstr ""
+
+#: src/Util/Temporal.php:319
+msgid "seconds"
+msgstr ""
+
+#: src/Util/Temporal.php:329
+#, php-format
+msgid "in %1$d %2$s"
+msgstr ""
+
+#: src/Util/Temporal.php:332
+#, php-format
+msgid "%1$d %2$s ago"
+msgstr ""
+
+#: src/Worker/Delivery.php:453
+msgid "(no subject)"
 msgstr ""
 
 #: update.php:217
@@ -9887,3 +9707,191 @@ msgstr ""
 #, php-format
 msgid "%s: Updating post-type."
 msgstr ""
+
+#: view/theme/duepuntozero/config.php:56
+msgid "greenzero"
+msgstr ""
+
+#: view/theme/duepuntozero/config.php:57
+msgid "purplezero"
+msgstr ""
+
+#: view/theme/duepuntozero/config.php:58
+msgid "easterbunny"
+msgstr ""
+
+#: view/theme/duepuntozero/config.php:59
+msgid "darkzero"
+msgstr ""
+
+#: view/theme/duepuntozero/config.php:60
+msgid "comix"
+msgstr ""
+
+#: view/theme/duepuntozero/config.php:61
+msgid "slackr"
+msgstr ""
+
+#: view/theme/duepuntozero/config.php:75
+msgid "Variations"
+msgstr ""
+
+#: view/theme/frio/config.php:103
+msgid "Custom"
+msgstr ""
+
+#: view/theme/frio/config.php:115
+msgid "Note"
+msgstr ""
+
+#: view/theme/frio/config.php:115
+msgid "Check image permissions if all users are allowed to see the image"
+msgstr ""
+
+#: view/theme/frio/config.php:122
+msgid "Select color scheme"
+msgstr ""
+
+#: view/theme/frio/config.php:123
+msgid "Navigation bar background color"
+msgstr ""
+
+#: view/theme/frio/config.php:124
+msgid "Navigation bar icon color "
+msgstr ""
+
+#: view/theme/frio/config.php:125
+msgid "Link color"
+msgstr ""
+
+#: view/theme/frio/config.php:126
+msgid "Set the background color"
+msgstr ""
+
+#: view/theme/frio/config.php:127
+msgid "Content background opacity"
+msgstr ""
+
+#: view/theme/frio/config.php:128
+msgid "Set the background image"
+msgstr ""
+
+#: view/theme/frio/config.php:129
+msgid "Background image style"
+msgstr ""
+
+#: view/theme/frio/config.php:134
+msgid "Login page background image"
+msgstr ""
+
+#: view/theme/frio/config.php:138
+msgid "Login page background color"
+msgstr ""
+
+#: view/theme/frio/config.php:138
+msgid "Leave background image and color empty for theme defaults"
+msgstr ""
+
+#: view/theme/frio/php/Image.php:24
+msgid "Top Banner"
+msgstr ""
+
+#: view/theme/frio/php/Image.php:24
+msgid ""
+"Resize image to the width of the screen and show background color below on "
+"long pages."
+msgstr ""
+
+#: view/theme/frio/php/Image.php:25
+msgid "Full screen"
+msgstr ""
+
+#: view/theme/frio/php/Image.php:25
+msgid ""
+"Resize image to fill entire screen, clipping either the right or the bottom."
+msgstr ""
+
+#: view/theme/frio/php/Image.php:26
+msgid "Single row mosaic"
+msgstr ""
+
+#: view/theme/frio/php/Image.php:26
+msgid ""
+"Resize image to repeat it on a single row, either vertical or horizontal."
+msgstr ""
+
+#: view/theme/frio/php/Image.php:27
+msgid "Mosaic"
+msgstr ""
+
+#: view/theme/frio/php/Image.php:27
+msgid "Repeat image to fill the screen."
+msgstr ""
+
+#: view/theme/frio/theme.php:239
+msgid "Guest"
+msgstr ""
+
+#: view/theme/frio/theme.php:244
+msgid "Visitor"
+msgstr ""
+
+#: view/theme/quattro/config.php:77
+msgid "Alignment"
+msgstr ""
+
+#: view/theme/quattro/config.php:77
+msgid "Left"
+msgstr ""
+
+#: view/theme/quattro/config.php:77
+msgid "Center"
+msgstr ""
+
+#: view/theme/quattro/config.php:78
+msgid "Color scheme"
+msgstr ""
+
+#: view/theme/quattro/config.php:79
+msgid "Posts font size"
+msgstr ""
+
+#: view/theme/quattro/config.php:80
+msgid "Textareas font size"
+msgstr ""
+
+#: view/theme/vier/config.php:76
+msgid "Comma separated list of helper forums"
+msgstr ""
+
+#: view/theme/vier/config.php:123
+msgid "Set style"
+msgstr ""
+
+#: view/theme/vier/config.php:124
+msgid "Community Pages"
+msgstr ""
+
+#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
+msgid "Community Profiles"
+msgstr ""
+
+#: view/theme/vier/config.php:126
+msgid "Help or @NewHere ?"
+msgstr ""
+
+#: view/theme/vier/config.php:127 view/theme/vier/theme.php:373
+msgid "Connect Services"
+msgstr ""
+
+#: view/theme/vier/config.php:128
+msgid "Find Friends"
+msgstr ""
+
+#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
+msgid "Last users"
+msgstr ""
+
+#: view/theme/vier/theme.php:288
+msgid "Quick Start"
+msgstr ""
index c3fdb5be8ecf1a9cddfefc416877ba1e423d4fd5..ec77ba4f91cc9b202228bc55a21caecaf4324e22 100644 (file)
@@ -28,7 +28,7 @@
 # Matthias Moritz <matthias@matthiasmoritz.de>, 2012
 # Oliver <post@toktan.org>, 2015
 # Oliver <post@toktan.org>, 2012
-# rabuzarus <rabuzarus@t-online.de>, 2016-2018
+# rabuzarus <rabuzarus@t-online.de>, 2016-2019
 # Sennewood <sebastian@sebsen.net>, 2013
 # Sennewood <sebastian@sebsen.net>, 2012-2013
 # silke m <silke@silkemeyer.net>, 2015
 # Tobias Diekershoff <tobias.diekershoff@gmx.net>, 2016-2019
 # zottel <transifex@zottel.net>, 2011-2012
 # tschlotfeldt <ts+transifex@ml.tschlotfeldt.de>, 2011
+# Ulf Rompe <transifex.com@rompe.org>, 2019
 # Vinzenz Vietzke <vinz@vinzv.de>, 2018
 msgid ""
 msgstr ""
 "Project-Id-Version: friendica\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-02-10 08:14+0100\n"
-"PO-Revision-Date: 2019-02-10 18:15+0000\n"
+"POT-Creation-Date: 2019-02-15 09:33-0500\n"
+"PO-Revision-Date: 2019-02-19 05:01+0000\n"
 "Last-Translator: Tobias Diekershoff <tobias.diekershoff@gmx.net>\n"
 "Language-Team: German (http://www.transifex.com/Friendica/friendica/language/de/)\n"
 "MIME-Version: 1.0\n"
@@ -77,13 +78,13 @@ msgstr "Das monatliche Limit von %d Beiträgen wurde erreicht. Der Beitrag wurde
 #: mod/photos.php:695 mod/photos.php:1126 mod/photos.php:1143
 #: mod/photos.php:1636 mod/profile_photo.php:85 mod/profile_photo.php:94
 #: mod/profile_photo.php:103 mod/profile_photo.php:217
-#: mod/profile_photo.php:305 mod/profile_photo.php:315 src/Model/User.php:735
-#: src/Model/User.php:743 src/Model/User.php:751
+#: mod/profile_photo.php:305 mod/profile_photo.php:315 src/Model/User.php:736
+#: src/Model/User.php:744 src/Model/User.php:752
 msgid "Profile Photos"
 msgstr "Profilbilder"
 
 #: include/conversation.php:160 include/conversation.php:297
-#: src/Model/Item.php:3265
+#: src/Model/Item.php:3283
 msgid "event"
 msgstr "Event"
 
@@ -94,7 +95,7 @@ msgid "status"
 msgstr "Status"
 
 #: include/conversation.php:168 include/conversation.php:305
-#: mod/subthread.php:88 mod/tagger.php:70 src/Model/Item.php:3267
+#: mod/subthread.php:88 mod/tagger.php:70 src/Model/Item.php:3285
 msgid "photo"
 msgstr "Foto"
 
@@ -155,7 +156,7 @@ msgstr "Likes"
 msgid "Dislikes"
 msgstr "Dislikes"
 
-#: include/conversation.php:569 include/conversation.php:1506
+#: include/conversation.php:569 include/conversation.php:1505
 #: mod/photos.php:1468
 msgid "Attending"
 msgid_plural "Attending"
@@ -202,9 +203,9 @@ msgstr "%s von %s"
 msgid "View in context"
 msgstr "Im Zusammenhang betrachten"
 
-#: include/conversation.php:721 include/conversation.php:1172
+#: include/conversation.php:721 include/conversation.php:1171
 #: mod/editpost.php:88 mod/message.php:260 mod/message.php:442
-#: mod/photos.php:1440 mod/wallmessage.php:141 src/Object/Post.php:420
+#: mod/photos.php:1440 mod/wallmessage.php:141 src/Object/Post.php:421
 msgid "Please wait"
 msgstr "Bitte warten"
 
@@ -220,43 +221,43 @@ msgstr "Lösche die markierten Beiträge"
 msgid "Follow Thread"
 msgstr "Folge der Unterhaltung"
 
-#: include/conversation.php:894 src/Model/Contact.php:1032
+#: include/conversation.php:894 src/Model/Contact.php:1049
 msgid "View Status"
 msgstr "Pinnwand anschauen"
 
 #: include/conversation.php:895 include/conversation.php:911
 #: mod/allfriends.php:72 mod/directory.php:167 mod/dirfind.php:226
-#: mod/match.php:87 mod/suggest.php:87 src/Model/Contact.php:972
-#: src/Model/Contact.php:1025 src/Model/Contact.php:1033
+#: mod/match.php:87 mod/suggest.php:87 src/Model/Contact.php:989
+#: src/Model/Contact.php:1042 src/Model/Contact.php:1050
 msgid "View Profile"
 msgstr "Profil anschauen"
 
-#: include/conversation.php:896 src/Model/Contact.php:1034
+#: include/conversation.php:896 src/Model/Contact.php:1051
 msgid "View Photos"
 msgstr "Bilder anschauen"
 
-#: include/conversation.php:897 src/Model/Contact.php:1026
-#: src/Model/Contact.php:1035
+#: include/conversation.php:897 src/Model/Contact.php:1043
+#: src/Model/Contact.php:1052
 msgid "Network Posts"
 msgstr "Netzwerkbeiträge"
 
-#: include/conversation.php:898 src/Model/Contact.php:1027
-#: src/Model/Contact.php:1036
+#: include/conversation.php:898 src/Model/Contact.php:1044
+#: src/Model/Contact.php:1053
 msgid "View Contact"
 msgstr "Kontakt anzeigen"
 
-#: include/conversation.php:899 src/Model/Contact.php:1038
+#: include/conversation.php:899 src/Model/Contact.php:1055
 msgid "Send PM"
 msgstr "Private Nachricht senden"
 
-#: include/conversation.php:903 src/Model/Contact.php:1039
+#: include/conversation.php:903 src/Model/Contact.php:1056
 msgid "Poke"
 msgstr "Anstupsen"
 
 #: include/conversation.php:908 mod/allfriends.php:73 mod/dirfind.php:227
 #: mod/follow.php:147 mod/match.php:88 mod/suggest.php:88
-#: view/theme/vier/theme.php:201 src/Content/Widget.php:63
-#: src/Model/Contact.php:1028 src/Module/Contact.php:574
+#: src/Content/Widget.php:63 src/Model/Contact.php:1045
+#: src/Module/Contact.php:574 view/theme/vier/theme.php:201
 msgid "Connect/Follow"
 msgstr "Verbinden/Folgen"
 
@@ -344,130 +345,130 @@ msgstr "<span %1$s>%2$d Personen</span> nehmen eventuell teil"
 msgid "%s attend maybe."
 msgstr "%s nimmt eventuell teil."
 
-#: include/conversation.php:1111
+#: include/conversation.php:1110
 msgid "Visible to <strong>everybody</strong>"
 msgstr "Für <strong>jedermann</strong> sichtbar"
 
-#: include/conversation.php:1112 src/Object/Post.php:882
+#: include/conversation.php:1111 src/Object/Post.php:883
 msgid "Please enter a image/video/audio/webpage URL:"
 msgstr "Bitte gib eine Bild/Video/Audio/Webseiten-URL ein:"
 
-#: include/conversation.php:1113
+#: include/conversation.php:1112
 msgid "Tag term:"
 msgstr "Tag:"
 
-#: include/conversation.php:1114 mod/filer.php:35
+#: include/conversation.php:1113 mod/filer.php:35
 msgid "Save to Folder:"
 msgstr "In diesem Ordner speichern:"
 
-#: include/conversation.php:1115
+#: include/conversation.php:1114
 msgid "Where are you right now?"
-msgstr "Wo hältst Du Dich jetzt gerade auf?"
+msgstr "Wo hältst du dich jetzt gerade auf?"
 
-#: include/conversation.php:1116
+#: include/conversation.php:1115
 msgid "Delete item(s)?"
 msgstr "Einträge löschen?"
 
-#: include/conversation.php:1148
+#: include/conversation.php:1147
 msgid "New Post"
 msgstr "Neuer Beitrag"
 
-#: include/conversation.php:1151
+#: include/conversation.php:1150
 msgid "Share"
 msgstr "Teilen"
 
-#: include/conversation.php:1152 mod/editpost.php:74 mod/message.php:258
+#: include/conversation.php:1151 mod/editpost.php:74 mod/message.php:258
 #: mod/message.php:439 mod/wallmessage.php:139
 msgid "Upload photo"
 msgstr "Foto hochladen"
 
-#: include/conversation.php:1153 mod/editpost.php:75
+#: include/conversation.php:1152 mod/editpost.php:75
 msgid "upload photo"
 msgstr "Bild hochladen"
 
-#: include/conversation.php:1154 mod/editpost.php:76
+#: include/conversation.php:1153 mod/editpost.php:76
 msgid "Attach file"
 msgstr "Datei anhängen"
 
-#: include/conversation.php:1155 mod/editpost.php:77
+#: include/conversation.php:1154 mod/editpost.php:77
 msgid "attach file"
 msgstr "Datei anhängen"
 
-#: include/conversation.php:1156 src/Object/Post.php:874
+#: include/conversation.php:1155 src/Object/Post.php:875
 msgid "Bold"
 msgstr "Fett"
 
-#: include/conversation.php:1157 src/Object/Post.php:875
+#: include/conversation.php:1156 src/Object/Post.php:876
 msgid "Italic"
 msgstr "Kursiv"
 
-#: include/conversation.php:1158 src/Object/Post.php:876
+#: include/conversation.php:1157 src/Object/Post.php:877
 msgid "Underline"
 msgstr "Unterstrichen"
 
-#: include/conversation.php:1159 src/Object/Post.php:877
+#: include/conversation.php:1158 src/Object/Post.php:878
 msgid "Quote"
 msgstr "Zitat"
 
-#: include/conversation.php:1160 src/Object/Post.php:878
+#: include/conversation.php:1159 src/Object/Post.php:879
 msgid "Code"
 msgstr "Code"
 
-#: include/conversation.php:1161 src/Object/Post.php:879
+#: include/conversation.php:1160 src/Object/Post.php:880
 msgid "Image"
 msgstr "Bild"
 
-#: include/conversation.php:1162 src/Object/Post.php:880
+#: include/conversation.php:1161 src/Object/Post.php:881
 msgid "Link"
 msgstr "Link"
 
-#: include/conversation.php:1163 src/Object/Post.php:881
+#: include/conversation.php:1162 src/Object/Post.php:882
 msgid "Link or Media"
 msgstr "Link oder Mediendatei"
 
-#: include/conversation.php:1164 mod/editpost.php:84
+#: include/conversation.php:1163 mod/editpost.php:84
 msgid "Set your location"
 msgstr "Deinen Standort festlegen"
 
-#: include/conversation.php:1165 mod/editpost.php:85
+#: include/conversation.php:1164 mod/editpost.php:85
 msgid "set location"
 msgstr "Ort setzen"
 
-#: include/conversation.php:1166 mod/editpost.php:86
+#: include/conversation.php:1165 mod/editpost.php:86
 msgid "Clear browser location"
 msgstr "Browser-Standort leeren"
 
-#: include/conversation.php:1167 mod/editpost.php:87
+#: include/conversation.php:1166 mod/editpost.php:87
 msgid "clear location"
 msgstr "Ort löschen"
 
-#: include/conversation.php:1169 mod/editpost.php:102
+#: include/conversation.php:1168 mod/editpost.php:102
 msgid "Set title"
 msgstr "Titel setzen"
 
-#: include/conversation.php:1171 mod/editpost.php:104
+#: include/conversation.php:1170 mod/editpost.php:104
 msgid "Categories (comma-separated list)"
 msgstr "Kategorien (kommasepariert)"
 
-#: include/conversation.php:1173 mod/editpost.php:89
+#: include/conversation.php:1172 mod/editpost.php:89
 msgid "Permission settings"
 msgstr "Berechtigungseinstellungen"
 
-#: include/conversation.php:1174 mod/editpost.php:119
+#: include/conversation.php:1173 mod/editpost.php:119
 msgid "permissions"
 msgstr "Zugriffsrechte"
 
-#: include/conversation.php:1183 mod/editpost.php:99
+#: include/conversation.php:1182 mod/editpost.php:99
 msgid "Public post"
 msgstr "Öffentlicher Beitrag"
 
-#: include/conversation.php:1187 mod/editpost.php:110 mod/events.php:551
+#: include/conversation.php:1186 mod/editpost.php:110 mod/events.php:551
 #: mod/photos.php:1458 mod/photos.php:1497 mod/photos.php:1557
-#: src/Object/Post.php:883
+#: src/Object/Post.php:884
 msgid "Preview"
 msgstr "Vorschau"
 
-#: include/conversation.php:1191 include/items.php:396
+#: include/conversation.php:1190 include/items.php:396
 #: mod/dfrn_request.php:650 mod/editpost.php:113 mod/fbrowser.php:104
 #: mod/fbrowser.php:134 mod/follow.php:161 mod/message.php:153
 #: mod/photos.php:257 mod/photos.php:325 mod/settings.php:666
@@ -476,50 +477,50 @@ msgstr "Vorschau"
 msgid "Cancel"
 msgstr "Abbrechen"
 
-#: include/conversation.php:1196
+#: include/conversation.php:1195
 msgid "Post to Groups"
 msgstr "Poste an Gruppe"
 
-#: include/conversation.php:1197
+#: include/conversation.php:1196
 msgid "Post to Contacts"
 msgstr "Poste an Kontakte"
 
-#: include/conversation.php:1198
+#: include/conversation.php:1197
 msgid "Private post"
 msgstr "Privater Beitrag"
 
-#: include/conversation.php:1203 mod/editpost.php:117
+#: include/conversation.php:1202 mod/editpost.php:117
 #: src/Model/Profile.php:370
 msgid "Message"
 msgstr "Nachricht"
 
-#: include/conversation.php:1204 mod/editpost.php:118
+#: include/conversation.php:1203 mod/editpost.php:118
 msgid "Browser"
 msgstr "Browser"
 
-#: include/conversation.php:1476
+#: include/conversation.php:1475
 msgid "View all"
 msgstr "Zeige alle"
 
-#: include/conversation.php:1500
+#: include/conversation.php:1499
 msgid "Like"
 msgid_plural "Likes"
 msgstr[0] "mag ich"
 msgstr[1] "Mag ich"
 
-#: include/conversation.php:1503
+#: include/conversation.php:1502
 msgid "Dislike"
 msgid_plural "Dislikes"
 msgstr[0] "mag ich nicht"
 msgstr[1] "Mag ich nicht"
 
-#: include/conversation.php:1509
+#: include/conversation.php:1508
 msgid "Not Attending"
 msgid_plural "Not Attending"
 msgstr[0] "Nicht teilnehmend "
 msgstr[1] "Nicht teilnehmend"
 
-#: include/conversation.php:1512 src/Content/ContactSelector.php:167
+#: include/conversation.php:1511 src/Content/ContactSelector.php:167
 msgid "Undecided"
 msgid_plural "Undecided"
 msgstr[0] "Unentschieden"
@@ -551,7 +552,7 @@ msgstr "[Friendica-Meldung] Neue Email erhalten um %s"
 #: include/enotify.php:136
 #, php-format
 msgid "%1$s sent you a new private message at %2$s."
-msgstr "%1$s hat Dir eine neue private Nachricht um %2$s geschickt."
+msgstr "%1$s hat dir eine neue, private Nachricht um %2$s geschickt."
 
 #: include/enotify.php:137
 msgid "a private message"
@@ -560,7 +561,7 @@ msgstr "eine private Nachricht"
 #: include/enotify.php:137
 #, php-format
 msgid "%1$s sent you %2$s."
-msgstr "%1$s schickte Dir %2$s."
+msgstr "%1$s schickte dir %2$s."
 
 #: include/enotify.php:139
 #, php-format
@@ -590,7 +591,7 @@ msgstr "%1$s kommentierte [url=%2$s]%3$ss %4$s[/url]"
 #: include/enotify.php:207
 #, php-format
 msgid "%1$s tagged you on [url=%2$s]your %3$s[/url]"
-msgstr "%1$s erwähnte dich auf [url=%2$s] deinem %3$s[/url]"
+msgstr "%1$s erwähnte dich auf [url=%2$s]deinem %3$s[/url]"
 
 #: include/enotify.php:213
 #, php-format
@@ -605,17 +606,17 @@ msgstr "%1$s erwähnte dich im [url=%2$s]eigenen %3$s[/url]"
 #: include/enotify.php:230
 #, php-format
 msgid "%1$s commented on [url=%2$s]their %3$s[/url]"
-msgstr "%1$s kommentierte den [url=%2$s] eigenen %3$s[/url]"
+msgstr "%1$s kommentierte den [url=%2$s]eigenen %3$s[/url]"
 
 #: include/enotify.php:243
 #, php-format
 msgid "[Friendica:Notify] %s tagged you"
-msgstr "[Friendica-Meldung] %s hat Dich erwähnt"
+msgstr "[Friendica-Meldung] %s hat dich erwähnt"
 
 #: include/enotify.php:245
 #, php-format
 msgid "%1$s tagged you at %2$s"
-msgstr "%1$s erwähnte Dich auf %2$s"
+msgstr "%1$s erwähnte dich auf %2$s"
 
 #: include/enotify.php:247
 #, php-format
@@ -625,7 +626,7 @@ msgstr "[Friendica-Meldung] Kommentar zum Beitrag #%1$d von %2$s"
 #: include/enotify.php:249
 #, php-format
 msgid "%s commented on an item/conversation you have been following."
-msgstr "%s hat einen Beitrag kommentiert, dem Du folgst."
+msgstr "%s hat einen Beitrag kommentiert, dem du folgst."
 
 #: include/enotify.php:254 include/enotify.php:269 include/enotify.php:284
 #: include/enotify.php:303 include/enotify.php:319
@@ -666,17 +667,17 @@ msgstr "%1$s [url=%2$s]hat einen Beitrag geteilt[/url]."
 #: include/enotify.php:291
 #, php-format
 msgid "[Friendica:Notify] %1$s poked you"
-msgstr "[Friendica-Meldung] %1$s hat Dich angestupst"
+msgstr "[Friendica-Meldung] %1$s hat dich angestupst"
 
 #: include/enotify.php:293
 #, php-format
 msgid "%1$s poked you at %2$s"
-msgstr "%1$s hat Dich auf %2$s angestupst"
+msgstr "%1$s hat dich auf %2$s angestupst"
 
 #: include/enotify.php:294
 #, php-format
 msgid "%1$s [url=%2$s]poked you[/url]."
-msgstr "%1$s [url=%2$s]hat Dich angestupst[/url]."
+msgstr "%1$s [url=%2$s]hat dich angestupst[/url]."
 
 #: include/enotify.php:311
 #, php-format
@@ -710,7 +711,7 @@ msgstr "Du hast eine [url=%1$s]Kontaktanfrage[/url] von %2$s erhalten."
 #: include/enotify.php:334 include/enotify.php:380
 #, php-format
 msgid "You may visit their profile at %s"
-msgstr "Hier kannst Du das Profil betrachten: %s"
+msgstr "Hier kannst du das Profil betrachten: %s"
 
 #: include/enotify.php:336
 #, php-format
@@ -719,16 +720,16 @@ msgstr "Bitte besuche %s, um die Kontaktanfrage anzunehmen oder abzulehnen."
 
 #: include/enotify.php:343
 msgid "[Friendica:Notify] A new person is sharing with you"
-msgstr "[Friendica Benachrichtigung] Eine neue Person teilt mit Dir"
+msgstr "[Friendica Benachrichtigung] Eine neue Person teilt mit dir"
 
 #: include/enotify.php:345 include/enotify.php:346
 #, php-format
 msgid "%1$s is sharing with you at %2$s"
-msgstr "%1$s teilt mit Dir auf %2$s"
+msgstr "%1$s teilt mit dir auf %2$s"
 
 #: include/enotify.php:353
 msgid "[Friendica:Notify] You have a new follower"
-msgstr "[Friendica Benachrichtigung] Du hast einen neuen Kontakt auf "
+msgstr "[Friendica-Benachrichtigung] Du hast einen neuen Kontakt"
 
 #: include/enotify.php:355 include/enotify.php:356
 #, php-format
@@ -781,12 +782,12 @@ msgstr "%2$s hat Deine [url=%1$s]Kontaktanfrage[/url] akzeptiert."
 msgid ""
 "You are now mutual friends and may exchange status updates, photos, and "
 "email without restriction."
-msgstr "Ihr seid nun beidseitige Kontakte und könnt Statusmitteilungen, Bilder und Emails ohne Einschränkungen austauschen."
+msgstr "Ihr seid nun beidseitige Kontakte und könnt Statusmitteilungen, Bilder und E-Mails ohne Einschränkungen austauschen."
 
 #: include/enotify.php:400
 #, php-format
 msgid "Please visit %s if you wish to make any changes to this relationship."
-msgstr "Bitte besuche %s, wenn Du Ã„nderungen an eurer Beziehung vornehmen willst."
+msgstr "Bitte besuche %s, wenn du Ã„nderungen an eurer Beziehung vornehmen willst."
 
 #: include/enotify.php:413
 #, php-format
@@ -795,7 +796,7 @@ msgid ""
 "communication - such as private messaging and some profile interactions. If "
 "this is a celebrity or community page, these settings were applied "
 "automatically."
-msgstr "'%1$s' hat sich entschieden Dich als Fan zu akzeptieren, dies schränkt einige Kommunikationswege - wie private Nachrichten und einige Interaktionsmöglichkeiten auf der Profilseite - ein. Wenn dies eine Berühmtheiten- oder Gemeinschaftsseite ist, werden diese Einstellungen automatisch vorgenommen."
+msgstr "'%1$s' hat sich entschieden dich als Fan zu akzeptieren, dies schränkt einige Kommunikationswege - wie private Nachrichten und einige Interaktionsmöglichkeiten auf der Profilseite - ein. Wenn dies eine Berühmtheiten- oder Gemeinschaftsseite ist, werden diese Einstellungen automatisch vorgenommen."
 
 #: include/enotify.php:415
 #, php-format
@@ -807,11 +808,11 @@ msgstr "'%1$s' kann den Kontaktstatus zu einem späteren Zeitpunkt erweitern und
 #: include/enotify.php:417
 #, php-format
 msgid "Please visit %s  if you wish to make any changes to this relationship."
-msgstr "Bitte besuche %s, wenn Du Ã„nderungen an eurer Beziehung vornehmen willst."
+msgstr "Bitte besuche %s, wenn du Ã„nderungen an eurer Beziehung vornehmen willst."
 
 #: include/enotify.php:427 mod/removeme.php:46
 msgid "[Friendica System Notify]"
-msgstr "[Friendica System Benachrichtigung]"
+msgstr "[Friendica-Systembenachrichtigung]"
 
 #: include/enotify.php:427
 msgid "registration request"
@@ -838,7 +839,7 @@ msgstr "Kompletter Name: %s\nURL der Seite: %s\nLogin Name: %s(%s)"
 #: include/enotify.php:441
 #, php-format
 msgid "Please visit %s to approve or reject the request."
-msgstr "Bitte besuche %s um die Anfrage zu bearbeiten."
+msgstr "Bitte besuche %s, um die Anfrage zu bearbeiten."
 
 #: include/items.php:353 mod/admin.php:302 mod/admin.php:2131
 #: mod/admin.php:2378 mod/notice.php:20 mod/viewsrc.php:22
@@ -847,7 +848,7 @@ msgstr "Beitrag nicht gefunden."
 
 #: include/items.php:391
 msgid "Do you really want to delete this item?"
-msgstr "Möchtest Du wirklich dieses Item löschen?"
+msgstr "Möchtest du wirklich dieses Item löschen?"
 
 #: include/items.php:393 mod/api.php:109 mod/dfrn_request.php:640
 #: mod/follow.php:150 mod/message.php:150 mod/profiles.php:526
@@ -868,16 +869,17 @@ msgstr "Ja"
 #: mod/invite.php:111 mod/item.php:167 mod/manage.php:129 mod/message.php:56
 #: mod/message.php:101 mod/network.php:35 mod/nogroup.php:18 mod/notes.php:27
 #: mod/notifications.php:70 mod/ostatus_subscribe.php:18 mod/photos.php:186
-#: mod/photos.php:1020 mod/poke.php:141 mod/profile_photo.php:32
-#: mod/profile_photo.php:177 mod/profile_photo.php:204 mod/profiles.php:182
-#: mod/profiles.php:499 mod/regmod.php:89 mod/repair_ostatus.php:16
+#: mod/photos.php:1020 mod/poke.php:141 mod/profiles.php:182
+#: mod/profiles.php:499 mod/profile_photo.php:32 mod/profile_photo.php:177
+#: mod/profile_photo.php:204 mod/regmod.php:89 mod/repair_ostatus.php:16
 #: mod/settings.php:48 mod/settings.php:154 mod/settings.php:655
 #: mod/suggest.php:62 mod/uimport.php:17 mod/unfollow.php:22
 #: mod/unfollow.php:77 mod/unfollow.php:109 mod/viewcontacts.php:56
-#: mod/wall_attach.php:76 mod/wall_attach.php:79 mod/wall_upload.php:107
-#: mod/wall_upload.php:110 mod/wallmessage.php:19 mod/wallmessage.php:43
-#: mod/wallmessage.php:82 mod/wallmessage.php:106 src/Module/Attach.php:42
-#: src/Module/Contact.php:360 src/Module/Register.php:193 src/App.php:1482
+#: mod/wallmessage.php:19 mod/wallmessage.php:43 mod/wallmessage.php:82
+#: mod/wallmessage.php:106 mod/wall_attach.php:76 mod/wall_attach.php:79
+#: mod/wall_upload.php:107 mod/wall_upload.php:110 src/App.php:1480
+#: src/Module/Attach.php:42 src/Module/Contact.php:360
+#: src/Module/Register.php:193
 msgid "Permission denied."
 msgstr "Zugriff verweigert."
 
@@ -885,28 +887,11 @@ msgstr "Zugriff verweigert."
 msgid "Archives"
 msgstr "Archiv"
 
-#: include/items.php:520 view/theme/vier/theme.php:255
-#: src/Content/ForumManager.php:135 src/Content/Widget.php:329
-#: src/Object/Post.php:458 src/App.php:666
+#: include/items.php:520 src/Content/ForumManager.php:135
+#: src/Content/Widget.php:329 view/theme/vier/theme.php:255
 msgid "show more"
 msgstr "mehr anzeigen"
 
-#: mod/apps.php:15 src/App.php:1351
-msgid "You must be logged in to use addons. "
-msgstr "Sie müssen angemeldet sein um Addons benutzen zu können."
-
-#: mod/apps.php:20
-msgid "Applications"
-msgstr "Anwendungen"
-
-#: mod/apps.php:25
-msgid "No installed applications."
-msgstr "Keine Applikationen installiert."
-
-#: mod/maintenance.php:26
-msgid "System down for maintenance"
-msgstr "System zur Wartung abgeschaltet"
-
 #: mod/admin.php:122
 msgid "Theme settings updated."
 msgstr "Themeneinstellungen aktualisiert."
@@ -1002,7 +987,7 @@ msgstr "Diagnostik"
 
 #: mod/admin.php:220
 msgid "PHP Info"
-msgstr "PHP Info"
+msgstr "PHP-Info"
 
 #: mod/admin.php:221
 msgid "probe address"
@@ -1022,7 +1007,7 @@ msgstr "Addon Features"
 
 #: mod/admin.php:244
 msgid "User registrations waiting for confirmation"
-msgstr "Nutzeranmeldungen die auf Bestätigung warten"
+msgstr "Nutzeranmeldungen, die auf Bestätigung warten"
 
 #: mod/admin.php:328 mod/admin.php:394 mod/admin.php:514 mod/admin.php:557
 #: mod/admin.php:778 mod/admin.php:822 mod/admin.php:875 mod/admin.php:998
@@ -1039,7 +1024,7 @@ msgstr "Nutzungsbedingungen anzeigen"
 msgid ""
 "Enable the Terms of Service page. If this is enabled a link to the terms "
 "will be added to the registration form and the general information page."
-msgstr "Aktiviert die Seite für die Nutzungsbedingungen. Ist dies der Fall werden sie auch von der Registrierungsseite und der allgemeinen Informationsseite verlinkt."
+msgstr "Aktiviert die Seite für die Nutzungsbedingungen. Ist dies der Fall, werden sie auch von der Registrierungsseite und der allgemeinen Informationsseite verlinkt."
 
 #: mod/admin.php:331
 msgid "Display Privacy Statement"
@@ -1050,7 +1035,7 @@ msgstr "Datenschutzerklärung anzeigen"
 msgid ""
 "Show some informations regarding the needed information to operate the node "
 "according e.g. to <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."
-msgstr "Zeige Informationen Ã¼ber die zum Betrieb der Seite notwendigen personenbezogenen Daten an, wie es z.B. die <a href=\"%s\" target=\"_blank\">EU-DSGVO</a> verlangt."
+msgstr "Zeige Informationen Ã¼ber die zum Betrieb der Seite notwendigen, personenbezogenen Daten an, wie es z.B. die <a href=\"%s\" target=\"_blank\">EU-DSGVO</a> verlangt."
 
 #: mod/admin.php:332
 msgid "Privacy Statement Preview"
@@ -1074,7 +1059,7 @@ msgid "Save Settings"
 msgstr "Einstellungen speichern"
 
 #: mod/admin.php:386 mod/admin.php:404 mod/dfrn_request.php:346
-#: mod/friendica.php:131 src/Model/Contact.php:1702
+#: mod/friendica.php:131 src/Model/Contact.php:1719
 msgid "Blocked domain"
 msgstr "Blockierte Domain"
 
@@ -1088,7 +1073,7 @@ msgstr "Begründung für die Blockierung"
 
 #: mod/admin.php:387 mod/admin.php:400
 msgid "The reason why you blocked this domain."
-msgstr "Die Begründung warum du diese Domain blockiert hast."
+msgstr "Die Begründung, warum du diese Domain blockiert hast."
 
 #: mod/admin.php:388
 msgid "Delete domain"
@@ -1104,14 +1089,14 @@ msgid ""
 "network that are not allowed to interact with your node. For all entered "
 "domains you should also give a reason why you have blocked the remote "
 "server."
-msgstr "Auf dieser Seite kannst du die Liste der blockierten Domains aus dem föderalen Netzwerk verwalten, denen es untersagt ist mit deinem Knoten zu interagieren. Für jede der blockierten Domains musst du außerdem einen Grund für die Sperrung angeben."
+msgstr "Auf dieser Seite kannst du die Liste der blockierten Domains aus dem föderalen Netzwerk verwalten, denen es untersagt ist, mit deinem Knoten zu interagieren. Für jede der blockierten Domains musst du außerdem einen Grund für die Sperrung angeben."
 
 #: mod/admin.php:397
 msgid ""
 "The list of blocked servers will be made publically available on the "
 "/friendica page so that your users and people investigating communication "
 "problems can find the reason easily."
-msgstr "Die Liste der blockierten Domains wird auf der /friendica Seite Ã¶ffentlich einsehbar gemacht, damit deine Nutzer und Personen die Kommunikationsprobleme erkunden, die Ursachen einfach finden können."
+msgstr "Die Liste der blockierten Domains wird auf der /friendica Seite Ã¶ffentlich einsehbar gemacht, damit deine Nutzer und Personen, die Kommunikationsprobleme erkunden, die Ursachen einfach finden können."
 
 #: mod/admin.php:398
 msgid "Add new entry to block list"
@@ -1125,7 +1110,7 @@ msgstr "Domain des Servers"
 msgid ""
 "The domain of the new server to add to the block list. Do not include the "
 "protocol."
-msgstr "Der Domain-Name des Servers der geblockt werden soll. Gib das Protokoll nicht mit an!"
+msgstr "Der Domain-Name des Servers, der geblockt werden soll. Gib das Protokoll nicht mit an!"
 
 #: mod/admin.php:400
 msgid "Block reason"
@@ -1248,7 +1233,7 @@ msgstr[1] "Insgesamt %s blockierte Kontakte"
 
 #: mod/admin.php:536
 msgid "URL of the remote contact to block."
-msgstr "Die URL des Kontakts, vom entfernten Server, der blockiert werden soll."
+msgstr "Die URL des entfernten Kontakts, der blockiert werden soll."
 
 #: mod/admin.php:559
 msgid "Delete this Item"
@@ -1265,7 +1250,7 @@ msgid ""
 "You need to know the GUID of the item. You can find it e.g. by looking at "
 "the display URL. The last part of http://example.com/display/123456 is the "
 "GUID, here 123456."
-msgstr "Zur Löschung musst du die GUID des Eintrags kennen. Diese findest du z.B. durch die /display URL des Eintrags. Der letzte Teil der URL ist die GUID. Lautet die URL beispielsweise http://example.com/display/123456 ist die GUID 123456."
+msgstr "Zur Löschung musst du die GUID des Eintrags kennen. Diese findest du z.B. durch die /display URL des Eintrags. Der letzte Teil der URL ist die GUID. Lautet die URL beispielsweise http://example.com/display/123456, ist die GUID 123456."
 
 #: mod/admin.php:562
 msgid "GUID"
@@ -1294,7 +1279,7 @@ msgstr "Diese Seite präsentiert einige Zahlen zu dem bekannten Teil des födera
 msgid ""
 "The <em>Auto Discovered Contact Directory</em> feature is not enabled, it "
 "will improve the data displayed here."
-msgstr "Die Funktion um <em>Regelmäßig globale Kontakte Ã¼berprüfen</em> ist nicht aktiv. Es wird die hier angezeigten Daten verbessern."
+msgstr "Die Funktion <em>\"Regelmäßig globale Kontakte Ã¼berprüfen\"</em> ist nicht aktiv. Sie wird die hier angezeigten Daten verbessern."
 
 #: mod/admin.php:785
 #, php-format
@@ -1309,14 +1294,14 @@ msgstr "ID"
 
 #: mod/admin.php:826
 msgid "Recipient Name"
-msgstr "Empfänger Name"
+msgstr "Empfänger-Name"
 
 #: mod/admin.php:827
 msgid "Recipient Profile"
-msgstr "Empfänger Profil"
+msgstr "Empfänger-Profil"
 
-#: mod/admin.php:828 view/theme/frio/theme.php:269
-#: src/Core/NotificationsManager.php:182 src/Content/Nav.php:239
+#: mod/admin.php:828 src/Content/Nav.php:239
+#: src/Core/NotificationsManager.php:182 view/theme/frio/theme.php:269
 msgid "Network"
 msgstr "Netzwerk"
 
@@ -1333,7 +1318,7 @@ msgid ""
 "This page lists the content of the queue for outgoing postings. These are "
 "postings the initial delivery failed for. They will be resend later and "
 "eventually deleted if the delivery fails permanently."
-msgstr "Auf dieser Seite werden die in der Warteschlange eingereihten Beiträge aufgelistet. Bei diesen Beiträgen schlug die erste Zustellung fehl. Es wird später wiederholt versucht die Beiträge zuzustellen, bis sie schließlich gelöscht werden."
+msgstr "Auf dieser Seite werden die in der Warteschlange eingereihten Beiträge aufgelistet. Bei diesen Beiträgen schlug die erste Zustellung fehl. Es wird später wiederholt versucht, die Beiträge zuzustellen, bis sie schließlich gelöscht werden."
 
 #: mod/admin.php:854
 msgid "Inspect Deferred Worker Queue"
@@ -1347,13 +1332,13 @@ msgstr "Auf dieser Seite werden die aufgeschobenen Worker-Jobs aufgelistet. Dies
 
 #: mod/admin.php:858
 msgid "Inspect Worker Queue"
-msgstr "Worker Warteschlange inspizieren"
+msgstr "Worker-Warteschlange inspizieren"
 
 #: mod/admin.php:859
 msgid ""
 "This page lists the currently queued worker jobs. These jobs are handled by "
 "the worker cronjob you've set up during install."
-msgstr "Auf dieser Seite werden die derzeit in der Warteschlange befindlichen Worker-Jobs aufgelistet. Diese Jobs werden vom Cronjob verarbeitet, den Sie während der Installation eingerichtet haben."
+msgstr "Auf dieser Seite werden die derzeit in der Warteschlange befindlichen Worker-Jobs aufgelistet. Diese Jobs werden vom Cronjob verarbeitet, den du während der Installation eingerichtet hast."
 
 #: mod/admin.php:879
 msgid "Job Parameters"
@@ -1372,7 +1357,7 @@ msgid ""
 "converting the table engines. You may also use the command <tt>php "
 "bin/console.php dbstructure toinnodb</tt> of your Friendica installation for"
 " an automatic conversion.<br />"
-msgstr "Deine DB verwendet derzeit noch MyISAM Tabellen. Du solltest die Datenbank Engine auf InnoDB umstellen, da Friendica in Zukunft InnoDB Features verwenden wird. Eine Anleitung zur Umstellung der Datenbank kannst du  <a href=\"%s\">hier</a>  finden. Du kannst außerdem mit dem Befehl <tt>php bin/console.php dbstructure toinnodb</tt> auf der Kommandozeile die Umstellung automatisch vornehmen lassen."
+msgstr "Deine DB verwendet derzeit noch MyISAM Tabellen. Du solltest die Datenbank Engine auf InnoDB umstellen, da Friendica in Zukunft InnoDB-Features verwenden wird. Eine Anleitung zur Umstellung der Datenbank kannst du  <a href=\"%s\">hier</a>  finden. Du kannst außerdem mit dem Befehl <tt>php bin/console.php dbstructure toinnodb</tt> auf der Kommandozeile die Umstellung automatisch vornehmen lassen."
 
 #: mod/admin.php:914
 #, php-format
@@ -1397,7 +1382,7 @@ msgstr "Der Hintergrundprozess (worker) wurde noch nie gestartet. Bitte Ã¼berpr
 msgid ""
 "The last worker execution was on %s UTC. This is older than one hour. Please"
 " check your crontab settings."
-msgstr "Der Hintergrundprozess (worker) wurde zuletzt um %s UTC ausgeführt. Das war vor mehr als einer Stunde. Bitte Ã¼berprüfe deine crontab Einstellungen."
+msgstr "Der Hintergrundprozess (worker) wurde zuletzt um %s UTC ausgeführt. Das war vor mehr als einer Stunde. Bitte Ã¼berprüfe deine crontab-Einstellungen."
 
 #: mod/admin.php:939
 #, php-format
@@ -1406,7 +1391,7 @@ msgid ""
 "copy config/local-sample.config.php and move your config from "
 "<code>.htconfig.php</code>. See <a href=\"%s\">the Config help page</a> for "
 "help with the transition."
-msgstr "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.ini.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>.htconfig.php</code>. Wie die Ãœbertragung der Werte aussehen muss kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen."
+msgstr "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.ini.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>.htconfig.php</code>. Wie die Ãœbertragung der Werte aussehen muss, kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen."
 
 #: mod/admin.php:943
 #, php-format
@@ -1415,7 +1400,7 @@ msgid ""
 "copy config/local-sample.config.php and move your config from "
 "<code>config/local.ini.php</code>. See <a href=\"%s\">the Config help "
 "page</a> for help with the transition."
-msgstr "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.config.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>config/local.ini.php</code>. Wie die Ãœbertragung der Werte aussehen muss kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen."
+msgstr "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.config.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>config/local.ini.php</code>. Wie die Ãœbertragung der Werte aussehen muss, kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen."
 
 #: mod/admin.php:950
 #, php-format
@@ -1423,7 +1408,7 @@ msgid ""
 "<a href=\"%s\">%s</a> is not reachable on your system. This is a severe "
 "configuration issue that prevents server to server communication. See <a "
 "href=\"%s\">the installation page</a> for help."
-msgstr "<a href=\"%s\">%s</a> konnte von deinem System nicht aufgerufen werden. Dies deitet auf ein schwerwiegendes Problem deiner Konfiguration hin. Bitte konsultiere <a href=\"%s\">die Installations-Dokumentation</a> zum Beheben des Problems."
+msgstr "<a href=\"%s\">%s</a> konnte von deinem System nicht aufgerufen werden. Dies deutet auf ein schwerwiegendes Problem deiner Konfiguration hin. Bitte konsultiere <a href=\"%s\">die Installations-Dokumentation</a> zum Beheben des Problems."
 
 #: mod/admin.php:956
 msgid "Normal Account"
@@ -1435,11 +1420,11 @@ msgstr "Automatisch folgendes Konto (Marktschreier)"
 
 #: mod/admin.php:958
 msgid "Public Forum Account"
-msgstr "Öffentliches Forum Konto"
+msgstr "Öffentliches Forum-Konto"
 
 #: mod/admin.php:959
 msgid "Automatic Friend Account"
-msgstr "Automatische Freunde Seite"
+msgstr "Automatische Freunde-Seite"
 
 #: mod/admin.php:960
 msgid "Blog Account"
@@ -1447,7 +1432,7 @@ msgstr "Blog-Konto"
 
 #: mod/admin.php:961
 msgid "Private Forum Account"
-msgstr "Privates Forum Konto"
+msgstr "Privates Forum-Konto"
 
 #: mod/admin.php:984
 msgid "Message queues"
@@ -1540,7 +1525,7 @@ msgstr "ein Jahr"
 
 #: mod/admin.php:1496
 msgid "Multi user instance"
-msgstr "Mehrbenutzer Instanz"
+msgstr "Mehrbenutzer-Instanz"
 
 #: mod/admin.php:1520
 msgid "Closed"
@@ -1556,7 +1541,7 @@ msgstr "Offen"
 
 #: mod/admin.php:1526
 msgid "No SSL policy, links will track page SSL state"
-msgstr "Keine SSL Richtlinie, Links werden das verwendete Protokoll beibehalten"
+msgstr "Keine SSL-Richtlinie, Links werden das verwendete Protokoll beibehalten"
 
 #: mod/admin.php:1527
 msgid "Force all links to use SSL"
@@ -1617,7 +1602,7 @@ msgstr "Worker"
 
 #: mod/admin.php:1591
 msgid "Message Relay"
-msgstr "Nachrichten Relais"
+msgstr "Nachrichten-Relais"
 
 #: mod/admin.php:1592
 msgid "Relocate Instance"
@@ -1642,7 +1627,7 @@ msgstr "Absender für Emails"
 #: mod/admin.php:1599
 msgid ""
 "The email address your server shall use to send notification emails from."
-msgstr "Die E-Mail Adresse die dein Server zum Versenden von Benachrichtigungen verwenden soll."
+msgstr "Die E-Mail Adresse, die dein Server zum Versenden von Benachrichtigungen verwenden soll."
 
 #: mod/admin.php:1600
 msgid "Banner/Logo"
@@ -1662,7 +1647,7 @@ msgstr "Touch Icon"
 
 #: mod/admin.php:1602
 msgid "Link to an icon that will be used for tablets and mobiles."
-msgstr "Link zu einem Icon das Tablets und Handies verwenden sollen."
+msgstr "Link zu einem Icon, das Tablets und Mobiltelefone verwenden sollen."
 
 #: mod/admin.php:1603
 msgid "Additional Info"
@@ -1673,7 +1658,7 @@ msgstr "Zusätzliche Informationen"
 msgid ""
 "For public servers: you can add additional information here that will be "
 "listed at %s/servers."
-msgstr "Für Ã¶ffentliche Server kannst Du hier zusätzliche Informationen angeben, die dann auf %s/servers angezeigt werden."
+msgstr "Für Ã¶ffentliche Server kannst du hier zusätzliche Informationen angeben, die dann auf %s/servers angezeigt werden."
 
 #: mod/admin.php:1604
 msgid "System language"
@@ -1695,7 +1680,7 @@ msgstr "Systemweites mobiles Theme"
 
 #: mod/admin.php:1606
 msgid "Theme for mobile devices"
-msgstr "Thema für mobile Geräte"
+msgstr "Theme für mobile Geräte"
 
 #: mod/admin.php:1607
 msgid "SSL link policy"
@@ -1713,11 +1698,11 @@ msgstr "Erzwinge SSL"
 msgid ""
 "Force all Non-SSL requests to SSL - Attention: on some systems it could lead"
 " to endless loops."
-msgstr "Erzinge alle Nicht-SSL Anfragen auf SSL - Achtung: auf manchen Systemen verursacht dies eine Endlosschleife."
+msgstr "Erzwinge SSL für alle Nicht-SSL-Anfragen - Achtung: auf manchen Systemen verursacht dies eine Endlosschleife."
 
 #: mod/admin.php:1609
 msgid "Hide help entry from navigation menu"
-msgstr "Verberge den Menüeintrag für die Hilfe im Navigationsmenü"
+msgstr "Verberge den Hilfe-Eintrag im Navigationsmenü"
 
 #: mod/admin.php:1609
 msgid ""
@@ -1731,11 +1716,11 @@ msgstr "Ein-Nutzer Instanz"
 
 #: mod/admin.php:1610
 msgid "Make this instance multi-user or single-user for the named user"
-msgstr "Regelt ob es sich bei dieser Instanz um eine ein Personen Installation oder eine Installation mit mehr als einem Nutzer handelt."
+msgstr "Bestimmt, ob es sich bei dieser Instanz um eine Installation mit nur einen Nutzer oder mit mehreren Nutzern handelt."
 
 #: mod/admin.php:1612
 msgid "File storage backend"
-msgstr "Datenspeicher Backend"
+msgstr "Datenspeicher-Backend"
 
 #: mod/admin.php:1612
 msgid ""
@@ -1744,7 +1729,7 @@ msgid ""
 "uploaded before the change will still be available at the old backend. "
 "Please see <a href=\"/help/Settings#1_2_3_1\">the settings documentation</a>"
 " for more information about the choices and the moving procedure."
-msgstr "Das zu verwendende Datenspeicher Backend, wenn Dateien hochgeladen werden. Wenn du das Datenspeicher Backend Ã¤nderst, kannst du die bestehenden Dateien zum neuen Backend verschieben. Machst du dies nicht, verbleiben sie im alten Backend und werden weiterhin von dort geladen. Für weitere Informationen zu den verfügbaren Alternativen und der Prozedur zum Verschieben der Daten, schaue bitte in <a href=\"/help/Settings#1_2_3_1\">die Dokumentation zu den Einstellungen</a>."
+msgstr "Das zu verwendende Datenspeicher-Backend, wenn Dateien hochgeladen werden. Wenn du das Datenspeicher-Backend Ã¤nderst, kannst du die bestehenden Dateien zum neuen Backend verschieben. Machst du dies nicht, verbleiben sie im alten Backend und werden weiterhin von dort geladen. Für weitere Informationen zu den verfügbaren Alternativen und der Prozedur zum Verschieben der Daten schaue bitte in <a href=\"/help/Settings#1_2_3_1\">die Dokumentation zu den Einstellungen</a>."
 
 #: mod/admin.php:1614
 msgid "Maximum image size"
@@ -1764,7 +1749,7 @@ msgstr "Maximale Bildlänge"
 msgid ""
 "Maximum length in pixels of the longest side of uploaded images. Default is "
 "-1, which means no limits."
-msgstr "Maximale Länge in Pixeln der längsten Seite eines hoch geladenen Bildes. Grundeinstellung ist -1 was keine Einschränkung bedeutet."
+msgstr "Maximale Länge in Pixeln der längsten Seite eines hochgeladenen Bildes. Grundeinstellung ist -1, was keine Einschränkung bedeutet."
 
 #: mod/admin.php:1616
 msgid "JPEG image quality"
@@ -1774,7 +1759,7 @@ msgstr "Qualität des JPEG Bildes"
 msgid ""
 "Uploaded JPEGS will be saved at this quality setting [0-100]. Default is "
 "100, which is full quality."
-msgstr "Hoch geladene JPEG Bilder werden mit dieser Qualität [0-100] gespeichert. Grundeinstellung ist 100, kein Qualitätsverlust."
+msgstr "Hochgeladene JPEG-Bilder werden mit dieser Qualität [0-100] gespeichert. Grundeinstellung ist 100, kein Qualitätsverlust."
 
 #: mod/admin.php:1618
 msgid "Register policy"
@@ -1850,17 +1835,17 @@ msgstr "OEmbed nicht verwenden"
 msgid ""
 "Don't show the rich content (e.g. embedded PDF), except from the domains "
 "listed below."
-msgstr "Verhindert das Einbetten von reichhaltigen Inhalten (z.B. eingebettete PDF Dateien). Ausgenommen von dieser Regel werden Domänen die unten aufgeführt werden."
+msgstr "Verhindert das Einbetten von reichhaltigen Inhalten (z.B. eingebettete PDF Dateien). Ausgenommen von dieser Regel werden Domänen, die unten aufgeführt werden."
 
 #: mod/admin.php:1626
 msgid "Allowed OEmbed domains"
-msgstr "Erlaubte OEmbed Domänen"
+msgstr "Erlaubte OEmbed-Domänen"
 
 #: mod/admin.php:1626
 msgid ""
 "Comma separated list of domains which oembed content is allowed to be "
 "displayed. Wildcards are accepted."
-msgstr "Komma separierte Liste von Domänen für die das einbetten reichhaltiger Inhalte erlaubt sind. Platzhalter können verwendet werden."
+msgstr "Durch Kommas getrennte Liste von Domänen, für die das Einbetten reichhaltiger Inhalte erlaubt ist. Platzhalter können verwendet werden."
 
 #: mod/admin.php:1627
 msgid "Block public"
@@ -1913,7 +1898,7 @@ msgstr "Inhalte von Beiträgen nicht in E-Mail-Benachrichtigungen versenden"
 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 "Inhalte von Beiträgen/Kommentaren/privaten Nachrichten/usw., zum Datenschutz nicht in E-Mail-Benachrichtigungen einbinden."
+msgstr "Inhalte von Beiträgen/Kommentaren/privaten Nachrichten/usw. zum Datenschutz nicht in E-Mail-Benachrichtigungen einbinden."
 
 #: mod/admin.php:1632
 msgid "Disallow public access to addons listed in the apps menu."
@@ -1923,7 +1908,7 @@ msgstr "Öffentlichen Zugriff auf Addons im Apps Menü verbieten."
 msgid ""
 "Checking this box will restrict addons listed in the apps menu to members "
 "only."
-msgstr "Wenn ausgewählt werden die im Apps Menü aufgeführten Addons nur angemeldeten Nutzern der Seite zur Verfügung gestellt."
+msgstr "Wenn ausgewählt, werden die im Apps Menü aufgeführten Addons nur angemeldeten Nutzern der Seite zur Verfügung gestellt."
 
 #: mod/admin.php:1633
 msgid "Don't embed private images in posts"
@@ -1935,7 +1920,7 @@ msgid ""
 "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 "Ersetze lokal gehostete private Fotos in Beiträgen nicht mit einer eingebetteten Kopie des Bildes. Dies bedeutet, dass Kontakte, die Beiträge mit privaten Fotos erhalten sich zunächst auf den jeweiligen Servern authentifizieren müssen bevor die Bilder geladen und angezeigt werden, was eine gewisse Zeit dauert."
+msgstr "Ersetze lokal gehostete, private Fotos in Beiträgen nicht mit einer eingebetteten Kopie des Bildes. Dies bedeutet, dass Kontakte, die Beiträge mit privaten Fotos erhalten, sich zunächst auf den jeweiligen Servern authentifizieren müssen, bevor die Bilder geladen und angezeigt werden, was eine gewisse Zeit dauert."
 
 #: mod/admin.php:1634
 msgid "Explicit Content"
@@ -1948,18 +1933,18 @@ msgid ""
 "node information and might be used, e.g. by the global directory, to filter "
 "your node from listings of nodes to join. Additionally a note about this "
 "will be shown at the user registration page."
-msgstr "Wählen Sie das um anzuzeigen, dass Ihr Knoten hauptsächlich für explizite Inhalte verwendet wird, die möglicherweise nicht für Minderjährige geeignet sind. Diese Info wird in der Knoteninformation veröffentlicht und kann durch das Globale Verzeichnis genutzt werden, um Ihren Knoten von den Auflistungen auszuschließen. Zusätzlich wird auf der Registrierungsseite ein Hinweis darüber angezeigt."
+msgstr "Wähle dies, um anzuzeigen, dass dein Knoten hauptsächlich für explizite Inhalte verwendet wird, die möglicherweise nicht für Minderjährige geeignet sind. Diese Info wird in der Knoteninformation veröffentlicht und kann durch das Globale Verzeichnis genutzt werden, um deinen Knoten von den Auflistungen auszuschließen. Zusätzlich wird auf der Registrierungsseite ein Hinweis darüber angezeigt."
 
 #: mod/admin.php:1635
 msgid "Allow Users to set remote_self"
-msgstr "Nutzern erlauben das remote_self Flag zu setzen"
+msgstr "Nutzern erlauben, das remote_self Flag zu setzen"
 
 #: mod/admin.php:1635
 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 "Ist dies ausgewählt kann jeder Nutzer jeden seiner Kontakte als remote_self (entferntes Konto) im Kontakt reparieren Dialog markieren. Nach dem setzten dieses Flags werden alle Top-Level Beiträge dieser Kontakte automatisch in den Stream dieses Nutzers gepostet."
+msgstr "Ist dies ausgewählt, kann jeder Nutzer jeden seiner Kontakte als remote_self (entferntes Konto) im \"Erweitert\"-Reiter der Kontaktansicht markieren. Nach dem Setzen dieses Flags werden alle Top-Level-Beiträge dieser Kontakte automatisch in den Stream dieses Nutzers gepostet (gespiegelt)."
 
 #: mod/admin.php:1636
 msgid "Block multiple registrations"
@@ -1967,7 +1952,7 @@ msgstr "Unterbinde Mehrfachregistrierung"
 
 #: mod/admin.php:1636
 msgid "Disallow users to register additional accounts for use as pages."
-msgstr "Benutzern nicht erlauben, weitere Konten für Organisationsseiten o.ä. mit der gleichen E-Mail Adresse anzulegen, um diese als ."
+msgstr "Benutzern nicht erlauben, weitere Konten für Organisationsseiten o. Ã¤. mit der gleichen E-Mail-Adresse anzulegen."
 
 #: mod/admin.php:1637
 msgid "Disable OpenID"
@@ -1985,7 +1970,7 @@ msgstr "Namen nicht auf Vollständigkeit Ã¼berprüfen"
 msgid ""
 "Allow users to register without a space between the first name and the last "
 "name in their full name."
-msgstr "Erlaubt es Nutzerkonten zu registrieren, bei denen im Namensfeld kein Leerzeichen als Trennung von Vor- und Nachname verwendet wird."
+msgstr "Erlaubt Nutzern, Konten zu registrieren, bei denen im Namensfeld kein Leerzeichen zur Trennung von Vor- und Nachnamen verwendet wird."
 
 #: mod/admin.php:1639
 msgid "Community pages for visitors"
@@ -1995,7 +1980,7 @@ msgstr "Für Besucher verfügbare Gemeinschaftsseite"
 msgid ""
 "Which community pages should be available for visitors. Local users always "
 "see both pages."
-msgstr "Welche Gemeinschaftsseiten sollen für Besucher dieses Knotens verfügbar sein? Lokale Nutzer können grundsätzlich beide Gemeinschaftsseiten verwenden."
+msgstr "Welche Gemeinschaftsseiten sollen für Besucher dieses Knotens verfügbar sein? Lokale Nutzer können grundsätzlich beide Seiten verwenden."
 
 #: mod/admin.php:1640
 msgid "Posts per user on community page"
@@ -2005,43 +1990,43 @@ msgstr "Anzahl der Beiträge pro Benutzer auf der Gemeinschaftsseite"
 msgid ""
 "The maximum number of posts per user on the community page. (Not valid for "
 "'Global Community')"
-msgstr "Die Anzahl der Beiträge die von jedem Nutzer maximal auf der Gemeinschaftsseite angezeigt werden sollen. Dieser Parameter wird nicht für die Globale Gemeinschaftsseite genutzt."
+msgstr "Die Anzahl der Beiträge, die von jedem Nutzer maximal auf der Gemeinschaftsseite angezeigt werden sollen. Dieser Parameter wird nicht für die Globale Gemeinschaftsseite genutzt."
 
 #: mod/admin.php:1641
 msgid "Disable OStatus support"
-msgstr "OStatus Unterstützung deaktivieren"
+msgstr "OStatus-Unterstützung deaktivieren"
 
 #: mod/admin.php:1641
 msgid ""
 "Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All "
 "communications in OStatus are public, so privacy warnings will be "
 "occasionally displayed."
-msgstr "Die eingebaute OStatus (StatusNet, GNU Social, etc.) Unterstützung deaktivieren. Jede Kommunikation in OStatus ist Ã¶ffentlich, Privatsphäre Warnungen werden nur bei Bedarf angezeigt."
+msgstr "Die eingebaute OStatus-Unterstützung (StatusNet, GNU Social, etc.) deaktivieren. Jede Kommunikation in OStatus ist Ã¶ffentlich, Privatsphäre-Warnungen werden nur bei Bedarf angezeigt."
 
 #: mod/admin.php:1642
 msgid "Only import OStatus/ActivityPub threads from our contacts"
-msgstr "Nur OStatus/ActivityPub Konversationen unserer Kontakte importieren"
+msgstr "Nur OStatus/ActivityPub-Konversationen unserer Kontakte importieren"
 
 #: mod/admin.php:1642
 msgid ""
 "Normally we import every content from our OStatus and ActivityPub contacts. "
 "With this option we only store threads that are started by a contact that is"
 " known on our system."
-msgstr "Normalerweise werden alle Inhalte von OStatus und ActivityPub Kontakten importiert. Mit dieser Option werden nur solche Konversationen gespeichert, die von Kontakten der Nutzer dieses Knotens gestartet wurden."
+msgstr "Normalerweise werden alle Inhalte von OStatus- und ActivityPub-Kontakten importiert. Mit dieser Option werden nur solche Konversationen gespeichert, die von Kontakten der Nutzer dieses Knotens gestartet wurden."
 
 #: mod/admin.php:1643
 msgid "OStatus support can only be enabled if threading is enabled."
-msgstr "OStatus Unterstützung kann nur aktiviert werden wenn \"Threading\" aktiviert ist. "
+msgstr "OStatus Unterstützung kann nur aktiviert werden, wenn \"Threading\" aktiviert ist. "
 
 #: mod/admin.php:1645
 msgid ""
 "Diaspora support can't be enabled because Friendica was installed into a sub"
 " directory."
-msgstr "Diaspora Unterstützung kann nicht aktiviert werden da Friendica in ein Unterverzeichnis installiert ist."
+msgstr "Diaspora Unterstützung kann nicht aktiviert werden, da Friendica in ein Unterverzeichnis installiert ist."
 
 #: mod/admin.php:1646
 msgid "Enable Diaspora support"
-msgstr "Diaspora Unterstützung aktivieren"
+msgstr "Diaspora-Unterstützung aktivieren"
 
 #: mod/admin.php:1646
 msgid "Provide built-in Diaspora network compatibility."
@@ -2055,7 +2040,7 @@ msgstr "Nur Friendica-Kontakte erlauben"
 msgid ""
 "All contacts must use Friendica protocols. All other built-in communication "
 "protocols disabled."
-msgstr "Alle Kontakte müssen das Friendica Protokoll nutzen. Alle anderen Kommunikationsprotokolle werden deaktiviert."
+msgstr "Alle Kontakte müssen das Friendica-Protokoll nutzen. Alle anderen Kommunikationsprotokolle werden deaktiviert."
 
 #: mod/admin.php:1648
 msgid "Verify SSL"
@@ -2065,19 +2050,19 @@ msgstr "SSL Ãœberprüfen"
 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 "Wenn gewollt, kann man hier eine strenge Zertifikatkontrolle einstellen. Das bedeutet, dass man zu keinen Seiten mit selbst unterzeichnetem SSL eine Verbindung herstellen kann."
+msgstr "Wenn gewollt, kann man hier eine strenge Zertifikatskontrolle einstellen. Das bedeutet, dass man zu keinen Seiten mit selbst unterzeichnetem SSL-Zertifikat eine Verbindung herstellen kann."
 
 #: mod/admin.php:1649
 msgid "Proxy user"
-msgstr "Proxy Nutzer"
+msgstr "Proxy-Nutzer"
 
 #: mod/admin.php:1650
 msgid "Proxy URL"
-msgstr "Proxy URL"
+msgstr "Proxy-URL"
 
 #: mod/admin.php:1651
 msgid "Network timeout"
-msgstr "Netzwerk Wartezeit"
+msgstr "Netzwerk-Wartezeit"
 
 #: mod/admin.php:1651
 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)."
@@ -2091,7 +2076,7 @@ msgstr "Maximum Load Average"
 msgid ""
 "Maximum system load before delivery and poll processes are deferred - "
 "default 50."
-msgstr "Maximale Systemlast bevor Verteil- und Empfangsprozesse verschoben werden - Standard 50"
+msgstr "Maximale Systemlast, bevor Verteil- und Empfangsprozesse verschoben werden - Standard 50"
 
 #: mod/admin.php:1653
 msgid "Maximum Load Average (Frontend)"
@@ -2099,7 +2084,7 @@ msgstr "Maximum Load Average (Frontend)"
 
 #: mod/admin.php:1653
 msgid "Maximum system load before the frontend quits service - default 50."
-msgstr "Maximale Systemlast bevor Vordergrundprozesse pausiert werden - Standard 50."
+msgstr "Maximale Systemlast, bevor Vordergrundprozesse pausiert werden - Standard 50."
 
 #: mod/admin.php:1654
 msgid "Minimal Memory"
@@ -2129,7 +2114,7 @@ msgstr "Minimaler Fragmentationsgrad"
 msgid ""
 "Minimum fragmenation level to start the automatic optimization - default "
 "value is 30%."
-msgstr "Minimales Fragmentationsgrad von Datenbanktabellen um die automatische Optimierung einzuleiten - Standardwert ist 30%"
+msgstr "Minimaler Fragmentationsgrad von Datenbanktabellen, um die automatische Optimierung einzuleiten - Standardwert ist 30%"
 
 #: mod/admin.php:1658
 msgid "Periodical check of global contacts"
@@ -2147,7 +2132,7 @@ msgstr "Tage zwischen erneuten Abfragen"
 
 #: mod/admin.php:1659
 msgid "Number of days after which a server is requeried for his contacts."
-msgstr "Legt das Abfrageintervall fest, nachdem ein Server erneut nach Kontakten abgefragt werden soll."
+msgstr "Legt das Abfrageintervall fest, nach dem ein Server erneut nach Kontakten abgefragt werden soll."
 
 #: mod/admin.php:1660
 msgid "Discover contacts from other servers"
@@ -2161,7 +2146,7 @@ msgid ""
 "and older friendica servers, where global contacts weren't available. The "
 "fallback increases the server load, so the recommended setting is 'Users, "
 "Global Contacts'."
-msgstr "Regelmäßig andere Server nach potentiellen Kontakten absuchen. Du kannst zwischen 'Nutzern', den tatsächlichen Nutzern des anderen Systems und 'globalen Kontakten', aktiven Kontakten die auf dem System bekannt sind, wählen. Der Fallback-Mechanismus ist für Ã¤ltere Friendica und Redmatrix Server gedacht, bei denen globale Kontakte noch nicht verfügbar sind. Durch den Fallbackmodus entsteht auf deinem Server eine wesentlich höhere Last, empfohlen wird der Modus 'Nutzer, globale Kontakte'."
+msgstr "Regelmäßig andere Server nach potentiellen Kontakten absuchen. Du kannst zwischen 'Nutzern', also den tatsächlichen Nutzern des anderen Systems, und 'globalen Kontakten', also aktiven Kontakten, die auf dem System bekannt sind, wählen. Der Fallback-Mechanismus ist für Ã¤ltere Friendica- und Redmatrix-Server gedacht, bei denen globale Kontakte noch nicht verfügbar sind. Durch den Fallback-Modus entsteht auf deinem Server eine wesentlich höhere Last, empfohlen wird der Modus 'Nutzer, globale Kontakte'."
 
 #: mod/admin.php:1661
 msgid "Timeframe for fetching global contacts"
@@ -2171,7 +2156,7 @@ msgstr "Zeitfenster für globale Kontakte"
 msgid ""
 "When the discovery is activated, this value defines the timeframe for the "
 "activity of the global contacts that are fetched from other servers."
-msgstr "Wenn die Entdeckung neuer Kontakte aktiv ist, definiert dieses Zeitfenster den Zeitraum in dem globale Kontakte als aktiv gelten und von anderen Servern importiert werden."
+msgstr "Wenn die Entdeckung neuer Kontakte aktiv ist, definiert dieses Zeitfenster den Zeitraum, in dem globale Kontakte als aktiv gelten und von anderen Servern importiert werden."
 
 #: mod/admin.php:1662
 msgid "Search the local directory"
@@ -2182,11 +2167,11 @@ 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 "Suche im lokalen Verzeichnis anstelle des globalen Verzeichnisses durchführen. Jede Suche wird im Hintergrund auch im globalen Verzeichnis durchgeführt um die Suchresultate zu verbessern, wenn diese Suche wiederholt wird."
+msgstr "Suche im lokalen Verzeichnis anstelle des globalen Verzeichnisses durchführen. Jede Suche wird im Hintergrund auch im globalen Verzeichnis durchgeführt, um die Suchresultate zu verbessern, wenn die Suche wiederholt wird."
 
 #: mod/admin.php:1664
 msgid "Publish server information"
-msgstr "Server Informationen veröffentlichen"
+msgstr "Server-Informationen veröffentlichen"
 
 #: mod/admin.php:1664
 msgid ""
@@ -2194,7 +2179,7 @@ msgid ""
 "contains the name and version of the server, number of users with public "
 "profiles, number of posts and the activated protocols and connectors. See <a"
 " href='http://the-federation.info/'>the-federation.info</a> for details."
-msgstr "Wenn aktiviert, werden allgemeine Informationen Ã¼ber den Server und Nutzungsdaten veröffentlicht. Die Daten beinhalten den Namen sowie die Version des Servers, die Anzahl der Personen mit Ã¶ffentlichen Profilen, die Anzahl der Beiträge sowie aktivierte Protokolle und Connectoren. Für Details bitte <a href='http://the-federation.info/'>the-federation.info</a> aufrufen."
+msgstr "Wenn aktiviert, werden allgemeine Informationen Ã¼ber den Server und Nutzungsdaten veröffentlicht. Die Daten beinhalten den Namen sowie die Version des Servers, die Anzahl der Personen mit Ã¶ffentlichen Profilen, die Anzahl der Beiträge sowie aktivierte Protokolle und Konnektoren. Für Details bitte <a href='http://the-federation.info/'>the-federation.info</a> aufrufen."
 
 #: mod/admin.php:1666
 msgid "Check upstream version"
@@ -2204,11 +2189,11 @@ msgstr "Suche nach Updates"
 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 "Wenn diese Option aktiviert ist wird regelmäßig nach neuen Friendica Versionen auf github Ã¼berprüft. Wenn es eine neue Version gibt, wird dies auf der Ãœbersichtsseite im Admin-Panel angezeigt."
+msgstr "Wenn diese Option aktiviert ist, wird regelmäßig nach neuen Friendica-Versionen auf github gesucht. Wenn es eine neue Version gibt, wird dies auf der Ãœbersichtsseite im Admin-Panel angezeigt."
 
 #: mod/admin.php:1667
 msgid "Suppress Tags"
-msgstr "Tags Unterdrücken"
+msgstr "Tags unterdrücken"
 
 #: mod/admin.php:1667
 msgid "Suppress showing a list of hashtags at the end of the posting."
@@ -2233,7 +2218,7 @@ 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 "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl in Tagen nach der Beiträge die auf anderen Knoten des Netzwerks verfasst wurden, gelöscht werden sollen. Eigene Beiträge sowie markierte oder abgespeicherte Beiträge werden nicht gelöscht. Ein Wert von 0 deaktiviert das automatische löschen von Beiträgen."
+msgstr "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl in Tagen, nach der Beiträge, die auf anderen Knoten des Netzwerks verfasst wurden, gelöscht werden sollen. Eigene Beiträge sowie markierte oder abgespeicherte Beiträge werden nicht gelöscht. Ein Wert von 0 deaktiviert das automatische Löschen von Beiträgen."
 
 #: mod/admin.php:1670
 msgid "Lifespan of unclaimed items"
@@ -2245,7 +2230,7 @@ msgid ""
 "unclaimed remote items (mostly content from the relay) will be deleted. "
 "Default value is 90 days. Defaults to the general lifespan value of remote "
 "items if set to 0."
-msgstr "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl von Tagen nach denen nicht angeforderte Beiträge (hauptsächlich sole die Ã¼ber das Relais eintreffen) gelöscht werden. Der Standardwert beträgt 90 Tage. Wird dieser Wert auf 0 gesetzt, wird die Lebenszeit von Beiträgen anderer Knoten verwendet."
+msgstr "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl von Tagen, nach denen nicht angeforderte Beiträge (hauptsächlich solche, die Ã¼ber das Relais eintreffen) gelöscht werden. Der Standardwert beträgt 90 Tage. Wird dieser Wert auf 0 gesetzt, wird die Lebensdauer von Beiträgen anderer Knoten verwendet."
 
 #: mod/admin.php:1671
 msgid "Lifespan of raw conversation data"
@@ -2256,11 +2241,11 @@ 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 "Die Konversationsdaten werden für ActivityPub und OStatus sowie für Debug-Zwecke verwendet. Sie können gefahrlos nach 14 Tagen zu entfernt werden, der Standardwert beträgt 90 Tage."
+msgstr "Die Konversationsdaten werden für ActivityPub und OStatus sowie für Debug-Zwecke verwendet. Sie sollten gefahrlos nach 14 Tagen entfernt werden können, der Standardwert beträgt 90 Tage."
 
 #: mod/admin.php:1672
 msgid "Path to item cache"
-msgstr "Pfad zum Eintrag Cache"
+msgstr "Pfad zum Item-Cache"
 
 #: mod/admin.php:1672
 msgid "The item caches buffers generated bbcode and external images."
@@ -2274,7 +2259,7 @@ msgstr "Cache-Dauer in Sekunden"
 msgid ""
 "How long should the cache files be hold? Default value is 86400 seconds (One"
 " day). To disable the item cache, set the value to -1."
-msgstr "Wie lange sollen die gecachedten Dateien vorgehalten werden? Grundeinstellung sind 86400 Sekunden (ein Tag). Um den Item Cache zu deaktivieren, setze diesen Wert auf -1."
+msgstr "Wie lange sollen die zwischengespeicherten Dateien vorgehalten werden? Grundeinstellung sind 86400 Sekunden (ein Tag). Um den Item-Cache zu deaktivieren, setze diesen Wert auf -1."
 
 #: mod/admin.php:1674
 msgid "Maximum numbers of comments per post"
@@ -2286,13 +2271,13 @@ msgstr "Wie viele Kommentare sollen pro Beitrag angezeigt werden? Standardwert s
 
 #: mod/admin.php:1675
 msgid "Temp path"
-msgstr "Temp Pfad"
+msgstr "Temp-Pfad"
 
 #: mod/admin.php:1675
 msgid ""
 "If you have a restricted system where the webserver can't access the system "
 "temp path, enter another path here."
-msgstr "Solltest du ein eingeschränktes System haben, auf dem der Webserver nicht auf das temp Verzeichnis des Systems zugreifen kann, setze hier einen anderen Pfad."
+msgstr "Solltest du ein eingeschränktes System haben, auf dem der Webserver nicht auf das temp-Verzeichnis des Systems zugreifen kann, setze hier einen anderen Pfad."
 
 #: mod/admin.php:1676
 msgid "Base path to installation"
@@ -2307,7 +2292,7 @@ msgstr "Falls das System nicht den korrekten Pfad zu deiner Installation gefunde
 
 #: mod/admin.php:1677
 msgid "Disable picture proxy"
-msgstr "Bilder Proxy deaktivieren"
+msgstr "Bilder-Proxy deaktivieren"
 
 #: mod/admin.php:1677
 msgid ""
@@ -2331,15 +2316,15 @@ msgstr "Neue Basis-URL"
 msgid ""
 "Change base url for this server. Sends relocate message to all Friendica and"
 " Diaspora* contacts of all users."
-msgstr "Ändert die Basis-URL dieses Servers und sendet eine Umzugsmitteilung an alle Friendica und Diaspora* Kontakte deiner NutzerInnen."
+msgstr "Ändert die Basis-URL dieses Servers und sendet eine Umzugsmitteilung an alle Friendica- und Diaspora*-Kontakte deiner NutzerInnen."
 
 #: mod/admin.php:1682
 msgid "RINO Encryption"
-msgstr "RINO Verschlüsselung"
+msgstr "RINO-Verschlüsselung"
 
 #: mod/admin.php:1682
 msgid "Encryption layer between nodes."
-msgstr "Verschlüsselung zwischen Friendica Instanzen"
+msgstr "Verschlüsselung zwischen Friendica-Instanzen"
 
 #: mod/admin.php:1682
 msgid "Enabled"
@@ -2354,7 +2339,7 @@ msgstr "Maximale Anzahl parallel laufender Worker"
 msgid ""
 "On shared hosters set this to %d. On larger systems, values of %d are great."
 " Default value is %d."
-msgstr "Wenn dein Knoten bei einem Shared Hoster ist, setzte diesen Wert auf %d. Auf größeren Systemen funktioniert ein Wert von %d recht gut. Standardeinstellung sind %d."
+msgstr "Wenn dein Knoten bei einem Shared Hoster ist, setze diesen Wert auf %d. Auf größeren Systemen funktioniert ein Wert von %d recht gut. Standardeinstellung sind %d."
 
 #: mod/admin.php:1685
 msgid "Don't use 'proc_open' with the worker"
@@ -2365,7 +2350,7 @@ msgid ""
 "Enable this if your system doesn't allow the use of 'proc_open'. This can "
 "happen on shared hosters. If this is enabled you should increase the "
 "frequency of worker calls in your crontab."
-msgstr "Aktiviere diese Option, wenn dein System die Verwendung von 'proc_open' verhindert. Dies könnte auf Shared Hostern der Fall sein. Wenn du diese Option aktivierst, solltest du die Frequenz der poller Aufrufe in deiner crontab erhöhen."
+msgstr "Aktiviere diese Option, wenn dein System die Verwendung von 'proc_open' verhindert. Dies könnte auf Shared Hostern der Fall sein. Wenn du diese Option aktivierst, solltest du die Frequenz der worker-Aufrufe in deiner crontab erhöhen."
 
 #: mod/admin.php:1686
 msgid "Enable fastlane"
@@ -2375,11 +2360,11 @@ msgstr "Aktiviere Fastlane"
 msgid ""
 "When enabed, the fastlane mechanism starts an additional worker if processes"
 " with higher priority are blocked by processes of lower priority."
-msgstr "Wenn aktiviert, wird der Fastlane-Mechanismus einen weiteren Worker-Prozeß starten wenn Prozesse mit höherer Priorität von Prozessen mit niedrigerer Priorität blockiert werden."
+msgstr "Wenn aktiviert, wird der Fastlane-Mechanismus einen weiteren Worker-Prozeß starten, wenn Prozesse mit höherer Priorität von Prozessen mit niedrigerer Priorität blockiert werden."
 
 #: mod/admin.php:1687
 msgid "Enable frontend worker"
-msgstr "Aktiviere den Frontend Worker"
+msgstr "Aktiviere den Frontend-Worker"
 
 #: mod/admin.php:1687
 #, php-format
@@ -2389,7 +2374,7 @@ msgid ""
 "might want to call %s/worker on a regular basis via an external cron job. "
 "You should only enable this option if you cannot utilize cron/scheduled jobs"
 " on your server."
-msgstr "Ist diese Option aktiv, wird der Worker Prozess durch Aktionen am Frontend gestartet (z.B. wenn Nachrichten zugestellt werden). Auf kleineren Seiten sollte %s/worker regelmäßig, beispielsweise durch einen externen Cron Anbieter, aufgerufen werden. Du solltest dies Option nur dann aktivieren, wenn du keinen Cron Job auf deinem eigenen Server starten kannst."
+msgstr "Ist diese Option aktiv, wird der Worker-Prozess durch Aktionen am Frontend gestartet (z.B. wenn Nachrichten zugestellt werden). Auf kleineren Seiten sollte %s/worker regelmäßig, beispielsweise durch einen externen Cron-Anbieter, aufgerufen werden. Du solltest diese Option nur dann aktivieren, wenn du keinen zeitgesteuerten Job auf deinem eigenen Server starten kannst."
 
 #: mod/admin.php:1689
 msgid "Subscribe to relay"
@@ -2403,22 +2388,22 @@ msgstr "Aktiviert den Empfang von Ã¶ffentlichen Beiträgen vom Relais-Server. Di
 
 #: mod/admin.php:1690
 msgid "Relay server"
-msgstr "Relais Server"
+msgstr "Relais-Server"
 
 #: mod/admin.php:1690
 msgid ""
 "Address of the relay server where public posts should be send to. For "
 "example https://relay.diasp.org"
-msgstr "Adresse des Relais Servers an den die Ã¶ffentlichen Beiträge gesendet werden sollen. Zum Beispiel https://relay.diasp.org"
+msgstr "Adresse des Relais-Servers, an den die Ã¶ffentlichen Beiträge gesendet werden sollen. Zum Beispiel https://relay.diasp.org"
 
 #: mod/admin.php:1691
 msgid "Direct relay transfer"
-msgstr "Direkte Relais Ãœbertragung"
+msgstr "Direkte Relais-Ãœbertragung"
 
 #: mod/admin.php:1691
 msgid ""
 "Enables the direct transfer to other servers without using the relay servers"
-msgstr "Aktiviert das direkte Verteilen an andere Server, ohne dass ein Relais Server verwendet wird."
+msgstr "Aktiviert das direkte Verteilen an andere Server, ohne dass ein Relais-Server verwendet wird."
 
 #: mod/admin.php:1692
 msgid "Relay scope"
@@ -2441,11 +2426,11 @@ msgstr "Schlagwörter"
 
 #: mod/admin.php:1693
 msgid "Server tags"
-msgstr "Server Schlagworte"
+msgstr "Server-Schlagworte"
 
 #: mod/admin.php:1693
 msgid "Comma separated list of tags for the 'tags' subscription."
-msgstr "Liste von Schlagworten die abonniert werden sollen, mit Komma getrennt."
+msgstr "Liste von Schlagworten, die abonniert werden sollen, mit Komma getrennt."
 
 #: mod/admin.php:1694
 msgid "Allow user tags"
@@ -2455,7 +2440,7 @@ msgstr "Verwende Schlagworte der Nutzer"
 msgid ""
 "If enabled, the tags from the saved searches will used for the 'tags' "
 "subscription in addition to the 'relay_server_tags'."
-msgstr "Ist dies aktiviert, werden die Schlagwörter der gespeicherten Suchen zusätzlich zu den oben  definierten Server Schlagworte abonniert."
+msgstr "Ist dies aktiviert, werden die Schlagwörter der gespeicherten Suchen zusätzlich zu den oben definierten Server-Schlagworten abonniert."
 
 #: mod/admin.php:1697
 msgid "Start Relocation"
@@ -2501,7 +2486,7 @@ msgstr "Keine fehlgeschlagenen Updates."
 
 #: mod/admin.php:1783
 msgid "Check database structure"
-msgstr "Datenbank Struktur Ã¼berprüfen"
+msgstr "Datenbankstruktur Ã¼berprüfen"
 
 #: mod/admin.php:1788
 msgid "Failed Updates"
@@ -2526,7 +2511,7 @@ msgid ""
 "\n"
 "\t\t\tDear %1$s,\n"
 "\t\t\t\tthe administrator of %2$s has set up an account for you."
-msgstr "\nHallo %1$s,\n\nauf %2$s wurde ein Account für Dich angelegt."
+msgstr "\nHallo %1$s,\n\nauf %2$s wurde ein Account für dich angelegt."
 
 #: mod/admin.php:1834
 #, php-format
@@ -2558,9 +2543,9 @@ msgid ""
 "\t\t\tIf you ever want to delete your account, you can do so at %1$s/removeme\n"
 "\n"
 "\t\t\tThank you and welcome to %4$s."
-msgstr "\nNachfolgend die Anmelde-Details:\n\tAdresse der Seite:\t%1$s\n\tBenutzername:\t%2$s\n\tPasswort:\t%3$s\n\nDu kannst Dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald Du Dich\nangemeldet hast.\n\nBitte nimm Dir ein paar Minuten um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst Du ja auch einige Informationen Ã¼ber Dich in Deinem\nProfil veröffentlichen, damit andere Leute Dich einfacher finden können.\nBearbeite hierfür einfach Dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen Dir, Deinen kompletten Namen anzugeben und ein zu Dir\npassendes Profilbild zu wählen, damit Dich alte Bekannte wieder finden.\nAußerdem ist es nützlich, wenn Du auf Deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die Deine Interessen teilen.\n\nWir respektieren Deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn Du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %1$s/removeme  jederzeit tun.\n\nNun viel Spaß, gute Begegnungen und willkommen auf %4$s."
+msgstr "\nNachfolgend die Anmelde-Details:\n\tAdresse der Seite:\t%1$s\n\tBenutzername:\t%2$s\n\tPasswort:\t%3$s\n\nDu kannst dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald du dich\nangemeldet hast.\n\nBitte nimm dir ein paar Minuten, um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst du ja auch einige Informationen Ã¼ber dich in deinem\nProfil veröffentlichen, damit andere Leute dich einfacher finden können.\nBearbeite hierfür einfach dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen dir, deinen kompletten Namen anzugeben und ein zu dir\npassendes Profilbild zu wählen, damit dich alte Bekannte wiederfinden.\nAußerdem ist es nützlich, wenn du auf deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die deine Interessen teilen.\n\nWir respektieren deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %1$s/removeme  jederzeit tun.\n\nNun viel Spaß, gute Begegnungen und willkommen auf %4$s."
 
-#: mod/admin.php:1871 src/Model/User.php:858
+#: mod/admin.php:1871 src/Model/User.php:859
 #, php-format
 msgid "Registration details for %s"
 msgstr "Details der Registration von %s"
@@ -2612,7 +2597,7 @@ msgstr "Öffentliches Forum"
 
 #: mod/admin.php:2002 mod/settings.php:1061
 msgid "Automatic Friend Page"
-msgstr "Automatische Freunde Seite"
+msgstr "Automatische Freunde-Seite"
 
 #: mod/admin.php:2003
 msgid "Private Forum"
@@ -2715,13 +2700,13 @@ msgstr "Permanent löschen"
 msgid ""
 "Selected users will be deleted!\\n\\nEverything these users had posted on "
 "this site will be permanently deleted!\\n\\nAre you sure?"
-msgstr "Die markierten Nutzer werden gelöscht!\\n\\nAlle Beiträge, die diese Nutzer auf dieser Seite veröffentlicht haben, werden permanent gelöscht!\\n\\nBist Du sicher?"
+msgstr "Die markierten Nutzer werden gelöscht!\\n\\nAlle Beiträge, die diese Nutzer auf dieser Seite veröffentlicht haben, werden permanent gelöscht!\\n\\nBist du sicher?"
 
 #: mod/admin.php:2087
 msgid ""
 "The user {0} will be deleted!\\n\\nEverything this user has posted on this "
 "site will be permanently deleted!\\n\\nAre you sure?"
-msgstr "Der Nutzer {0} wird gelöscht!\\n\\nAlles was dieser Nutzer auf dieser Seite veröffentlicht hat, wird permanent gelöscht!\\n\\nBist Du sicher?"
+msgstr "Der Nutzer {0} wird gelöscht!\\n\\nAlles, was dieser Nutzer auf dieser Seite veröffentlicht hat, wird permanent gelöscht!\\n\\nBist du sicher?"
 
 #: mod/admin.php:2097
 msgid "Name of the new user."
@@ -2762,7 +2747,7 @@ msgid "Toggle"
 msgstr "Umschalten"
 
 #: mod/admin.php:2181 mod/admin.php:2438 mod/newmember.php:20
-#: mod/settings.php:136 view/theme/frio/theme.php:272 src/Content/Nav.php:263
+#: mod/settings.php:136 src/Content/Nav.php:263 view/theme/frio/theme.php:272
 msgid "Settings"
 msgstr "Einstellungen"
 
@@ -2788,7 +2773,7 @@ msgstr "Es sind derzeit keine Addons auf diesem Knoten verfügbar. Du findest da
 
 #: mod/admin.php:2367
 msgid "No themes found."
-msgstr "Keine Themen gefunden."
+msgstr "Keine Themes gefunden."
 
 #: mod/admin.php:2428
 msgid "Screenshot"
@@ -2856,7 +2841,7 @@ msgid ""
 "the 'error_log' line is relative to the friendica top-level directory and "
 "must be writeable by the web server. The option '1' for 'log_errors' and "
 "'display_errors' is to enable these options, set to '0' to disable them."
-msgstr "Um die Protokollierung von PHP-Fehlern und Warnungen vorübergehend zu aktivieren, können Sie der Datei index.php Ihrer Installation Folgendes voranstellen. Der in der Datei 'error_log' angegebene Dateiname ist relativ zum obersten Verzeichnis von friendica und muss vom Webserver beschreibbar sein. Die Option '1' für 'log_errors' und 'display_errors' aktiviert diese Optionen, ersetze die '1' durch einer '0' um sie zu deaktivieren."
+msgstr "Um die Protokollierung von PHP-Fehlern und Warnungen vorübergehend zu aktivieren, kannst du der Datei index.php deiner Installation Folgendes voranstellen. Der in der Datei 'error_log' angegebene Dateiname ist relativ zum obersten Verzeichnis von Friendica und muss vom Webserver beschreibbar sein. Die Option '1' für 'log_errors' und 'display_errors' aktiviert diese Optionen, ersetze die '1' durch eine '0', um sie zu deaktivieren."
 
 #: mod/admin.php:2599
 #, php-format
@@ -2908,13 +2893,13 @@ msgstr "Gehe zu Deiner Anwendung zurück und trage dort folgenden Sicherheitscod
 
 #: mod/api.php:94
 msgid "Please login to continue."
-msgstr "Bitte melde Dich an um fortzufahren."
+msgstr "Bitte melde dich an, um fortzufahren."
 
 #: mod/api.php:108
 msgid ""
 "Do you want to authorize this application to access your posts and contacts,"
 " and/or create new posts for you?"
-msgstr "Möchtest Du dieser Anwendung den Zugriff auf Deine Beiträge und Kontakte, sowie das Erstellen neuer Beiträge in Deinem Namen gestatten?"
+msgstr "Möchtest du dieser Anwendung den Zugriff auf Deine Beiträge und Kontakte sowie das Erstellen neuer Beiträge in Deinem Namen gestatten?"
 
 #: mod/api.php:110 mod/dfrn_request.php:640 mod/follow.php:150
 #: mod/profiles.php:526 mod/profiles.php:530 mod/profiles.php:551
@@ -2926,6 +2911,18 @@ msgstr "Möchtest Du dieser Anwendung den Zugriff auf Deine Beiträge und Kontak
 msgid "No"
 msgstr "Nein"
 
+#: mod/apps.php:15 src/App.php:1349
+msgid "You must be logged in to use addons. "
+msgstr "Du musst angemeldet sein, um Addons benutzen zu können."
+
+#: mod/apps.php:20
+msgid "Applications"
+msgstr "Anwendungen"
+
+#: mod/apps.php:25
+msgid "No installed applications."
+msgstr "Keine Applikationen installiert."
+
 #: mod/babel.php:25
 msgid "Source input"
 msgstr "Originaltext:"
@@ -2976,7 +2973,7 @@ msgstr "Originaltext (Diaspora Format): "
 
 #: mod/babel.php:100
 msgid "Markdown::convert (raw HTML)"
-msgstr "Markdown::convert (raw HTML)"
+msgstr "Markdown::convert (pures HTML)"
 
 #: mod/babel.php:105
 msgid "Markdown::convert"
@@ -3048,7 +3045,7 @@ msgid "Access denied."
 msgstr "Zugriff verweigert."
 
 #: mod/cal.php:46 mod/dfrn_poll.php:486 mod/help.php:68
-#: mod/viewcontacts.php:34 src/App.php:1402
+#: mod/viewcontacts.php:34 src/App.php:1400
 msgid "Page not found."
 msgstr "Seite nicht gefunden."
 
@@ -3056,9 +3053,9 @@ msgstr "Seite nicht gefunden."
 msgid "Access to this profile has been restricted."
 msgstr "Der Zugriff zu diesem Profil wurde eingeschränkt."
 
-#: mod/cal.php:273 mod/events.php:384 view/theme/frio/theme.php:266
-#: view/theme/frio/theme.php:270 src/Content/Nav.php:160
+#: mod/cal.php:273 mod/events.php:384 src/Content/Nav.php:160
 #: src/Content/Nav.php:226 src/Model/Profile.php:937 src/Model/Profile.php:948
+#: view/theme/frio/theme.php:266 view/theme/frio/theme.php:270
 msgid "Events"
 msgstr "Veranstaltungen"
 
@@ -3074,22 +3071,22 @@ msgstr "Vorherige"
 msgid "Next"
 msgstr "Nächste"
 
-#: mod/cal.php:279 mod/events.php:393 src/Model/Event.php:429
+#: mod/cal.php:279 mod/events.php:393 src/Model/Event.php:428
 msgid "today"
 msgstr "Heute"
 
-#: mod/cal.php:280 mod/events.php:394 src/Util/Temporal.php:314
-#: src/Model/Event.php:430
+#: mod/cal.php:280 mod/events.php:394 src/Model/Event.php:429
+#: src/Util/Temporal.php:314
 msgid "month"
 msgstr "Monat"
 
-#: mod/cal.php:281 mod/events.php:395 src/Util/Temporal.php:315
-#: src/Model/Event.php:431
+#: mod/cal.php:281 mod/events.php:395 src/Model/Event.php:430
+#: src/Util/Temporal.php:315
 msgid "week"
 msgstr "Woche"
 
-#: mod/cal.php:282 mod/events.php:396 src/Util/Temporal.php:316
-#: src/Model/Event.php:432
+#: mod/cal.php:282 mod/events.php:396 src/Model/Event.php:431
+#: src/Util/Temporal.php:316
 msgid "day"
 msgstr "Tag"
 
@@ -3097,7 +3094,7 @@ msgstr "Tag"
 msgid "list"
 msgstr "Liste"
 
-#: mod/cal.php:296 src/Core/Console/NewPassword.php:67 src/Model/User.php:323
+#: mod/cal.php:296 src/Core/Console/NewPassword.php:67 src/Model/User.php:324
 msgid "User not found"
 msgstr "Nutzer nicht gefunden"
 
@@ -3190,13 +3187,13 @@ msgstr "Kontakt nicht gefunden."
 msgid ""
 "<strong>WARNING: This is highly advanced</strong> and if you enter incorrect"
 " information your communications with this contact may stop working."
-msgstr "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn Du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr."
+msgstr "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr."
 
 #: mod/crepair.php:116
 msgid ""
 "Please use your browser 'Back' button <strong>now</strong> if you are "
 "uncertain what to do on this page."
-msgstr "Bitte nutze den Zurück-Button Deines Browsers <strong>jetzt</strong>, wenn Du Dir unsicher bist, was Du tun willst."
+msgstr "Bitte nutze den Zurück-Button Deines Browsers <strong>jetzt</strong>, wenn du dir unsicher bist, was du tun willst."
 
 #: mod/crepair.php:130 mod/crepair.php:132
 msgid "No mirroring"
@@ -3223,11 +3220,10 @@ msgstr "Kontaktdaten neu laden"
 #: mod/message.php:261 mod/message.php:441 mod/photos.php:1049
 #: mod/photos.php:1137 mod/photos.php:1412 mod/photos.php:1457
 #: mod/photos.php:1496 mod/photos.php:1556 mod/poke.php:188
-#: mod/profiles.php:562 view/theme/duepuntozero/config.php:72
-#: view/theme/frio/config.php:119 view/theme/quattro/config.php:74
-#: view/theme/vier/config.php:120 src/Module/Contact.php:594
-#: src/Module/Install.php:187 src/Module/Install.php:222
-#: src/Object/Post.php:873
+#: mod/profiles.php:562 src/Module/Contact.php:594 src/Module/Install.php:187
+#: src/Module/Install.php:222 src/Object/Post.php:874
+#: view/theme/duepuntozero/config.php:72 view/theme/frio/config.php:119
+#: view/theme/quattro/config.php:74 view/theme/vier/config.php:120
 msgid "Submit"
 msgstr "Senden"
 
@@ -3243,7 +3239,7 @@ msgstr "Spiegle Beiträge dieses Kontakts"
 msgid ""
 "Mark this contact as remote_self, this will cause friendica to repost new "
 "entries from this contact."
-msgstr "Markiere diesen Kontakt als remote_self (entferntes Konto), dies veranlasst Friendica alle Top-Level Beiträge dieses Kontakts an all Deine Kontakte zu senden."
+msgstr "Markiere diesen Kontakt als remote_self (entferntes Konto), dies veranlasst Friendica, alle Top-Level Beiträge dieses Kontakts an all Deine Kontakte zu senden (spiegeln)."
 
 #: mod/crepair.php:160
 msgid "Account Nickname"
@@ -3321,7 +3317,7 @@ msgid ""
 "Delegates are able to manage all aspects of this account/page except for "
 "basic account settings. Please do not delegate your personal account to "
 "anybody that you do not trust completely."
-msgstr "Bevollmächtigte sind in der Lage, alle Aspekte dieses Kontos/dieser Seite zu verwalten, abgesehen von den Grundeinstellungen des Kontos. Bitte gib niemandem eine Bevollmächtigung für Deinen privaten Account, dem Du nicht absolut vertraust!"
+msgstr "Bevollmächtigte sind in der Lage, alle Aspekte dieses Kontos/dieser Seite zu verwalten, abgesehen von den Grundeinstellungen des Kontos. Bitte gib niemandem eine Bevollmächtigung für Deinen privaten Account, dem du nicht absolut vertraust!"
 
 #: mod/delegate.php:180
 msgid "Existing Page Delegates"
@@ -3408,7 +3404,7 @@ msgstr "Die Kontaktdaten für URL %s enthalten keinen Public Key für den Server
 msgid ""
 "The ID provided by your system is a duplicate on our system. It should work "
 "if you try again."
-msgstr "Die ID, die uns Dein System angeboten hat, ist hier bereits vergeben. Bitte versuche es noch einmal."
+msgstr "Die ID, die uns dein System angeboten hat, ist hier bereits vergeben. Bitte versuche es noch einmal."
 
 #: mod/dfrn_confirm.php:526
 msgid "Unable to set your contact credentials on our system."
@@ -3416,10 +3412,10 @@ msgstr "Deine Kontaktreferenzen konnten nicht in unserem System gespeichert werd
 
 #: mod/dfrn_confirm.php:582
 msgid "Unable to update your contact profile details on our system"
-msgstr "Die Updates für Dein Profil konnten nicht gespeichert werden"
+msgstr "Die Updates für dein Profil konnten nicht gespeichert werden"
 
 #: mod/dfrn_confirm.php:612 mod/dfrn_request.php:560
-#: src/Model/Contact.php:2026
+#: src/Model/Contact.php:2043
 msgid "[Name Withheld]"
 msgstr "[Name unterdrückt]"
 
@@ -3438,7 +3434,7 @@ msgstr "Profiladresse ist ungültig oder stellt keine Profildaten zur Verfügung
 
 #: mod/dfrn_request.php:120 mod/dfrn_request.php:358
 msgid "Warning: profile location has no identifiable owner name."
-msgstr "Warnung: Es konnte kein Name des Besitzers von der angegebenen Profiladresse gefunden werden."
+msgstr "Warnung: Es konnte kein Name des Besitzers an der angegebenen Profiladresse gefunden werden."
 
 #: mod/dfrn_request.php:123 mod/dfrn_request.php:361
 msgid "Warning: profile location has no profile photo."
@@ -3482,18 +3478,18 @@ msgstr "Ungültiger Locator"
 
 #: mod/dfrn_request.php:311
 msgid "You have already introduced yourself here."
-msgstr "Du hast Dich hier bereits vorgestellt."
+msgstr "Du hast dich hier bereits vorgestellt."
 
 #: mod/dfrn_request.php:314
 #, php-format
 msgid "Apparently you are already friends with %s."
-msgstr "Es scheint so, als ob Du bereits mit %s in Kontakt stehst."
+msgstr "Es scheint so, als ob du bereits mit %s in Kontakt stehst."
 
 #: mod/dfrn_request.php:334
 msgid "Invalid profile URL."
 msgstr "Ungültige Profil-URL."
 
-#: mod/dfrn_request.php:340 src/Model/Contact.php:1697
+#: mod/dfrn_request.php:340 src/Model/Contact.php:1714
 msgid "Disallowed profile URL."
 msgstr "Nicht erlaubte Profil-URL."
 
@@ -3509,17 +3505,17 @@ msgstr "Deine Kontaktanfrage wurde gesendet."
 msgid ""
 "Remote subscription can't be done for your network. Please subscribe "
 "directly on your system."
-msgstr "Entferntes abon­nie­ren kann für dein Netzwerk nicht durchgeführt werden. Bitte nutze direkt die Abonnieren-Funktion deines Systems.   "
+msgstr "Entferntes Abon­nie­ren kann für dein Netzwerk nicht durchgeführt werden. Bitte nutze direkt die Abonnieren-Funktion deines Systems.   "
 
 #: mod/dfrn_request.php:487
 msgid "Please login to confirm introduction."
-msgstr "Bitte melde Dich an, um die Kontaktanfrage zu bestätigen."
+msgstr "Bitte melde dich an, um die Kontaktanfrage zu bestätigen."
 
 #: mod/dfrn_request.php:495
 msgid ""
 "Incorrect identity currently logged in. Please login to "
 "<strong>this</strong> profile."
-msgstr "Momentan bist Du mit einer anderen Identität angemeldet. Bitte melde Dich mit <strong>diesem</strong> Profil an."
+msgstr "Momentan bist du mit einer anderen Identität angemeldet. Bitte melde dich mit <strong>diesem</strong> Profil an."
 
 #: mod/dfrn_request.php:509 mod/dfrn_request.php:524
 msgid "Confirm"
@@ -3550,7 +3546,7 @@ msgstr "Bitte gib die Adresse Deines Profils in einem der unterstützten soziale
 msgid ""
 "If you are not yet a member of the free social web, <a href=\"%s\">follow "
 "this link to find a public Friendica site and join us today</a>."
-msgstr "Wenn du noch kein Mitglied dieses freien sozialen Netzwerks bist, <a href=\"%s\">folge diesem Link</a> um einen Ã¶ffentlichen Friendica Server zu finden und beizutreten."
+msgstr "Wenn du noch kein Mitglied dieses freien sozialen Netzwerks bist, <a href=\"%s\">folge diesem Link</a> um einen Ã¶ffentlichen Friendica-Server zu finden und beizutreten."
 
 #: mod/dfrn_request.php:637
 msgid "Friend/Connection Request"
@@ -3569,7 +3565,7 @@ msgstr "Bitte beantworte folgendes:"
 #: mod/dfrn_request.php:640 mod/follow.php:150
 #, php-format
 msgid "Does %s know you?"
-msgstr "Kennt %s Dich?"
+msgstr "Kennt %s dich?"
 
 #: mod/dfrn_request.php:641 mod/follow.php:151
 msgid "Add a personal note:"
@@ -3592,7 +3588,7 @@ msgstr "Diaspora (Socialhome, Hubzilla)"
 msgid ""
 " - please do not use this form.  Instead, enter %s into your Diaspora search"
 " bar."
-msgstr " - bitte verwende dieses Formular nicht. Stattdessen suche nach %s in Deiner Diaspora Suchleiste."
+msgstr " - bitte verwende dieses Formular nicht. Stattdessen suche nach %s in Deiner Diaspora-Suchleiste."
 
 #: mod/dfrn_request.php:647 mod/follow.php:157 mod/unfollow.php:128
 msgid "Your Identity Address:"
@@ -3603,8 +3599,8 @@ msgid "Submit Request"
 msgstr "Anfrage abschicken"
 
 #: mod/directory.php:154 mod/events.php:541 mod/notifications.php:253
-#: src/Model/Event.php:68 src/Model/Event.php:95 src/Model/Event.php:438
-#: src/Model/Event.php:934 src/Model/Profile.php:443
+#: src/Model/Event.php:68 src/Model/Event.php:95 src/Model/Event.php:437
+#: src/Model/Event.php:933 src/Model/Profile.php:443
 #: src/Module/Contact.php:643
 msgid "Location:"
 msgstr "Ort:"
@@ -3627,8 +3623,8 @@ msgstr "Homepage:"
 msgid "About:"
 msgstr "Ãœber:"
 
-#: mod/directory.php:210 view/theme/vier/theme.php:208
-#: src/Content/Widget.php:70
+#: mod/directory.php:210 src/Content/Widget.php:70
+#: view/theme/vier/theme.php:208
 msgid "Global Directory"
 msgstr "Weltweites Verzeichnis"
 
@@ -3644,8 +3640,8 @@ msgstr "Ergebnisse für:"
 msgid "Site Directory"
 msgstr "Verzeichnis"
 
-#: mod/directory.php:217 view/theme/vier/theme.php:203
-#: src/Content/Widget.php:65 src/Module/Contact.php:817
+#: mod/directory.php:217 src/Content/Widget.php:65 src/Module/Contact.php:817
+#: view/theme/vier/theme.php:203
 msgid "Find"
 msgstr "Finde"
 
@@ -3715,7 +3711,7 @@ msgstr "Z.B.: bob@example.com, mary@example.com"
 
 #: mod/events.php:117 mod/events.php:119
 msgid "Event can not end before it has started."
-msgstr "Die Veranstaltung kann nicht enden bevor sie beginnt."
+msgstr "Die Veranstaltung kann nicht enden, bevor sie beginnt."
 
 #: mod/events.php:126 mod/events.php:128
 msgid "Event title and start time are required."
@@ -3782,8 +3778,8 @@ msgstr "Entfernen der Veranstaltung fehlgeschlagen"
 msgid "Event removed"
 msgstr "Veranstaltung enfternt"
 
-#: mod/fbrowser.php:36 view/theme/frio/theme.php:264 src/Content/Nav.php:158
-#: src/Model/Profile.php:917
+#: mod/fbrowser.php:36 src/Content/Nav.php:158 src/Model/Profile.php:917
+#: view/theme/frio/theme.php:264
 msgid "Photos"
 msgstr "Bilder"
 
@@ -3804,7 +3800,7 @@ msgstr "Dateien"
 
 #: mod/feedtest.php:18
 msgid "You must be logged in to use this module"
-msgstr "Du musst eingeloggt sein um dieses Modul benutzen zu können."
+msgstr "Du musst eingeloggt sein, um dieses Modul benutzen zu können."
 
 #: mod/feedtest.php:45
 msgid "Source URL"
@@ -3824,15 +3820,15 @@ msgstr "Du hast den Kontakt bereits hinzugefügt."
 
 #: mod/follow.php:86
 msgid "Diaspora support isn't enabled. Contact can't be added."
-msgstr "Diaspora Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden."
+msgstr "Diaspora-Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden."
 
 #: mod/follow.php:93
 msgid "OStatus support is disabled. Contact can't be added."
-msgstr "OStatus Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden."
+msgstr "OStatus-Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden."
 
 #: mod/follow.php:100
 msgid "The network type couldn't be detected. Contact can't be added."
-msgstr "Der Netzwerktype wurde nicht erkannt. Der Kontakt kann nicht hinzugefügt werden."
+msgstr "Der Netzwerktyp wurde nicht erkannt. Der Kontakt kann nicht hinzugefügt werden."
 
 #: mod/follow.php:170 mod/notifications.php:257 src/Model/Profile.php:807
 #: src/Module/Contact.php:649
@@ -3849,13 +3845,13 @@ msgstr "Statusnachrichten und Beiträge"
 msgid ""
 "This is Friendica, version %s that is running at the web location %s. The "
 "database version is %s, the post update version is %s."
-msgstr "Diese Friendica Instanz verwendet die Version %s, sie ist unter der folgenden Adresse im Web zu finden %s. Die Datenbank Version ist %s und die Post-Update Version %s."
+msgstr "Diese Friendica-Instanz verwendet die Version %s, sie ist unter der folgenden Adresse im Web zu finden %s. Die Datenbankversion ist %s und die Post-Update-Version %s."
 
 #: mod/friendica.php:94
 msgid ""
 "Please visit <a href=\"https://friendi.ca\">Friendi.ca</a> to learn more "
 "about the Friendica project."
-msgstr "Bitte besuche <a href=\"https://friendi.ca\">Friendi.ca</a> um mehr Ã¼ber das Friendica Projekt zu erfahren."
+msgstr "Bitte besuche <a href=\"https://friendi.ca\">Friendi.ca</a>, um mehr Ã¼ber das Friendica-Projekt zu erfahren."
 
 #: mod/friendica.php:98
 msgid "Bug reports and issues: please visit"
@@ -3884,7 +3880,7 @@ msgstr "Erfahre mehr Ã¼ber die <a href=\"%1$s/tos\">Nutzungsbedingungen</a> dies
 
 #: mod/friendica.php:130
 msgid "On this server the following remote servers are blocked."
-msgstr "Auf diesem Server werden die folgenden entfernten Server blockiert."
+msgstr "Auf diesem Server werden die folgenden, entfernten Server blockiert."
 
 #: mod/fsuggest.php:69
 msgid "Friend suggestion sent."
@@ -3915,7 +3911,7 @@ msgstr "Gruppe nicht gefunden."
 msgid "Group name changed."
 msgstr "Gruppenname geändert."
 
-#: mod/group.php:85 mod/profperm.php:30 src/App.php:1481
+#: mod/group.php:85 mod/profperm.php:30 src/App.php:1479
 msgid "Permission denied"
 msgstr "Zugriff verweigert"
 
@@ -3988,11 +3984,11 @@ msgstr "Kein Profil"
 msgid "Help:"
 msgstr "Hilfe:"
 
-#: mod/help.php:59 view/theme/vier/theme.php:294 src/Content/Nav.php:190
+#: mod/help.php:59 src/Content/Nav.php:190 view/theme/vier/theme.php:294
 msgid "Help"
 msgstr "Hilfe"
 
-#: mod/help.php:65 src/App.php:1399
+#: mod/help.php:65 src/App.php:1397
 msgid "Not Found"
 msgstr "Nicht gefunden"
 
@@ -4012,7 +4008,7 @@ msgstr "%s: Keine gültige Email Adresse."
 
 #: mod/invite.php:87
 msgid "Please join us on Friendica"
-msgstr "Ich lade Dich zu unserem sozialen Netzwerk Friendica ein"
+msgstr "Ich lade dich zu unserem sozialen Netzwerk Friendica ein"
 
 #: mod/invite.php:96
 msgid "Invitation limit exceeded. Please contact your site administrator."
@@ -4040,14 +4036,14 @@ msgid ""
 "Visit %s for a list of public sites that you can join. Friendica members on "
 "other sites can all connect with each other, as well as with members of many"
 " other social networks."
-msgstr "Besuche %s für eine Liste der Ã¶ffentlichen Server, denen Du beitreten kannst. Friendica Mitglieder unterschiedlicher Server können sich sowohl alle miteinander verbinden, als auch mit Mitgliedern anderer Sozialer Netzwerke."
+msgstr "Besuche %s für eine Liste der Ã¶ffentlichen Server, denen du beitreten kannst. Friendica-Mitglieder unterschiedlicher Server können sich sowohl alle miteinander verbinden, als auch mit Mitgliedern anderer sozialer Netzwerke."
 
 #: mod/invite.php:132
 #, php-format
 msgid ""
 "To accept this invitation, please visit and register at %s or any other "
 "public Friendica website."
-msgstr "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere Dich bitte bei %s oder einer anderen Ã¶ffentlichen Friendica Website."
+msgstr "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere dich bitte bei %s oder einer anderen Ã¶ffentlichen Friendica-Website."
 
 #: mod/invite.php:133
 #, php-format
@@ -4056,7 +4052,7 @@ msgid ""
 "web that is owned and controlled by its members. They can also connect with "
 "many traditional social networks. See %s for a list of alternate Friendica "
 "sites you can join."
-msgstr "Friendica Server verbinden sich alle untereinander, um ein großes datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden. Besuche %s für eine Liste alternativer Friendica Server, denen Du beitreten kannst."
+msgstr "Friendica Server verbinden sich alle untereinander, um ein großes, datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden. Besuche %s für eine Liste alternativer Friendica-Server, denen du beitreten kannst."
 
 #: mod/invite.php:137
 msgid ""
@@ -4069,12 +4065,12 @@ msgid ""
 "Friendica sites all inter-connect to create a huge privacy-enhanced social "
 "web that is owned and controlled by its members. They can also connect with "
 "many traditional social networks."
-msgstr "Friendica Server verbinden sich alle untereinander, um ein großes datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden."
+msgstr "Friendica Server verbinden sich alle untereinander, um ein großes, datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden."
 
 #: mod/invite.php:140
 #, php-format
 msgid "To accept this invitation, please visit and register at %s."
-msgstr "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere Dich bitte bei %s."
+msgstr "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere dich bitte bei %s."
 
 #: mod/invite.php:147
 msgid "Send invitations"
@@ -4093,7 +4089,7 @@ msgstr "Deine Nachricht:"
 msgid ""
 "You are cordially invited to join me and other close friends on Friendica - "
 "and help us to create a better social web."
-msgstr "Du bist herzlich dazu eingeladen, Dich mir und anderen guten Freunden auf Friendica anzuschließen - und ein besseres Soziales Netz aufzubauen."
+msgstr "Du bist herzlich dazu eingeladen, dich mir und anderen guten Freunden auf Friendica anzuschließen - und ein besseres, soziales Netz aufzubauen."
 
 #: mod/invite.php:151
 msgid "You will need to supply this invitation code: $invite_code"
@@ -4102,13 +4098,13 @@ msgstr "Du benötigst den folgenden Einladungscode: $invite_code"
 #: mod/invite.php:151
 msgid ""
 "Once you have registered, please connect with me via my profile page at:"
-msgstr "Sobald Du registriert bist, kontaktiere mich bitte auf meiner Profilseite:"
+msgstr "Sobald du registriert bist, kontaktiere mich bitte auf meiner Profilseite:"
 
 #: mod/invite.php:153
 msgid ""
 "For more information about the Friendica project and why we feel it is "
 "important, please visit http://friendi.ca"
-msgstr "Für weitere Informationen Ã¼ber das Friendica Projekt und warum wir es für ein wichtiges Projekt halten, besuche bitte http://friendi.ca."
+msgstr "Für weitere Informationen Ã¼ber das Friendica-Projekt und warum wir es für ein wichtiges Projekt halten, besuche bitte http://friendi.ca."
 
 #: mod/item.php:120
 msgid "Unable to locate original post."
@@ -4134,14 +4130,14 @@ msgstr "Du kannst sie online unter %s besuchen"
 msgid ""
 "Please contact the sender by replying to this post if you do not wish to "
 "receive these messages."
-msgstr "Falls Du diese Beiträge nicht erhalten möchtest, kontaktiere bitte den Autor, indem Du auf diese Nachricht antwortest."
+msgstr "Falls du diese Beiträge nicht erhalten möchtest, kontaktiere bitte den Autor, indem du auf diese Nachricht antwortest."
 
 #: mod/item.php:848
 #, php-format
 msgid "%s posted an update."
 msgstr "%s hat ein Update veröffentlicht."
 
-#: mod/localtime.php:19 src/Model/Event.php:34 src/Model/Event.php:848
+#: mod/localtime.php:19 src/Model/Event.php:34 src/Model/Event.php:847
 msgid "l F d, Y \\@ g:i A"
 msgstr "l, d. F Y\\, H:i"
 
@@ -4204,7 +4200,7 @@ msgid ""
 "\n"
 "\t\tYour password will not be changed unless we can verify that you\n"
 "\t\tissued this request."
-msgstr "\nHallo %1$s,\n\nAuf \"%2$s\" ist eine Anfrage auf das Zurücksetzen Deines Passworts gestellt\nworden. Um diese Anfrage zu verifizieren, folge bitte dem unten stehenden\nLink oder kopiere und füge ihn in die Adressleiste Deines Browsers ein.\n\nSolltest Du die Anfrage NICHT gemacht haben, ignoriere und/oder lösche diese\nE-Mail bitte.\n\nDein Passwort wird nicht geändert, solange wir nicht verifiziert haben, dass\nDu diese Ã„nderung angefragt hast."
+msgstr "\nHallo %1$s,\n\nAuf \"%2$s\" ist eine Anfrage auf das Zurücksetzen deines Passworts gestellt\nworden. Um diese Anfrage zu verifizieren, folge bitte dem unten stehenden\nLink oder kopiere und füge ihn in die Adressleiste deines Browsers ein.\n\nSolltest du die Anfrage NICHT gestellt haben, ignoriere und/oder lösche diese\nE-Mail bitte.\n\nDein Passwort wird nicht geändert, solange wir nicht verifiziert haben, dass\ndu diese Ã„nderung angefragt hast."
 
 #: mod/lostpass.php:55
 #, php-format
@@ -4221,7 +4217,7 @@ msgid ""
 "\n"
 "\t\tSite Location:\t%2$s\n"
 "\t\tLogin Name:\t%3$s"
-msgstr "\nUm Deine Identität zu verifizieren, folge bitte dem folgenden Link:\n\n%1$s\n\nDu wirst eine weitere E-Mail mit Deinem neuen Passwort erhalten. Sobald Du Dich\nangemeldet hast, kannst Du Dein Passwort in den Einstellungen Ã¤ndern.\n\nDie Anmeldedetails sind die folgenden:\n\nAdresse der Seite:\t%2$s\nBenutzername:\t%3$s"
+msgstr "\nUm deine Identität zu verifizieren, folge bitte diesem Link:\n\n%1$s\n\nDu wirst eine weitere E-Mail mit deinem neuen Passwort erhalten. Sobald du dich\nangemeldet hast, kannst du dein Passwort in den Einstellungen Ã¤ndern.\n\nDie Anmeldedetails sind die folgenden:\n\nAdresse der Seite:\t%2$s\nBenutzername:\t%3$s"
 
 #: mod/lostpass.php:74
 #, php-format
@@ -4232,7 +4228,7 @@ msgstr "Anfrage zum Zurücksetzen des Passworts auf %s erhalten"
 msgid ""
 "Request could not be verified. (You may have previously submitted it.) "
 "Password reset failed."
-msgstr "Anfrage konnte nicht verifiziert werden. (Eventuell hast Du bereits eine Ã¤hnliche Anfrage gestellt.) Zurücksetzen des Passworts gescheitert."
+msgstr "Anfrage konnte nicht verifiziert werden. (Eventuell hast du bereits eine Ã¤hnliche Anfrage gestellt.) Zurücksetzen des Passworts gescheitert."
 
 #: mod/lostpass.php:102
 msgid "Request has expired, please make a new one."
@@ -4240,13 +4236,13 @@ msgstr "Die Anfrage ist abgelaufen. Bitte stelle eine erneute."
 
 #: mod/lostpass.php:117
 msgid "Forgot your Password?"
-msgstr "Hast Du Dein Passwort vergessen?"
+msgstr "Hast du dein Passwort vergessen?"
 
 #: mod/lostpass.php:118
 msgid ""
 "Enter your email address and submit to have your password reset. Then check "
 "your email for further instructions."
-msgstr "Gib Deine E-Mail-Adresse an und fordere ein neues Passwort an. Es werden Dir dann weitere Informationen per Mail zugesendet."
+msgstr "Gib Deine E-Mail-Adresse an und fordere ein neues Passwort an. Es werden dir dann weitere Informationen per Mail zugesendet."
 
 #: mod/lostpass.php:119 src/Module/Login.php:324
 msgid "Nickname or Email: "
@@ -4270,17 +4266,17 @@ msgstr "Dein neues Passwort lautet"
 
 #: mod/lostpass.php:138
 msgid "Save or copy your new password - and then"
-msgstr "Speichere oder kopiere Dein neues Passwort - und dann"
+msgstr "Speichere oder kopiere dein neues Passwort - und dann"
 
 #: mod/lostpass.php:139
 msgid "click here to login"
-msgstr "hier klicken, um Dich anzumelden"
+msgstr "hier klicken, um dich anzumelden"
 
 #: mod/lostpass.php:140
 msgid ""
 "Your password may be changed from the <em>Settings</em> page after "
 "successful login."
-msgstr "Du kannst das Passwort in den <em>Einstellungen</em> Ã¤ndern, sobald Du Dich erfolgreich angemeldet hast."
+msgstr "Du kannst das Passwort in den <em>Einstellungen</em> Ã¤ndern, sobald du dich erfolgreich angemeldet hast."
 
 #: mod/lostpass.php:148
 #, php-format
@@ -4291,7 +4287,7 @@ msgid ""
 "\t\t\tinformation for your records (or change your password immediately to\n"
 "\t\t\tsomething that you will remember).\n"
 "\t\t"
-msgstr "\nHallo %1$s,\n\nDein Passwort wurde wie gewünscht geändert. Bitte bewahre diese Informationen gut auf (oder Ã¤ndere Dein Passwort in eines, das Du Dir leicht merken kannst)."
+msgstr "\nHallo %1$s,\n\nDein Passwort wurde wie gewünscht geändert. Bitte bewahre diese Informationen gut auf (oder Ã¤ndere dein Passwort in eines, das du dir leicht merken kannst)."
 
 #: mod/lostpass.php:154
 #, php-format
@@ -4310,7 +4306,11 @@ msgstr "\nDie Anmeldedaten sind die folgenden:\n\nAdresse der Seite: %1$s\nLogin
 #: mod/lostpass.php:170
 #, php-format
 msgid "Your password has been changed at %s"
-msgstr "Auf %s wurde Dein Passwort geändert"
+msgstr "Auf %s wurde dein Passwort geändert"
+
+#: mod/maintenance.php:26
+msgid "System down for maintenance"
+msgstr "System zur Wartung abgeschaltet"
 
 #: mod/manage.php:178
 msgid "Manage Identities and/or Pages"
@@ -4320,7 +4320,7 @@ msgstr "Verwalte Identitäten und/oder Seiten"
 msgid ""
 "Toggle between different identities or community/group pages which share "
 "your account details or which you have been granted \"manage\" permissions"
-msgstr "Zwischen verschiedenen Identitäten oder Gemeinschafts-/Gruppenseiten wechseln, die Deine Kontoinformationen teilen oder zu denen Du â€žVerwalten“-Befugnisse bekommen hast."
+msgstr "Zwischen verschiedenen Identitäten oder Gemeinschafts-/Gruppenseiten wechseln, die deine Kontoinformationen teilen oder zu denen du â€žVerwalten“-Befugnisse bekommen hast."
 
 #: mod/manage.php:180
 msgid "Select an identity to manage: "
@@ -4371,13 +4371,13 @@ msgstr "Nachricht gesendet."
 msgid "Discard"
 msgstr "Verwerfen"
 
-#: mod/message.php:123 view/theme/frio/theme.php:271 src/Content/Nav.php:252
+#: mod/message.php:123 src/Content/Nav.php:252 view/theme/frio/theme.php:271
 msgid "Messages"
 msgstr "Nachrichten"
 
 #: mod/message.php:148
 msgid "Do you really want to delete this message?"
-msgstr "Möchtest Du wirklich diese Nachricht löschen?"
+msgstr "Möchtest du diese Nachricht wirklich löschen?"
 
 #: mod/message.php:166
 msgid "Conversation not found."
@@ -4431,7 +4431,7 @@ msgstr "Unterhaltung löschen"
 msgid ""
 "No secure communications available. You <strong>may</strong> be able to "
 "respond from the sender's profile page."
-msgstr "Sichere Kommunikation ist nicht verfügbar. <strong>Eventuell</strong> kannst Du auf der Profilseite des Absenders antworten."
+msgstr "Sichere Kommunikation ist nicht verfügbar. <strong>Eventuell</strong> kannst du auf der Profilseite des Absenders antworten."
 
 #: mod/message.php:429
 msgid "Send Reply"
@@ -4440,7 +4440,7 @@ msgstr "Antwort senden"
 #: mod/message.php:512
 #, php-format
 msgid "Unknown sender - %s"
-msgstr "'Unbekannter Absender - %s"
+msgstr "Unbekannter Absender - %s"
 
 #: mod/message.php:514
 #, php-format
@@ -4450,7 +4450,7 @@ msgstr "Du und %s"
 #: mod/message.php:516
 #, php-format
 msgid "%s and You"
-msgstr "%s und Du"
+msgstr "%s und du"
 
 #: mod/message.php:543
 #, php-format
@@ -4480,7 +4480,7 @@ msgid_plural ""
 "Warning: This group contains %s members from a network that doesn't allow "
 "non public messages."
 msgstr[0] "Warnung: Diese Gruppe beinhaltet %s Person aus einem Netzwerk das keine nicht Ã¶ffentlichen Beiträge empfangen kann."
-msgstr[1] "Warnung: Diese Gruppe beinhaltet %s Personen aus Netzwerken die keine nicht-öffentlichen Beiträge empfangen können."
+msgstr[1] "Warnung: Diese Gruppe beinhaltet %s Personen aus Netzwerken, die keine nicht-öffentlichen Beiträge empfangen können."
 
 #: mod/network.php:566
 msgid "Messages in this group won't be send to these receivers."
@@ -4526,7 +4526,7 @@ msgstr "Persönlich"
 
 #: mod/network.php:987
 msgid "Posts that mention or involve you"
-msgstr "Beiträge, in denen es um Dich geht"
+msgstr "Beiträge, in denen es um dich geht"
 
 #: mod/network.php:994
 msgid "New"
@@ -4566,7 +4566,7 @@ msgid ""
 "enjoyable. Click any item to visit the relevant page. A link to this page "
 "will be visible from your home page for two weeks after your initial "
 "registration and then will quietly disappear."
-msgstr "Wir möchten Dir einige Tipps und Links anbieten, die Dir helfen könnten, den Einstieg angenehmer zu machen. Klicke auf ein Element, um die entsprechende Seite zu besuchen. Ein Link zu dieser Seite hier bleibt für Dich an Deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden."
+msgstr "Wir möchten dir einige Tipps und Links anbieten, die dir helfen könnten, den Einstieg angenehmer zu machen. Klicke auf ein Element, um die entsprechende Seite zu besuchen. Ein Link zu dieser Seite hier bleibt für dich an deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden."
 
 #: mod/newmember.php:16
 msgid "Getting Started"
@@ -4581,7 +4581,7 @@ msgid ""
 "On your <em>Quick Start</em> page - find a brief introduction to your "
 "profile and network tabs, make some new connections, and find some groups to"
 " join."
-msgstr "Auf der <em>Quick Start</em> Seite findest Du eine kurze Einleitung in die einzelnen Funktionen Deines Profils und die Netzwerk-Reiter, wo Du interessante Foren findest und neue Kontakte knüpfst."
+msgstr "Auf der <em>Quick Start</em>-Seite findest du eine kurze Einleitung in die einzelnen Funktionen deines Profils und die Netzwerk-Reiter, wo du interessante Foren findest und neue Kontakte knüpfst."
 
 #: mod/newmember.php:22
 msgid "Go to Your Settings"
@@ -4600,15 +4600,16 @@ msgid ""
 " directory listing is like having an unlisted phone number. In general, you "
 "should probably publish your listing - unless all of your friends and "
 "potential friends know exactly how to find you."
-msgstr "Ãœberprüfe die restlichen Einstellungen, insbesondere die Einstellungen zur Privatsphäre. Wenn Du Dein Profil nicht veröffentlichst, ist das als wenn Du Deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest Du es veröffentlichen - außer all Deine Kontakte und potentiellen Kontakte wissen genau, wie sie Dich finden können."
+msgstr "Ãœberprüfe die restlichen Einstellungen, insbesondere die Einstellungen zur Privatsphäre. Wenn du dein Profil nicht veröffentlichst, ist das, als wenn du deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest du es veröffentlichen - außer all deine Kontakte und potentiellen Kontakte wissen genau, wie sie dich finden können."
 
-#: mod/newmember.php:25 mod/profperm.php:117 view/theme/frio/theme.php:263
-#: src/Content/Nav.php:157 src/Model/Profile.php:876 src/Model/Profile.php:909
+#: mod/newmember.php:25 mod/profperm.php:117 src/Content/Nav.php:157
+#: src/Model/Profile.php:876 src/Model/Profile.php:909
 #: src/Module/Contact.php:654 src/Module/Contact.php:869
+#: view/theme/frio/theme.php:263
 msgid "Profile"
 msgstr "Profil"
 
-#: mod/newmember.php:27 mod/profile_photo.php:253 mod/profiles.php:583
+#: mod/newmember.php:27 mod/profiles.php:583 mod/profile_photo.php:253
 msgid "Upload Profile Photo"
 msgstr "Profilbild hochladen"
 
@@ -4617,7 +4618,7 @@ msgid ""
 "Upload a profile photo if you have not done so already. Studies have shown "
 "that people with real photos of themselves are ten times more likely to make"
 " friends than people who do not."
-msgstr "Lade ein Profilbild hoch, falls Du es noch nicht getan hast. Studien haben gezeigt, dass es zehnmal wahrscheinlicher ist neue Kontakte zu finden, wenn Du ein Bild von Dir selbst verwendest, als wenn Du dies nicht tust."
+msgstr "Lade ein Profilbild hoch, falls du es noch nicht getan hast. Studien haben gezeigt, dass es zehnmal wahrscheinlicher ist, neue Kontakte zu finden, wenn du ein Bild von dir selbst verwendest, als wenn du dies nicht tust."
 
 #: mod/newmember.php:28
 msgid "Edit Your Profile"
@@ -4628,18 +4629,18 @@ msgid ""
 "Edit your <strong>default</strong> profile to your liking. Review the "
 "settings for hiding your list of friends and hiding the profile from unknown"
 " visitors."
-msgstr "Editiere Dein <strong>Standard</strong> Profil nach Deinen Vorlieben. Ãœberprüfe die Einstellungen zum Verbergen Deiner Kontaktliste vor unbekannten Betrachtern des Profils."
+msgstr "Editiere dein <strong>Standard</strong>-Profil nach deinen Vorlieben. Ãœberprüfe die Einstellungen zum Verbergen deiner Kontaktliste vor unbekannten Betrachtern des Profils."
 
 #: mod/newmember.php:29
 msgid "Profile Keywords"
-msgstr "Profil Schlüsselbegriffe"
+msgstr "Profil-Schlüsselbegriffe"
 
 #: mod/newmember.php:29
 msgid ""
 "Set some public keywords for your default profile which describe your "
 "interests. We may be able to find other people with similar interests and "
 "suggest friendships."
-msgstr "Trage ein paar Ã¶ffentliche Stichwörter in Dein Standardprofil ein, die Deine Interessen beschreiben. Eventuell sind wir in der Lage Leute zu finden, die Deine Interessen teilen und können Dir dann Kontakte vorschlagen."
+msgstr "Trage ein paar Ã¶ffentliche Stichwörter in dein Standardprofil ein, die deine Interessen beschreiben. Eventuell sind wir in der Lage, Leute zu finden, die deine Interessen teilen, und können dir dann Kontakte vorschlagen."
 
 #: mod/newmember.php:31
 msgid "Connecting"
@@ -4654,7 +4655,7 @@ msgid ""
 "Enter your email access information on your Connector Settings page if you "
 "wish to import and interact with friends or mailing lists from your email "
 "INBOX"
-msgstr "Gib Deine E-Mail-Zugangsinformationen auf der Connector-Einstellungsseite ein, falls Du E-Mails aus Deinem Posteingang importieren und mit Kontakten und Mailinglisten interagieren willst."
+msgstr "Gib deine E-Mail-Zugangsinformationen auf der Connector-Einstellungsseite ein, falls du E-Mails aus Deinem Posteingang importieren und mit Kontakten und Mailinglisten interagieren willst."
 
 #: mod/newmember.php:40
 msgid "Go to Your Contacts Page"
@@ -4665,18 +4666,18 @@ msgid ""
 "Your Contacts page is your gateway to managing friendships and connecting "
 "with friends on other networks. Typically you enter their address or site "
 "URL in the <em>Add New Contact</em> dialog."
-msgstr "Die Kontakte-Seite ist die Einstiegsseite, von der aus Du Kontakte verwalten und Dich mit Personen in anderen Netzwerken verbinden kannst. Normalerweise gibst Du dazu einfach ihre Adresse oder die URL der Seite im Kasten <em>Neuen Kontakt hinzufügen</em> ein."
+msgstr "Die Kontakte-Seite ist die Einstiegsseite, von der aus du Kontakte verwalten und dich mit Personen in anderen Netzwerken verbinden kannst. Normalerweise gibst du dazu einfach ihre Adresse oder die URL der Seite im Kasten <em>Neuen Kontakt hinzufügen</em> ein."
 
 #: mod/newmember.php:41
 msgid "Go to Your Site's Directory"
-msgstr "Gehe zum Verzeichnis Deiner Friendica Instanz"
+msgstr "Gehe zum Verzeichnis Deiner Friendica-Instanz"
 
 #: mod/newmember.php:41
 msgid ""
 "The Directory page lets you find other people in this network or other "
 "federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on "
 "their profile page. Provide your own Identity Address if requested."
-msgstr "Ãœber die Verzeichnisseite kannst Du andere Personen auf diesem Server oder anderen verknüpften Seiten finden. Halte nach einem <em>Verbinden</em> oder <em>Folgen</em> Link auf deren Profilseiten Ausschau und gib Deine eigene Profiladresse an, falls Du danach gefragt wirst."
+msgstr "Ãœber die Verzeichnisseite kannst du andere Personen auf diesem Server oder anderen, verknüpften Seiten finden. Halte nach einem <em>Verbinden</em>- oder <em>Folgen</em>-Link auf deren Profilseiten Ausschau und gib deine eigene Profiladresse an, falls du danach gefragt wirst."
 
 #: mod/newmember.php:42
 msgid "Finding New People"
@@ -4704,7 +4705,7 @@ msgid ""
 "Once you have made some friends, organize them into private conversation "
 "groups from the sidebar of your Contacts page and then you can interact with"
 " each group privately on your Network page."
-msgstr "Sobald Du einige Kontakte gefunden hast, organisiere sie in Gruppen zur privaten Kommunikation im Seitenmenü der Kontakte-Seite. Du kannst dann mit jeder dieser Gruppen von der Netzwerkseite aus privat interagieren."
+msgstr "Sobald du einige Kontakte gefunden hast, organisiere sie in Gruppen zur privaten Kommunikation im Seitenmenü der Kontakte-Seite. Du kannst dann mit jeder dieser Gruppen von der Netzwerkseite aus privat interagieren."
 
 #: mod/newmember.php:49
 msgid "Why Aren't My Posts Public?"
@@ -4715,7 +4716,7 @@ msgid ""
 "Friendica respects your privacy. By default, your posts will only show up to"
 " people you've added as friends. For more information, see the help section "
 "from the link above."
-msgstr "Friendica respektiert Deine Privatsphäre. Mit der Grundeinstellung werden Deine Beiträge ausschließlich Deinen Kontakten angezeigt. Für weitere Informationen diesbezüglich lies Dir bitte den entsprechenden Abschnitt in der Hilfe unter dem obigen Link durch."
+msgstr "Friendica respektiert Deine Privatsphäre. Mit der Grundeinstellung werden Deine Beiträge ausschließlich Deinen Kontakten angezeigt. Für weitere Informationen diesbezüglich lies dir bitte den entsprechenden Abschnitt in der Hilfe unter dem obigen Link durch."
 
 #: mod/newmember.php:53
 msgid "Getting Help"
@@ -4729,7 +4730,7 @@ msgstr "Zum Hilfe Abschnitt gehen"
 msgid ""
 "Our <strong>help</strong> pages may be consulted for detail on other program"
 " features and resources."
-msgstr "Unsere <strong>Hilfe</strong> Seiten können herangezogen werden, um weitere Einzelheiten zu andern Programm Features zu erhalten."
+msgstr "Unsere <strong>Hilfe</strong>-Seiten können herangezogen werden, um weitere Einzelheiten zu anderen Programm-Features zu erhalten."
 
 #: mod/notes.php:34 src/Model/Profile.php:959
 msgid "Personal Notes"
@@ -4751,7 +4752,7 @@ msgstr "Benachrichtigungen"
 
 #: mod/notifications.php:107
 msgid "Network Notifications"
-msgstr "Netzwerk Benachrichtigungen"
+msgstr "Netzwerkbenachrichtigungen"
 
 #: mod/notifications.php:112 mod/notify.php:84
 msgid "System Notifications"
@@ -4763,7 +4764,7 @@ msgstr "Persönliche Benachrichtigungen"
 
 #: mod/notifications.php:122
 msgid "Home Notifications"
-msgstr "Pinnwand Benachrichtigungen"
+msgstr "Pinnwandbenachrichtigungen"
 
 #: mod/notifications.php:142
 msgid "Show unread"
@@ -4796,7 +4797,7 @@ msgstr "Verbirg diesen Kontakt vor Anderen"
 
 #: mod/notifications.php:203
 msgid "Claims to be known to you: "
-msgstr "Behauptet Dich zu kennen: "
+msgstr "Behauptet, dich zu kennen: "
 
 #: mod/notifications.php:204
 msgid "yes"
@@ -4829,7 +4830,7 @@ msgstr "Wenn du %s als Abonnent akzeptierst, erlaubst du damit das Lesen deiner
 msgid ""
 "Accepting %s as a sharer allows them to subscribe to your posts, but you "
 "will not receive updates from them in your news feed."
-msgstr "Wenn du %s als Teilenden akzeptierst, erlaubst du damit das Lesen deiner Beiträge, wirst aber selbst die Beiträge der anderen Seite nicht erhalten."
+msgstr "Wenn du %s als Teilender akzeptierst, erlaubst du damit das Lesen deiner Beiträge, wirst aber selbst die Beiträge der anderen Seite nicht erhalten."
 
 #: mod/notifications.php:222
 msgid "Friend"
@@ -4837,7 +4838,7 @@ msgstr "Kontakt"
 
 #: mod/notifications.php:223
 msgid "Sharer"
-msgstr "Teilenden"
+msgstr "Teilender"
 
 #: mod/notifications.php:223
 msgid "Subscriber"
@@ -4855,7 +4856,7 @@ msgstr "Keine Kontaktanfragen."
 #: mod/notifications.php:313
 #, php-format
 msgid "No more %s notifications."
-msgstr "Keine weiteren %s Benachrichtigungen"
+msgstr "Keine weiteren %s-Benachrichtigungen"
 
 #: mod/notify.php:80
 msgid "No more system notifications."
@@ -4880,7 +4881,7 @@ msgstr "Anmeldung fehlgeschlagen."
 
 #: mod/ostatus_subscribe.php:23
 msgid "Subscribing to OStatus contacts"
-msgstr "OStatus Kontakten folgen"
+msgstr "OStatus-Kontakten folgen"
 
 #: mod/ostatus_subscribe.php:35
 msgid "No contact provided."
@@ -4944,7 +4945,7 @@ msgstr "Album löschen"
 
 #: mod/photos.php:252
 msgid "Do you really want to delete this photo album and all its photos?"
-msgstr "Möchtest Du wirklich dieses Foto-Album und all seine Foto löschen?"
+msgstr "Möchtest du wirklich dieses Foto-Album und all seine Foto löschen?"
 
 #: mod/photos.php:310 mod/photos.php:322 mod/photos.php:1413
 msgid "Delete Photo"
@@ -4952,7 +4953,7 @@ msgstr "Foto löschen"
 
 #: mod/photos.php:320
 msgid "Do you really want to delete this photo?"
-msgstr "Möchtest Du wirklich dieses Foto löschen?"
+msgstr "Möchtest du wirklich dieses Foto löschen?"
 
 #: mod/photos.php:645
 msgid "a photo"
@@ -4981,7 +4982,7 @@ msgstr "Bilddatei konnte nicht gefunden werden."
 msgid ""
 "Server can't accept new file upload at this time, please contact your "
 "administrator"
-msgstr "Der Server kann derzeit keine neuen Datei Uploads akzeptieren. Bitte kontaktiere deinen Administrator."
+msgstr "Der Server kann derzeit keine neuen Datei-Uploads akzeptieren. Bitte kontaktiere deinen Administrator."
 
 #: mod/photos.php:778
 msgid "Image file is empty."
@@ -5117,12 +5118,12 @@ msgid "I don't like this (toggle)"
 msgstr "Ich mag das nicht (toggle)"
 
 #: mod/photos.php:1454 mod/photos.php:1493 mod/photos.php:1553
-#: src/Module/Contact.php:1018 src/Object/Post.php:870
+#: src/Module/Contact.php:1018 src/Object/Post.php:871
 msgid "This is you"
-msgstr "Das bist Du"
+msgstr "Das bist du"
 
 #: mod/photos.php:1456 mod/photos.php:1495 mod/photos.php:1555
-#: src/Object/Post.php:417 src/Object/Post.php:872
+#: src/Object/Post.php:417 src/Object/Post.php:873
 msgid "Comment"
 msgstr "Kommentar"
 
@@ -5136,7 +5137,7 @@ msgstr "Album betrachten"
 
 #: mod/ping.php:272
 msgid "{0} wants to be your friend"
-msgstr "{0} möchte mit Dir in Kontakt treten"
+msgstr "{0} möchte mit dir in Kontakt treten"
 
 #: mod/ping.php:288
 msgid "{0} requested registration"
@@ -5156,7 +5157,7 @@ msgstr "Empfänger"
 
 #: mod/poke.php:184
 msgid "Choose what you wish to do to recipient"
-msgstr "Was willst Du mit dem Empfänger machen:"
+msgstr "Was willst du mit dem Empfänger machen:"
 
 #: mod/poke.php:187
 msgid "Make this post private"
@@ -5166,62 +5167,6 @@ msgstr "Diesen Beitrag privat machen"
 msgid "Only logged in users are permitted to perform a probing."
 msgstr "Nur eingeloggten Benutzern ist das Untersuchen von Adressen gestattet."
 
-#: mod/profile_photo.php:58
-msgid "Image uploaded but image cropping failed."
-msgstr "Bild hochgeladen, aber das Zuschneiden schlug fehl."
-
-#: mod/profile_photo.php:88 mod/profile_photo.php:97 mod/profile_photo.php:106
-#: mod/profile_photo.php:318
-#, php-format
-msgid "Image size reduction [%s] failed."
-msgstr "Verkleinern der Bildgröße von [%s] scheiterte."
-
-#: mod/profile_photo.php:125
-msgid ""
-"Shift-reload the page or clear browser cache if the new photo does not "
-"display immediately."
-msgstr "Drücke Umschalt+Neu Laden oder leere den Browser-Cache, falls das neue Foto nicht gleich angezeigt wird."
-
-#: mod/profile_photo.php:133
-msgid "Unable to process image"
-msgstr "Bild konnte nicht verarbeitet werden"
-
-#: mod/profile_photo.php:251
-msgid "Upload File:"
-msgstr "Datei hochladen:"
-
-#: mod/profile_photo.php:252
-msgid "Select a profile:"
-msgstr "Profil auswählen:"
-
-#: mod/profile_photo.php:257
-msgid "or"
-msgstr "oder"
-
-#: mod/profile_photo.php:258
-msgid "skip this step"
-msgstr "diesen Schritt Ã¼berspringen"
-
-#: mod/profile_photo.php:258
-msgid "select a photo from your photo albums"
-msgstr "wähle ein Foto aus deinen Fotoalben"
-
-#: mod/profile_photo.php:271
-msgid "Crop Image"
-msgstr "Bild zurechtschneiden"
-
-#: mod/profile_photo.php:272
-msgid "Please adjust the image cropping for optimum viewing."
-msgstr "Passe bitte den Bildausschnitt an, damit das Bild optimal dargestellt werden kann."
-
-#: mod/profile_photo.php:274
-msgid "Done Editing"
-msgstr "Bearbeitung abgeschlossen"
-
-#: mod/profile_photo.php:308
-msgid "Image uploaded successfully."
-msgstr "Bild erfolgreich hochgeladen."
-
 #: mod/profiles.php:62
 msgid "Profile deleted."
 msgstr "Profil gelöscht."
@@ -5352,7 +5297,7 @@ msgstr "Vorlieben"
 
 #: mod/profiles.php:576
 msgid "Status information"
-msgstr "Status Informationen"
+msgstr "Status-Informationen"
 
 #: mod/profiles.php:577
 msgid "Additional information"
@@ -5390,7 +5335,7 @@ msgstr "Profilname:"
 msgid ""
 "This is your <strong>public</strong> profile.<br />It <strong>may</strong> "
 "be visible to anybody using the internet."
-msgstr "Dies ist Dein <strong>öffentliches</strong> Profil.<br />Es <strong>könnte</strong> für jeden Nutzer des Internets sichtbar sein."
+msgstr "Dies ist dein <strong>öffentliches</strong> Profil.<br />Es <strong>könnte</strong> für jeden Nutzer des Internets sichtbar sein."
 
 #: mod/profiles.php:595
 msgid "Your Full Name:"
@@ -5438,7 +5383,7 @@ msgstr "Seit [Datum]:"
 
 #: mod/profiles.php:610
 msgid "Tell us about yourself..."
-msgstr "Erzähle uns ein bisschen von Dir â€¦"
+msgstr "Erzähle uns ein bisschen von dir â€¦"
 
 #: mod/profiles.php:611
 msgid "XMPP (Jabber) address:"
@@ -5546,6 +5491,62 @@ msgstr "Profilbild Ã¤ndern"
 msgid "Create New Profile"
 msgstr "Neues Profil anlegen"
 
+#: mod/profile_photo.php:58
+msgid "Image uploaded but image cropping failed."
+msgstr "Bild hochgeladen, aber das Zuschneiden schlug fehl."
+
+#: mod/profile_photo.php:88 mod/profile_photo.php:97 mod/profile_photo.php:106
+#: mod/profile_photo.php:318
+#, php-format
+msgid "Image size reduction [%s] failed."
+msgstr "Verkleinern der Bildgröße von [%s] scheiterte."
+
+#: mod/profile_photo.php:125
+msgid ""
+"Shift-reload the page or clear browser cache if the new photo does not "
+"display immediately."
+msgstr "Drücke Umschalt+Neu Laden oder leere den Browser-Cache, falls das neue Foto nicht gleich angezeigt wird."
+
+#: mod/profile_photo.php:133
+msgid "Unable to process image"
+msgstr "Bild konnte nicht verarbeitet werden"
+
+#: mod/profile_photo.php:251
+msgid "Upload File:"
+msgstr "Datei hochladen:"
+
+#: mod/profile_photo.php:252
+msgid "Select a profile:"
+msgstr "Profil auswählen:"
+
+#: mod/profile_photo.php:257
+msgid "or"
+msgstr "oder"
+
+#: mod/profile_photo.php:258
+msgid "skip this step"
+msgstr "diesen Schritt Ã¼berspringen"
+
+#: mod/profile_photo.php:258
+msgid "select a photo from your photo albums"
+msgstr "wähle ein Foto aus deinen Fotoalben"
+
+#: mod/profile_photo.php:271
+msgid "Crop Image"
+msgstr "Bild zurechtschneiden"
+
+#: mod/profile_photo.php:272
+msgid "Please adjust the image cropping for optimum viewing."
+msgstr "Passe bitte den Bildausschnitt an, damit das Bild optimal dargestellt werden kann."
+
+#: mod/profile_photo.php:274
+msgid "Done Editing"
+msgstr "Bearbeitung abgeschlossen"
+
+#: mod/profile_photo.php:308
+msgid "Image uploaded successfully."
+msgstr "Bild erfolgreich hochgeladen."
+
 #: mod/profperm.php:36 mod/profperm.php:69
 msgid "Invalid profile identifier."
 msgstr "Ungültiger Profil-Bezeichner."
@@ -5573,7 +5574,7 @@ msgstr "Registrierung für %s wurde zurückgezogen"
 
 #: mod/regmod.php:84
 msgid "Please login."
-msgstr "Bitte melde Dich an."
+msgstr "Bitte melde dich an."
 
 #: mod/removeme.php:46
 msgid "User deleted their account"
@@ -5583,7 +5584,7 @@ msgstr "Gelöschter Nutzeraccount"
 msgid ""
 "On your Friendica node an user deleted their account. Please ensure that "
 "their data is removed from the backups."
-msgstr "Ein Nutzer deiner Friendica Instanz hat seinen Account gelöscht. Bitte stelle sicher, dass deren Daten aus deinen Backups entfernt werden."
+msgstr "Ein Nutzer deiner Friendica-Instanz hat seinen Account gelöscht. Bitte stelle sicher, dass dessen Daten aus deinen Backups entfernt werden."
 
 #: mod/removeme.php:48
 #, php-format
@@ -5602,11 +5603,11 @@ msgstr "Dein Konto wird endgültig gelöscht. Es gibt keine Möglichkeit, es wie
 
 #: mod/removeme.php:86
 msgid "Please enter your password for verification:"
-msgstr "Bitte gib Dein Passwort zur Verifikation ein:"
+msgstr "Bitte gib dein Passwort zur Verifikation ein:"
 
 #: mod/repair_ostatus.php:21
 msgid "Resubscribing to OStatus contacts"
-msgstr "Erneuern der OStatus Abonements"
+msgstr "Erneuern der OStatus-Abonements"
 
 #: mod/repair_ostatus.php:37
 msgid "Error"
@@ -5624,14 +5625,14 @@ msgstr "Zu viele Abfragen"
 msgid "Only one search per minute is permitted for not logged in users."
 msgstr "Es ist nur eine Suchanfrage pro Minute für nicht eingeloggte Benutzer gestattet."
 
-#: mod/search.php:149 src/Content/Text/HTML.php:900 src/Content/Nav.php:198
+#: mod/search.php:149 src/Content/Nav.php:198 src/Content/Text/HTML.php:900
 msgid "Search"
 msgstr "Suche"
 
 #: mod/search.php:235
 #, php-format
 msgid "Items tagged with: %s"
-msgstr "Beiträge die mit %s getaggt sind"
+msgstr "Beiträge, die mit %s getaggt sind"
 
 #: mod/search.php:237 src/Module/Contact.php:816
 #, php-format
@@ -5841,14 +5842,14 @@ msgstr "Benutzer in Netzwerken wie Mastodon oder Pleroma können ein Inhaltswarn
 
 #: mod/settings.php:837
 msgid "Disable intelligent shortening"
-msgstr "Intelligentes Link kürzen ausschalten"
+msgstr "Intelligentes Link-Kürzen ausschalten"
 
 #: mod/settings.php:837
 msgid ""
 "Normally the system tries to find the best link to add to shortened posts. "
 "If this option is enabled then every shortened post will always point to the"
 " original friendica post."
-msgstr "Normalerweise versucht das System den besten Link zu finden um ihn zu gekürzten Postings hinzu zu fügen. Wird diese Option ausgewählt wird stets ein Link auf die originale Friendica Nachricht beigefügt."
+msgstr "Normalerweise versucht das System, den besten Link zu finden, um ihn zu gekürzten Postings hinzuzufügen. Wird diese Option ausgewählt, wird stets ein Link auf die originale Friendica-Nachricht beigefügt."
 
 #: mod/settings.php:838
 msgid "Automatically follow any GNU Social (OStatus) followers/mentioners"
@@ -5859,26 +5860,26 @@ msgid ""
 "If you receive a message from an unknown OStatus user, this option decides "
 "what to do. If it is checked, a new contact will be created for every "
 "unknown user."
-msgstr "Wenn du eine Nachricht eines unbekannten OStatus Nutzers bekommst, entscheidet diese Option wie diese behandelt werden soll. Ist die Option aktiviert, wird ein neuer Kontakt für den Verfasser erstellt,."
+msgstr "Wenn du eine Nachricht eines unbekannten OStatus-Nutzers bekommst, entscheidet diese Option, wie diese behandelt werden soll. Ist die Option aktiviert, wird ein neuer Kontakt für den Verfasser erstellt,."
 
 #: mod/settings.php:839
 msgid "Default group for OStatus contacts"
-msgstr "Voreingestellte Gruppe für OStatus Kontakte"
+msgstr "Voreingestellte Gruppe für OStatus-Kontakte"
 
 #: mod/settings.php:840
 msgid "Your legacy GNU Social account"
-msgstr "Dein alter GNU Social Account"
+msgstr "Dein alter GNU Social-Account"
 
 #: mod/settings.php:840
 msgid ""
 "If you enter your old GNU Social/Statusnet account name here (in the format "
 "user@domain.tld), your contacts will be added automatically. The field will "
 "be emptied when done."
-msgstr "Wenn du deinen alten GNU Social/Statusnet Accountnamen hier angibst (Format name@domain.tld) werden deine Kontakte automatisch hinzugefügt. Dieses Feld wird geleert, wenn die Kontakte hinzugefügt wurden."
+msgstr "Wenn du deinen alten GNU Social/Statusnet-Account-Namen hier angibst (Format name@domain.tld), werden deine Kontakte automatisch hinzugefügt. Dieses Feld wird geleert, wenn die Kontakte hinzugefügt wurden."
 
 #: mod/settings.php:843
 msgid "Repair OStatus subscriptions"
-msgstr "OStatus Abonnements reparieren"
+msgstr "OStatus-Abonnements reparieren"
 
 #: mod/settings.php:847
 msgid "Email/Mailbox Setup"
@@ -5888,11 +5889,11 @@ msgstr "E-Mail/Postfach-Einstellungen"
 msgid ""
 "If you wish to communicate with email contacts using this service "
 "(optional), please specify how to connect to your mailbox."
-msgstr "Wenn Du mit E-Mail-Kontakten Ã¼ber diesen Service kommunizieren möchtest (optional), gib bitte die Einstellungen für Dein Postfach an."
+msgstr "Wenn du mit E-Mail-Kontakten Ã¼ber diesen Service kommunizieren möchtest (optional), gib bitte die Einstellungen für dein Postfach an."
 
 #: mod/settings.php:849
 msgid "Last successful email check:"
-msgstr "Letzter erfolgreicher E-Mail Check"
+msgstr "Letzter erfolgreicher E-Mail-Check"
 
 #: mod/settings.php:851
 msgid "IMAP server name:"
@@ -5952,11 +5953,11 @@ msgstr "%s - (Nicht unterstützt)"
 msgid "%s - (Experimental)"
 msgstr "%s - (Experimentell)"
 
-#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:396
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:395
 msgid "Sunday"
 msgstr "Sonntag"
 
-#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:397
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:396
 msgid "Monday"
 msgstr "Montag"
 
@@ -5980,7 +5981,7 @@ msgstr "Warnung vor unsicheren Netzwerken unterdrücken"
 msgid ""
 "Should the system suppress the warning that the current group contains "
 "members of networks that can't receive non public postings."
-msgstr "Soll das System Warnungen unterdrücken, die angezeigt werden weil von dir eingerichtete Kontakt-Gruppen Accounts aus Netzwerken beinhalten, die keine nicht Ã¶ffentlichen Beiträge empfangen können."
+msgstr "Soll das System Warnungen unterdrücken, die angezeigt werden, weil von dir eingerichtete Kontakt-Gruppen Accounts aus Netzwerken beinhalten, die keine nicht Ã¶ffentlichen Beiträge empfangen können."
 
 #: mod/settings.php:956
 msgid "Update browser every xx seconds"
@@ -5988,7 +5989,7 @@ msgstr "Browser alle xx Sekunden aktualisieren"
 
 #: mod/settings.php:956
 msgid "Minimum of 10 seconds. Enter -1 to disable it."
-msgstr "Minimum sind 10 Sekunden. Gib -1 ein um abzuschalten."
+msgstr "Minimum sind 10 Sekunden. Gib -1 ein, um abzuschalten."
 
 #: mod/settings.php:957
 msgid "Number of items to display per page:"
@@ -6004,7 +6005,7 @@ msgstr "Zahl der Beiträge, die pro Netzwerkseite auf mobilen Geräten angezeigt
 
 #: mod/settings.php:959
 msgid "Don't show emoticons"
-msgstr "Keine Smilies anzeigen"
+msgstr "Keine Smileys anzeigen"
 
 #: mod/settings.php:960
 msgid "Calendar"
@@ -6024,13 +6025,13 @@ msgstr "Endloses Scrollen"
 
 #: mod/settings.php:964
 msgid "Automatic updates only at the top of the network page"
-msgstr "Automatische Updates nur, wenn Du oben auf der Netzwerkseite bist."
+msgstr "Automatische Updates nur, wenn du oben auf der Netzwerkseite bist."
 
 #: mod/settings.php:964
 msgid ""
 "When disabled, the network page is updated all the time, which could be "
 "confusing while reading."
-msgstr "Wenn dies deaktiviert ist, wird die Netzwerk Seite aktualisiert, wann immer neue Beiträge eintreffen, egal an welcher Stelle gerade gelesen wird."
+msgstr "Wenn dies deaktiviert ist, wird die Netzwerk-Seite aktualisiert, wann immer neue Beiträge eintreffen, egal an welcher Stelle gerade gelesen wird."
 
 #: mod/settings.php:965
 msgid "Bandwidth Saver Mode"
@@ -6050,15 +6051,15 @@ msgstr "Intelligentes Threading"
 msgid ""
 "When enabled, suppress extraneous thread indentation while keeping it where "
 "it matters. Only works if threading is available and enabled."
-msgstr "Ist dies aktiviert, werden Einrückungen in Unterhaltungen unterdrückt wo sie nicht benötigt werden. Werden sie benötigt, werden die Threads weiterhin eingerückt."
+msgstr "Ist dies aktiviert, werden Einrückungen in Unterhaltungen unterdrückt, wo sie nicht benötigt werden. Werden sie benötigt, werden die Threads weiterhin eingerückt."
 
 #: mod/settings.php:968
 msgid "General Theme Settings"
-msgstr "Allgemeine Themeneinstellungen"
+msgstr "Allgemeine Theme-Einstellungen"
 
 #: mod/settings.php:969
 msgid "Custom Theme Settings"
-msgstr "Benutzerdefinierte Theme Einstellungen"
+msgstr "Benutzerdefinierte Theme-Einstellungen"
 
 #: mod/settings.php:970
 msgid "Content Settings"
@@ -6068,7 +6069,7 @@ msgstr "Einstellungen zum Inhalt"
 #: view/theme/frio/config.php:121 view/theme/quattro/config.php:76
 #: view/theme/vier/config.php:122
 msgid "Theme settings"
-msgstr "Themeneinstellungen"
+msgstr "Theme-Einstellungen"
 
 #: mod/settings.php:985
 msgid "Unable to find your profile. Please contact your admin."
@@ -6110,7 +6111,7 @@ msgstr "Konto für Diskussionsforen. "
 msgid ""
 "Account for a regular personal profile that requires manual approval of "
 "\"Friends\" and \"Followers\"."
-msgstr "Konto für ein normales persönliches Profil. Kontaktanfragen müssen manuell als \"Friend\" oder \"Follower\" bestätigt werden."
+msgstr "Konto für ein normales, persönliches Profil. Kontaktanfragen müssen manuell als \"Friend\" oder \"Follower\" bestätigt werden."
 
 #: mod/settings.php:1054
 msgid ""
@@ -6146,7 +6147,7 @@ msgstr "(Optional) Erlaube die Anmeldung für dieses Konto mit dieser OpenID."
 
 #: mod/settings.php:1085
 msgid "Publish your default profile in your local site directory?"
-msgstr "Darf Dein Standardprofil im Verzeichnis dieses Servers veröffentlicht werden?"
+msgstr "Darf dein Standardprofil im Verzeichnis dieses Servers veröffentlicht werden?"
 
 #: mod/settings.php:1085
 #, php-format
@@ -6158,14 +6159,14 @@ msgstr "Dein Profil wird im <a href=\"%s\">lokalen Verzeichnis</a> dieses Knoten
 
 #: mod/settings.php:1091
 msgid "Publish your default profile in the global social directory?"
-msgstr "Darf Dein Standardprofil im weltweiten Verzeichnis veröffentlicht werden?"
+msgstr "Darf dein Standardprofil im weltweiten Verzeichnis veröffentlicht werden?"
 
 #: mod/settings.php:1091
 #, php-format
 msgid ""
 "Your profile will be published in the global friendica directories (e.g. <a "
 "href=\"%s\">%s</a>). Your profile will be visible in public."
-msgstr "Dein Profil wird in den globalen Friendica Verzeichnissen (z.B. <a href=\"%s\">%s</a>) veröffentlicht. Dein Profil wird Ã¶ffentlich auffindbar sein."
+msgstr "Dein Profil wird in den globalen Friendica-Verzeichnissen (z.B. <a href=\"%s\">%s</a>) veröffentlicht. Dein Profil wird Ã¶ffentlich auffindbar sein."
 
 #: mod/settings.php:1098
 msgid "Hide your contact/friend list from viewers of your default profile?"
@@ -6187,11 +6188,11 @@ msgid ""
 "Anonymous visitors will only see your profile picture, your display name and"
 " the nickname you are using on your profile page. Your public posts and "
 "replies will still be accessible by other means."
-msgstr "Anonyme Besucher deines Profils werden ausschließlich dein Profilbild, deinen Namen sowie deinen Spitznamen sehen. Deine lffentlichen Beiträge und Kommentare werden weiterhin sichtbar sein."
+msgstr "Anonyme Besucher deines Profils werden ausschließlich dein Profilbild, deinen Namen sowie deinen Spitznamen sehen. Deine Ã¶ffentlichen Beiträge und Kommentare werden weiterhin sichtbar sein."
 
 #: mod/settings.php:1106
 msgid "Allow friends to post to your profile page?"
-msgstr "Dürfen Deine Kontakte auf Deine Pinnwand schreiben?"
+msgstr "Dürfen deine Kontakte auf deine Pinnwand schreiben?"
 
 #: mod/settings.php:1106
 msgid ""
@@ -6201,7 +6202,7 @@ msgstr "Deine Kontakte können Beiträge auf deiner Pinnwand hinterlassen. Diese
 
 #: mod/settings.php:1110
 msgid "Allow friends to tag your posts?"
-msgstr "Dürfen Deine Kontakte Deine Beiträge mit Schlagwörtern versehen?"
+msgstr "Dürfen deine Kontakte deine Beiträge mit Schlagwörtern versehen?"
 
 #: mod/settings.php:1110
 msgid "Your contacts can add additional tags to your posts."
@@ -6209,7 +6210,7 @@ msgstr "Deine Kontakte dürfen deine Beiträge mit zusätzlichen Schlagworten ve
 
 #: mod/settings.php:1114
 msgid "Allow us to suggest you as a potential friend to new members?"
-msgstr "Dürfen wir Dich neuen Mitgliedern als potentiellen Kontakt vorschlagen?"
+msgstr "Dürfen wir dich neuen Mitgliedern als potentiellen Kontakt vorschlagen?"
 
 #: mod/settings.php:1114
 msgid ""
@@ -6218,7 +6219,7 @@ msgstr "Wenn du magst, kann Friendica dich neuen Mitgliedern als Kontakt vorschl
 
 #: mod/settings.php:1118
 msgid "Permit unknown people to send you private mail?"
-msgstr "Dürfen Dir Unbekannte private Nachrichten schicken?"
+msgstr "Dürfen dir Unbekannte private Nachrichten schicken?"
 
 #: mod/settings.php:1118
 msgid ""
@@ -6241,7 +6242,7 @@ msgstr "Beiträge verfallen automatisch nach dieser Anzahl von Tagen:"
 
 #: mod/settings.php:1135
 msgid "If empty, posts will not expire. Expired posts will be deleted"
-msgstr "Wenn leer verfallen Beiträge nie automatisch. Verfallene Beiträge werden gelöscht."
+msgstr "Wenn leer, verfallen Beiträge nie automatisch. Verfallene Beiträge werden gelöscht."
 
 #: mod/settings.php:1136
 msgid "Advanced expiration settings"
@@ -6287,7 +6288,7 @@ msgstr "Neues Passwort:"
 msgid ""
 "Allowed characters are a-z, A-Z, 0-9 and special characters except white "
 "spaces, accentuated letters and colon (:)."
-msgstr "Erlaubte Zeichen sind a-z, A-Z, 0-9 und Sonderzeichen, abgesehen von Leerzeichen, Doppelpunkten (:) und akzentuierte Buchstaben."
+msgstr "Erlaubte Zeichen sind a-z, A-Z, 0-9 und Sonderzeichen, abgesehen von Leerzeichen, Doppelpunkten (:) und akzentuierten Buchstaben."
 
 #: mod/settings.php:1182 src/Module/Register.php:131
 msgid "Confirm:"
@@ -6295,7 +6296,7 @@ msgstr "Bestätigen:"
 
 #: mod/settings.php:1182
 msgid "Leave password fields blank unless changing"
-msgstr "Lass die Passwort-Felder leer, außer Du willst das Passwort Ã¤ndern"
+msgstr "Lass die Passwort-Felder leer, außer du willst das Passwort Ã¤ndern"
 
 #: mod/settings.php:1183
 msgid "Current Password:"
@@ -6333,7 +6334,7 @@ msgstr "Deine Sprache:"
 msgid ""
 "Set the language we use to show you friendica interface and to send you "
 "emails"
-msgstr "Wähle die Sprache, in der wir Dir die Friendica-Oberfläche präsentieren sollen und Dir E-Mail schicken"
+msgstr "Wähle die Sprache, in der wir dir die Friendica-Oberfläche präsentieren sollen und dir E-Mail schicken"
 
 #: mod/settings.php:1193
 msgid "Default Post Location:"
@@ -6349,7 +6350,7 @@ msgstr "Sicherheits- und Privatsphäre-Einstellungen"
 
 #: mod/settings.php:1199
 msgid "Maximum Friend Requests/Day:"
-msgstr "Maximale Anzahl vonKontaktanfragen/Tag:"
+msgstr "Maximale Anzahl von Kontaktanfragen/Tag:"
 
 #: mod/settings.php:1199 mod/settings.php:1228
 msgid "(to prevent spam abuse)"
@@ -6361,7 +6362,7 @@ msgstr "Standard-Zugriffsrechte für Beiträge"
 
 #: mod/settings.php:1201
 msgid "(click to open/close)"
-msgstr "(klicke zum ÃƒÂ¶ffnen/schließen)"
+msgstr "(klicke zum Ãƒ\96ffnen/Schließen)"
 
 #: mod/settings.php:1211
 msgid "Default Private Post"
@@ -6385,11 +6386,11 @@ msgstr "Benachrichtigungseinstellungen"
 
 #: mod/settings.php:1232
 msgid "Send a notification email when:"
-msgstr "Benachrichtigungs-E-Mail senden wenn:"
+msgstr "Benachrichtigungs-E-Mail senden, wenn:"
 
 #: mod/settings.php:1233
 msgid "You receive an introduction"
-msgstr "– Du eine Kontaktanfrage erhältst"
+msgstr "– du eine Kontaktanfrage erhältst"
 
 #: mod/settings.php:1234
 msgid "Your introductions are confirmed"
@@ -6405,35 +6406,35 @@ msgstr "– jemand auch einen Kommentar verfasst"
 
 #: mod/settings.php:1237
 msgid "You receive a private message"
-msgstr "– Du eine private Nachricht erhältst"
+msgstr "– du eine private Nachricht erhältst"
 
 #: mod/settings.php:1238
 msgid "You receive a friend suggestion"
-msgstr "– Du eine Empfehlung erhältst"
+msgstr "– du eine Empfehlung erhältst"
 
 #: mod/settings.php:1239
 msgid "You are tagged in a post"
-msgstr "– Du in einem Beitrag erwähnt wirst"
+msgstr "– du in einem Beitrag erwähnt wirst"
 
 #: mod/settings.php:1240
 msgid "You are poked/prodded/etc. in a post"
-msgstr "– Du von jemandem angestupst oder sonstwie behandelt wirst"
+msgstr "– du von jemandem angestupst oder sonstwie behandelt wirst"
 
 #: mod/settings.php:1242
 msgid "Activate desktop notifications"
-msgstr "Desktop Benachrichtigungen einschalten"
+msgstr "Desktop-Benachrichtigungen einschalten"
 
 #: mod/settings.php:1242
 msgid "Show desktop popup on new notifications"
-msgstr "Desktop Benachrichtigungen einschalten"
+msgstr "Desktop-Benachrichtigungen einschalten"
 
 #: mod/settings.php:1244
 msgid "Text-only notification emails"
-msgstr "Benachrichtigungs E-Mail als Rein-Text."
+msgstr "Benachrichtigungs-E-Mail als Rein-Text."
 
 #: mod/settings.php:1246
 msgid "Send text only notification emails, without the html part"
-msgstr "Sende Benachrichtigungs E-Mail als Rein-Text - ohne HTML-Teil"
+msgstr "Sende Benachrichtigungs-E-Mail als Rein-Text - ohne HTML-Teil"
 
 #: mod/settings.php:1248
 msgid "Show detailled notifications"
@@ -6443,7 +6444,7 @@ msgstr "Detaillierte Benachrichtigungen anzeigen"
 msgid ""
 "Per default, notifications are condensed to a single notification per item. "
 "When enabled every notification is displayed."
-msgstr "Normalerweise werde alle Benachrichtigungen zu einem Thema zusammengefasst in einer einzigen Mitteilung. Wenn diese Option aktiviert ist, wird jede Mitteilung angezeigt."
+msgstr "Normalerweise werden alle Benachrichtigungen zu einem Thema in einer einzigen Benachrichtigung zusammengefasst. Wenn diese Option aktiviert ist, wird jede Benachrichtigung einzeln angezeigt."
 
 #: mod/settings.php:1252
 msgid "Advanced Account/Page Type Settings"
@@ -6461,7 +6462,7 @@ msgstr "Umziehen"
 msgid ""
 "If you have moved this profile from another server, and some of your "
 "contacts don't receive your updates, try pushing this button."
-msgstr "Wenn Du Dein Profil von einem anderen Server umgezogen hast und einige Deiner Kontakte Deine Beiträge nicht erhalten, verwende diesen Button."
+msgstr "Wenn du dein Profil von einem anderen Server umgezogen hast und einige deiner Kontakte deine Beiträge nicht erhalten, verwende diesen Button."
 
 #: mod/settings.php:1258
 msgid "Resend relocate message to contacts"
@@ -6474,7 +6475,7 @@ msgstr "%1$s folgt %2$s %3$s"
 
 #: mod/suggest.php:39
 msgid "Do you really want to delete this suggestion?"
-msgstr "Möchtest Du wirklich diese Empfehlung löschen?"
+msgstr "Möchtest du wirklich diese Empfehlung löschen?"
 
 #: mod/suggest.php:75
 msgid ""
@@ -6486,7 +6487,7 @@ msgstr "Keine Vorschläge verfügbar. Falls der Server frisch aufgesetzt wurde,
 msgid "Ignore/Hide"
 msgstr "Ignorieren/Verbergen"
 
-#: mod/suggest.php:119 view/theme/vier/theme.php:204 src/Content/Widget.php:66
+#: mod/suggest.php:119 src/Content/Widget.php:66 view/theme/vier/theme.php:204
 msgid "Friend Suggestions"
 msgstr "Kontaktvorschläge"
 
@@ -6510,7 +6511,7 @@ msgstr "Account exportieren"
 msgid ""
 "Export your account info and contacts. Use this to make a backup of your "
 "account and/or to move it to another server."
-msgstr "Exportiere Deine Accountinformationen und Kontakte. Verwende dies um ein Backup Deines Accounts anzulegen und/oder damit auf einen anderen Server umzuziehen."
+msgstr "Exportiere Deine Account-Informationen und Kontakte. Verwende dies, um ein Backup Deines Accounts anzulegen und/oder damit auf einen anderen Server umzuziehen."
 
 #: mod/uexport.php:46
 msgid "Export all"
@@ -6521,7 +6522,7 @@ msgid ""
 "Export your accout info, contacts and all your items as json. Could be a "
 "very big file, and could take a lot of time. Use this to make a full backup "
 "of your account (photos are not exported)"
-msgstr "Exportiere Deine Accountinformationen, Kontakte und alle Einträge als JSON Datei. Dies könnte eine sehr große Datei werden und dementsprechend viel Zeit benötigen. Verwende dies, um ein komplettes Backup Deines Accounts anzulegen (Fotos werden nicht exportiert)."
+msgstr "Exportiere Deine Account-Informationen, Kontakte und alle Einträge als JSON Datei. Dies könnte eine sehr große Datei werden und dementsprechend viel Zeit benötigen. Verwende dies, um ein komplettes Backup Deines Accounts anzulegen (Fotos werden nicht exportiert)."
 
 #: mod/uimport.php:30
 msgid "User imports on closed servers can only be done by an administrator."
@@ -6550,17 +6551,17 @@ msgid ""
 "You need to export your account from the old server and upload it here. We "
 "will recreate your old account here with all your contacts. We will try also"
 " to inform your friends that you moved here."
-msgstr "Du musst Deinen Account vom alten Server exportieren und hier hochladen. Wir stellen Deinen alten Account mit all Deinen Kontakten wieder her. Wir werden auch versuchen all Deine Kontakte darüber zu informieren, dass Du hierher umgezogen bist."
+msgstr "Du musst deinen Account vom alten Server exportieren und hier hochladen. Wir stellen deinen alten Account mit all deinen Kontakten wieder her. Wir werden auch versuchen, deine Kontakte darüber zu informieren, dass du hierher umgezogen bist."
 
 #: mod/uimport.php:59
 msgid ""
 "This feature is experimental. We can't import contacts from the OStatus "
 "network (GNU Social/Statusnet) or from Diaspora"
-msgstr "Dieses Feature ist experimentell. Wir können keine Kontakte vom OStatus Netzwerk (GNU Social/Statusnet) oder von Diaspora importieren"
+msgstr "Dieses Feature ist experimentell. Wir können keine Kontakte vom OStatus-Netzwerk (GNU Social/Statusnet) oder von Diaspora importieren"
 
 #: mod/uimport.php:60
 msgid "Account file"
-msgstr "Account Datei"
+msgstr "Account-Datei"
 
 #: mod/uimport.php:60
 msgid ""
@@ -6592,7 +6593,7 @@ msgstr "[Eingebetteter Inhalt - Seite neu laden zum Betrachten]"
 
 #: mod/videos.php:97
 msgid "Do you really want to delete this video?"
-msgstr "Möchtest Du dieses Video wirklich löschen?"
+msgstr "Möchtest du dieses Video wirklich löschen?"
 
 #: mod/videos.php:102
 msgid "Delete Video"
@@ -6602,7 +6603,7 @@ msgstr "Video Löschen"
 msgid "No videos selected"
 msgstr "Keine Videos  ausgewählt"
 
-#: mod/videos.php:309 src/Model/Item.php:3435
+#: mod/videos.php:309 src/Model/Item.php:3453
 msgid "View Video"
 msgstr "Video ansehen"
 
@@ -6624,13 +6625,33 @@ msgstr "Keine Kontakte."
 msgid "Visit %s's profile [%s]"
 msgstr "Besuche %ss Profil [%s]"
 
-#: mod/viewcontacts.php:114 view/theme/frio/theme.php:273
-#: src/Content/Text/HTML.php:911 src/Content/Nav.php:203
-#: src/Content/Nav.php:269 src/Model/Profile.php:980 src/Model/Profile.php:983
-#: src/Module/Contact.php:811 src/Module/Contact.php:881
+#: mod/viewcontacts.php:114 src/Content/Nav.php:203 src/Content/Nav.php:269
+#: src/Content/Text/HTML.php:911 src/Model/Profile.php:980
+#: src/Model/Profile.php:983 src/Module/Contact.php:811
+#: src/Module/Contact.php:881 view/theme/frio/theme.php:273
 msgid "Contacts"
 msgstr "Kontakte"
 
+#: mod/wallmessage.php:52 mod/wallmessage.php:115
+#, php-format
+msgid "Number of daily wall messages for %s exceeded. Message failed."
+msgstr "Maximale Anzahl der täglichen Pinnwand-Nachrichten für %s ist Ã¼berschritten. Zustellung fehlgeschlagen."
+
+#: mod/wallmessage.php:63
+msgid "Unable to check your home location."
+msgstr "Konnte Deinen Heimatort nicht bestimmen."
+
+#: mod/wallmessage.php:89 mod/wallmessage.php:98
+msgid "No recipient."
+msgstr "Kein Empfänger."
+
+#: mod/wallmessage.php:129
+#, php-format
+msgid ""
+"If you wish for %s to respond, please check that the privacy settings on "
+"your site allow private mail from unknown senders."
+msgstr "Wenn du möchtest, dass %s dir antworten kann, Ã¼berprüfe deine Privatsphären-Einstellungen und erlaube private Nachrichten von unbekannten Absendern."
+
 #: mod/wall_attach.php:26 mod/wall_attach.php:33 mod/wall_attach.php:85
 #: mod/wall_upload.php:42 mod/wall_upload.php:58 mod/wall_upload.php:116
 #: mod/wall_upload.php:167 mod/wall_upload.php:170
@@ -6639,11 +6660,11 @@ msgstr "Ungültige Anfrage"
 
 #: mod/wall_attach.php:103
 msgid "Sorry, maybe your upload is bigger than the PHP configuration allows"
-msgstr "Entschuldige, die Datei scheint größer zu sein als es die PHP Konfiguration erlaubt."
+msgstr "Entschuldige, die Datei scheint größer zu sein, als es die PHP-Konfiguration erlaubt."
 
 #: mod/wall_attach.php:103
 msgid "Or - did you try to upload an empty file?"
-msgstr "Oder - hast Du versucht, eine leere Datei hochzuladen?"
+msgstr "Oder - hast du versucht, eine leere Datei hochzuladen?"
 
 #: mod/wall_attach.php:114
 #, php-format
@@ -6659,2051 +6680,1792 @@ msgstr "Hochladen der Datei fehlgeschlagen."
 msgid "Wall Photos"
 msgstr "Pinnwand-Bilder"
 
-#: mod/wallmessage.php:52 mod/wallmessage.php:115
-#, php-format
-msgid "Number of daily wall messages for %s exceeded. Message failed."
-msgstr "Maximale Anzahl der täglichen Pinnwand Nachrichten für %s ist Ã¼berschritten. Zustellung fehlgeschlagen."
+#: src/App.php:665
+msgid "Delete this item?"
+msgstr "Diesen Beitrag löschen?"
 
-#: mod/wallmessage.php:63
-msgid "Unable to check your home location."
-msgstr "Konnte Deinen Heimatort nicht bestimmen."
+#: src/App.php:707
+msgid "toggle mobile"
+msgstr "mobile Ansicht umschalten"
 
-#: mod/wallmessage.php:89 mod/wallmessage.php:98
-msgid "No recipient."
-msgstr "Kein Empfänger."
+#: src/App.php:1075
+msgid "No system theme config value set."
+msgstr "Es wurde kein Konfigurationswert für das systemweite Theme gesetzt."
 
-#: mod/wallmessage.php:129
-#, php-format
+#: src/BaseModule.php:133
 msgid ""
-"If you wish for %s to respond, please check that the privacy settings on "
-"your site allow private mail from unknown senders."
-msgstr "Wenn Du möchtest, dass %s Dir antworten kann, Ã¼berprüfe Deine Privatsphären-Einstellungen und erlaube private Nachrichten von unbekannten Absendern."
-
-#: view/theme/duepuntozero/config.php:55 src/Model/User.php:684
-msgid "default"
-msgstr "Standard"
+"The form security token was not correct. This probably happened because the "
+"form has been opened for too long (>3 hours) before submitting it."
+msgstr "Das Sicherheitsmerkmal war nicht korrekt. Das passiert meistens, wenn das Formular vor dem Absenden zu lange geöffnet war (länger als 3 Stunden)."
 
-#: view/theme/duepuntozero/config.php:56
-msgid "greenzero"
-msgstr "greenzero"
+#: src/Content/ContactSelector.php:58
+msgid "Frequently"
+msgstr "immer wieder"
 
-#: view/theme/duepuntozero/config.php:57
-msgid "purplezero"
-msgstr "purplezero"
+#: src/Content/ContactSelector.php:59
+msgid "Hourly"
+msgstr "Stündlich"
 
-#: view/theme/duepuntozero/config.php:58
-msgid "easterbunny"
-msgstr "easterbunny"
+#: src/Content/ContactSelector.php:60
+msgid "Twice daily"
+msgstr "Zweimal täglich"
 
-#: view/theme/duepuntozero/config.php:59
-msgid "darkzero"
-msgstr "darkzero"
+#: src/Content/ContactSelector.php:61
+msgid "Daily"
+msgstr "Täglich"
 
-#: view/theme/duepuntozero/config.php:60
-msgid "comix"
-msgstr "comix"
+#: src/Content/ContactSelector.php:62
+msgid "Weekly"
+msgstr "Wöchentlich"
 
-#: view/theme/duepuntozero/config.php:61
-msgid "slackr"
-msgstr "slackr"
+#: src/Content/ContactSelector.php:63
+msgid "Monthly"
+msgstr "Monatlich"
 
-#: view/theme/duepuntozero/config.php:75
-msgid "Variations"
-msgstr "Variationen"
+#: src/Content/ContactSelector.php:83
+msgid "DFRN"
+msgstr "DFRN"
 
-#: view/theme/frio/php/Image.php:24
-msgid "Top Banner"
-msgstr "Top Banner"
+#: src/Content/ContactSelector.php:84
+msgid "OStatus"
+msgstr "OStatus"
 
-#: view/theme/frio/php/Image.php:24
-msgid ""
-"Resize image to the width of the screen and show background color below on "
-"long pages."
-msgstr "Skaliere das Hintergrundbild so, dass es die Breite der Seite einnimmt und fülle den Rest der Seite mit der Hintergrundfarbe bei langen Seiten."
+#: src/Content/ContactSelector.php:85
+msgid "RSS/Atom"
+msgstr "RSS/Atom"
 
-#: view/theme/frio/php/Image.php:25
-msgid "Full screen"
-msgstr "Vollbildmodus"
+#: src/Content/ContactSelector.php:88
+msgid "Zot!"
+msgstr "Zott"
 
-#: view/theme/frio/php/Image.php:25
-msgid ""
-"Resize image to fill entire screen, clipping either the right or the bottom."
-msgstr "Skaliere das Bild so, dass es den gesamten Bildschirm füllt. Hierfür wird entweder die Breite oder die Höhe des Bildes automatisch abgeschnitten."
-
-#: view/theme/frio/php/Image.php:26
-msgid "Single row mosaic"
-msgstr "Mosaik in einer Zeile"
+#: src/Content/ContactSelector.php:89
+msgid "LinkedIn"
+msgstr "LinkedIn"
 
-#: view/theme/frio/php/Image.php:26
-msgid ""
-"Resize image to repeat it on a single row, either vertical or horizontal."
-msgstr "Skaliere das Bild so, dass es in einer einzelnen Reihe, entweder horizontal oder vertikal, wiederholt wird."
+#: src/Content/ContactSelector.php:90
+msgid "XMPP/IM"
+msgstr "XMPP/Chat"
 
-#: view/theme/frio/php/Image.php:27
-msgid "Mosaic"
-msgstr "Mosaik"
+#: src/Content/ContactSelector.php:91
+msgid "MySpace"
+msgstr "MySpace"
 
-#: view/theme/frio/php/Image.php:27
-msgid "Repeat image to fill the screen."
-msgstr "Wiederhole das Bild um den Bildschirm zu füllen."
+#: src/Content/ContactSelector.php:92
+msgid "Google+"
+msgstr "Google+"
 
-#: view/theme/frio/config.php:103
-msgid "Custom"
-msgstr "Benutzerdefiniert"
+#: src/Content/ContactSelector.php:93
+msgid "pump.io"
+msgstr "pump.io"
 
-#: view/theme/frio/config.php:115
-msgid "Note"
-msgstr "Hinweis"
+#: src/Content/ContactSelector.php:94
+msgid "Twitter"
+msgstr "Twitter"
 
-#: view/theme/frio/config.php:115
-msgid "Check image permissions if all users are allowed to see the image"
-msgstr "Ãœberprüfe, dass alle Benutzer die Berechtigung haben dieses Bild anzusehen"
+#: src/Content/ContactSelector.php:95
+msgid "Diaspora Connector"
+msgstr "Diaspora Connector"
 
-#: view/theme/frio/config.php:122
-msgid "Select color scheme"
-msgstr "Farbschema auswählen"
+#: src/Content/ContactSelector.php:96
+msgid "GNU Social Connector"
+msgstr "GNU Social Connector"
 
-#: view/theme/frio/config.php:123
-msgid "Navigation bar background color"
-msgstr "Hintergrundfarbe der Navigationsleiste"
+#: src/Content/ContactSelector.php:97
+msgid "ActivityPub"
+msgstr "ActivityPub"
 
-#: view/theme/frio/config.php:124
-msgid "Navigation bar icon color "
-msgstr "Icon Farbe in der Navigationsleiste"
+#: src/Content/ContactSelector.php:98
+msgid "pnut"
+msgstr "pnut"
 
-#: view/theme/frio/config.php:125
-msgid "Link color"
-msgstr "Linkfarbe"
+#: src/Content/ContactSelector.php:154
+msgid "Male"
+msgstr "Männlich"
 
-#: view/theme/frio/config.php:126
-msgid "Set the background color"
-msgstr "Hintergrundfarbe festlegen"
+#: src/Content/ContactSelector.php:155
+msgid "Female"
+msgstr "Weiblich"
 
-#: view/theme/frio/config.php:127
-msgid "Content background opacity"
-msgstr "Opazität des Hintergrunds von Beiträgen"
+#: src/Content/ContactSelector.php:156
+msgid "Currently Male"
+msgstr "Momentan männlich"
 
-#: view/theme/frio/config.php:128
-msgid "Set the background image"
-msgstr "Hintergrundbild festlegen"
+#: src/Content/ContactSelector.php:157
+msgid "Currently Female"
+msgstr "Momentan weiblich"
 
-#: view/theme/frio/config.php:129
-msgid "Background image style"
-msgstr "Stil des Hintergrundbildes"
+#: src/Content/ContactSelector.php:158
+msgid "Mostly Male"
+msgstr "Hauptsächlich männlich"
 
-#: view/theme/frio/config.php:134
-msgid "Login page background image"
-msgstr "Hintergrundbild der Login-Seite"
+#: src/Content/ContactSelector.php:159
+msgid "Mostly Female"
+msgstr "Hauptsächlich weiblich"
 
-#: view/theme/frio/config.php:138
-msgid "Login page background color"
-msgstr "Hintergrundfarbe der Login-Seite"
+#: src/Content/ContactSelector.php:160
+msgid "Transgender"
+msgstr "Transgender"
 
-#: view/theme/frio/config.php:138
-msgid "Leave background image and color empty for theme defaults"
-msgstr "Wenn die Theme Vorgaben verwendet werden sollen, lass bitte die Felder für die Hintergrundfarbe und das Hintergrundbild leer."
+#: src/Content/ContactSelector.php:161
+msgid "Intersex"
+msgstr "Intersex"
 
-#: view/theme/frio/theme.php:239
-msgid "Guest"
-msgstr "Gast"
+#: src/Content/ContactSelector.php:162
+msgid "Transsexual"
+msgstr "Transsexuell"
 
-#: view/theme/frio/theme.php:244
-msgid "Visitor"
-msgstr "Besucher"
+#: src/Content/ContactSelector.php:163
+msgid "Hermaphrodite"
+msgstr "Hermaphrodit"
 
-#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
-#: src/Module/Login.php:321
-msgid "Logout"
-msgstr "Abmelden"
+#: src/Content/ContactSelector.php:164
+msgid "Neuter"
+msgstr "Neuter"
 
-#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
-msgid "End this session"
-msgstr "Diese Sitzung beenden"
+#: src/Content/ContactSelector.php:165
+msgid "Non-specific"
+msgstr "Nicht spezifiziert"
 
-#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
-#: src/Model/Profile.php:901 src/Module/Contact.php:652
-#: src/Module/Contact.php:853
-msgid "Status"
-msgstr "Status"
+#: src/Content/ContactSelector.php:166
+msgid "Other"
+msgstr "Andere"
 
-#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
-#: src/Content/Nav.php:242
-msgid "Your posts and conversations"
-msgstr "Deine Beiträge und Unterhaltungen"
+#: src/Content/ContactSelector.php:194
+msgid "Males"
+msgstr "Männer"
 
-#: view/theme/frio/theme.php:263 src/Content/Nav.php:157
-msgid "Your profile page"
-msgstr "Deine Profilseite"
+#: src/Content/ContactSelector.php:195
+msgid "Females"
+msgstr "Frauen"
 
-#: view/theme/frio/theme.php:264 src/Content/Nav.php:158
-msgid "Your photos"
-msgstr "Deine Fotos"
+#: src/Content/ContactSelector.php:196
+msgid "Gay"
+msgstr "Schwul"
 
-#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
-#: src/Model/Profile.php:925 src/Model/Profile.php:928
-msgid "Videos"
-msgstr "Videos"
+#: src/Content/ContactSelector.php:197
+msgid "Lesbian"
+msgstr "Lesbisch"
 
-#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
-msgid "Your videos"
-msgstr "Deine Videos"
+#: src/Content/ContactSelector.php:198
+msgid "No Preference"
+msgstr "Keine Vorlieben"
 
-#: view/theme/frio/theme.php:266 src/Content/Nav.php:160
-msgid "Your events"
-msgstr "Deine Ereignisse"
+#: src/Content/ContactSelector.php:199
+msgid "Bisexual"
+msgstr "Bisexuell"
 
-#: view/theme/frio/theme.php:269 src/Content/Nav.php:239
-msgid "Conversations from your friends"
-msgstr "Unterhaltungen Deiner Kontakte"
+#: src/Content/ContactSelector.php:200
+msgid "Autosexual"
+msgstr "Autosexuell"
 
-#: view/theme/frio/theme.php:270 src/Content/Nav.php:226
-#: src/Model/Profile.php:940 src/Model/Profile.php:951
-msgid "Events and Calendar"
-msgstr "Ereignisse und Kalender"
+#: src/Content/ContactSelector.php:201
+msgid "Abstinent"
+msgstr "Abstinent"
 
-#: view/theme/frio/theme.php:271 src/Content/Nav.php:252
-msgid "Private mail"
-msgstr "Private E-Mail"
+#: src/Content/ContactSelector.php:202
+msgid "Virgin"
+msgstr "Jungfrauen"
 
-#: view/theme/frio/theme.php:272 src/Content/Nav.php:263
-msgid "Account settings"
-msgstr "Kontoeinstellungen"
+#: src/Content/ContactSelector.php:203
+msgid "Deviant"
+msgstr "Deviant"
 
-#: view/theme/frio/theme.php:273 src/Content/Nav.php:269
-msgid "Manage/edit friends and contacts"
-msgstr "Freunde und Kontakte verwalten/bearbeiten"
+#: src/Content/ContactSelector.php:204
+msgid "Fetish"
+msgstr "Fetish"
 
-#: view/theme/quattro/config.php:77
-msgid "Alignment"
-msgstr "Ausrichtung"
+#: src/Content/ContactSelector.php:205
+msgid "Oodles"
+msgstr "Oodles"
 
-#: view/theme/quattro/config.php:77
-msgid "Left"
-msgstr "Links"
+#: src/Content/ContactSelector.php:206
+msgid "Nonsexual"
+msgstr "Nonsexual"
 
-#: view/theme/quattro/config.php:77
-msgid "Center"
-msgstr "Mitte"
+#: src/Content/ContactSelector.php:232
+msgid "Single"
+msgstr "Single"
 
-#: view/theme/quattro/config.php:78
-msgid "Color scheme"
-msgstr "Farbschema"
+#: src/Content/ContactSelector.php:233
+msgid "Lonely"
+msgstr "Einsam"
 
-#: view/theme/quattro/config.php:79
-msgid "Posts font size"
-msgstr "Schriftgröße in Beiträgen"
+#: src/Content/ContactSelector.php:234
+msgid "Available"
+msgstr "Verfügbar"
 
-#: view/theme/quattro/config.php:80
-msgid "Textareas font size"
-msgstr "Schriftgröße in Eingabefeldern"
+#: src/Content/ContactSelector.php:235
+msgid "Unavailable"
+msgstr "Nicht verfügbar"
 
-#: view/theme/vier/config.php:76
-msgid "Comma separated list of helper forums"
-msgstr "Komma-Separierte Liste der Helfer-Foren"
+#: src/Content/ContactSelector.php:236
+msgid "Has crush"
+msgstr "verknallt"
 
-#: view/theme/vier/config.php:116 src/Core/ACL.php:301
-msgid "don't show"
-msgstr "nicht zeigen"
+#: src/Content/ContactSelector.php:237
+msgid "Infatuated"
+msgstr "verliebt"
 
-#: view/theme/vier/config.php:116 src/Core/ACL.php:300
-msgid "show"
-msgstr "zeigen"
+#: src/Content/ContactSelector.php:238
+msgid "Dating"
+msgstr "Dating"
 
-#: view/theme/vier/config.php:123
-msgid "Set style"
-msgstr "Stil auswählen"
+#: src/Content/ContactSelector.php:239
+msgid "Unfaithful"
+msgstr "Untreu"
 
-#: view/theme/vier/config.php:124
-msgid "Community Pages"
-msgstr "Foren"
+#: src/Content/ContactSelector.php:240
+msgid "Sex Addict"
+msgstr "Sexbesessen"
 
-#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
-msgid "Community Profiles"
-msgstr "Community-Profile"
+#: src/Content/ContactSelector.php:241 src/Model/User.php:702
+msgid "Friends"
+msgstr "Kontakte"
 
-#: view/theme/vier/config.php:126
-msgid "Help or @NewHere ?"
-msgstr "Hilfe oder @NewHere"
+#: src/Content/ContactSelector.php:242
+msgid "Friends/Benefits"
+msgstr "Freunde/Zuwendungen"
 
-#: view/theme/vier/config.php:127 view/theme/vier/theme.php:373
-msgid "Connect Services"
-msgstr "Verbinde Dienste"
+#: src/Content/ContactSelector.php:243
+msgid "Casual"
+msgstr "Casual"
 
-#: view/theme/vier/config.php:128
-msgid "Find Friends"
-msgstr "Kontakte finden"
+#: src/Content/ContactSelector.php:244
+msgid "Engaged"
+msgstr "Verlobt"
 
-#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
-msgid "Last users"
-msgstr "Letzte Nutzer"
+#: src/Content/ContactSelector.php:245
+msgid "Married"
+msgstr "Verheiratet"
 
-#: view/theme/vier/theme.php:199 src/Content/Widget.php:61
-msgid "Find People"
-msgstr "Leute finden"
+#: src/Content/ContactSelector.php:246
+msgid "Imaginarily married"
+msgstr "imaginär verheiratet"
 
-#: view/theme/vier/theme.php:200 src/Content/Widget.php:62
-msgid "Enter name or interest"
-msgstr "Name oder Interessen eingeben"
+#: src/Content/ContactSelector.php:247
+msgid "Partners"
+msgstr "Partner"
 
-#: view/theme/vier/theme.php:202 src/Content/Widget.php:64
-msgid "Examples: Robert Morgenstein, Fishing"
-msgstr "Beispiel: Robert Morgenstein, Angeln"
+#: src/Content/ContactSelector.php:248
+msgid "Cohabiting"
+msgstr "zusammenlebend"
 
-#: view/theme/vier/theme.php:205 src/Content/Widget.php:67
-msgid "Similar Interests"
-msgstr "Ähnliche Interessen"
+#: src/Content/ContactSelector.php:249
+msgid "Common law"
+msgstr "wilde Ehe"
 
-#: view/theme/vier/theme.php:206 src/Content/Widget.php:68
-msgid "Random Profile"
-msgstr "Zufälliges Profil"
+#: src/Content/ContactSelector.php:250
+msgid "Happy"
+msgstr "Glücklich"
 
-#: view/theme/vier/theme.php:207 src/Content/Widget.php:69
-msgid "Invite Friends"
-msgstr "Freunde einladen"
+#: src/Content/ContactSelector.php:251
+msgid "Not looking"
+msgstr "Nicht auf der Suche"
 
-#: view/theme/vier/theme.php:210 src/Content/Widget.php:72
-msgid "Local Directory"
-msgstr "Lokales Verzeichnis"
+#: src/Content/ContactSelector.php:252
+msgid "Swinger"
+msgstr "Swinger"
 
-#: view/theme/vier/theme.php:250 src/Content/Text/HTML.php:914
-#: src/Content/ForumManager.php:130 src/Content/Nav.php:207
-msgid "Forums"
-msgstr "Foren"
+#: src/Content/ContactSelector.php:253
+msgid "Betrayed"
+msgstr "Betrogen"
 
-#: view/theme/vier/theme.php:252 src/Content/ForumManager.php:132
-msgid "External link to forum"
-msgstr "Externer Link zum Forum"
+#: src/Content/ContactSelector.php:254
+msgid "Separated"
+msgstr "Getrennt"
 
-#: view/theme/vier/theme.php:288
-msgid "Quick Start"
-msgstr "Schnell-Start"
+#: src/Content/ContactSelector.php:255
+msgid "Unstable"
+msgstr "Unstabil"
 
-#: src/Core/Console/ArchiveContact.php:65
-#, php-format
-msgid "Could not find any unarchived contact entry for this URL (%s)"
-msgstr "Für die URL (%s) konnte kein nicht-archivierter Kontakt gefunden werden"
+#: src/Content/ContactSelector.php:256
+msgid "Divorced"
+msgstr "Geschieden"
 
-#: src/Core/Console/ArchiveContact.php:70
-msgid "The contact entries have been archived"
-msgstr "Die Kontakteinträge wurden archiviert."
+#: src/Content/ContactSelector.php:257
+msgid "Imaginarily divorced"
+msgstr "Imaginär geschieden"
 
-#: src/Core/Console/NewPassword.php:72
-msgid "Enter new password: "
-msgstr "Neues Passwort eingeben:"
+#: src/Content/ContactSelector.php:258
+msgid "Widowed"
+msgstr "Verwitwet"
 
-#: src/Core/Console/PostUpdate.php:50
-#, php-format
-msgid "Post update version number has been set to %s."
-msgstr "Die Post-Update Versionsnummer wurde auf %s gesetzt."
+#: src/Content/ContactSelector.php:259
+msgid "Uncertain"
+msgstr "Unsicher"
 
-#: src/Core/Console/PostUpdate.php:58
-msgid "Check for pending update actions."
-msgstr "Ãœberprüfe ausstehende Update Aktionen"
+#: src/Content/ContactSelector.php:260
+msgid "It's complicated"
+msgstr "Ist kompliziert"
 
-#: src/Core/Console/PostUpdate.php:60
-msgid "Done."
-msgstr "Erledigt."
+#: src/Content/ContactSelector.php:261
+msgid "Don't care"
+msgstr "Ist mir nicht wichtig"
 
-#: src/Core/Console/PostUpdate.php:62
-msgid "Execute pending post updates."
-msgstr "Ausstehende Post-Updates ausführen"
+#: src/Content/ContactSelector.php:262
+msgid "Ask me"
+msgstr "Frag mich"
 
-#: src/Core/Console/PostUpdate.php:68
-msgid "All pending post updates are done."
-msgstr "Alle ausstehenden Post-Updates wurden ausgeführt."
+#: src/Content/Feature.php:82
+msgid "General Features"
+msgstr "Allgemeine Features"
 
-#: src/Core/ACL.php:287
-msgid "Post to Email"
-msgstr "An E-Mail senden"
+#: src/Content/Feature.php:84
+msgid "Multiple Profiles"
+msgstr "Mehrere Profile"
 
-#: src/Core/ACL.php:293
-msgid "Hide your profile details from unknown viewers?"
-msgstr "Profil-Details vor unbekannten Betrachtern verbergen?"
+#: src/Content/Feature.php:84
+msgid "Ability to create multiple profiles"
+msgstr "Möglichkeit, mehrere Profile zu erstellen"
 
-#: src/Core/ACL.php:292
-#, php-format
-msgid "Connectors disabled, since \"%s\" is enabled."
-msgstr "Konnektoren sind nicht verfügbar, da \"%s\" aktiv ist."
+#: src/Content/Feature.php:85
+msgid "Photo Location"
+msgstr "Aufnahmeort"
 
-#: src/Core/ACL.php:299
-msgid "Visible to everybody"
-msgstr "Für jeden sichtbar"
+#: src/Content/Feature.php:85
+msgid ""
+"Photo metadata is normally stripped. This extracts the location (if present)"
+" prior to stripping metadata and links it to a map."
+msgstr "Die Foto-Metadaten werden ausgelesen. Dadurch kann der Aufnahmeort (wenn vorhanden) in einer Karte angezeigt werden."
 
-#: src/Core/ACL.php:311
-msgid "Close"
-msgstr "Schließen"
+#: src/Content/Feature.php:86
+msgid "Export Public Calendar"
+msgstr "Öffentlichen Kalender exportieren"
 
-#: src/Core/Authentication.php:87
-msgid "Welcome "
-msgstr "Willkommen "
+#: src/Content/Feature.php:86
+msgid "Ability for visitors to download the public calendar"
+msgstr "Möglichkeit für Besucher, den Ã¶ffentlichen Kalender herunter zu laden"
 
-#: src/Core/Authentication.php:88
-msgid "Please upload a profile photo."
-msgstr "Bitte lade ein Profilbild hoch."
+#: src/Content/Feature.php:91
+msgid "Post Composition Features"
+msgstr "Beitragserstellung-Features"
 
-#: src/Core/Authentication.php:90
-msgid "Welcome back "
-msgstr "Willkommen zurück "
+#: src/Content/Feature.php:92
+msgid "Auto-mention Forums"
+msgstr "Foren automatisch erwähnen"
 
-#: src/Core/Installer.php:162
+#: src/Content/Feature.php:92
 msgid ""
-"The database configuration file \"config/local.config.php\" could not be "
-"written. Please use the enclosed text to create a configuration file in your"
-" web server root."
-msgstr "Die Datenbankkonfigurationsdatei \"config/local.config.php\" konnte nicht erstellt werden. Um eine Konfigurationsdatei in Ihrem Webserver-Verzeichnis zu erstellen, Gehen Sie wie folgt vor."
+"Add/remove mention when a forum page is selected/deselected in ACL window."
+msgstr "Automatisch eine @-Erwähnung eines Forums einfügen/entfehrnen, wenn dieses im ACL Fenster de-/markiert  wurde."
+
+#: src/Content/Feature.php:93
+msgid "Explicit Mentions"
+msgstr "Explizite Erwähnungen"
 
-#: src/Core/Installer.php:181
+#: src/Content/Feature.php:93
 msgid ""
-"You may need to import the file \"database.sql\" manually using phpmyadmin "
-"or mysql."
-msgstr "Möglicherweise musst Du die Datei \"database.sql\" manuell mit phpmyadmin oder mysql importieren."
+"Add explicit mentions to comment box for manual control over who gets "
+"mentioned in replies."
+msgstr "Füge Erwähnungen zum Kommentarfeld hinzu, um manuell Ã¼ber die explizite Erwähnung von Gesprächsteilnehmern zu entscheiden."
 
-#: src/Core/Installer.php:182 src/Module/Install.php:132
-#: src/Module/Install.php:263
-msgid "Please see the file \"INSTALL.txt\"."
-msgstr "Lies bitte die \"INSTALL.txt\"."
+#: src/Content/Feature.php:98
+msgid "Network Sidebar"
+msgstr "Netzwerk-Seitenleiste"
 
-#: src/Core/Installer.php:243
-msgid "Could not find a command line version of PHP in the web server PATH."
-msgstr "Konnte keine Kommandozeilenversion von PHP im PATH des Servers finden."
+#: src/Content/Feature.php:99
+msgid "Ability to select posts by date ranges"
+msgstr "Möglichkeit, die Beiträge nach Datumsbereichen zu sortieren"
 
-#: src/Core/Installer.php:244
-msgid ""
-"If you don't have a command line version of PHP installed on your server, "
-"you will not be able to run the background processing. See <a "
-"href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-"
-"up-the-worker'>'Setup the worker'</a>"
-msgstr "Wenn auf deinem Server keine Kommandozeilenversion von PHP installiert ist, kannst du den Hintergrundprozess nicht einrichten. Hier findest du alternative Möglichkeiten<a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-poller'>'für das Worker Setup'</a>"
+#: src/Content/Feature.php:100
+msgid "Protocol Filter"
+msgstr "Protokoll-Filter"
 
-#: src/Core/Installer.php:248
-msgid "PHP executable path"
-msgstr "Pfad zu PHP"
+#: src/Content/Feature.php:100
+msgid "Enable widget to display Network posts only from selected protocols"
+msgstr "Aktiviere Widget, um Netzwerkbeiträge nur von ausgesuchten Protokollen anzuzeigen"
 
-#: src/Core/Installer.php:248
-msgid ""
-"Enter full path to php executable. You can leave this blank to continue the "
-"installation."
-msgstr "Gib den kompletten Pfad zur ausführbaren Datei von PHP an. Du kannst dieses Feld auch frei lassen und mit der Installation fortfahren."
+#: src/Content/Feature.php:105
+msgid "Network Tabs"
+msgstr "Netzwerk-Reiter"
 
-#: src/Core/Installer.php:253
-msgid "Command line PHP"
-msgstr "Kommandozeilen-PHP"
+#: src/Content/Feature.php:106
+msgid "Network New Tab"
+msgstr "Netzwerk-Reiter: Neue"
 
-#: src/Core/Installer.php:262
-msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
-msgstr "Die ausführbare Datei von PHP stimmt nicht mit der PHP cli Version Ã¼berein (es könnte sich um die cgi-fgci Version handeln)"
+#: src/Content/Feature.php:106
+msgid "Enable tab to display only new Network posts (from the last 12 hours)"
+msgstr "Aktiviert einen Netzwerk-Reiter, in dem ausschließlich neue Beiträge (der letzten 12 Stunden) angezeigt werden"
 
-#: src/Core/Installer.php:263
-msgid "Found PHP version: "
-msgstr "Gefundene PHP Version:"
+#: src/Content/Feature.php:107
+msgid "Network Shared Links Tab"
+msgstr "Netzwerk-Reiter: Geteilte Links"
 
-#: src/Core/Installer.php:265
-msgid "PHP cli binary"
-msgstr "PHP CLI Binary"
+#: src/Content/Feature.php:107
+msgid "Enable tab to display only Network posts with links in them"
+msgstr "Aktiviert einen Netzwerk-Reiter, der ausschließlich Nachrichten mit Links enthält"
 
-#: src/Core/Installer.php:278
-msgid ""
-"The command line version of PHP on your system does not have "
-"\"register_argc_argv\" enabled."
-msgstr "Die Kommandozeilenversion von PHP auf Deinem System hat \"register_argc_argv\" nicht aktiviert."
+#: src/Content/Feature.php:112
+msgid "Post/Comment Tools"
+msgstr "Werkzeuge für Beiträge und Kommentare"
 
-#: src/Core/Installer.php:279
-msgid "This is required for message delivery to work."
-msgstr "Dies wird für die Auslieferung von Nachrichten benötigt."
+#: src/Content/Feature.php:113
+msgid "Post Categories"
+msgstr "Beitragskategorien"
 
-#: src/Core/Installer.php:284
-msgid "PHP register_argc_argv"
-msgstr "PHP register_argc_argv"
+#: src/Content/Feature.php:113
+msgid "Add categories to your posts"
+msgstr "Eigene Beiträge mit Kategorien versehen"
 
-#: src/Core/Installer.php:316
-msgid ""
-"Error: the \"openssl_pkey_new\" function on this system is not able to "
-"generate encryption keys"
-msgstr "Fehler: Die Funktion \"openssl_pkey_new\" auf diesem System ist nicht in der Lage, Verschlüsselungsschlüssel zu erzeugen"
-
-#: src/Core/Installer.php:317
-msgid ""
-"If running under Windows, please see "
-"\"http://www.php.net/manual/en/openssl.installation.php\"."
-msgstr "Wenn der Server unter Windows läuft, schau Dir bitte \"http://www.php.net/manual/en/openssl.installation.php\" an."
+#: src/Content/Feature.php:118
+msgid "Advanced Profile Settings"
+msgstr "Erweiterte Profil-Einstellungen"
 
-#: src/Core/Installer.php:320
-msgid "Generate encryption keys"
-msgstr "Schlüssel erzeugen"
+#: src/Content/Feature.php:119
+msgid "List Forums"
+msgstr "Zeige Foren"
 
-#: src/Core/Installer.php:371
-msgid ""
-"Error: Apache webserver mod-rewrite module is required but not installed."
-msgstr "Fehler: Das Apache-Modul mod-rewrite wird benötigt, es ist allerdings nicht installiert."
+#: src/Content/Feature.php:119
+msgid "Show visitors public community forums at the Advanced Profile Page"
+msgstr "Zeige Besuchern Ã¶ffentliche Gemeinschafts-Foren auf der Erweiterten Profil-Seite"
 
-#: src/Core/Installer.php:376
-msgid "Apache mod_rewrite module"
-msgstr "Apache mod_rewrite module"
+#: src/Content/Feature.php:120
+msgid "Tag Cloud"
+msgstr "Schlagwortwolke"
 
-#: src/Core/Installer.php:382
-msgid "Error: PDO or MySQLi PHP module required but not installed."
-msgstr "Fehler: PDO oder MySQLi PHP Modul erforderlich, aber nicht installiert."
+#: src/Content/Feature.php:120
+msgid "Provide a personal tag cloud on your profile page"
+msgstr "Wortwolke aus den von dir verwendeten Schlagwörtern im Profil anzeigen"
 
-#: src/Core/Installer.php:387
-msgid "Error: The MySQL driver for PDO is not installed."
-msgstr "Fehler: der MySQL Treiber für PDO ist nicht installiert"
+#: src/Content/Feature.php:121
+msgid "Display Membership Date"
+msgstr "Mitgliedschaftsdatum anzeigen"
 
-#: src/Core/Installer.php:391
-msgid "PDO or MySQLi PHP module"
-msgstr "PDO oder MySQLi PHP Modul"
+#: src/Content/Feature.php:121
+msgid "Display membership date in profile"
+msgstr "Das Datum der Registrierung deines Accounts im Profil anzeigen"
 
-#: src/Core/Installer.php:399
-msgid "Error, XML PHP module required but not installed."
-msgstr "Fehler: XML PHP Modul erforderlich aber nicht installiert."
+#: src/Content/ForumManager.php:130 src/Content/Nav.php:207
+#: src/Content/Text/HTML.php:914 view/theme/vier/theme.php:250
+msgid "Forums"
+msgstr "Foren"
 
-#: src/Core/Installer.php:403
-msgid "XML PHP module"
-msgstr "XML PHP Modul"
+#: src/Content/ForumManager.php:132 view/theme/vier/theme.php:252
+msgid "External link to forum"
+msgstr "Externer Link zum Forum"
 
-#: src/Core/Installer.php:406
-msgid "libCurl PHP module"
-msgstr "PHP: libCurl-Modul"
+#: src/Content/Nav.php:74
+msgid "Nothing new here"
+msgstr "Keine Neuigkeiten"
 
-#: src/Core/Installer.php:407
-msgid "Error: libCURL PHP module required but not installed."
-msgstr "Fehler: Das libCURL PHP Modul wird benötigt, ist aber nicht installiert."
+#: src/Content/Nav.php:78
+msgid "Clear notifications"
+msgstr "Bereinige Benachrichtigungen"
 
-#: src/Core/Installer.php:413
-msgid "GD graphics PHP module"
-msgstr "PHP: GD-Grafikmodul"
+#: src/Content/Nav.php:79 src/Content/Text/HTML.php:903
+msgid "@name, !forum, #tags, content"
+msgstr "@name, !forum, #tags, content"
 
-#: src/Core/Installer.php:414
-msgid ""
-"Error: GD graphics PHP module with JPEG support required but not installed."
-msgstr "Fehler: Das GD-Graphikmodul für PHP mit JPEG-Unterstützung ist nicht installiert."
+#: src/Content/Nav.php:153 src/Module/Login.php:321
+#: view/theme/frio/theme.php:259
+msgid "Logout"
+msgstr "Abmelden"
 
-#: src/Core/Installer.php:420
-msgid "OpenSSL PHP module"
-msgstr "PHP: OpenSSL-Modul"
+#: src/Content/Nav.php:153 view/theme/frio/theme.php:259
+msgid "End this session"
+msgstr "Diese Sitzung beenden"
 
-#: src/Core/Installer.php:421
-msgid "Error: openssl PHP module required but not installed."
-msgstr "Fehler: Das openssl-Modul von PHP ist nicht installiert."
+#: src/Content/Nav.php:156 src/Model/Profile.php:901
+#: src/Module/Contact.php:652 src/Module/Contact.php:853
+#: view/theme/frio/theme.php:262
+msgid "Status"
+msgstr "Status"
 
-#: src/Core/Installer.php:427
-msgid "mb_string PHP module"
-msgstr "PHP: mb_string-Modul"
+#: src/Content/Nav.php:156 src/Content/Nav.php:242
+#: view/theme/frio/theme.php:262
+msgid "Your posts and conversations"
+msgstr "Deine Beiträge und Unterhaltungen"
 
-#: src/Core/Installer.php:428
-msgid "Error: mb_string PHP module required but not installed."
-msgstr "Fehler: mb_string PHP Module wird benötigt ist aber nicht installiert."
+#: src/Content/Nav.php:157 view/theme/frio/theme.php:263
+msgid "Your profile page"
+msgstr "Deine Profilseite"
 
-#: src/Core/Installer.php:434
-msgid "iconv PHP module"
-msgstr "PHP iconv Modul"
+#: src/Content/Nav.php:158 view/theme/frio/theme.php:264
+msgid "Your photos"
+msgstr "Deine Fotos"
 
-#: src/Core/Installer.php:435
-msgid "Error: iconv PHP module required but not installed."
-msgstr "Fehler: Das iconv-Modul von PHP ist nicht installiert."
+#: src/Content/Nav.php:159 src/Model/Profile.php:925 src/Model/Profile.php:928
+#: view/theme/frio/theme.php:265
+msgid "Videos"
+msgstr "Videos"
 
-#: src/Core/Installer.php:441
-msgid "POSIX PHP module"
-msgstr "PHP POSIX Modul"
+#: src/Content/Nav.php:159 view/theme/frio/theme.php:265
+msgid "Your videos"
+msgstr "Deine Videos"
 
-#: src/Core/Installer.php:442
-msgid "Error: POSIX PHP module required but not installed."
-msgstr "Fehler POSIX PHP Modul erforderlich aber nicht installiert."
+#: src/Content/Nav.php:160 view/theme/frio/theme.php:266
+msgid "Your events"
+msgstr "Deine Ereignisse"
 
-#: src/Core/Installer.php:448
-msgid "JSON PHP module"
-msgstr "PHP JASON Modul"
+#: src/Content/Nav.php:161
+msgid "Personal notes"
+msgstr "Persönliche Notizen"
 
-#: src/Core/Installer.php:449
-msgid "Error: JSON PHP module required but not installed."
-msgstr "Fehler: Das JSON PHP Modul wird benötigt, ist aber nicht installiert."
+#: src/Content/Nav.php:161
+msgid "Your personal notes"
+msgstr "Deine persönlichen Notizen"
 
-#: src/Core/Installer.php:472
-msgid ""
-"The web installer needs to be able to create a file called "
-"\"local.config.php\" in the \"config\" folder of your web server and it is "
-"unable to do so."
-msgstr "Das Installationsprogramm muss in der Lage sein, eine Datei namens \"local.config.php\" im Ordner \"config\" Ihres Webservers zu erstellen, ist aber nicht in der Lager dazu."
+#: src/Content/Nav.php:170
+msgid "Sign in"
+msgstr "Anmelden"
 
-#: src/Core/Installer.php:473
-msgid ""
-"This is most often a permission setting, as the web server may not be able "
-"to write files in your folder - even if you can."
-msgstr "In den meisten Fällen ist dies ein Problem mit den Schreibrechten. Der Webserver könnte keine Schreiberlaubnis haben, selbst wenn Du sie hast."
+#: src/Content/Nav.php:180 src/Content/Nav.php:242
+#: src/Core/NotificationsManager.php:196
+msgid "Home"
+msgstr "Pinnwand"
 
-#: src/Core/Installer.php:474
-msgid ""
-"At the end of this procedure, we will give you a text to save in a file "
-"named local.config.php in your Friendica \"config\" folder."
-msgstr "Am Ende dieser Prozedur bekommst du einen Text der in der local.config.php im Friendica \"config\" Ordner gespeichert werden muss."
+#: src/Content/Nav.php:180
+msgid "Home Page"
+msgstr "Homepage"
 
-#: src/Core/Installer.php:475
-msgid ""
-"You can alternatively skip this procedure and perform a manual installation."
-" Please see the file \"INSTALL.txt\" for instructions."
-msgstr "Alternativ kannst Du diesen Schritt aber auch Ã¼berspringen und die Installation manuell durchführen. Eine Anleitung dazu (Englisch) findest Du in der Datei INSTALL.txt."
+#: src/Content/Nav.php:184 src/Module/Login.php:293
+#: src/Module/Register.php:136
+msgid "Register"
+msgstr "Registrieren"
 
-#: src/Core/Installer.php:478
-msgid "config/local.config.php is writable"
-msgstr "config/local.config.php ist schreibbar"
+#: src/Content/Nav.php:184
+msgid "Create an account"
+msgstr "Nutzerkonto erstellen"
 
-#: src/Core/Installer.php:498
-msgid ""
-"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
-"compiles templates to PHP to speed up rendering."
-msgstr "Friendica nutzt die Smarty3 Template Engine um die Webansichten zu rendern. Smarty3 kompiliert Templates zu PHP um das Rendern zu beschleunigen."
+#: src/Content/Nav.php:190
+msgid "Help and documentation"
+msgstr "Hilfe und Dokumentation"
 
-#: src/Core/Installer.php:499
-msgid ""
-"In order to store these compiled templates, the web server needs to have "
-"write access to the directory view/smarty3/ under the Friendica top level "
-"folder."
-msgstr "Um diese kompilierten Templates zu speichern benötigt der Webserver Schreibrechte zum Verzeichnis view/smarty3/ im obersten Ordner von Friendica."
+#: src/Content/Nav.php:194
+msgid "Apps"
+msgstr "Apps"
 
-#: src/Core/Installer.php:500
-msgid ""
-"Please ensure that the user that your web server runs as (e.g. www-data) has"
-" write access to this folder."
-msgstr "Bitte stelle sicher, dass der Nutzer unter dem der Webserver läuft (z.B. www-data) Schreibrechte zu diesem Verzeichnis hat."
+#: src/Content/Nav.php:194
+msgid "Addon applications, utilities, games"
+msgstr "Zusätzliche Anwendungen, Dienstprogramme, Spiele"
 
-#: src/Core/Installer.php:501
-msgid ""
-"Note: as a security measure, you should give the web server write access to "
-"view/smarty3/ only--not the template files (.tpl) that it contains."
-msgstr "Hinweis: aus Sicherheitsgründen solltest Du dem Webserver nur Schreibrechte für view/smarty3/ geben -- Nicht den Templatedateien (.tpl) die sie enthalten."
+#: src/Content/Nav.php:198
+msgid "Search site content"
+msgstr "Inhalt der Seite durchsuchen"
 
-#: src/Core/Installer.php:504
-msgid "view/smarty3 is writable"
-msgstr "view/smarty3 ist schreibbar"
+#: src/Content/Nav.php:201 src/Content/Text/HTML.php:909
+msgid "Full Text"
+msgstr "Volltext"
 
-#: src/Core/Installer.php:533
-msgid ""
-"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist"
-" to .htaccess."
-msgstr "Umschreiben der URLs in der .htaccess funktioniert nicht. Vergewissere dich, dass du .htaccess-dist nach.htaccess kopiert hast."
+#: src/Content/Nav.php:202 src/Content/Text/HTML.php:910
+#: src/Content/Widget/TagCloud.php:54
+msgid "Tags"
+msgstr "Tags"
 
-#: src/Core/Installer.php:535
-msgid "Error message from Curl when fetching"
-msgstr "Fehlermeldung von Curl während des Ladens"
+#: src/Content/Nav.php:222
+msgid "Community"
+msgstr "Gemeinschaft"
 
-#: src/Core/Installer.php:540
-msgid "Url rewrite is working"
-msgstr "URL rewrite funktioniert"
+#: src/Content/Nav.php:222
+msgid "Conversations on this and other servers"
+msgstr "Unterhaltungen auf diesem und anderen Servern"
 
-#: src/Core/Installer.php:569
-msgid "ImageMagick PHP extension is not installed"
-msgstr "ImageMagicx PHP Erweiterung ist nicht installiert."
+#: src/Content/Nav.php:226 src/Model/Profile.php:940 src/Model/Profile.php:951
+#: view/theme/frio/theme.php:270
+msgid "Events and Calendar"
+msgstr "Ereignisse und Kalender"
 
-#: src/Core/Installer.php:571
-msgid "ImageMagick PHP extension is installed"
-msgstr "ImageMagick PHP Erweiterung ist installiert"
+#: src/Content/Nav.php:229
+msgid "Directory"
+msgstr "Verzeichnis"
 
-#: src/Core/Installer.php:573 tests/src/Core/InstallerTest.php:329
-#: tests/src/Core/InstallerTest.php:355
-msgid "ImageMagick supports GIF"
-msgstr "ImageMagick unterstützt GIF"
+#: src/Content/Nav.php:229
+msgid "People directory"
+msgstr "Nutzerverzeichnis"
 
-#: src/Core/Installer.php:595
-msgid "Could not connect to database."
-msgstr "Verbindung zur Datenbank gescheitert."
+#: src/Content/Nav.php:231
+msgid "Information about this friendica instance"
+msgstr "Informationen zu dieser Friendica-Instanz"
 
-#: src/Core/Installer.php:602
-msgid "Database already in use."
-msgstr "Die Datenbank wird bereits verwendet."
+#: src/Content/Nav.php:234
+msgid "Terms of Service of this Friendica instance"
+msgstr "Die Nutzungsbedingungen dieser Friendica-Instanz"
 
-#: src/Core/L10n.php:368 src/Model/Event.php:398
-msgid "Tuesday"
-msgstr "Dienstag"
+#: src/Content/Nav.php:239 view/theme/frio/theme.php:269
+msgid "Conversations from your friends"
+msgstr "Unterhaltungen Deiner Kontakte"
 
-#: src/Core/L10n.php:368 src/Model/Event.php:399
-msgid "Wednesday"
-msgstr "Mittwoch"
+#: src/Content/Nav.php:240
+msgid "Network Reset"
+msgstr "Netzwerk zurücksetzen"
 
-#: src/Core/L10n.php:368 src/Model/Event.php:400
-msgid "Thursday"
-msgstr "Donnerstag"
+#: src/Content/Nav.php:240
+msgid "Load Network page with no filters"
+msgstr "Netzwerk-Seite ohne Filter laden"
 
-#: src/Core/L10n.php:368 src/Model/Event.php:401
-msgid "Friday"
-msgstr "Freitag"
+#: src/Content/Nav.php:246 src/Core/NotificationsManager.php:203
+msgid "Introductions"
+msgstr "Kontaktanfragen"
 
-#: src/Core/L10n.php:368 src/Model/Event.php:402
-msgid "Saturday"
-msgstr "Samstag"
+#: src/Content/Nav.php:246
+msgid "Friend Requests"
+msgstr "Kontaktanfragen"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:417
-msgid "January"
-msgstr "Januar"
+#: src/Content/Nav.php:248
+msgid "See all notifications"
+msgstr "Alle Benachrichtigungen anzeigen"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:418
-msgid "February"
-msgstr "Februar"
+#: src/Content/Nav.php:249
+msgid "Mark all system notifications seen"
+msgstr "Markiere alle Systembenachrichtigungen als gelesen"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:419
-msgid "March"
-msgstr "März"
+#: src/Content/Nav.php:252 view/theme/frio/theme.php:271
+msgid "Private mail"
+msgstr "Private E-Mail"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:420
-msgid "April"
-msgstr "April"
+#: src/Content/Nav.php:253
+msgid "Inbox"
+msgstr "Eingang"
 
-#: src/Core/L10n.php:372 src/Core/L10n.php:391 src/Model/Event.php:408
-msgid "May"
-msgstr "Mai"
+#: src/Content/Nav.php:254
+msgid "Outbox"
+msgstr "Ausgang"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:421
-msgid "June"
-msgstr "Juni"
+#: src/Content/Nav.php:258
+msgid "Manage"
+msgstr "Verwalten"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:422
-msgid "July"
-msgstr "Juli"
+#: src/Content/Nav.php:258
+msgid "Manage other pages"
+msgstr "Andere Seiten verwalten"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:423
-msgid "August"
-msgstr "August"
+#: src/Content/Nav.php:263 view/theme/frio/theme.php:272
+msgid "Account settings"
+msgstr "Kontoeinstellungen"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:424
-msgid "September"
-msgstr "September"
+#: src/Content/Nav.php:266
+msgid "Manage/Edit Profiles"
+msgstr "Profile verwalten/editieren"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:425
-msgid "October"
-msgstr "Oktober"
+#: src/Content/Nav.php:269 view/theme/frio/theme.php:273
+msgid "Manage/edit friends and contacts"
+msgstr "Freunde und Kontakte verwalten/bearbeiten"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:426
-msgid "November"
-msgstr "November"
+#: src/Content/Nav.php:274
+msgid "Site setup and configuration"
+msgstr "Einstellungen der Seite und Konfiguration"
 
-#: src/Core/L10n.php:372 src/Model/Event.php:427
-msgid "December"
-msgstr "Dezember"
+#: src/Content/Nav.php:277
+msgid "Navigation"
+msgstr "Navigation"
 
-#: src/Core/L10n.php:387 src/Model/Event.php:389
-msgid "Mon"
-msgstr "Mo"
+#: src/Content/Nav.php:277
+msgid "Site map"
+msgstr "Sitemap"
 
-#: src/Core/L10n.php:387 src/Model/Event.php:390
-msgid "Tue"
-msgstr "Di"
+#: src/Content/OEmbed.php:256
+msgid "Embedding disabled"
+msgstr "Einbettungen deaktiviert"
 
-#: src/Core/L10n.php:387 src/Model/Event.php:391
-msgid "Wed"
-msgstr "Mi"
+#: src/Content/OEmbed.php:379
+msgid "Embedded content"
+msgstr "Eingebetteter Inhalt"
 
-#: src/Core/L10n.php:387 src/Model/Event.php:392
-msgid "Thu"
-msgstr "Do"
+#: src/Content/Pager.php:153
+msgid "newer"
+msgstr "neuer"
 
-#: src/Core/L10n.php:387 src/Model/Event.php:393
-msgid "Fri"
-msgstr "Fr"
+#: src/Content/Pager.php:158
+msgid "older"
+msgstr "älter"
 
-#: src/Core/L10n.php:387 src/Model/Event.php:394
-msgid "Sat"
-msgstr "Sa"
+#: src/Content/Pager.php:203
+msgid "prev"
+msgstr "vorige"
 
-#: src/Core/L10n.php:387 src/Model/Event.php:388
-msgid "Sun"
-msgstr "So"
+#: src/Content/Pager.php:263
+msgid "last"
+msgstr "letzte"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:404
-msgid "Jan"
-msgstr "Jan"
+#: src/Content/Text/BBCode.php:429
+msgid "view full size"
+msgstr "Volle Größe anzeigen"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:405
-msgid "Feb"
-msgstr "Feb"
+#: src/Content/Text/BBCode.php:863 src/Content/Text/BBCode.php:1596
+#: src/Content/Text/BBCode.php:1597
+msgid "Image/photo"
+msgstr "Bild/Foto"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:406
-msgid "Mar"
-msgstr "März"
+#: src/Content/Text/BBCode.php:967
+#, php-format
+msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
+msgstr "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:407
-msgid "Apr"
-msgstr "Apr"
+#: src/Content/Text/BBCode.php:1523 src/Content/Text/BBCode.php:1545
+msgid "$1 wrote:"
+msgstr "$1 hat geschrieben:"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:410
-msgid "Jul"
-msgstr "Juli"
+#: src/Content/Text/BBCode.php:1607 src/Content/Text/BBCode.php:1608
+msgid "Encrypted content"
+msgstr "Verschlüsselter Inhalt"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:411
-msgid "Aug"
-msgstr "Aug"
+#: src/Content/Text/BBCode.php:1715
+msgid "Invalid source protocol"
+msgstr "Ungültiges Quell-Protokoll"
 
-#: src/Core/L10n.php:391
-msgid "Sep"
-msgstr "Sep"
+#: src/Content/Text/BBCode.php:1726
+msgid "Invalid link protocol"
+msgstr "Ungültiges Link-Protokoll"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:413
-msgid "Oct"
-msgstr "Okt"
+#: src/Content/Text/HTML.php:800
+msgid "Loading more entries..."
+msgstr "lade weitere Einträge..."
 
-#: src/Core/L10n.php:391 src/Model/Event.php:414
-msgid "Nov"
-msgstr "Nov"
+#: src/Content/Text/HTML.php:801
+msgid "The end"
+msgstr "Das Ende"
 
-#: src/Core/L10n.php:391 src/Model/Event.php:415
-msgid "Dec"
-msgstr "Dez"
+#: src/Content/Text/HTML.php:894
+msgid "Follow"
+msgstr "Folge"
 
-#: src/Core/L10n.php:410
-msgid "poke"
-msgstr "anstupsen"
+#: src/Content/Text/HTML.php:951 src/Model/Item.php:3503
+#: src/Model/Item.php:3514
+msgid "Click to open/close"
+msgstr "Zum Ã–ffnen/Schließen klicken"
 
-#: src/Core/L10n.php:410
-msgid "poked"
-msgstr "stupste"
+#: src/Content/Widget/CalendarExport.php:64
+msgid "Export"
+msgstr "Exportieren"
 
-#: src/Core/L10n.php:411
-msgid "ping"
-msgstr "anpingen"
+#: src/Content/Widget/CalendarExport.php:65
+msgid "Export calendar as ical"
+msgstr "Kalender als ical exportieren"
 
-#: src/Core/L10n.php:411
-msgid "pinged"
-msgstr "pingte"
+#: src/Content/Widget/CalendarExport.php:66
+msgid "Export calendar as csv"
+msgstr "Kalender als csv exportieren"
 
-#: src/Core/L10n.php:412
-msgid "prod"
-msgstr "knuffen"
+#: src/Content/Widget/ContactBlock.php:58
+msgid "No contacts"
+msgstr "Keine Kontakte"
 
-#: src/Core/L10n.php:412
-msgid "prodded"
-msgstr "knuffte"
+#: src/Content/Widget/ContactBlock.php:90
+#, php-format
+msgid "%d Contact"
+msgid_plural "%d Contacts"
+msgstr[0] "%d Kontakt"
+msgstr[1] "%d Kontakte"
 
-#: src/Core/L10n.php:413
-msgid "slap"
-msgstr "ohrfeigen"
+#: src/Content/Widget/ContactBlock.php:109
+msgid "View Contacts"
+msgstr "Kontakte anzeigen"
 
-#: src/Core/L10n.php:413
-msgid "slapped"
-msgstr "ohrfeigte"
+#: src/Content/Widget.php:35
+msgid "Add New Contact"
+msgstr "Neuen Kontakt hinzufügen"
 
-#: src/Core/L10n.php:414
-msgid "finger"
-msgstr "befummeln"
+#: src/Content/Widget.php:36
+msgid "Enter address or web location"
+msgstr "Adresse oder Web-Link eingeben"
 
-#: src/Core/L10n.php:414
-msgid "fingered"
-msgstr "befummelte"
+#: src/Content/Widget.php:37
+msgid "Example: bob@example.com, http://example.com/barbara"
+msgstr "Beispiel: bob@example.com, http://example.com/barbara"
 
-#: src/Core/L10n.php:415
-msgid "rebuff"
-msgstr "eine Abfuhr erteilen"
+#: src/Content/Widget.php:55
+#, php-format
+msgid "%d invitation available"
+msgid_plural "%d invitations available"
+msgstr[0] "%d Einladung verfügbar"
+msgstr[1] "%d Einladungen verfügbar"
 
-#: src/Core/L10n.php:415
-msgid "rebuffed"
-msgstr "abfuhrerteilte"
+#: src/Content/Widget.php:61 view/theme/vier/theme.php:199
+msgid "Find People"
+msgstr "Leute finden"
 
-#: src/Core/NotificationsManager.php:175
-msgid "System"
-msgstr "System"
+#: src/Content/Widget.php:62 view/theme/vier/theme.php:200
+msgid "Enter name or interest"
+msgstr "Name oder Interessen eingeben"
 
-#: src/Core/NotificationsManager.php:196 src/Content/Nav.php:180
-#: src/Content/Nav.php:242
-msgid "Home"
-msgstr "Pinnwand"
+#: src/Content/Widget.php:64 view/theme/vier/theme.php:202
+msgid "Examples: Robert Morgenstein, Fishing"
+msgstr "Beispiel: Robert Morgenstein, Angeln"
 
-#: src/Core/NotificationsManager.php:203 src/Content/Nav.php:246
-msgid "Introductions"
-msgstr "Kontaktanfragen"
+#: src/Content/Widget.php:67 view/theme/vier/theme.php:205
+msgid "Similar Interests"
+msgstr "Ähnliche Interessen"
 
-#: src/Core/NotificationsManager.php:265 src/Core/NotificationsManager.php:277
-#, php-format
-msgid "%s commented on %s's post"
-msgstr "%s hat %ss Beitrag kommentiert"
+#: src/Content/Widget.php:68 view/theme/vier/theme.php:206
+msgid "Random Profile"
+msgstr "Zufälliges Profil"
 
-#: src/Core/NotificationsManager.php:276
-#, php-format
-msgid "%s created a new post"
-msgstr "%s hat einen neuen Beitrag erstellt"
+#: src/Content/Widget.php:69 view/theme/vier/theme.php:207
+msgid "Invite Friends"
+msgstr "Freunde einladen"
 
-#: src/Core/NotificationsManager.php:290
-#, php-format
-msgid "%s liked %s's post"
-msgstr "%s mag %ss Beitrag"
+#: src/Content/Widget.php:72 view/theme/vier/theme.php:210
+msgid "Local Directory"
+msgstr "Lokales Verzeichnis"
 
-#: src/Core/NotificationsManager.php:303
-#, php-format
-msgid "%s disliked %s's post"
-msgstr "%s mag %ss Beitrag nicht"
+#: src/Content/Widget.php:158
+msgid "Protocols"
+msgstr "Protokolle"
 
-#: src/Core/NotificationsManager.php:316
-#, php-format
-msgid "%s is attending %s's event"
-msgstr "%s nimmt an %s's Event teil"
+#: src/Content/Widget.php:161
+msgid "All Protocols"
+msgstr "Alle Protokolle"
 
-#: src/Core/NotificationsManager.php:329
-#, php-format
-msgid "%s is not attending %s's event"
-msgstr "%s nimmt nicht an %s's Event teil"
+#: src/Content/Widget.php:198
+msgid "Saved Folders"
+msgstr "Gespeicherte Ordner"
 
-#: src/Core/NotificationsManager.php:342
+#: src/Content/Widget.php:201 src/Content/Widget.php:243
+msgid "Everything"
+msgstr "Alles"
+
+#: src/Content/Widget.php:240
+msgid "Categories"
+msgstr "Kategorien"
+
+#: src/Content/Widget.php:324
 #, php-format
-msgid "%s may attend %s's event"
-msgstr "%s nimmt eventuell an %s's Event teil"
+msgid "%d contact in common"
+msgid_plural "%d contacts in common"
+msgstr[0] "%d gemeinsamer Kontakt"
+msgstr[1] "%d gemeinsame Kontakte"
 
-#: src/Core/NotificationsManager.php:375
+#: src/Core/ACL.php:287
+msgid "Post to Email"
+msgstr "An E-Mail senden"
+
+#: src/Core/ACL.php:293
+msgid "Hide your profile details from unknown viewers?"
+msgstr "Profil-Details vor unbekannten Betrachtern verbergen?"
+
+#: src/Core/ACL.php:292
 #, php-format
-msgid "%s is now friends with %s"
-msgstr "%s ist jetzt mit %s befreundet"
+msgid "Connectors disabled, since \"%s\" is enabled."
+msgstr "Konnektoren sind nicht verfügbar, da \"%s\" aktiv ist."
 
-#: src/Core/NotificationsManager.php:651
-msgid "Friend Suggestion"
-msgstr "Kontaktvorschlag"
+#: src/Core/ACL.php:299
+msgid "Visible to everybody"
+msgstr "Für jeden sichtbar"
 
-#: src/Core/NotificationsManager.php:685
-msgid "Friend/Connect Request"
-msgstr "Kontakt-/Freundschaftsanfrage"
+#: src/Core/ACL.php:300 view/theme/vier/config.php:116
+msgid "show"
+msgstr "zeigen"
 
-#: src/Core/NotificationsManager.php:685
-msgid "New Follower"
-msgstr "Neuer Bewunderer"
+#: src/Core/ACL.php:301 view/theme/vier/config.php:116
+msgid "don't show"
+msgstr "nicht zeigen"
 
-#: src/Core/System.php:137
-msgid "Error 400 - Bad Request"
-msgstr "Error 400 - Bad Request"
+#: src/Core/ACL.php:311
+msgid "Close"
+msgstr "Schließen"
 
-#: src/Core/System.php:138
-msgid "Error 401 - Unauthorized"
-msgstr "Error 401 - Unauthorized"
+#: src/Core/Authentication.php:87
+msgid "Welcome "
+msgstr "Willkommen "
 
-#: src/Core/System.php:139
-msgid "Error 403 - Forbidden"
-msgstr "Error 403 - Forbidden"
+#: src/Core/Authentication.php:88
+msgid "Please upload a profile photo."
+msgstr "Bitte lade ein Profilbild hoch."
 
-#: src/Core/System.php:140
-msgid "Error 404 - Not Found"
-msgstr "Error 404 - Not Found"
+#: src/Core/Authentication.php:90
+msgid "Welcome back "
+msgstr "Willkommen zurück "
 
-#: src/Core/System.php:141
-msgid "Error 500 - Internal Server Error"
-msgstr "Error 500 - Internal Server Error"
+#: src/Core/Console/ArchiveContact.php:65
+#, php-format
+msgid "Could not find any unarchived contact entry for this URL (%s)"
+msgstr "Für die URL (%s) konnte kein nicht-archivierter Kontakt gefunden werden"
 
-#: src/Core/System.php:142
-msgid "Error 503 - Service Unavailable"
-msgstr "Error 503 - Service Unavailable"
+#: src/Core/Console/ArchiveContact.php:70
+msgid "The contact entries have been archived"
+msgstr "Die Kontakteinträge wurden archiviert."
 
-#: src/Core/System.php:150
-msgid ""
-"The server cannot or will not process the request due to an apparent client "
-"error."
-msgstr "Aufgrund eines offensichtlichen Fehlers auf der Seite des Clients kann oder wird die Anfrage nicht bearbeitet."
+#: src/Core/Console/NewPassword.php:72
+msgid "Enter new password: "
+msgstr "Neues Passwort eingeben:"
 
-#: src/Core/System.php:151
-msgid ""
-"Authentication is required and has failed or has not yet been provided."
-msgstr "Die erforderliche Authentifizierung ist fehlgeschlagen oder noch nicht erfolgt."
+#: src/Core/Console/PostUpdate.php:50
+#, php-format
+msgid "Post update version number has been set to %s."
+msgstr "Die Post-Update-Versionsnummer wurde auf %s gesetzt."
 
-#: src/Core/System.php:152
-msgid ""
-"The request was valid, but the server is refusing action. The user might not"
-" have the necessary permissions for a resource, or may need an account."
-msgstr "Die Anfrage war gültig aber der Server verweigert die Ausführung. Der Benutzer verfügt möglicherweise nicht Ã¼ber die erforderlichen Berechtigungen oder benötigt ein Nutzerkonto."
+#: src/Core/Console/PostUpdate.php:58
+msgid "Check for pending update actions."
+msgstr "Ãœberprüfe ausstehende Update-Aktionen"
 
-#: src/Core/System.php:153
-msgid ""
-"The requested resource could not be found but may be available in the "
-"future."
-msgstr "Die angeforderte Ressource konnte nicht gefunden werden, sie könnte allerdings zu einem späteren Zeitpunkt verfügbar sein."
+#: src/Core/Console/PostUpdate.php:60
+msgid "Done."
+msgstr "Erledigt."
 
-#: src/Core/System.php:154
+#: src/Core/Console/PostUpdate.php:62
+msgid "Execute pending post updates."
+msgstr "Ausstehende Post-Updates ausführen"
+
+#: src/Core/Console/PostUpdate.php:68
+msgid "All pending post updates are done."
+msgstr "Alle ausstehenden Post-Updates wurden ausgeführt."
+
+#: src/Core/Installer.php:163
 msgid ""
-"An unexpected condition was encountered and no more specific message is "
-"suitable."
-msgstr "Eine unerwartete Situation ist eingetreten zu der keine detailliertere Nachricht vorliegt."
+"The database configuration file \"config/local.config.php\" could not be "
+"written. Please use the enclosed text to create a configuration file in your"
+" web server root."
+msgstr "Die Datenbankkonfigurationsdatei \"config/local.config.php\" konnte nicht erstellt werden. Um eine Konfigurationsdatei in Ihrem Webserver-Verzeichnis zu erstellen, gehe wie folgt vor."
 
-#: src/Core/System.php:155
+#: src/Core/Installer.php:182
 msgid ""
-"The server is currently unavailable (because it is overloaded or down for "
-"maintenance). Please try again later."
-msgstr "Der Server ist derzeit nicht Verfügbar (wegen Ãœberlastung oder Wartungsarbeiten). Bitte versuchen Sie es später noch einmal."
+"You may need to import the file \"database.sql\" manually using phpmyadmin "
+"or mysql."
+msgstr "Möglicherweise musst du die Datei \"database.sql\" manuell mit phpmyadmin oder mysql importieren."
 
-#: src/Core/Update.php:168
-#, php-format
-msgid "Update %s failed. See error logs."
-msgstr "Update %s fehlgeschlagen. Bitte Fehlerprotokoll Ã¼berprüfen."
+#: src/Core/Installer.php:183 src/Module/Install.php:132
+#: src/Module/Install.php:263
+msgid "Please see the file \"INSTALL.txt\"."
+msgstr "Lies bitte die \"INSTALL.txt\"."
 
-#: src/Core/Update.php:225
-#, php-format
-msgid ""
-"\n"
-"\t\t\t\tThe friendica developers released update %s recently,\n"
-"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
-"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n"
-"\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
-msgstr "\nDie Friendica-Entwickler haben vor kurzem das Update %s veröffentlicht, aber bei der Installation ging etwas schrecklich schief.\n\nDas Problem sollte so schnell wie möglich gelöst werden, aber ich schaffe es nicht alleine. Bitte kontaktiere einen Friendica-Entwickler falls Du mir nicht alleine helfen kannst. Meine Datenbank könnte ungültig sein."
+#: src/Core/Installer.php:244
+msgid "Could not find a command line version of PHP in the web server PATH."
+msgstr "Konnte keine Kommandozeilenversion von PHP im PATH des Servers finden."
 
-#: src/Core/Update.php:231
-#, php-format
+#: src/Core/Installer.php:245
 msgid ""
-"The error message is\n"
-"[pre]%s[/pre]"
-msgstr "Die Fehlermeldung lautet\n[pre]%s[/pre]"
+"If you don't have a command line version of PHP installed on your server, "
+"you will not be able to run the background processing. See <a "
+"href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-"
+"up-the-worker'>'Setup the worker'</a>"
+msgstr "Wenn auf deinem Server keine Kommandozeilenversion von PHP installiert ist, kannst du den Hintergrundprozess nicht einrichten. Hier findest du alternative Möglichkeiten<a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-poller'>'für das Worker-Setup'</a>"
 
-#: src/Core/Update.php:260
-#, php-format
+#: src/Core/Installer.php:249
+msgid "PHP executable path"
+msgstr "Pfad zu PHP"
+
+#: src/Core/Installer.php:249
 msgid ""
-"\n"
-"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
-msgstr "\n \t\t\t\t\tDie Friendica Datenbank wurde erfolgreich von %s auf %s aktualisiert."
+"Enter full path to php executable. You can leave this blank to continue the "
+"installation."
+msgstr "Gib den kompletten Pfad zur ausführbaren Datei von PHP an. Du kannst dieses Feld auch frei lassen und mit der Installation fortfahren."
 
-#: src/Core/UserImport.php:103
-msgid "Error decoding account file"
-msgstr "Fehler beim Verarbeiten der Account Datei"
+#: src/Core/Installer.php:254
+msgid "Command line PHP"
+msgstr "Kommandozeilen-PHP"
 
-#: src/Core/UserImport.php:109
-msgid "Error! No version data in file! This is not a Friendica account file?"
-msgstr "Fehler! Keine Versionsdaten in der Datei! Ist das wirklich eine Friendica Account Datei?"
+#: src/Core/Installer.php:263
+msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
+msgstr "Die ausführbare Datei von PHP stimmt nicht mit der PHP cli Version Ã¼berein (es könnte sich um die cgi-fgci Version handeln)"
 
-#: src/Core/UserImport.php:117
-#, php-format
-msgid "User '%s' already exists on this server!"
-msgstr "Nutzer '%s' existiert bereits auf diesem Server!"
+#: src/Core/Installer.php:264
+msgid "Found PHP version: "
+msgstr "Gefundene PHP Version:"
 
-#: src/Core/UserImport.php:153
-msgid "User creation error"
-msgstr "Fehler beim Anlegen des Nutzeraccounts aufgetreten"
+#: src/Core/Installer.php:266
+msgid "PHP cli binary"
+msgstr "PHP CLI Binary"
 
-#: src/Core/UserImport.php:171
-msgid "User profile creation error"
-msgstr "Fehler beim Anlegen des Nutzerkontos"
+#: src/Core/Installer.php:279
+msgid ""
+"The command line version of PHP on your system does not have "
+"\"register_argc_argv\" enabled."
+msgstr "Die Kommandozeilenversion von PHP auf Deinem System hat \"register_argc_argv\" nicht aktiviert."
 
-#: src/Core/UserImport.php:215
-#, php-format
-msgid "%d contact not imported"
-msgid_plural "%d contacts not imported"
-msgstr[0] "%d Kontakt nicht importiert"
-msgstr[1] "%d Kontakte nicht importiert"
+#: src/Core/Installer.php:280
+msgid "This is required for message delivery to work."
+msgstr "Dies wird für die Auslieferung von Nachrichten benötigt."
 
-#: src/Core/UserImport.php:280
-msgid "Done. You can now login with your username and password"
-msgstr "Erledigt. Du kannst Dich jetzt mit Deinem Nutzernamen und Passwort anmelden"
+#: src/Core/Installer.php:285
+msgid "PHP register_argc_argv"
+msgstr "PHP register_argc_argv"
 
-#: src/Util/Temporal.php:147 src/Model/Profile.php:771
-msgid "Birthday:"
-msgstr "Geburtstag:"
+#: src/Core/Installer.php:317
+msgid ""
+"Error: the \"openssl_pkey_new\" function on this system is not able to "
+"generate encryption keys"
+msgstr "Fehler: Die Funktion \"openssl_pkey_new\" auf diesem System ist nicht in der Lage, Verschlüsselungsschlüssel zu erzeugen"
 
-#: src/Util/Temporal.php:151
-msgid "YYYY-MM-DD or MM-DD"
-msgstr "YYYY-MM-DD oder MM-DD"
+#: src/Core/Installer.php:318
+msgid ""
+"If running under Windows, please see "
+"\"http://www.php.net/manual/en/openssl.installation.php\"."
+msgstr "Wenn der Server unter Windows läuft, schau dir bitte \"http://www.php.net/manual/en/openssl.installation.php\" an."
 
-#: src/Util/Temporal.php:298
-msgid "never"
-msgstr "nie"
+#: src/Core/Installer.php:321
+msgid "Generate encryption keys"
+msgstr "Schlüssel erzeugen"
 
-#: src/Util/Temporal.php:305
-msgid "less than a second ago"
-msgstr "vor weniger als einer Sekunde"
+#: src/Core/Installer.php:372
+msgid ""
+"Error: Apache webserver mod-rewrite module is required but not installed."
+msgstr "Fehler: Das Apache-Modul mod-rewrite wird benötigt, es ist allerdings nicht installiert."
 
-#: src/Util/Temporal.php:313
-msgid "year"
-msgstr "Jahr"
-
-#: src/Util/Temporal.php:313
-msgid "years"
-msgstr "Jahre"
+#: src/Core/Installer.php:377
+msgid "Apache mod_rewrite module"
+msgstr "Apache mod_rewrite module"
 
-#: src/Util/Temporal.php:314
-msgid "months"
-msgstr "Monate"
+#: src/Core/Installer.php:383
+msgid "Error: PDO or MySQLi PHP module required but not installed."
+msgstr "Fehler: PDO oder MySQLi PHP Modul erforderlich, aber nicht installiert."
 
-#: src/Util/Temporal.php:315
-msgid "weeks"
-msgstr "Wochen"
+#: src/Core/Installer.php:388
+msgid "Error: The MySQL driver for PDO is not installed."
+msgstr "Fehler: der MySQL Treiber für PDO ist nicht installiert"
 
-#: src/Util/Temporal.php:316
-msgid "days"
-msgstr "Tage"
+#: src/Core/Installer.php:392
+msgid "PDO or MySQLi PHP module"
+msgstr "PDO oder MySQLi PHP Modul"
 
-#: src/Util/Temporal.php:317
-msgid "hour"
-msgstr "Stunde"
+#: src/Core/Installer.php:400
+msgid "Error, XML PHP module required but not installed."
+msgstr "Fehler: XML PHP Modul erforderlich aber nicht installiert."
 
-#: src/Util/Temporal.php:317
-msgid "hours"
-msgstr "Stunden"
+#: src/Core/Installer.php:404
+msgid "XML PHP module"
+msgstr "XML PHP Modul"
 
-#: src/Util/Temporal.php:318
-msgid "minute"
-msgstr "Minute"
+#: src/Core/Installer.php:407
+msgid "libCurl PHP module"
+msgstr "PHP: libCurl-Modul"
 
-#: src/Util/Temporal.php:318
-msgid "minutes"
-msgstr "Minuten"
+#: src/Core/Installer.php:408
+msgid "Error: libCURL PHP module required but not installed."
+msgstr "Fehler: Das libCURL PHP Modul wird benötigt, ist aber nicht installiert."
 
-#: src/Util/Temporal.php:319
-msgid "second"
-msgstr "Sekunde"
+#: src/Core/Installer.php:414
+msgid "GD graphics PHP module"
+msgstr "PHP: GD-Grafikmodul"
 
-#: src/Util/Temporal.php:319
-msgid "seconds"
-msgstr "Sekunden"
+#: src/Core/Installer.php:415
+msgid ""
+"Error: GD graphics PHP module with JPEG support required but not installed."
+msgstr "Fehler: Das GD-Graphikmodul für PHP mit JPEG-Unterstützung ist nicht installiert."
 
-#: src/Util/Temporal.php:329
-#, php-format
-msgid "in %1$d %2$s"
-msgstr "in %1$d %2$s"
+#: src/Core/Installer.php:421
+msgid "OpenSSL PHP module"
+msgstr "PHP: OpenSSL-Modul"
 
-#: src/Util/Temporal.php:332
-#, php-format
-msgid "%1$d %2$s ago"
-msgstr "vor %1$d %2$s"
+#: src/Core/Installer.php:422
+msgid "Error: openssl PHP module required but not installed."
+msgstr "Fehler: Das openssl-Modul von PHP ist nicht installiert."
 
-#: src/Content/Text/BBCode.php:429
-msgid "view full size"
-msgstr "Volle Größe anzeigen"
+#: src/Core/Installer.php:428
+msgid "mb_string PHP module"
+msgstr "PHP: mb_string-Modul"
 
-#: src/Content/Text/BBCode.php:863 src/Content/Text/BBCode.php:1596
-#: src/Content/Text/BBCode.php:1597
-msgid "Image/photo"
-msgstr "Bild/Foto"
+#: src/Core/Installer.php:429
+msgid "Error: mb_string PHP module required but not installed."
+msgstr "Fehler: mb_string PHP Module wird benötigt, ist aber nicht installiert."
 
-#: src/Content/Text/BBCode.php:967
-#, php-format
-msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
-msgstr "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
+#: src/Core/Installer.php:435
+msgid "iconv PHP module"
+msgstr "PHP iconv Modul"
 
-#: src/Content/Text/BBCode.php:1523 src/Content/Text/BBCode.php:1545
-msgid "$1 wrote:"
-msgstr "$1 hat geschrieben:"
+#: src/Core/Installer.php:436
+msgid "Error: iconv PHP module required but not installed."
+msgstr "Fehler: Das iconv-Modul von PHP ist nicht installiert."
 
-#: src/Content/Text/BBCode.php:1607 src/Content/Text/BBCode.php:1608
-msgid "Encrypted content"
-msgstr "Verschlüsselter Inhalt"
+#: src/Core/Installer.php:442
+msgid "POSIX PHP module"
+msgstr "PHP POSIX Modul"
 
-#: src/Content/Text/BBCode.php:1715
-msgid "Invalid source protocol"
-msgstr "Ungültiges Quell-Protokoll"
+#: src/Core/Installer.php:443
+msgid "Error: POSIX PHP module required but not installed."
+msgstr "Fehler POSIX PHP Modul erforderlich, aber nicht installiert."
 
-#: src/Content/Text/BBCode.php:1726
-msgid "Invalid link protocol"
-msgstr "Ungültiges Link-Protokoll"
+#: src/Core/Installer.php:449
+msgid "JSON PHP module"
+msgstr "PHP JASON Modul"
 
-#: src/Content/Text/HTML.php:800
-msgid "Loading more entries..."
-msgstr "lade weitere Einträge..."
+#: src/Core/Installer.php:450
+msgid "Error: JSON PHP module required but not installed."
+msgstr "Fehler: Das JSON PHP Modul wird benötigt, ist aber nicht installiert."
 
-#: src/Content/Text/HTML.php:801
-msgid "The end"
-msgstr "Das Ende"
+#: src/Core/Installer.php:473
+msgid ""
+"The web installer needs to be able to create a file called "
+"\"local.config.php\" in the \"config\" folder of your web server and it is "
+"unable to do so."
+msgstr "Das Installationsprogramm muss in der Lage sein, eine Datei namens \"local.config.php\" im Ordner \"config\" Ihres Webservers zu erstellen, ist aber nicht in der Lage dazu."
 
-#: src/Content/Text/HTML.php:894
-msgid "Follow"
-msgstr "Folge"
+#: src/Core/Installer.php:474
+msgid ""
+"This is most often a permission setting, as the web server may not be able "
+"to write files in your folder - even if you can."
+msgstr "In den meisten Fällen ist dies ein Problem mit den Schreibrechten. Der Webserver könnte keine Schreiberlaubnis haben, selbst wenn du sie hast."
 
-#: src/Content/Text/HTML.php:903 src/Content/Nav.php:79
-msgid "@name, !forum, #tags, content"
-msgstr "@name, !forum, #tags, content"
+#: src/Core/Installer.php:475
+msgid ""
+"At the end of this procedure, we will give you a text to save in a file "
+"named local.config.php in your Friendica \"config\" folder."
+msgstr "Am Ende dieser Prozedur bekommst du einen Text, der in der local.config.php im Friendica \"config\" Ordner gespeichert werden muss."
 
-#: src/Content/Text/HTML.php:909 src/Content/Nav.php:201
-msgid "Full Text"
-msgstr "Volltext"
+#: src/Core/Installer.php:476
+msgid ""
+"You can alternatively skip this procedure and perform a manual installation."
+" Please see the file \"INSTALL.txt\" for instructions."
+msgstr "Alternativ kannst du diesen Schritt aber auch Ã¼berspringen und die Installation manuell durchführen. Eine Anleitung dazu (Englisch) findest du in der Datei INSTALL.txt."
 
-#: src/Content/Text/HTML.php:910 src/Content/Widget/TagCloud.php:54
-#: src/Content/Nav.php:202
-msgid "Tags"
-msgstr "Tags"
+#: src/Core/Installer.php:479
+msgid "config/local.config.php is writable"
+msgstr "config/local.config.php ist schreibbar"
 
-#: src/Content/Text/HTML.php:951 src/Model/Item.php:3485
-#: src/Model/Item.php:3496
-msgid "Click to open/close"
-msgstr "Zum Ã¶ffnen/schließen klicken"
+#: src/Core/Installer.php:499
+msgid ""
+"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
+"compiles templates to PHP to speed up rendering."
+msgstr "Friendica nutzt die Smarty3-Template-Engine, um die Webansichten zu rendern. Smarty3 kompiliert Templates zu PHP, um das Rendern zu beschleunigen."
 
-#: src/Content/Widget/CalendarExport.php:64
-msgid "Export"
-msgstr "Exportieren"
+#: src/Core/Installer.php:500
+msgid ""
+"In order to store these compiled templates, the web server needs to have "
+"write access to the directory view/smarty3/ under the Friendica top level "
+"folder."
+msgstr "Um diese kompilierten Templates zu speichern, benötigt der Webserver Schreibrechte zum Verzeichnis view/smarty3/ im obersten Ordner von Friendica."
 
-#: src/Content/Widget/CalendarExport.php:65
-msgid "Export calendar as ical"
-msgstr "Kalender als ical exportieren"
+#: src/Core/Installer.php:501
+msgid ""
+"Please ensure that the user that your web server runs as (e.g. www-data) has"
+" write access to this folder."
+msgstr "Bitte stelle sicher, dass der Nutzer, unter dem der Webserver läuft (z.B. www-data), Schreibrechte zu diesem Verzeichnis hat."
 
-#: src/Content/Widget/CalendarExport.php:66
-msgid "Export calendar as csv"
-msgstr "Kalender als csv exportieren"
+#: src/Core/Installer.php:502
+msgid ""
+"Note: as a security measure, you should give the web server write access to "
+"view/smarty3/ only--not the template files (.tpl) that it contains."
+msgstr "Hinweis: aus Sicherheitsgründen solltest du dem Webserver nur Schreibrechte für view/smarty3/ geben -- Nicht für die darin enthaltenen Template-Dateien (.tpl)."
 
-#: src/Content/Widget/ContactBlock.php:58
-msgid "No contacts"
-msgstr "Keine Kontakte"
+#: src/Core/Installer.php:505
+msgid "view/smarty3 is writable"
+msgstr "view/smarty3 ist schreibbar"
 
-#: src/Content/Widget/ContactBlock.php:90
-#, php-format
-msgid "%d Contact"
-msgid_plural "%d Contacts"
-msgstr[0] "%d Kontakt"
-msgstr[1] "%d Kontakte"
+#: src/Core/Installer.php:534
+msgid ""
+"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist"
+" to .htaccess."
+msgstr "Umschreiben der URLs in der .htaccess funktioniert nicht. Vergewissere dich, dass du .htaccess-dist nach.htaccess kopiert hast."
 
-#: src/Content/Widget/ContactBlock.php:109
-msgid "View Contacts"
-msgstr "Kontakte anzeigen"
+#: src/Core/Installer.php:536
+msgid "Error message from Curl when fetching"
+msgstr "Fehlermeldung von Curl während des Ladens"
 
-#: src/Content/ContactSelector.php:58
-msgid "Frequently"
-msgstr "immer wieder"
+#: src/Core/Installer.php:541
+msgid "Url rewrite is working"
+msgstr "URL rewrite funktioniert"
 
-#: src/Content/ContactSelector.php:59
-msgid "Hourly"
-msgstr "Stündlich"
+#: src/Core/Installer.php:570
+msgid "ImageMagick PHP extension is not installed"
+msgstr "ImageMagicx PHP Erweiterung ist nicht installiert."
 
-#: src/Content/ContactSelector.php:60
-msgid "Twice daily"
-msgstr "Zweimal täglich"
+#: src/Core/Installer.php:572
+msgid "ImageMagick PHP extension is installed"
+msgstr "ImageMagick PHP Erweiterung ist installiert"
 
-#: src/Content/ContactSelector.php:61
-msgid "Daily"
-msgstr "Täglich"
+#: src/Core/Installer.php:574 tests/src/Core/InstallerTest.php:329
+#: tests/src/Core/InstallerTest.php:355
+msgid "ImageMagick supports GIF"
+msgstr "ImageMagick unterstützt GIF"
 
-#: src/Content/ContactSelector.php:62
-msgid "Weekly"
-msgstr "Wöchentlich"
+#: src/Core/Installer.php:597
+msgid "Could not connect to database."
+msgstr "Verbindung zur Datenbank gescheitert."
 
-#: src/Content/ContactSelector.php:63
-msgid "Monthly"
-msgstr "Monatlich"
+#: src/Core/Installer.php:604
+msgid "Database already in use."
+msgstr "Die Datenbank wird bereits verwendet."
 
-#: src/Content/ContactSelector.php:83
-msgid "DFRN"
-msgstr "DFRN"
+#: src/Core/L10n.php:368 src/Model/Event.php:397
+msgid "Tuesday"
+msgstr "Dienstag"
 
-#: src/Content/ContactSelector.php:84
-msgid "OStatus"
-msgstr "OStatus"
+#: src/Core/L10n.php:368 src/Model/Event.php:398
+msgid "Wednesday"
+msgstr "Mittwoch"
 
-#: src/Content/ContactSelector.php:85
-msgid "RSS/Atom"
-msgstr "RSS/Atom"
+#: src/Core/L10n.php:368 src/Model/Event.php:399
+msgid "Thursday"
+msgstr "Donnerstag"
 
-#: src/Content/ContactSelector.php:88
-msgid "Zot!"
-msgstr "Zott"
+#: src/Core/L10n.php:368 src/Model/Event.php:400
+msgid "Friday"
+msgstr "Freitag"
 
-#: src/Content/ContactSelector.php:89
-msgid "LinkedIn"
-msgstr "LinkedIn"
+#: src/Core/L10n.php:368 src/Model/Event.php:401
+msgid "Saturday"
+msgstr "Samstag"
 
-#: src/Content/ContactSelector.php:90
-msgid "XMPP/IM"
-msgstr "XMPP/Chat"
+#: src/Core/L10n.php:372 src/Model/Event.php:416
+msgid "January"
+msgstr "Januar"
 
-#: src/Content/ContactSelector.php:91
-msgid "MySpace"
-msgstr "MySpace"
-
-#: src/Content/ContactSelector.php:92
-msgid "Google+"
-msgstr "Google+"
+#: src/Core/L10n.php:372 src/Model/Event.php:417
+msgid "February"
+msgstr "Februar"
 
-#: src/Content/ContactSelector.php:93
-msgid "pump.io"
-msgstr "pump.io"
+#: src/Core/L10n.php:372 src/Model/Event.php:418
+msgid "March"
+msgstr "März"
 
-#: src/Content/ContactSelector.php:94
-msgid "Twitter"
-msgstr "Twitter"
+#: src/Core/L10n.php:372 src/Model/Event.php:419
+msgid "April"
+msgstr "April"
 
-#: src/Content/ContactSelector.php:95
-msgid "Diaspora Connector"
-msgstr "Diaspora Connector"
+#: src/Core/L10n.php:372 src/Core/L10n.php:391 src/Model/Event.php:407
+msgid "May"
+msgstr "Mai"
 
-#: src/Content/ContactSelector.php:96
-msgid "GNU Social Connector"
-msgstr "GNU Social Connector"
+#: src/Core/L10n.php:372 src/Model/Event.php:420
+msgid "June"
+msgstr "Juni"
 
-#: src/Content/ContactSelector.php:97
-msgid "ActivityPub"
-msgstr "ActivityPub"
+#: src/Core/L10n.php:372 src/Model/Event.php:421
+msgid "July"
+msgstr "Juli"
 
-#: src/Content/ContactSelector.php:98
-msgid "pnut"
-msgstr "pnut"
+#: src/Core/L10n.php:372 src/Model/Event.php:422
+msgid "August"
+msgstr "August"
 
-#: src/Content/ContactSelector.php:154
-msgid "Male"
-msgstr "Männlich"
+#: src/Core/L10n.php:372 src/Model/Event.php:423
+msgid "September"
+msgstr "September"
 
-#: src/Content/ContactSelector.php:155
-msgid "Female"
-msgstr "Weiblich"
+#: src/Core/L10n.php:372 src/Model/Event.php:424
+msgid "October"
+msgstr "Oktober"
 
-#: src/Content/ContactSelector.php:156
-msgid "Currently Male"
-msgstr "Momentan männlich"
+#: src/Core/L10n.php:372 src/Model/Event.php:425
+msgid "November"
+msgstr "November"
 
-#: src/Content/ContactSelector.php:157
-msgid "Currently Female"
-msgstr "Momentan weiblich"
+#: src/Core/L10n.php:372 src/Model/Event.php:426
+msgid "December"
+msgstr "Dezember"
 
-#: src/Content/ContactSelector.php:158
-msgid "Mostly Male"
-msgstr "Hauptsächlich männlich"
+#: src/Core/L10n.php:387 src/Model/Event.php:388
+msgid "Mon"
+msgstr "Mo"
 
-#: src/Content/ContactSelector.php:159
-msgid "Mostly Female"
-msgstr "Hauptsächlich weiblich"
+#: src/Core/L10n.php:387 src/Model/Event.php:389
+msgid "Tue"
+msgstr "Di"
 
-#: src/Content/ContactSelector.php:160
-msgid "Transgender"
-msgstr "Transgender"
+#: src/Core/L10n.php:387 src/Model/Event.php:390
+msgid "Wed"
+msgstr "Mi"
 
-#: src/Content/ContactSelector.php:161
-msgid "Intersex"
-msgstr "Intersex"
+#: src/Core/L10n.php:387 src/Model/Event.php:391
+msgid "Thu"
+msgstr "Do"
 
-#: src/Content/ContactSelector.php:162
-msgid "Transsexual"
-msgstr "Transsexuell"
+#: src/Core/L10n.php:387 src/Model/Event.php:392
+msgid "Fri"
+msgstr "Fr"
 
-#: src/Content/ContactSelector.php:163
-msgid "Hermaphrodite"
-msgstr "Hermaphrodit"
+#: src/Core/L10n.php:387 src/Model/Event.php:393
+msgid "Sat"
+msgstr "Sa"
 
-#: src/Content/ContactSelector.php:164
-msgid "Neuter"
-msgstr "Neuter"
+#: src/Core/L10n.php:387 src/Model/Event.php:387
+msgid "Sun"
+msgstr "So"
 
-#: src/Content/ContactSelector.php:165
-msgid "Non-specific"
-msgstr "Nicht spezifiziert"
+#: src/Core/L10n.php:391 src/Model/Event.php:403
+msgid "Jan"
+msgstr "Jan"
 
-#: src/Content/ContactSelector.php:166
-msgid "Other"
-msgstr "Andere"
+#: src/Core/L10n.php:391 src/Model/Event.php:404
+msgid "Feb"
+msgstr "Feb"
 
-#: src/Content/ContactSelector.php:194
-msgid "Males"
-msgstr "Männer"
+#: src/Core/L10n.php:391 src/Model/Event.php:405
+msgid "Mar"
+msgstr "März"
 
-#: src/Content/ContactSelector.php:195
-msgid "Females"
-msgstr "Frauen"
+#: src/Core/L10n.php:391 src/Model/Event.php:406
+msgid "Apr"
+msgstr "Apr"
 
-#: src/Content/ContactSelector.php:196
-msgid "Gay"
-msgstr "Schwul"
+#: src/Core/L10n.php:391 src/Model/Event.php:409
+msgid "Jul"
+msgstr "Juli"
 
-#: src/Content/ContactSelector.php:197
-msgid "Lesbian"
-msgstr "Lesbisch"
+#: src/Core/L10n.php:391 src/Model/Event.php:410
+msgid "Aug"
+msgstr "Aug"
 
-#: src/Content/ContactSelector.php:198
-msgid "No Preference"
-msgstr "Keine Vorlieben"
+#: src/Core/L10n.php:391
+msgid "Sep"
+msgstr "Sep"
 
-#: src/Content/ContactSelector.php:199
-msgid "Bisexual"
-msgstr "Bisexuell"
+#: src/Core/L10n.php:391 src/Model/Event.php:412
+msgid "Oct"
+msgstr "Okt"
 
-#: src/Content/ContactSelector.php:200
-msgid "Autosexual"
-msgstr "Autosexual"
+#: src/Core/L10n.php:391 src/Model/Event.php:413
+msgid "Nov"
+msgstr "Nov"
 
-#: src/Content/ContactSelector.php:201
-msgid "Abstinent"
-msgstr "Abstinent"
+#: src/Core/L10n.php:391 src/Model/Event.php:414
+msgid "Dec"
+msgstr "Dez"
 
-#: src/Content/ContactSelector.php:202
-msgid "Virgin"
-msgstr "Jungfrauen"
+#: src/Core/L10n.php:410
+msgid "poke"
+msgstr "anstupsen"
 
-#: src/Content/ContactSelector.php:203
-msgid "Deviant"
-msgstr "Deviant"
+#: src/Core/L10n.php:410
+msgid "poked"
+msgstr "stupste"
 
-#: src/Content/ContactSelector.php:204
-msgid "Fetish"
-msgstr "Fetish"
+#: src/Core/L10n.php:411
+msgid "ping"
+msgstr "anpingen"
 
-#: src/Content/ContactSelector.php:205
-msgid "Oodles"
-msgstr "Oodles"
+#: src/Core/L10n.php:411
+msgid "pinged"
+msgstr "pingte"
 
-#: src/Content/ContactSelector.php:206
-msgid "Nonsexual"
-msgstr "Nonsexual"
+#: src/Core/L10n.php:412
+msgid "prod"
+msgstr "knuffen"
 
-#: src/Content/ContactSelector.php:232
-msgid "Single"
-msgstr "Single"
+#: src/Core/L10n.php:412
+msgid "prodded"
+msgstr "knuffte"
 
-#: src/Content/ContactSelector.php:233
-msgid "Lonely"
-msgstr "Einsam"
+#: src/Core/L10n.php:413
+msgid "slap"
+msgstr "ohrfeigen"
 
-#: src/Content/ContactSelector.php:234
-msgid "Available"
-msgstr "Verfügbar"
+#: src/Core/L10n.php:413
+msgid "slapped"
+msgstr "ohrfeigte"
 
-#: src/Content/ContactSelector.php:235
-msgid "Unavailable"
-msgstr "Nicht verfügbar"
+#: src/Core/L10n.php:414
+msgid "finger"
+msgstr "befummeln"
 
-#: src/Content/ContactSelector.php:236
-msgid "Has crush"
-msgstr "verknallt"
+#: src/Core/L10n.php:414
+msgid "fingered"
+msgstr "befummelte"
 
-#: src/Content/ContactSelector.php:237
-msgid "Infatuated"
-msgstr "verliebt"
+#: src/Core/L10n.php:415
+msgid "rebuff"
+msgstr "eine Abfuhr erteilen"
 
-#: src/Content/ContactSelector.php:238
-msgid "Dating"
-msgstr "Dating"
+#: src/Core/L10n.php:415
+msgid "rebuffed"
+msgstr "abfuhrerteilte"
 
-#: src/Content/ContactSelector.php:239
-msgid "Unfaithful"
-msgstr "Untreu"
+#: src/Core/NotificationsManager.php:175
+msgid "System"
+msgstr "System"
 
-#: src/Content/ContactSelector.php:240
-msgid "Sex Addict"
-msgstr "Sexbesessen"
+#: src/Core/NotificationsManager.php:265 src/Core/NotificationsManager.php:277
+#, php-format
+msgid "%s commented on %s's post"
+msgstr "%s hat %ss Beitrag kommentiert"
 
-#: src/Content/ContactSelector.php:241 src/Model/User.php:701
-msgid "Friends"
-msgstr "Kontakte"
+#: src/Core/NotificationsManager.php:276
+#, php-format
+msgid "%s created a new post"
+msgstr "%s hat einen neuen Beitrag erstellt"
 
-#: src/Content/ContactSelector.php:242
-msgid "Friends/Benefits"
-msgstr "Freunde/Zuwendungen"
-
-#: src/Content/ContactSelector.php:243
-msgid "Casual"
-msgstr "Casual"
+#: src/Core/NotificationsManager.php:290
+#, php-format
+msgid "%s liked %s's post"
+msgstr "%s mag %ss Beitrag"
 
-#: src/Content/ContactSelector.php:244
-msgid "Engaged"
-msgstr "Verlobt"
+#: src/Core/NotificationsManager.php:303
+#, php-format
+msgid "%s disliked %s's post"
+msgstr "%s mag %ss Beitrag nicht"
 
-#: src/Content/ContactSelector.php:245
-msgid "Married"
-msgstr "Verheiratet"
+#: src/Core/NotificationsManager.php:316
+#, php-format
+msgid "%s is attending %s's event"
+msgstr "%s nimmt an %s's Event teil"
 
-#: src/Content/ContactSelector.php:246
-msgid "Imaginarily married"
-msgstr "imaginär verheiratet"
+#: src/Core/NotificationsManager.php:329
+#, php-format
+msgid "%s is not attending %s's event"
+msgstr "%s nimmt nicht an %s's Event teil"
 
-#: src/Content/ContactSelector.php:247
-msgid "Partners"
-msgstr "Partner"
+#: src/Core/NotificationsManager.php:342
+#, php-format
+msgid "%s may attend %s's event"
+msgstr "%s nimmt eventuell an %s's Event teil"
 
-#: src/Content/ContactSelector.php:248
-msgid "Cohabiting"
-msgstr "zusammenlebend"
+#: src/Core/NotificationsManager.php:375
+#, php-format
+msgid "%s is now friends with %s"
+msgstr "%s ist jetzt mit %s befreundet"
 
-#: src/Content/ContactSelector.php:249
-msgid "Common law"
-msgstr "wilde Ehe"
+#: src/Core/NotificationsManager.php:651
+msgid "Friend Suggestion"
+msgstr "Kontaktvorschlag"
 
-#: src/Content/ContactSelector.php:250
-msgid "Happy"
-msgstr "Glücklich"
+#: src/Core/NotificationsManager.php:685
+msgid "Friend/Connect Request"
+msgstr "Kontakt-/Freundschaftsanfrage"
 
-#: src/Content/ContactSelector.php:251
-msgid "Not looking"
-msgstr "Nicht auf der Suche"
+#: src/Core/NotificationsManager.php:685
+msgid "New Follower"
+msgstr "Neuer Bewunderer"
 
-#: src/Content/ContactSelector.php:252
-msgid "Swinger"
-msgstr "Swinger"
+#: src/Core/System.php:137
+msgid "Error 400 - Bad Request"
+msgstr "Error 400 - Bad Request"
 
-#: src/Content/ContactSelector.php:253
-msgid "Betrayed"
-msgstr "Betrogen"
+#: src/Core/System.php:138
+msgid "Error 401 - Unauthorized"
+msgstr "Error 401 - Unauthorized"
 
-#: src/Content/ContactSelector.php:254
-msgid "Separated"
-msgstr "Getrennt"
+#: src/Core/System.php:139
+msgid "Error 403 - Forbidden"
+msgstr "Error 403 - Forbidden"
 
-#: src/Content/ContactSelector.php:255
-msgid "Unstable"
-msgstr "Unstabil"
+#: src/Core/System.php:140
+msgid "Error 404 - Not Found"
+msgstr "Error 404 - Not Found"
 
-#: src/Content/ContactSelector.php:256
-msgid "Divorced"
-msgstr "Geschieden"
+#: src/Core/System.php:141
+msgid "Error 500 - Internal Server Error"
+msgstr "Error 500 - Internal Server Error"
 
-#: src/Content/ContactSelector.php:257
-msgid "Imaginarily divorced"
-msgstr "imaginär geschieden"
+#: src/Core/System.php:142
+msgid "Error 503 - Service Unavailable"
+msgstr "Error 503 - Service Unavailable"
 
-#: src/Content/ContactSelector.php:258
-msgid "Widowed"
-msgstr "Verwitwet"
+#: src/Core/System.php:150
+msgid ""
+"The server cannot or will not process the request due to an apparent client "
+"error."
+msgstr "Aufgrund eines offensichtlichen Fehlers auf der Seite des Clients kann oder wird der Server die Anfrage nicht bearbeiten."
 
-#: src/Content/ContactSelector.php:259
-msgid "Uncertain"
-msgstr "Unsicher"
+#: src/Core/System.php:151
+msgid ""
+"Authentication is required and has failed or has not yet been provided."
+msgstr "Die erforderliche Authentifizierung ist fehlgeschlagen oder noch nicht erfolgt."
 
-#: src/Content/ContactSelector.php:260
-msgid "It's complicated"
-msgstr "Ist kompliziert"
+#: src/Core/System.php:152
+msgid ""
+"The request was valid, but the server is refusing action. The user might not"
+" have the necessary permissions for a resource, or may need an account."
+msgstr "Die Anfrage war gültig, aber der Server verweigert die Ausführung. Der Benutzer verfügt möglicherweise nicht Ã¼ber die erforderlichen Berechtigungen oder benötigt ein Nutzerkonto."
 
-#: src/Content/ContactSelector.php:261
-msgid "Don't care"
-msgstr "Ist mir nicht wichtig"
+#: src/Core/System.php:153
+msgid ""
+"The requested resource could not be found but may be available in the "
+"future."
+msgstr "Die angeforderte Ressource konnte nicht gefunden werden, sie könnte allerdings zu einem späteren Zeitpunkt verfügbar sein."
 
-#: src/Content/ContactSelector.php:262
-msgid "Ask me"
-msgstr "Frag mich"
+#: src/Core/System.php:154
+msgid ""
+"An unexpected condition was encountered and no more specific message is "
+"suitable."
+msgstr "Eine unerwartete Situation ist eingetreten, zu der keine detailliertere Nachricht vorliegt."
 
-#: src/Content/Feature.php:82
-msgid "General Features"
-msgstr "Allgemeine Features"
+#: src/Core/System.php:155
+msgid ""
+"The server is currently unavailable (because it is overloaded or down for "
+"maintenance). Please try again later."
+msgstr "Der Server ist derzeit nicht verfügbar (wegen Ãœberlastung oder Wartungsarbeiten). Bitte versuche es später noch einmal."
 
-#: src/Content/Feature.php:84
-msgid "Multiple Profiles"
-msgstr "Mehrere Profile"
+#: src/Core/Update.php:168
+#, php-format
+msgid "Update %s failed. See error logs."
+msgstr "Update %s fehlgeschlagen. Bitte Fehlerprotokoll Ã¼berprüfen."
 
-#: src/Content/Feature.php:84
-msgid "Ability to create multiple profiles"
-msgstr "Möglichkeit mehrere Profile zu erstellen"
+#: src/Core/Update.php:225
+#, php-format
+msgid ""
+"\n"
+"\t\t\t\tThe friendica developers released update %s recently,\n"
+"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
+"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n"
+"\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
+msgstr "\nDie Friendica-Entwickler haben vor kurzem das Update %s veröffentlicht, aber bei der Installation ging etwas schrecklich schief.\n\nDas Problem sollte so schnell wie möglich gelöst werden, aber ich schaffe es nicht alleine. Bitte kontaktiere einen Friendica-Entwickler, falls du mir nicht alleine helfen kannst. Meine Datenbank könnte ungültig sein."
 
-#: src/Content/Feature.php:85
-msgid "Photo Location"
-msgstr "Aufnahmeort"
+#: src/Core/Update.php:231
+#, php-format
+msgid ""
+"The error message is\n"
+"[pre]%s[/pre]"
+msgstr "Die Fehlermeldung lautet\n[pre]%s[/pre]"
 
-#: src/Content/Feature.php:85
+#: src/Core/Update.php:260
+#, php-format
 msgid ""
-"Photo metadata is normally stripped. This extracts the location (if present)"
-" prior to stripping metadata and links it to a map."
-msgstr "Die Foto-Metadaten werden ausgelesen. Dadurch kann der Aufnahmeort (wenn vorhanden) in einer Karte angezeigt werden."
+"\n"
+"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
+msgstr "\n \t\t\t\t\tDie Friendica Datenbank wurde erfolgreich von %s auf %s aktualisiert."
 
-#: src/Content/Feature.php:86
-msgid "Export Public Calendar"
-msgstr "Öffentlichen Kalender exportieren"
+#: src/Core/UserImport.php:103
+msgid "Error decoding account file"
+msgstr "Fehler beim Verarbeiten der Account-Datei"
 
-#: src/Content/Feature.php:86
-msgid "Ability for visitors to download the public calendar"
-msgstr "Möglichkeit für Besucher den Ã¶ffentlichen Kalender herunter zu laden"
+#: src/Core/UserImport.php:109
+msgid "Error! No version data in file! This is not a Friendica account file?"
+msgstr "Fehler! Keine Versionsdaten in der Datei! Ist das wirklich eine Friendica-Account-Datei?"
 
-#: src/Content/Feature.php:91
-msgid "Post Composition Features"
-msgstr "Beitragserstellung Features"
+#: src/Core/UserImport.php:117
+#, php-format
+msgid "User '%s' already exists on this server!"
+msgstr "Nutzer '%s' existiert bereits auf diesem Server!"
 
-#: src/Content/Feature.php:92
-msgid "Auto-mention Forums"
-msgstr "Foren automatisch erwähnen"
+#: src/Core/UserImport.php:153
+msgid "User creation error"
+msgstr "Fehler beim Anlegen des Nutzer-Accounts aufgetreten"
 
-#: src/Content/Feature.php:92
-msgid ""
-"Add/remove mention when a forum page is selected/deselected in ACL window."
-msgstr "Automatisch eine @-Erwähnung eines Forums einfügen/entfehrnen, wenn dieses im ACL Fenster de-/markiert  wurde."
+#: src/Core/UserImport.php:171
+msgid "User profile creation error"
+msgstr "Fehler beim Anlegen des Nutzer-Profils"
 
-#: src/Content/Feature.php:93
-msgid "Explicit Mentions"
-msgstr "Explizite Erwähnungen"
+#: src/Core/UserImport.php:215
+#, php-format
+msgid "%d contact not imported"
+msgid_plural "%d contacts not imported"
+msgstr[0] "%d Kontakt nicht importiert"
+msgstr[1] "%d Kontakte nicht importiert"
 
-#: src/Content/Feature.php:93
-msgid ""
-"Add explicit mentions to comment box for manual control over who gets "
-"mentioned in replies."
-msgstr "Füge Erwähnungen zum Kommentarfeld hinzu, um manuell Ã¼ber die explizite Erwähnung von Gesprächsteilnehmern zu entscheiden."
+#: src/Core/UserImport.php:280
+msgid "Done. You can now login with your username and password"
+msgstr "Erledigt. Du kannst dich jetzt mit deinem Nutzernamen und Passwort anmelden"
 
-#: src/Content/Feature.php:98
-msgid "Network Sidebar"
-msgstr "Netzwerk Seitenleiste"
+#: src/Database/DBStructure.php:47
+msgid "There are no tables on MyISAM."
+msgstr "Es gibt keine MyISAM-Tabellen."
 
-#: src/Content/Feature.php:99
-msgid "Ability to select posts by date ranges"
-msgstr "Möglichkeit die Beiträge nach Datumsbereichen zu sortieren"
+#: src/Database/DBStructure.php:71
+#, php-format
+msgid ""
+"\n"
+"Error %d occurred during database update:\n"
+"%s\n"
+msgstr "\nFehler %d beim Update der Datenbank aufgetreten\n%s\n"
 
-#: src/Content/Feature.php:100
-msgid "Protocol Filter"
-msgstr "Protokoll Filter"
+#: src/Database/DBStructure.php:74
+msgid "Errors encountered performing database changes: "
+msgstr "Fehler beim Ã„ndern der Datenbank aufgetreten"
 
-#: src/Content/Feature.php:100
-msgid "Enable widget to display Network posts only from selected protocols"
-msgstr "Aktiviere Widget um Netzwerkbeiträge nur von ausgesuchten Protokollen anzuzeigen"
+#: src/Database/DBStructure.php:263
+#, php-format
+msgid "%s: Database update"
+msgstr "%s: Datenbank Aktualisierung"
 
-#: src/Content/Feature.php:105
-msgid "Network Tabs"
-msgstr "Netzwerk Reiter"
+#: src/Database/DBStructure.php:524
+#, php-format
+msgid "%s: updating %s table."
+msgstr "%s: aktualisiere Tabelle %s"
 
-#: src/Content/Feature.php:106
-msgid "Network New Tab"
-msgstr "Netzwerk-Reiter: Neue"
+#: src/LegacyModule.php:30
+#, php-format
+msgid "Legacy module file not found: %s"
+msgstr "Legacy-Moduldatei nicht gefunden: %s"
 
-#: src/Content/Feature.php:106
-msgid "Enable tab to display only new Network posts (from the last 12 hours)"
-msgstr "Aktiviert einen Netzwerk-Reiter in dem ausschließlich neue Beiträge (der letzten 12 Stunden) angezeigt werden"
+#: src/Model/Contact.php:1054
+msgid "Drop Contact"
+msgstr "Kontakt löschen"
 
-#: src/Content/Feature.php:107
-msgid "Network Shared Links Tab"
-msgstr "Netzwerk-Reiter: Geteilte Links"
+#: src/Model/Contact.php:1526
+msgid "Organisation"
+msgstr "Organisation"
 
-#: src/Content/Feature.php:107
-msgid "Enable tab to display only Network posts with links in them"
-msgstr "Aktiviert einen Netzwerk-Reiter der ausschließlich Nachrichten mit Links enthält"
+#: src/Model/Contact.php:1530
+msgid "News"
+msgstr "Nachrichten"
 
-#: src/Content/Feature.php:112
-msgid "Post/Comment Tools"
-msgstr "Werkzeuge für Beiträge und Kommentare"
+#: src/Model/Contact.php:1534
+msgid "Forum"
+msgstr "Forum"
 
-#: src/Content/Feature.php:113
-msgid "Post Categories"
-msgstr "Beitragskategorien"
+#: src/Model/Contact.php:1724
+msgid "Connect URL missing."
+msgstr "Connect-URL fehlt"
 
-#: src/Content/Feature.php:113
-msgid "Add categories to your posts"
-msgstr "Eigene Beiträge mit Kategorien versehen"
+#: src/Model/Contact.php:1733
+msgid ""
+"The contact could not be added. Please check the relevant network "
+"credentials in your Settings -> Social Networks page."
+msgstr "Der Kontakt konnte nicht hinzugefügt werden. Bitte Ã¼berprüfe die Einstellungen unter Einstellungen -> Soziale Netzwerke"
 
-#: src/Content/Feature.php:118
-msgid "Advanced Profile Settings"
-msgstr "Erweiterte Profil-Einstellungen"
+#: src/Model/Contact.php:1772
+msgid ""
+"This site is not configured to allow communications with other networks."
+msgstr "Diese Seite ist so konfiguriert, dass keine Kommunikation mit anderen Netzwerken erfolgen kann."
 
-#: src/Content/Feature.php:119
-msgid "List Forums"
-msgstr "Zeige Foren"
+#: src/Model/Contact.php:1773 src/Model/Contact.php:1786
+msgid "No compatible communication protocols or feeds were discovered."
+msgstr "Es wurden keine kompatiblen Kommunikationsprotokolle oder Feeds gefunden."
 
-#: src/Content/Feature.php:119
-msgid "Show visitors public community forums at the Advanced Profile Page"
-msgstr "Zeige Besuchern Ã¶ffentliche Gemeinschafts-Foren auf der Erweiterten Profil-Seite"
+#: src/Model/Contact.php:1784
+msgid "The profile address specified does not provide adequate information."
+msgstr "Die angegebene Profiladresse liefert unzureichende Informationen."
 
-#: src/Content/Feature.php:120
-msgid "Tag Cloud"
-msgstr "Schlagwort Wolke"
+#: src/Model/Contact.php:1789
+msgid "An author or name was not found."
+msgstr "Es wurde kein Autor oder Name gefunden."
 
-#: src/Content/Feature.php:120
-msgid "Provide a personal tag cloud on your profile page"
-msgstr "Wortwolke aus den von dir verwendeten Schlagwörtern im Profil anzeigen."
+#: src/Model/Contact.php:1792
+msgid "No browser URL could be matched to this address."
+msgstr "Zu dieser Adresse konnte keine passende Browser-URL gefunden werden."
 
-#: src/Content/Feature.php:121
-msgid "Display Membership Date"
-msgstr "Mitgliedschaftsdatum anzeigen"
+#: src/Model/Contact.php:1795
+msgid ""
+"Unable to match @-style Identity Address with a known protocol or email "
+"contact."
+msgstr "Konnte die @-Adresse mit keinem der bekannten Protokolle oder Email-Kontakte abgleichen."
 
-#: src/Content/Feature.php:121
-msgid "Display membership date in profile"
-msgstr "Soll das Datum der Registrierung deines Accounts im Profil angezeigt werden."
+#: src/Model/Contact.php:1796
+msgid "Use mailto: in front of address to force email check."
+msgstr "Verwende mailto: vor der E-Mail-Adresse, um eine Ãœberprüfung der E-Mail-Adresse zu erzwingen."
 
-#: src/Content/Nav.php:74
-msgid "Nothing new here"
-msgstr "Keine Neuigkeiten"
+#: src/Model/Contact.php:1802
+msgid ""
+"The profile address specified belongs to a network which has been disabled "
+"on this site."
+msgstr "Die Adresse dieses Profils gehört zu einem Netzwerk, mit dem die Kommunikation auf dieser Seite ausgeschaltet wurde."
 
-#: src/Content/Nav.php:78
-msgid "Clear notifications"
-msgstr "Bereinige Benachrichtigungen"
+#: src/Model/Contact.php:1807
+msgid ""
+"Limited profile. This person will be unable to receive direct/personal "
+"notifications from you."
+msgstr "Eingeschränktes Profil. Diese Person wird keine direkten/privaten Nachrichten von dir erhalten können."
 
-#: src/Content/Nav.php:161
-msgid "Personal notes"
-msgstr "Persönliche Notizen"
+#: src/Model/Contact.php:1860
+msgid "Unable to retrieve contact information."
+msgstr "Konnte die Kontaktinformationen nicht empfangen."
 
-#: src/Content/Nav.php:161
-msgid "Your personal notes"
-msgstr "Deine persönlichen Notizen"
+#: src/Model/Event.php:61 src/Model/Event.php:78 src/Model/Event.php:435
+#: src/Model/Event.php:915
+msgid "Starts:"
+msgstr "Beginnt:"
 
-#: src/Content/Nav.php:170
-msgid "Sign in"
-msgstr "Anmelden"
+#: src/Model/Event.php:64 src/Model/Event.php:84 src/Model/Event.php:436
+#: src/Model/Event.php:919
+msgid "Finishes:"
+msgstr "Endet:"
 
-#: src/Content/Nav.php:180
-msgid "Home Page"
-msgstr "Homepage"
+#: src/Model/Event.php:385
+msgid "all-day"
+msgstr "ganztägig"
 
-#: src/Content/Nav.php:184 src/Module/Login.php:293
-#: src/Module/Register.php:136
-msgid "Register"
-msgstr "Registrieren"
+#: src/Model/Event.php:408
+msgid "Jun"
+msgstr "Jun"
 
-#: src/Content/Nav.php:184
-msgid "Create an account"
-msgstr "Nutzerkonto erstellen"
+#: src/Model/Event.php:411
+msgid "Sept"
+msgstr "Sep"
 
-#: src/Content/Nav.php:190
-msgid "Help and documentation"
-msgstr "Hilfe und Dokumentation"
+#: src/Model/Event.php:433
+msgid "No events to display"
+msgstr "Keine Veranstaltung zum Anzeigen"
 
-#: src/Content/Nav.php:194
-msgid "Apps"
-msgstr "Apps"
+#: src/Model/Event.php:561
+msgid "l, F j"
+msgstr "l, F j"
 
-#: src/Content/Nav.php:194
-msgid "Addon applications, utilities, games"
-msgstr "Addon Anwendungen, Dienstprogramme, Spiele"
+#: src/Model/Event.php:592
+msgid "Edit event"
+msgstr "Veranstaltung bearbeiten"
 
-#: src/Content/Nav.php:198
-msgid "Search site content"
-msgstr "Inhalt der Seite durchsuchen"
+#: src/Model/Event.php:593
+msgid "Duplicate event"
+msgstr "Veranstaltung kopieren"
 
-#: src/Content/Nav.php:222
-msgid "Community"
-msgstr "Gemeinschaft"
+#: src/Model/Event.php:594
+msgid "Delete event"
+msgstr "Veranstaltung löschen"
 
-#: src/Content/Nav.php:222
-msgid "Conversations on this and other servers"
-msgstr "Unterhaltungen auf diesem und anderer Server"
+#: src/Model/Event.php:626 src/Model/Item.php:3554 src/Model/Item.php:3561
+msgid "link to source"
+msgstr "Link zum Originalbeitrag"
 
-#: src/Content/Nav.php:229
-msgid "Directory"
-msgstr "Verzeichnis"
+#: src/Model/Event.php:848
+msgid "D g:i A"
+msgstr "D H:i"
 
-#: src/Content/Nav.php:229
-msgid "People directory"
-msgstr "Nutzerverzeichnis"
+#: src/Model/Event.php:849
+msgid "g:i A"
+msgstr "H:i"
 
-#: src/Content/Nav.php:231
-msgid "Information about this friendica instance"
-msgstr "Informationen zu dieser Friendica Instanz"
+#: src/Model/Event.php:934 src/Model/Event.php:936
+msgid "Show map"
+msgstr "Karte anzeigen"
 
-#: src/Content/Nav.php:234
-msgid "Terms of Service of this Friendica instance"
-msgstr "Die Nutzungsbedingungen dieser Friendica Instanz"
+#: src/Model/Event.php:935
+msgid "Hide map"
+msgstr "Karte verbergen"
 
-#: src/Content/Nav.php:240
-msgid "Network Reset"
-msgstr "Netzwerk zurücksetzen"
+#: src/Model/Event.php:1027
+#, php-format
+msgid "%s's birthday"
+msgstr "%ss Geburtstag"
 
-#: src/Content/Nav.php:240
-msgid "Load Network page with no filters"
-msgstr "Netzwerk-Seite ohne Filter laden"
+#: src/Model/Event.php:1028
+#, php-format
+msgid "Happy Birthday %s"
+msgstr "Herzlichen Glückwunsch, %s"
 
-#: src/Content/Nav.php:246
-msgid "Friend Requests"
-msgstr "Kontaktanfragen"
+#: src/Model/FileTag.php:256
+msgid "Item filed"
+msgstr "Beitrag abgelegt"
 
-#: src/Content/Nav.php:248
-msgid "See all notifications"
-msgstr "Alle Benachrichtigungen anzeigen"
+#: src/Model/Group.php:43
+msgid ""
+"A deleted group with this name was revived. Existing item permissions "
+"<strong>may</strong> apply to this group and any future members. If this is "
+"not what you intended, please create another group with a different name."
+msgstr "Eine gelöschte Gruppe mit diesem Namen wurde wiederbelebt. Bestehende Berechtigungseinstellungen <strong>könnten</strong> auf diese Gruppe oder zukünftige Mitglieder angewandt werden. Falls du dies nicht möchtest, erstelle bitte eine andere Gruppe mit einem anderen Namen."
 
-#: src/Content/Nav.php:249
-msgid "Mark all system notifications seen"
-msgstr "Markiere alle Systembenachrichtigungen als gelesen"
+#: src/Model/Group.php:338
+msgid "Default privacy group for new contacts"
+msgstr "Voreingestellte Gruppe für neue Kontakte"
 
-#: src/Content/Nav.php:253
-msgid "Inbox"
-msgstr "Eingang"
+#: src/Model/Group.php:370
+msgid "Everybody"
+msgstr "Alle Kontakte"
 
-#: src/Content/Nav.php:254
-msgid "Outbox"
-msgstr "Ausgang"
+#: src/Model/Group.php:390
+msgid "edit"
+msgstr "bearbeiten"
 
-#: src/Content/Nav.php:258
-msgid "Manage"
-msgstr "Verwalten"
+#: src/Model/Group.php:419
+msgid "Edit group"
+msgstr "Gruppe bearbeiten"
 
-#: src/Content/Nav.php:258
-msgid "Manage other pages"
-msgstr "Andere Seiten verwalten"
+#: src/Model/Group.php:422
+msgid "Create a new group"
+msgstr "Neue Gruppe erstellen"
 
-#: src/Content/Nav.php:266
-msgid "Manage/Edit Profiles"
-msgstr "Profile Verwalten/Editieren"
+#: src/Model/Group.php:424
+msgid "Edit groups"
+msgstr "Gruppen bearbeiten"
 
-#: src/Content/Nav.php:274
-msgid "Site setup and configuration"
-msgstr "Einstellungen der Seite und Konfiguration"
+#: src/Model/Item.php:3287
+msgid "activity"
+msgstr "Aktivität"
 
-#: src/Content/Nav.php:277
-msgid "Navigation"
-msgstr "Navigation"
+#: src/Model/Item.php:3289 src/Object/Post.php:470
+msgid "comment"
+msgid_plural "comments"
+msgstr[0] "Kommentar"
+msgstr[1] "Kommentare"
 
-#: src/Content/Nav.php:277
-msgid "Site map"
-msgstr "Sitemap"
+#: src/Model/Item.php:3292
+msgid "post"
+msgstr "Beitrag"
 
-#: src/Content/OEmbed.php:256
-msgid "Embedding disabled"
-msgstr "Einbettungen deaktiviert"
+#: src/Model/Item.php:3391
+#, php-format
+msgid "Content warning: %s"
+msgstr "Inhaltswarnung: %s"
 
-#: src/Content/OEmbed.php:379
-msgid "Embedded content"
-msgstr "Eingebetteter Inhalt"
+#: src/Model/Item.php:3470
+msgid "bytes"
+msgstr "Byte"
 
-#: src/Content/Pager.php:153
-msgid "newer"
-msgstr "neuer"
+#: src/Model/Item.php:3548
+msgid "View on separate page"
+msgstr "Auf separater Seite ansehen"
 
-#: src/Content/Pager.php:158
-msgid "older"
-msgstr "älter"
-
-#: src/Content/Pager.php:203
-msgid "prev"
-msgstr "vorige"
-
-#: src/Content/Pager.php:263
-msgid "last"
-msgstr "letzte"
-
-#: src/Content/Widget.php:35
-msgid "Add New Contact"
-msgstr "Neuen Kontakt hinzufügen"
-
-#: src/Content/Widget.php:36
-msgid "Enter address or web location"
-msgstr "Adresse oder Web-Link eingeben"
-
-#: src/Content/Widget.php:37
-msgid "Example: bob@example.com, http://example.com/barbara"
-msgstr "Beispiel: bob@example.com, http://example.com/barbara"
-
-#: src/Content/Widget.php:55
-#, php-format
-msgid "%d invitation available"
-msgid_plural "%d invitations available"
-msgstr[0] "%d Einladung verfügbar"
-msgstr[1] "%d Einladungen verfügbar"
-
-#: src/Content/Widget.php:158
-msgid "Protocols"
-msgstr "Protokolle"
-
-#: src/Content/Widget.php:161
-msgid "All Protocols"
-msgstr "Alle Protokolle"
-
-#: src/Content/Widget.php:198
-msgid "Saved Folders"
-msgstr "Gespeicherte Ordner"
-
-#: src/Content/Widget.php:201 src/Content/Widget.php:243
-msgid "Everything"
-msgstr "Alles"
-
-#: src/Content/Widget.php:240
-msgid "Categories"
-msgstr "Kategorien"
-
-#: src/Content/Widget.php:324
-#, php-format
-msgid "%d contact in common"
-msgid_plural "%d contacts in common"
-msgstr[0] "%d gemeinsamer Kontakt"
-msgstr[1] "%d gemeinsame Kontakte"
-
-#: src/Database/DBStructure.php:47
-msgid "There are no tables on MyISAM."
-msgstr "Es gibt keine MyISAM Tabellen."
-
-#: src/Database/DBStructure.php:71
-#, php-format
-msgid ""
-"\n"
-"Error %d occurred during database update:\n"
-"%s\n"
-msgstr "\nFehler %d beim Update der Datenbank aufgetreten\n%s\n"
-
-#: src/Database/DBStructure.php:74
-msgid "Errors encountered performing database changes: "
-msgstr "Fehler beim Ã„ndern der Datenbank aufgetreten"
-
-#: src/Database/DBStructure.php:263
-#, php-format
-msgid "%s: Database update"
-msgstr "%s: Datenbank Aktualisierung"
-
-#: src/Database/DBStructure.php:524
-#, php-format
-msgid "%s: updating %s table."
-msgstr "%s: aktualisiere Tabelle %s"
-
-#: src/Model/Contact.php:1037
-msgid "Drop Contact"
-msgstr "Kontakt löschen"
-
-#: src/Model/Contact.php:1509
-msgid "Organisation"
-msgstr "Organisation"
-
-#: src/Model/Contact.php:1513
-msgid "News"
-msgstr "Nachrichten"
-
-#: src/Model/Contact.php:1517
-msgid "Forum"
-msgstr "Forum"
-
-#: src/Model/Contact.php:1707
-msgid "Connect URL missing."
-msgstr "Connect-URL fehlt"
-
-#: src/Model/Contact.php:1716
-msgid ""
-"The contact could not be added. Please check the relevant network "
-"credentials in your Settings -> Social Networks page."
-msgstr "Der Kontakt konnte nicht hinzugefügt werden. Bitte Ã¼berprüfe die Einstellungen unter Einstellungen -> Soziale Netzwerke"
-
-#: src/Model/Contact.php:1755
-msgid ""
-"This site is not configured to allow communications with other networks."
-msgstr "Diese Seite ist so konfiguriert, dass keine Kommunikation mit anderen Netzwerken erfolgen kann."
-
-#: src/Model/Contact.php:1756 src/Model/Contact.php:1769
-msgid "No compatible communication protocols or feeds were discovered."
-msgstr "Es wurden keine kompatiblen Kommunikationsprotokolle oder Feeds gefunden."
-
-#: src/Model/Contact.php:1767
-msgid "The profile address specified does not provide adequate information."
-msgstr "Die angegebene Profiladresse liefert unzureichende Informationen."
-
-#: src/Model/Contact.php:1772
-msgid "An author or name was not found."
-msgstr "Es wurde kein Autor oder Name gefunden."
-
-#: src/Model/Contact.php:1775
-msgid "No browser URL could be matched to this address."
-msgstr "Zu dieser Adresse konnte keine passende Browser URL gefunden werden."
-
-#: src/Model/Contact.php:1778
-msgid ""
-"Unable to match @-style Identity Address with a known protocol or email "
-"contact."
-msgstr "Konnte die @-Adresse mit keinem der bekannten Protokolle oder Email-Kontakte abgleichen."
-
-#: src/Model/Contact.php:1779
-msgid "Use mailto: in front of address to force email check."
-msgstr "Verwende mailto: vor der Email Adresse, um eine Ãœberprüfung der E-Mail-Adresse zu erzwingen."
-
-#: src/Model/Contact.php:1785
-msgid ""
-"The profile address specified belongs to a network which has been disabled "
-"on this site."
-msgstr "Die Adresse dieses Profils gehört zu einem Netzwerk, mit dem die Kommunikation auf dieser Seite ausgeschaltet wurde."
-
-#: src/Model/Contact.php:1790
-msgid ""
-"Limited profile. This person will be unable to receive direct/personal "
-"notifications from you."
-msgstr "Eingeschränktes Profil. Diese Person wird keine direkten/privaten Nachrichten von Dir erhalten können."
-
-#: src/Model/Contact.php:1843
-msgid "Unable to retrieve contact information."
-msgstr "Konnte die Kontaktinformationen nicht empfangen."
-
-#: src/Model/Event.php:61 src/Model/Event.php:78 src/Model/Event.php:436
-#: src/Model/Event.php:916
-msgid "Starts:"
-msgstr "Beginnt:"
-
-#: src/Model/Event.php:64 src/Model/Event.php:84 src/Model/Event.php:437
-#: src/Model/Event.php:920
-msgid "Finishes:"
-msgstr "Endet:"
-
-#: src/Model/Event.php:386
-msgid "all-day"
-msgstr "ganztägig"
-
-#: src/Model/Event.php:409
-msgid "Jun"
-msgstr "Jun"
-
-#: src/Model/Event.php:412
-msgid "Sept"
-msgstr "Sep"
-
-#: src/Model/Event.php:434
-msgid "No events to display"
-msgstr "Keine Veranstaltung zum Anzeigen"
-
-#: src/Model/Event.php:562
-msgid "l, F j"
-msgstr "l, F j"
-
-#: src/Model/Event.php:593
-msgid "Edit event"
-msgstr "Veranstaltung bearbeiten"
-
-#: src/Model/Event.php:594
-msgid "Duplicate event"
-msgstr "Veranstaltung kopieren"
-
-#: src/Model/Event.php:595
-msgid "Delete event"
-msgstr "Veranstaltung löschen"
-
-#: src/Model/Event.php:627 src/Model/Item.php:3536 src/Model/Item.php:3543
-msgid "link to source"
-msgstr "Link zum Originalbeitrag"
-
-#: src/Model/Event.php:849
-msgid "D g:i A"
-msgstr "D H:i"
-
-#: src/Model/Event.php:850
-msgid "g:i A"
-msgstr "H:i"
-
-#: src/Model/Event.php:935 src/Model/Event.php:937
-msgid "Show map"
-msgstr "Karte anzeigen"
-
-#: src/Model/Event.php:936
-msgid "Hide map"
-msgstr "Karte verbergen"
-
-#: src/Model/Event.php:1028
-#, php-format
-msgid "%s's birthday"
-msgstr "%ss Geburtstag"
-
-#: src/Model/Event.php:1029
-#, php-format
-msgid "Happy Birthday %s"
-msgstr "Herzlichen Glückwunsch %s"
-
-#: src/Model/FileTag.php:256
-msgid "Item filed"
-msgstr "Beitrag abgelegt"
-
-#: src/Model/Group.php:43
-msgid ""
-"A deleted group with this name was revived. Existing item permissions "
-"<strong>may</strong> apply to this group and any future members. If this is "
-"not what you intended, please create another group with a different name."
-msgstr "Eine gelöschte Gruppe mit diesem Namen wurde wiederbelebt. Bestehende Berechtigungseinstellungen <strong>könnten</strong> auf diese Gruppe oder zukünftige Mitglieder angewandt werden. Falls Du dies nicht möchtest, erstelle bitte eine andere Gruppe mit einem anderen Namen."
-
-#: src/Model/Group.php:338
-msgid "Default privacy group for new contacts"
-msgstr "Voreingestellte Gruppe für neue Kontakte"
-
-#: src/Model/Group.php:370
-msgid "Everybody"
-msgstr "Alle Kontakte"
-
-#: src/Model/Group.php:390
-msgid "edit"
-msgstr "bearbeiten"
-
-#: src/Model/Group.php:419
-msgid "Edit group"
-msgstr "Gruppe bearbeiten"
-
-#: src/Model/Group.php:422
-msgid "Create a new group"
-msgstr "Neue Gruppe erstellen"
-
-#: src/Model/Group.php:424
-msgid "Edit groups"
-msgstr "Gruppen bearbeiten"
-
-#: src/Model/Item.php:3269
-msgid "activity"
-msgstr "Aktivität"
-
-#: src/Model/Item.php:3271 src/Object/Post.php:457 src/Object/Post.php:469
-msgid "comment"
-msgid_plural "comments"
-msgstr[0] "Kommentar"
-msgstr[1] "Kommentare"
-
-#: src/Model/Item.php:3274
-msgid "post"
-msgstr "Beitrag"
-
-#: src/Model/Item.php:3373
-#, php-format
-msgid "Content warning: %s"
-msgstr "Inhaltswarnung: %s"
-
-#: src/Model/Item.php:3452
-msgid "bytes"
-msgstr "Byte"
-
-#: src/Model/Item.php:3530
-msgid "View on separate page"
-msgstr "Auf separater Seite ansehen"
-
-#: src/Model/Item.php:3531
-msgid "view on separate page"
-msgstr "auf separater Seite ansehen"
+#: src/Model/Item.php:3549
+msgid "view on separate page"
+msgstr "auf separater Seite ansehen"
 
 #: src/Model/Mail.php:40 src/Model/Mail.php:175
 msgid "[no subject]"
@@ -8778,6 +8540,10 @@ msgstr "j F, Y"
 msgid "j F"
 msgstr "j F"
 
+#: src/Model/Profile.php:771 src/Util/Temporal.php:147
+msgid "Birthday:"
+msgstr "Geburtstag:"
+
 #: src/Model/Profile.php:778
 msgid "Age:"
 msgstr "Alter:"
@@ -8837,7 +8603,7 @@ msgstr "Profildetails"
 
 #: src/Model/Profile.php:962
 msgid "Only You Can See This"
-msgstr "Nur Du kannst das sehen"
+msgstr "Nur du kannst das sehen"
 
 #: src/Model/Profile.php:970 src/Model/Profile.php:973
 msgid "Tips for New Members"
@@ -8846,7 +8612,7 @@ msgstr "Tipps für neue Nutzer"
 #: src/Model/Profile.php:1150
 #, php-format
 msgid "OpenWebAuth: %1$s welcomes %2$s"
-msgstr "OpenWebAuth: %1$s heißt %2$sherzlich willkommen"
+msgstr "OpenWebAuth: %1$s heißt %2$s herzlich willkommen"
 
 #: src/Model/Storage/Database.php:36
 #, php-format
@@ -8860,14 +8626,14 @@ msgstr "Der Datenbankspeicher konnte keine Daten einfügen"
 #: src/Model/Storage/Filesystem.php:63
 #, php-format
 msgid "Filesystem storage failed to create \"%s\". Check you write permissions."
-msgstr "Dateisystemspeicher konnte nicht erstellt werden \"%s\". Ãœberprüfen Sie, ob Sie Schreibberechtigungen haben."
+msgstr "Dateisystemspeicher konnte nicht erstellt werden \"%s\". Ãœberprüfe, ob du Schreibberechtigungen hast."
 
 #: src/Model/Storage/Filesystem.php:105
 #, php-format
 msgid ""
 "Filesystem storage failed to save data to \"%s\". Check your write "
 "permissions"
-msgstr "Der Dateisystemspeicher konnte die Daten nicht in \"%s\", speichern. Ãœberprüfen Sie Ihre Schreibberechtigungen"
+msgstr "Der Dateisystemspeicher konnte die Daten nicht in \"%s\" speichern. Ãœberprüfe Deine Schreibberechtigungen"
 
 #: src/Model/Storage/Filesystem.php:126
 msgid "Storage base path"
@@ -8877,140 +8643,144 @@ msgstr "Dateipfad zum Speicher"
 msgid ""
 "Folder where uploaded files are saved. For maximum security, This should be "
 "a path outside web server folder tree"
-msgstr "Verzeichnis in das Dateien hochgeladen werden. Für maximale Sicherheit sollte dies ein Pfad außerhalb der Webserver-Verzeichnisstruktur sein"
+msgstr "Verzeichnis, in das Dateien hochgeladen werden. Für maximale Sicherheit sollte dies ein Pfad außerhalb der Webserver-Verzeichnisstruktur sein"
 
 #: src/Model/Storage/Filesystem.php:138
 msgid "Enter a valid existing folder"
-msgstr "Geben Sie einen gültigen, existierenden Ordner ein"
+msgstr "Gib einen gültigen, existierenden Ordner ein"
 
-#: src/Model/User.php:270
+#: src/Model/User.php:271
 msgid "Login failed"
 msgstr "Anmeldung fehlgeschlagen"
 
-#: src/Model/User.php:301
+#: src/Model/User.php:302
 msgid "Not enough information to authenticate"
 msgstr "Nicht genügend Informationen für die Authentifizierung"
 
-#: src/Model/User.php:379
+#: src/Model/User.php:380
 msgid "Password can't be empty"
 msgstr "Das Passwort kann nicht leer sein"
 
-#: src/Model/User.php:398
+#: src/Model/User.php:399
 msgid "Empty passwords are not allowed."
 msgstr "Leere Passwörter sind nicht erlaubt."
 
-#: src/Model/User.php:402
+#: src/Model/User.php:403
 msgid ""
 "The new password has been exposed in a public data dump, please choose "
 "another."
-msgstr "Das neuer Passwort wurde in einem Ã¶ffentlichen Daten-Dump veröffentlicht. Bitte verwende ein anderes Passwort."
+msgstr "Das neue Passwort wurde in einem Ã¶ffentlichen Daten-Dump veröffentlicht. Bitte verwende ein anderes Passwort."
 
-#: src/Model/User.php:408
+#: src/Model/User.php:409
 msgid ""
 "The password can't contain accentuated letters, white spaces or colons (:)"
 msgstr "Das Passwort darf keine akzentuierten Buchstaben, Leerzeichen oder Doppelpunkte (:) beinhalten"
 
-#: src/Model/User.php:508
+#: src/Model/User.php:509
 msgid "Passwords do not match. Password unchanged."
 msgstr "Die Passwörter stimmen nicht Ã¼berein. Das Passwort bleibt unverändert."
 
-#: src/Model/User.php:515
+#: src/Model/User.php:516
 msgid "An invitation is required."
 msgstr "Du benötigst eine Einladung."
 
-#: src/Model/User.php:519
+#: src/Model/User.php:520
 msgid "Invitation could not be verified."
 msgstr "Die Einladung konnte nicht Ã¼berprüft werden."
 
-#: src/Model/User.php:526
+#: src/Model/User.php:527
 msgid "Invalid OpenID url"
 msgstr "Ungültige OpenID URL"
 
-#: src/Model/User.php:539 src/Module/Login.php:106
+#: src/Model/User.php:540 src/Module/Login.php:106
 msgid ""
 "We encountered a problem while logging in with the OpenID you provided. "
 "Please check the correct spelling of the ID."
-msgstr "Beim Versuch Dich mit der von Dir angegebenen OpenID anzumelden trat ein Problem auf. Bitte Ã¼berprüfe, dass Du die OpenID richtig geschrieben hast."
+msgstr "Beim Versuch, dich mit der von dir angegebenen OpenID anzumelden, trat ein Problem auf. Bitte Ã¼berprüfe, dass du die OpenID richtig geschrieben hast."
 
-#: src/Model/User.php:539 src/Module/Login.php:106
+#: src/Model/User.php:540 src/Module/Login.php:106
 msgid "The error message was:"
 msgstr "Die Fehlermeldung lautete:"
 
-#: src/Model/User.php:545
+#: src/Model/User.php:546
 msgid "Please enter the required information."
 msgstr "Bitte trage die erforderlichen Informationen ein."
 
-#: src/Model/User.php:559
+#: src/Model/User.php:560
 #, php-format
 msgid ""
 "system.username_min_length (%s) and system.username_max_length (%s) are "
 "excluding each other, swapping values."
 msgstr "system.username_min_length (%s) and system.username_max_length (%s) schließen sich gegenseitig aus, tausche Werte aus."
 
-#: src/Model/User.php:566
+#: src/Model/User.php:567
 #, php-format
 msgid "Username should be at least %s character."
 msgid_plural "Username should be at least %s characters."
 msgstr[0] "Der Benutzername sollte aus mindestens %s Zeichen bestehen."
 msgstr[1] "Der Benutzername sollte aus mindestens %s Zeichen bestehen."
 
-#: src/Model/User.php:570
+#: src/Model/User.php:571
 #, php-format
 msgid "Username should be at most %s character."
 msgid_plural "Username should be at most %s characters."
 msgstr[0] "Der Benutzername sollte aus maximal %s Zeichen bestehen."
 msgstr[1] "Der Benutzername sollte aus maximal %s Zeichen bestehen."
 
-#: src/Model/User.php:578
+#: src/Model/User.php:579
 msgid "That doesn't appear to be your full (First Last) name."
-msgstr "Das scheint nicht Dein kompletter Name (Vor- und Nachname) zu sein."
+msgstr "Das scheint nicht dein kompletter Name (Vor- und Nachname) zu sein."
 
-#: src/Model/User.php:583
+#: src/Model/User.php:584
 msgid "Your email domain is not among those allowed on this site."
-msgstr "Die Domain Deiner E-Mail Adresse ist auf dieser Seite nicht erlaubt."
+msgstr "Die Domain Deiner E-Mail-Adresse ist auf dieser Seite nicht erlaubt."
 
-#: src/Model/User.php:587
+#: src/Model/User.php:588
 msgid "Not a valid email address."
 msgstr "Keine gültige E-Mail-Adresse."
 
-#: src/Model/User.php:590
+#: src/Model/User.php:591
 msgid "The nickname was blocked from registration by the nodes admin."
 msgstr "Der Admin des Knotens hat den Spitznamen für die Registrierung gesperrt."
 
-#: src/Model/User.php:594 src/Model/User.php:602
+#: src/Model/User.php:595 src/Model/User.php:603
 msgid "Cannot use that email."
 msgstr "Konnte diese E-Mail-Adresse nicht verwenden."
 
-#: src/Model/User.php:609
+#: src/Model/User.php:610
 msgid "Your nickname can only contain a-z, 0-9 and _."
 msgstr "Dein Spitzname darf nur aus Buchstaben und Zahlen (\"a-z\",\"0-9\" und \"_\") bestehen."
 
-#: src/Model/User.php:616 src/Model/User.php:673
+#: src/Model/User.php:617 src/Model/User.php:674
 msgid "Nickname is already registered. Please choose another."
 msgstr "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen."
 
-#: src/Model/User.php:626
+#: src/Model/User.php:627
 msgid "SERIOUS ERROR: Generation of security keys failed."
 msgstr "FATALER FEHLER: Sicherheitsschlüssel konnten nicht erzeugt werden."
 
-#: src/Model/User.php:660 src/Model/User.php:664
+#: src/Model/User.php:661 src/Model/User.php:665
 msgid "An error occurred during registration. Please try again."
 msgstr "Während der Anmeldung ist ein Fehler aufgetreten. Bitte versuche es noch einmal."
 
-#: src/Model/User.php:689
+#: src/Model/User.php:685 view/theme/duepuntozero/config.php:55
+msgid "default"
+msgstr "Standard"
+
+#: src/Model/User.php:690
 msgid "An error occurred creating your default profile. Please try again."
 msgstr "Bei der Erstellung des Standardprofils ist ein Fehler aufgetreten. Bitte versuche es noch einmal."
 
-#: src/Model/User.php:696
+#: src/Model/User.php:697
 msgid "An error occurred creating your self contact. Please try again."
-msgstr "Bei der Erstellung deines self Kontakts ist ein Fehler aufgetreten. Bitte versuche es erneut."
+msgstr "Bei der Erstellung deines self-Kontakts ist ein Fehler aufgetreten. Bitte versuche es erneut."
 
-#: src/Model/User.php:705
+#: src/Model/User.php:706
 msgid ""
 "An error occurred creating your default contact group. Please try again."
 msgstr "Bei der Erstellung deiner Standardgruppe für Kontakte ist ein Fehler aufgetreten. Bitte versuche es erneut."
 
-#: src/Model/User.php:781
+#: src/Model/User.php:782
 #, php-format
 msgid ""
 "\n"
@@ -9023,23 +8793,23 @@ msgid ""
 "\t\t\tLogin Name:\t\t%4$s\n"
 "\t\t\tPassword:\t\t%5$s\n"
 "\t\t"
-msgstr "\n\t\t\tHallo %1$s,\n\t\t\t\tdanke für Deine Registrierung auf %2$s. Dein Account muss noch vom Admin des Knotens freigeschaltet werden.\n\n\t\t\tDeine Zugangsdaten lauten wie folgt:\n\n\t\t\tSeitenadresse:\t%3$s\n\t\t\tAnmeldename:\t\t%4$s\n\t\t\tPasswort:\t\t%5$s\n\t\t"
+msgstr "\n\t\t\tHallo %1$s,\n\t\t\t\tdanke für deine Registrierung auf %2$s. Dein Account muss noch vom Admin des Knotens freigeschaltet werden.\n\n\t\t\tDeine Zugangsdaten lauten wie folgt:\n\n\t\t\tSeitenadresse:\t%3$s\n\t\t\tAnmeldename:\t\t%4$s\n\t\t\tPasswort:\t\t%5$s\n\t\t"
 
-#: src/Model/User.php:798
+#: src/Model/User.php:799
 #, php-format
 msgid "Registration at %s"
 msgstr "Registrierung als %s"
 
-#: src/Model/User.php:817
+#: src/Model/User.php:818
 #, php-format
 msgid ""
 "\n"
 "\t\t\tDear %1$s,\n"
 "\t\t\t\tThank you for registering at %2$s. Your account has been created.\n"
 "\t\t"
-msgstr "\nHallo %1$s,\n\ndanke für Deine Registrierung auf %2$s. Dein Account wurde eingerichtet."
+msgstr "\nHallo %1$s,\n\ndanke für deine Registrierung auf %2$s. Dein Account wurde eingerichtet."
 
-#: src/Model/User.php:823
+#: src/Model/User.php:824
 #, php-format
 msgid ""
 "\n"
@@ -9069,53 +8839,7 @@ msgid ""
 "\t\t\tIf you ever want to delete your account, you can do so at %3$s/removeme\n"
 "\n"
 "\t\t\tThank you and welcome to %2$s."
-msgstr "\nDie Anmelde-Details sind die folgenden:\n\tAdresse der Seite:\t%3$s\n\tBenutzernamename:\t%1$s\n\tPasswort:\t%5$s\n\nDu kannst Dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald Du Dich\nangemeldet hast.\n\nBitte nimm Dir ein paar Minuten um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst Du ja auch einige Informationen Ã¼ber Dich in Deinem\nProfil veröffentlichen, damit andere Leute Dich einfacher finden können.\nBearbeite hierfür einfach Dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen Dir, Deinen kompletten Namen anzugeben und ein zu Dir\npassendes Profilbild zu wählen, damit Dich alte Bekannte wieder finden.\nAußerdem ist es nützlich, wenn Du auf Deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die Deine Interessen teilen.\n\nWir respektieren Deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn Du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %3$s/removeme jederzeit tun.\n\nDanke für Deine Aufmerksamkeit und willkommen auf %2$s."
-
-#: src/Protocol/Diaspora.php:2496
-msgid "Sharing notification from Diaspora network"
-msgstr "Freigabe-Benachrichtigung von Diaspora"
-
-#: src/Protocol/Diaspora.php:3613
-msgid "Attachments:"
-msgstr "Anhänge:"
-
-#: src/Protocol/OStatus.php:1302 src/Module/Profile.php:102
-#: src/Module/Profile.php:105
-#, php-format
-msgid "%s's timeline"
-msgstr "Timeline von %s"
-
-#: src/Protocol/OStatus.php:1306 src/Module/Profile.php:103
-#, php-format
-msgid "%s's posts"
-msgstr "Beiträge von %s"
-
-#: src/Protocol/OStatus.php:1309 src/Module/Profile.php:104
-#, php-format
-msgid "%s's comments"
-msgstr "Kommentare von %s"
-
-#: src/Protocol/OStatus.php:1866
-#, php-format
-msgid "%s is now following %s."
-msgstr "%s folgt nun %s"
-
-#: src/Protocol/OStatus.php:1867
-msgid "following"
-msgstr "folgen"
-
-#: src/Protocol/OStatus.php:1870
-#, php-format
-msgid "%s stopped following %s."
-msgstr "%s hat aufgehört %s zu folgen"
-
-#: src/Protocol/OStatus.php:1871
-msgid "stopped following"
-msgstr "wird nicht mehr gefolgt"
-
-#: src/Worker/Delivery.php:453
-msgid "(no subject)"
-msgstr "(kein Betreff)"
+msgstr "\nDie Anmelde-Details sind die folgenden:\n\tAdresse der Seite:\t%3$s\n\tBenutzernamename:\t%1$s\n\tPasswort:\t%5$s\n\nDu kannst dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald du dich\nangemeldet hast.\n\nBitte nimm dir ein paar Minuten, um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst du ja auch einige Informationen Ã¼ber dich in deinem\nProfil veröffentlichen, damit andere Leute dich einfacher finden können.\nBearbeite hierfür einfach dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen dir, deinen kompletten Namen anzugeben und ein zu dir\npassendes Profilbild zu wählen, damit dich alte Bekannte wiederfinden.\nAußerdem ist es nützlich, wenn du auf deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die deine Interessen teilen.\n\nWir respektieren deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %3$s/removeme jederzeit tun.\n\nDanke für deine Aufmerksamkeit und willkommen auf %2$s."
 
 #: src/Module/Attach.php:36 src/Module/Attach.php:48
 msgid "Item was not found."
@@ -9189,7 +8913,7 @@ msgstr "Du teilst mit %s"
 #: src/Module/Contact.php:496
 #, php-format
 msgid "%s is sharing with you"
-msgstr "%s teilt mit Dir"
+msgstr "%s teilt mit dir"
 
 #: src/Module/Contact.php:520
 msgid "Private communications are not available for this contact."
@@ -9229,7 +8953,7 @@ msgid ""
 "Fetch information like preview pictures, title and teaser from the feed "
 "item. You can activate this if the feed doesn't contain much text. Keywords "
 "are taken from the meta header in the feed item and are posted as hash tags."
-msgstr "Zusätzliche Informationen wie Vorschaubilder, Titel und Zusammenfassungen vom Feed-Eintrag laden. Du kannst diese Option aktivieren, wenn der Feed nicht all zu viel Text beinhaltet. Schlagwörter werden auf den Meta-Informationen des Feed-Headers bezogen und als Hash-Tags verwendet."
+msgstr "Zusätzliche Informationen wie Vorschaubilder, Titel und Zusammenfassungen vom Feed-Eintrag laden. Du kannst diese Option aktivieren, wenn der Feed nicht allzu viel Text beinhaltet. Schlagwörter werden aus den Meta-Informationen des Feed-Headers bezogen und als Hash-Tags verwendet."
 
 #: src/Module/Contact.php:547
 msgid "Fetch information"
@@ -9249,7 +8973,7 @@ msgstr "Profil-Sichtbarkeit"
 
 #: src/Module/Contact.php:582
 msgid "Contact Information / Notes"
-msgstr "Kontakt Informationen / Notizen"
+msgstr "Kontakt-Informationen / -Notizen"
 
 #: src/Module/Contact.php:583
 msgid "Contact Settings"
@@ -9264,7 +8988,7 @@ msgstr "Kontakt"
 msgid ""
 "Please choose the profile you would like to display to %s when viewing your "
 "profile securely."
-msgstr "Bitte wähle eines Deiner Profile das angezeigt werden soll, wenn %s Dein Profil aufruft."
+msgstr "Bitte wähle eines deiner Profile das angezeigt werden soll, wenn %s dein Profil aufruft."
 
 #: src/Module/Contact.php:598
 msgid "Their personal note"
@@ -9284,7 +9008,7 @@ msgstr "Ignoriere den Kontakt"
 
 #: src/Module/Contact.php:606
 msgid "Repair URL settings"
-msgstr "URL Einstellungen reparieren"
+msgstr "URL-Einstellungen reparieren"
 
 #: src/Module/Contact.php:607
 msgid "View conversations"
@@ -9338,7 +9062,7 @@ msgstr "Sende eine Benachrichtigung, wann immer dieser Kontakt einen neuen Beitr
 
 #: src/Module/Contact.php:633
 msgid "Blacklisted keywords"
-msgstr "Blacklistete Schlüsselworte "
+msgstr "Unterdrückte Schlüsselworte "
 
 #: src/Module/Contact.php:633
 msgid ""
@@ -9500,13 +9224,13 @@ msgstr "Um Friendica installieren zu können, müssen wir wissen, wie wir mit De
 msgid ""
 "Please contact your hosting provider or site administrator if you have "
 "questions about these settings."
-msgstr "Bitte kontaktiere den Hosting Provider oder den Administrator der Seite, falls Du Fragen zu diesen Einstellungen haben solltest."
+msgstr "Bitte kontaktiere den Hosting-Provider oder den Administrator der Seite, falls du Fragen zu diesen Einstellungen haben solltest."
 
 #: src/Module/Install.php:154
 msgid ""
 "The database you specify below should already exist. If it does not, please "
 "create it before continuing."
-msgstr "Die Datenbank, die Du unten angibst, sollte bereits existieren. Ist dies noch nicht der Fall, erzeuge sie bitte bevor Du mit der Installation fortfährst."
+msgstr "Die Datenbank, die du unten angibst, sollte bereits existieren. Ist dies noch nicht der Fall, erzeuge sie bitte, bevor du mit der Installation fortfährst."
 
 #: src/Module/Install.php:157
 msgid "Database Server Name"
@@ -9536,384 +9260,670 @@ msgstr "E-Mail-Adresse des Administrators"
 msgid ""
 "Your account email address must match this in order to use the web admin "
 "panel."
-msgstr "Die E-Mail-Adresse, die in Deinem Friendica-Account eingetragen ist, muss mit dieser Adresse Ã¼bereinstimmen, damit Du das Admin-Panel benutzen kannst."
+msgstr "Die E-Mail-Adresse, die in Deinem Friendica-Account eingetragen ist, muss mit dieser Adresse Ã¼bereinstimmen, damit du das Admin-Panel benutzen kannst."
 
 #: src/Module/Install.php:184 src/Module/Install.php:215
 msgid "Please select a default timezone for your website"
 msgstr "Bitte wähle die Standardzeitzone Deiner Webseite"
 
-#: src/Module/Install.php:208
-msgid "Site settings"
-msgstr "Server-Einstellungen"
+#: src/Module/Install.php:208
+msgid "Site settings"
+msgstr "Server-Einstellungen"
+
+#: src/Module/Install.php:217
+msgid "System Language:"
+msgstr "Systemsprache:"
+
+#: src/Module/Install.php:219
+msgid ""
+"Set the default language for your Friendica installation interface and to "
+"send emails."
+msgstr "Wähle die Standardsprache für deine Friendica-Installations-Oberfläche und den E-Mail-Versand"
+
+#: src/Module/Install.php:231
+msgid "Your Friendica site database has been installed."
+msgstr "Die Datenbank Deiner Friendica-Seite wurde installiert."
+
+#: src/Module/Install.php:239
+msgid "Installation finished"
+msgstr "Installation abgeschlossen"
+
+#: src/Module/Install.php:261
+msgid "<h1>What next</h1>"
+msgstr "<h1>Wie geht es weiter?</h1>"
+
+#: src/Module/Install.php:262
+msgid ""
+"IMPORTANT: You will need to [manually] setup a scheduled task for the "
+"worker."
+msgstr "Wichtig: du musst [manuell] einen Cronjob (o.ä.) für den Worker einrichten."
+
+#: src/Module/Install.php:265
+#, php-format
+msgid ""
+"Go to your new Friendica node <a href=\"%s/register\">registration page</a> "
+"and register as new user. Remember to use the same email you have entered as"
+" administrator email. This will allow you to enter the site admin panel."
+msgstr "Du solltest nun die Seite zur <a href=\"%s/register\">Nutzerregistrierung</a> deiner neuen Friendica Instanz besuchen und einen neuen Nutzer einrichten. Bitte denke daran, dieselbe E-Mail Adresse anzugeben, die du auch als Administrator-E-Mail angegeben hast, damit du das Admin-Panel verwenden kannst."
+
+#: src/Module/Itemsource.php:41
+msgid "Item Guid"
+msgstr "Beitrags-Guid"
+
+#: src/Module/Login.php:292
+msgid "Create a New Account"
+msgstr "Neues Konto erstellen"
+
+#: src/Module/Login.php:325
+msgid "Password: "
+msgstr "Passwort: "
+
+#: src/Module/Login.php:326
+msgid "Remember me"
+msgstr "Anmeldedaten merken"
+
+#: src/Module/Login.php:329
+msgid "Or login using OpenID: "
+msgstr "Oder melde dich mit deiner OpenID an: "
+
+#: src/Module/Login.php:335
+msgid "Forgot your password?"
+msgstr "Passwort vergessen?"
+
+#: src/Module/Login.php:338
+msgid "Website Terms of Service"
+msgstr "Website-Nutzungsbedingungen"
+
+#: src/Module/Login.php:339
+msgid "terms of service"
+msgstr "Nutzungsbedingungen"
+
+#: src/Module/Login.php:341
+msgid "Website Privacy Policy"
+msgstr "Website-Datenschutzerklärung"
+
+#: src/Module/Login.php:342
+msgid "privacy policy"
+msgstr "Datenschutzerklärung"
+
+#: src/Module/Logout.php:27
+msgid "Logged out."
+msgstr "Abgemeldet."
+
+#: src/Module/Profile.php:102 src/Module/Profile.php:105
+#: src/Protocol/OStatus.php:1302
+#, php-format
+msgid "%s's timeline"
+msgstr "Timeline von %s"
+
+#: src/Module/Profile.php:103 src/Protocol/OStatus.php:1306
+#, php-format
+msgid "%s's posts"
+msgstr "Beiträge von %s"
+
+#: src/Module/Profile.php:104 src/Protocol/OStatus.php:1309
+#, php-format
+msgid "%s's comments"
+msgstr "Kommentare von %s"
+
+#: src/Module/Proxy.php:73
+msgid "Bad Request."
+msgstr "Ungültige Anfrage."
+
+#: src/Module/Register.php:83
+msgid ""
+"You may (optionally) fill in this form via OpenID by supplying your OpenID "
+"and clicking \"Register\"."
+msgstr "Du kannst dieses Formular auch (optional) mit deiner OpenID ausfüllen, indem du deine OpenID angibst und 'Registrieren' klickst."
+
+#: src/Module/Register.php:84
+msgid ""
+"If you are not familiar with OpenID, please leave that field blank and fill "
+"in the rest of the items."
+msgstr "Wenn du nicht mit OpenID vertraut bist, lass dieses Feld bitte leer und fülle die restlichen Felder aus."
+
+#: src/Module/Register.php:85
+msgid "Your OpenID (optional): "
+msgstr "Deine OpenID (optional): "
+
+#: src/Module/Register.php:94
+msgid "Include your profile in member directory?"
+msgstr "Soll dein Profil im Nutzerverzeichnis angezeigt werden?"
+
+#: src/Module/Register.php:117
+msgid "Note for the admin"
+msgstr "Hinweis für den Admin"
+
+#: src/Module/Register.php:117
+msgid "Leave a message for the admin, why you want to join this node"
+msgstr "Hinterlasse eine Nachricht an den Admin, warum du einen Account auf dieser Instanz haben möchtest."
+
+#: src/Module/Register.php:118
+msgid "Membership on this site is by invitation only."
+msgstr "Mitgliedschaft auf dieser Seite ist nur nach vorheriger Einladung möglich."
+
+#: src/Module/Register.php:119
+msgid "Your invitation code: "
+msgstr "Dein Ein­la­dungs­code"
+
+#: src/Module/Register.php:127
+msgid "Your Full Name (e.g. Joe Smith, real or real-looking): "
+msgstr "Dein vollständiger Name (z.B. Hans Mustermann, echt oder echt erscheinend):"
+
+#: src/Module/Register.php:128
+msgid ""
+"Your Email Address: (Initial information will be send there, so this has to "
+"be an existing address.)"
+msgstr "Deine E-Mail Adresse (Informationen zur Registrierung werden an diese Adresse gesendet, darum muss sie existieren.)"
+
+#: src/Module/Register.php:130
+msgid "Leave empty for an auto generated password."
+msgstr "Leer lassen, um das Passwort automatisch zu generieren."
+
+#: src/Module/Register.php:132
+#, php-format
+msgid ""
+"Choose a profile nickname. This must begin with a text character. Your "
+"profile address on this site will then be \"<strong>nickname@%s</strong>\"."
+msgstr "Wähle einen Spitznamen für dein Profil. Dieser muss mit einem Buchstaben beginnen. Die Adresse deines Profils auf dieser Seite wird '<strong>spitzname@%s</strong>' sein."
+
+#: src/Module/Register.php:133
+msgid "Choose a nickname: "
+msgstr "Spitznamen wählen: "
+
+#: src/Module/Register.php:142
+msgid "Import your profile to this friendica instance"
+msgstr "Importiere dein Profil auf diese Friendica-Instanz"
+
+#: src/Module/Register.php:150
+msgid "Note: This node explicitly contains adult content"
+msgstr "Hinweis: Dieser Knoten enthält explizit Inhalte für Erwachsene"
+
+#: src/Module/Register.php:243
+msgid ""
+"Registration successful. Please check your email for further instructions."
+msgstr "Registrierung erfolgreich. Eine E-Mail mit weiteren Anweisungen wurde an dich gesendet."
+
+#: src/Module/Register.php:247
+#, php-format
+msgid ""
+"Failed to send email message. Here your accout details:<br> login: %s<br> "
+"password: %s<br><br>You can change your password after login."
+msgstr "Versenden der E-Mail fehlgeschlagen. Hier sind Deine Account-Details:\n\nLogin: %s\nPasswort: %s\n\nDu kannst das Passwort nach dem Anmelden Ã¤ndern."
+
+#: src/Module/Register.php:254
+msgid "Registration successful."
+msgstr "Registrierung erfolgreich."
+
+#: src/Module/Register.php:259
+msgid "Your registration can not be processed."
+msgstr "Deine Registrierung konnte nicht verarbeitet werden."
+
+#: src/Module/Register.php:305
+msgid "Your registration is pending approval by the site owner."
+msgstr "Deine Registrierung muss noch vom Betreiber der Seite freigegeben werden."
+
+#: src/Module/Tos.php:35 src/Module/Tos.php:77
+msgid ""
+"At the time of registration, and for providing communications between the "
+"user account and their contacts, the user has to provide a display name (pen"
+" name), an username (nickname) and a working email address. The names will "
+"be accessible on the profile page of the account by any visitor of the page,"
+" even if other profile details are not displayed. The email address will "
+"only be used to send the user notifications about interactions, but wont be "
+"visibly displayed. The listing of an account in the node's user directory or"
+" the global user directory is optional and can be controlled in the user "
+"settings, it is not necessary for communication."
+msgstr "Zum Zwecke der Registrierung und um die Kommunikation zwischen dem Nutzer und seinen Kontakten zu gewährleisten, muß der Nutzer einen Namen (auch Pseudonym) und einen Nutzernamen (Spitzname) sowie eine funktionierende E-Mail-Adresse angeben. Der Name ist auf der Profilseite für alle Nutzer sichtbar, auch wenn die Profildetails nicht angezeigt werden.\nDie E-Mail-Adresse wird nur zur Benachrichtigung des Nutzers verwendet, sie wird nirgends angezeigt. Die Anzeige des Nutzerkontos im Server-Verzeichnis bzw. dem weltweiten Verzeichnis erfolgt gemäß den Einstellungen des Nutzers, sie ist zur Kommunikation nicht zwingend notwendig."
+
+#: src/Module/Tos.php:36 src/Module/Tos.php:78
+msgid ""
+"This data is required for communication and is passed on to the nodes of the"
+" communication partners and is stored there. Users can enter additional "
+"private data that may be transmitted to the communication partners accounts."
+msgstr "Diese Daten sind für die Kommunikation notwendig und werden an die Knoten der Kommunikationspartner Ã¼bermittelt und dort gespeichert. Nutzer können weitere, private Angaben machen, die ebenfalls an die verwendeten Server der Kommunikationspartner Ã¼bermittelt werden können."
+
+#: src/Module/Tos.php:37 src/Module/Tos.php:79
+#, php-format
+msgid ""
+"At any point in time a logged in user can export their account data from the"
+" <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants "
+"to delete their account they can do so at <a "
+"href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will "
+"be permanent. Deletion of the data will also be requested from the nodes of "
+"the communication partners."
+msgstr "Angemeldete Nutzer können ihre Nutzerdaten jederzeit von den <a href=\"%1$s/settings/uexport\">Kontoeinstellungen</a> aus exportieren. Wenn ein Nutzer wünscht das Nutzerkonto zu löschen, so ist dies jederzeit unter <a href=\"%1$s/removeme\">%1$s/removeme</a> möglich. Die Löschung des Nutzerkontos ist permanent. Die Löschung der Daten wird auch von den Knoten der Kommunikationspartner angefordert."
+
+#: src/Module/Tos.php:40 src/Module/Tos.php:76
+msgid "Privacy Statement"
+msgstr "Datenschutzerklärung"
+
+#: src/Object/Post.php:136
+msgid "This entry was edited"
+msgstr "Dieser Beitrag wurde bearbeitet."
+
+#: src/Object/Post.php:198
+msgid "Delete locally"
+msgstr "Lokal löschen"
+
+#: src/Object/Post.php:201
+msgid "Delete globally"
+msgstr "Global löschen"
+
+#: src/Object/Post.php:201
+msgid "Remove locally"
+msgstr "Lokal entfernen"
+
+#: src/Object/Post.php:215
+msgid "save to folder"
+msgstr "In Ordner speichern"
+
+#: src/Object/Post.php:250
+msgid "I will attend"
+msgstr "Ich werde teilnehmen"
+
+#: src/Object/Post.php:250
+msgid "I will not attend"
+msgstr "Ich werde nicht teilnehmen"
+
+#: src/Object/Post.php:250
+msgid "I might attend"
+msgstr "Ich werde eventuell teilnehmen"
+
+#: src/Object/Post.php:278
+msgid "ignore thread"
+msgstr "Thread ignorieren"
+
+#: src/Object/Post.php:279
+msgid "unignore thread"
+msgstr "Thread nicht mehr ignorieren"
+
+#: src/Object/Post.php:280
+msgid "toggle ignore status"
+msgstr "Ignoriert-Status ein-/ausschalten"
+
+#: src/Object/Post.php:291
+msgid "add star"
+msgstr "markieren"
+
+#: src/Object/Post.php:292
+msgid "remove star"
+msgstr "Markierung entfernen"
+
+#: src/Object/Post.php:293
+msgid "toggle star status"
+msgstr "Markierung umschalten"
+
+#: src/Object/Post.php:296
+msgid "starred"
+msgstr "markiert"
+
+#: src/Object/Post.php:300
+msgid "add tag"
+msgstr "Tag hinzufügen"
+
+#: src/Object/Post.php:311
+msgid "like"
+msgstr "mag ich"
+
+#: src/Object/Post.php:312
+msgid "dislike"
+msgstr "mag ich nicht"
+
+#: src/Object/Post.php:315
+msgid "Share this"
+msgstr "Weitersagen"
+
+#: src/Object/Post.php:315
+msgid "share"
+msgstr "Teilen"
+
+#: src/Object/Post.php:382
+msgid "to"
+msgstr "zu"
+
+#: src/Object/Post.php:383
+msgid "via"
+msgstr "via"
+
+#: src/Object/Post.php:384
+msgid "Wall-to-Wall"
+msgstr "Wall-to-Wall"
 
-#: src/Module/Install.php:217
-msgid "System Language:"
-msgstr "Systemsprache:"
+#: src/Object/Post.php:385
+msgid "via Wall-To-Wall:"
+msgstr "via Wall-To-Wall:"
 
-#: src/Module/Install.php:219
-msgid ""
-"Set the default language for your Friendica installation interface and to "
-"send emails."
-msgstr "Wähle die Standardsprache für deine Friendica-Installations-Oberfläche und den E-Mail-Versand"
+#: src/Object/Post.php:418
+#, php-format
+msgid "Reply to %s"
+msgstr "Antworte %s"
 
-#: src/Module/Install.php:231
-msgid "Your Friendica site database has been installed."
-msgstr "Die Datenbank Deiner Friendicaseite wurde installiert."
+#: src/Object/Post.php:433
+msgid "Notifier task is pending"
+msgstr "Die Benachrichtigungsaufgabe ist ausstehend"
 
-#: src/Module/Install.php:239
-msgid "Installation finished"
-msgstr "Installation abgeschlossen"
+#: src/Object/Post.php:434
+msgid "Delivery to remote servers is pending"
+msgstr "Die Auslieferung an Remote-Server steht noch aus"
 
-#: src/Module/Install.php:261
-msgid "<h1>What next</h1>"
-msgstr "<h1>Wie geht es weiter?</h1>"
+#: src/Object/Post.php:435
+msgid "Delivery to remote servers is underway"
+msgstr "Die Auslieferung an Remote-Server ist unterwegs"
 
-#: src/Module/Install.php:262
-msgid ""
-"IMPORTANT: You will need to [manually] setup a scheduled task for the "
-"worker."
-msgstr "Wichtig: Du musst [manuell] einen Cronjob (o.ä.) für den Worker einrichten."
+#: src/Object/Post.php:436
+msgid "Delivery to remote servers is mostly done"
+msgstr "Die Zustellung an Remote-Server ist fast erledigt"
 
-#: src/Module/Install.php:265
-#, php-format
-msgid ""
-"Go to your new Friendica node <a href=\"%s/register\">registration page</a> "
-"and register as new user. Remember to use the same email you have entered as"
-" administrator email. This will allow you to enter the site admin panel."
-msgstr "Du solltest nun die Seite zur <a href=\"%s/register\">Nutzerregistrierung</a> deiner neuen Friendica Instanz besuchen und einen neuen Nutzer einrichten. Bitte denke daran die selbe E-Mail Adresse anzugeben, die du auch als Administrator E-Mail angegeben hast, damit du das Admin-Panel verwenden kannst."
+#: src/Object/Post.php:437
+msgid "Delivery to remote servers is done"
+msgstr "Die Zustellung an die Remote-Server ist erledigt"
 
-#: src/Module/Itemsource.php:41
-msgid "Item Guid"
-msgstr "Beitrags-Guid"
+#: src/Object/Post.php:457
+#, php-format
+msgid "%d comment"
+msgid_plural "%d comments"
+msgstr[0] "%d Kommentar"
+msgstr[1] "%d Kommentare"
 
-#: src/Module/Login.php:292
-msgid "Create a New Account"
-msgstr "Neues Konto erstellen"
+#: src/Object/Post.php:458
+msgid "Show more"
+msgstr "Zeige mehr"
 
-#: src/Module/Login.php:325
-msgid "Password: "
-msgstr "Passwort: "
+#: src/Object/Post.php:459
+msgid "Show fewer"
+msgstr "Zeige weniger"
 
-#: src/Module/Login.php:326
-msgid "Remember me"
-msgstr "Anmeldedaten merken"
+#: src/Protocol/Diaspora.php:2496
+msgid "Sharing notification from Diaspora network"
+msgstr "Freigabe-Benachrichtigung von Diaspora"
 
-#: src/Module/Login.php:329
-msgid "Or login using OpenID: "
-msgstr "Oder melde Dich mit Deiner OpenID an: "
+#: src/Protocol/Diaspora.php:3613
+msgid "Attachments:"
+msgstr "Anhänge:"
 
-#: src/Module/Login.php:335
-msgid "Forgot your password?"
-msgstr "Passwort vergessen?"
+#: src/Protocol/OStatus.php:1866
+#, php-format
+msgid "%s is now following %s."
+msgstr "%s folgt nun %s"
 
-#: src/Module/Login.php:338
-msgid "Website Terms of Service"
-msgstr "Website Nutzungsbedingungen"
+#: src/Protocol/OStatus.php:1867
+msgid "following"
+msgstr "folgen"
 
-#: src/Module/Login.php:339
-msgid "terms of service"
-msgstr "Nutzungsbedingungen"
+#: src/Protocol/OStatus.php:1870
+#, php-format
+msgid "%s stopped following %s."
+msgstr "%s hat aufgehört %s, zu folgen"
 
-#: src/Module/Login.php:341
-msgid "Website Privacy Policy"
-msgstr "Website Datenschutzerklärung"
+#: src/Protocol/OStatus.php:1871
+msgid "stopped following"
+msgstr "wird nicht mehr gefolgt"
 
-#: src/Module/Login.php:342
-msgid "privacy policy"
-msgstr "Datenschutzerklärung"
+#: src/Util/Temporal.php:151
+msgid "YYYY-MM-DD or MM-DD"
+msgstr "YYYY-MM-DD oder MM-DD"
 
-#: src/Module/Logout.php:27
-msgid "Logged out."
-msgstr "Abgemeldet."
+#: src/Util/Temporal.php:298
+msgid "never"
+msgstr "nie"
 
-#: src/Module/Proxy.php:73
-msgid "Bad Request."
-msgstr "Ungültige Anfrage."
+#: src/Util/Temporal.php:305
+msgid "less than a second ago"
+msgstr "vor weniger als einer Sekunde"
 
-#: src/Module/Register.php:83
-msgid ""
-"You may (optionally) fill in this form via OpenID by supplying your OpenID "
-"and clicking \"Register\"."
-msgstr "Du kannst dieses Formular auch (optional) mit deiner OpenID ausfüllen, indem du deine OpenID angibst und 'Registrieren' klickst."
+#: src/Util/Temporal.php:313
+msgid "year"
+msgstr "Jahr"
 
-#: src/Module/Register.php:84
-msgid ""
-"If you are not familiar with OpenID, please leave that field blank and fill "
-"in the rest of the items."
-msgstr "Wenn Du nicht mit OpenID vertraut bist, lass dieses Feld bitte leer und fülle die restlichen Felder aus."
+#: src/Util/Temporal.php:313
+msgid "years"
+msgstr "Jahre"
 
-#: src/Module/Register.php:85
-msgid "Your OpenID (optional): "
-msgstr "Deine OpenID (optional): "
+#: src/Util/Temporal.php:314
+msgid "months"
+msgstr "Monate"
 
-#: src/Module/Register.php:94
-msgid "Include your profile in member directory?"
-msgstr "Soll Dein Profil im Nutzerverzeichnis angezeigt werden?"
+#: src/Util/Temporal.php:315
+msgid "weeks"
+msgstr "Wochen"
 
-#: src/Module/Register.php:117
-msgid "Note for the admin"
-msgstr "Hinweis für den Admin"
+#: src/Util/Temporal.php:316
+msgid "days"
+msgstr "Tage"
 
-#: src/Module/Register.php:117
-msgid "Leave a message for the admin, why you want to join this node"
-msgstr "Hinterlasse eine Nachricht an den Admin, warum du einen Account auf dieser Instanz haben möchtest."
+#: src/Util/Temporal.php:317
+msgid "hour"
+msgstr "Stunde"
 
-#: src/Module/Register.php:118
-msgid "Membership on this site is by invitation only."
-msgstr "Mitgliedschaft auf dieser Seite ist nur nach vorheriger Einladung möglich."
+#: src/Util/Temporal.php:317
+msgid "hours"
+msgstr "Stunden"
 
-#: src/Module/Register.php:119
-msgid "Your invitation code: "
-msgstr "Dein Ein­la­dungs­code"
+#: src/Util/Temporal.php:318
+msgid "minute"
+msgstr "Minute"
 
-#: src/Module/Register.php:127
-msgid "Your Full Name (e.g. Joe Smith, real or real-looking): "
-msgstr "Dein vollständiger Name (z.B. Hans Mustermann, echt oder echt erscheinend):"
+#: src/Util/Temporal.php:318
+msgid "minutes"
+msgstr "Minuten"
 
-#: src/Module/Register.php:128
-msgid ""
-"Your Email Address: (Initial information will be send there, so this has to "
-"be an existing address.)"
-msgstr "Deine E-Mail Adresse (Informationen zur Registrierung werden an diese Adresse gesendet, darum muss sie existieren.)"
+#: src/Util/Temporal.php:319
+msgid "second"
+msgstr "Sekunde"
 
-#: src/Module/Register.php:130
-msgid "Leave empty for an auto generated password."
-msgstr "Leer lassen um das Passwort automatisch zu generieren."
+#: src/Util/Temporal.php:319
+msgid "seconds"
+msgstr "Sekunden"
 
-#: src/Module/Register.php:132
+#: src/Util/Temporal.php:329
 #, php-format
-msgid ""
-"Choose a profile nickname. This must begin with a text character. Your "
-"profile address on this site will then be \"<strong>nickname@%s</strong>\"."
-msgstr "Wähle einen Spitznamen für Dein Profil. Dieser muss mit einem Buchstaben beginnen. Die Adresse Deines Profils auf dieser Seite wird '<strong>spitzname@%s</strong>' sein."
-
-#: src/Module/Register.php:133
-msgid "Choose a nickname: "
-msgstr "Spitznamen wählen: "
+msgid "in %1$d %2$s"
+msgstr "in %1$d %2$s"
 
-#: src/Module/Register.php:142
-msgid "Import your profile to this friendica instance"
-msgstr "Importiere Dein Profil auf diese Friendica Instanz"
+#: src/Util/Temporal.php:332
+#, php-format
+msgid "%1$d %2$s ago"
+msgstr "vor %1$d %2$s"
 
-#: src/Module/Register.php:150
-msgid "Note: This node explicitly contains adult content"
-msgstr "Hinweis: Dieser Knoten enthält explizit Inhalte für Erwachsene"
+#: src/Worker/Delivery.php:453
+msgid "(no subject)"
+msgstr "(kein Betreff)"
 
-#: src/Module/Register.php:243
-msgid ""
-"Registration successful. Please check your email for further instructions."
-msgstr "Registrierung erfolgreich. Eine E-Mail mit weiteren Anweisungen wurde an Dich gesendet."
+#: update.php:217
+#, php-format
+msgid "%s: Updating author-id and owner-id in item and thread table. "
+msgstr "%s: Aktualisiere die author-id und owner-id in der Thread Tabelle"
 
-#: src/Module/Register.php:247
+#: update.php:272
 #, php-format
-msgid ""
-"Failed to send email message. Here your accout details:<br> login: %s<br> "
-"password: %s<br><br>You can change your password after login."
-msgstr "Versenden der E-Mail fehlgeschlagen. Hier sind Deine Account Details:\n\nLogin: %s\nPasswort: %s\n\nDu kannst das Passwort nach dem Anmelden Ã¤ndern."
+msgid "%s: Updating post-type."
+msgstr "%s: Aktualisiere Beitrags-Typ"
 
-#: src/Module/Register.php:254
-msgid "Registration successful."
-msgstr "Registrierung erfolgreich."
+#: view/theme/duepuntozero/config.php:56
+msgid "greenzero"
+msgstr "greenzero"
 
-#: src/Module/Register.php:259
-msgid "Your registration can not be processed."
-msgstr "Deine Registrierung konnte nicht verarbeitet werden."
+#: view/theme/duepuntozero/config.php:57
+msgid "purplezero"
+msgstr "purplezero"
 
-#: src/Module/Register.php:305
-msgid "Your registration is pending approval by the site owner."
-msgstr "Deine Registrierung muss noch vom Betreiber der Seite freigegeben werden."
+#: view/theme/duepuntozero/config.php:58
+msgid "easterbunny"
+msgstr "easterbunny"
 
-#: src/Module/Tos.php:35 src/Module/Tos.php:77
-msgid ""
-"At the time of registration, and for providing communications between the "
-"user account and their contacts, the user has to provide a display name (pen"
-" name), an username (nickname) and a working email address. The names will "
-"be accessible on the profile page of the account by any visitor of the page,"
-" even if other profile details are not displayed. The email address will "
-"only be used to send the user notifications about interactions, but wont be "
-"visibly displayed. The listing of an account in the node's user directory or"
-" the global user directory is optional and can be controlled in the user "
-"settings, it is not necessary for communication."
-msgstr "Zum Zwecke der Registrierung und um die Kommunikation zwischen dem Nutzer und seinen Kontakten zu gewährleisten, muß der Nutzer einen Namen (auch Pseudonym) und einen Nutzernamen (Spitzname) sowie eine funktionierende E-Mail-Adresse angeben. Der Name ist auf der Profilseite für alle Nutzer sichtbar, auch wenn die Profildetails nicht angezeigt werden.\nDie E-Mail-Adresse wird nur zur Benachrichtigung des Nutzers verwendet, sie wird nirgends angezeigt. Die Anzeige des Nutzerkontos im Server-Verzeichnis bzw. dem weltweiten Verzeichnis erfolgt gemäß den Einstellungen des Nutzers, sie ist zur Kommunikation nicht zwingend notwendig."
+#: view/theme/duepuntozero/config.php:59
+msgid "darkzero"
+msgstr "darkzero"
+
+#: view/theme/duepuntozero/config.php:60
+msgid "comix"
+msgstr "comix"
 
-#: src/Module/Tos.php:36 src/Module/Tos.php:78
-msgid ""
-"This data is required for communication and is passed on to the nodes of the"
-" communication partners and is stored there. Users can enter additional "
-"private data that may be transmitted to the communication partners accounts."
-msgstr "Diese Daten sind für die Kommunikation notwendig und werden an die Knoten der Kommunikationspartner Ã¼bermittelt. und werden dort gespeichert Nutzer können weitere private Angaben machen, die ebenfalls an die verwendeten Server der Kommunikationspartner Ã¼bermittelt werden können."
+#: view/theme/duepuntozero/config.php:61
+msgid "slackr"
+msgstr "slackr"
 
-#: src/Module/Tos.php:37 src/Module/Tos.php:79
-#, php-format
-msgid ""
-"At any point in time a logged in user can export their account data from the"
-" <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants "
-"to delete their account they can do so at <a "
-"href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will "
-"be permanent. Deletion of the data will also be requested from the nodes of "
-"the communication partners."
-msgstr "Angemeldete Nutzer können ihre Nutzerdaten jederzeit von den <a href=\"%1$s/settings/uexport\">Kontoeinstellungen</a> aus exportieren. Wenn ein Nutzer wünscht das Nutzerkonto zu löschen, so ist dies jederzeit unter <a href=\"%1$s/removeme\">%1$s/removeme</a> möglich. Die Löschung des Nutzerkontos ist permanent. Die Löschung der Daten wird auch von den Knoten der Kommunikationspartner angefordert."
+#: view/theme/duepuntozero/config.php:75
+msgid "Variations"
+msgstr "Variationen"
 
-#: src/Module/Tos.php:40 src/Module/Tos.php:76
-msgid "Privacy Statement"
-msgstr "Datenschutzerklärung"
+#: view/theme/frio/config.php:103
+msgid "Custom"
+msgstr "Benutzerdefiniert"
 
-#: src/Object/Post.php:136
-msgid "This entry was edited"
-msgstr "Dieser Beitrag wurde bearbeitet."
+#: view/theme/frio/config.php:115
+msgid "Note"
+msgstr "Hinweis"
 
-#: src/Object/Post.php:198
-msgid "Delete locally"
-msgstr "Lokal löschen"
+#: view/theme/frio/config.php:115
+msgid "Check image permissions if all users are allowed to see the image"
+msgstr "Ãœberprüfe, dass alle Benutzer die Berechtigung haben dieses Bild anzusehen"
 
-#: src/Object/Post.php:201
-msgid "Delete globally"
-msgstr "Global löschen"
+#: view/theme/frio/config.php:122
+msgid "Select color scheme"
+msgstr "Farbschema auswählen"
 
-#: src/Object/Post.php:201
-msgid "Remove locally"
-msgstr "Lokal entfernen"
+#: view/theme/frio/config.php:123
+msgid "Navigation bar background color"
+msgstr "Hintergrundfarbe der Navigationsleiste"
 
-#: src/Object/Post.php:215
-msgid "save to folder"
-msgstr "In Ordner speichern"
+#: view/theme/frio/config.php:124
+msgid "Navigation bar icon color "
+msgstr "Icon Farbe in der Navigationsleiste"
 
-#: src/Object/Post.php:250
-msgid "I will attend"
-msgstr "Ich werde teilnehmen"
+#: view/theme/frio/config.php:125
+msgid "Link color"
+msgstr "Linkfarbe"
 
-#: src/Object/Post.php:250
-msgid "I will not attend"
-msgstr "Ich werde nicht teilnehmen"
+#: view/theme/frio/config.php:126
+msgid "Set the background color"
+msgstr "Hintergrundfarbe festlegen"
 
-#: src/Object/Post.php:250
-msgid "I might attend"
-msgstr "Ich werde eventuell teilnehmen"
+#: view/theme/frio/config.php:127
+msgid "Content background opacity"
+msgstr "Opazität des Hintergrunds von Beiträgen"
 
-#: src/Object/Post.php:278
-msgid "ignore thread"
-msgstr "Thread ignorieren"
+#: view/theme/frio/config.php:128
+msgid "Set the background image"
+msgstr "Hintergrundbild festlegen"
 
-#: src/Object/Post.php:279
-msgid "unignore thread"
-msgstr "Thread nicht mehr ignorieren"
+#: view/theme/frio/config.php:129
+msgid "Background image style"
+msgstr "Stil des Hintergrundbildes"
 
-#: src/Object/Post.php:280
-msgid "toggle ignore status"
-msgstr "Ignoriert-Status ein-/ausschalten"
+#: view/theme/frio/config.php:134
+msgid "Login page background image"
+msgstr "Hintergrundbild der Login-Seite"
 
-#: src/Object/Post.php:291
-msgid "add star"
-msgstr "markieren"
+#: view/theme/frio/config.php:138
+msgid "Login page background color"
+msgstr "Hintergrundfarbe der Login-Seite"
 
-#: src/Object/Post.php:292
-msgid "remove star"
-msgstr "Markierung entfernen"
+#: view/theme/frio/config.php:138
+msgid "Leave background image and color empty for theme defaults"
+msgstr "Wenn die Theme-Vorgaben verwendet werden sollen, lass bitte die Felder für die Hintergrundfarbe und das Hintergrundbild leer."
 
-#: src/Object/Post.php:293
-msgid "toggle star status"
-msgstr "Markierung umschalten"
+#: view/theme/frio/php/Image.php:24
+msgid "Top Banner"
+msgstr "Top Banner"
 
-#: src/Object/Post.php:296
-msgid "starred"
-msgstr "markiert"
+#: view/theme/frio/php/Image.php:24
+msgid ""
+"Resize image to the width of the screen and show background color below on "
+"long pages."
+msgstr "Skaliere das Hintergrundbild so, dass es die Breite der Seite einnimmt, und fülle den Rest der Seite mit der Hintergrundfarbe bei langen Seiten."
 
-#: src/Object/Post.php:300
-msgid "add tag"
-msgstr "Tag hinzufügen"
+#: view/theme/frio/php/Image.php:25
+msgid "Full screen"
+msgstr "Vollbildmodus"
 
-#: src/Object/Post.php:311
-msgid "like"
-msgstr "mag ich"
+#: view/theme/frio/php/Image.php:25
+msgid ""
+"Resize image to fill entire screen, clipping either the right or the bottom."
+msgstr "Skaliere das Bild so, dass es den gesamten Bildschirm füllt. Hierfür wird entweder die Breite oder die Höhe des Bildes automatisch abgeschnitten."
 
-#: src/Object/Post.php:312
-msgid "dislike"
-msgstr "mag ich nicht"
+#: view/theme/frio/php/Image.php:26
+msgid "Single row mosaic"
+msgstr "Mosaik in einer Zeile"
 
-#: src/Object/Post.php:315
-msgid "Share this"
-msgstr "Weitersagen"
+#: view/theme/frio/php/Image.php:26
+msgid ""
+"Resize image to repeat it on a single row, either vertical or horizontal."
+msgstr "Skaliere das Bild so, dass es in einer einzelnen Reihe, entweder horizontal oder vertikal, wiederholt wird."
 
-#: src/Object/Post.php:315
-msgid "share"
-msgstr "Teilen"
+#: view/theme/frio/php/Image.php:27
+msgid "Mosaic"
+msgstr "Mosaik"
 
-#: src/Object/Post.php:382
-msgid "to"
-msgstr "zu"
+#: view/theme/frio/php/Image.php:27
+msgid "Repeat image to fill the screen."
+msgstr "Wiederhole das Bild, um den Bildschirm zu füllen."
 
-#: src/Object/Post.php:383
-msgid "via"
-msgstr "via"
+#: view/theme/frio/theme.php:239
+msgid "Guest"
+msgstr "Gast"
 
-#: src/Object/Post.php:384
-msgid "Wall-to-Wall"
-msgstr "Wall-to-Wall"
+#: view/theme/frio/theme.php:244
+msgid "Visitor"
+msgstr "Besucher"
 
-#: src/Object/Post.php:385
-msgid "via Wall-To-Wall:"
-msgstr "via Wall-To-Wall:"
+#: view/theme/quattro/config.php:77
+msgid "Alignment"
+msgstr "Ausrichtung"
 
-#: src/Object/Post.php:432
-msgid "Notifier task is pending"
-msgstr "Die Benachrichtigungsaufgabe ist ausstehend"
+#: view/theme/quattro/config.php:77
+msgid "Left"
+msgstr "Links"
 
-#: src/Object/Post.php:433
-msgid "Delivery to remote servers is pending"
-msgstr "Die Auslieferung an Remote-Server steht noch aus"
+#: view/theme/quattro/config.php:77
+msgid "Center"
+msgstr "Mitte"
 
-#: src/Object/Post.php:434
-msgid "Delivery to remote servers is underway"
-msgstr "Die Auslieferung an Remote-Server ist unterwegs"
+#: view/theme/quattro/config.php:78
+msgid "Color scheme"
+msgstr "Farbschema"
 
-#: src/Object/Post.php:435
-msgid "Delivery to remote servers is mostly done"
-msgstr "Die Zustellung an Remote-Server ist fast erledigt"
+#: view/theme/quattro/config.php:79
+msgid "Posts font size"
+msgstr "Schriftgröße in Beiträgen"
 
-#: src/Object/Post.php:436
-msgid "Delivery to remote servers is done"
-msgstr "Die Zustellung an die Remote-Server ist erledigt."
+#: view/theme/quattro/config.php:80
+msgid "Textareas font size"
+msgstr "Schriftgröße in Eingabefeldern"
 
-#: src/Object/Post.php:455
-#, php-format
-msgid "%d comment"
-msgid_plural "%d comments"
-msgstr[0] "%d Kommentar"
-msgstr[1] "%d Kommentare"
+#: view/theme/vier/config.php:76
+msgid "Comma separated list of helper forums"
+msgstr "Komma-separierte Liste der Helfer-Foren"
 
-#: src/App.php:665
-msgid "Delete this item?"
-msgstr "Diesen Beitrag löschen?"
+#: view/theme/vier/config.php:123
+msgid "Set style"
+msgstr "Stil auswählen"
 
-#: src/App.php:667
-msgid "show fewer"
-msgstr "weniger anzeigen"
+#: view/theme/vier/config.php:124
+msgid "Community Pages"
+msgstr "Foren"
 
-#: src/App.php:709
-msgid "toggle mobile"
-msgstr "mobile Ansicht umschalten"
+#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
+msgid "Community Profiles"
+msgstr "Community-Profile"
 
-#: src/App.php:1077
-msgid "No system theme config value set."
-msgstr "Es wurde kein Konfigurationswert für das Systemweite Theme gesetzt."
+#: view/theme/vier/config.php:126
+msgid "Help or @NewHere ?"
+msgstr "Hilfe oder @NewHere"
 
-#: src/BaseModule.php:133
-msgid ""
-"The form security token was not correct. This probably happened because the "
-"form has been opened for too long (>3 hours) before submitting it."
-msgstr "Das Sicherheitsmerkmal war nicht korrekt. Das passiert meistens wenn das Formular vor dem Absenden zu lange geöffnet war (länger als 3 Stunden)."
+#: view/theme/vier/config.php:127 view/theme/vier/theme.php:373
+msgid "Connect Services"
+msgstr "Verbinde Dienste"
 
-#: src/LegacyModule.php:30
-#, php-format
-msgid "Legacy module file not found: %s"
-msgstr "Legacy-Moduldatei nicht gefunden: %s"
+#: view/theme/vier/config.php:128
+msgid "Find Friends"
+msgstr "Kontakte finden"
 
-#: update.php:217
-#, php-format
-msgid "%s: Updating author-id and owner-id in item and thread table. "
-msgstr "%s: Aktualisiere die author-id und owner-id in der Thread Tabelle"
+#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
+msgid "Last users"
+msgstr "Letzte Nutzer"
 
-#: update.php:272
-#, php-format
-msgid "%s: Updating post-type."
-msgstr "%s: Aktualisiere Beitrags-Typ"
+#: view/theme/vier/theme.php:288
+msgid "Quick Start"
+msgstr "Schnell-Start"
index c180955803ce42542592968f14f01e6b7040fd53..f4659b9c35a8326b182c59b617dfbe68d997b272 100644 (file)
@@ -77,7 +77,7 @@ $a->strings["Visible to <strong>everybody</strong>"] = "Für <strong>jedermann</
 $a->strings["Please enter a image/video/audio/webpage URL:"] = "Bitte gib eine Bild/Video/Audio/Webseiten-URL ein:";
 $a->strings["Tag term:"] = "Tag:";
 $a->strings["Save to Folder:"] = "In diesem Ordner speichern:";
-$a->strings["Where are you right now?"] = "Wo hältst Du Dich jetzt gerade auf?";
+$a->strings["Where are you right now?"] = "Wo hältst du dich jetzt gerade auf?";
 $a->strings["Delete item(s)?"] = "Einträge löschen?";
 $a->strings["New Post"] = "Neuer Beitrag";
 $a->strings["Share"] = "Teilen";
@@ -131,22 +131,22 @@ $a->strings["Thank You,"] = "Danke,";
 $a->strings["%1\$s, %2\$s Administrator"] = "%1\$s, %2\$s Administrator";
 $a->strings["%s Administrator"] = "der Administrator von %s";
 $a->strings["[Friendica:Notify] New mail received at %s"] = "[Friendica-Meldung] Neue Email erhalten um %s";
-$a->strings["%1\$s sent you a new private message at %2\$s."] = "%1\$s hat Dir eine neue private Nachricht um %2\$s geschickt.";
+$a->strings["%1\$s sent you a new private message at %2\$s."] = "%1\$s hat dir eine neue, private Nachricht um %2\$s geschickt.";
 $a->strings["a private message"] = "eine private Nachricht";
-$a->strings["%1\$s sent you %2\$s."] = "%1\$s schickte Dir %2\$s.";
+$a->strings["%1\$s sent you %2\$s."] = "%1\$s schickte dir %2\$s.";
 $a->strings["Please visit %s to view and/or reply to your private messages."] = "Bitte besuche %s, um Deine privaten Nachrichten anzusehen und/oder zu beantworten.";
 $a->strings["%1\$s tagged you on [url=%2\$s]a %3\$s[/url]"] = "%1\$s erwähnte dich in [url=%2\$s] einem %3\$s[/url]";
 $a->strings["%1\$s commented on [url=%2\$s]a %3\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]a %3\$s[/url]";
 $a->strings["%1\$s tagged you on [url=%2\$s]%3\$s's %4\$s[/url]"] = "%1\$s erwähnte dich auf  [url=%2\$s]%3\$s's %4\$s[/url]";
 $a->strings["%1\$s commented on [url=%2\$s]%3\$s's %4\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]%3\$ss %4\$s[/url]";
-$a->strings["%1\$s tagged you on [url=%2\$s]your %3\$s[/url]"] = "%1\$s erwähnte dich auf [url=%2\$s] deinem %3\$s[/url]";
+$a->strings["%1\$s tagged you on [url=%2\$s]your %3\$s[/url]"] = "%1\$s erwähnte dich auf [url=%2\$s]deinem %3\$s[/url]";
 $a->strings["%1\$s commented on [url=%2\$s]your %3\$s[/url]"] = "%1\$s kommentierte [url=%2\$s]deinen %3\$s[/url]";
 $a->strings["%1\$s tagged you on [url=%2\$s]their %3\$s[/url]"] = "%1\$s erwähnte dich im [url=%2\$s]eigenen %3\$s[/url]";
-$a->strings["%1\$s commented on [url=%2\$s]their %3\$s[/url]"] = "%1\$s kommentierte den [url=%2\$s] eigenen %3\$s[/url]";
-$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica-Meldung] %s hat Dich erwähnt";
-$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s erwähnte Dich auf %2\$s";
+$a->strings["%1\$s commented on [url=%2\$s]their %3\$s[/url]"] = "%1\$s kommentierte den [url=%2\$s]eigenen %3\$s[/url]";
+$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica-Meldung] %s hat dich erwähnt";
+$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s erwähnte dich auf %2\$s";
 $a->strings["[Friendica:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Friendica-Meldung] Kommentar zum Beitrag #%1\$d von %2\$s";
-$a->strings["%s commented on an item/conversation you have been following."] = "%s hat einen Beitrag kommentiert, dem Du folgst.";
+$a->strings["%s commented on an item/conversation you have been following."] = "%s hat einen Beitrag kommentiert, dem du folgst.";
 $a->strings["Please visit %s to view and/or reply to the conversation."] = "Bitte besuche %s, um die Konversation anzusehen und/oder zu kommentieren.";
 $a->strings["[Friendica:Notify] %s posted to your profile wall"] = "[Friendica-Meldung] %s hat auf Deine Pinnwand geschrieben";
 $a->strings["%1\$s posted to your profile wall at %2\$s"] = "%1\$s schrieb um %2\$s auf Deine Pinnwand";
@@ -154,20 +154,20 @@ $a->strings["%1\$s posted to [url=%2\$s]your wall[/url]"] = "%1\$s hat etwas auf
 $a->strings["[Friendica:Notify] %s shared a new post"] = "[Friendica Benachrichtigung] %s hat einen Beitrag geteilt";
 $a->strings["%1\$s shared a new post at %2\$s"] = "%1\$s hat einen neuen Beitrag auf %2\$s geteilt";
 $a->strings["%1\$s [url=%2\$s]shared a post[/url]."] = "%1\$s [url=%2\$s]hat einen Beitrag geteilt[/url].";
-$a->strings["[Friendica:Notify] %1\$s poked you"] = "[Friendica-Meldung] %1\$s hat Dich angestupst";
-$a->strings["%1\$s poked you at %2\$s"] = "%1\$s hat Dich auf %2\$s angestupst";
-$a->strings["%1\$s [url=%2\$s]poked you[/url]."] = "%1\$s [url=%2\$s]hat Dich angestupst[/url].";
+$a->strings["[Friendica:Notify] %1\$s poked you"] = "[Friendica-Meldung] %1\$s hat dich angestupst";
+$a->strings["%1\$s poked you at %2\$s"] = "%1\$s hat dich auf %2\$s angestupst";
+$a->strings["%1\$s [url=%2\$s]poked you[/url]."] = "%1\$s [url=%2\$s]hat dich angestupst[/url].";
 $a->strings["[Friendica:Notify] %s tagged your post"] = "[Friendica-Meldung] %s hat Deinen Beitrag getaggt";
 $a->strings["%1\$s tagged your post at %2\$s"] = "%1\$s erwähnte Deinen Beitrag auf %2\$s";
 $a->strings["%1\$s tagged [url=%2\$s]your post[/url]"] = "%1\$s erwähnte [url=%2\$s]Deinen Beitrag[/url]";
 $a->strings["[Friendica:Notify] Introduction received"] = "[Friendica-Meldung] Kontaktanfrage erhalten";
 $a->strings["You've received an introduction from '%1\$s' at %2\$s"] = "Du hast eine Kontaktanfrage von '%1\$s' auf %2\$s erhalten";
 $a->strings["You've received [url=%1\$s]an introduction[/url] from %2\$s."] = "Du hast eine [url=%1\$s]Kontaktanfrage[/url] von %2\$s erhalten.";
-$a->strings["You may visit their profile at %s"] = "Hier kannst Du das Profil betrachten: %s";
+$a->strings["You may visit their profile at %s"] = "Hier kannst du das Profil betrachten: %s";
 $a->strings["Please visit %s to approve or reject the introduction."] = "Bitte besuche %s, um die Kontaktanfrage anzunehmen oder abzulehnen.";
-$a->strings["[Friendica:Notify] A new person is sharing with you"] = "[Friendica Benachrichtigung] Eine neue Person teilt mit Dir";
-$a->strings["%1\$s is sharing with you at %2\$s"] = "%1\$s teilt mit Dir auf %2\$s";
-$a->strings["[Friendica:Notify] You have a new follower"] = "[Friendica Benachrichtigung] Du hast einen neuen Kontakt auf ";
+$a->strings["[Friendica:Notify] A new person is sharing with you"] = "[Friendica Benachrichtigung] Eine neue Person teilt mit dir";
+$a->strings["%1\$s is sharing with you at %2\$s"] = "%1\$s teilt mit dir auf %2\$s";
+$a->strings["[Friendica:Notify] You have a new follower"] = "[Friendica-Benachrichtigung] Du hast einen neuen Kontakt";
 $a->strings["You have a new follower at %2\$s : %1\$s"] = "Du hast einen neuen Kontakt auf %2\$s: %1\$s";
 $a->strings["[Friendica:Notify] Friend suggestion received"] = "[Friendica-Meldung] Kontaktvorschlag erhalten";
 $a->strings["You've received a friend suggestion from '%1\$s' at %2\$s"] = "Du hast einen Kontakt-Vorschlag von '%1\$s' auf %2\$s erhalten";
@@ -178,27 +178,23 @@ $a->strings["Please visit %s to approve or reject the suggestion."] = "Bitte bes
 $a->strings["[Friendica:Notify] Connection accepted"] = "[Friendica-Benachrichtigung] Kontaktanfrage bestätigt";
 $a->strings["'%1\$s' has accepted your connection request at %2\$s"] = "'%1\$s' hat Deine Kontaktanfrage auf  %2\$s bestätigt";
 $a->strings["%2\$s has accepted your [url=%1\$s]connection request[/url]."] = "%2\$s hat Deine [url=%1\$s]Kontaktanfrage[/url] akzeptiert.";
-$a->strings["You are now mutual friends and may exchange status updates, photos, and email without restriction."] = "Ihr seid nun beidseitige Kontakte und könnt Statusmitteilungen, Bilder und Emails ohne Einschränkungen austauschen.";
-$a->strings["Please visit %s if you wish to make any changes to this relationship."] = "Bitte besuche %s, wenn Du Ã„nderungen an eurer Beziehung vornehmen willst.";
-$a->strings["'%1\$s' has chosen to accept you a fan, which restricts some forms of communication - such as private messaging and some profile interactions. If this is a celebrity or community page, these settings were applied automatically."] = "'%1\$s' hat sich entschieden Dich als Fan zu akzeptieren, dies schränkt einige Kommunikationswege - wie private Nachrichten und einige Interaktionsmöglichkeiten auf der Profilseite - ein. Wenn dies eine Berühmtheiten- oder Gemeinschaftsseite ist, werden diese Einstellungen automatisch vorgenommen.";
+$a->strings["You are now mutual friends and may exchange status updates, photos, and email without restriction."] = "Ihr seid nun beidseitige Kontakte und könnt Statusmitteilungen, Bilder und E-Mails ohne Einschränkungen austauschen.";
+$a->strings["Please visit %s if you wish to make any changes to this relationship."] = "Bitte besuche %s, wenn du Ã„nderungen an eurer Beziehung vornehmen willst.";
+$a->strings["'%1\$s' has chosen to accept you a fan, which restricts some forms of communication - such as private messaging and some profile interactions. If this is a celebrity or community page, these settings were applied automatically."] = "'%1\$s' hat sich entschieden dich als Fan zu akzeptieren, dies schränkt einige Kommunikationswege - wie private Nachrichten und einige Interaktionsmöglichkeiten auf der Profilseite - ein. Wenn dies eine Berühmtheiten- oder Gemeinschaftsseite ist, werden diese Einstellungen automatisch vorgenommen.";
 $a->strings["'%1\$s' may choose to extend this into a two-way or more permissive relationship in the future."] = "'%1\$s' kann den Kontaktstatus zu einem späteren Zeitpunkt erweitern und diese Einschränkungen aufheben. ";
-$a->strings["Please visit %s  if you wish to make any changes to this relationship."] = "Bitte besuche %s, wenn Du Ã„nderungen an eurer Beziehung vornehmen willst.";
-$a->strings["[Friendica System Notify]"] = "[Friendica System Benachrichtigung]";
+$a->strings["Please visit %s  if you wish to make any changes to this relationship."] = "Bitte besuche %s, wenn du Ã„nderungen an eurer Beziehung vornehmen willst.";
+$a->strings["[Friendica System Notify]"] = "[Friendica-Systembenachrichtigung]";
 $a->strings["registration request"] = "Registrierungsanfrage";
 $a->strings["You've received a registration request from '%1\$s' at %2\$s"] = "Du hast eine Registrierungsanfrage von %2\$s auf '%1\$s' erhalten";
 $a->strings["You've received a [url=%1\$s]registration request[/url] from %2\$s."] = "Du hast eine [url=%1\$s]Registrierungsanfrage[/url] von %2\$s erhalten.";
 $a->strings["Full Name:\t%s\nSite Location:\t%s\nLogin Name:\t%s (%s)"] = "Kompletter Name: %s\nURL der Seite: %s\nLogin Name: %s(%s)";
-$a->strings["Please visit %s to approve or reject the request."] = "Bitte besuche %s um die Anfrage zu bearbeiten.";
+$a->strings["Please visit %s to approve or reject the request."] = "Bitte besuche %s, um die Anfrage zu bearbeiten.";
 $a->strings["Item not found."] = "Beitrag nicht gefunden.";
-$a->strings["Do you really want to delete this item?"] = "Möchtest Du wirklich dieses Item löschen?";
+$a->strings["Do you really want to delete this item?"] = "Möchtest du wirklich dieses Item löschen?";
 $a->strings["Yes"] = "Ja";
 $a->strings["Permission denied."] = "Zugriff verweigert.";
 $a->strings["Archives"] = "Archiv";
 $a->strings["show more"] = "mehr anzeigen";
-$a->strings["You must be logged in to use addons. "] = "Sie müssen angemeldet sein um Addons benutzen zu können.";
-$a->strings["Applications"] = "Anwendungen";
-$a->strings["No installed applications."] = "Keine Applikationen installiert.";
-$a->strings["System down for maintenance"] = "System zur Wartung abgeschaltet";
 $a->strings["Theme settings updated."] = "Themeneinstellungen aktualisiert.";
 $a->strings["Information"] = "Information";
 $a->strings["Overview"] = "Ãœbersicht";
@@ -222,17 +218,17 @@ $a->strings["Delete Item"] = "Eintrag löschen";
 $a->strings["Logs"] = "Protokolle";
 $a->strings["View Logs"] = "Protokolle anzeigen";
 $a->strings["Diagnostics"] = "Diagnostik";
-$a->strings["PHP Info"] = "PHP Info";
+$a->strings["PHP Info"] = "PHP-Info";
 $a->strings["probe address"] = "Adresse untersuchen";
 $a->strings["check webfinger"] = "Webfinger Ã¼berprüfen";
 $a->strings["Admin"] = "Administration";
 $a->strings["Addon Features"] = "Addon Features";
-$a->strings["User registrations waiting for confirmation"] = "Nutzeranmeldungen die auf Bestätigung warten";
+$a->strings["User registrations waiting for confirmation"] = "Nutzeranmeldungen, die auf Bestätigung warten";
 $a->strings["Administration"] = "Administration";
 $a->strings["Display Terms of Service"] = "Nutzungsbedingungen anzeigen";
-$a->strings["Enable the Terms of Service page. If this is enabled a link to the terms will be added to the registration form and the general information page."] = "Aktiviert die Seite für die Nutzungsbedingungen. Ist dies der Fall werden sie auch von der Registrierungsseite und der allgemeinen Informationsseite verlinkt.";
+$a->strings["Enable the Terms of Service page. If this is enabled a link to the terms will be added to the registration form and the general information page."] = "Aktiviert die Seite für die Nutzungsbedingungen. Ist dies der Fall, werden sie auch von der Registrierungsseite und der allgemeinen Informationsseite verlinkt.";
 $a->strings["Display Privacy Statement"] = "Datenschutzerklärung anzeigen";
-$a->strings["Show some informations regarding the needed information to operate the node according e.g. to <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."] = "Zeige Informationen Ã¼ber die zum Betrieb der Seite notwendigen personenbezogenen Daten an, wie es z.B. die <a href=\"%s\" target=\"_blank\">EU-DSGVO</a> verlangt.";
+$a->strings["Show some informations regarding the needed information to operate the node according e.g. to <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."] = "Zeige Informationen Ã¼ber die zum Betrieb der Seite notwendigen, personenbezogenen Daten an, wie es z.B. die <a href=\"%s\" target=\"_blank\">EU-DSGVO</a> verlangt.";
 $a->strings["Privacy Statement Preview"] = "Vorschau: Datenschutzerklärung";
 $a->strings["The Terms of Service"] = "Die Nutzungsbedingungen";
 $a->strings["Enter the Terms of Service for your node here. You can use BBCode. Headers of sections should be [h2] and below."] = "Füge hier die Nutzungsbedingungen deines Knotens ein. Du kannst BBCode zur Formatierung verwenden. Ãœberschriften sollten [h2] oder darunter sein.";
@@ -240,14 +236,14 @@ $a->strings["Save Settings"] = "Einstellungen speichern";
 $a->strings["Blocked domain"] = "Blockierte Domain";
 $a->strings["The blocked domain"] = "Die blockierte Domain";
 $a->strings["Reason for the block"] = "Begründung für die Blockierung";
-$a->strings["The reason why you blocked this domain."] = "Die Begründung warum du diese Domain blockiert hast.";
+$a->strings["The reason why you blocked this domain."] = "Die Begründung, warum du diese Domain blockiert hast.";
 $a->strings["Delete domain"] = "Domain löschen";
 $a->strings["Check to delete this entry from the blocklist"] = "Markieren, um diesen Eintrag von der Blocklist zu entfernen";
-$a->strings["This page can be used to define a black list of servers from the federated network that are not allowed to interact with your node. For all entered domains you should also give a reason why you have blocked the remote server."] = "Auf dieser Seite kannst du die Liste der blockierten Domains aus dem föderalen Netzwerk verwalten, denen es untersagt ist mit deinem Knoten zu interagieren. Für jede der blockierten Domains musst du außerdem einen Grund für die Sperrung angeben.";
-$a->strings["The list of blocked servers will be made publically available on the /friendica page so that your users and people investigating communication problems can find the reason easily."] = "Die Liste der blockierten Domains wird auf der /friendica Seite Ã¶ffentlich einsehbar gemacht, damit deine Nutzer und Personen die Kommunikationsprobleme erkunden, die Ursachen einfach finden können.";
+$a->strings["This page can be used to define a black list of servers from the federated network that are not allowed to interact with your node. For all entered domains you should also give a reason why you have blocked the remote server."] = "Auf dieser Seite kannst du die Liste der blockierten Domains aus dem föderalen Netzwerk verwalten, denen es untersagt ist, mit deinem Knoten zu interagieren. Für jede der blockierten Domains musst du außerdem einen Grund für die Sperrung angeben.";
+$a->strings["The list of blocked servers will be made publically available on the /friendica page so that your users and people investigating communication problems can find the reason easily."] = "Die Liste der blockierten Domains wird auf der /friendica Seite Ã¶ffentlich einsehbar gemacht, damit deine Nutzer und Personen, die Kommunikationsprobleme erkunden, die Ursachen einfach finden können.";
 $a->strings["Add new entry to block list"] = "Neuen Eintrag in die Blockliste";
 $a->strings["Server Domain"] = "Domain des Servers";
-$a->strings["The domain of the new server to add to the block list. Do not include the protocol."] = "Der Domain-Name des Servers der geblockt werden soll. Gib das Protokoll nicht mit an!";
+$a->strings["The domain of the new server to add to the block list. Do not include the protocol."] = "Der Domain-Name des Servers, der geblockt werden soll. Gib das Protokoll nicht mit an!";
 $a->strings["Block reason"] = "Begründung der Blockierung";
 $a->strings["Add Entry"] = "Eintrag hinzufügen";
 $a->strings["Save changes to the blocklist"] = "Änderungen der Blockliste speichern";
@@ -280,44 +276,44 @@ $a->strings["%s total blocked contact"] = [
        0 => "Insgesamt %s blockierter Kontakt",
        1 => "Insgesamt %s blockierte Kontakte",
 ];
-$a->strings["URL of the remote contact to block."] = "Die URL des Kontakts, vom entfernten Server, der blockiert werden soll.";
+$a->strings["URL of the remote contact to block."] = "Die URL des entfernten Kontakts, der blockiert werden soll.";
 $a->strings["Delete this Item"] = "Diesen Eintrag löschen";
 $a->strings["On this page you can delete an item from your node. If the item is a top level posting, the entire thread will be deleted."] = "Auf dieser Seite kannst du Einträge von deinem Knoten löschen. Wenn der Eintrag der Anfang einer Diskussion ist, wird der gesamte Diskussionsverlauf gelöscht.";
-$a->strings["You need to know the GUID of the item. You can find it e.g. by looking at the display URL. The last part of http://example.com/display/123456 is the GUID, here 123456."] = "Zur Löschung musst du die GUID des Eintrags kennen. Diese findest du z.B. durch die /display URL des Eintrags. Der letzte Teil der URL ist die GUID. Lautet die URL beispielsweise http://example.com/display/123456 ist die GUID 123456.";
+$a->strings["You need to know the GUID of the item. You can find it e.g. by looking at the display URL. The last part of http://example.com/display/123456 is the GUID, here 123456."] = "Zur Löschung musst du die GUID des Eintrags kennen. Diese findest du z.B. durch die /display URL des Eintrags. Der letzte Teil der URL ist die GUID. Lautet die URL beispielsweise http://example.com/display/123456, ist die GUID 123456.";
 $a->strings["GUID"] = "GUID";
 $a->strings["The GUID of the item you want to delete."] = "Die GUID des zu löschenden Eintrags";
 $a->strings["Item marked for deletion."] = "Eintrag wurden zur Löschung markiert";
 $a->strings["unknown"] = "Unbekannt";
 $a->strings["This page offers you some numbers to the known part of the federated social network your Friendica node is part of. These numbers are not complete but only reflect the part of the network your node is aware of."] = "Diese Seite präsentiert einige Zahlen zu dem bekannten Teil des föderalen sozialen Netzwerks, von dem deine Friendica Installation ein Teil ist. Diese Zahlen sind nicht absolut und reflektieren nur den Teil des Netzwerks, den dein Knoten kennt.";
-$a->strings["The <em>Auto Discovered Contact Directory</em> feature is not enabled, it will improve the data displayed here."] = "Die Funktion um <em>Regelmäßig globale Kontakte Ã¼berprüfen</em> ist nicht aktiv. Es wird die hier angezeigten Daten verbessern.";
+$a->strings["The <em>Auto Discovered Contact Directory</em> feature is not enabled, it will improve the data displayed here."] = "Die Funktion <em>\"Regelmäßig globale Kontakte Ã¼berprüfen\"</em> ist nicht aktiv. Sie wird die hier angezeigten Daten verbessern.";
 $a->strings["Currently this node is aware of %d nodes with %d registered users from the following platforms:"] = "Momentan kennt dieser Knoten %d Knoten mit insgesamt %d registrierten Nutzern, die die folgenden Plattformen verwenden:";
 $a->strings["ID"] = "ID";
-$a->strings["Recipient Name"] = "Empfänger Name";
-$a->strings["Recipient Profile"] = "Empfänger Profil";
+$a->strings["Recipient Name"] = "Empfänger-Name";
+$a->strings["Recipient Profile"] = "Empfänger-Profil";
 $a->strings["Network"] = "Netzwerk";
 $a->strings["Created"] = "Erstellt";
 $a->strings["Last Tried"] = "Zuletzt versucht";
-$a->strings["This page lists the content of the queue for outgoing postings. These are postings the initial delivery failed for. They will be resend later and eventually deleted if the delivery fails permanently."] = "Auf dieser Seite werden die in der Warteschlange eingereihten Beiträge aufgelistet. Bei diesen Beiträgen schlug die erste Zustellung fehl. Es wird später wiederholt versucht die Beiträge zuzustellen, bis sie schließlich gelöscht werden.";
+$a->strings["This page lists the content of the queue for outgoing postings. These are postings the initial delivery failed for. They will be resend later and eventually deleted if the delivery fails permanently."] = "Auf dieser Seite werden die in der Warteschlange eingereihten Beiträge aufgelistet. Bei diesen Beiträgen schlug die erste Zustellung fehl. Es wird später wiederholt versucht, die Beiträge zuzustellen, bis sie schließlich gelöscht werden.";
 $a->strings["Inspect Deferred Worker Queue"] = "Verzögerte Worker-Warteschlange inspizieren";
 $a->strings["This page lists the deferred worker jobs. This are jobs that couldn't be executed at the first time."] = "Auf dieser Seite werden die aufgeschobenen Worker-Jobs aufgelistet. Dies sind Jobs, die beim ersten Mal nicht ausgeführt werden konnten.";
-$a->strings["Inspect Worker Queue"] = "Worker Warteschlange inspizieren";
-$a->strings["This page lists the currently queued worker jobs. These jobs are handled by the worker cronjob you've set up during install."] = "Auf dieser Seite werden die derzeit in der Warteschlange befindlichen Worker-Jobs aufgelistet. Diese Jobs werden vom Cronjob verarbeitet, den Sie während der Installation eingerichtet haben.";
+$a->strings["Inspect Worker Queue"] = "Worker-Warteschlange inspizieren";
+$a->strings["This page lists the currently queued worker jobs. These jobs are handled by the worker cronjob you've set up during install."] = "Auf dieser Seite werden die derzeit in der Warteschlange befindlichen Worker-Jobs aufgelistet. Diese Jobs werden vom Cronjob verarbeitet, den du während der Installation eingerichtet hast.";
 $a->strings["Job Parameters"] = "Parameter der Aufgabe";
 $a->strings["Priority"] = "Priorität";
-$a->strings["Your DB still runs with MyISAM tables. You should change the engine type to InnoDB. As Friendica will use InnoDB only features in the future, you should change this! See <a href=\"%s\">here</a> for a guide that may be helpful converting the table engines. You may also use the command <tt>php bin/console.php dbstructure toinnodb</tt> of your Friendica installation for an automatic conversion.<br />"] = "Deine DB verwendet derzeit noch MyISAM Tabellen. Du solltest die Datenbank Engine auf InnoDB umstellen, da Friendica in Zukunft InnoDB Features verwenden wird. Eine Anleitung zur Umstellung der Datenbank kannst du  <a href=\"%s\">hier</a>  finden. Du kannst außerdem mit dem Befehl <tt>php bin/console.php dbstructure toinnodb</tt> auf der Kommandozeile die Umstellung automatisch vornehmen lassen.";
+$a->strings["Your DB still runs with MyISAM tables. You should change the engine type to InnoDB. As Friendica will use InnoDB only features in the future, you should change this! See <a href=\"%s\">here</a> for a guide that may be helpful converting the table engines. You may also use the command <tt>php bin/console.php dbstructure toinnodb</tt> of your Friendica installation for an automatic conversion.<br />"] = "Deine DB verwendet derzeit noch MyISAM Tabellen. Du solltest die Datenbank Engine auf InnoDB umstellen, da Friendica in Zukunft InnoDB-Features verwenden wird. Eine Anleitung zur Umstellung der Datenbank kannst du  <a href=\"%s\">hier</a>  finden. Du kannst außerdem mit dem Befehl <tt>php bin/console.php dbstructure toinnodb</tt> auf der Kommandozeile die Umstellung automatisch vornehmen lassen.";
 $a->strings["There is a new version of Friendica available for download. Your current version is %1\$s, upstream version is %2\$s"] = "Es gibt eine neue Version von Friendica. Du verwendest derzeit die Version %1\$s, die aktuelle Version ist %2\$s.";
 $a->strings["The database update failed. Please run \"php bin/console.php dbstructure update\" from the command line and have a look at the errors that might appear."] = "Das Update der Datenbank ist fehlgeschlagen. Bitte führe 'php bin/console.php dbstructure update' in der Kommandozeile aus und achte auf eventuell auftretende Fehlermeldungen.";
 $a->strings["The worker was never executed. Please check your database structure!"] = "Der Hintergrundprozess (worker) wurde noch nie gestartet. Bitte Ã¼berprüfe deine Datenbankstruktur.";
-$a->strings["The last worker execution was on %s UTC. This is older than one hour. Please check your crontab settings."] = "Der Hintergrundprozess (worker) wurde zuletzt um %s UTC ausgeführt. Das war vor mehr als einer Stunde. Bitte Ã¼berprüfe deine crontab Einstellungen.";
-$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>.htconfig.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.ini.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>.htconfig.php</code>. Wie die Ãœbertragung der Werte aussehen muss kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen.";
-$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>config/local.ini.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.config.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>config/local.ini.php</code>. Wie die Ãœbertragung der Werte aussehen muss kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen.";
-$a->strings["<a href=\"%s\">%s</a> is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See <a href=\"%s\">the installation page</a> for help."] = "<a href=\"%s\">%s</a> konnte von deinem System nicht aufgerufen werden. Dies deitet auf ein schwerwiegendes Problem deiner Konfiguration hin. Bitte konsultiere <a href=\"%s\">die Installations-Dokumentation</a> zum Beheben des Problems.";
+$a->strings["The last worker execution was on %s UTC. This is older than one hour. Please check your crontab settings."] = "Der Hintergrundprozess (worker) wurde zuletzt um %s UTC ausgeführt. Das war vor mehr als einer Stunde. Bitte Ã¼berprüfe deine crontab-Einstellungen.";
+$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>.htconfig.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.ini.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>.htconfig.php</code>. Wie die Ãœbertragung der Werte aussehen muss, kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen.";
+$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>config/local.ini.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "Die Konfiguration von Friendica befindet sich ab jetzt in der 'config/local.config.php' Datei. Kopiere bitte die Datei  'config/local-sample.config.php' nach 'config/local.config.php' und setze die Konfigurationvariablen so wie in der alten <code>config/local.ini.php</code>. Wie die Ãœbertragung der Werte aussehen muss, kannst du der <a href=\"%s\">Konfiguration Hilfeseite</a> entnehmen.";
+$a->strings["<a href=\"%s\">%s</a> is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See <a href=\"%s\">the installation page</a> for help."] = "<a href=\"%s\">%s</a> konnte von deinem System nicht aufgerufen werden. Dies deutet auf ein schwerwiegendes Problem deiner Konfiguration hin. Bitte konsultiere <a href=\"%s\">die Installations-Dokumentation</a> zum Beheben des Problems.";
 $a->strings["Normal Account"] = "Normales Konto";
 $a->strings["Automatic Follower Account"] = "Automatisch folgendes Konto (Marktschreier)";
-$a->strings["Public Forum Account"] = "Öffentliches Forum Konto";
-$a->strings["Automatic Friend Account"] = "Automatische Freunde Seite";
+$a->strings["Public Forum Account"] = "Öffentliches Forum-Konto";
+$a->strings["Automatic Friend Account"] = "Automatische Freunde-Seite";
 $a->strings["Blog Account"] = "Blog-Konto";
-$a->strings["Private Forum Account"] = "Privates Forum Konto";
+$a->strings["Private Forum Account"] = "Privates Forum-Konto";
 $a->strings["Message queues"] = "Nachrichten-Warteschlangen";
 $a->strings["Server Settings"] = "Servereinstellungen";
 $a->strings["Summary"] = "Zusammenfassung";
@@ -340,11 +336,11 @@ $a->strings["One month"] = "ein Monat";
 $a->strings["Three months"] = "drei Monate";
 $a->strings["Half a year"] = "ein halbes Jahr";
 $a->strings["One year"] = "ein Jahr";
-$a->strings["Multi user instance"] = "Mehrbenutzer Instanz";
+$a->strings["Multi user instance"] = "Mehrbenutzer-Instanz";
 $a->strings["Closed"] = "Geschlossen";
 $a->strings["Requires approval"] = "Bedarf der Zustimmung";
 $a->strings["Open"] = "Offen";
-$a->strings["No SSL policy, links will track page SSL state"] = "Keine SSL Richtlinie, Links werden das verwendete Protokoll beibehalten";
+$a->strings["No SSL policy, links will track page SSL state"] = "Keine SSL-Richtlinie, Links werden das verwendete Protokoll beibehalten";
 $a->strings["Force all links to use SSL"] = "SSL für alle Links erzwingen";
 $a->strings["Self-signed certificate, use SSL for local links only (discouraged)"] = "Selbst-unterzeichnetes Zertifikat, SSL nur für lokale Links verwenden (nicht empfohlen)";
 $a->strings["Don't check"] = "Nicht Ã¼berprüfen";
@@ -359,41 +355,41 @@ $a->strings["Advanced"] = "Erweitert";
 $a->strings["Auto Discovered Contact Directory"] = "Automatisch ein Kontaktverzeichnis erstellen";
 $a->strings["Performance"] = "Performance";
 $a->strings["Worker"] = "Worker";
-$a->strings["Message Relay"] = "Nachrichten Relais";
+$a->strings["Message Relay"] = "Nachrichten-Relais";
 $a->strings["Relocate Instance"] = "Instanz Umziehen";
 $a->strings["Warning! Advanced function. Could make this server unreachable."] = "WARNUNG: Funktion für Fortgeschrittene. Könnte diesen Server unerreichbar machen.";
 $a->strings["Site name"] = "Seitenname";
 $a->strings["Host name"] = "Host Name";
 $a->strings["Sender Email"] = "Absender für Emails";
-$a->strings["The email address your server shall use to send notification emails from."] = "Die E-Mail Adresse die dein Server zum Versenden von Benachrichtigungen verwenden soll.";
+$a->strings["The email address your server shall use to send notification emails from."] = "Die E-Mail Adresse, die dein Server zum Versenden von Benachrichtigungen verwenden soll.";
 $a->strings["Banner/Logo"] = "Banner/Logo";
 $a->strings["Shortcut icon"] = "Shortcut Icon";
 $a->strings["Link to an icon that will be used for browsers."] = "Link zu einem Icon, das Browser verwenden werden.";
 $a->strings["Touch icon"] = "Touch Icon";
-$a->strings["Link to an icon that will be used for tablets and mobiles."] = "Link zu einem Icon das Tablets und Handies verwenden sollen.";
+$a->strings["Link to an icon that will be used for tablets and mobiles."] = "Link zu einem Icon, das Tablets und Mobiltelefone verwenden sollen.";
 $a->strings["Additional Info"] = "Zusätzliche Informationen";
-$a->strings["For public servers: you can add additional information here that will be listed at %s/servers."] = "Für Ã¶ffentliche Server kannst Du hier zusätzliche Informationen angeben, die dann auf %s/servers angezeigt werden.";
+$a->strings["For public servers: you can add additional information here that will be listed at %s/servers."] = "Für Ã¶ffentliche Server kannst du hier zusätzliche Informationen angeben, die dann auf %s/servers angezeigt werden.";
 $a->strings["System language"] = "Systemsprache";
 $a->strings["System theme"] = "Systemweites Theme";
 $a->strings["Default system theme - may be over-ridden by user profiles - <a href='#' id='cnftheme'>change theme settings</a>"] = "Vorgabe für das System-Theme - kann von Benutzerprofilen Ã¼berschrieben werden - <a href='#' id='cnftheme'>Theme-Einstellungen Ã¤ndern</a>";
 $a->strings["Mobile system theme"] = "Systemweites mobiles Theme";
-$a->strings["Theme for mobile devices"] = "Thema für mobile Geräte";
+$a->strings["Theme for mobile devices"] = "Theme für mobile Geräte";
 $a->strings["SSL link policy"] = "Regeln für SSL Links";
 $a->strings["Determines whether generated links should be forced to use SSL"] = "Bestimmt, ob generierte Links SSL verwenden müssen";
 $a->strings["Force SSL"] = "Erzwinge SSL";
-$a->strings["Force all Non-SSL requests to SSL - Attention: on some systems it could lead to endless loops."] = "Erzinge alle Nicht-SSL Anfragen auf SSL - Achtung: auf manchen Systemen verursacht dies eine Endlosschleife.";
-$a->strings["Hide help entry from navigation menu"] = "Verberge den Menüeintrag für die Hilfe im Navigationsmenü";
+$a->strings["Force all Non-SSL requests to SSL - Attention: on some systems it could lead to endless loops."] = "Erzwinge SSL für alle Nicht-SSL-Anfragen - Achtung: auf manchen Systemen verursacht dies eine Endlosschleife.";
+$a->strings["Hide help entry from navigation menu"] = "Verberge den Hilfe-Eintrag im Navigationsmenü";
 $a->strings["Hides the menu entry for the Help pages from the navigation menu. You can still access it calling /help directly."] = "Verbirgt den Menüeintrag für die Hilfe-Seiten im Navigationsmenü. Die Seiten können weiterhin Ã¼ber /help aufgerufen werden.";
 $a->strings["Single user instance"] = "Ein-Nutzer Instanz";
-$a->strings["Make this instance multi-user or single-user for the named user"] = "Regelt ob es sich bei dieser Instanz um eine ein Personen Installation oder eine Installation mit mehr als einem Nutzer handelt.";
-$a->strings["File storage backend"] = "Datenspeicher Backend";
-$a->strings["The backend used to store uploaded data. If you change the storage backend, you can manually move the existing files. If you do not do so, the files uploaded before the change will still be available at the old backend. Please see <a href=\"/help/Settings#1_2_3_1\">the settings documentation</a> for more information about the choices and the moving procedure."] = "Das zu verwendende Datenspeicher Backend, wenn Dateien hochgeladen werden. Wenn du das Datenspeicher Backend Ã¤nderst, kannst du die bestehenden Dateien zum neuen Backend verschieben. Machst du dies nicht, verbleiben sie im alten Backend und werden weiterhin von dort geladen. Für weitere Informationen zu den verfügbaren Alternativen und der Prozedur zum Verschieben der Daten, schaue bitte in <a href=\"/help/Settings#1_2_3_1\">die Dokumentation zu den Einstellungen</a>.";
+$a->strings["Make this instance multi-user or single-user for the named user"] = "Bestimmt, ob es sich bei dieser Instanz um eine Installation mit nur einen Nutzer oder mit mehreren Nutzern handelt.";
+$a->strings["File storage backend"] = "Datenspeicher-Backend";
+$a->strings["The backend used to store uploaded data. If you change the storage backend, you can manually move the existing files. If you do not do so, the files uploaded before the change will still be available at the old backend. Please see <a href=\"/help/Settings#1_2_3_1\">the settings documentation</a> for more information about the choices and the moving procedure."] = "Das zu verwendende Datenspeicher-Backend, wenn Dateien hochgeladen werden. Wenn du das Datenspeicher-Backend Ã¤nderst, kannst du die bestehenden Dateien zum neuen Backend verschieben. Machst du dies nicht, verbleiben sie im alten Backend und werden weiterhin von dort geladen. Für weitere Informationen zu den verfügbaren Alternativen und der Prozedur zum Verschieben der Daten schaue bitte in <a href=\"/help/Settings#1_2_3_1\">die Dokumentation zu den Einstellungen</a>.";
 $a->strings["Maximum image size"] = "Maximale Bildgröße";
 $a->strings["Maximum size in bytes of uploaded images. Default is 0, which means no limits."] = "Maximale Uploadgröße von Bildern in Bytes. Standard ist 0, d.h. ohne Limit.";
 $a->strings["Maximum image length"] = "Maximale Bildlänge";
-$a->strings["Maximum length in pixels of the longest side of uploaded images. Default is -1, which means no limits."] = "Maximale Länge in Pixeln der längsten Seite eines hoch geladenen Bildes. Grundeinstellung ist -1 was keine Einschränkung bedeutet.";
+$a->strings["Maximum length in pixels of the longest side of uploaded images. Default is -1, which means no limits."] = "Maximale Länge in Pixeln der längsten Seite eines hochgeladenen Bildes. Grundeinstellung ist -1, was keine Einschränkung bedeutet.";
 $a->strings["JPEG image quality"] = "Qualität des JPEG Bildes";
-$a->strings["Uploaded JPEGS will be saved at this quality setting [0-100]. Default is 100, which is full quality."] = "Hoch geladene JPEG Bilder werden mit dieser Qualität [0-100] gespeichert. Grundeinstellung ist 100, kein Qualitätsverlust.";
+$a->strings["Uploaded JPEGS will be saved at this quality setting [0-100]. Default is 100, which is full quality."] = "Hochgeladene JPEG-Bilder werden mit dieser Qualität [0-100] gespeichert. Grundeinstellung ist 100, kein Qualitätsverlust.";
 $a->strings["Register policy"] = "Registrierungsmethode";
 $a->strings["Maximum Daily Registrations"] = "Maximum täglicher Registrierungen";
 $a->strings["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."] = "Wenn die Registrierung weiter oben erlaubt ist, regelt dies die maximale Anzahl von Neuanmeldungen pro Tag. Wenn die Registrierung geschlossen ist, hat diese Einstellung keinen Effekt.";
@@ -408,9 +404,9 @@ $a->strings["Comma separated list of domains which are allowed to establish frie
 $a->strings["Allowed email domains"] = "Erlaubte Domains für E-Mails";
 $a->strings["Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains"] = "Liste der Domains, die für E-Mail-Adressen bei der Registrierung erlaubt sind, durch Kommas getrennt. Platzhalter werden akzeptiert. Leer lassen, um alle Domains zu erlauben.";
 $a->strings["No OEmbed rich content"] = "OEmbed nicht verwenden";
-$a->strings["Don't show the rich content (e.g. embedded PDF), except from the domains listed below."] = "Verhindert das Einbetten von reichhaltigen Inhalten (z.B. eingebettete PDF Dateien). Ausgenommen von dieser Regel werden Domänen die unten aufgeführt werden.";
-$a->strings["Allowed OEmbed domains"] = "Erlaubte OEmbed Domänen";
-$a->strings["Comma separated list of domains which oembed content is allowed to be displayed. Wildcards are accepted."] = "Komma separierte Liste von Domänen für die das einbetten reichhaltiger Inhalte erlaubt sind. Platzhalter können verwendet werden.";
+$a->strings["Don't show the rich content (e.g. embedded PDF), except from the domains listed below."] = "Verhindert das Einbetten von reichhaltigen Inhalten (z.B. eingebettete PDF Dateien). Ausgenommen von dieser Regel werden Domänen, die unten aufgeführt werden.";
+$a->strings["Allowed OEmbed domains"] = "Erlaubte OEmbed-Domänen";
+$a->strings["Comma separated list of domains which oembed content is allowed to be displayed. Wildcards are accepted."] = "Durch Kommas getrennte Liste von Domänen, für die das Einbetten reichhaltiger Inhalte erlaubt ist. Platzhalter können verwendet werden.";
 $a->strings["Block public"] = "Öffentlichen Zugriff blockieren";
 $a->strings["Check to block public access to all otherwise public personal pages on this site unless you are currently logged in."] = "Klicken, um Ã¶ffentlichen Zugriff auf sonst Ã¶ffentliche Profile zu blockieren, wenn man nicht eingeloggt ist.";
 $a->strings["Force publish"] = "Erzwinge Veröffentlichung";
@@ -421,116 +417,116 @@ $a->strings["URL to the global directory. If this is not set, the global directo
 $a->strings["Private posts by default for new users"] = "Private Beiträge als Standard für neue Nutzer";
 $a->strings["Set default post permissions for all new members to the default privacy group rather than public."] = "Die Standard-Zugriffsrechte für neue Nutzer werden so gesetzt, dass als Voreinstellung in die private Gruppe gepostet wird anstelle von Ã¶ffentlichen Beiträgen.";
 $a->strings["Don't include post content in email notifications"] = "Inhalte von Beiträgen nicht in E-Mail-Benachrichtigungen versenden";
-$a->strings["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."] = "Inhalte von Beiträgen/Kommentaren/privaten Nachrichten/usw., zum Datenschutz nicht in E-Mail-Benachrichtigungen einbinden.";
+$a->strings["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."] = "Inhalte von Beiträgen/Kommentaren/privaten Nachrichten/usw. zum Datenschutz nicht in E-Mail-Benachrichtigungen einbinden.";
 $a->strings["Disallow public access to addons listed in the apps menu."] = "Öffentlichen Zugriff auf Addons im Apps Menü verbieten.";
-$a->strings["Checking this box will restrict addons listed in the apps menu to members only."] = "Wenn ausgewählt werden die im Apps Menü aufgeführten Addons nur angemeldeten Nutzern der Seite zur Verfügung gestellt.";
+$a->strings["Checking this box will restrict addons listed in the apps menu to members only."] = "Wenn ausgewählt, werden die im Apps Menü aufgeführten Addons nur angemeldeten Nutzern der Seite zur Verfügung gestellt.";
 $a->strings["Don't embed private images in posts"] = "Private Bilder nicht in Beiträgen einbetten.";
-$a->strings["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."] = "Ersetze lokal gehostete private Fotos in Beiträgen nicht mit einer eingebetteten Kopie des Bildes. Dies bedeutet, dass Kontakte, die Beiträge mit privaten Fotos erhalten sich zunächst auf den jeweiligen Servern authentifizieren müssen bevor die Bilder geladen und angezeigt werden, was eine gewisse Zeit dauert.";
+$a->strings["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."] = "Ersetze lokal gehostete, private Fotos in Beiträgen nicht mit einer eingebetteten Kopie des Bildes. Dies bedeutet, dass Kontakte, die Beiträge mit privaten Fotos erhalten, sich zunächst auf den jeweiligen Servern authentifizieren müssen, bevor die Bilder geladen und angezeigt werden, was eine gewisse Zeit dauert.";
 $a->strings["Explicit Content"] = "Sensibler Inhalt";
-$a->strings["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 node information and might be used, e.g. by the global directory, to filter your node from listings of nodes to join. Additionally a note about this will be shown at the user registration page."] = "Wählen Sie das um anzuzeigen, dass Ihr Knoten hauptsächlich für explizite Inhalte verwendet wird, die möglicherweise nicht für Minderjährige geeignet sind. Diese Info wird in der Knoteninformation veröffentlicht und kann durch das Globale Verzeichnis genutzt werden, um Ihren Knoten von den Auflistungen auszuschließen. Zusätzlich wird auf der Registrierungsseite ein Hinweis darüber angezeigt.";
-$a->strings["Allow Users to set remote_self"] = "Nutzern erlauben das remote_self Flag zu setzen";
-$a->strings["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."] = "Ist dies ausgewählt kann jeder Nutzer jeden seiner Kontakte als remote_self (entferntes Konto) im Kontakt reparieren Dialog markieren. Nach dem setzten dieses Flags werden alle Top-Level Beiträge dieser Kontakte automatisch in den Stream dieses Nutzers gepostet.";
+$a->strings["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 node information and might be used, e.g. by the global directory, to filter your node from listings of nodes to join. Additionally a note about this will be shown at the user registration page."] = "Wähle dies, um anzuzeigen, dass dein Knoten hauptsächlich für explizite Inhalte verwendet wird, die möglicherweise nicht für Minderjährige geeignet sind. Diese Info wird in der Knoteninformation veröffentlicht und kann durch das Globale Verzeichnis genutzt werden, um deinen Knoten von den Auflistungen auszuschließen. Zusätzlich wird auf der Registrierungsseite ein Hinweis darüber angezeigt.";
+$a->strings["Allow Users to set remote_self"] = "Nutzern erlauben, das remote_self Flag zu setzen";
+$a->strings["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."] = "Ist dies ausgewählt, kann jeder Nutzer jeden seiner Kontakte als remote_self (entferntes Konto) im \"Erweitert\"-Reiter der Kontaktansicht markieren. Nach dem Setzen dieses Flags werden alle Top-Level-Beiträge dieser Kontakte automatisch in den Stream dieses Nutzers gepostet (gespiegelt).";
 $a->strings["Block multiple registrations"] = "Unterbinde Mehrfachregistrierung";
-$a->strings["Disallow users to register additional accounts for use as pages."] = "Benutzern nicht erlauben, weitere Konten für Organisationsseiten o.ä. mit der gleichen E-Mail Adresse anzulegen, um diese als .";
+$a->strings["Disallow users to register additional accounts for use as pages."] = "Benutzern nicht erlauben, weitere Konten für Organisationsseiten o. Ã¤. mit der gleichen E-Mail-Adresse anzulegen.";
 $a->strings["Disable OpenID"] = "OpenID deaktivieren";
 $a->strings["Disable OpenID support for registration and logins."] = "OpenID-Unterstützung für Registrierung und Login.";
 $a->strings["No Fullname check"] = "Namen nicht auf Vollständigkeit Ã¼berprüfen";
-$a->strings["Allow users to register without a space between the first name and the last name in their full name."] = "Erlaubt es Nutzerkonten zu registrieren, bei denen im Namensfeld kein Leerzeichen als Trennung von Vor- und Nachname verwendet wird.";
+$a->strings["Allow users to register without a space between the first name and the last name in their full name."] = "Erlaubt Nutzern, Konten zu registrieren, bei denen im Namensfeld kein Leerzeichen zur Trennung von Vor- und Nachnamen verwendet wird.";
 $a->strings["Community pages for visitors"] = "Für Besucher verfügbare Gemeinschaftsseite";
-$a->strings["Which community pages should be available for visitors. Local users always see both pages."] = "Welche Gemeinschaftsseiten sollen für Besucher dieses Knotens verfügbar sein? Lokale Nutzer können grundsätzlich beide Gemeinschaftsseiten verwenden.";
+$a->strings["Which community pages should be available for visitors. Local users always see both pages."] = "Welche Gemeinschaftsseiten sollen für Besucher dieses Knotens verfügbar sein? Lokale Nutzer können grundsätzlich beide Seiten verwenden.";
 $a->strings["Posts per user on community page"] = "Anzahl der Beiträge pro Benutzer auf der Gemeinschaftsseite";
-$a->strings["The maximum number of posts per user on the community page. (Not valid for 'Global Community')"] = "Die Anzahl der Beiträge die von jedem Nutzer maximal auf der Gemeinschaftsseite angezeigt werden sollen. Dieser Parameter wird nicht für die Globale Gemeinschaftsseite genutzt.";
-$a->strings["Disable OStatus support"] = "OStatus Unterstützung deaktivieren";
-$a->strings["Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed."] = "Die eingebaute OStatus (StatusNet, GNU Social, etc.) Unterstützung deaktivieren. Jede Kommunikation in OStatus ist Ã¶ffentlich, Privatsphäre Warnungen werden nur bei Bedarf angezeigt.";
-$a->strings["Only import OStatus/ActivityPub threads from our contacts"] = "Nur OStatus/ActivityPub Konversationen unserer Kontakte importieren";
-$a->strings["Normally we import every content from our OStatus and ActivityPub contacts. With this option we only store threads that are started by a contact that is known on our system."] = "Normalerweise werden alle Inhalte von OStatus und ActivityPub Kontakten importiert. Mit dieser Option werden nur solche Konversationen gespeichert, die von Kontakten der Nutzer dieses Knotens gestartet wurden.";
-$a->strings["OStatus support can only be enabled if threading is enabled."] = "OStatus Unterstützung kann nur aktiviert werden wenn \"Threading\" aktiviert ist. ";
-$a->strings["Diaspora support can't be enabled because Friendica was installed into a sub directory."] = "Diaspora Unterstützung kann nicht aktiviert werden da Friendica in ein Unterverzeichnis installiert ist.";
-$a->strings["Enable Diaspora support"] = "Diaspora Unterstützung aktivieren";
+$a->strings["The maximum number of posts per user on the community page. (Not valid for 'Global Community')"] = "Die Anzahl der Beiträge, die von jedem Nutzer maximal auf der Gemeinschaftsseite angezeigt werden sollen. Dieser Parameter wird nicht für die Globale Gemeinschaftsseite genutzt.";
+$a->strings["Disable OStatus support"] = "OStatus-Unterstützung deaktivieren";
+$a->strings["Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed."] = "Die eingebaute OStatus-Unterstützung (StatusNet, GNU Social, etc.) deaktivieren. Jede Kommunikation in OStatus ist Ã¶ffentlich, Privatsphäre-Warnungen werden nur bei Bedarf angezeigt.";
+$a->strings["Only import OStatus/ActivityPub threads from our contacts"] = "Nur OStatus/ActivityPub-Konversationen unserer Kontakte importieren";
+$a->strings["Normally we import every content from our OStatus and ActivityPub contacts. With this option we only store threads that are started by a contact that is known on our system."] = "Normalerweise werden alle Inhalte von OStatus- und ActivityPub-Kontakten importiert. Mit dieser Option werden nur solche Konversationen gespeichert, die von Kontakten der Nutzer dieses Knotens gestartet wurden.";
+$a->strings["OStatus support can only be enabled if threading is enabled."] = "OStatus Unterstützung kann nur aktiviert werden, wenn \"Threading\" aktiviert ist. ";
+$a->strings["Diaspora support can't be enabled because Friendica was installed into a sub directory."] = "Diaspora Unterstützung kann nicht aktiviert werden, da Friendica in ein Unterverzeichnis installiert ist.";
+$a->strings["Enable Diaspora support"] = "Diaspora-Unterstützung aktivieren";
 $a->strings["Provide built-in Diaspora network compatibility."] = "Verwende die eingebaute Diaspora-Verknüpfung.";
 $a->strings["Only allow Friendica contacts"] = "Nur Friendica-Kontakte erlauben";
-$a->strings["All contacts must use Friendica protocols. All other built-in communication protocols disabled."] = "Alle Kontakte müssen das Friendica Protokoll nutzen. Alle anderen Kommunikationsprotokolle werden deaktiviert.";
+$a->strings["All contacts must use Friendica protocols. All other built-in communication protocols disabled."] = "Alle Kontakte müssen das Friendica-Protokoll nutzen. Alle anderen Kommunikationsprotokolle werden deaktiviert.";
 $a->strings["Verify SSL"] = "SSL Ãœberprüfen";
-$a->strings["If you wish, you can turn on strict certificate checking. This will mean you cannot connect (at all) to self-signed SSL sites."] = "Wenn gewollt, kann man hier eine strenge Zertifikatkontrolle einstellen. Das bedeutet, dass man zu keinen Seiten mit selbst unterzeichnetem SSL eine Verbindung herstellen kann.";
-$a->strings["Proxy user"] = "Proxy Nutzer";
-$a->strings["Proxy URL"] = "Proxy URL";
-$a->strings["Network timeout"] = "Netzwerk Wartezeit";
+$a->strings["If you wish, you can turn on strict certificate checking. This will mean you cannot connect (at all) to self-signed SSL sites."] = "Wenn gewollt, kann man hier eine strenge Zertifikatskontrolle einstellen. Das bedeutet, dass man zu keinen Seiten mit selbst unterzeichnetem SSL-Zertifikat eine Verbindung herstellen kann.";
+$a->strings["Proxy user"] = "Proxy-Nutzer";
+$a->strings["Proxy URL"] = "Proxy-URL";
+$a->strings["Network timeout"] = "Netzwerk-Wartezeit";
 $a->strings["Value is in seconds. Set to 0 for unlimited (not recommended)."] = "Der Wert ist in Sekunden. Setze 0 für unbegrenzt (nicht empfohlen).";
 $a->strings["Maximum Load Average"] = "Maximum Load Average";
-$a->strings["Maximum system load before delivery and poll processes are deferred - default 50."] = "Maximale Systemlast bevor Verteil- und Empfangsprozesse verschoben werden - Standard 50";
+$a->strings["Maximum system load before delivery and poll processes are deferred - default 50."] = "Maximale Systemlast, bevor Verteil- und Empfangsprozesse verschoben werden - Standard 50";
 $a->strings["Maximum Load Average (Frontend)"] = "Maximum Load Average (Frontend)";
-$a->strings["Maximum system load before the frontend quits service - default 50."] = "Maximale Systemlast bevor Vordergrundprozesse pausiert werden - Standard 50.";
+$a->strings["Maximum system load before the frontend quits service - default 50."] = "Maximale Systemlast, bevor Vordergrundprozesse pausiert werden - Standard 50.";
 $a->strings["Minimal Memory"] = "Minimaler Speicher";
 $a->strings["Minimal free memory in MB for the worker. Needs access to /proc/meminfo - default 0 (deactivated)."] = "Minimal freier Speicher in MB für den Worker Prozess. Benötigt Zugriff auf /proc/meminfo - Standardwert ist 0 (deaktiviert)";
 $a->strings["Maximum table size for optimization"] = "Maximale Tabellengröße zur Optimierung";
 $a->strings["Maximum table size (in MB) for the automatic optimization. Enter -1 to disable it."] = "Maximale Tabellengröße (in MB) für die automatische Optimierung - Gib -1 für Deaktivierung ein.";
 $a->strings["Minimum level of fragmentation"] = "Minimaler Fragmentationsgrad";
-$a->strings["Minimum fragmenation level to start the automatic optimization - default value is 30%."] = "Minimales Fragmentationsgrad von Datenbanktabellen um die automatische Optimierung einzuleiten - Standardwert ist 30%";
+$a->strings["Minimum fragmenation level to start the automatic optimization - default value is 30%."] = "Minimaler Fragmentationsgrad von Datenbanktabellen, um die automatische Optimierung einzuleiten - Standardwert ist 30%";
 $a->strings["Periodical check of global contacts"] = "Regelmäßig globale Kontakte Ã¼berprüfen";
 $a->strings["If enabled, the global contacts are checked periodically for missing or outdated data and the vitality of the contacts and servers."] = "Wenn diese Option aktiviert ist, werden die globalen Kontakte regelmäßig auf fehlende oder veraltete Daten sowie auf Erreichbarkeit des Kontakts und des Servers Ã¼berprüft.";
 $a->strings["Days between requery"] = "Tage zwischen erneuten Abfragen";
-$a->strings["Number of days after which a server is requeried for his contacts."] = "Legt das Abfrageintervall fest, nachdem ein Server erneut nach Kontakten abgefragt werden soll.";
+$a->strings["Number of days after which a server is requeried for his contacts."] = "Legt das Abfrageintervall fest, nach dem ein Server erneut nach Kontakten abgefragt werden soll.";
 $a->strings["Discover contacts from other servers"] = "Neue Kontakte auf anderen Servern entdecken";
-$a->strings["Periodically query other servers for contacts. You can choose between 'users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommended setting is 'Users, Global Contacts'."] = "Regelmäßig andere Server nach potentiellen Kontakten absuchen. Du kannst zwischen 'Nutzern', den tatsächlichen Nutzern des anderen Systems und 'globalen Kontakten', aktiven Kontakten die auf dem System bekannt sind, wählen. Der Fallback-Mechanismus ist für Ã¤ltere Friendica und Redmatrix Server gedacht, bei denen globale Kontakte noch nicht verfügbar sind. Durch den Fallbackmodus entsteht auf deinem Server eine wesentlich höhere Last, empfohlen wird der Modus 'Nutzer, globale Kontakte'.";
+$a->strings["Periodically query other servers for contacts. You can choose between 'users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommended setting is 'Users, Global Contacts'."] = "Regelmäßig andere Server nach potentiellen Kontakten absuchen. Du kannst zwischen 'Nutzern', also den tatsächlichen Nutzern des anderen Systems, und 'globalen Kontakten', also aktiven Kontakten, die auf dem System bekannt sind, wählen. Der Fallback-Mechanismus ist für Ã¤ltere Friendica- und Redmatrix-Server gedacht, bei denen globale Kontakte noch nicht verfügbar sind. Durch den Fallback-Modus entsteht auf deinem Server eine wesentlich höhere Last, empfohlen wird der Modus 'Nutzer, globale Kontakte'.";
 $a->strings["Timeframe for fetching global contacts"] = "Zeitfenster für globale Kontakte";
-$a->strings["When the discovery is activated, this value defines the timeframe for the activity of the global contacts that are fetched from other servers."] = "Wenn die Entdeckung neuer Kontakte aktiv ist, definiert dieses Zeitfenster den Zeitraum in dem globale Kontakte als aktiv gelten und von anderen Servern importiert werden.";
+$a->strings["When the discovery is activated, this value defines the timeframe for the activity of the global contacts that are fetched from other servers."] = "Wenn die Entdeckung neuer Kontakte aktiv ist, definiert dieses Zeitfenster den Zeitraum, in dem globale Kontakte als aktiv gelten und von anderen Servern importiert werden.";
 $a->strings["Search the local directory"] = "Lokales Verzeichnis durchsuchen";
-$a->strings["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."] = "Suche im lokalen Verzeichnis anstelle des globalen Verzeichnisses durchführen. Jede Suche wird im Hintergrund auch im globalen Verzeichnis durchgeführt um die Suchresultate zu verbessern, wenn diese Suche wiederholt wird.";
-$a->strings["Publish server information"] = "Server Informationen veröffentlichen";
-$a->strings["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 profiles, number of posts and the activated protocols and connectors. See <a href='http://the-federation.info/'>the-federation.info</a> for details."] = "Wenn aktiviert, werden allgemeine Informationen Ã¼ber den Server und Nutzungsdaten veröffentlicht. Die Daten beinhalten den Namen sowie die Version des Servers, die Anzahl der Personen mit Ã¶ffentlichen Profilen, die Anzahl der Beiträge sowie aktivierte Protokolle und Connectoren. Für Details bitte <a href='http://the-federation.info/'>the-federation.info</a> aufrufen.";
+$a->strings["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."] = "Suche im lokalen Verzeichnis anstelle des globalen Verzeichnisses durchführen. Jede Suche wird im Hintergrund auch im globalen Verzeichnis durchgeführt, um die Suchresultate zu verbessern, wenn die Suche wiederholt wird.";
+$a->strings["Publish server information"] = "Server-Informationen veröffentlichen";
+$a->strings["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 profiles, number of posts and the activated protocols and connectors. See <a href='http://the-federation.info/'>the-federation.info</a> for details."] = "Wenn aktiviert, werden allgemeine Informationen Ã¼ber den Server und Nutzungsdaten veröffentlicht. Die Daten beinhalten den Namen sowie die Version des Servers, die Anzahl der Personen mit Ã¶ffentlichen Profilen, die Anzahl der Beiträge sowie aktivierte Protokolle und Konnektoren. Für Details bitte <a href='http://the-federation.info/'>the-federation.info</a> aufrufen.";
 $a->strings["Check upstream version"] = "Suche nach Updates";
-$a->strings["Enables checking for new Friendica versions at github. If there is a new version, you will be informed in the admin panel overview."] = "Wenn diese Option aktiviert ist wird regelmäßig nach neuen Friendica Versionen auf github Ã¼berprüft. Wenn es eine neue Version gibt, wird dies auf der Ãœbersichtsseite im Admin-Panel angezeigt.";
-$a->strings["Suppress Tags"] = "Tags Unterdrücken";
+$a->strings["Enables checking for new Friendica versions at github. If there is a new version, you will be informed in the admin panel overview."] = "Wenn diese Option aktiviert ist, wird regelmäßig nach neuen Friendica-Versionen auf github gesucht. Wenn es eine neue Version gibt, wird dies auf der Ãœbersichtsseite im Admin-Panel angezeigt.";
+$a->strings["Suppress Tags"] = "Tags unterdrücken";
 $a->strings["Suppress showing a list of hashtags at the end of the posting."] = "Unterdrückt die Anzeige von Tags am Ende eines Beitrags.";
 $a->strings["Clean database"] = "Datenbank aufräumen";
 $a->strings["Remove old remote items, orphaned database records and old content from some other helper tables."] = "Entferne alte Beiträge von anderen Knoten, verwaiste Einträge und alten Inhalt einiger Hilfstabellen.";
 $a->strings["Lifespan of remote items"] = "Lebensdauer von Beiträgen anderer Knoten";
-$a->strings["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."] = "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl in Tagen nach der Beiträge die auf anderen Knoten des Netzwerks verfasst wurden, gelöscht werden sollen. Eigene Beiträge sowie markierte oder abgespeicherte Beiträge werden nicht gelöscht. Ein Wert von 0 deaktiviert das automatische löschen von Beiträgen.";
+$a->strings["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."] = "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl in Tagen, nach der Beiträge, die auf anderen Knoten des Netzwerks verfasst wurden, gelöscht werden sollen. Eigene Beiträge sowie markierte oder abgespeicherte Beiträge werden nicht gelöscht. Ein Wert von 0 deaktiviert das automatische Löschen von Beiträgen.";
 $a->strings["Lifespan of unclaimed items"] = "Lebensdauer nicht angeforderter Beiträge";
-$a->strings["When the database cleanup is enabled, this defines the days after which unclaimed remote items (mostly content from the relay) will be deleted. Default value is 90 days. Defaults to the general lifespan value of remote items if set to 0."] = "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl von Tagen nach denen nicht angeforderte Beiträge (hauptsächlich sole die Ã¼ber das Relais eintreffen) gelöscht werden. Der Standardwert beträgt 90 Tage. Wird dieser Wert auf 0 gesetzt, wird die Lebenszeit von Beiträgen anderer Knoten verwendet.";
+$a->strings["When the database cleanup is enabled, this defines the days after which unclaimed remote items (mostly content from the relay) will be deleted. Default value is 90 days. Defaults to the general lifespan value of remote items if set to 0."] = "Wenn das Aufräumen der Datenbank aktiviert ist, definiert dies die Anzahl von Tagen, nach denen nicht angeforderte Beiträge (hauptsächlich solche, die Ã¼ber das Relais eintreffen) gelöscht werden. Der Standardwert beträgt 90 Tage. Wird dieser Wert auf 0 gesetzt, wird die Lebensdauer von Beiträgen anderer Knoten verwendet.";
 $a->strings["Lifespan of raw conversation data"] = "Lebensdauer der Beiträge";
-$a->strings["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."] = "Die Konversationsdaten werden für ActivityPub und OStatus sowie für Debug-Zwecke verwendet. Sie können gefahrlos nach 14 Tagen zu entfernt werden, der Standardwert beträgt 90 Tage.";
-$a->strings["Path to item cache"] = "Pfad zum Eintrag Cache";
+$a->strings["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."] = "Die Konversationsdaten werden für ActivityPub und OStatus sowie für Debug-Zwecke verwendet. Sie sollten gefahrlos nach 14 Tagen entfernt werden können, der Standardwert beträgt 90 Tage.";
+$a->strings["Path to item cache"] = "Pfad zum Item-Cache";
 $a->strings["The item caches buffers generated bbcode and external images."] = "Im Item-Cache werden externe Bilder und geparster BBCode zwischen gespeichert.";
 $a->strings["Cache duration in seconds"] = "Cache-Dauer in Sekunden";
-$a->strings["How long should the cache files be hold? Default value is 86400 seconds (One day). To disable the item cache, set the value to -1."] = "Wie lange sollen die gecachedten Dateien vorgehalten werden? Grundeinstellung sind 86400 Sekunden (ein Tag). Um den Item Cache zu deaktivieren, setze diesen Wert auf -1.";
+$a->strings["How long should the cache files be hold? Default value is 86400 seconds (One day). To disable the item cache, set the value to -1."] = "Wie lange sollen die zwischengespeicherten Dateien vorgehalten werden? Grundeinstellung sind 86400 Sekunden (ein Tag). Um den Item-Cache zu deaktivieren, setze diesen Wert auf -1.";
 $a->strings["Maximum numbers of comments per post"] = "Maximale Anzahl von Kommentaren pro Beitrag";
 $a->strings["How much comments should be shown for each post? Default value is 100."] = "Wie viele Kommentare sollen pro Beitrag angezeigt werden? Standardwert sind 100.";
-$a->strings["Temp path"] = "Temp Pfad";
-$a->strings["If you have a restricted system where the webserver can't access the system temp path, enter another path here."] = "Solltest du ein eingeschränktes System haben, auf dem der Webserver nicht auf das temp Verzeichnis des Systems zugreifen kann, setze hier einen anderen Pfad.";
+$a->strings["Temp path"] = "Temp-Pfad";
+$a->strings["If you have a restricted system where the webserver can't access the system temp path, enter another path here."] = "Solltest du ein eingeschränktes System haben, auf dem der Webserver nicht auf das temp-Verzeichnis des Systems zugreifen kann, setze hier einen anderen Pfad.";
 $a->strings["Base path to installation"] = "Basis-Pfad zur Installation";
 $a->strings["If the system cannot detect the correct path to your installation, enter the correct path here. This setting should only be set if you are using a restricted system and symbolic links to your webroot."] = "Falls das System nicht den korrekten Pfad zu deiner Installation gefunden hat, gib den richtigen Pfad bitte hier ein. Du solltest hier den Pfad nur auf einem eingeschränkten System angeben müssen, bei dem du mit symbolischen Links auf dein Webverzeichnis verweist.";
-$a->strings["Disable picture proxy"] = "Bilder Proxy deaktivieren";
+$a->strings["Disable picture proxy"] = "Bilder-Proxy deaktivieren";
 $a->strings["The picture proxy increases performance and privacy. It shouldn't be used on systems with very low bandwidth."] = "Der Proxy für Bilder verbessert die Leistung und Privatsphäre der Nutzer. Er sollte nicht auf Systemen verwendet werden, die nur Ã¼ber begrenzte Bandbreite verfügen.";
 $a->strings["Only search in tags"] = "Nur in Tags suchen";
 $a->strings["On large systems the text search can slow down the system extremely."] = "Auf großen Knoten kann die Volltext-Suche das System ausbremsen.";
 $a->strings["New base url"] = "Neue Basis-URL";
-$a->strings["Change base url for this server. Sends relocate message to all Friendica and Diaspora* contacts of all users."] = "Ändert die Basis-URL dieses Servers und sendet eine Umzugsmitteilung an alle Friendica und Diaspora* Kontakte deiner NutzerInnen.";
-$a->strings["RINO Encryption"] = "RINO Verschlüsselung";
-$a->strings["Encryption layer between nodes."] = "Verschlüsselung zwischen Friendica Instanzen";
+$a->strings["Change base url for this server. Sends relocate message to all Friendica and Diaspora* contacts of all users."] = "Ändert die Basis-URL dieses Servers und sendet eine Umzugsmitteilung an alle Friendica- und Diaspora*-Kontakte deiner NutzerInnen.";
+$a->strings["RINO Encryption"] = "RINO-Verschlüsselung";
+$a->strings["Encryption layer between nodes."] = "Verschlüsselung zwischen Friendica-Instanzen";
 $a->strings["Enabled"] = "Aktiv";
 $a->strings["Maximum number of parallel workers"] = "Maximale Anzahl parallel laufender Worker";
-$a->strings["On shared hosters set this to %d. On larger systems, values of %d are great. Default value is %d."] = "Wenn dein Knoten bei einem Shared Hoster ist, setzte diesen Wert auf %d. Auf größeren Systemen funktioniert ein Wert von %d recht gut. Standardeinstellung sind %d.";
+$a->strings["On shared hosters set this to %d. On larger systems, values of %d are great. Default value is %d."] = "Wenn dein Knoten bei einem Shared Hoster ist, setze diesen Wert auf %d. Auf größeren Systemen funktioniert ein Wert von %d recht gut. Standardeinstellung sind %d.";
 $a->strings["Don't use 'proc_open' with the worker"] = "'proc_open' nicht mit den Workern verwenden";
-$a->strings["Enable this if your system doesn't allow the use of 'proc_open'. This can happen on shared hosters. If this is enabled you should increase the frequency of worker calls in your crontab."] = "Aktiviere diese Option, wenn dein System die Verwendung von 'proc_open' verhindert. Dies könnte auf Shared Hostern der Fall sein. Wenn du diese Option aktivierst, solltest du die Frequenz der poller Aufrufe in deiner crontab erhöhen.";
+$a->strings["Enable this if your system doesn't allow the use of 'proc_open'. This can happen on shared hosters. If this is enabled you should increase the frequency of worker calls in your crontab."] = "Aktiviere diese Option, wenn dein System die Verwendung von 'proc_open' verhindert. Dies könnte auf Shared Hostern der Fall sein. Wenn du diese Option aktivierst, solltest du die Frequenz der worker-Aufrufe in deiner crontab erhöhen.";
 $a->strings["Enable fastlane"] = "Aktiviere Fastlane";
-$a->strings["When enabed, the fastlane mechanism starts an additional worker if processes with higher priority are blocked by processes of lower priority."] = "Wenn aktiviert, wird der Fastlane-Mechanismus einen weiteren Worker-Prozeß starten wenn Prozesse mit höherer Priorität von Prozessen mit niedrigerer Priorität blockiert werden.";
-$a->strings["Enable frontend worker"] = "Aktiviere den Frontend Worker";
-$a->strings["When enabled the Worker process is triggered when backend access is performed \\x28e.g. messages being delivered\\x29. On smaller sites you might want to call %s/worker on a regular basis via an external cron job. You should only enable this option if you cannot utilize cron/scheduled jobs on your server."] = "Ist diese Option aktiv, wird der Worker Prozess durch Aktionen am Frontend gestartet (z.B. wenn Nachrichten zugestellt werden). Auf kleineren Seiten sollte %s/worker regelmäßig, beispielsweise durch einen externen Cron Anbieter, aufgerufen werden. Du solltest dies Option nur dann aktivieren, wenn du keinen Cron Job auf deinem eigenen Server starten kannst.";
+$a->strings["When enabed, the fastlane mechanism starts an additional worker if processes with higher priority are blocked by processes of lower priority."] = "Wenn aktiviert, wird der Fastlane-Mechanismus einen weiteren Worker-Prozeß starten, wenn Prozesse mit höherer Priorität von Prozessen mit niedrigerer Priorität blockiert werden.";
+$a->strings["Enable frontend worker"] = "Aktiviere den Frontend-Worker";
+$a->strings["When enabled the Worker process is triggered when backend access is performed \\x28e.g. messages being delivered\\x29. On smaller sites you might want to call %s/worker on a regular basis via an external cron job. You should only enable this option if you cannot utilize cron/scheduled jobs on your server."] = "Ist diese Option aktiv, wird der Worker-Prozess durch Aktionen am Frontend gestartet (z.B. wenn Nachrichten zugestellt werden). Auf kleineren Seiten sollte %s/worker regelmäßig, beispielsweise durch einen externen Cron-Anbieter, aufgerufen werden. Du solltest diese Option nur dann aktivieren, wenn du keinen zeitgesteuerten Job auf deinem eigenen Server starten kannst.";
 $a->strings["Subscribe to relay"] = "Relais abonnieren";
 $a->strings["Enables the receiving of public posts from the relay. They will be included in the search, subscribed tags and on the global community page."] = "Aktiviert den Empfang von Ã¶ffentlichen Beiträgen vom Relais-Server. Diese Beiträge werden in der Suche, den abonnierten Hashtags sowie der globalen Gemeinschaftsseite verfügbar sein.";
-$a->strings["Relay server"] = "Relais Server";
-$a->strings["Address of the relay server where public posts should be send to. For example https://relay.diasp.org"] = "Adresse des Relais Servers an den die Ã¶ffentlichen Beiträge gesendet werden sollen. Zum Beispiel https://relay.diasp.org";
-$a->strings["Direct relay transfer"] = "Direkte Relais Ãœbertragung";
-$a->strings["Enables the direct transfer to other servers without using the relay servers"] = "Aktiviert das direkte Verteilen an andere Server, ohne dass ein Relais Server verwendet wird.";
+$a->strings["Relay server"] = "Relais-Server";
+$a->strings["Address of the relay server where public posts should be send to. For example https://relay.diasp.org"] = "Adresse des Relais-Servers, an den die Ã¶ffentlichen Beiträge gesendet werden sollen. Zum Beispiel https://relay.diasp.org";
+$a->strings["Direct relay transfer"] = "Direkte Relais-Ãœbertragung";
+$a->strings["Enables the direct transfer to other servers without using the relay servers"] = "Aktiviert das direkte Verteilen an andere Server, ohne dass ein Relais-Server verwendet wird.";
 $a->strings["Relay scope"] = "Geltungsbereich des Relais";
 $a->strings["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."] = "Der Wert kann entweder 'Alle' oder 'Schlagwörter' sein. 'Alle' bedeutet, dass alle Ã¶ffentliche Beiträge empfangen werden sollen. 'Schlagwörter' schränkt dem Empfang auf Beiträge ein, die bestimmte Schlagwörter beinhalten.";
 $a->strings["all"] = "Alle";
 $a->strings["tags"] = "Schlagwörter";
-$a->strings["Server tags"] = "Server Schlagworte";
-$a->strings["Comma separated list of tags for the 'tags' subscription."] = "Liste von Schlagworten die abonniert werden sollen, mit Komma getrennt.";
+$a->strings["Server tags"] = "Server-Schlagworte";
+$a->strings["Comma separated list of tags for the 'tags' subscription."] = "Liste von Schlagworten, die abonniert werden sollen, mit Komma getrennt.";
 $a->strings["Allow user tags"] = "Verwende Schlagworte der Nutzer";
-$a->strings["If enabled, the tags from the saved searches will used for the 'tags' subscription in addition to the 'relay_server_tags'."] = "Ist dies aktiviert, werden die Schlagwörter der gespeicherten Suchen zusätzlich zu den oben  definierten Server Schlagworte abonniert.";
+$a->strings["If enabled, the tags from the saved searches will used for the 'tags' subscription in addition to the 'relay_server_tags'."] = "Ist dies aktiviert, werden die Schlagwörter der gespeicherten Suchen zusätzlich zu den oben definierten Server-Schlagworten abonniert.";
 $a->strings["Start Relocation"] = "Umsiedlung starten";
 $a->strings["Update has been marked successful"] = "Update wurde als erfolgreich markiert";
 $a->strings["Database structure update %s was successfully applied."] = "Das Update %s der Struktur der Datenbank wurde erfolgreich angewandt.";
@@ -540,13 +536,13 @@ $a->strings["Update %s was successfully applied."] = "Update %s war erfolgreich.
 $a->strings["Update %s did not return a status. Unknown if it succeeded."] = "Update %s hat keinen Status zurückgegeben. Unbekannter Status.";
 $a->strings["There was no additional update function %s that needed to be called."] = "Es gab keine weitere Update-Funktion, die von %s ausgeführt werden musste.";
 $a->strings["No failed updates."] = "Keine fehlgeschlagenen Updates.";
-$a->strings["Check database structure"] = "Datenbank Struktur Ã¼berprüfen";
+$a->strings["Check database structure"] = "Datenbankstruktur Ã¼berprüfen";
 $a->strings["Failed Updates"] = "Fehlgeschlagene Updates";
 $a->strings["This does not include updates prior to 1139, which did not return a status."] = "Ohne Updates vor 1139, da diese keinen Status zurückgegeben haben.";
 $a->strings["Mark success (if update was manually applied)"] = "Als erfolgreich markieren (falls das Update manuell installiert wurde)";
 $a->strings["Attempt to execute this update step automatically"] = "Versuchen, diesen Schritt automatisch auszuführen";
-$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tthe administrator of %2\$s has set up an account for you."] = "\nHallo %1\$s,\n\nauf %2\$s wurde ein Account für Dich angelegt.";
-$a->strings["\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%1\$s\n\t\t\tLogin Name:\t\t%2\$s\n\t\t\tPassword:\t\t%3\$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %1\$s/removeme\n\n\t\t\tThank you and welcome to %4\$s."] = "\nNachfolgend die Anmelde-Details:\n\tAdresse der Seite:\t%1\$s\n\tBenutzername:\t%2\$s\n\tPasswort:\t%3\$s\n\nDu kannst Dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald Du Dich\nangemeldet hast.\n\nBitte nimm Dir ein paar Minuten um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst Du ja auch einige Informationen Ã¼ber Dich in Deinem\nProfil veröffentlichen, damit andere Leute Dich einfacher finden können.\nBearbeite hierfür einfach Dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen Dir, Deinen kompletten Namen anzugeben und ein zu Dir\npassendes Profilbild zu wählen, damit Dich alte Bekannte wieder finden.\nAußerdem ist es nützlich, wenn Du auf Deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die Deine Interessen teilen.\n\nWir respektieren Deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn Du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %1\$s/removeme  jederzeit tun.\n\nNun viel Spaß, gute Begegnungen und willkommen auf %4\$s.";
+$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tthe administrator of %2\$s has set up an account for you."] = "\nHallo %1\$s,\n\nauf %2\$s wurde ein Account für dich angelegt.";
+$a->strings["\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%1\$s\n\t\t\tLogin Name:\t\t%2\$s\n\t\t\tPassword:\t\t%3\$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %1\$s/removeme\n\n\t\t\tThank you and welcome to %4\$s."] = "\nNachfolgend die Anmelde-Details:\n\tAdresse der Seite:\t%1\$s\n\tBenutzername:\t%2\$s\n\tPasswort:\t%3\$s\n\nDu kannst dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald du dich\nangemeldet hast.\n\nBitte nimm dir ein paar Minuten, um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst du ja auch einige Informationen Ã¼ber dich in deinem\nProfil veröffentlichen, damit andere Leute dich einfacher finden können.\nBearbeite hierfür einfach dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen dir, deinen kompletten Namen anzugeben und ein zu dir\npassendes Profilbild zu wählen, damit dich alte Bekannte wiederfinden.\nAußerdem ist es nützlich, wenn du auf deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die deine Interessen teilen.\n\nWir respektieren deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %1\$s/removeme  jederzeit tun.\n\nNun viel Spaß, gute Begegnungen und willkommen auf %4\$s.";
 $a->strings["Registration details for %s"] = "Details der Registration von %s";
 $a->strings["%s user blocked/unblocked"] = [
        0 => "%s Benutzer geblockt/freigegeben",
@@ -563,7 +559,7 @@ $a->strings["User '%s' blocked"] = "Nutzer '%s' gesperrt";
 $a->strings["Normal Account Page"] = "Normales Konto";
 $a->strings["Soapbox Page"] = "Marktschreier-Konto";
 $a->strings["Public Forum"] = "Öffentliches Forum";
-$a->strings["Automatic Friend Page"] = "Automatische Freunde Seite";
+$a->strings["Automatic Friend Page"] = "Automatische Freunde-Seite";
 $a->strings["Private Forum"] = "Privates Forum";
 $a->strings["Personal Page"] = "Persönliche Seite";
 $a->strings["Organisation Page"] = "Organisationsseite";
@@ -588,8 +584,8 @@ $a->strings["Site admin"] = "Seitenadministrator";
 $a->strings["Account expired"] = "Account ist abgelaufen";
 $a->strings["New User"] = "Neuer Nutzer";
 $a->strings["Permanent deletion"] = "Permanent löschen";
-$a->strings["Selected users will be deleted!\\n\\nEverything these users had posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "Die markierten Nutzer werden gelöscht!\\n\\nAlle Beiträge, die diese Nutzer auf dieser Seite veröffentlicht haben, werden permanent gelöscht!\\n\\nBist Du sicher?";
-$a->strings["The user {0} will be deleted!\\n\\nEverything this user has posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "Der Nutzer {0} wird gelöscht!\\n\\nAlles was dieser Nutzer auf dieser Seite veröffentlicht hat, wird permanent gelöscht!\\n\\nBist Du sicher?";
+$a->strings["Selected users will be deleted!\\n\\nEverything these users had posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "Die markierten Nutzer werden gelöscht!\\n\\nAlle Beiträge, die diese Nutzer auf dieser Seite veröffentlicht haben, werden permanent gelöscht!\\n\\nBist du sicher?";
+$a->strings["The user {0} will be deleted!\\n\\nEverything this user has posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "Der Nutzer {0} wird gelöscht!\\n\\nAlles, was dieser Nutzer auf dieser Seite veröffentlicht hat, wird permanent gelöscht!\\n\\nBist du sicher?";
 $a->strings["Name of the new user."] = "Name des neuen Nutzers";
 $a->strings["Nickname"] = "Spitzname";
 $a->strings["Nickname of the new user."] = "Spitznamen für den neuen Nutzer";
@@ -604,7 +600,7 @@ $a->strings["Author: "] = "Autor:";
 $a->strings["Maintainer: "] = "Betreuer:";
 $a->strings["Reload active addons"] = "Aktivierte Addons neu laden";
 $a->strings["There are currently no addons available on your node. You can find the official addon repository at %1\$s and might find other interesting addons in the open addon registry at %2\$s"] = "Es sind derzeit keine Addons auf diesem Knoten verfügbar. Du findest das offizielle Addon-Repository unter %1\$s und weitere eventuell interessante Addons im offenen Addon-Verzeichnis auf %2\$s.";
-$a->strings["No themes found."] = "Keine Themen gefunden.";
+$a->strings["No themes found."] = "Keine Themes gefunden.";
 $a->strings["Screenshot"] = "Bildschirmfoto";
 $a->strings["Reload active themes"] = "Aktives Theme neu laden";
 $a->strings["No themes found on the system. They should be placed in %1\$s"] = "Es wurden keine Themes auf dem System gefunden. Diese sollten in %1\$s platziert werden.";
@@ -619,7 +615,7 @@ $a->strings["Log file"] = "Protokolldatei";
 $a->strings["Must be writable by web server. Relative to your Friendica top-level directory."] = "Webserver muss Schreibrechte besitzen. Abhängig vom Friendica-Installationsverzeichnis.";
 $a->strings["Log level"] = "Protokoll-Level";
 $a->strings["PHP logging"] = "PHP Protokollieren";
-$a->strings["To temporarily enable logging of PHP errors and warnings you can prepend the following to the index.php file of your installation. The filename set in the 'error_log' line is relative to the friendica top-level directory and must be writeable by the web server. The option '1' for 'log_errors' and 'display_errors' is to enable these options, set to '0' to disable them."] = "Um die Protokollierung von PHP-Fehlern und Warnungen vorübergehend zu aktivieren, können Sie der Datei index.php Ihrer Installation Folgendes voranstellen. Der in der Datei 'error_log' angegebene Dateiname ist relativ zum obersten Verzeichnis von friendica und muss vom Webserver beschreibbar sein. Die Option '1' für 'log_errors' und 'display_errors' aktiviert diese Optionen, ersetze die '1' durch einer '0' um sie zu deaktivieren.";
+$a->strings["To temporarily enable logging of PHP errors and warnings you can prepend the following to the index.php file of your installation. The filename set in the 'error_log' line is relative to the friendica top-level directory and must be writeable by the web server. The option '1' for 'log_errors' and 'display_errors' is to enable these options, set to '0' to disable them."] = "Um die Protokollierung von PHP-Fehlern und Warnungen vorübergehend zu aktivieren, kannst du der Datei index.php deiner Installation Folgendes voranstellen. Der in der Datei 'error_log' angegebene Dateiname ist relativ zum obersten Verzeichnis von Friendica und muss vom Webserver beschreibbar sein. Die Option '1' für 'log_errors' und 'display_errors' aktiviert diese Optionen, ersetze die '1' durch eine '0', um sie zu deaktivieren.";
 $a->strings["Error trying to open <strong>%1\$s</strong> log file.\\r\\n<br/>Check to see if file %1\$s exist and is readable."] = "Fehler beim Ã–ffnen der Logdatei <strong>%1\$s</strong>.\\r\\n<br/>Bitte Ã¼berprüfe ob die Datei %1\$s existiert und gelesen werden kann.";
 $a->strings["Couldn't open <strong>%1\$s</strong> log file.\\r\\n<br/>Check to see if file %1\$s is readable."] = "Konnte die Logdatei <strong>%1\$s</strong> nicht Ã¶ffnen.\\r\\n<br/>Bitte stelle sicher, dass die Datei %1\$s lesbar ist.";
 $a->strings["Off"] = "Aus";
@@ -630,9 +626,12 @@ $a->strings["No friends to display."] = "Keine Kontakte zum Anzeigen.";
 $a->strings["Connect"] = "Verbinden";
 $a->strings["Authorize application connection"] = "Verbindung der Applikation autorisieren";
 $a->strings["Return to your app and insert this Securty Code:"] = "Gehe zu Deiner Anwendung zurück und trage dort folgenden Sicherheitscode ein:";
-$a->strings["Please login to continue."] = "Bitte melde Dich an um fortzufahren.";
-$a->strings["Do you want to authorize this application to access your posts and contacts, and/or create new posts for you?"] = "Möchtest Du dieser Anwendung den Zugriff auf Deine Beiträge und Kontakte, sowie das Erstellen neuer Beiträge in Deinem Namen gestatten?";
+$a->strings["Please login to continue."] = "Bitte melde dich an, um fortzufahren.";
+$a->strings["Do you want to authorize this application to access your posts and contacts, and/or create new posts for you?"] = "Möchtest du dieser Anwendung den Zugriff auf Deine Beiträge und Kontakte sowie das Erstellen neuer Beiträge in Deinem Namen gestatten?";
 $a->strings["No"] = "Nein";
+$a->strings["You must be logged in to use addons. "] = "Du musst angemeldet sein, um Addons benutzen zu können.";
+$a->strings["Applications"] = "Anwendungen";
+$a->strings["No installed applications."] = "Keine Applikationen installiert.";
 $a->strings["Source input"] = "Originaltext:";
 $a->strings["BBCode::toPlaintext"] = "BBCode::toPlaintext";
 $a->strings["BBCode::convert (raw HTML)"] = "BBCode::convert (pures HTML)";
@@ -645,7 +644,7 @@ $a->strings["BBCode::toMarkdown =>  Markdown::convert => HTML::toBBCode"] = "BBC
 $a->strings["Item Body"] = "Beitragskörper";
 $a->strings["Item Tags"] = "Tags des Beitrags";
 $a->strings["Source input (Diaspora format)"] = "Originaltext (Diaspora Format): ";
-$a->strings["Markdown::convert (raw HTML)"] = "Markdown::convert (raw HTML)";
+$a->strings["Markdown::convert (raw HTML)"] = "Markdown::convert (pures HTML)";
 $a->strings["Markdown::convert"] = "Markdown::convert";
 $a->strings["Markdown::toBBCode"] = "Markdown::toBBCode";
 $a->strings["Raw HTML input"] = "Reine  HTML  Eingabe";
@@ -694,8 +693,8 @@ $a->strings["Friendica is a community project, that would not be possible withou
 $a->strings["Contact settings applied."] = "Einstellungen zum Kontakt angewandt.";
 $a->strings["Contact update failed."] = "Konnte den Kontakt nicht aktualisieren.";
 $a->strings["Contact not found."] = "Kontakt nicht gefunden.";
-$a->strings["<strong>WARNING: This is highly advanced</strong> and if you enter incorrect information your communications with this contact may stop working."] = "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn Du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr.";
-$a->strings["Please use your browser 'Back' button <strong>now</strong> if you are uncertain what to do on this page."] = "Bitte nutze den Zurück-Button Deines Browsers <strong>jetzt</strong>, wenn Du Dir unsicher bist, was Du tun willst.";
+$a->strings["<strong>WARNING: This is highly advanced</strong> and if you enter incorrect information your communications with this contact may stop working."] = "<strong>ACHTUNG: Das sind Experten-Einstellungen!</strong> Wenn du etwas Falsches eingibst, funktioniert die Kommunikation mit diesem Kontakt evtl. nicht mehr.";
+$a->strings["Please use your browser 'Back' button <strong>now</strong> if you are uncertain what to do on this page."] = "Bitte nutze den Zurück-Button Deines Browsers <strong>jetzt</strong>, wenn du dir unsicher bist, was du tun willst.";
 $a->strings["No mirroring"] = "Kein Spiegeln";
 $a->strings["Mirror as forwarded posting"] = "Spiegeln als weitergeleitete Beiträge";
 $a->strings["Mirror as my own posting"] = "Spiegeln als meine eigenen Beiträge";
@@ -704,7 +703,7 @@ $a->strings["Refetch contact data"] = "Kontaktdaten neu laden";
 $a->strings["Submit"] = "Senden";
 $a->strings["Remote Self"] = "Entfernte Konten";
 $a->strings["Mirror postings from this contact"] = "Spiegle Beiträge dieses Kontakts";
-$a->strings["Mark this contact as remote_self, this will cause friendica to repost new entries from this contact."] = "Markiere diesen Kontakt als remote_self (entferntes Konto), dies veranlasst Friendica alle Top-Level Beiträge dieses Kontakts an all Deine Kontakte zu senden.";
+$a->strings["Mark this contact as remote_self, this will cause friendica to repost new entries from this contact."] = "Markiere diesen Kontakt als remote_self (entferntes Konto), dies veranlasst Friendica, alle Top-Level Beiträge dieses Kontakts an all Deine Kontakte zu senden (spiegeln).";
 $a->strings["Account Nickname"] = "Konto-Spitzname";
 $a->strings["@Tagname - overrides Name/Nickname"] = "@Tagname - Ã¼berschreibt Name/Spitzname";
 $a->strings["Account URL"] = "Konto-URL";
@@ -722,7 +721,7 @@ $a->strings["Parent User"] = "Verwalter";
 $a->strings["Parent users have total control about this account, including the account settings. Please double check whom you give this access."] = "Verwalter haben Zugriff auf alle Funktionen dieses Benutzerkontos und können dessen Einstellungen Ã¤ndern.";
 $a->strings["Delegate Page Management"] = "Delegiere das Management für die Seite";
 $a->strings["Delegates"] = "Bevollmächtigte";
-$a->strings["Delegates are able to manage all aspects of this account/page except for basic account settings. Please do not delegate your personal account to anybody that you do not trust completely."] = "Bevollmächtigte sind in der Lage, alle Aspekte dieses Kontos/dieser Seite zu verwalten, abgesehen von den Grundeinstellungen des Kontos. Bitte gib niemandem eine Bevollmächtigung für Deinen privaten Account, dem Du nicht absolut vertraust!";
+$a->strings["Delegates are able to manage all aspects of this account/page except for basic account settings. Please do not delegate your personal account to anybody that you do not trust completely."] = "Bevollmächtigte sind in der Lage, alle Aspekte dieses Kontos/dieser Seite zu verwalten, abgesehen von den Grundeinstellungen des Kontos. Bitte gib niemandem eine Bevollmächtigung für Deinen privaten Account, dem du nicht absolut vertraust!";
 $a->strings["Existing Page Delegates"] = "Vorhandene Bevollmächtigte für die Seite";
 $a->strings["Potential Delegates"] = "Potentielle Bevollmächtigte";
 $a->strings["Remove"] = "Entfernen";
@@ -742,14 +741,14 @@ $a->strings["Our site encryption key is apparently messed up."] = "Der Verschlü
 $a->strings["Empty site URL was provided or URL could not be decrypted by us."] = "Leere URL für die Seite erhalten oder die URL konnte nicht entschlüsselt werden.";
 $a->strings["Contact record was not found for you on our site."] = "Für diesen Kontakt wurde auf unserer Seite kein Eintrag gefunden.";
 $a->strings["Site public key not available in contact record for URL %s."] = "Die Kontaktdaten für URL %s enthalten keinen Public Key für den Server.";
-$a->strings["The ID provided by your system is a duplicate on our system. It should work if you try again."] = "Die ID, die uns Dein System angeboten hat, ist hier bereits vergeben. Bitte versuche es noch einmal.";
+$a->strings["The ID provided by your system is a duplicate on our system. It should work if you try again."] = "Die ID, die uns dein System angeboten hat, ist hier bereits vergeben. Bitte versuche es noch einmal.";
 $a->strings["Unable to set your contact credentials on our system."] = "Deine Kontaktreferenzen konnten nicht in unserem System gespeichert werden.";
-$a->strings["Unable to update your contact profile details on our system"] = "Die Updates für Dein Profil konnten nicht gespeichert werden";
+$a->strings["Unable to update your contact profile details on our system"] = "Die Updates für dein Profil konnten nicht gespeichert werden";
 $a->strings["[Name Withheld]"] = "[Name unterdrückt]";
 $a->strings["%1\$s welcomes %2\$s"] = "%1\$s heißt %2\$s herzlich willkommen";
 $a->strings["This introduction has already been accepted."] = "Diese Kontaktanfrage wurde bereits akzeptiert.";
 $a->strings["Profile location is not valid or does not contain profile information."] = "Profiladresse ist ungültig oder stellt keine Profildaten zur Verfügung.";
-$a->strings["Warning: profile location has no identifiable owner name."] = "Warnung: Es konnte kein Name des Besitzers von der angegebenen Profiladresse gefunden werden.";
+$a->strings["Warning: profile location has no identifiable owner name."] = "Warnung: Es konnte kein Name des Besitzers an der angegebenen Profiladresse gefunden werden.";
 $a->strings["Warning: profile location has no profile photo."] = "Warnung: Es gibt kein Profilbild an der angegebenen Profiladresse.";
 $a->strings["%d required parameter was not found at the given location"] = [
        0 => "%d benötigter Parameter wurde an der angegebenen Stelle nicht gefunden",
@@ -762,30 +761,30 @@ $a->strings["%s has received too many connection requests today."] = "%s hat heu
 $a->strings["Spam protection measures have been invoked."] = "Maßnahmen zum Spamschutz wurden ergriffen.";
 $a->strings["Friends are advised to please try again in 24 hours."] = "Freunde sind angehalten, es in 24 Stunden erneut zu versuchen.";
 $a->strings["Invalid locator"] = "Ungültiger Locator";
-$a->strings["You have already introduced yourself here."] = "Du hast Dich hier bereits vorgestellt.";
-$a->strings["Apparently you are already friends with %s."] = "Es scheint so, als ob Du bereits mit %s in Kontakt stehst.";
+$a->strings["You have already introduced yourself here."] = "Du hast dich hier bereits vorgestellt.";
+$a->strings["Apparently you are already friends with %s."] = "Es scheint so, als ob du bereits mit %s in Kontakt stehst.";
 $a->strings["Invalid profile URL."] = "Ungültige Profil-URL.";
 $a->strings["Disallowed profile URL."] = "Nicht erlaubte Profil-URL.";
 $a->strings["Failed to update contact record."] = "Aktualisierung der Kontaktdaten fehlgeschlagen.";
 $a->strings["Your introduction has been sent."] = "Deine Kontaktanfrage wurde gesendet.";
-$a->strings["Remote subscription can't be done for your network. Please subscribe directly on your system."] = "Entferntes abon­nie­ren kann für dein Netzwerk nicht durchgeführt werden. Bitte nutze direkt die Abonnieren-Funktion deines Systems.   ";
-$a->strings["Please login to confirm introduction."] = "Bitte melde Dich an, um die Kontaktanfrage zu bestätigen.";
-$a->strings["Incorrect identity currently logged in. Please login to <strong>this</strong> profile."] = "Momentan bist Du mit einer anderen Identität angemeldet. Bitte melde Dich mit <strong>diesem</strong> Profil an.";
+$a->strings["Remote subscription can't be done for your network. Please subscribe directly on your system."] = "Entferntes Abon­nie­ren kann für dein Netzwerk nicht durchgeführt werden. Bitte nutze direkt die Abonnieren-Funktion deines Systems.   ";
+$a->strings["Please login to confirm introduction."] = "Bitte melde dich an, um die Kontaktanfrage zu bestätigen.";
+$a->strings["Incorrect identity currently logged in. Please login to <strong>this</strong> profile."] = "Momentan bist du mit einer anderen Identität angemeldet. Bitte melde dich mit <strong>diesem</strong> Profil an.";
 $a->strings["Confirm"] = "Bestätigen";
 $a->strings["Hide this contact"] = "Verberge diesen Kontakt";
 $a->strings["Welcome home %s."] = "Willkommen zurück %s.";
 $a->strings["Please confirm your introduction/connection request to %s."] = "Bitte bestätige Deine Kontaktanfrage bei %s.";
 $a->strings["Please enter your 'Identity Address' from one of the following supported communications networks:"] = "Bitte gib die Adresse Deines Profils in einem der unterstützten sozialen Netzwerke an:";
-$a->strings["If you are not yet a member of the free social web, <a href=\"%s\">follow this link to find a public Friendica site and join us today</a>."] = "Wenn du noch kein Mitglied dieses freien sozialen Netzwerks bist, <a href=\"%s\">folge diesem Link</a> um einen Ã¶ffentlichen Friendica Server zu finden und beizutreten.";
+$a->strings["If you are not yet a member of the free social web, <a href=\"%s\">follow this link to find a public Friendica site and join us today</a>."] = "Wenn du noch kein Mitglied dieses freien sozialen Netzwerks bist, <a href=\"%s\">folge diesem Link</a> um einen Ã¶ffentlichen Friendica-Server zu finden und beizutreten.";
 $a->strings["Friend/Connection Request"] = "Kontaktanfrage";
 $a->strings["Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, testuser@gnusocial.de"] = "Beispiele: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, testuser@gnusocial.de";
 $a->strings["Please answer the following:"] = "Bitte beantworte folgendes:";
-$a->strings["Does %s know you?"] = "Kennt %s Dich?";
+$a->strings["Does %s know you?"] = "Kennt %s dich?";
 $a->strings["Add a personal note:"] = "Eine persönliche Notiz beifügen:";
 $a->strings["Friendica"] = "Friendica";
 $a->strings["GNU Social (Pleroma, Mastodon)"] = "GNU Social (Pleroma, Mastodon)";
 $a->strings["Diaspora (Socialhome, Hubzilla)"] = "Diaspora (Socialhome, Hubzilla)";
-$a->strings[" - please do not use this form.  Instead, enter %s into your Diaspora search bar."] = " - bitte verwende dieses Formular nicht. Stattdessen suche nach %s in Deiner Diaspora Suchleiste.";
+$a->strings[" - please do not use this form.  Instead, enter %s into your Diaspora search bar."] = " - bitte verwende dieses Formular nicht. Stattdessen suche nach %s in Deiner Diaspora-Suchleiste.";
 $a->strings["Your Identity Address:"] = "Adresse Deines Profils:";
 $a->strings["Submit Request"] = "Anfrage abschicken";
 $a->strings["Location:"] = "Ort:";
@@ -813,7 +812,7 @@ $a->strings["Insert audio link"] = "Audio-Adresse einfügen";
 $a->strings["audio link"] = "Audio-Link";
 $a->strings["CC: email addresses"] = "Cc: E-Mail-Addressen";
 $a->strings["Example: bob@example.com, mary@example.com"] = "Z.B.: bob@example.com, mary@example.com";
-$a->strings["Event can not end before it has started."] = "Die Veranstaltung kann nicht enden bevor sie beginnt.";
+$a->strings["Event can not end before it has started."] = "Die Veranstaltung kann nicht enden, bevor sie beginnt.";
 $a->strings["Event title and start time are required."] = "Der Veranstaltungstitel und die Anfangszeit müssen angegeben werden.";
 $a->strings["Create New Event"] = "Neue Veranstaltung erstellen";
 $a->strings["Event details"] = "Veranstaltungsdetails";
@@ -834,25 +833,25 @@ $a->strings["Photos"] = "Bilder";
 $a->strings["Contact Photos"] = "Kontaktbilder";
 $a->strings["Upload"] = "Hochladen";
 $a->strings["Files"] = "Dateien";
-$a->strings["You must be logged in to use this module"] = "Du musst eingeloggt sein um dieses Modul benutzen zu können.";
+$a->strings["You must be logged in to use this module"] = "Du musst eingeloggt sein, um dieses Modul benutzen zu können.";
 $a->strings["Source URL"] = "URL der Quelle";
 $a->strings["- select -"] = "- auswählen -";
 $a->strings["The contact could not be added."] = "Der Kontakt konnte nicht hinzugefügt werden.";
 $a->strings["You already added this contact."] = "Du hast den Kontakt bereits hinzugefügt.";
-$a->strings["Diaspora support isn't enabled. Contact can't be added."] = "Diaspora Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden.";
-$a->strings["OStatus support is disabled. Contact can't be added."] = "OStatus Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden.";
-$a->strings["The network type couldn't be detected. Contact can't be added."] = "Der Netzwerktype wurde nicht erkannt. Der Kontakt kann nicht hinzugefügt werden.";
+$a->strings["Diaspora support isn't enabled. Contact can't be added."] = "Diaspora-Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden.";
+$a->strings["OStatus support is disabled. Contact can't be added."] = "OStatus-Unterstützung ist nicht aktiviert. Der Kontakt kann nicht zugefügt werden.";
+$a->strings["The network type couldn't be detected. Contact can't be added."] = "Der Netzwerktyp wurde nicht erkannt. Der Kontakt kann nicht hinzugefügt werden.";
 $a->strings["Tags:"] = "Tags:";
 $a->strings["Status Messages and Posts"] = "Statusnachrichten und Beiträge";
-$a->strings["This is Friendica, version %s that is running at the web location %s. The database version is %s, the post update version is %s."] = "Diese Friendica Instanz verwendet die Version %s, sie ist unter der folgenden Adresse im Web zu finden %s. Die Datenbank Version ist %s und die Post-Update Version %s.";
-$a->strings["Please visit <a href=\"https://friendi.ca\">Friendi.ca</a> to learn more about the Friendica project."] = "Bitte besuche <a href=\"https://friendi.ca\">Friendi.ca</a> um mehr Ã¼ber das Friendica Projekt zu erfahren.";
+$a->strings["This is Friendica, version %s that is running at the web location %s. The database version is %s, the post update version is %s."] = "Diese Friendica-Instanz verwendet die Version %s, sie ist unter der folgenden Adresse im Web zu finden %s. Die Datenbankversion ist %s und die Post-Update-Version %s.";
+$a->strings["Please visit <a href=\"https://friendi.ca\">Friendi.ca</a> to learn more about the Friendica project."] = "Bitte besuche <a href=\"https://friendi.ca\">Friendi.ca</a>, um mehr Ã¼ber das Friendica-Projekt zu erfahren.";
 $a->strings["Bug reports and issues: please visit"] = "Probleme oder Fehler gefunden? Bitte besuche";
 $a->strings["the bugtracker at github"] = "den Bugtracker auf github";
 $a->strings["Suggestions, praise, etc. - please email \"info\" at \"friendi - dot - ca"] = "Vorschläge, Lob usw.: E-Mail an \"Info\" at \"Friendi - dot ca\"";
 $a->strings["Installed addons/apps:"] = "Installierte Apps und Addons";
 $a->strings["No installed addons/apps"] = "Es sind keine Addons oder Apps installiert";
 $a->strings["Read about the <a href=\"%1\$s/tos\">Terms of Service</a> of this node."] = "Erfahre mehr Ã¼ber die <a href=\"%1\$s/tos\">Nutzungsbedingungen</a> dieses Knotens.";
-$a->strings["On this server the following remote servers are blocked."] = "Auf diesem Server werden die folgenden entfernten Server blockiert.";
+$a->strings["On this server the following remote servers are blocked."] = "Auf diesem Server werden die folgenden, entfernten Server blockiert.";
 $a->strings["Friend suggestion sent."] = "Kontaktvorschlag gesendet.";
 $a->strings["Suggest Friends"] = "Kontakte vorschlagen";
 $a->strings["Suggest a friend for %s"] = "Schlage %s einen Kontakt vor";
@@ -883,7 +882,7 @@ $a->strings["Not Found"] = "Nicht gefunden";
 $a->strings["Welcome to %s"] = "Willkommen zu %s";
 $a->strings["Total invitation limit exceeded."] = "Limit für Einladungen erreicht.";
 $a->strings["%s : Not a valid email address."] = "%s: Keine gültige Email Adresse.";
-$a->strings["Please join us on Friendica"] = "Ich lade Dich zu unserem sozialen Netzwerk Friendica ein";
+$a->strings["Please join us on Friendica"] = "Ich lade dich zu unserem sozialen Netzwerk Friendica ein";
 $a->strings["Invitation limit exceeded. Please contact your site administrator."] = "Limit für Einladungen erreicht. Bitte kontaktiere des Administrator der Seite.";
 $a->strings["%s : Message delivery failed."] = "%s: Zustellung der Nachricht fehlgeschlagen.";
 $a->strings["%d message sent."] = [
@@ -891,24 +890,24 @@ $a->strings["%d message sent."] = [
        1 => "%d Nachrichten gesendet.",
 ];
 $a->strings["You have no more invitations available"] = "Du hast keine weiteren Einladungen";
-$a->strings["Visit %s for a list of public sites that you can join. Friendica members on other sites can all connect with each other, as well as with members of many other social networks."] = "Besuche %s für eine Liste der Ã¶ffentlichen Server, denen Du beitreten kannst. Friendica Mitglieder unterschiedlicher Server können sich sowohl alle miteinander verbinden, als auch mit Mitgliedern anderer Sozialer Netzwerke.";
-$a->strings["To accept this invitation, please visit and register at %s or any other public Friendica website."] = "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere Dich bitte bei %s oder einer anderen Ã¶ffentlichen Friendica Website.";
-$a->strings["Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks. See %s for a list of alternate Friendica sites you can join."] = "Friendica Server verbinden sich alle untereinander, um ein großes datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden. Besuche %s für eine Liste alternativer Friendica Server, denen Du beitreten kannst.";
+$a->strings["Visit %s for a list of public sites that you can join. Friendica members on other sites can all connect with each other, as well as with members of many other social networks."] = "Besuche %s für eine Liste der Ã¶ffentlichen Server, denen du beitreten kannst. Friendica-Mitglieder unterschiedlicher Server können sich sowohl alle miteinander verbinden, als auch mit Mitgliedern anderer sozialer Netzwerke.";
+$a->strings["To accept this invitation, please visit and register at %s or any other public Friendica website."] = "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere dich bitte bei %s oder einer anderen Ã¶ffentlichen Friendica-Website.";
+$a->strings["Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks. See %s for a list of alternate Friendica sites you can join."] = "Friendica Server verbinden sich alle untereinander, um ein großes, datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden. Besuche %s für eine Liste alternativer Friendica-Server, denen du beitreten kannst.";
 $a->strings["Our apologies. This system is not currently configured to connect with other public sites or invite members."] = "Es tut uns leid. Dieses System ist zurzeit nicht dafür konfiguriert, sich mit anderen Ã¶ffentlichen Seiten zu verbinden oder Mitglieder einzuladen.";
-$a->strings["Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks."] = "Friendica Server verbinden sich alle untereinander, um ein großes datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden.";
-$a->strings["To accept this invitation, please visit and register at %s."] = "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere Dich bitte bei %s.";
+$a->strings["Friendica sites all inter-connect to create a huge privacy-enhanced social web that is owned and controlled by its members. They can also connect with many traditional social networks."] = "Friendica Server verbinden sich alle untereinander, um ein großes, datenschutzorientiertes Soziales Netzwerk zu bilden, das von seinen Mitgliedern betrieben und kontrolliert wird. Sie können sich auch mit vielen Ã¼blichen Sozialen Netzwerken verbinden.";
+$a->strings["To accept this invitation, please visit and register at %s."] = "Um diese Kontaktanfrage zu akzeptieren, besuche und registriere dich bitte bei %s.";
 $a->strings["Send invitations"] = "Einladungen senden";
 $a->strings["Enter email addresses, one per line:"] = "E-Mail-Adressen eingeben, eine pro Zeile:";
 $a->strings["Your message:"] = "Deine Nachricht:";
-$a->strings["You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web."] = "Du bist herzlich dazu eingeladen, Dich mir und anderen guten Freunden auf Friendica anzuschließen - und ein besseres Soziales Netz aufzubauen.";
+$a->strings["You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web."] = "Du bist herzlich dazu eingeladen, dich mir und anderen guten Freunden auf Friendica anzuschließen - und ein besseres, soziales Netz aufzubauen.";
 $a->strings["You will need to supply this invitation code: \$invite_code"] = "Du benötigst den folgenden Einladungscode: \$invite_code";
-$a->strings["Once you have registered, please connect with me via my profile page at:"] = "Sobald Du registriert bist, kontaktiere mich bitte auf meiner Profilseite:";
-$a->strings["For more information about the Friendica project and why we feel it is important, please visit http://friendi.ca"] = "Für weitere Informationen Ã¼ber das Friendica Projekt und warum wir es für ein wichtiges Projekt halten, besuche bitte http://friendi.ca.";
+$a->strings["Once you have registered, please connect with me via my profile page at:"] = "Sobald du registriert bist, kontaktiere mich bitte auf meiner Profilseite:";
+$a->strings["For more information about the Friendica project and why we feel it is important, please visit http://friendi.ca"] = "Für weitere Informationen Ã¼ber das Friendica-Projekt und warum wir es für ein wichtiges Projekt halten, besuche bitte http://friendi.ca.";
 $a->strings["Unable to locate original post."] = "Konnte den Originalbeitrag nicht finden.";
 $a->strings["Empty post discarded."] = "Leerer Beitrag wurde verworfen.";
 $a->strings["This message was sent to you by %s, a member of the Friendica social network."] = "Diese Nachricht wurde dir von %s geschickt, einem Mitglied des Sozialen Netzwerks Friendica.";
 $a->strings["You may visit them online at %s"] = "Du kannst sie online unter %s besuchen";
-$a->strings["Please contact the sender by replying to this post if you do not wish to receive these messages."] = "Falls Du diese Beiträge nicht erhalten möchtest, kontaktiere bitte den Autor, indem Du auf diese Nachricht antwortest.";
+$a->strings["Please contact the sender by replying to this post if you do not wish to receive these messages."] = "Falls du diese Beiträge nicht erhalten möchtest, kontaktiere bitte den Autor, indem du auf diese Nachricht antwortest.";
 $a->strings["%s posted an update."] = "%s hat ein Update veröffentlicht.";
 $a->strings["l F d, Y \\@ g:i A"] = "l, d. F Y\\, H:i";
 $a->strings["Time Conversion"] = "Zeitumrechnung";
@@ -921,26 +920,27 @@ $a->strings["Remote privacy information not available."] = "Entfernte Privatsph
 $a->strings["Visible to:"] = "Sichtbar für:";
 $a->strings["No valid account found."] = "Kein gültiges Konto gefunden.";
 $a->strings["Password reset request issued. Check your email."] = "Zurücksetzen des Passworts eingeleitet. Bitte Ã¼berprüfe Deine E-Mail.";
-$a->strings["\n\t\tDear %1\$s,\n\t\t\tA request was recently received at \"%2\$s\" to reset your account\n\t\tpassword. In order to confirm this request, please select the verification link\n\t\tbelow or paste it into your web browser address bar.\n\n\t\tIf you did NOT request this change, please DO NOT follow the link\n\t\tprovided and ignore and/or delete this email, the request will expire shortly.\n\n\t\tYour password will not be changed unless we can verify that you\n\t\tissued this request."] = "\nHallo %1\$s,\n\nAuf \"%2\$s\" ist eine Anfrage auf das Zurücksetzen Deines Passworts gestellt\nworden. Um diese Anfrage zu verifizieren, folge bitte dem unten stehenden\nLink oder kopiere und füge ihn in die Adressleiste Deines Browsers ein.\n\nSolltest Du die Anfrage NICHT gemacht haben, ignoriere und/oder lösche diese\nE-Mail bitte.\n\nDein Passwort wird nicht geändert, solange wir nicht verifiziert haben, dass\nDu diese Ã„nderung angefragt hast.";
-$a->strings["\n\t\tFollow this link soon to verify your identity:\n\n\t\t%1\$s\n\n\t\tYou will then receive a follow-up message containing the new password.\n\t\tYou may change that password from your account settings page after logging in.\n\n\t\tThe login details are as follows:\n\n\t\tSite Location:\t%2\$s\n\t\tLogin Name:\t%3\$s"] = "\nUm Deine Identität zu verifizieren, folge bitte dem folgenden Link:\n\n%1\$s\n\nDu wirst eine weitere E-Mail mit Deinem neuen Passwort erhalten. Sobald Du Dich\nangemeldet hast, kannst Du Dein Passwort in den Einstellungen Ã¤ndern.\n\nDie Anmeldedetails sind die folgenden:\n\nAdresse der Seite:\t%2\$s\nBenutzername:\t%3\$s";
+$a->strings["\n\t\tDear %1\$s,\n\t\t\tA request was recently received at \"%2\$s\" to reset your account\n\t\tpassword. In order to confirm this request, please select the verification link\n\t\tbelow or paste it into your web browser address bar.\n\n\t\tIf you did NOT request this change, please DO NOT follow the link\n\t\tprovided and ignore and/or delete this email, the request will expire shortly.\n\n\t\tYour password will not be changed unless we can verify that you\n\t\tissued this request."] = "\nHallo %1\$s,\n\nAuf \"%2\$s\" ist eine Anfrage auf das Zurücksetzen deines Passworts gestellt\nworden. Um diese Anfrage zu verifizieren, folge bitte dem unten stehenden\nLink oder kopiere und füge ihn in die Adressleiste deines Browsers ein.\n\nSolltest du die Anfrage NICHT gestellt haben, ignoriere und/oder lösche diese\nE-Mail bitte.\n\nDein Passwort wird nicht geändert, solange wir nicht verifiziert haben, dass\ndu diese Ã„nderung angefragt hast.";
+$a->strings["\n\t\tFollow this link soon to verify your identity:\n\n\t\t%1\$s\n\n\t\tYou will then receive a follow-up message containing the new password.\n\t\tYou may change that password from your account settings page after logging in.\n\n\t\tThe login details are as follows:\n\n\t\tSite Location:\t%2\$s\n\t\tLogin Name:\t%3\$s"] = "\nUm deine Identität zu verifizieren, folge bitte diesem Link:\n\n%1\$s\n\nDu wirst eine weitere E-Mail mit deinem neuen Passwort erhalten. Sobald du dich\nangemeldet hast, kannst du dein Passwort in den Einstellungen Ã¤ndern.\n\nDie Anmeldedetails sind die folgenden:\n\nAdresse der Seite:\t%2\$s\nBenutzername:\t%3\$s";
 $a->strings["Password reset requested at %s"] = "Anfrage zum Zurücksetzen des Passworts auf %s erhalten";
-$a->strings["Request could not be verified. (You may have previously submitted it.) Password reset failed."] = "Anfrage konnte nicht verifiziert werden. (Eventuell hast Du bereits eine Ã¤hnliche Anfrage gestellt.) Zurücksetzen des Passworts gescheitert.";
+$a->strings["Request could not be verified. (You may have previously submitted it.) Password reset failed."] = "Anfrage konnte nicht verifiziert werden. (Eventuell hast du bereits eine Ã¤hnliche Anfrage gestellt.) Zurücksetzen des Passworts gescheitert.";
 $a->strings["Request has expired, please make a new one."] = "Die Anfrage ist abgelaufen. Bitte stelle eine erneute.";
-$a->strings["Forgot your Password?"] = "Hast Du Dein Passwort vergessen?";
-$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Gib Deine E-Mail-Adresse an und fordere ein neues Passwort an. Es werden Dir dann weitere Informationen per Mail zugesendet.";
+$a->strings["Forgot your Password?"] = "Hast du dein Passwort vergessen?";
+$a->strings["Enter your email address and submit to have your password reset. Then check your email for further instructions."] = "Gib Deine E-Mail-Adresse an und fordere ein neues Passwort an. Es werden dir dann weitere Informationen per Mail zugesendet.";
 $a->strings["Nickname or Email: "] = "Spitzname oder E-Mail:";
 $a->strings["Reset"] = "Zurücksetzen";
 $a->strings["Password Reset"] = "Passwort zurücksetzen";
 $a->strings["Your password has been reset as requested."] = "Dein Passwort wurde wie gewünscht zurückgesetzt.";
 $a->strings["Your new password is"] = "Dein neues Passwort lautet";
-$a->strings["Save or copy your new password - and then"] = "Speichere oder kopiere Dein neues Passwort - und dann";
-$a->strings["click here to login"] = "hier klicken, um Dich anzumelden";
-$a->strings["Your password may be changed from the <em>Settings</em> page after successful login."] = "Du kannst das Passwort in den <em>Einstellungen</em> Ã¤ndern, sobald Du Dich erfolgreich angemeldet hast.";
-$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tYour password has been changed as requested. Please retain this\n\t\t\tinformation for your records (or change your password immediately to\n\t\t\tsomething that you will remember).\n\t\t"] = "\nHallo %1\$s,\n\nDein Passwort wurde wie gewünscht geändert. Bitte bewahre diese Informationen gut auf (oder Ã¤ndere Dein Passwort in eines, das Du Dir leicht merken kannst).";
+$a->strings["Save or copy your new password - and then"] = "Speichere oder kopiere dein neues Passwort - und dann";
+$a->strings["click here to login"] = "hier klicken, um dich anzumelden";
+$a->strings["Your password may be changed from the <em>Settings</em> page after successful login."] = "Du kannst das Passwort in den <em>Einstellungen</em> Ã¤ndern, sobald du dich erfolgreich angemeldet hast.";
+$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tYour password has been changed as requested. Please retain this\n\t\t\tinformation for your records (or change your password immediately to\n\t\t\tsomething that you will remember).\n\t\t"] = "\nHallo %1\$s,\n\nDein Passwort wurde wie gewünscht geändert. Bitte bewahre diese Informationen gut auf (oder Ã¤ndere dein Passwort in eines, das du dir leicht merken kannst).";
 $a->strings["\n\t\t\tYour login details are as follows:\n\n\t\t\tSite Location:\t%1\$s\n\t\t\tLogin Name:\t%2\$s\n\t\t\tPassword:\t%3\$s\n\n\t\t\tYou may change that password from your account settings page after logging in.\n\t\t"] = "\nDie Anmeldedaten sind die folgenden:\n\nAdresse der Seite: %1\$s\nLogin Name: %2\$s\nPasswort: %3\$s\n\nDas Passwort kann und sollte in den Kontoeinstellungen nach der Anmeldung geändert werden.";
-$a->strings["Your password has been changed at %s"] = "Auf %s wurde Dein Passwort geändert";
+$a->strings["Your password has been changed at %s"] = "Auf %s wurde dein Passwort geändert";
+$a->strings["System down for maintenance"] = "System zur Wartung abgeschaltet";
 $a->strings["Manage Identities and/or Pages"] = "Verwalte Identitäten und/oder Seiten";
-$a->strings["Toggle between different identities or community/group pages which share your account details or which you have been granted \"manage\" permissions"] = "Zwischen verschiedenen Identitäten oder Gemeinschafts-/Gruppenseiten wechseln, die Deine Kontoinformationen teilen oder zu denen Du â€žVerwalten“-Befugnisse bekommen hast.";
+$a->strings["Toggle between different identities or community/group pages which share your account details or which you have been granted \"manage\" permissions"] = "Zwischen verschiedenen Identitäten oder Gemeinschafts-/Gruppenseiten wechseln, die deine Kontoinformationen teilen oder zu denen du â€žVerwalten“-Befugnisse bekommen hast.";
 $a->strings["Select an identity to manage: "] = "Wähle eine Identität zum Verwalten aus: ";
 $a->strings["No keywords to match. Please add keywords to your default profile."] = "Keine Schlüsselwörter zum Abgleichen gefunden. Bitte füge einige Schlüsselwörter zu Deinem Standardprofil hinzu.";
 $a->strings["first"] = "erste";
@@ -954,7 +954,7 @@ $a->strings["Message collection failure."] = "Konnte Nachrichten nicht abrufen."
 $a->strings["Message sent."] = "Nachricht gesendet.";
 $a->strings["Discard"] = "Verwerfen";
 $a->strings["Messages"] = "Nachrichten";
-$a->strings["Do you really want to delete this message?"] = "Möchtest Du wirklich diese Nachricht löschen?";
+$a->strings["Do you really want to delete this message?"] = "Möchtest du diese Nachricht wirklich löschen?";
 $a->strings["Conversation not found."] = "Unterhaltung nicht gefunden.";
 $a->strings["Message deleted."] = "Nachricht gelöscht.";
 $a->strings["Conversation removed."] = "Unterhaltung gelöscht.";
@@ -967,11 +967,11 @@ $a->strings["Message not available."] = "Nachricht nicht verfügbar.";
 $a->strings["Delete message"] = "Nachricht löschen";
 $a->strings["D, d M Y - g:i A"] = "D, d. M Y - H:i";
 $a->strings["Delete conversation"] = "Unterhaltung löschen";
-$a->strings["No secure communications available. You <strong>may</strong> be able to respond from the sender's profile page."] = "Sichere Kommunikation ist nicht verfügbar. <strong>Eventuell</strong> kannst Du auf der Profilseite des Absenders antworten.";
+$a->strings["No secure communications available. You <strong>may</strong> be able to respond from the sender's profile page."] = "Sichere Kommunikation ist nicht verfügbar. <strong>Eventuell</strong> kannst du auf der Profilseite des Absenders antworten.";
 $a->strings["Send Reply"] = "Antwort senden";
-$a->strings["Unknown sender - %s"] = "'Unbekannter Absender - %s";
+$a->strings["Unknown sender - %s"] = "Unbekannter Absender - %s";
 $a->strings["You and %s"] = "Du und %s";
-$a->strings["%s and You"] = "%s und Du";
+$a->strings["%s and You"] = "%s und du";
 $a->strings["%d message"] = [
        0 => "%d Nachricht",
        1 => "%d Nachrichten",
@@ -981,7 +981,7 @@ $a->strings["Saved Searches"] = "Gespeicherte Suchen";
 $a->strings["add"] = "hinzufügen";
 $a->strings["Warning: This group contains %s member from a network that doesn't allow non public messages."] = [
        0 => "Warnung: Diese Gruppe beinhaltet %s Person aus einem Netzwerk das keine nicht Ã¶ffentlichen Beiträge empfangen kann.",
-       1 => "Warnung: Diese Gruppe beinhaltet %s Personen aus Netzwerken die keine nicht-öffentlichen Beiträge empfangen können.",
+       1 => "Warnung: Diese Gruppe beinhaltet %s Personen aus Netzwerken, die keine nicht-öffentlichen Beiträge empfangen können.",
 ];
 $a->strings["Messages in this group won't be send to these receivers."] = "Beiträge in dieser Gruppe werden deshalb nicht an diese Personen zugestellt werden.";
 $a->strings["No such group"] = "Es gibt keine solche Gruppe";
@@ -993,7 +993,7 @@ $a->strings["Sort by Comment Date"] = "Nach Kommentardatum sortieren";
 $a->strings["Posted Order"] = "Neueste Beiträge";
 $a->strings["Sort by Post Date"] = "Nach Beitragsdatum sortieren";
 $a->strings["Personal"] = "Persönlich";
-$a->strings["Posts that mention or involve you"] = "Beiträge, in denen es um Dich geht";
+$a->strings["Posts that mention or involve you"] = "Beiträge, in denen es um dich geht";
 $a->strings["New"] = "Neue";
 $a->strings["Activity Stream - by date"] = "Aktivitäten-Stream - nach Datum";
 $a->strings["Shared Links"] = "Geteilte Links";
@@ -1002,45 +1002,45 @@ $a->strings["Starred"] = "Markierte";
 $a->strings["Favourite Posts"] = "Favorisierte Beiträge";
 $a->strings["Welcome to Friendica"] = "Willkommen bei Friendica";
 $a->strings["New Member Checklist"] = "Checkliste für neue Mitglieder";
-$a->strings["We would like to offer some tips and links to help make your experience enjoyable. Click any item to visit the relevant page. A link to this page will be visible from your home page for two weeks after your initial registration and then will quietly disappear."] = "Wir möchten Dir einige Tipps und Links anbieten, die Dir helfen könnten, den Einstieg angenehmer zu machen. Klicke auf ein Element, um die entsprechende Seite zu besuchen. Ein Link zu dieser Seite hier bleibt für Dich an Deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden.";
+$a->strings["We would like to offer some tips and links to help make your experience enjoyable. Click any item to visit the relevant page. A link to this page will be visible from your home page for two weeks after your initial registration and then will quietly disappear."] = "Wir möchten dir einige Tipps und Links anbieten, die dir helfen könnten, den Einstieg angenehmer zu machen. Klicke auf ein Element, um die entsprechende Seite zu besuchen. Ein Link zu dieser Seite hier bleibt für dich an deiner Pinnwand für zwei Wochen nach dem Registrierungsdatum sichtbar und wird dann verschwinden.";
 $a->strings["Getting Started"] = "Einstieg";
 $a->strings["Friendica Walk-Through"] = "Friendica Rundgang";
-$a->strings["On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join."] = "Auf der <em>Quick Start</em> Seite findest Du eine kurze Einleitung in die einzelnen Funktionen Deines Profils und die Netzwerk-Reiter, wo Du interessante Foren findest und neue Kontakte knüpfst.";
+$a->strings["On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join."] = "Auf der <em>Quick Start</em>-Seite findest du eine kurze Einleitung in die einzelnen Funktionen deines Profils und die Netzwerk-Reiter, wo du interessante Foren findest und neue Kontakte knüpfst.";
 $a->strings["Go to Your Settings"] = "Gehe zu deinen Einstellungen";
 $a->strings["On your <em>Settings</em> page -  change your initial password. Also make a note of your Identity Address. This looks just like an email address - and will be useful in making friends on the free social web."] = "Ändere bitte unter <em>Einstellungen</em> dein Passwort. Außerdem merke dir deine Identifikationsadresse. Diese sieht aus wie eine E-Mail-Adresse und wird benötigt, um Kontakte mit anderen im Friendica Netzwerk zu knüpfen..";
-$a->strings["Review the other settings, particularly the privacy settings. An unpublished directory listing is like having an unlisted phone number. In general, you should probably publish your listing - unless all of your friends and potential friends know exactly how to find you."] = "Ãœberprüfe die restlichen Einstellungen, insbesondere die Einstellungen zur Privatsphäre. Wenn Du Dein Profil nicht veröffentlichst, ist das als wenn Du Deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest Du es veröffentlichen - außer all Deine Kontakte und potentiellen Kontakte wissen genau, wie sie Dich finden können.";
+$a->strings["Review the other settings, particularly the privacy settings. An unpublished directory listing is like having an unlisted phone number. In general, you should probably publish your listing - unless all of your friends and potential friends know exactly how to find you."] = "Ãœberprüfe die restlichen Einstellungen, insbesondere die Einstellungen zur Privatsphäre. Wenn du dein Profil nicht veröffentlichst, ist das, als wenn du deine Telefonnummer nicht ins Telefonbuch einträgst. Im Allgemeinen solltest du es veröffentlichen - außer all deine Kontakte und potentiellen Kontakte wissen genau, wie sie dich finden können.";
 $a->strings["Profile"] = "Profil";
 $a->strings["Upload Profile Photo"] = "Profilbild hochladen";
-$a->strings["Upload a profile photo if you have not done so already. Studies have shown that people with real photos of themselves are ten times more likely to make friends than people who do not."] = "Lade ein Profilbild hoch, falls Du es noch nicht getan hast. Studien haben gezeigt, dass es zehnmal wahrscheinlicher ist neue Kontakte zu finden, wenn Du ein Bild von Dir selbst verwendest, als wenn Du dies nicht tust.";
+$a->strings["Upload a profile photo if you have not done so already. Studies have shown that people with real photos of themselves are ten times more likely to make friends than people who do not."] = "Lade ein Profilbild hoch, falls du es noch nicht getan hast. Studien haben gezeigt, dass es zehnmal wahrscheinlicher ist, neue Kontakte zu finden, wenn du ein Bild von dir selbst verwendest, als wenn du dies nicht tust.";
 $a->strings["Edit Your Profile"] = "Editiere dein Profil";
-$a->strings["Edit your <strong>default</strong> profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors."] = "Editiere Dein <strong>Standard</strong> Profil nach Deinen Vorlieben. Ãœberprüfe die Einstellungen zum Verbergen Deiner Kontaktliste vor unbekannten Betrachtern des Profils.";
-$a->strings["Profile Keywords"] = "Profil Schlüsselbegriffe";
-$a->strings["Set some public keywords for your default profile which describe your interests. We may be able to find other people with similar interests and suggest friendships."] = "Trage ein paar Ã¶ffentliche Stichwörter in Dein Standardprofil ein, die Deine Interessen beschreiben. Eventuell sind wir in der Lage Leute zu finden, die Deine Interessen teilen und können Dir dann Kontakte vorschlagen.";
+$a->strings["Edit your <strong>default</strong> profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors."] = "Editiere dein <strong>Standard</strong>-Profil nach deinen Vorlieben. Ãœberprüfe die Einstellungen zum Verbergen deiner Kontaktliste vor unbekannten Betrachtern des Profils.";
+$a->strings["Profile Keywords"] = "Profil-Schlüsselbegriffe";
+$a->strings["Set some public keywords for your default profile which describe your interests. We may be able to find other people with similar interests and suggest friendships."] = "Trage ein paar Ã¶ffentliche Stichwörter in dein Standardprofil ein, die deine Interessen beschreiben. Eventuell sind wir in der Lage, Leute zu finden, die deine Interessen teilen, und können dir dann Kontakte vorschlagen.";
 $a->strings["Connecting"] = "Verbindungen knüpfen";
 $a->strings["Importing Emails"] = "Emails Importieren";
-$a->strings["Enter your email access information on your Connector Settings page if you wish to import and interact with friends or mailing lists from your email INBOX"] = "Gib Deine E-Mail-Zugangsinformationen auf der Connector-Einstellungsseite ein, falls Du E-Mails aus Deinem Posteingang importieren und mit Kontakten und Mailinglisten interagieren willst.";
+$a->strings["Enter your email access information on your Connector Settings page if you wish to import and interact with friends or mailing lists from your email INBOX"] = "Gib deine E-Mail-Zugangsinformationen auf der Connector-Einstellungsseite ein, falls du E-Mails aus Deinem Posteingang importieren und mit Kontakten und Mailinglisten interagieren willst.";
 $a->strings["Go to Your Contacts Page"] = "Gehe zu deiner Kontakt-Seite";
-$a->strings["Your Contacts page is your gateway to managing friendships and connecting with friends on other networks. Typically you enter their address or site URL in the <em>Add New Contact</em> dialog."] = "Die Kontakte-Seite ist die Einstiegsseite, von der aus Du Kontakte verwalten und Dich mit Personen in anderen Netzwerken verbinden kannst. Normalerweise gibst Du dazu einfach ihre Adresse oder die URL der Seite im Kasten <em>Neuen Kontakt hinzufügen</em> ein.";
-$a->strings["Go to Your Site's Directory"] = "Gehe zum Verzeichnis Deiner Friendica Instanz";
-$a->strings["The Directory page lets you find other people in this network or other federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on their profile page. Provide your own Identity Address if requested."] = "Ãœber die Verzeichnisseite kannst Du andere Personen auf diesem Server oder anderen verknüpften Seiten finden. Halte nach einem <em>Verbinden</em> oder <em>Folgen</em> Link auf deren Profilseiten Ausschau und gib Deine eigene Profiladresse an, falls Du danach gefragt wirst.";
+$a->strings["Your Contacts page is your gateway to managing friendships and connecting with friends on other networks. Typically you enter their address or site URL in the <em>Add New Contact</em> dialog."] = "Die Kontakte-Seite ist die Einstiegsseite, von der aus du Kontakte verwalten und dich mit Personen in anderen Netzwerken verbinden kannst. Normalerweise gibst du dazu einfach ihre Adresse oder die URL der Seite im Kasten <em>Neuen Kontakt hinzufügen</em> ein.";
+$a->strings["Go to Your Site's Directory"] = "Gehe zum Verzeichnis Deiner Friendica-Instanz";
+$a->strings["The Directory page lets you find other people in this network or other federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on their profile page. Provide your own Identity Address if requested."] = "Ãœber die Verzeichnisseite kannst du andere Personen auf diesem Server oder anderen, verknüpften Seiten finden. Halte nach einem <em>Verbinden</em>- oder <em>Folgen</em>-Link auf deren Profilseiten Ausschau und gib deine eigene Profiladresse an, falls du danach gefragt wirst.";
 $a->strings["Finding New People"] = "Neue Leute kennenlernen";
 $a->strings["On the side panel of the Contacts page are several tools to find new friends. We can match people by interest, look up people by name or interest, and provide suggestions based on network relationships. On a brand new site, friend suggestions will usually begin to be populated within 24 hours."] = "Im seitlichen Bedienfeld der Kontakteseite gibt es diverse Werkzeuge, um neue Personen zu finden. Wir können Menschen mit den gleichen Interessen finden, anhand von Namen oder Interessen suchen oder aber aufgrund vorhandener Kontakte neue Leute vorschlagen.\nAuf einer brandneuen - soeben erstellten - Seite starten die Kontaktvorschläge innerhalb von 24 Stunden.";
 $a->strings["Groups"] = "Gruppen";
 $a->strings["Group Your Contacts"] = "Gruppiere deine Kontakte";
-$a->strings["Once you have made some friends, organize them into private conversation groups from the sidebar of your Contacts page and then you can interact with each group privately on your Network page."] = "Sobald Du einige Kontakte gefunden hast, organisiere sie in Gruppen zur privaten Kommunikation im Seitenmenü der Kontakte-Seite. Du kannst dann mit jeder dieser Gruppen von der Netzwerkseite aus privat interagieren.";
+$a->strings["Once you have made some friends, organize them into private conversation groups from the sidebar of your Contacts page and then you can interact with each group privately on your Network page."] = "Sobald du einige Kontakte gefunden hast, organisiere sie in Gruppen zur privaten Kommunikation im Seitenmenü der Kontakte-Seite. Du kannst dann mit jeder dieser Gruppen von der Netzwerkseite aus privat interagieren.";
 $a->strings["Why Aren't My Posts Public?"] = "Warum sind meine Beiträge nicht Ã¶ffentlich?";
-$a->strings["Friendica respects your privacy. By default, your posts will only show up to people you've added as friends. For more information, see the help section from the link above."] = "Friendica respektiert Deine Privatsphäre. Mit der Grundeinstellung werden Deine Beiträge ausschließlich Deinen Kontakten angezeigt. Für weitere Informationen diesbezüglich lies Dir bitte den entsprechenden Abschnitt in der Hilfe unter dem obigen Link durch.";
+$a->strings["Friendica respects your privacy. By default, your posts will only show up to people you've added as friends. For more information, see the help section from the link above."] = "Friendica respektiert Deine Privatsphäre. Mit der Grundeinstellung werden Deine Beiträge ausschließlich Deinen Kontakten angezeigt. Für weitere Informationen diesbezüglich lies dir bitte den entsprechenden Abschnitt in der Hilfe unter dem obigen Link durch.";
 $a->strings["Getting Help"] = "Hilfe bekommen";
 $a->strings["Go to the Help Section"] = "Zum Hilfe Abschnitt gehen";
-$a->strings["Our <strong>help</strong> pages may be consulted for detail on other program features and resources."] = "Unsere <strong>Hilfe</strong> Seiten können herangezogen werden, um weitere Einzelheiten zu andern Programm Features zu erhalten.";
+$a->strings["Our <strong>help</strong> pages may be consulted for detail on other program features and resources."] = "Unsere <strong>Hilfe</strong>-Seiten können herangezogen werden, um weitere Einzelheiten zu anderen Programm-Features zu erhalten.";
 $a->strings["Personal Notes"] = "Persönliche Notizen";
 $a->strings["Invalid request identifier."] = "Invalid request identifier.";
 $a->strings["Ignore"] = "Ignorieren";
 $a->strings["Notifications"] = "Benachrichtigungen";
-$a->strings["Network Notifications"] = "Netzwerk Benachrichtigungen";
+$a->strings["Network Notifications"] = "Netzwerkbenachrichtigungen";
 $a->strings["System Notifications"] = "Systembenachrichtigungen";
 $a->strings["Personal Notifications"] = "Persönliche Benachrichtigungen";
-$a->strings["Home Notifications"] = "Pinnwand Benachrichtigungen";
+$a->strings["Home Notifications"] = "Pinnwandbenachrichtigungen";
 $a->strings["Show unread"] = "Ungelesene anzeigen";
 $a->strings["Show all"] = "Alle anzeigen";
 $a->strings["Show Ignored Requests"] = "Zeige ignorierte Anfragen";
@@ -1048,25 +1048,25 @@ $a->strings["Hide Ignored Requests"] = "Verberge ignorierte Anfragen";
 $a->strings["Notification type:"] = "Art der Benachrichtigung:";
 $a->strings["Suggested by:"] = "Vorgeschlagen von:";
 $a->strings["Hide this contact from others"] = "Verbirg diesen Kontakt vor Anderen";
-$a->strings["Claims to be known to you: "] = "Behauptet Dich zu kennen: ";
+$a->strings["Claims to be known to you: "] = "Behauptet, dich zu kennen: ";
 $a->strings["yes"] = "ja";
 $a->strings["no"] = "nein";
 $a->strings["Shall your connection be bidirectional or not?"] = "Soll die Verbindung beidseitig sein oder nicht?";
 $a->strings["Accepting %s as a friend allows %s to subscribe to your posts, and you will also receive updates from them in your news feed."] = "Akzeptierst du %s als Kontakt, erlaubst du damit das Lesen deiner Beiträge und abonnierst selbst auch die Beiträge von %s.";
 $a->strings["Accepting %s as a subscriber allows them to subscribe to your posts, but you will not receive updates from them in your news feed."] = "Wenn du %s als Abonnent akzeptierst, erlaubst du damit das Lesen deiner Beiträge, wirst aber selbst die Beiträge der anderen Seite nicht erhalten.";
-$a->strings["Accepting %s as a sharer allows them to subscribe to your posts, but you will not receive updates from them in your news feed."] = "Wenn du %s als Teilenden akzeptierst, erlaubst du damit das Lesen deiner Beiträge, wirst aber selbst die Beiträge der anderen Seite nicht erhalten.";
+$a->strings["Accepting %s as a sharer allows them to subscribe to your posts, but you will not receive updates from them in your news feed."] = "Wenn du %s als Teilender akzeptierst, erlaubst du damit das Lesen deiner Beiträge, wirst aber selbst die Beiträge der anderen Seite nicht erhalten.";
 $a->strings["Friend"] = "Kontakt";
-$a->strings["Sharer"] = "Teilenden";
+$a->strings["Sharer"] = "Teilender";
 $a->strings["Subscriber"] = "Abonnent";
 $a->strings["Network:"] = "Netzwerk:";
 $a->strings["No introductions."] = "Keine Kontaktanfragen.";
-$a->strings["No more %s notifications."] = "Keine weiteren %s Benachrichtigungen";
+$a->strings["No more %s notifications."] = "Keine weiteren %s-Benachrichtigungen";
 $a->strings["No more system notifications."] = "Keine weiteren Systembenachrichtigungen.";
 $a->strings["Post successful."] = "Beitrag erfolgreich veröffentlicht.";
 $a->strings["OpenID protocol error. No ID returned."] = "OpenID Protokollfehler. Keine ID zurückgegeben.";
 $a->strings["Account not found and OpenID registration is not permitted on this site."] = "Nutzerkonto wurde nicht gefunden und OpenID-Registrierung ist auf diesem Server nicht gestattet.";
 $a->strings["Login failed."] = "Anmeldung fehlgeschlagen.";
-$a->strings["Subscribing to OStatus contacts"] = "OStatus Kontakten folgen";
+$a->strings["Subscribing to OStatus contacts"] = "OStatus-Kontakten folgen";
 $a->strings["No contact provided."] = "Keine Kontakte gefunden.";
 $a->strings["Couldn't fetch information for contact."] = "Konnte die Kontaktinformationen nicht einholen.";
 $a->strings["Couldn't fetch friends for contact."] = "Konnte die Kontaktliste des Kontakts nicht abfragen.";
@@ -1082,15 +1082,15 @@ $a->strings["everybody"] = "jeder";
 $a->strings["Contact information unavailable"] = "Kontaktinformationen nicht verfügbar";
 $a->strings["Album not found."] = "Album nicht gefunden.";
 $a->strings["Delete Album"] = "Album löschen";
-$a->strings["Do you really want to delete this photo album and all its photos?"] = "Möchtest Du wirklich dieses Foto-Album und all seine Foto löschen?";
+$a->strings["Do you really want to delete this photo album and all its photos?"] = "Möchtest du wirklich dieses Foto-Album und all seine Foto löschen?";
 $a->strings["Delete Photo"] = "Foto löschen";
-$a->strings["Do you really want to delete this photo?"] = "Möchtest Du wirklich dieses Foto löschen?";
+$a->strings["Do you really want to delete this photo?"] = "Möchtest du wirklich dieses Foto löschen?";
 $a->strings["a photo"] = "einem Foto";
 $a->strings["%1\$s was tagged in %2\$s by %3\$s"] = "%1\$s wurde von %3\$s in %2\$s getaggt";
 $a->strings["Image exceeds size limit of %s"] = "Bildgröße Ã¼berschreitet das Limit von %s";
 $a->strings["Image upload didn't complete, please try again"] = "Der Upload des Bildes war nicht vollständig. Bitte versuche es erneut.";
 $a->strings["Image file is missing"] = "Bilddatei konnte nicht gefunden werden.";
-$a->strings["Server can't accept new file upload at this time, please contact your administrator"] = "Der Server kann derzeit keine neuen Datei Uploads akzeptieren. Bitte kontaktiere deinen Administrator.";
+$a->strings["Server can't accept new file upload at this time, please contact your administrator"] = "Der Server kann derzeit keine neuen Datei-Uploads akzeptieren. Bitte kontaktiere deinen Administrator.";
 $a->strings["Image file is empty."] = "Bilddatei ist leer.";
 $a->strings["Unable to process image."] = "Konnte das Bild nicht bearbeiten.";
 $a->strings["Image upload failed."] = "Hochladen des Bildes gescheitert.";
@@ -1124,31 +1124,18 @@ $a->strings["Rotate CW (right)"] = "Drehen US (rechts)";
 $a->strings["Rotate CCW (left)"] = "Drehen EUS (links)";
 $a->strings["I like this (toggle)"] = "Ich mag das (toggle)";
 $a->strings["I don't like this (toggle)"] = "Ich mag das nicht (toggle)";
-$a->strings["This is you"] = "Das bist Du";
+$a->strings["This is you"] = "Das bist du";
 $a->strings["Comment"] = "Kommentar";
 $a->strings["Map"] = "Karte";
 $a->strings["View Album"] = "Album betrachten";
-$a->strings["{0} wants to be your friend"] = "{0} möchte mit Dir in Kontakt treten";
+$a->strings["{0} wants to be your friend"] = "{0} möchte mit dir in Kontakt treten";
 $a->strings["{0} requested registration"] = "{0} möchte sich registrieren";
 $a->strings["Poke/Prod"] = "Anstupsen";
 $a->strings["poke, prod or do other things to somebody"] = "Stupse Leute an oder mache anderes mit ihnen";
 $a->strings["Recipient"] = "Empfänger";
-$a->strings["Choose what you wish to do to recipient"] = "Was willst Du mit dem Empfänger machen:";
+$a->strings["Choose what you wish to do to recipient"] = "Was willst du mit dem Empfänger machen:";
 $a->strings["Make this post private"] = "Diesen Beitrag privat machen";
 $a->strings["Only logged in users are permitted to perform a probing."] = "Nur eingeloggten Benutzern ist das Untersuchen von Adressen gestattet.";
-$a->strings["Image uploaded but image cropping failed."] = "Bild hochgeladen, aber das Zuschneiden schlug fehl.";
-$a->strings["Image size reduction [%s] failed."] = "Verkleinern der Bildgröße von [%s] scheiterte.";
-$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Drücke Umschalt+Neu Laden oder leere den Browser-Cache, falls das neue Foto nicht gleich angezeigt wird.";
-$a->strings["Unable to process image"] = "Bild konnte nicht verarbeitet werden";
-$a->strings["Upload File:"] = "Datei hochladen:";
-$a->strings["Select a profile:"] = "Profil auswählen:";
-$a->strings["or"] = "oder";
-$a->strings["skip this step"] = "diesen Schritt Ã¼berspringen";
-$a->strings["select a photo from your photo albums"] = "wähle ein Foto aus deinen Fotoalben";
-$a->strings["Crop Image"] = "Bild zurechtschneiden";
-$a->strings["Please adjust the image cropping for optimum viewing."] = "Passe bitte den Bildausschnitt an, damit das Bild optimal dargestellt werden kann.";
-$a->strings["Done Editing"] = "Bearbeitung abgeschlossen";
-$a->strings["Image uploaded successfully."] = "Bild erfolgreich hochgeladen.";
 $a->strings["Profile deleted."] = "Profil gelöscht.";
 $a->strings["Profile-"] = "Profil-";
 $a->strings["New profile created."] = "Neues Profil angelegt.";
@@ -1181,7 +1168,7 @@ $a->strings["Delete this profile"] = "Dieses Profil löschen";
 $a->strings["Basic information"] = "Grundinformationen";
 $a->strings["Profile picture"] = "Profilbild";
 $a->strings["Preferences"] = "Vorlieben";
-$a->strings["Status information"] = "Status Informationen";
+$a->strings["Status information"] = "Status-Informationen";
 $a->strings["Additional information"] = "Zusätzliche Informationen";
 $a->strings["Relation"] = "Beziehung";
 $a->strings["Miscellaneous"] = "Verschiedenes";
@@ -1190,7 +1177,7 @@ $a->strings["<span class=\"heart\">&hearts;</span> Marital Status:"] = "<span cl
 $a->strings["Sexual Preference:"] = "Sexuelle Vorlieben:";
 $a->strings["Example: fishing photography software"] = "Beispiel: Fischen Fotografie Software";
 $a->strings["Profile Name:"] = "Profilname:";
-$a->strings["This is your <strong>public</strong> profile.<br />It <strong>may</strong> be visible to anybody using the internet."] = "Dies ist Dein <strong>öffentliches</strong> Profil.<br />Es <strong>könnte</strong> für jeden Nutzer des Internets sichtbar sein.";
+$a->strings["This is your <strong>public</strong> profile.<br />It <strong>may</strong> be visible to anybody using the internet."] = "Dies ist dein <strong>öffentliches</strong> Profil.<br />Es <strong>könnte</strong> für jeden Nutzer des Internets sichtbar sein.";
 $a->strings["Your Full Name:"] = "Dein kompletter Name:";
 $a->strings["Title/Description:"] = "Titel/Beschreibung:";
 $a->strings["Street Address:"] = "Adresse:";
@@ -1202,7 +1189,7 @@ $a->strings["Age: "] = "Alter: ";
 $a->strings["Who: (if applicable)"] = "Wer: (falls anwendbar)";
 $a->strings["Examples: cathy123, Cathy Williams, cathy@example.com"] = "Beispiele: cathy123, Cathy Williams, cathy@example.com";
 $a->strings["Since [date]:"] = "Seit [Datum]:";
-$a->strings["Tell us about yourself..."] = "Erzähle uns ein bisschen von Dir â€¦";
+$a->strings["Tell us about yourself..."] = "Erzähle uns ein bisschen von dir â€¦";
 $a->strings["XMPP (Jabber) address:"] = "XMPP (Jabber) Adresse";
 $a->strings["The XMPP address will be propagated to your contacts so that they can follow you."] = "Die XMPP Adresse wird an deine Kontakte verteilt werden, so dass sie auch Ã¼ber XMPP mit dir in Kontakt treten können.";
 $a->strings["Homepage URL:"] = "Adresse der Homepage:";
@@ -1229,26 +1216,39 @@ $a->strings["visible to everybody"] = "sichtbar für jeden";
 $a->strings["Edit/Manage Profiles"] = "Bearbeite/Verwalte Profile";
 $a->strings["Change profile photo"] = "Profilbild Ã¤ndern";
 $a->strings["Create New Profile"] = "Neues Profil anlegen";
+$a->strings["Image uploaded but image cropping failed."] = "Bild hochgeladen, aber das Zuschneiden schlug fehl.";
+$a->strings["Image size reduction [%s] failed."] = "Verkleinern der Bildgröße von [%s] scheiterte.";
+$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Drücke Umschalt+Neu Laden oder leere den Browser-Cache, falls das neue Foto nicht gleich angezeigt wird.";
+$a->strings["Unable to process image"] = "Bild konnte nicht verarbeitet werden";
+$a->strings["Upload File:"] = "Datei hochladen:";
+$a->strings["Select a profile:"] = "Profil auswählen:";
+$a->strings["or"] = "oder";
+$a->strings["skip this step"] = "diesen Schritt Ã¼berspringen";
+$a->strings["select a photo from your photo albums"] = "wähle ein Foto aus deinen Fotoalben";
+$a->strings["Crop Image"] = "Bild zurechtschneiden";
+$a->strings["Please adjust the image cropping for optimum viewing."] = "Passe bitte den Bildausschnitt an, damit das Bild optimal dargestellt werden kann.";
+$a->strings["Done Editing"] = "Bearbeitung abgeschlossen";
+$a->strings["Image uploaded successfully."] = "Bild erfolgreich hochgeladen.";
 $a->strings["Invalid profile identifier."] = "Ungültiger Profil-Bezeichner.";
 $a->strings["Profile Visibility Editor"] = "Editor für die Profil-Sichtbarkeit";
 $a->strings["Visible To"] = "Sichtbar für";
 $a->strings["All Contacts (with secure profile access)"] = "Alle Kontakte (mit gesichertem Profilzugriff)";
 $a->strings["Account approved."] = "Konto freigegeben.";
 $a->strings["Registration revoked for %s"] = "Registrierung für %s wurde zurückgezogen";
-$a->strings["Please login."] = "Bitte melde Dich an.";
+$a->strings["Please login."] = "Bitte melde dich an.";
 $a->strings["User deleted their account"] = "Gelöschter Nutzeraccount";
-$a->strings["On your Friendica node an user deleted their account. Please ensure that their data is removed from the backups."] = "Ein Nutzer deiner Friendica Instanz hat seinen Account gelöscht. Bitte stelle sicher, dass deren Daten aus deinen Backups entfernt werden.";
+$a->strings["On your Friendica node an user deleted their account. Please ensure that their data is removed from the backups."] = "Ein Nutzer deiner Friendica-Instanz hat seinen Account gelöscht. Bitte stelle sicher, dass dessen Daten aus deinen Backups entfernt werden.";
 $a->strings["The user id is %d"] = "Die ID des Users lautet %d";
 $a->strings["Remove My Account"] = "Konto löschen";
 $a->strings["This will completely remove your account. Once this has been done it is not recoverable."] = "Dein Konto wird endgültig gelöscht. Es gibt keine Möglichkeit, es wiederherzustellen.";
-$a->strings["Please enter your password for verification:"] = "Bitte gib Dein Passwort zur Verifikation ein:";
-$a->strings["Resubscribing to OStatus contacts"] = "Erneuern der OStatus Abonements";
+$a->strings["Please enter your password for verification:"] = "Bitte gib dein Passwort zur Verifikation ein:";
+$a->strings["Resubscribing to OStatus contacts"] = "Erneuern der OStatus-Abonements";
 $a->strings["Error"] = "Fehler";
 $a->strings["Only logged in users are permitted to perform a search."] = "Nur eingeloggten Benutzern ist das Suchen gestattet.";
 $a->strings["Too Many Requests"] = "Zu viele Abfragen";
 $a->strings["Only one search per minute is permitted for not logged in users."] = "Es ist nur eine Suchanfrage pro Minute für nicht eingeloggte Benutzer gestattet.";
 $a->strings["Search"] = "Suche";
-$a->strings["Items tagged with: %s"] = "Beiträge die mit %s getaggt sind";
+$a->strings["Items tagged with: %s"] = "Beiträge, die mit %s getaggt sind";
 $a->strings["Results for: %s"] = "Ergebnisse für: %s";
 $a->strings["Account"] = "Nutzerkonto";
 $a->strings["Profiles"] = "Profile";
@@ -1299,17 +1299,17 @@ $a->strings["Email access is disabled on this site."] = "Zugriff auf E-Mails fü
 $a->strings["General Social Media Settings"] = "Allgemeine Einstellungen zu Sozialen Medien";
 $a->strings["Disable Content Warning"] = "Inhaltswarnung ausschalten";
 $a->strings["Users on networks like Mastodon or Pleroma are able to set a content warning field which collapse their post by default. This disables the automatic collapsing and sets the content warning as the post title. Doesn't affect any other content filtering you eventually set up."] = "Benutzer in Netzwerken wie Mastodon oder Pleroma können ein Inhaltswarnfeld einstellen, das ihren Beitrag standardmäßig ausblendet. Dies deaktiviert das automatische Zusammenklappen und setzt die Inhaltswarnung als Beitragstitel. Beeinflusst keine anderen Inhaltsfilterungen, die du eventuell eingerichtet hast.";
-$a->strings["Disable intelligent shortening"] = "Intelligentes Link kürzen ausschalten";
-$a->strings["Normally the system tries to find the best link to add to shortened posts. If this option is enabled then every shortened post will always point to the original friendica post."] = "Normalerweise versucht das System den besten Link zu finden um ihn zu gekürzten Postings hinzu zu fügen. Wird diese Option ausgewählt wird stets ein Link auf die originale Friendica Nachricht beigefügt.";
+$a->strings["Disable intelligent shortening"] = "Intelligentes Link-Kürzen ausschalten";
+$a->strings["Normally the system tries to find the best link to add to shortened posts. If this option is enabled then every shortened post will always point to the original friendica post."] = "Normalerweise versucht das System, den besten Link zu finden, um ihn zu gekürzten Postings hinzuzufügen. Wird diese Option ausgewählt, wird stets ein Link auf die originale Friendica-Nachricht beigefügt.";
 $a->strings["Automatically follow any GNU Social (OStatus) followers/mentioners"] = "Automatisch allen GNU Social (OStatus) Followern/Erwähnern folgen";
-$a->strings["If you receive a message from an unknown OStatus user, this option decides what to do. If it is checked, a new contact will be created for every unknown user."] = "Wenn du eine Nachricht eines unbekannten OStatus Nutzers bekommst, entscheidet diese Option wie diese behandelt werden soll. Ist die Option aktiviert, wird ein neuer Kontakt für den Verfasser erstellt,.";
-$a->strings["Default group for OStatus contacts"] = "Voreingestellte Gruppe für OStatus Kontakte";
-$a->strings["Your legacy GNU Social account"] = "Dein alter GNU Social Account";
-$a->strings["If you enter your old GNU Social/Statusnet account name here (in the format user@domain.tld), your contacts will be added automatically. The field will be emptied when done."] = "Wenn du deinen alten GNU Social/Statusnet Accountnamen hier angibst (Format name@domain.tld) werden deine Kontakte automatisch hinzugefügt. Dieses Feld wird geleert, wenn die Kontakte hinzugefügt wurden.";
-$a->strings["Repair OStatus subscriptions"] = "OStatus Abonnements reparieren";
+$a->strings["If you receive a message from an unknown OStatus user, this option decides what to do. If it is checked, a new contact will be created for every unknown user."] = "Wenn du eine Nachricht eines unbekannten OStatus-Nutzers bekommst, entscheidet diese Option, wie diese behandelt werden soll. Ist die Option aktiviert, wird ein neuer Kontakt für den Verfasser erstellt,.";
+$a->strings["Default group for OStatus contacts"] = "Voreingestellte Gruppe für OStatus-Kontakte";
+$a->strings["Your legacy GNU Social account"] = "Dein alter GNU Social-Account";
+$a->strings["If you enter your old GNU Social/Statusnet account name here (in the format user@domain.tld), your contacts will be added automatically. The field will be emptied when done."] = "Wenn du deinen alten GNU Social/Statusnet-Account-Namen hier angibst (Format name@domain.tld), werden deine Kontakte automatisch hinzugefügt. Dieses Feld wird geleert, wenn die Kontakte hinzugefügt wurden.";
+$a->strings["Repair OStatus subscriptions"] = "OStatus-Abonnements reparieren";
 $a->strings["Email/Mailbox Setup"] = "E-Mail/Postfach-Einstellungen";
-$a->strings["If you wish to communicate with email contacts using this service (optional), please specify how to connect to your mailbox."] = "Wenn Du mit E-Mail-Kontakten Ã¼ber diesen Service kommunizieren möchtest (optional), gib bitte die Einstellungen für Dein Postfach an.";
-$a->strings["Last successful email check:"] = "Letzter erfolgreicher E-Mail Check";
+$a->strings["If you wish to communicate with email contacts using this service (optional), please specify how to connect to your mailbox."] = "Wenn du mit E-Mail-Kontakten Ã¼ber diesen Service kommunizieren möchtest (optional), gib bitte die Einstellungen für dein Postfach an.";
+$a->strings["Last successful email check:"] = "Letzter erfolgreicher E-Mail-Check";
 $a->strings["IMAP server name:"] = "IMAP-Server-Name:";
 $a->strings["IMAP port:"] = "IMAP-Port:";
 $a->strings["Security:"] = "Sicherheit:";
@@ -1330,27 +1330,27 @@ $a->strings["Display Settings"] = "Anzeige-Einstellungen";
 $a->strings["Display Theme:"] = "Theme:";
 $a->strings["Mobile Theme:"] = "Mobiles Theme";
 $a->strings["Suppress warning of insecure networks"] = "Warnung vor unsicheren Netzwerken unterdrücken";
-$a->strings["Should the system suppress the warning that the current group contains members of networks that can't receive non public postings."] = "Soll das System Warnungen unterdrücken, die angezeigt werden weil von dir eingerichtete Kontakt-Gruppen Accounts aus Netzwerken beinhalten, die keine nicht Ã¶ffentlichen Beiträge empfangen können.";
+$a->strings["Should the system suppress the warning that the current group contains members of networks that can't receive non public postings."] = "Soll das System Warnungen unterdrücken, die angezeigt werden, weil von dir eingerichtete Kontakt-Gruppen Accounts aus Netzwerken beinhalten, die keine nicht Ã¶ffentlichen Beiträge empfangen können.";
 $a->strings["Update browser every xx seconds"] = "Browser alle xx Sekunden aktualisieren";
-$a->strings["Minimum of 10 seconds. Enter -1 to disable it."] = "Minimum sind 10 Sekunden. Gib -1 ein um abzuschalten.";
+$a->strings["Minimum of 10 seconds. Enter -1 to disable it."] = "Minimum sind 10 Sekunden. Gib -1 ein, um abzuschalten.";
 $a->strings["Number of items to display per page:"] = "Zahl der Beiträge, die pro Netzwerkseite angezeigt werden sollen: ";
 $a->strings["Maximum of 100 items"] = "Maximal 100 Beiträge";
 $a->strings["Number of items to display per page when viewed from mobile device:"] = "Zahl der Beiträge, die pro Netzwerkseite auf mobilen Geräten angezeigt werden sollen:";
-$a->strings["Don't show emoticons"] = "Keine Smilies anzeigen";
+$a->strings["Don't show emoticons"] = "Keine Smileys anzeigen";
 $a->strings["Calendar"] = "Kalender";
 $a->strings["Beginning of week:"] = "Wochenbeginn:";
 $a->strings["Don't show notices"] = "Info-Popups nicht anzeigen";
 $a->strings["Infinite scroll"] = "Endloses Scrollen";
-$a->strings["Automatic updates only at the top of the network page"] = "Automatische Updates nur, wenn Du oben auf der Netzwerkseite bist.";
-$a->strings["When disabled, the network page is updated all the time, which could be confusing while reading."] = "Wenn dies deaktiviert ist, wird die Netzwerk Seite aktualisiert, wann immer neue Beiträge eintreffen, egal an welcher Stelle gerade gelesen wird.";
+$a->strings["Automatic updates only at the top of the network page"] = "Automatische Updates nur, wenn du oben auf der Netzwerkseite bist.";
+$a->strings["When disabled, the network page is updated all the time, which could be confusing while reading."] = "Wenn dies deaktiviert ist, wird die Netzwerk-Seite aktualisiert, wann immer neue Beiträge eintreffen, egal an welcher Stelle gerade gelesen wird.";
 $a->strings["Bandwidth Saver Mode"] = "Bandbreiten-Spar-Modus";
 $a->strings["When enabled, embedded content is not displayed on automatic updates, they only show on page reload."] = "Wenn aktiviert, wird der eingebettete Inhalt nicht automatisch aktualisiert. In diesem Fall Seite bitte neu laden.";
 $a->strings["Smart Threading"] = "Intelligentes Threading";
-$a->strings["When enabled, suppress extraneous thread indentation while keeping it where it matters. Only works if threading is available and enabled."] = "Ist dies aktiviert, werden Einrückungen in Unterhaltungen unterdrückt wo sie nicht benötigt werden. Werden sie benötigt, werden die Threads weiterhin eingerückt.";
-$a->strings["General Theme Settings"] = "Allgemeine Themeneinstellungen";
-$a->strings["Custom Theme Settings"] = "Benutzerdefinierte Theme Einstellungen";
+$a->strings["When enabled, suppress extraneous thread indentation while keeping it where it matters. Only works if threading is available and enabled."] = "Ist dies aktiviert, werden Einrückungen in Unterhaltungen unterdrückt, wo sie nicht benötigt werden. Werden sie benötigt, werden die Threads weiterhin eingerückt.";
+$a->strings["General Theme Settings"] = "Allgemeine Theme-Einstellungen";
+$a->strings["Custom Theme Settings"] = "Benutzerdefinierte Theme-Einstellungen";
 $a->strings["Content Settings"] = "Einstellungen zum Inhalt";
-$a->strings["Theme settings"] = "Themeneinstellungen";
+$a->strings["Theme settings"] = "Theme-Einstellungen";
 $a->strings["Unable to find your profile. Please contact your admin."] = "Konnte dein Profil nicht finden. Bitte kontaktiere den Admin.";
 $a->strings["Account Types"] = "Kontenarten";
 $a->strings["Personal Page Subtypes"] = "Unterarten der persönlichen Seite";
@@ -1359,7 +1359,7 @@ $a->strings["Account for a personal profile."] = "Konto für ein persönliches P
 $a->strings["Account for an organisation that automatically approves contact requests as \"Followers\"."] = "Konto für eine Organisation, das Kontaktanfragen automatisch als \"Follower\" annimmt.";
 $a->strings["Account for a news reflector that automatically approves contact requests as \"Followers\"."] = "Konto für einen Feedspiegel, das Kontaktanfragen automatisch als \"Follower\" annimmt.";
 $a->strings["Account for community discussions."] = "Konto für Diskussionsforen. ";
-$a->strings["Account for a regular personal profile that requires manual approval of \"Friends\" and \"Followers\"."] = "Konto für ein normales persönliches Profil. Kontaktanfragen müssen manuell als \"Friend\" oder \"Follower\" bestätigt werden.";
+$a->strings["Account for a regular personal profile that requires manual approval of \"Friends\" and \"Followers\"."] = "Konto für ein normales, persönliches Profil. Kontaktanfragen müssen manuell als \"Friend\" oder \"Follower\" bestätigt werden.";
 $a->strings["Account for a public profile that automatically approves contact requests as \"Followers\"."] = "Konto für ein Ã¶ffentliches Profil, das Kontaktanfragen automatisch als \"Follower\" annimmt.";
 $a->strings["Automatically approves all contact requests."] = "Bestätigt alle Kontaktanfragen automatisch.";
 $a->strings["Account for a popular profile that automatically approves contact requests as \"Friends\"."] = "Konto für ein gefragtes Profil, das Kontaktanfragen automatisch als \"Friend\" annimmt.";
@@ -1367,26 +1367,26 @@ $a->strings["Private Forum [Experimental]"] = "Privates Forum [Versuchsstadium]"
 $a->strings["Requires manual approval of contact requests."] = "Kontaktanfragen müssen manuell bestätigt werden.";
 $a->strings["OpenID:"] = "OpenID:";
 $a->strings["(Optional) Allow this OpenID to login to this account."] = "(Optional) Erlaube die Anmeldung für dieses Konto mit dieser OpenID.";
-$a->strings["Publish your default profile in your local site directory?"] = "Darf Dein Standardprofil im Verzeichnis dieses Servers veröffentlicht werden?";
+$a->strings["Publish your default profile in your local site directory?"] = "Darf dein Standardprofil im Verzeichnis dieses Servers veröffentlicht werden?";
 $a->strings["Your profile will be published in this node's <a href=\"%s\">local directory</a>. Your profile details may be publicly visible depending on the system settings."] = "Dein Profil wird im <a href=\"%s\">lokalen Verzeichnis</a> dieses Knotens veröffentlicht. Je nach Systemeinstellungen kann es Ã¶ffentlich auffindbar sein.";
-$a->strings["Publish your default profile in the global social directory?"] = "Darf Dein Standardprofil im weltweiten Verzeichnis veröffentlicht werden?";
-$a->strings["Your profile will be published in the global friendica directories (e.g. <a href=\"%s\">%s</a>). Your profile will be visible in public."] = "Dein Profil wird in den globalen Friendica Verzeichnissen (z.B. <a href=\"%s\">%s</a>) veröffentlicht. Dein Profil wird Ã¶ffentlich auffindbar sein.";
+$a->strings["Publish your default profile in the global social directory?"] = "Darf dein Standardprofil im weltweiten Verzeichnis veröffentlicht werden?";
+$a->strings["Your profile will be published in the global friendica directories (e.g. <a href=\"%s\">%s</a>). Your profile will be visible in public."] = "Dein Profil wird in den globalen Friendica-Verzeichnissen (z.B. <a href=\"%s\">%s</a>) veröffentlicht. Dein Profil wird Ã¶ffentlich auffindbar sein.";
 $a->strings["Hide your contact/friend list from viewers of your default profile?"] = "Liste der Kontakte vor Betrachtern des Standardprofils verbergen?";
 $a->strings["Your contact list won't be shown in your default profile page. You can decide to show your contact list separately for each additional profile you create"] = "Die Liste deiner Kontakte wird nicht in deinem Standard-Profil angezeigt werden. Du kannst für jedes weitere Profil diese Entscheidung separat einstellen.";
 $a->strings["Hide your profile details from anonymous viewers?"] = "Profil-Details vor unbekannten Betrachtern verbergen?";
-$a->strings["Anonymous visitors will only see your profile picture, your display name and the nickname you are using on your profile page. Your public posts and replies will still be accessible by other means."] = "Anonyme Besucher deines Profils werden ausschließlich dein Profilbild, deinen Namen sowie deinen Spitznamen sehen. Deine lffentlichen Beiträge und Kommentare werden weiterhin sichtbar sein.";
-$a->strings["Allow friends to post to your profile page?"] = "Dürfen Deine Kontakte auf Deine Pinnwand schreiben?";
+$a->strings["Anonymous visitors will only see your profile picture, your display name and the nickname you are using on your profile page. Your public posts and replies will still be accessible by other means."] = "Anonyme Besucher deines Profils werden ausschließlich dein Profilbild, deinen Namen sowie deinen Spitznamen sehen. Deine Ã¶ffentlichen Beiträge und Kommentare werden weiterhin sichtbar sein.";
+$a->strings["Allow friends to post to your profile page?"] = "Dürfen deine Kontakte auf deine Pinnwand schreiben?";
 $a->strings["Your contacts may write posts on your profile wall. These posts will be distributed to your contacts"] = "Deine Kontakte können Beiträge auf deiner Pinnwand hinterlassen. Diese werden an deine Kontakte verteilt.";
-$a->strings["Allow friends to tag your posts?"] = "Dürfen Deine Kontakte Deine Beiträge mit Schlagwörtern versehen?";
+$a->strings["Allow friends to tag your posts?"] = "Dürfen deine Kontakte deine Beiträge mit Schlagwörtern versehen?";
 $a->strings["Your contacts can add additional tags to your posts."] = "Deine Kontakte dürfen deine Beiträge mit zusätzlichen Schlagworten versehen.";
-$a->strings["Allow us to suggest you as a potential friend to new members?"] = "Dürfen wir Dich neuen Mitgliedern als potentiellen Kontakt vorschlagen?";
+$a->strings["Allow us to suggest you as a potential friend to new members?"] = "Dürfen wir dich neuen Mitgliedern als potentiellen Kontakt vorschlagen?";
 $a->strings["If you like, Friendica may suggest new members to add you as a contact."] = "Wenn du magst, kann Friendica dich neuen Mitgliedern als Kontakt vorschlagen.";
-$a->strings["Permit unknown people to send you private mail?"] = "Dürfen Dir Unbekannte private Nachrichten schicken?";
+$a->strings["Permit unknown people to send you private mail?"] = "Dürfen dir Unbekannte private Nachrichten schicken?";
 $a->strings["Friendica network users may send you private messages even if they are not in your contact list."] = "Nutzer des Friendica Netzwerks können dir private Nachrichten senden, selbst wenn sie nicht in deine Kontaktliste sind.";
 $a->strings["Profile is <strong>not published</strong>."] = "Profil ist <strong>nicht veröffentlicht</strong>.";
 $a->strings["Your Identity Address is <strong>'%s'</strong> or '%s'."] = "Die Adresse deines Profils lautet <strong>'%s'</strong> oder '%s'.";
 $a->strings["Automatically expire posts after this many days:"] = "Beiträge verfallen automatisch nach dieser Anzahl von Tagen:";
-$a->strings["If empty, posts will not expire. Expired posts will be deleted"] = "Wenn leer verfallen Beiträge nie automatisch. Verfallene Beiträge werden gelöscht.";
+$a->strings["If empty, posts will not expire. Expired posts will be deleted"] = "Wenn leer, verfallen Beiträge nie automatisch. Verfallene Beiträge werden gelöscht.";
 $a->strings["Advanced expiration settings"] = "Erweiterte Verfallseinstellungen";
 $a->strings["Advanced Expiration"] = "Erweitertes Verfallen";
 $a->strings["Expire posts:"] = "Beiträge verfallen lassen:";
@@ -1397,9 +1397,9 @@ $a->strings["Only expire posts by others:"] = "Nur Beiträge anderer verfallen:"
 $a->strings["Account Settings"] = "Kontoeinstellungen";
 $a->strings["Password Settings"] = "Passwort-Einstellungen";
 $a->strings["New Password:"] = "Neues Passwort:";
-$a->strings["Allowed characters are a-z, A-Z, 0-9 and special characters except white spaces, accentuated letters and colon (:)."] = "Erlaubte Zeichen sind a-z, A-Z, 0-9 und Sonderzeichen, abgesehen von Leerzeichen, Doppelpunkten (:) und akzentuierte Buchstaben.";
+$a->strings["Allowed characters are a-z, A-Z, 0-9 and special characters except white spaces, accentuated letters and colon (:)."] = "Erlaubte Zeichen sind a-z, A-Z, 0-9 und Sonderzeichen, abgesehen von Leerzeichen, Doppelpunkten (:) und akzentuierten Buchstaben.";
 $a->strings["Confirm:"] = "Bestätigen:";
-$a->strings["Leave password fields blank unless changing"] = "Lass die Passwort-Felder leer, außer Du willst das Passwort Ã¤ndern";
+$a->strings["Leave password fields blank unless changing"] = "Lass die Passwort-Felder leer, außer du willst das Passwort Ã¤ndern";
 $a->strings["Current Password:"] = "Aktuelles Passwort:";
 $a->strings["Your current password to confirm the changes"] = "Dein aktuelles Passwort um die Ã„nderungen zu bestätigen";
 $a->strings["Password:"] = "Passwort:";
@@ -1408,41 +1408,41 @@ $a->strings["Full Name:"] = "Kompletter Name:";
 $a->strings["Email Address:"] = "E-Mail-Adresse:";
 $a->strings["Your Timezone:"] = "Deine Zeitzone:";
 $a->strings["Your Language:"] = "Deine Sprache:";
-$a->strings["Set the language we use to show you friendica interface and to send you emails"] = "Wähle die Sprache, in der wir Dir die Friendica-Oberfläche präsentieren sollen und Dir E-Mail schicken";
+$a->strings["Set the language we use to show you friendica interface and to send you emails"] = "Wähle die Sprache, in der wir dir die Friendica-Oberfläche präsentieren sollen und dir E-Mail schicken";
 $a->strings["Default Post Location:"] = "Standardstandort:";
 $a->strings["Use Browser Location:"] = "Standort des Browsers verwenden:";
 $a->strings["Security and Privacy Settings"] = "Sicherheits- und Privatsphäre-Einstellungen";
-$a->strings["Maximum Friend Requests/Day:"] = "Maximale Anzahl vonKontaktanfragen/Tag:";
+$a->strings["Maximum Friend Requests/Day:"] = "Maximale Anzahl von Kontaktanfragen/Tag:";
 $a->strings["(to prevent spam abuse)"] = "(um SPAM zu vermeiden)";
 $a->strings["Default Post Permissions"] = "Standard-Zugriffsrechte für Beiträge";
-$a->strings["(click to open/close)"] = "(klicke zum ÃƒÂ¶ffnen/schließen)";
+$a->strings["(click to open/close)"] = "(klicke zum Ãƒ\96ffnen/Schließen)";
 $a->strings["Default Private Post"] = "Privater Standardbeitrag";
 $a->strings["Default Public Post"] = "Öffentlicher Standardbeitrag";
 $a->strings["Default Permissions for New Posts"] = "Standardberechtigungen für neue Beiträge";
 $a->strings["Maximum private messages per day from unknown people:"] = "Maximale Anzahl privater Nachrichten von Unbekannten pro Tag:";
 $a->strings["Notification Settings"] = "Benachrichtigungseinstellungen";
-$a->strings["Send a notification email when:"] = "Benachrichtigungs-E-Mail senden wenn:";
-$a->strings["You receive an introduction"] = "– Du eine Kontaktanfrage erhältst";
+$a->strings["Send a notification email when:"] = "Benachrichtigungs-E-Mail senden, wenn:";
+$a->strings["You receive an introduction"] = "– du eine Kontaktanfrage erhältst";
 $a->strings["Your introductions are confirmed"] = "– eine Deiner Kontaktanfragen akzeptiert wurde";
 $a->strings["Someone writes on your profile wall"] = "– jemand etwas auf Deine Pinnwand schreibt";
 $a->strings["Someone writes a followup comment"] = "– jemand auch einen Kommentar verfasst";
-$a->strings["You receive a private message"] = "– Du eine private Nachricht erhältst";
-$a->strings["You receive a friend suggestion"] = "– Du eine Empfehlung erhältst";
-$a->strings["You are tagged in a post"] = "– Du in einem Beitrag erwähnt wirst";
-$a->strings["You are poked/prodded/etc. in a post"] = "– Du von jemandem angestupst oder sonstwie behandelt wirst";
-$a->strings["Activate desktop notifications"] = "Desktop Benachrichtigungen einschalten";
-$a->strings["Show desktop popup on new notifications"] = "Desktop Benachrichtigungen einschalten";
-$a->strings["Text-only notification emails"] = "Benachrichtigungs E-Mail als Rein-Text.";
-$a->strings["Send text only notification emails, without the html part"] = "Sende Benachrichtigungs E-Mail als Rein-Text - ohne HTML-Teil";
+$a->strings["You receive a private message"] = "– du eine private Nachricht erhältst";
+$a->strings["You receive a friend suggestion"] = "– du eine Empfehlung erhältst";
+$a->strings["You are tagged in a post"] = "– du in einem Beitrag erwähnt wirst";
+$a->strings["You are poked/prodded/etc. in a post"] = "– du von jemandem angestupst oder sonstwie behandelt wirst";
+$a->strings["Activate desktop notifications"] = "Desktop-Benachrichtigungen einschalten";
+$a->strings["Show desktop popup on new notifications"] = "Desktop-Benachrichtigungen einschalten";
+$a->strings["Text-only notification emails"] = "Benachrichtigungs-E-Mail als Rein-Text.";
+$a->strings["Send text only notification emails, without the html part"] = "Sende Benachrichtigungs-E-Mail als Rein-Text - ohne HTML-Teil";
 $a->strings["Show detailled notifications"] = "Detaillierte Benachrichtigungen anzeigen";
-$a->strings["Per default, notifications are condensed to a single notification per item. When enabled every notification is displayed."] = "Normalerweise werde alle Benachrichtigungen zu einem Thema zusammengefasst in einer einzigen Mitteilung. Wenn diese Option aktiviert ist, wird jede Mitteilung angezeigt.";
+$a->strings["Per default, notifications are condensed to a single notification per item. When enabled every notification is displayed."] = "Normalerweise werden alle Benachrichtigungen zu einem Thema in einer einzigen Benachrichtigung zusammengefasst. Wenn diese Option aktiviert ist, wird jede Benachrichtigung einzeln angezeigt.";
 $a->strings["Advanced Account/Page Type Settings"] = "Erweiterte Konto-/Seitentyp-Einstellungen";
 $a->strings["Change the behaviour of this account for special situations"] = "Verhalten dieses Kontos in bestimmten Situationen:";
 $a->strings["Relocate"] = "Umziehen";
-$a->strings["If you have moved this profile from another server, and some of your contacts don't receive your updates, try pushing this button."] = "Wenn Du Dein Profil von einem anderen Server umgezogen hast und einige Deiner Kontakte Deine Beiträge nicht erhalten, verwende diesen Button.";
+$a->strings["If you have moved this profile from another server, and some of your contacts don't receive your updates, try pushing this button."] = "Wenn du dein Profil von einem anderen Server umgezogen hast und einige deiner Kontakte deine Beiträge nicht erhalten, verwende diesen Button.";
 $a->strings["Resend relocate message to contacts"] = "Umzugsbenachrichtigung erneut an Kontakte senden";
 $a->strings["%1\$s is following %2\$s's %3\$s"] = "%1\$s folgt %2\$s %3\$s";
-$a->strings["Do you really want to delete this suggestion?"] = "Möchtest Du wirklich diese Empfehlung löschen?";
+$a->strings["Do you really want to delete this suggestion?"] = "Möchtest du wirklich diese Empfehlung löschen?";
 $a->strings["No suggestions available. If this is a new site, please try again in 24 hours."] = "Keine Vorschläge verfügbar. Falls der Server frisch aufgesetzt wurde, versuche es bitte in 24 Stunden noch einmal.";
 $a->strings["Ignore/Hide"] = "Ignorieren/Verbergen";
 $a->strings["Friend Suggestions"] = "Kontaktvorschläge";
@@ -1450,24 +1450,24 @@ $a->strings["Tag(s) removed"] = "Tag(s) entfernt";
 $a->strings["Remove Item Tag"] = "Gegenstands-Tag entfernen";
 $a->strings["Select a tag to remove: "] = "Wähle ein Tag zum Entfernen aus: ";
 $a->strings["Export account"] = "Account exportieren";
-$a->strings["Export your account info and contacts. Use this to make a backup of your account and/or to move it to another server."] = "Exportiere Deine Accountinformationen und Kontakte. Verwende dies um ein Backup Deines Accounts anzulegen und/oder damit auf einen anderen Server umzuziehen.";
+$a->strings["Export your account info and contacts. Use this to make a backup of your account and/or to move it to another server."] = "Exportiere Deine Account-Informationen und Kontakte. Verwende dies, um ein Backup Deines Accounts anzulegen und/oder damit auf einen anderen Server umzuziehen.";
 $a->strings["Export all"] = "Alles exportieren";
-$a->strings["Export your accout info, contacts and all your items as json. Could be a very big file, and could take a lot of time. Use this to make a full backup of your account (photos are not exported)"] = "Exportiere Deine Accountinformationen, Kontakte und alle Einträge als JSON Datei. Dies könnte eine sehr große Datei werden und dementsprechend viel Zeit benötigen. Verwende dies, um ein komplettes Backup Deines Accounts anzulegen (Fotos werden nicht exportiert).";
+$a->strings["Export your accout info, contacts and all your items as json. Could be a very big file, and could take a lot of time. Use this to make a full backup of your account (photos are not exported)"] = "Exportiere Deine Account-Informationen, Kontakte und alle Einträge als JSON Datei. Dies könnte eine sehr große Datei werden und dementsprechend viel Zeit benötigen. Verwende dies, um ein komplettes Backup Deines Accounts anzulegen (Fotos werden nicht exportiert).";
 $a->strings["User imports on closed servers can only be done by an administrator."] = "Auf geschlossenen Servern können ausschließlich die Administratoren Benutzerkonten importieren.";
 $a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "Die maximale Anzahl täglicher Registrierungen auf dieser Seite wurde Ã¼berschritten. Bitte versuche es morgen noch einmal.";
 $a->strings["Import"] = "Import";
 $a->strings["Move account"] = "Account umziehen";
 $a->strings["You can import an account from another Friendica server."] = "Du kannst einen Account von einem anderen Friendica Server importieren.";
-$a->strings["You need to export your account from the old server and upload it here. We will recreate your old account here with all your contacts. We will try also to inform your friends that you moved here."] = "Du musst Deinen Account vom alten Server exportieren und hier hochladen. Wir stellen Deinen alten Account mit all Deinen Kontakten wieder her. Wir werden auch versuchen all Deine Kontakte darüber zu informieren, dass Du hierher umgezogen bist.";
-$a->strings["This feature is experimental. We can't import contacts from the OStatus network (GNU Social/Statusnet) or from Diaspora"] = "Dieses Feature ist experimentell. Wir können keine Kontakte vom OStatus Netzwerk (GNU Social/Statusnet) oder von Diaspora importieren";
-$a->strings["Account file"] = "Account Datei";
+$a->strings["You need to export your account from the old server and upload it here. We will recreate your old account here with all your contacts. We will try also to inform your friends that you moved here."] = "Du musst deinen Account vom alten Server exportieren und hier hochladen. Wir stellen deinen alten Account mit all deinen Kontakten wieder her. Wir werden auch versuchen, deine Kontakte darüber zu informieren, dass du hierher umgezogen bist.";
+$a->strings["This feature is experimental. We can't import contacts from the OStatus network (GNU Social/Statusnet) or from Diaspora"] = "Dieses Feature ist experimentell. Wir können keine Kontakte vom OStatus-Netzwerk (GNU Social/Statusnet) oder von Diaspora importieren";
+$a->strings["Account file"] = "Account-Datei";
 $a->strings["To export your account, go to \"Settings->Export your personal data\" and select \"Export account\""] = "Um Deinen Account zu exportieren, rufe \"Einstellungen -> Persönliche Daten exportieren\" auf und wähle \"Account exportieren\"";
 $a->strings["You aren't following this contact."] = "Du folgst diesem Kontakt.";
 $a->strings["Unfollowing is currently not supported by your network."] = "Bei diesem Netzwerk wird das Entfolgen derzeit nicht unterstützt.";
 $a->strings["Contact unfollowed"] = "Kontakt wird nicht mehr gefolgt";
 $a->strings["Disconnect/Unfollow"] = "Verbindung lösen/Nicht mehr folgen";
 $a->strings["[Embedded content - reload page to view]"] = "[Eingebetteter Inhalt - Seite neu laden zum Betrachten]";
-$a->strings["Do you really want to delete this video?"] = "Möchtest Du dieses Video wirklich löschen?";
+$a->strings["Do you really want to delete this video?"] = "Möchtest du dieses Video wirklich löschen?";
 $a->strings["Delete Video"] = "Video Löschen";
 $a->strings["No videos selected"] = "Keine Videos  ausgewählt";
 $a->strings["View Video"] = "Video ansehen";
@@ -1476,48 +1476,133 @@ $a->strings["Upload New Videos"] = "Neues Video hochladen";
 $a->strings["No contacts."] = "Keine Kontakte.";
 $a->strings["Visit %s's profile [%s]"] = "Besuche %ss Profil [%s]";
 $a->strings["Contacts"] = "Kontakte";
+$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Maximale Anzahl der täglichen Pinnwand-Nachrichten für %s ist Ã¼berschritten. Zustellung fehlgeschlagen.";
+$a->strings["Unable to check your home location."] = "Konnte Deinen Heimatort nicht bestimmen.";
+$a->strings["No recipient."] = "Kein Empfänger.";
+$a->strings["If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders."] = "Wenn du möchtest, dass %s dir antworten kann, Ã¼berprüfe deine Privatsphären-Einstellungen und erlaube private Nachrichten von unbekannten Absendern.";
 $a->strings["Invalid request."] = "Ungültige Anfrage";
-$a->strings["Sorry, maybe your upload is bigger than the PHP configuration allows"] = "Entschuldige, die Datei scheint größer zu sein als es die PHP Konfiguration erlaubt.";
-$a->strings["Or - did you try to upload an empty file?"] = "Oder - hast Du versucht, eine leere Datei hochzuladen?";
+$a->strings["Sorry, maybe your upload is bigger than the PHP configuration allows"] = "Entschuldige, die Datei scheint größer zu sein, als es die PHP-Konfiguration erlaubt.";
+$a->strings["Or - did you try to upload an empty file?"] = "Oder - hast du versucht, eine leere Datei hochzuladen?";
 $a->strings["File exceeds size limit of %s"] = "Die Datei ist größer als das erlaubte Limit von %s";
 $a->strings["File upload failed."] = "Hochladen der Datei fehlgeschlagen.";
 $a->strings["Wall Photos"] = "Pinnwand-Bilder";
-$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Maximale Anzahl der täglichen Pinnwand Nachrichten für %s ist Ã¼berschritten. Zustellung fehlgeschlagen.";
-$a->strings["Unable to check your home location."] = "Konnte Deinen Heimatort nicht bestimmen.";
-$a->strings["No recipient."] = "Kein Empfänger.";
-$a->strings["If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders."] = "Wenn Du möchtest, dass %s Dir antworten kann, Ã¼berprüfe Deine Privatsphären-Einstellungen und erlaube private Nachrichten von unbekannten Absendern.";
-$a->strings["default"] = "Standard";
-$a->strings["greenzero"] = "greenzero";
-$a->strings["purplezero"] = "purplezero";
-$a->strings["easterbunny"] = "easterbunny";
-$a->strings["darkzero"] = "darkzero";
-$a->strings["comix"] = "comix";
-$a->strings["slackr"] = "slackr";
-$a->strings["Variations"] = "Variationen";
-$a->strings["Top Banner"] = "Top Banner";
-$a->strings["Resize image to the width of the screen and show background color below on long pages."] = "Skaliere das Hintergrundbild so, dass es die Breite der Seite einnimmt und fülle den Rest der Seite mit der Hintergrundfarbe bei langen Seiten.";
-$a->strings["Full screen"] = "Vollbildmodus";
-$a->strings["Resize image to fill entire screen, clipping either the right or the bottom."] = "Skaliere das Bild so, dass es den gesamten Bildschirm füllt. Hierfür wird entweder die Breite oder die Höhe des Bildes automatisch abgeschnitten.";
-$a->strings["Single row mosaic"] = "Mosaik in einer Zeile";
-$a->strings["Resize image to repeat it on a single row, either vertical or horizontal."] = "Skaliere das Bild so, dass es in einer einzelnen Reihe, entweder horizontal oder vertikal, wiederholt wird.";
-$a->strings["Mosaic"] = "Mosaik";
-$a->strings["Repeat image to fill the screen."] = "Wiederhole das Bild um den Bildschirm zu füllen.";
-$a->strings["Custom"] = "Benutzerdefiniert";
-$a->strings["Note"] = "Hinweis";
-$a->strings["Check image permissions if all users are allowed to see the image"] = "Ãœberprüfe, dass alle Benutzer die Berechtigung haben dieses Bild anzusehen";
-$a->strings["Select color scheme"] = "Farbschema auswählen";
-$a->strings["Navigation bar background color"] = "Hintergrundfarbe der Navigationsleiste";
-$a->strings["Navigation bar icon color "] = "Icon Farbe in der Navigationsleiste";
-$a->strings["Link color"] = "Linkfarbe";
-$a->strings["Set the background color"] = "Hintergrundfarbe festlegen";
-$a->strings["Content background opacity"] = "Opazität des Hintergrunds von Beiträgen";
-$a->strings["Set the background image"] = "Hintergrundbild festlegen";
-$a->strings["Background image style"] = "Stil des Hintergrundbildes";
-$a->strings["Login page background image"] = "Hintergrundbild der Login-Seite";
-$a->strings["Login page background color"] = "Hintergrundfarbe der Login-Seite";
-$a->strings["Leave background image and color empty for theme defaults"] = "Wenn die Theme Vorgaben verwendet werden sollen, lass bitte die Felder für die Hintergrundfarbe und das Hintergrundbild leer.";
-$a->strings["Guest"] = "Gast";
-$a->strings["Visitor"] = "Besucher";
+$a->strings["Delete this item?"] = "Diesen Beitrag löschen?";
+$a->strings["toggle mobile"] = "mobile Ansicht umschalten";
+$a->strings["No system theme config value set."] = "Es wurde kein Konfigurationswert für das systemweite Theme gesetzt.";
+$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "Das Sicherheitsmerkmal war nicht korrekt. Das passiert meistens, wenn das Formular vor dem Absenden zu lange geöffnet war (länger als 3 Stunden).";
+$a->strings["Frequently"] = "immer wieder";
+$a->strings["Hourly"] = "Stündlich";
+$a->strings["Twice daily"] = "Zweimal täglich";
+$a->strings["Daily"] = "Täglich";
+$a->strings["Weekly"] = "Wöchentlich";
+$a->strings["Monthly"] = "Monatlich";
+$a->strings["DFRN"] = "DFRN";
+$a->strings["OStatus"] = "OStatus";
+$a->strings["RSS/Atom"] = "RSS/Atom";
+$a->strings["Zot!"] = "Zott";
+$a->strings["LinkedIn"] = "LinkedIn";
+$a->strings["XMPP/IM"] = "XMPP/Chat";
+$a->strings["MySpace"] = "MySpace";
+$a->strings["Google+"] = "Google+";
+$a->strings["pump.io"] = "pump.io";
+$a->strings["Twitter"] = "Twitter";
+$a->strings["Diaspora Connector"] = "Diaspora Connector";
+$a->strings["GNU Social Connector"] = "GNU Social Connector";
+$a->strings["ActivityPub"] = "ActivityPub";
+$a->strings["pnut"] = "pnut";
+$a->strings["Male"] = "Männlich";
+$a->strings["Female"] = "Weiblich";
+$a->strings["Currently Male"] = "Momentan männlich";
+$a->strings["Currently Female"] = "Momentan weiblich";
+$a->strings["Mostly Male"] = "Hauptsächlich männlich";
+$a->strings["Mostly Female"] = "Hauptsächlich weiblich";
+$a->strings["Transgender"] = "Transgender";
+$a->strings["Intersex"] = "Intersex";
+$a->strings["Transsexual"] = "Transsexuell";
+$a->strings["Hermaphrodite"] = "Hermaphrodit";
+$a->strings["Neuter"] = "Neuter";
+$a->strings["Non-specific"] = "Nicht spezifiziert";
+$a->strings["Other"] = "Andere";
+$a->strings["Males"] = "Männer";
+$a->strings["Females"] = "Frauen";
+$a->strings["Gay"] = "Schwul";
+$a->strings["Lesbian"] = "Lesbisch";
+$a->strings["No Preference"] = "Keine Vorlieben";
+$a->strings["Bisexual"] = "Bisexuell";
+$a->strings["Autosexual"] = "Autosexuell";
+$a->strings["Abstinent"] = "Abstinent";
+$a->strings["Virgin"] = "Jungfrauen";
+$a->strings["Deviant"] = "Deviant";
+$a->strings["Fetish"] = "Fetish";
+$a->strings["Oodles"] = "Oodles";
+$a->strings["Nonsexual"] = "Nonsexual";
+$a->strings["Single"] = "Single";
+$a->strings["Lonely"] = "Einsam";
+$a->strings["Available"] = "Verfügbar";
+$a->strings["Unavailable"] = "Nicht verfügbar";
+$a->strings["Has crush"] = "verknallt";
+$a->strings["Infatuated"] = "verliebt";
+$a->strings["Dating"] = "Dating";
+$a->strings["Unfaithful"] = "Untreu";
+$a->strings["Sex Addict"] = "Sexbesessen";
+$a->strings["Friends"] = "Kontakte";
+$a->strings["Friends/Benefits"] = "Freunde/Zuwendungen";
+$a->strings["Casual"] = "Casual";
+$a->strings["Engaged"] = "Verlobt";
+$a->strings["Married"] = "Verheiratet";
+$a->strings["Imaginarily married"] = "imaginär verheiratet";
+$a->strings["Partners"] = "Partner";
+$a->strings["Cohabiting"] = "zusammenlebend";
+$a->strings["Common law"] = "wilde Ehe";
+$a->strings["Happy"] = "Glücklich";
+$a->strings["Not looking"] = "Nicht auf der Suche";
+$a->strings["Swinger"] = "Swinger";
+$a->strings["Betrayed"] = "Betrogen";
+$a->strings["Separated"] = "Getrennt";
+$a->strings["Unstable"] = "Unstabil";
+$a->strings["Divorced"] = "Geschieden";
+$a->strings["Imaginarily divorced"] = "Imaginär geschieden";
+$a->strings["Widowed"] = "Verwitwet";
+$a->strings["Uncertain"] = "Unsicher";
+$a->strings["It's complicated"] = "Ist kompliziert";
+$a->strings["Don't care"] = "Ist mir nicht wichtig";
+$a->strings["Ask me"] = "Frag mich";
+$a->strings["General Features"] = "Allgemeine Features";
+$a->strings["Multiple Profiles"] = "Mehrere Profile";
+$a->strings["Ability to create multiple profiles"] = "Möglichkeit, mehrere Profile zu erstellen";
+$a->strings["Photo Location"] = "Aufnahmeort";
+$a->strings["Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map."] = "Die Foto-Metadaten werden ausgelesen. Dadurch kann der Aufnahmeort (wenn vorhanden) in einer Karte angezeigt werden.";
+$a->strings["Export Public Calendar"] = "Öffentlichen Kalender exportieren";
+$a->strings["Ability for visitors to download the public calendar"] = "Möglichkeit für Besucher, den Ã¶ffentlichen Kalender herunter zu laden";
+$a->strings["Post Composition Features"] = "Beitragserstellung-Features";
+$a->strings["Auto-mention Forums"] = "Foren automatisch erwähnen";
+$a->strings["Add/remove mention when a forum page is selected/deselected in ACL window."] = "Automatisch eine @-Erwähnung eines Forums einfügen/entfehrnen, wenn dieses im ACL Fenster de-/markiert  wurde.";
+$a->strings["Explicit Mentions"] = "Explizite Erwähnungen";
+$a->strings["Add explicit mentions to comment box for manual control over who gets mentioned in replies."] = "Füge Erwähnungen zum Kommentarfeld hinzu, um manuell Ã¼ber die explizite Erwähnung von Gesprächsteilnehmern zu entscheiden.";
+$a->strings["Network Sidebar"] = "Netzwerk-Seitenleiste";
+$a->strings["Ability to select posts by date ranges"] = "Möglichkeit, die Beiträge nach Datumsbereichen zu sortieren";
+$a->strings["Protocol Filter"] = "Protokoll-Filter";
+$a->strings["Enable widget to display Network posts only from selected protocols"] = "Aktiviere Widget, um Netzwerkbeiträge nur von ausgesuchten Protokollen anzuzeigen";
+$a->strings["Network Tabs"] = "Netzwerk-Reiter";
+$a->strings["Network New Tab"] = "Netzwerk-Reiter: Neue";
+$a->strings["Enable tab to display only new Network posts (from the last 12 hours)"] = "Aktiviert einen Netzwerk-Reiter, in dem ausschließlich neue Beiträge (der letzten 12 Stunden) angezeigt werden";
+$a->strings["Network Shared Links Tab"] = "Netzwerk-Reiter: Geteilte Links";
+$a->strings["Enable tab to display only Network posts with links in them"] = "Aktiviert einen Netzwerk-Reiter, der ausschließlich Nachrichten mit Links enthält";
+$a->strings["Post/Comment Tools"] = "Werkzeuge für Beiträge und Kommentare";
+$a->strings["Post Categories"] = "Beitragskategorien";
+$a->strings["Add categories to your posts"] = "Eigene Beiträge mit Kategorien versehen";
+$a->strings["Advanced Profile Settings"] = "Erweiterte Profil-Einstellungen";
+$a->strings["List Forums"] = "Zeige Foren";
+$a->strings["Show visitors public community forums at the Advanced Profile Page"] = "Zeige Besuchern Ã¶ffentliche Gemeinschafts-Foren auf der Erweiterten Profil-Seite";
+$a->strings["Tag Cloud"] = "Schlagwortwolke";
+$a->strings["Provide a personal tag cloud on your profile page"] = "Wortwolke aus den von dir verwendeten Schlagwörtern im Profil anzeigen";
+$a->strings["Display Membership Date"] = "Mitgliedschaftsdatum anzeigen";
+$a->strings["Display membership date in profile"] = "Das Datum der Registrierung deines Accounts im Profil anzeigen";
+$a->strings["Forums"] = "Foren";
+$a->strings["External link to forum"] = "Externer Link zum Forum";
+$a->strings["Nothing new here"] = "Keine Neuigkeiten";
+$a->strings["Clear notifications"] = "Bereinige Benachrichtigungen";
+$a->strings["@name, !forum, #tags, content"] = "@name, !forum, #tags, content";
 $a->strings["Logout"] = "Abmelden";
 $a->strings["End this session"] = "Diese Sitzung beenden";
 $a->strings["Status"] = "Status";
@@ -1527,27 +1612,77 @@ $a->strings["Your photos"] = "Deine Fotos";
 $a->strings["Videos"] = "Videos";
 $a->strings["Your videos"] = "Deine Videos";
 $a->strings["Your events"] = "Deine Ereignisse";
-$a->strings["Conversations from your friends"] = "Unterhaltungen Deiner Kontakte";
+$a->strings["Personal notes"] = "Persönliche Notizen";
+$a->strings["Your personal notes"] = "Deine persönlichen Notizen";
+$a->strings["Sign in"] = "Anmelden";
+$a->strings["Home"] = "Pinnwand";
+$a->strings["Home Page"] = "Homepage";
+$a->strings["Register"] = "Registrieren";
+$a->strings["Create an account"] = "Nutzerkonto erstellen";
+$a->strings["Help and documentation"] = "Hilfe und Dokumentation";
+$a->strings["Apps"] = "Apps";
+$a->strings["Addon applications, utilities, games"] = "Zusätzliche Anwendungen, Dienstprogramme, Spiele";
+$a->strings["Search site content"] = "Inhalt der Seite durchsuchen";
+$a->strings["Full Text"] = "Volltext";
+$a->strings["Tags"] = "Tags";
+$a->strings["Community"] = "Gemeinschaft";
+$a->strings["Conversations on this and other servers"] = "Unterhaltungen auf diesem und anderen Servern";
 $a->strings["Events and Calendar"] = "Ereignisse und Kalender";
+$a->strings["Directory"] = "Verzeichnis";
+$a->strings["People directory"] = "Nutzerverzeichnis";
+$a->strings["Information about this friendica instance"] = "Informationen zu dieser Friendica-Instanz";
+$a->strings["Terms of Service of this Friendica instance"] = "Die Nutzungsbedingungen dieser Friendica-Instanz";
+$a->strings["Conversations from your friends"] = "Unterhaltungen Deiner Kontakte";
+$a->strings["Network Reset"] = "Netzwerk zurücksetzen";
+$a->strings["Load Network page with no filters"] = "Netzwerk-Seite ohne Filter laden";
+$a->strings["Introductions"] = "Kontaktanfragen";
+$a->strings["Friend Requests"] = "Kontaktanfragen";
+$a->strings["See all notifications"] = "Alle Benachrichtigungen anzeigen";
+$a->strings["Mark all system notifications seen"] = "Markiere alle Systembenachrichtigungen als gelesen";
 $a->strings["Private mail"] = "Private E-Mail";
+$a->strings["Inbox"] = "Eingang";
+$a->strings["Outbox"] = "Ausgang";
+$a->strings["Manage"] = "Verwalten";
+$a->strings["Manage other pages"] = "Andere Seiten verwalten";
 $a->strings["Account settings"] = "Kontoeinstellungen";
+$a->strings["Manage/Edit Profiles"] = "Profile verwalten/editieren";
 $a->strings["Manage/edit friends and contacts"] = "Freunde und Kontakte verwalten/bearbeiten";
-$a->strings["Alignment"] = "Ausrichtung";
-$a->strings["Left"] = "Links";
-$a->strings["Center"] = "Mitte";
-$a->strings["Color scheme"] = "Farbschema";
-$a->strings["Posts font size"] = "Schriftgröße in Beiträgen";
-$a->strings["Textareas font size"] = "Schriftgröße in Eingabefeldern";
-$a->strings["Comma separated list of helper forums"] = "Komma-Separierte Liste der Helfer-Foren";
-$a->strings["don't show"] = "nicht zeigen";
-$a->strings["show"] = "zeigen";
-$a->strings["Set style"] = "Stil auswählen";
-$a->strings["Community Pages"] = "Foren";
-$a->strings["Community Profiles"] = "Community-Profile";
-$a->strings["Help or @NewHere ?"] = "Hilfe oder @NewHere";
-$a->strings["Connect Services"] = "Verbinde Dienste";
-$a->strings["Find Friends"] = "Kontakte finden";
-$a->strings["Last users"] = "Letzte Nutzer";
+$a->strings["Site setup and configuration"] = "Einstellungen der Seite und Konfiguration";
+$a->strings["Navigation"] = "Navigation";
+$a->strings["Site map"] = "Sitemap";
+$a->strings["Embedding disabled"] = "Einbettungen deaktiviert";
+$a->strings["Embedded content"] = "Eingebetteter Inhalt";
+$a->strings["newer"] = "neuer";
+$a->strings["older"] = "älter";
+$a->strings["prev"] = "vorige";
+$a->strings["last"] = "letzte";
+$a->strings["view full size"] = "Volle Größe anzeigen";
+$a->strings["Image/photo"] = "Bild/Foto";
+$a->strings["<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s"] = "<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s";
+$a->strings["$1 wrote:"] = "$1 hat geschrieben:";
+$a->strings["Encrypted content"] = "Verschlüsselter Inhalt";
+$a->strings["Invalid source protocol"] = "Ungültiges Quell-Protokoll";
+$a->strings["Invalid link protocol"] = "Ungültiges Link-Protokoll";
+$a->strings["Loading more entries..."] = "lade weitere Einträge...";
+$a->strings["The end"] = "Das Ende";
+$a->strings["Follow"] = "Folge";
+$a->strings["Click to open/close"] = "Zum Ã–ffnen/Schließen klicken";
+$a->strings["Export"] = "Exportieren";
+$a->strings["Export calendar as ical"] = "Kalender als ical exportieren";
+$a->strings["Export calendar as csv"] = "Kalender als csv exportieren";
+$a->strings["No contacts"] = "Keine Kontakte";
+$a->strings["%d Contact"] = [
+       0 => "%d Kontakt",
+       1 => "%d Kontakte",
+];
+$a->strings["View Contacts"] = "Kontakte anzeigen";
+$a->strings["Add New Contact"] = "Neuen Kontakt hinzufügen";
+$a->strings["Enter address or web location"] = "Adresse oder Web-Link eingeben";
+$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Beispiel: bob@example.com, http://example.com/barbara";
+$a->strings["%d invitation available"] = [
+       0 => "%d Einladung verfügbar",
+       1 => "%d Einladungen verfügbar",
+];
 $a->strings["Find People"] = "Leute finden";
 $a->strings["Enter name or interest"] = "Name oder Interessen eingeben";
 $a->strings["Examples: Robert Morgenstein, Fishing"] = "Beispiel: Robert Morgenstein, Angeln";
@@ -1555,30 +1690,38 @@ $a->strings["Similar Interests"] = "Ähnliche Interessen";
 $a->strings["Random Profile"] = "Zufälliges Profil";
 $a->strings["Invite Friends"] = "Freunde einladen";
 $a->strings["Local Directory"] = "Lokales Verzeichnis";
-$a->strings["Forums"] = "Foren";
-$a->strings["External link to forum"] = "Externer Link zum Forum";
-$a->strings["Quick Start"] = "Schnell-Start";
-$a->strings["Could not find any unarchived contact entry for this URL (%s)"] = "Für die URL (%s) konnte kein nicht-archivierter Kontakt gefunden werden";
-$a->strings["The contact entries have been archived"] = "Die Kontakteinträge wurden archiviert.";
-$a->strings["Enter new password: "] = "Neues Passwort eingeben:";
-$a->strings["Post update version number has been set to %s."] = "Die Post-Update Versionsnummer wurde auf %s gesetzt.";
-$a->strings["Check for pending update actions."] = "Ãœberprüfe ausstehende Update Aktionen";
-$a->strings["Done."] = "Erledigt.";
-$a->strings["Execute pending post updates."] = "Ausstehende Post-Updates ausführen";
-$a->strings["All pending post updates are done."] = "Alle ausstehenden Post-Updates wurden ausgeführt.";
-$a->strings["Post to Email"] = "An E-Mail senden";
-$a->strings["Hide your profile details from unknown viewers?"] = "Profil-Details vor unbekannten Betrachtern verbergen?";
-$a->strings["Connectors disabled, since \"%s\" is enabled."] = "Konnektoren sind nicht verfügbar, da \"%s\" aktiv ist.";
-$a->strings["Visible to everybody"] = "Für jeden sichtbar";
-$a->strings["Close"] = "Schließen";
+$a->strings["Protocols"] = "Protokolle";
+$a->strings["All Protocols"] = "Alle Protokolle";
+$a->strings["Saved Folders"] = "Gespeicherte Ordner";
+$a->strings["Everything"] = "Alles";
+$a->strings["Categories"] = "Kategorien";
+$a->strings["%d contact in common"] = [
+       0 => "%d gemeinsamer Kontakt",
+       1 => "%d gemeinsame Kontakte",
+];
+$a->strings["Post to Email"] = "An E-Mail senden";
+$a->strings["Hide your profile details from unknown viewers?"] = "Profil-Details vor unbekannten Betrachtern verbergen?";
+$a->strings["Connectors disabled, since \"%s\" is enabled."] = "Konnektoren sind nicht verfügbar, da \"%s\" aktiv ist.";
+$a->strings["Visible to everybody"] = "Für jeden sichtbar";
+$a->strings["show"] = "zeigen";
+$a->strings["don't show"] = "nicht zeigen";
+$a->strings["Close"] = "Schließen";
 $a->strings["Welcome "] = "Willkommen ";
 $a->strings["Please upload a profile photo."] = "Bitte lade ein Profilbild hoch.";
 $a->strings["Welcome back "] = "Willkommen zurück ";
-$a->strings["The database configuration file \"config/local.config.php\" could not be written. Please use the enclosed text to create a configuration file in your web server root."] = "Die Datenbankkonfigurationsdatei \"config/local.config.php\" konnte nicht erstellt werden. Um eine Konfigurationsdatei in Ihrem Webserver-Verzeichnis zu erstellen, Gehen Sie wie folgt vor.";
-$a->strings["You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."] = "Möglicherweise musst Du die Datei \"database.sql\" manuell mit phpmyadmin oder mysql importieren.";
+$a->strings["Could not find any unarchived contact entry for this URL (%s)"] = "Für die URL (%s) konnte kein nicht-archivierter Kontakt gefunden werden";
+$a->strings["The contact entries have been archived"] = "Die Kontakteinträge wurden archiviert.";
+$a->strings["Enter new password: "] = "Neues Passwort eingeben:";
+$a->strings["Post update version number has been set to %s."] = "Die Post-Update-Versionsnummer wurde auf %s gesetzt.";
+$a->strings["Check for pending update actions."] = "Ãœberprüfe ausstehende Update-Aktionen";
+$a->strings["Done."] = "Erledigt.";
+$a->strings["Execute pending post updates."] = "Ausstehende Post-Updates ausführen";
+$a->strings["All pending post updates are done."] = "Alle ausstehenden Post-Updates wurden ausgeführt.";
+$a->strings["The database configuration file \"config/local.config.php\" could not be written. Please use the enclosed text to create a configuration file in your web server root."] = "Die Datenbankkonfigurationsdatei \"config/local.config.php\" konnte nicht erstellt werden. Um eine Konfigurationsdatei in Ihrem Webserver-Verzeichnis zu erstellen, gehe wie folgt vor.";
+$a->strings["You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."] = "Möglicherweise musst du die Datei \"database.sql\" manuell mit phpmyadmin oder mysql importieren.";
 $a->strings["Please see the file \"INSTALL.txt\"."] = "Lies bitte die \"INSTALL.txt\".";
 $a->strings["Could not find a command line version of PHP in the web server PATH."] = "Konnte keine Kommandozeilenversion von PHP im PATH des Servers finden.";
-$a->strings["If you don't have a command line version of PHP installed on your server, you will not be able to run the background processing. See <a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-worker'>'Setup the worker'</a>"] = "Wenn auf deinem Server keine Kommandozeilenversion von PHP installiert ist, kannst du den Hintergrundprozess nicht einrichten. Hier findest du alternative Möglichkeiten<a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-poller'>'für das Worker Setup'</a>";
+$a->strings["If you don't have a command line version of PHP installed on your server, you will not be able to run the background processing. See <a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-worker'>'Setup the worker'</a>"] = "Wenn auf deinem Server keine Kommandozeilenversion von PHP installiert ist, kannst du den Hintergrundprozess nicht einrichten. Hier findest du alternative Möglichkeiten<a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-poller'>'für das Worker-Setup'</a>";
 $a->strings["PHP executable path"] = "Pfad zu PHP";
 $a->strings["Enter full path to php executable. You can leave this blank to continue the installation."] = "Gib den kompletten Pfad zur ausführbaren Datei von PHP an. Du kannst dieses Feld auch frei lassen und mit der Installation fortfahren.";
 $a->strings["Command line PHP"] = "Kommandozeilen-PHP";
@@ -1589,7 +1732,7 @@ $a->strings["The command line version of PHP on your system does not have \"regi
 $a->strings["This is required for message delivery to work."] = "Dies wird für die Auslieferung von Nachrichten benötigt.";
 $a->strings["PHP register_argc_argv"] = "PHP register_argc_argv";
 $a->strings["Error: the \"openssl_pkey_new\" function on this system is not able to generate encryption keys"] = "Fehler: Die Funktion \"openssl_pkey_new\" auf diesem System ist nicht in der Lage, Verschlüsselungsschlüssel zu erzeugen";
-$a->strings["If running under Windows, please see \"http://www.php.net/manual/en/openssl.installation.php\"."] = "Wenn der Server unter Windows läuft, schau Dir bitte \"http://www.php.net/manual/en/openssl.installation.php\" an.";
+$a->strings["If running under Windows, please see \"http://www.php.net/manual/en/openssl.installation.php\"."] = "Wenn der Server unter Windows läuft, schau dir bitte \"http://www.php.net/manual/en/openssl.installation.php\" an.";
 $a->strings["Generate encryption keys"] = "Schlüssel erzeugen";
 $a->strings["Error: Apache webserver mod-rewrite module is required but not installed."] = "Fehler: Das Apache-Modul mod-rewrite wird benötigt, es ist allerdings nicht installiert.";
 $a->strings["Apache mod_rewrite module"] = "Apache mod_rewrite module";
@@ -1605,22 +1748,22 @@ $a->strings["Error: GD graphics PHP module with JPEG support required but not in
 $a->strings["OpenSSL PHP module"] = "PHP: OpenSSL-Modul";
 $a->strings["Error: openssl PHP module required but not installed."] = "Fehler: Das openssl-Modul von PHP ist nicht installiert.";
 $a->strings["mb_string PHP module"] = "PHP: mb_string-Modul";
-$a->strings["Error: mb_string PHP module required but not installed."] = "Fehler: mb_string PHP Module wird benötigt ist aber nicht installiert.";
+$a->strings["Error: mb_string PHP module required but not installed."] = "Fehler: mb_string PHP Module wird benötigt, ist aber nicht installiert.";
 $a->strings["iconv PHP module"] = "PHP iconv Modul";
 $a->strings["Error: iconv PHP module required but not installed."] = "Fehler: Das iconv-Modul von PHP ist nicht installiert.";
 $a->strings["POSIX PHP module"] = "PHP POSIX Modul";
-$a->strings["Error: POSIX PHP module required but not installed."] = "Fehler POSIX PHP Modul erforderlich aber nicht installiert.";
+$a->strings["Error: POSIX PHP module required but not installed."] = "Fehler POSIX PHP Modul erforderlich, aber nicht installiert.";
 $a->strings["JSON PHP module"] = "PHP JASON Modul";
 $a->strings["Error: JSON PHP module required but not installed."] = "Fehler: Das JSON PHP Modul wird benötigt, ist aber nicht installiert.";
-$a->strings["The web installer needs to be able to create a file called \"local.config.php\" in the \"config\" folder of your web server and it is unable to do so."] = "Das Installationsprogramm muss in der Lage sein, eine Datei namens \"local.config.php\" im Ordner \"config\" Ihres Webservers zu erstellen, ist aber nicht in der Lager dazu.";
-$a->strings["This is most often a permission setting, as the web server may not be able to write files in your folder - even if you can."] = "In den meisten Fällen ist dies ein Problem mit den Schreibrechten. Der Webserver könnte keine Schreiberlaubnis haben, selbst wenn Du sie hast.";
-$a->strings["At the end of this procedure, we will give you a text to save in a file named local.config.php in your Friendica \"config\" folder."] = "Am Ende dieser Prozedur bekommst du einen Text der in der local.config.php im Friendica \"config\" Ordner gespeichert werden muss.";
-$a->strings["You can alternatively skip this procedure and perform a manual installation. Please see the file \"INSTALL.txt\" for instructions."] = "Alternativ kannst Du diesen Schritt aber auch Ã¼berspringen und die Installation manuell durchführen. Eine Anleitung dazu (Englisch) findest Du in der Datei INSTALL.txt.";
+$a->strings["The web installer needs to be able to create a file called \"local.config.php\" in the \"config\" folder of your web server and it is unable to do so."] = "Das Installationsprogramm muss in der Lage sein, eine Datei namens \"local.config.php\" im Ordner \"config\" Ihres Webservers zu erstellen, ist aber nicht in der Lage dazu.";
+$a->strings["This is most often a permission setting, as the web server may not be able to write files in your folder - even if you can."] = "In den meisten Fällen ist dies ein Problem mit den Schreibrechten. Der Webserver könnte keine Schreiberlaubnis haben, selbst wenn du sie hast.";
+$a->strings["At the end of this procedure, we will give you a text to save in a file named local.config.php in your Friendica \"config\" folder."] = "Am Ende dieser Prozedur bekommst du einen Text, der in der local.config.php im Friendica \"config\" Ordner gespeichert werden muss.";
+$a->strings["You can alternatively skip this procedure and perform a manual installation. Please see the file \"INSTALL.txt\" for instructions."] = "Alternativ kannst du diesen Schritt aber auch Ã¼berspringen und die Installation manuell durchführen. Eine Anleitung dazu (Englisch) findest du in der Datei INSTALL.txt.";
 $a->strings["config/local.config.php is writable"] = "config/local.config.php ist schreibbar";
-$a->strings["Friendica uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering."] = "Friendica nutzt die Smarty3 Template Engine um die Webansichten zu rendern. Smarty3 kompiliert Templates zu PHP um das Rendern zu beschleunigen.";
-$a->strings["In order to store these compiled templates, the web server needs to have write access to the directory view/smarty3/ under the Friendica top level folder."] = "Um diese kompilierten Templates zu speichern benötigt der Webserver Schreibrechte zum Verzeichnis view/smarty3/ im obersten Ordner von Friendica.";
-$a->strings["Please ensure that the user that your web server runs as (e.g. www-data) has write access to this folder."] = "Bitte stelle sicher, dass der Nutzer unter dem der Webserver läuft (z.B. www-data) Schreibrechte zu diesem Verzeichnis hat.";
-$a->strings["Note: as a security measure, you should give the web server write access to view/smarty3/ only--not the template files (.tpl) that it contains."] = "Hinweis: aus Sicherheitsgründen solltest Du dem Webserver nur Schreibrechte für view/smarty3/ geben -- Nicht den Templatedateien (.tpl) die sie enthalten.";
+$a->strings["Friendica uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering."] = "Friendica nutzt die Smarty3-Template-Engine, um die Webansichten zu rendern. Smarty3 kompiliert Templates zu PHP, um das Rendern zu beschleunigen.";
+$a->strings["In order to store these compiled templates, the web server needs to have write access to the directory view/smarty3/ under the Friendica top level folder."] = "Um diese kompilierten Templates zu speichern, benötigt der Webserver Schreibrechte zum Verzeichnis view/smarty3/ im obersten Ordner von Friendica.";
+$a->strings["Please ensure that the user that your web server runs as (e.g. www-data) has write access to this folder."] = "Bitte stelle sicher, dass der Nutzer, unter dem der Webserver läuft (z.B. www-data), Schreibrechte zu diesem Verzeichnis hat.";
+$a->strings["Note: as a security measure, you should give the web server write access to view/smarty3/ only--not the template files (.tpl) that it contains."] = "Hinweis: aus Sicherheitsgründen solltest du dem Webserver nur Schreibrechte für view/smarty3/ geben -- Nicht für die darin enthaltenen Template-Dateien (.tpl).";
 $a->strings["view/smarty3 is writable"] = "view/smarty3 ist schreibbar";
 $a->strings["Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist to .htaccess."] = "Umschreiben der URLs in der .htaccess funktioniert nicht. Vergewissere dich, dass du .htaccess-dist nach.htaccess kopiert hast.";
 $a->strings["Error message from Curl when fetching"] = "Fehlermeldung von Curl während des Ladens";
@@ -1677,8 +1820,6 @@ $a->strings["fingered"] = "befummelte";
 $a->strings["rebuff"] = "eine Abfuhr erteilen";
 $a->strings["rebuffed"] = "abfuhrerteilte";
 $a->strings["System"] = "System";
-$a->strings["Home"] = "Pinnwand";
-$a->strings["Introductions"] = "Kontaktanfragen";
 $a->strings["%s commented on %s's post"] = "%s hat %ss Beitrag kommentiert";
 $a->strings["%s created a new post"] = "%s hat einen neuen Beitrag erstellt";
 $a->strings["%s liked %s's post"] = "%s mag %ss Beitrag";
@@ -1696,232 +1837,32 @@ $a->strings["Error 403 - Forbidden"] = "Error 403 - Forbidden";
 $a->strings["Error 404 - Not Found"] = "Error 404 - Not Found";
 $a->strings["Error 500 - Internal Server Error"] = "Error 500 - Internal Server Error";
 $a->strings["Error 503 - Service Unavailable"] = "Error 503 - Service Unavailable";
-$a->strings["The server cannot or will not process the request due to an apparent client error."] = "Aufgrund eines offensichtlichen Fehlers auf der Seite des Clients kann oder wird die Anfrage nicht bearbeitet.";
+$a->strings["The server cannot or will not process the request due to an apparent client error."] = "Aufgrund eines offensichtlichen Fehlers auf der Seite des Clients kann oder wird der Server die Anfrage nicht bearbeiten.";
 $a->strings["Authentication is required and has failed or has not yet been provided."] = "Die erforderliche Authentifizierung ist fehlgeschlagen oder noch nicht erfolgt.";
-$a->strings["The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource, or may need an account."] = "Die Anfrage war gültig aber der Server verweigert die Ausführung. Der Benutzer verfügt möglicherweise nicht Ã¼ber die erforderlichen Berechtigungen oder benötigt ein Nutzerkonto.";
+$a->strings["The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource, or may need an account."] = "Die Anfrage war gültig, aber der Server verweigert die Ausführung. Der Benutzer verfügt möglicherweise nicht Ã¼ber die erforderlichen Berechtigungen oder benötigt ein Nutzerkonto.";
 $a->strings["The requested resource could not be found but may be available in the future."] = "Die angeforderte Ressource konnte nicht gefunden werden, sie könnte allerdings zu einem späteren Zeitpunkt verfügbar sein.";
-$a->strings["An unexpected condition was encountered and no more specific message is suitable."] = "Eine unerwartete Situation ist eingetreten zu der keine detailliertere Nachricht vorliegt.";
-$a->strings["The server is currently unavailable (because it is overloaded or down for maintenance). Please try again later."] = "Der Server ist derzeit nicht Verfügbar (wegen Ãœberlastung oder Wartungsarbeiten). Bitte versuchen Sie es später noch einmal.";
+$a->strings["An unexpected condition was encountered and no more specific message is suitable."] = "Eine unerwartete Situation ist eingetreten, zu der keine detailliertere Nachricht vorliegt.";
+$a->strings["The server is currently unavailable (because it is overloaded or down for maintenance). Please try again later."] = "Der Server ist derzeit nicht verfügbar (wegen Ãœberlastung oder Wartungsarbeiten). Bitte versuche es später noch einmal.";
 $a->strings["Update %s failed. See error logs."] = "Update %s fehlgeschlagen. Bitte Fehlerprotokoll Ã¼berprüfen.";
-$a->strings["\n\t\t\t\tThe friendica developers released update %s recently,\n\t\t\t\tbut when I tried to install it, something went terribly wrong.\n\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."] = "\nDie Friendica-Entwickler haben vor kurzem das Update %s veröffentlicht, aber bei der Installation ging etwas schrecklich schief.\n\nDas Problem sollte so schnell wie möglich gelöst werden, aber ich schaffe es nicht alleine. Bitte kontaktiere einen Friendica-Entwickler falls Du mir nicht alleine helfen kannst. Meine Datenbank könnte ungültig sein.";
+$a->strings["\n\t\t\t\tThe friendica developers released update %s recently,\n\t\t\t\tbut when I tried to install it, something went terribly wrong.\n\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."] = "\nDie Friendica-Entwickler haben vor kurzem das Update %s veröffentlicht, aber bei der Installation ging etwas schrecklich schief.\n\nDas Problem sollte so schnell wie möglich gelöst werden, aber ich schaffe es nicht alleine. Bitte kontaktiere einen Friendica-Entwickler, falls du mir nicht alleine helfen kannst. Meine Datenbank könnte ungültig sein.";
 $a->strings["The error message is\n[pre]%s[/pre]"] = "Die Fehlermeldung lautet\n[pre]%s[/pre]";
 $a->strings["\n\t\t\t\t\tThe friendica database was successfully updated from %s to %s."] = "\n \t\t\t\t\tDie Friendica Datenbank wurde erfolgreich von %s auf %s aktualisiert.";
-$a->strings["Error decoding account file"] = "Fehler beim Verarbeiten der Account Datei";
-$a->strings["Error! No version data in file! This is not a Friendica account file?"] = "Fehler! Keine Versionsdaten in der Datei! Ist das wirklich eine Friendica Account Datei?";
+$a->strings["Error decoding account file"] = "Fehler beim Verarbeiten der Account-Datei";
+$a->strings["Error! No version data in file! This is not a Friendica account file?"] = "Fehler! Keine Versionsdaten in der Datei! Ist das wirklich eine Friendica-Account-Datei?";
 $a->strings["User '%s' already exists on this server!"] = "Nutzer '%s' existiert bereits auf diesem Server!";
-$a->strings["User creation error"] = "Fehler beim Anlegen des Nutzeraccounts aufgetreten";
-$a->strings["User profile creation error"] = "Fehler beim Anlegen des Nutzerkontos";
+$a->strings["User creation error"] = "Fehler beim Anlegen des Nutzer-Accounts aufgetreten";
+$a->strings["User profile creation error"] = "Fehler beim Anlegen des Nutzer-Profils";
 $a->strings["%d contact not imported"] = [
        0 => "%d Kontakt nicht importiert",
        1 => "%d Kontakte nicht importiert",
 ];
-$a->strings["Done. You can now login with your username and password"] = "Erledigt. Du kannst Dich jetzt mit Deinem Nutzernamen und Passwort anmelden";
-$a->strings["Birthday:"] = "Geburtstag:";
-$a->strings["YYYY-MM-DD or MM-DD"] = "YYYY-MM-DD oder MM-DD";
-$a->strings["never"] = "nie";
-$a->strings["less than a second ago"] = "vor weniger als einer Sekunde";
-$a->strings["year"] = "Jahr";
-$a->strings["years"] = "Jahre";
-$a->strings["months"] = "Monate";
-$a->strings["weeks"] = "Wochen";
-$a->strings["days"] = "Tage";
-$a->strings["hour"] = "Stunde";
-$a->strings["hours"] = "Stunden";
-$a->strings["minute"] = "Minute";
-$a->strings["minutes"] = "Minuten";
-$a->strings["second"] = "Sekunde";
-$a->strings["seconds"] = "Sekunden";
-$a->strings["in %1\$d %2\$s"] = "in %1\$d %2\$s";
-$a->strings["%1\$d %2\$s ago"] = "vor %1\$d %2\$s";
-$a->strings["view full size"] = "Volle Größe anzeigen";
-$a->strings["Image/photo"] = "Bild/Foto";
-$a->strings["<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s"] = "<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s";
-$a->strings["$1 wrote:"] = "$1 hat geschrieben:";
-$a->strings["Encrypted content"] = "Verschlüsselter Inhalt";
-$a->strings["Invalid source protocol"] = "Ungültiges Quell-Protokoll";
-$a->strings["Invalid link protocol"] = "Ungültiges Link-Protokoll";
-$a->strings["Loading more entries..."] = "lade weitere Einträge...";
-$a->strings["The end"] = "Das Ende";
-$a->strings["Follow"] = "Folge";
-$a->strings["@name, !forum, #tags, content"] = "@name, !forum, #tags, content";
-$a->strings["Full Text"] = "Volltext";
-$a->strings["Tags"] = "Tags";
-$a->strings["Click to open/close"] = "Zum Ã¶ffnen/schließen klicken";
-$a->strings["Export"] = "Exportieren";
-$a->strings["Export calendar as ical"] = "Kalender als ical exportieren";
-$a->strings["Export calendar as csv"] = "Kalender als csv exportieren";
-$a->strings["No contacts"] = "Keine Kontakte";
-$a->strings["%d Contact"] = [
-       0 => "%d Kontakt",
-       1 => "%d Kontakte",
-];
-$a->strings["View Contacts"] = "Kontakte anzeigen";
-$a->strings["Frequently"] = "immer wieder";
-$a->strings["Hourly"] = "Stündlich";
-$a->strings["Twice daily"] = "Zweimal täglich";
-$a->strings["Daily"] = "Täglich";
-$a->strings["Weekly"] = "Wöchentlich";
-$a->strings["Monthly"] = "Monatlich";
-$a->strings["DFRN"] = "DFRN";
-$a->strings["OStatus"] = "OStatus";
-$a->strings["RSS/Atom"] = "RSS/Atom";
-$a->strings["Zot!"] = "Zott";
-$a->strings["LinkedIn"] = "LinkedIn";
-$a->strings["XMPP/IM"] = "XMPP/Chat";
-$a->strings["MySpace"] = "MySpace";
-$a->strings["Google+"] = "Google+";
-$a->strings["pump.io"] = "pump.io";
-$a->strings["Twitter"] = "Twitter";
-$a->strings["Diaspora Connector"] = "Diaspora Connector";
-$a->strings["GNU Social Connector"] = "GNU Social Connector";
-$a->strings["ActivityPub"] = "ActivityPub";
-$a->strings["pnut"] = "pnut";
-$a->strings["Male"] = "Männlich";
-$a->strings["Female"] = "Weiblich";
-$a->strings["Currently Male"] = "Momentan männlich";
-$a->strings["Currently Female"] = "Momentan weiblich";
-$a->strings["Mostly Male"] = "Hauptsächlich männlich";
-$a->strings["Mostly Female"] = "Hauptsächlich weiblich";
-$a->strings["Transgender"] = "Transgender";
-$a->strings["Intersex"] = "Intersex";
-$a->strings["Transsexual"] = "Transsexuell";
-$a->strings["Hermaphrodite"] = "Hermaphrodit";
-$a->strings["Neuter"] = "Neuter";
-$a->strings["Non-specific"] = "Nicht spezifiziert";
-$a->strings["Other"] = "Andere";
-$a->strings["Males"] = "Männer";
-$a->strings["Females"] = "Frauen";
-$a->strings["Gay"] = "Schwul";
-$a->strings["Lesbian"] = "Lesbisch";
-$a->strings["No Preference"] = "Keine Vorlieben";
-$a->strings["Bisexual"] = "Bisexuell";
-$a->strings["Autosexual"] = "Autosexual";
-$a->strings["Abstinent"] = "Abstinent";
-$a->strings["Virgin"] = "Jungfrauen";
-$a->strings["Deviant"] = "Deviant";
-$a->strings["Fetish"] = "Fetish";
-$a->strings["Oodles"] = "Oodles";
-$a->strings["Nonsexual"] = "Nonsexual";
-$a->strings["Single"] = "Single";
-$a->strings["Lonely"] = "Einsam";
-$a->strings["Available"] = "Verfügbar";
-$a->strings["Unavailable"] = "Nicht verfügbar";
-$a->strings["Has crush"] = "verknallt";
-$a->strings["Infatuated"] = "verliebt";
-$a->strings["Dating"] = "Dating";
-$a->strings["Unfaithful"] = "Untreu";
-$a->strings["Sex Addict"] = "Sexbesessen";
-$a->strings["Friends"] = "Kontakte";
-$a->strings["Friends/Benefits"] = "Freunde/Zuwendungen";
-$a->strings["Casual"] = "Casual";
-$a->strings["Engaged"] = "Verlobt";
-$a->strings["Married"] = "Verheiratet";
-$a->strings["Imaginarily married"] = "imaginär verheiratet";
-$a->strings["Partners"] = "Partner";
-$a->strings["Cohabiting"] = "zusammenlebend";
-$a->strings["Common law"] = "wilde Ehe";
-$a->strings["Happy"] = "Glücklich";
-$a->strings["Not looking"] = "Nicht auf der Suche";
-$a->strings["Swinger"] = "Swinger";
-$a->strings["Betrayed"] = "Betrogen";
-$a->strings["Separated"] = "Getrennt";
-$a->strings["Unstable"] = "Unstabil";
-$a->strings["Divorced"] = "Geschieden";
-$a->strings["Imaginarily divorced"] = "imaginär geschieden";
-$a->strings["Widowed"] = "Verwitwet";
-$a->strings["Uncertain"] = "Unsicher";
-$a->strings["It's complicated"] = "Ist kompliziert";
-$a->strings["Don't care"] = "Ist mir nicht wichtig";
-$a->strings["Ask me"] = "Frag mich";
-$a->strings["General Features"] = "Allgemeine Features";
-$a->strings["Multiple Profiles"] = "Mehrere Profile";
-$a->strings["Ability to create multiple profiles"] = "Möglichkeit mehrere Profile zu erstellen";
-$a->strings["Photo Location"] = "Aufnahmeort";
-$a->strings["Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map."] = "Die Foto-Metadaten werden ausgelesen. Dadurch kann der Aufnahmeort (wenn vorhanden) in einer Karte angezeigt werden.";
-$a->strings["Export Public Calendar"] = "Öffentlichen Kalender exportieren";
-$a->strings["Ability for visitors to download the public calendar"] = "Möglichkeit für Besucher den Ã¶ffentlichen Kalender herunter zu laden";
-$a->strings["Post Composition Features"] = "Beitragserstellung Features";
-$a->strings["Auto-mention Forums"] = "Foren automatisch erwähnen";
-$a->strings["Add/remove mention when a forum page is selected/deselected in ACL window."] = "Automatisch eine @-Erwähnung eines Forums einfügen/entfehrnen, wenn dieses im ACL Fenster de-/markiert  wurde.";
-$a->strings["Explicit Mentions"] = "Explizite Erwähnungen";
-$a->strings["Add explicit mentions to comment box for manual control over who gets mentioned in replies."] = "Füge Erwähnungen zum Kommentarfeld hinzu, um manuell Ã¼ber die explizite Erwähnung von Gesprächsteilnehmern zu entscheiden.";
-$a->strings["Network Sidebar"] = "Netzwerk Seitenleiste";
-$a->strings["Ability to select posts by date ranges"] = "Möglichkeit die Beiträge nach Datumsbereichen zu sortieren";
-$a->strings["Protocol Filter"] = "Protokoll Filter";
-$a->strings["Enable widget to display Network posts only from selected protocols"] = "Aktiviere Widget um Netzwerkbeiträge nur von ausgesuchten Protokollen anzuzeigen";
-$a->strings["Network Tabs"] = "Netzwerk Reiter";
-$a->strings["Network New Tab"] = "Netzwerk-Reiter: Neue";
-$a->strings["Enable tab to display only new Network posts (from the last 12 hours)"] = "Aktiviert einen Netzwerk-Reiter in dem ausschließlich neue Beiträge (der letzten 12 Stunden) angezeigt werden";
-$a->strings["Network Shared Links Tab"] = "Netzwerk-Reiter: Geteilte Links";
-$a->strings["Enable tab to display only Network posts with links in them"] = "Aktiviert einen Netzwerk-Reiter der ausschließlich Nachrichten mit Links enthält";
-$a->strings["Post/Comment Tools"] = "Werkzeuge für Beiträge und Kommentare";
-$a->strings["Post Categories"] = "Beitragskategorien";
-$a->strings["Add categories to your posts"] = "Eigene Beiträge mit Kategorien versehen";
-$a->strings["Advanced Profile Settings"] = "Erweiterte Profil-Einstellungen";
-$a->strings["List Forums"] = "Zeige Foren";
-$a->strings["Show visitors public community forums at the Advanced Profile Page"] = "Zeige Besuchern Ã¶ffentliche Gemeinschafts-Foren auf der Erweiterten Profil-Seite";
-$a->strings["Tag Cloud"] = "Schlagwort Wolke";
-$a->strings["Provide a personal tag cloud on your profile page"] = "Wortwolke aus den von dir verwendeten Schlagwörtern im Profil anzeigen.";
-$a->strings["Display Membership Date"] = "Mitgliedschaftsdatum anzeigen";
-$a->strings["Display membership date in profile"] = "Soll das Datum der Registrierung deines Accounts im Profil angezeigt werden.";
-$a->strings["Nothing new here"] = "Keine Neuigkeiten";
-$a->strings["Clear notifications"] = "Bereinige Benachrichtigungen";
-$a->strings["Personal notes"] = "Persönliche Notizen";
-$a->strings["Your personal notes"] = "Deine persönlichen Notizen";
-$a->strings["Sign in"] = "Anmelden";
-$a->strings["Home Page"] = "Homepage";
-$a->strings["Register"] = "Registrieren";
-$a->strings["Create an account"] = "Nutzerkonto erstellen";
-$a->strings["Help and documentation"] = "Hilfe und Dokumentation";
-$a->strings["Apps"] = "Apps";
-$a->strings["Addon applications, utilities, games"] = "Addon Anwendungen, Dienstprogramme, Spiele";
-$a->strings["Search site content"] = "Inhalt der Seite durchsuchen";
-$a->strings["Community"] = "Gemeinschaft";
-$a->strings["Conversations on this and other servers"] = "Unterhaltungen auf diesem und anderer Server";
-$a->strings["Directory"] = "Verzeichnis";
-$a->strings["People directory"] = "Nutzerverzeichnis";
-$a->strings["Information about this friendica instance"] = "Informationen zu dieser Friendica Instanz";
-$a->strings["Terms of Service of this Friendica instance"] = "Die Nutzungsbedingungen dieser Friendica Instanz";
-$a->strings["Network Reset"] = "Netzwerk zurücksetzen";
-$a->strings["Load Network page with no filters"] = "Netzwerk-Seite ohne Filter laden";
-$a->strings["Friend Requests"] = "Kontaktanfragen";
-$a->strings["See all notifications"] = "Alle Benachrichtigungen anzeigen";
-$a->strings["Mark all system notifications seen"] = "Markiere alle Systembenachrichtigungen als gelesen";
-$a->strings["Inbox"] = "Eingang";
-$a->strings["Outbox"] = "Ausgang";
-$a->strings["Manage"] = "Verwalten";
-$a->strings["Manage other pages"] = "Andere Seiten verwalten";
-$a->strings["Manage/Edit Profiles"] = "Profile Verwalten/Editieren";
-$a->strings["Site setup and configuration"] = "Einstellungen der Seite und Konfiguration";
-$a->strings["Navigation"] = "Navigation";
-$a->strings["Site map"] = "Sitemap";
-$a->strings["Embedding disabled"] = "Einbettungen deaktiviert";
-$a->strings["Embedded content"] = "Eingebetteter Inhalt";
-$a->strings["newer"] = "neuer";
-$a->strings["older"] = "älter";
-$a->strings["prev"] = "vorige";
-$a->strings["last"] = "letzte";
-$a->strings["Add New Contact"] = "Neuen Kontakt hinzufügen";
-$a->strings["Enter address or web location"] = "Adresse oder Web-Link eingeben";
-$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Beispiel: bob@example.com, http://example.com/barbara";
-$a->strings["%d invitation available"] = [
-       0 => "%d Einladung verfügbar",
-       1 => "%d Einladungen verfügbar",
-];
-$a->strings["Protocols"] = "Protokolle";
-$a->strings["All Protocols"] = "Alle Protokolle";
-$a->strings["Saved Folders"] = "Gespeicherte Ordner";
-$a->strings["Everything"] = "Alles";
-$a->strings["Categories"] = "Kategorien";
-$a->strings["%d contact in common"] = [
-       0 => "%d gemeinsamer Kontakt",
-       1 => "%d gemeinsame Kontakte",
-];
-$a->strings["There are no tables on MyISAM."] = "Es gibt keine MyISAM Tabellen.";
+$a->strings["Done. You can now login with your username and password"] = "Erledigt. Du kannst dich jetzt mit deinem Nutzernamen und Passwort anmelden";
+$a->strings["There are no tables on MyISAM."] = "Es gibt keine MyISAM-Tabellen.";
 $a->strings["\nError %d occurred during database update:\n%s\n"] = "\nFehler %d beim Update der Datenbank aufgetreten\n%s\n";
 $a->strings["Errors encountered performing database changes: "] = "Fehler beim Ã„ndern der Datenbank aufgetreten";
 $a->strings["%s: Database update"] = "%s: Datenbank Aktualisierung";
 $a->strings["%s: updating %s table."] = "%s: aktualisiere Tabelle %s";
+$a->strings["Legacy module file not found: %s"] = "Legacy-Moduldatei nicht gefunden: %s";
 $a->strings["Drop Contact"] = "Kontakt löschen";
 $a->strings["Organisation"] = "Organisation";
 $a->strings["News"] = "Nachrichten";
@@ -1932,11 +1873,11 @@ $a->strings["This site is not configured to allow communications with other netw
 $a->strings["No compatible communication protocols or feeds were discovered."] = "Es wurden keine kompatiblen Kommunikationsprotokolle oder Feeds gefunden.";
 $a->strings["The profile address specified does not provide adequate information."] = "Die angegebene Profiladresse liefert unzureichende Informationen.";
 $a->strings["An author or name was not found."] = "Es wurde kein Autor oder Name gefunden.";
-$a->strings["No browser URL could be matched to this address."] = "Zu dieser Adresse konnte keine passende Browser URL gefunden werden.";
+$a->strings["No browser URL could be matched to this address."] = "Zu dieser Adresse konnte keine passende Browser-URL gefunden werden.";
 $a->strings["Unable to match @-style Identity Address with a known protocol or email contact."] = "Konnte die @-Adresse mit keinem der bekannten Protokolle oder Email-Kontakte abgleichen.";
-$a->strings["Use mailto: in front of address to force email check."] = "Verwende mailto: vor der Email Adresse, um eine Ãœberprüfung der E-Mail-Adresse zu erzwingen.";
+$a->strings["Use mailto: in front of address to force email check."] = "Verwende mailto: vor der E-Mail-Adresse, um eine Ãœberprüfung der E-Mail-Adresse zu erzwingen.";
 $a->strings["The profile address specified belongs to a network which has been disabled on this site."] = "Die Adresse dieses Profils gehört zu einem Netzwerk, mit dem die Kommunikation auf dieser Seite ausgeschaltet wurde.";
-$a->strings["Limited profile. This person will be unable to receive direct/personal notifications from you."] = "Eingeschränktes Profil. Diese Person wird keine direkten/privaten Nachrichten von Dir erhalten können.";
+$a->strings["Limited profile. This person will be unable to receive direct/personal notifications from you."] = "Eingeschränktes Profil. Diese Person wird keine direkten/privaten Nachrichten von dir erhalten können.";
 $a->strings["Unable to retrieve contact information."] = "Konnte die Kontaktinformationen nicht empfangen.";
 $a->strings["Starts:"] = "Beginnt:";
 $a->strings["Finishes:"] = "Endet:";
@@ -1954,9 +1895,9 @@ $a->strings["g:i A"] = "H:i";
 $a->strings["Show map"] = "Karte anzeigen";
 $a->strings["Hide map"] = "Karte verbergen";
 $a->strings["%s's birthday"] = "%ss Geburtstag";
-$a->strings["Happy Birthday %s"] = "Herzlichen Glückwunsch %s";
+$a->strings["Happy Birthday %s"] = "Herzlichen Glückwunsch, %s";
 $a->strings["Item filed"] = "Beitrag abgelegt";
-$a->strings["A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "Eine gelöschte Gruppe mit diesem Namen wurde wiederbelebt. Bestehende Berechtigungseinstellungen <strong>könnten</strong> auf diese Gruppe oder zukünftige Mitglieder angewandt werden. Falls Du dies nicht möchtest, erstelle bitte eine andere Gruppe mit einem anderen Namen.";
+$a->strings["A deleted group with this name was revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."] = "Eine gelöschte Gruppe mit diesem Namen wurde wiederbelebt. Bestehende Berechtigungseinstellungen <strong>könnten</strong> auf diese Gruppe oder zukünftige Mitglieder angewandt werden. Falls du dies nicht möchtest, erstelle bitte eine andere Gruppe mit einem anderen Namen.";
 $a->strings["Default privacy group for new contacts"] = "Voreingestellte Gruppe für neue Kontakte";
 $a->strings["Everybody"] = "Alle Kontakte";
 $a->strings["edit"] = "bearbeiten";
@@ -1991,6 +1932,7 @@ $a->strings["Upcoming events the next 7 days:"] = "Veranstaltungen der nächsten
 $a->strings["Member since:"] = "Mitglied seit:";
 $a->strings["j F, Y"] = "j F, Y";
 $a->strings["j F"] = "j F";
+$a->strings["Birthday:"] = "Geburtstag:";
 $a->strings["Age:"] = "Alter:";
 $a->strings["for %1\$d %2\$s"] = "für %1\$d %2\$s";
 $a->strings["Religion:"] = "Religion:";
@@ -2005,27 +1947,27 @@ $a->strings["Work/employment:"] = "Arbeit/Beschäftigung:";
 $a->strings["School/education:"] = "Schule/Ausbildung:";
 $a->strings["Forums:"] = "Foren:";
 $a->strings["Profile Details"] = "Profildetails";
-$a->strings["Only You Can See This"] = "Nur Du kannst das sehen";
+$a->strings["Only You Can See This"] = "Nur du kannst das sehen";
 $a->strings["Tips for New Members"] = "Tipps für neue Nutzer";
-$a->strings["OpenWebAuth: %1\$s welcomes %2\$s"] = "OpenWebAuth: %1\$s heißt %2\$sherzlich willkommen";
+$a->strings["OpenWebAuth: %1\$s welcomes %2\$s"] = "OpenWebAuth: %1\$s heißt %2\$s herzlich willkommen";
 $a->strings["Database storage failed to update %s"] = "Datenbankspeicher konnte nicht aktualisiert werden %s";
 $a->strings["Database storage failed to insert data"] = "Der Datenbankspeicher konnte keine Daten einfügen";
-$a->strings["Filesystem storage failed to create \"%s\". Check you write permissions."] = "Dateisystemspeicher konnte nicht erstellt werden \"%s\". Ãœberprüfen Sie, ob Sie Schreibberechtigungen haben.";
-$a->strings["Filesystem storage failed to save data to \"%s\". Check your write permissions"] = "Der Dateisystemspeicher konnte die Daten nicht in \"%s\", speichern. Ãœberprüfen Sie Ihre Schreibberechtigungen";
+$a->strings["Filesystem storage failed to create \"%s\". Check you write permissions."] = "Dateisystemspeicher konnte nicht erstellt werden \"%s\". Ãœberprüfe, ob du Schreibberechtigungen hast.";
+$a->strings["Filesystem storage failed to save data to \"%s\". Check your write permissions"] = "Der Dateisystemspeicher konnte die Daten nicht in \"%s\" speichern. Ãœberprüfe Deine Schreibberechtigungen";
 $a->strings["Storage base path"] = "Dateipfad zum Speicher";
-$a->strings["Folder where uploaded files are saved. For maximum security, This should be a path outside web server folder tree"] = "Verzeichnis in das Dateien hochgeladen werden. Für maximale Sicherheit sollte dies ein Pfad außerhalb der Webserver-Verzeichnisstruktur sein";
-$a->strings["Enter a valid existing folder"] = "Geben Sie einen gültigen, existierenden Ordner ein";
+$a->strings["Folder where uploaded files are saved. For maximum security, This should be a path outside web server folder tree"] = "Verzeichnis, in das Dateien hochgeladen werden. Für maximale Sicherheit sollte dies ein Pfad außerhalb der Webserver-Verzeichnisstruktur sein";
+$a->strings["Enter a valid existing folder"] = "Gib einen gültigen, existierenden Ordner ein";
 $a->strings["Login failed"] = "Anmeldung fehlgeschlagen";
 $a->strings["Not enough information to authenticate"] = "Nicht genügend Informationen für die Authentifizierung";
 $a->strings["Password can't be empty"] = "Das Passwort kann nicht leer sein";
 $a->strings["Empty passwords are not allowed."] = "Leere Passwörter sind nicht erlaubt.";
-$a->strings["The new password has been exposed in a public data dump, please choose another."] = "Das neuer Passwort wurde in einem Ã¶ffentlichen Daten-Dump veröffentlicht. Bitte verwende ein anderes Passwort.";
+$a->strings["The new password has been exposed in a public data dump, please choose another."] = "Das neue Passwort wurde in einem Ã¶ffentlichen Daten-Dump veröffentlicht. Bitte verwende ein anderes Passwort.";
 $a->strings["The password can't contain accentuated letters, white spaces or colons (:)"] = "Das Passwort darf keine akzentuierten Buchstaben, Leerzeichen oder Doppelpunkte (:) beinhalten";
 $a->strings["Passwords do not match. Password unchanged."] = "Die Passwörter stimmen nicht Ã¼berein. Das Passwort bleibt unverändert.";
 $a->strings["An invitation is required."] = "Du benötigst eine Einladung.";
 $a->strings["Invitation could not be verified."] = "Die Einladung konnte nicht Ã¼berprüft werden.";
 $a->strings["Invalid OpenID url"] = "Ungültige OpenID URL";
-$a->strings["We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID."] = "Beim Versuch Dich mit der von Dir angegebenen OpenID anzumelden trat ein Problem auf. Bitte Ã¼berprüfe, dass Du die OpenID richtig geschrieben hast.";
+$a->strings["We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID."] = "Beim Versuch, dich mit der von dir angegebenen OpenID anzumelden, trat ein Problem auf. Bitte Ã¼berprüfe, dass du die OpenID richtig geschrieben hast.";
 $a->strings["The error message was:"] = "Die Fehlermeldung lautete:";
 $a->strings["Please enter the required information."] = "Bitte trage die erforderlichen Informationen ein.";
 $a->strings["system.username_min_length (%s) and system.username_max_length (%s) are excluding each other, swapping values."] = "system.username_min_length (%s) and system.username_max_length (%s) schließen sich gegenseitig aus, tausche Werte aus.";
@@ -2037,8 +1979,8 @@ $a->strings["Username should be at most %s character."] = [
        0 => "Der Benutzername sollte aus maximal %s Zeichen bestehen.",
        1 => "Der Benutzername sollte aus maximal %s Zeichen bestehen.",
 ];
-$a->strings["That doesn't appear to be your full (First Last) name."] = "Das scheint nicht Dein kompletter Name (Vor- und Nachname) zu sein.";
-$a->strings["Your email domain is not among those allowed on this site."] = "Die Domain Deiner E-Mail Adresse ist auf dieser Seite nicht erlaubt.";
+$a->strings["That doesn't appear to be your full (First Last) name."] = "Das scheint nicht dein kompletter Name (Vor- und Nachname) zu sein.";
+$a->strings["Your email domain is not among those allowed on this site."] = "Die Domain Deiner E-Mail-Adresse ist auf dieser Seite nicht erlaubt.";
 $a->strings["Not a valid email address."] = "Keine gültige E-Mail-Adresse.";
 $a->strings["The nickname was blocked from registration by the nodes admin."] = "Der Admin des Knotens hat den Spitznamen für die Registrierung gesperrt.";
 $a->strings["Cannot use that email."] = "Konnte diese E-Mail-Adresse nicht verwenden.";
@@ -2046,23 +1988,14 @@ $a->strings["Your nickname can only contain a-z, 0-9 and _."] = "Dein Spitzname
 $a->strings["Nickname is already registered. Please choose another."] = "Dieser Spitzname ist bereits vergeben. Bitte wähle einen anderen.";
 $a->strings["SERIOUS ERROR: Generation of security keys failed."] = "FATALER FEHLER: Sicherheitsschlüssel konnten nicht erzeugt werden.";
 $a->strings["An error occurred during registration. Please try again."] = "Während der Anmeldung ist ein Fehler aufgetreten. Bitte versuche es noch einmal.";
+$a->strings["default"] = "Standard";
 $a->strings["An error occurred creating your default profile. Please try again."] = "Bei der Erstellung des Standardprofils ist ein Fehler aufgetreten. Bitte versuche es noch einmal.";
-$a->strings["An error occurred creating your self contact. Please try again."] = "Bei der Erstellung deines self Kontakts ist ein Fehler aufgetreten. Bitte versuche es erneut.";
+$a->strings["An error occurred creating your self contact. Please try again."] = "Bei der Erstellung deines self-Kontakts ist ein Fehler aufgetreten. Bitte versuche es erneut.";
 $a->strings["An error occurred creating your default contact group. Please try again."] = "Bei der Erstellung deiner Standardgruppe für Kontakte ist ein Fehler aufgetreten. Bitte versuche es erneut.";
-$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Your account is pending for approval by the administrator.\n\n\t\t\tYour login details are as follows:\n\n\t\t\tSite Location:\t%3\$s\n\t\t\tLogin Name:\t\t%4\$s\n\t\t\tPassword:\t\t%5\$s\n\t\t"] = "\n\t\t\tHallo %1\$s,\n\t\t\t\tdanke für Deine Registrierung auf %2\$s. Dein Account muss noch vom Admin des Knotens freigeschaltet werden.\n\n\t\t\tDeine Zugangsdaten lauten wie folgt:\n\n\t\t\tSeitenadresse:\t%3\$s\n\t\t\tAnmeldename:\t\t%4\$s\n\t\t\tPasswort:\t\t%5\$s\n\t\t";
+$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Your account is pending for approval by the administrator.\n\n\t\t\tYour login details are as follows:\n\n\t\t\tSite Location:\t%3\$s\n\t\t\tLogin Name:\t\t%4\$s\n\t\t\tPassword:\t\t%5\$s\n\t\t"] = "\n\t\t\tHallo %1\$s,\n\t\t\t\tdanke für deine Registrierung auf %2\$s. Dein Account muss noch vom Admin des Knotens freigeschaltet werden.\n\n\t\t\tDeine Zugangsdaten lauten wie folgt:\n\n\t\t\tSeitenadresse:\t%3\$s\n\t\t\tAnmeldename:\t\t%4\$s\n\t\t\tPasswort:\t\t%5\$s\n\t\t";
 $a->strings["Registration at %s"] = "Registrierung als %s";
-$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Your account has been created.\n\t\t"] = "\nHallo %1\$s,\n\ndanke für Deine Registrierung auf %2\$s. Dein Account wurde eingerichtet.";
-$a->strings["\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%3\$s\n\t\t\tLogin Name:\t\t%1\$s\n\t\t\tPassword:\t\t%5\$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %3\$s/removeme\n\n\t\t\tThank you and welcome to %2\$s."] = "\nDie Anmelde-Details sind die folgenden:\n\tAdresse der Seite:\t%3\$s\n\tBenutzernamename:\t%1\$s\n\tPasswort:\t%5\$s\n\nDu kannst Dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald Du Dich\nangemeldet hast.\n\nBitte nimm Dir ein paar Minuten um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst Du ja auch einige Informationen Ã¼ber Dich in Deinem\nProfil veröffentlichen, damit andere Leute Dich einfacher finden können.\nBearbeite hierfür einfach Dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen Dir, Deinen kompletten Namen anzugeben und ein zu Dir\npassendes Profilbild zu wählen, damit Dich alte Bekannte wieder finden.\nAußerdem ist es nützlich, wenn Du auf Deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die Deine Interessen teilen.\n\nWir respektieren Deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn Du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %3\$s/removeme jederzeit tun.\n\nDanke für Deine Aufmerksamkeit und willkommen auf %2\$s.";
-$a->strings["Sharing notification from Diaspora network"] = "Freigabe-Benachrichtigung von Diaspora";
-$a->strings["Attachments:"] = "Anhänge:";
-$a->strings["%s's timeline"] = "Timeline von %s";
-$a->strings["%s's posts"] = "Beiträge von %s";
-$a->strings["%s's comments"] = "Kommentare von %s";
-$a->strings["%s is now following %s."] = "%s folgt nun %s";
-$a->strings["following"] = "folgen";
-$a->strings["%s stopped following %s."] = "%s hat aufgehört %s zu folgen";
-$a->strings["stopped following"] = "wird nicht mehr gefolgt";
-$a->strings["(no subject)"] = "(kein Betreff)";
+$a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Your account has been created.\n\t\t"] = "\nHallo %1\$s,\n\ndanke für deine Registrierung auf %2\$s. Dein Account wurde eingerichtet.";
+$a->strings["\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%3\$s\n\t\t\tLogin Name:\t\t%1\$s\n\t\t\tPassword:\t\t%5\$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %3\$s/removeme\n\n\t\t\tThank you and welcome to %2\$s."] = "\nDie Anmelde-Details sind die folgenden:\n\tAdresse der Seite:\t%3\$s\n\tBenutzernamename:\t%1\$s\n\tPasswort:\t%5\$s\n\nDu kannst dein Passwort unter \"Einstellungen\" Ã¤ndern, sobald du dich\nangemeldet hast.\n\nBitte nimm dir ein paar Minuten, um die anderen Einstellungen auf dieser\nSeite zu kontrollieren.\n\nEventuell magst du ja auch einige Informationen Ã¼ber dich in deinem\nProfil veröffentlichen, damit andere Leute dich einfacher finden können.\nBearbeite hierfür einfach dein Standard-Profil (über die Profil-Seite).\n\nWir empfehlen dir, deinen kompletten Namen anzugeben und ein zu dir\npassendes Profilbild zu wählen, damit dich alte Bekannte wiederfinden.\nAußerdem ist es nützlich, wenn du auf deinem Profil Schlüsselwörter\nangibst. Das erleichtert es, Leute zu finden, die deine Interessen teilen.\n\nWir respektieren deine Privatsphäre - keine dieser Angaben ist nötig.\nWenn du neu im Netzwerk bist und noch niemanden kennst, dann können sie\nallerdings dabei helfen, neue und interessante Kontakte zu knüpfen.\n\nSolltest du dein Nutzerkonto löschen wollen, kannst du dies unter %3\$s/removeme jederzeit tun.\n\nDanke für deine Aufmerksamkeit und willkommen auf %2\$s.";
 $a->strings["Item was not found."] = "Beitrag konnte nicht gefunden werden.";
 $a->strings["%d contact edited."] = [
        0 => "%d Kontakt bearbeitet.",
@@ -2082,7 +2015,7 @@ $a->strings["Do you really want to delete this contact?"] = "Möchtest Du wirkli
 $a->strings["Contact has been removed."] = "Kontakt wurde entfernt.";
 $a->strings["You are mutual friends with %s"] = "Du hast mit %s eine beidseitige Freundschaft";
 $a->strings["You are sharing with %s"] = "Du teilst mit %s";
-$a->strings["%s is sharing with you"] = "%s teilt mit Dir";
+$a->strings["%s is sharing with you"] = "%s teilt mit dir";
 $a->strings["Private communications are not available for this contact."] = "Private Kommunikation ist für diesen Kontakt nicht verfügbar.";
 $a->strings["Never"] = "Niemals";
 $a->strings["(Update was successful)"] = "(Aktualisierung war erfolgreich)";
@@ -2091,20 +2024,20 @@ $a->strings["Suggest friends"] = "Kontakte vorschlagen";
 $a->strings["Network type: %s"] = "Netzwerktyp: %s";
 $a->strings["Communications lost with this contact!"] = "Verbindungen mit diesem Kontakt verloren!";
 $a->strings["Fetch further information for feeds"] = "Weitere Informationen zu Feeds holen";
-$a->strings["Fetch information like preview pictures, title and teaser from the feed item. You can activate this if the feed doesn't contain much text. Keywords are taken from the meta header in the feed item and are posted as hash tags."] = "Zusätzliche Informationen wie Vorschaubilder, Titel und Zusammenfassungen vom Feed-Eintrag laden. Du kannst diese Option aktivieren, wenn der Feed nicht all zu viel Text beinhaltet. Schlagwörter werden auf den Meta-Informationen des Feed-Headers bezogen und als Hash-Tags verwendet.";
+$a->strings["Fetch information like preview pictures, title and teaser from the feed item. You can activate this if the feed doesn't contain much text. Keywords are taken from the meta header in the feed item and are posted as hash tags."] = "Zusätzliche Informationen wie Vorschaubilder, Titel und Zusammenfassungen vom Feed-Eintrag laden. Du kannst diese Option aktivieren, wenn der Feed nicht allzu viel Text beinhaltet. Schlagwörter werden aus den Meta-Informationen des Feed-Headers bezogen und als Hash-Tags verwendet.";
 $a->strings["Fetch information"] = "Beziehe Information";
 $a->strings["Fetch keywords"] = "Schlüsselwörter abrufen";
 $a->strings["Fetch information and keywords"] = "Beziehe Information und Schlüsselworte";
 $a->strings["Profile Visibility"] = "Profil-Sichtbarkeit";
-$a->strings["Contact Information / Notes"] = "Kontakt Informationen / Notizen";
+$a->strings["Contact Information / Notes"] = "Kontakt-Informationen / -Notizen";
 $a->strings["Contact Settings"] = "Kontakteinstellungen";
 $a->strings["Contact"] = "Kontakt";
-$a->strings["Please choose the profile you would like to display to %s when viewing your profile securely."] = "Bitte wähle eines Deiner Profile das angezeigt werden soll, wenn %s Dein Profil aufruft.";
+$a->strings["Please choose the profile you would like to display to %s when viewing your profile securely."] = "Bitte wähle eines deiner Profile das angezeigt werden soll, wenn %s dein Profil aufruft.";
 $a->strings["Their personal note"] = "Die persönliche Mitteilung";
 $a->strings["Edit contact notes"] = "Notizen zum Kontakt bearbeiten";
 $a->strings["Block/Unblock contact"] = "Kontakt blockieren/freischalten";
 $a->strings["Ignore contact"] = "Ignoriere den Kontakt";
-$a->strings["Repair URL settings"] = "URL Einstellungen reparieren";
+$a->strings["Repair URL settings"] = "URL-Einstellungen reparieren";
 $a->strings["View conversations"] = "Unterhaltungen anzeigen";
 $a->strings["Last update:"] = "Letzte Aktualisierung: ";
 $a->strings["Update public posts"] = "Öffentliche Beiträge aktualisieren";
@@ -2117,7 +2050,7 @@ $a->strings["Awaiting connection acknowledge"] = "Bedarf der Bestätigung des Ko
 $a->strings["Replies/likes to your public posts <strong>may</strong> still be visible"] = "Antworten/Likes auf deine Ã¶ffentlichen Beiträge <strong>könnten</strong> weiterhin sichtbar sein";
 $a->strings["Notification for new posts"] = "Benachrichtigung bei neuen Beiträgen";
 $a->strings["Send a notification of every new post of this contact"] = "Sende eine Benachrichtigung, wann immer dieser Kontakt einen neuen Beitrag schreibt.";
-$a->strings["Blacklisted keywords"] = "Blacklistete Schlüsselworte ";
+$a->strings["Blacklisted keywords"] = "Unterdrückte Schlüsselworte ";
 $a->strings["Comma separated list of keywords that should not be converted to hashtags, when \"Fetch information and keywords\" is selected"] = "Komma-Separierte Liste mit Schlüsselworten, die nicht in Hashtags konvertiert werden, wenn \"Beziehe Information und Schlüsselworte\" aktiviert wurde";
 $a->strings["Actions"] = "Aktionen";
 $a->strings["Suggestions"] = "Kontaktvorschläge";
@@ -2156,58 +2089,61 @@ $a->strings["System check"] = "Systemtest";
 $a->strings["Check again"] = "Noch einmal testen";
 $a->strings["Database connection"] = "Datenbankverbindung";
 $a->strings["In order to install Friendica we need to know how to connect to your database."] = "Um Friendica installieren zu können, müssen wir wissen, wie wir mit Deiner Datenbank Kontakt aufnehmen können.";
-$a->strings["Please contact your hosting provider or site administrator if you have questions about these settings."] = "Bitte kontaktiere den Hosting Provider oder den Administrator der Seite, falls Du Fragen zu diesen Einstellungen haben solltest.";
-$a->strings["The database you specify below should already exist. If it does not, please create it before continuing."] = "Die Datenbank, die Du unten angibst, sollte bereits existieren. Ist dies noch nicht der Fall, erzeuge sie bitte bevor Du mit der Installation fortfährst.";
+$a->strings["Please contact your hosting provider or site administrator if you have questions about these settings."] = "Bitte kontaktiere den Hosting-Provider oder den Administrator der Seite, falls du Fragen zu diesen Einstellungen haben solltest.";
+$a->strings["The database you specify below should already exist. If it does not, please create it before continuing."] = "Die Datenbank, die du unten angibst, sollte bereits existieren. Ist dies noch nicht der Fall, erzeuge sie bitte, bevor du mit der Installation fortfährst.";
 $a->strings["Database Server Name"] = "Datenbank-Server";
 $a->strings["Database Login Name"] = "Datenbank-Nutzer";
 $a->strings["Database Login Password"] = "Datenbank-Passwort";
 $a->strings["For security reasons the password must not be empty"] = "Aus Sicherheitsgründen darf das Passwort nicht leer sein.";
 $a->strings["Database Name"] = "Datenbank-Name";
 $a->strings["Site administrator email address"] = "E-Mail-Adresse des Administrators";
-$a->strings["Your account email address must match this in order to use the web admin panel."] = "Die E-Mail-Adresse, die in Deinem Friendica-Account eingetragen ist, muss mit dieser Adresse Ã¼bereinstimmen, damit Du das Admin-Panel benutzen kannst.";
+$a->strings["Your account email address must match this in order to use the web admin panel."] = "Die E-Mail-Adresse, die in Deinem Friendica-Account eingetragen ist, muss mit dieser Adresse Ã¼bereinstimmen, damit du das Admin-Panel benutzen kannst.";
 $a->strings["Please select a default timezone for your website"] = "Bitte wähle die Standardzeitzone Deiner Webseite";
 $a->strings["Site settings"] = "Server-Einstellungen";
 $a->strings["System Language:"] = "Systemsprache:";
 $a->strings["Set the default language for your Friendica installation interface and to send emails."] = "Wähle die Standardsprache für deine Friendica-Installations-Oberfläche und den E-Mail-Versand";
-$a->strings["Your Friendica site database has been installed."] = "Die Datenbank Deiner Friendicaseite wurde installiert.";
+$a->strings["Your Friendica site database has been installed."] = "Die Datenbank Deiner Friendica-Seite wurde installiert.";
 $a->strings["Installation finished"] = "Installation abgeschlossen";
 $a->strings["<h1>What next</h1>"] = "<h1>Wie geht es weiter?</h1>";
-$a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the worker."] = "Wichtig: Du musst [manuell] einen Cronjob (o.ä.) für den Worker einrichten.";
-$a->strings["Go to your new Friendica node <a href=\"%s/register\">registration page</a> and register as new user. Remember to use the same email you have entered as administrator email. This will allow you to enter the site admin panel."] = "Du solltest nun die Seite zur <a href=\"%s/register\">Nutzerregistrierung</a> deiner neuen Friendica Instanz besuchen und einen neuen Nutzer einrichten. Bitte denke daran die selbe E-Mail Adresse anzugeben, die du auch als Administrator E-Mail angegeben hast, damit du das Admin-Panel verwenden kannst.";
+$a->strings["IMPORTANT: You will need to [manually] setup a scheduled task for the worker."] = "Wichtig: du musst [manuell] einen Cronjob (o.ä.) für den Worker einrichten.";
+$a->strings["Go to your new Friendica node <a href=\"%s/register\">registration page</a> and register as new user. Remember to use the same email you have entered as administrator email. This will allow you to enter the site admin panel."] = "Du solltest nun die Seite zur <a href=\"%s/register\">Nutzerregistrierung</a> deiner neuen Friendica Instanz besuchen und einen neuen Nutzer einrichten. Bitte denke daran, dieselbe E-Mail Adresse anzugeben, die du auch als Administrator-E-Mail angegeben hast, damit du das Admin-Panel verwenden kannst.";
 $a->strings["Item Guid"] = "Beitrags-Guid";
 $a->strings["Create a New Account"] = "Neues Konto erstellen";
 $a->strings["Password: "] = "Passwort: ";
 $a->strings["Remember me"] = "Anmeldedaten merken";
-$a->strings["Or login using OpenID: "] = "Oder melde Dich mit Deiner OpenID an: ";
+$a->strings["Or login using OpenID: "] = "Oder melde dich mit deiner OpenID an: ";
 $a->strings["Forgot your password?"] = "Passwort vergessen?";
-$a->strings["Website Terms of Service"] = "Website Nutzungsbedingungen";
+$a->strings["Website Terms of Service"] = "Website-Nutzungsbedingungen";
 $a->strings["terms of service"] = "Nutzungsbedingungen";
-$a->strings["Website Privacy Policy"] = "Website Datenschutzerklärung";
+$a->strings["Website Privacy Policy"] = "Website-Datenschutzerklärung";
 $a->strings["privacy policy"] = "Datenschutzerklärung";
 $a->strings["Logged out."] = "Abgemeldet.";
+$a->strings["%s's timeline"] = "Timeline von %s";
+$a->strings["%s's posts"] = "Beiträge von %s";
+$a->strings["%s's comments"] = "Kommentare von %s";
 $a->strings["Bad Request."] = "Ungültige Anfrage.";
 $a->strings["You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking \"Register\"."] = "Du kannst dieses Formular auch (optional) mit deiner OpenID ausfüllen, indem du deine OpenID angibst und 'Registrieren' klickst.";
-$a->strings["If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."] = "Wenn Du nicht mit OpenID vertraut bist, lass dieses Feld bitte leer und fülle die restlichen Felder aus.";
+$a->strings["If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."] = "Wenn du nicht mit OpenID vertraut bist, lass dieses Feld bitte leer und fülle die restlichen Felder aus.";
 $a->strings["Your OpenID (optional): "] = "Deine OpenID (optional): ";
-$a->strings["Include your profile in member directory?"] = "Soll Dein Profil im Nutzerverzeichnis angezeigt werden?";
+$a->strings["Include your profile in member directory?"] = "Soll dein Profil im Nutzerverzeichnis angezeigt werden?";
 $a->strings["Note for the admin"] = "Hinweis für den Admin";
 $a->strings["Leave a message for the admin, why you want to join this node"] = "Hinterlasse eine Nachricht an den Admin, warum du einen Account auf dieser Instanz haben möchtest.";
 $a->strings["Membership on this site is by invitation only."] = "Mitgliedschaft auf dieser Seite ist nur nach vorheriger Einladung möglich.";
 $a->strings["Your invitation code: "] = "Dein Ein­la­dungs­code";
 $a->strings["Your Full Name (e.g. Joe Smith, real or real-looking): "] = "Dein vollständiger Name (z.B. Hans Mustermann, echt oder echt erscheinend):";
 $a->strings["Your Email Address: (Initial information will be send there, so this has to be an existing address.)"] = "Deine E-Mail Adresse (Informationen zur Registrierung werden an diese Adresse gesendet, darum muss sie existieren.)";
-$a->strings["Leave empty for an auto generated password."] = "Leer lassen um das Passwort automatisch zu generieren.";
-$a->strings["Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be \"<strong>nickname@%s</strong>\"."] = "Wähle einen Spitznamen für Dein Profil. Dieser muss mit einem Buchstaben beginnen. Die Adresse Deines Profils auf dieser Seite wird '<strong>spitzname@%s</strong>' sein.";
+$a->strings["Leave empty for an auto generated password."] = "Leer lassen, um das Passwort automatisch zu generieren.";
+$a->strings["Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be \"<strong>nickname@%s</strong>\"."] = "Wähle einen Spitznamen für dein Profil. Dieser muss mit einem Buchstaben beginnen. Die Adresse deines Profils auf dieser Seite wird '<strong>spitzname@%s</strong>' sein.";
 $a->strings["Choose a nickname: "] = "Spitznamen wählen: ";
-$a->strings["Import your profile to this friendica instance"] = "Importiere Dein Profil auf diese Friendica Instanz";
+$a->strings["Import your profile to this friendica instance"] = "Importiere dein Profil auf diese Friendica-Instanz";
 $a->strings["Note: This node explicitly contains adult content"] = "Hinweis: Dieser Knoten enthält explizit Inhalte für Erwachsene";
-$a->strings["Registration successful. Please check your email for further instructions."] = "Registrierung erfolgreich. Eine E-Mail mit weiteren Anweisungen wurde an Dich gesendet.";
-$a->strings["Failed to send email message. Here your accout details:<br> login: %s<br> password: %s<br><br>You can change your password after login."] = "Versenden der E-Mail fehlgeschlagen. Hier sind Deine Account Details:\n\nLogin: %s\nPasswort: %s\n\nDu kannst das Passwort nach dem Anmelden Ã¤ndern.";
+$a->strings["Registration successful. Please check your email for further instructions."] = "Registrierung erfolgreich. Eine E-Mail mit weiteren Anweisungen wurde an dich gesendet.";
+$a->strings["Failed to send email message. Here your accout details:<br> login: %s<br> password: %s<br><br>You can change your password after login."] = "Versenden der E-Mail fehlgeschlagen. Hier sind Deine Account-Details:\n\nLogin: %s\nPasswort: %s\n\nDu kannst das Passwort nach dem Anmelden Ã¤ndern.";
 $a->strings["Registration successful."] = "Registrierung erfolgreich.";
 $a->strings["Your registration can not be processed."] = "Deine Registrierung konnte nicht verarbeitet werden.";
 $a->strings["Your registration is pending approval by the site owner."] = "Deine Registrierung muss noch vom Betreiber der Seite freigegeben werden.";
 $a->strings["At the time of registration, and for providing communications between the user account and their contacts, the user has to provide a display name (pen name), an username (nickname) and a working email address. The names will be accessible on the profile page of the account by any visitor of the page, even if other profile details are not displayed. The email address will only be used to send the user notifications about interactions, but wont be visibly displayed. The listing of an account in the node's user directory or the global user directory is optional and can be controlled in the user settings, it is not necessary for communication."] = "Zum Zwecke der Registrierung und um die Kommunikation zwischen dem Nutzer und seinen Kontakten zu gewährleisten, muß der Nutzer einen Namen (auch Pseudonym) und einen Nutzernamen (Spitzname) sowie eine funktionierende E-Mail-Adresse angeben. Der Name ist auf der Profilseite für alle Nutzer sichtbar, auch wenn die Profildetails nicht angezeigt werden.\nDie E-Mail-Adresse wird nur zur Benachrichtigung des Nutzers verwendet, sie wird nirgends angezeigt. Die Anzeige des Nutzerkontos im Server-Verzeichnis bzw. dem weltweiten Verzeichnis erfolgt gemäß den Einstellungen des Nutzers, sie ist zur Kommunikation nicht zwingend notwendig.";
-$a->strings["This data is required for communication and is passed on to the nodes of the communication partners and is stored there. Users can enter additional private data that may be transmitted to the communication partners accounts."] = "Diese Daten sind für die Kommunikation notwendig und werden an die Knoten der Kommunikationspartner Ã¼bermittelt. und werden dort gespeichert Nutzer können weitere private Angaben machen, die ebenfalls an die verwendeten Server der Kommunikationspartner Ã¼bermittelt werden können.";
+$a->strings["This data is required for communication and is passed on to the nodes of the communication partners and is stored there. Users can enter additional private data that may be transmitted to the communication partners accounts."] = "Diese Daten sind für die Kommunikation notwendig und werden an die Knoten der Kommunikationspartner Ã¼bermittelt und dort gespeichert. Nutzer können weitere, private Angaben machen, die ebenfalls an die verwendeten Server der Kommunikationspartner Ã¼bermittelt werden können.";
 $a->strings["At any point in time a logged in user can export their account data from the <a href=\"%1\$s/settings/uexport\">account settings</a>. If the user wants to delete their account they can do so at <a href=\"%1\$s/removeme\">%1\$s/removeme</a>. The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners."] = "Angemeldete Nutzer können ihre Nutzerdaten jederzeit von den <a href=\"%1\$s/settings/uexport\">Kontoeinstellungen</a> aus exportieren. Wenn ein Nutzer wünscht das Nutzerkonto zu löschen, so ist dies jederzeit unter <a href=\"%1\$s/removeme\">%1\$s/removeme</a> möglich. Die Löschung des Nutzerkontos ist permanent. Die Löschung der Daten wird auch von den Knoten der Kommunikationspartner angefordert.";
 $a->strings["Privacy Statement"] = "Datenschutzerklärung";
 $a->strings["This entry was edited"] = "Dieser Beitrag wurde bearbeitet.";
@@ -2234,20 +2170,86 @@ $a->strings["to"] = "zu";
 $a->strings["via"] = "via";
 $a->strings["Wall-to-Wall"] = "Wall-to-Wall";
 $a->strings["via Wall-To-Wall:"] = "via Wall-To-Wall:";
+$a->strings["Reply to %s"] = "Antworte %s";
 $a->strings["Notifier task is pending"] = "Die Benachrichtigungsaufgabe ist ausstehend";
 $a->strings["Delivery to remote servers is pending"] = "Die Auslieferung an Remote-Server steht noch aus";
 $a->strings["Delivery to remote servers is underway"] = "Die Auslieferung an Remote-Server ist unterwegs";
 $a->strings["Delivery to remote servers is mostly done"] = "Die Zustellung an Remote-Server ist fast erledigt";
-$a->strings["Delivery to remote servers is done"] = "Die Zustellung an die Remote-Server ist erledigt.";
+$a->strings["Delivery to remote servers is done"] = "Die Zustellung an die Remote-Server ist erledigt";
 $a->strings["%d comment"] = [
        0 => "%d Kommentar",
        1 => "%d Kommentare",
 ];
-$a->strings["Delete this item?"] = "Diesen Beitrag löschen?";
-$a->strings["show fewer"] = "weniger anzeigen";
-$a->strings["toggle mobile"] = "mobile Ansicht umschalten";
-$a->strings["No system theme config value set."] = "Es wurde kein Konfigurationswert für das Systemweite Theme gesetzt.";
-$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "Das Sicherheitsmerkmal war nicht korrekt. Das passiert meistens wenn das Formular vor dem Absenden zu lange geöffnet war (länger als 3 Stunden).";
-$a->strings["Legacy module file not found: %s"] = "Legacy-Moduldatei nicht gefunden: %s";
+$a->strings["Show more"] = "Zeige mehr";
+$a->strings["Show fewer"] = "Zeige weniger";
+$a->strings["Sharing notification from Diaspora network"] = "Freigabe-Benachrichtigung von Diaspora";
+$a->strings["Attachments:"] = "Anhänge:";
+$a->strings["%s is now following %s."] = "%s folgt nun %s";
+$a->strings["following"] = "folgen";
+$a->strings["%s stopped following %s."] = "%s hat aufgehört %s, zu folgen";
+$a->strings["stopped following"] = "wird nicht mehr gefolgt";
+$a->strings["YYYY-MM-DD or MM-DD"] = "YYYY-MM-DD oder MM-DD";
+$a->strings["never"] = "nie";
+$a->strings["less than a second ago"] = "vor weniger als einer Sekunde";
+$a->strings["year"] = "Jahr";
+$a->strings["years"] = "Jahre";
+$a->strings["months"] = "Monate";
+$a->strings["weeks"] = "Wochen";
+$a->strings["days"] = "Tage";
+$a->strings["hour"] = "Stunde";
+$a->strings["hours"] = "Stunden";
+$a->strings["minute"] = "Minute";
+$a->strings["minutes"] = "Minuten";
+$a->strings["second"] = "Sekunde";
+$a->strings["seconds"] = "Sekunden";
+$a->strings["in %1\$d %2\$s"] = "in %1\$d %2\$s";
+$a->strings["%1\$d %2\$s ago"] = "vor %1\$d %2\$s";
+$a->strings["(no subject)"] = "(kein Betreff)";
 $a->strings["%s: Updating author-id and owner-id in item and thread table. "] = "%s: Aktualisiere die author-id und owner-id in der Thread Tabelle";
 $a->strings["%s: Updating post-type."] = "%s: Aktualisiere Beitrags-Typ";
+$a->strings["greenzero"] = "greenzero";
+$a->strings["purplezero"] = "purplezero";
+$a->strings["easterbunny"] = "easterbunny";
+$a->strings["darkzero"] = "darkzero";
+$a->strings["comix"] = "comix";
+$a->strings["slackr"] = "slackr";
+$a->strings["Variations"] = "Variationen";
+$a->strings["Custom"] = "Benutzerdefiniert";
+$a->strings["Note"] = "Hinweis";
+$a->strings["Check image permissions if all users are allowed to see the image"] = "Ãœberprüfe, dass alle Benutzer die Berechtigung haben dieses Bild anzusehen";
+$a->strings["Select color scheme"] = "Farbschema auswählen";
+$a->strings["Navigation bar background color"] = "Hintergrundfarbe der Navigationsleiste";
+$a->strings["Navigation bar icon color "] = "Icon Farbe in der Navigationsleiste";
+$a->strings["Link color"] = "Linkfarbe";
+$a->strings["Set the background color"] = "Hintergrundfarbe festlegen";
+$a->strings["Content background opacity"] = "Opazität des Hintergrunds von Beiträgen";
+$a->strings["Set the background image"] = "Hintergrundbild festlegen";
+$a->strings["Background image style"] = "Stil des Hintergrundbildes";
+$a->strings["Login page background image"] = "Hintergrundbild der Login-Seite";
+$a->strings["Login page background color"] = "Hintergrundfarbe der Login-Seite";
+$a->strings["Leave background image and color empty for theme defaults"] = "Wenn die Theme-Vorgaben verwendet werden sollen, lass bitte die Felder für die Hintergrundfarbe und das Hintergrundbild leer.";
+$a->strings["Top Banner"] = "Top Banner";
+$a->strings["Resize image to the width of the screen and show background color below on long pages."] = "Skaliere das Hintergrundbild so, dass es die Breite der Seite einnimmt, und fülle den Rest der Seite mit der Hintergrundfarbe bei langen Seiten.";
+$a->strings["Full screen"] = "Vollbildmodus";
+$a->strings["Resize image to fill entire screen, clipping either the right or the bottom."] = "Skaliere das Bild so, dass es den gesamten Bildschirm füllt. Hierfür wird entweder die Breite oder die Höhe des Bildes automatisch abgeschnitten.";
+$a->strings["Single row mosaic"] = "Mosaik in einer Zeile";
+$a->strings["Resize image to repeat it on a single row, either vertical or horizontal."] = "Skaliere das Bild so, dass es in einer einzelnen Reihe, entweder horizontal oder vertikal, wiederholt wird.";
+$a->strings["Mosaic"] = "Mosaik";
+$a->strings["Repeat image to fill the screen."] = "Wiederhole das Bild, um den Bildschirm zu füllen.";
+$a->strings["Guest"] = "Gast";
+$a->strings["Visitor"] = "Besucher";
+$a->strings["Alignment"] = "Ausrichtung";
+$a->strings["Left"] = "Links";
+$a->strings["Center"] = "Mitte";
+$a->strings["Color scheme"] = "Farbschema";
+$a->strings["Posts font size"] = "Schriftgröße in Beiträgen";
+$a->strings["Textareas font size"] = "Schriftgröße in Eingabefeldern";
+$a->strings["Comma separated list of helper forums"] = "Komma-separierte Liste der Helfer-Foren";
+$a->strings["Set style"] = "Stil auswählen";
+$a->strings["Community Pages"] = "Foren";
+$a->strings["Community Profiles"] = "Community-Profile";
+$a->strings["Help or @NewHere ?"] = "Hilfe oder @NewHere";
+$a->strings["Connect Services"] = "Verbinde Dienste";
+$a->strings["Find Friends"] = "Kontakte finden";
+$a->strings["Last users"] = "Letzte Nutzer";
+$a->strings["Quick Start"] = "Schnell-Start";
index 293c8977d1af5fae88c2de6d92409f5f874614fe..f33c5684b0a8a734e09c7015355c5ed4302de71b 100644 (file)
@@ -3,16 +3,16 @@
 # This file is distributed under the same license as the Friendica package.
 # 
 # Translators:
-# Andy H3 <andy@hubup.pro>, 2017-2018
-# Hypolite Petovan <hypolite@mrpetovan.com>, 2018
+# Andy H3 <andy@hubup.pro>, 2017-2019
+# Hypolite Petovan <hypolite@mrpetovan.com>, 2018-2019
 # R C <miqrogroove@gmail.com>, 2018
 msgid ""
 msgstr ""
 "Project-Id-Version: friendica\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-11-27 02:39-0500\n"
-"PO-Revision-Date: 2018-12-30 01:13+0000\n"
-"Last-Translator: fabrixxm <fabrix.xm@gmail.com>\n"
+"POT-Creation-Date: 2019-02-10 08:14+0100\n"
+"PO-Revision-Date: 2019-02-15 14:22+0000\n"
+"Last-Translator: Hypolite Petovan <hypolite@mrpetovan.com>\n"
 "Language-Team: English (United States) (http://www.transifex.com/Friendica/friendica/language/en_US/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -20,14 +20,14 @@ msgstr ""
 "Language: en_US\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
 
-#: include/api.php:1142
+#: include/api.php:1179
 #, php-format
 msgid "Daily posting limit of %d post reached. The post was rejected."
 msgid_plural "Daily posting limit of %d posts reached. The post was rejected."
 msgstr[0] "Daily posting limit of %d post reached. The post was rejected."
 msgstr[1] "Daily posting limit of %d posts reached. This post was rejected."
 
-#: include/api.php:1156
+#: include/api.php:1193
 #, php-format
 msgid "Weekly posting limit of %d post reached. The post was rejected."
 msgid_plural ""
@@ -35,707 +35,727 @@ msgid_plural ""
 msgstr[0] "Weekly posting limit of %d post reached. The post was rejected."
 msgstr[1] "Weekly posting limit of %d posts reached. This post was rejected."
 
-#: include/api.php:1170
+#: include/api.php:1207
 #, php-format
 msgid "Monthly posting limit of %d post reached. The post was rejected."
 msgstr "Monthly posting limit of %d posts reached. This post was rejected."
 
-#: include/api.php:4335 mod/photos.php:96 mod/photos.php:204
-#: mod/photos.php:737 mod/photos.php:1170 mod/photos.php:1187
-#: mod/photos.php:1680 mod/profile_photo.php:88 mod/profile_photo.php:97
-#: mod/profile_photo.php:106 mod/profile_photo.php:215
-#: mod/profile_photo.php:304 mod/profile_photo.php:314 src/Model/User.php:652
-#: src/Model/User.php:660 src/Model/User.php:668
+#: include/api.php:4578 mod/photos.php:93 mod/photos.php:201
+#: mod/photos.php:695 mod/photos.php:1126 mod/photos.php:1143
+#: mod/photos.php:1636 mod/profile_photo.php:85 mod/profile_photo.php:94
+#: mod/profile_photo.php:103 mod/profile_photo.php:217
+#: mod/profile_photo.php:305 mod/profile_photo.php:315 src/Model/User.php:735
+#: src/Model/User.php:743 src/Model/User.php:751
 msgid "Profile Photos"
 msgstr "Profile photos"
 
-#: include/conversation.php:156 include/conversation.php:292
-#: src/Model/Item.php:3263
+#: include/conversation.php:160 include/conversation.php:297
+#: src/Model/Item.php:3265
 msgid "event"
 msgstr "event"
 
-#: include/conversation.php:159 include/conversation.php:169
-#: include/conversation.php:295 include/conversation.php:304
-#: mod/subthread.php:90 mod/tagger.php:72
+#: include/conversation.php:163 include/conversation.php:173
+#: include/conversation.php:300 include/conversation.php:309
+#: mod/subthread.php:88 mod/tagger.php:70
 msgid "status"
 msgstr "status"
 
-#: include/conversation.php:164 include/conversation.php:300
-#: mod/subthread.php:90 mod/tagger.php:72 src/Model/Item.php:3265
+#: include/conversation.php:168 include/conversation.php:305
+#: mod/subthread.php:88 mod/tagger.php:70 src/Model/Item.php:3267
 msgid "photo"
 msgstr "photo"
 
-#: include/conversation.php:176
+#: include/conversation.php:181
 #, php-format
 msgid "%1$s likes %2$s's %3$s"
 msgstr "%1$s likes %2$s's %3$s"
 
-#: include/conversation.php:178
+#: include/conversation.php:183
 #, php-format
 msgid "%1$s doesn't like %2$s's %3$s"
 msgstr "%1$s doesn't like %2$s's %3$s"
 
-#: include/conversation.php:180
+#: include/conversation.php:185
 #, php-format
 msgid "%1$s attends %2$s's %3$s"
 msgstr "%1$s goes to %2$s's %3$s"
 
-#: include/conversation.php:182
+#: include/conversation.php:187
 #, php-format
 msgid "%1$s doesn't attend %2$s's %3$s"
 msgstr "%1$s won’t attend %2$s's %3$s"
 
-#: include/conversation.php:184
+#: include/conversation.php:189
 #, php-format
 msgid "%1$s attends maybe %2$s's %3$s"
 msgstr "%1$s might go to %2$s's %3$s"
 
-#: include/conversation.php:219
+#: include/conversation.php:224
 #, php-format
 msgid "%1$s is now friends with %2$s"
 msgstr "%1$s is now friends with %2$s"
 
-#: include/conversation.php:260
+#: include/conversation.php:265
 #, php-format
 msgid "%1$s poked %2$s"
 msgstr "%1$s poked %2$s"
 
-#: include/conversation.php:314 mod/tagger.php:110
+#: include/conversation.php:319 mod/tagger.php:108
 #, php-format
 msgid "%1$s tagged %2$s's %3$s with %4$s"
 msgstr "%1$s tagged %2$s's %3$s with %4$s"
 
-#: include/conversation.php:336
+#: include/conversation.php:341
 msgid "post/item"
 msgstr "Post/Item"
 
-#: include/conversation.php:337
+#: include/conversation.php:342
 #, php-format
 msgid "%1$s marked %2$s's %3$s as favorite"
 msgstr "%1$s marked %2$s's %3$s as favorite"
 
-#: include/conversation.php:551 mod/photos.php:1511 mod/profiles.php:356
+#: include/conversation.php:568 mod/photos.php:1467 mod/profiles.php:352
 msgid "Likes"
 msgstr "Likes"
 
-#: include/conversation.php:551 mod/photos.php:1511 mod/profiles.php:360
+#: include/conversation.php:568 mod/photos.php:1467 mod/profiles.php:355
 msgid "Dislikes"
 msgstr "Dislikes"
 
-#: include/conversation.php:552 include/conversation.php:1483
-#: mod/photos.php:1512
+#: include/conversation.php:569 include/conversation.php:1506
+#: mod/photos.php:1468
 msgid "Attending"
 msgid_plural "Attending"
 msgstr[0] "Attending"
 msgstr[1] "Attending"
 
-#: include/conversation.php:552 mod/photos.php:1512
+#: include/conversation.php:569 mod/photos.php:1468
 msgid "Not attending"
 msgstr "Not attending"
 
-#: include/conversation.php:552 mod/photos.php:1512
+#: include/conversation.php:569 mod/photos.php:1468
 msgid "Might attend"
 msgstr "Might attend"
 
-#: include/conversation.php:632 mod/photos.php:1568 src/Object/Post.php:206
+#: include/conversation.php:649 mod/photos.php:1524 src/Object/Post.php:207
 msgid "Select"
 msgstr "Select"
 
-#: include/conversation.php:633 mod/admin.php:1971 mod/photos.php:1569
-#: mod/settings.php:741 src/Module/Contact.php:832 src/Module/Contact.php:1107
+#: include/conversation.php:650 mod/admin.php:2072 mod/photos.php:1525
+#: mod/settings.php:726 src/Module/Contact.php:827 src/Module/Contact.php:1102
 msgid "Delete"
 msgstr "Delete"
 
-#: include/conversation.php:667 src/Object/Post.php:379
-#: src/Object/Post.php:380
+#: include/conversation.php:684 src/Object/Post.php:380
+#: src/Object/Post.php:381
 #, php-format
 msgid "View %s's profile @ %s"
 msgstr "View %s's profile @ %s"
 
-#: include/conversation.php:679 src/Object/Post.php:367
+#: include/conversation.php:696 src/Object/Post.php:368
 msgid "Categories:"
 msgstr "Categories:"
 
-#: include/conversation.php:680 src/Object/Post.php:368
+#: include/conversation.php:697 src/Object/Post.php:369
 msgid "Filed under:"
 msgstr "Filed under:"
 
-#: include/conversation.php:687 src/Object/Post.php:393
+#: include/conversation.php:704 src/Object/Post.php:394
 #, php-format
 msgid "%s from %s"
 msgstr "%s from %s"
 
-#: include/conversation.php:702
+#: include/conversation.php:719
 msgid "View in context"
 msgstr "View in context"
 
-#: include/conversation.php:704 include/conversation.php:1151
-#: mod/editpost.php:109 mod/message.php:264 mod/message.php:427
-#: mod/photos.php:1484 mod/wallmessage.php:141 src/Object/Post.php:418
+#: include/conversation.php:721 include/conversation.php:1172
+#: mod/editpost.php:88 mod/message.php:260 mod/message.php:442
+#: mod/photos.php:1440 mod/wallmessage.php:141 src/Object/Post.php:420
 msgid "Please wait"
 msgstr "Please wait"
 
-#: include/conversation.php:768
+#: include/conversation.php:785
 msgid "remove"
 msgstr "Remove"
 
-#: include/conversation.php:772
+#: include/conversation.php:789
 msgid "Delete Selected Items"
 msgstr "Delete selected items"
 
-#: include/conversation.php:872 view/theme/frio/theme.php:369
+#: include/conversation.php:893 view/theme/frio/theme.php:358
 msgid "Follow Thread"
 msgstr "Follow thread"
 
-#: include/conversation.php:873 src/Model/Contact.php:950
+#: include/conversation.php:894 src/Model/Contact.php:1032
 msgid "View Status"
 msgstr "View status"
 
-#: include/conversation.php:874 include/conversation.php:890
-#: mod/allfriends.php:76 mod/directory.php:167 mod/dirfind.php:228
-#: mod/match.php:91 mod/suggest.php:86 src/Model/Contact.php:890
-#: src/Model/Contact.php:943 src/Model/Contact.php:951
+#: include/conversation.php:895 include/conversation.php:911
+#: mod/allfriends.php:72 mod/directory.php:167 mod/dirfind.php:226
+#: mod/match.php:87 mod/suggest.php:87 src/Model/Contact.php:972
+#: src/Model/Contact.php:1025 src/Model/Contact.php:1033
 msgid "View Profile"
 msgstr "View profile"
 
-#: include/conversation.php:875 src/Model/Contact.php:952
+#: include/conversation.php:896 src/Model/Contact.php:1034
 msgid "View Photos"
 msgstr "View photos"
 
-#: include/conversation.php:876 src/Model/Contact.php:944
-#: src/Model/Contact.php:953
+#: include/conversation.php:897 src/Model/Contact.php:1026
+#: src/Model/Contact.php:1035
 msgid "Network Posts"
 msgstr "Network posts"
 
-#: include/conversation.php:877 src/Model/Contact.php:945
-#: src/Model/Contact.php:954
+#: include/conversation.php:898 src/Model/Contact.php:1027
+#: src/Model/Contact.php:1036
 msgid "View Contact"
 msgstr "View contact"
 
-#: include/conversation.php:878 src/Model/Contact.php:956
+#: include/conversation.php:899 src/Model/Contact.php:1038
 msgid "Send PM"
 msgstr "Send PM"
 
-#: include/conversation.php:882 src/Model/Contact.php:957
+#: include/conversation.php:903 src/Model/Contact.php:1039
 msgid "Poke"
 msgstr "Poke"
 
-#: include/conversation.php:887 mod/allfriends.php:77 mod/dirfind.php:229
-#: mod/follow.php:147 mod/match.php:92 mod/suggest.php:87
-#: src/Content/Widget.php:65 src/Model/Contact.php:946
-#: src/Module/Contact.php:580 view/theme/vier/theme.php:201
+#: include/conversation.php:908 mod/allfriends.php:73 mod/dirfind.php:227
+#: mod/follow.php:147 mod/match.php:88 mod/suggest.php:88
+#: view/theme/vier/theme.php:201 src/Content/Widget.php:63
+#: src/Model/Contact.php:1028 src/Module/Contact.php:574
 msgid "Connect/Follow"
 msgstr "Connect/Follow"
 
-#: include/conversation.php:1005
+#: include/conversation.php:1030
 #, php-format
 msgid "%s likes this."
 msgstr "%s likes this."
 
-#: include/conversation.php:1008
+#: include/conversation.php:1033
 #, php-format
 msgid "%s doesn't like this."
 msgstr "%s doesn't like this."
 
-#: include/conversation.php:1011
+#: include/conversation.php:1036
 #, php-format
 msgid "%s attends."
 msgstr "%s attends."
 
-#: include/conversation.php:1014
+#: include/conversation.php:1039
 #, php-format
 msgid "%s doesn't attend."
 msgstr "%s won't attend."
 
-#: include/conversation.php:1017
+#: include/conversation.php:1042
 #, php-format
 msgid "%s attends maybe."
 msgstr "%s might attend."
 
-#: include/conversation.php:1028
+#: include/conversation.php:1050
 msgid "and"
 msgstr "and"
 
-#: include/conversation.php:1034
+#: include/conversation.php:1056
 #, php-format
 msgid "and %d other people"
 msgstr "and %d other people"
 
-#: include/conversation.php:1043
+#: include/conversation.php:1064
 #, php-format
 msgid "<span  %1$s>%2$d people</span> like this"
 msgstr "<span  %1$s>%2$d people</span> like this"
 
-#: include/conversation.php:1044
+#: include/conversation.php:1065
 #, php-format
 msgid "%s like this."
 msgstr "%s like this."
 
-#: include/conversation.php:1047
+#: include/conversation.php:1068
 #, php-format
 msgid "<span  %1$s>%2$d people</span> don't like this"
 msgstr "<span  %1$s>%2$d people</span> don't like this"
 
-#: include/conversation.php:1048
+#: include/conversation.php:1069
 #, php-format
 msgid "%s don't like this."
 msgstr "%s don't like this."
 
-#: include/conversation.php:1051
+#: include/conversation.php:1072
 #, php-format
 msgid "<span  %1$s>%2$d people</span> attend"
 msgstr "<span  %1$s>%2$d people</span> attend"
 
-#: include/conversation.php:1052
+#: include/conversation.php:1073
 #, php-format
 msgid "%s attend."
 msgstr "%s attend."
 
-#: include/conversation.php:1055
+#: include/conversation.php:1076
 #, php-format
 msgid "<span  %1$s>%2$d people</span> don't attend"
 msgstr "<span  %1$s>%2$d people</span> won't attend"
 
-#: include/conversation.php:1056
+#: include/conversation.php:1077
 #, php-format
 msgid "%s don't attend."
 msgstr "%s won't attend."
 
-#: include/conversation.php:1059
+#: include/conversation.php:1080
 #, php-format
 msgid "<span  %1$s>%2$d people</span> attend maybe"
 msgstr "<span  %1$s>%2$d people</span> might attend"
 
-#: include/conversation.php:1060
+#: include/conversation.php:1081
 #, php-format
 msgid "%s attend maybe."
 msgstr "%s may be attending."
 
-#: include/conversation.php:1090
+#: include/conversation.php:1111
 msgid "Visible to <strong>everybody</strong>"
 msgstr "Visible to <strong>everybody</strong>"
 
-#: include/conversation.php:1091 src/Object/Post.php:822
+#: include/conversation.php:1112 src/Object/Post.php:882
 msgid "Please enter a image/video/audio/webpage URL:"
 msgstr ""
 
-#: include/conversation.php:1092
+#: include/conversation.php:1113
 msgid "Tag term:"
 msgstr "Tag term:"
 
-#: include/conversation.php:1093 mod/filer.php:37
+#: include/conversation.php:1114 mod/filer.php:35
 msgid "Save to Folder:"
 msgstr "Save to folder:"
 
-#: include/conversation.php:1094
+#: include/conversation.php:1115
 msgid "Where are you right now?"
 msgstr "Where are you right now?"
 
-#: include/conversation.php:1095
+#: include/conversation.php:1116
 msgid "Delete item(s)?"
 msgstr "Delete item(s)?"
 
-#: include/conversation.php:1127
+#: include/conversation.php:1148
 msgid "New Post"
 msgstr "New post"
 
-#: include/conversation.php:1130
+#: include/conversation.php:1151
 msgid "Share"
 msgstr "Share"
 
-#: include/conversation.php:1131 mod/editpost.php:95 mod/message.php:262
-#: mod/message.php:424 mod/wallmessage.php:139
+#: include/conversation.php:1152 mod/editpost.php:74 mod/message.php:258
+#: mod/message.php:439 mod/wallmessage.php:139
 msgid "Upload photo"
 msgstr "Upload photo"
 
-#: include/conversation.php:1132 mod/editpost.php:96
+#: include/conversation.php:1153 mod/editpost.php:75
 msgid "upload photo"
 msgstr "upload photo"
 
-#: include/conversation.php:1133 mod/editpost.php:97
+#: include/conversation.php:1154 mod/editpost.php:76
 msgid "Attach file"
 msgstr "Attach file"
 
-#: include/conversation.php:1134 mod/editpost.php:98
+#: include/conversation.php:1155 mod/editpost.php:77
 msgid "attach file"
 msgstr "attach file"
 
-#: include/conversation.php:1135 src/Object/Post.php:814
+#: include/conversation.php:1156 src/Object/Post.php:874
 msgid "Bold"
 msgstr "Bold"
 
-#: include/conversation.php:1136 src/Object/Post.php:815
+#: include/conversation.php:1157 src/Object/Post.php:875
 msgid "Italic"
 msgstr "Italic"
 
-#: include/conversation.php:1137 src/Object/Post.php:816
+#: include/conversation.php:1158 src/Object/Post.php:876
 msgid "Underline"
 msgstr "Underline"
 
-#: include/conversation.php:1138 src/Object/Post.php:817
+#: include/conversation.php:1159 src/Object/Post.php:877
 msgid "Quote"
 msgstr "Quote"
 
-#: include/conversation.php:1139 src/Object/Post.php:818
+#: include/conversation.php:1160 src/Object/Post.php:878
 msgid "Code"
 msgstr "Code"
 
-#: include/conversation.php:1140 src/Object/Post.php:819
+#: include/conversation.php:1161 src/Object/Post.php:879
 msgid "Image"
 msgstr "Image"
 
-#: include/conversation.php:1141 src/Object/Post.php:820
+#: include/conversation.php:1162 src/Object/Post.php:880
 msgid "Link"
 msgstr "Link"
 
-#: include/conversation.php:1142 src/Object/Post.php:821
+#: include/conversation.php:1163 src/Object/Post.php:881
 msgid "Link or Media"
 msgstr ""
 
-#: include/conversation.php:1143 mod/editpost.php:105
+#: include/conversation.php:1164 mod/editpost.php:84
 msgid "Set your location"
 msgstr "Set your location"
 
-#: include/conversation.php:1144 mod/editpost.php:106
+#: include/conversation.php:1165 mod/editpost.php:85
 msgid "set location"
 msgstr "set location"
 
-#: include/conversation.php:1145 mod/editpost.php:107
+#: include/conversation.php:1166 mod/editpost.php:86
 msgid "Clear browser location"
 msgstr "Clear browser location"
 
-#: include/conversation.php:1146 mod/editpost.php:108
+#: include/conversation.php:1167 mod/editpost.php:87
 msgid "clear location"
 msgstr "clear location"
 
-#: include/conversation.php:1148 mod/editpost.php:123
+#: include/conversation.php:1169 mod/editpost.php:102
 msgid "Set title"
 msgstr "Set title"
 
-#: include/conversation.php:1150 mod/editpost.php:125
+#: include/conversation.php:1171 mod/editpost.php:104
 msgid "Categories (comma-separated list)"
 msgstr "Categories (comma-separated list)"
 
-#: include/conversation.php:1152 mod/editpost.php:110
+#: include/conversation.php:1173 mod/editpost.php:89
 msgid "Permission settings"
 msgstr "Permission settings"
 
-#: include/conversation.php:1153 mod/editpost.php:140
+#: include/conversation.php:1174 mod/editpost.php:119
 msgid "permissions"
 msgstr "permissions"
 
-#: include/conversation.php:1162 mod/editpost.php:120
+#: include/conversation.php:1183 mod/editpost.php:99
 msgid "Public post"
 msgstr "Public post"
 
-#: include/conversation.php:1166 mod/editpost.php:131 mod/events.php:557
-#: mod/photos.php:1502 mod/photos.php:1541 mod/photos.php:1601
-#: src/Object/Post.php:823
+#: include/conversation.php:1187 mod/editpost.php:110 mod/events.php:551
+#: mod/photos.php:1458 mod/photos.php:1497 mod/photos.php:1557
+#: src/Object/Post.php:883
 msgid "Preview"
 msgstr "Preview"
 
-#: include/conversation.php:1170 include/items.php:402
-#: mod/dfrn_request.php:658 mod/editpost.php:134 mod/fbrowser.php:105
-#: mod/fbrowser.php:136 mod/follow.php:165 mod/message.php:155
-#: mod/photos.php:260 mod/photos.php:332 mod/settings.php:681
-#: mod/settings.php:707 mod/suggest.php:44 mod/tagrm.php:20 mod/tagrm.php:113
-#: mod/unfollow.php:134 mod/videos.php:142 src/Module/Contact.php:452
+#: include/conversation.php:1191 include/items.php:396
+#: mod/dfrn_request.php:650 mod/editpost.php:113 mod/fbrowser.php:104
+#: mod/fbrowser.php:134 mod/follow.php:161 mod/message.php:153
+#: mod/photos.php:257 mod/photos.php:325 mod/settings.php:666
+#: mod/settings.php:692 mod/suggest.php:44 mod/tagrm.php:20 mod/tagrm.php:115
+#: mod/unfollow.php:132 mod/videos.php:105 src/Module/Contact.php:447
 msgid "Cancel"
 msgstr "Cancel"
 
-#: include/conversation.php:1175
+#: include/conversation.php:1196
 msgid "Post to Groups"
 msgstr "Post to groups"
 
-#: include/conversation.php:1176
+#: include/conversation.php:1197
 msgid "Post to Contacts"
 msgstr "Post to contacts"
 
-#: include/conversation.php:1177
+#: include/conversation.php:1198
 msgid "Private post"
 msgstr "Private post"
 
-#: include/conversation.php:1182 mod/editpost.php:138
-#: src/Model/Profile.php:361
+#: include/conversation.php:1203 mod/editpost.php:117
+#: src/Model/Profile.php:370
 msgid "Message"
 msgstr "Message"
 
-#: include/conversation.php:1183 mod/editpost.php:139
+#: include/conversation.php:1204 mod/editpost.php:118
 msgid "Browser"
 msgstr "Browser"
 
-#: include/conversation.php:1454
+#: include/conversation.php:1476
 msgid "View all"
 msgstr "View all"
 
-#: include/conversation.php:1477
+#: include/conversation.php:1500
 msgid "Like"
 msgid_plural "Likes"
 msgstr[0] "Like"
 msgstr[1] "Likes"
 
-#: include/conversation.php:1480
+#: include/conversation.php:1503
 msgid "Dislike"
 msgid_plural "Dislikes"
 msgstr[0] "Dislike"
 msgstr[1] "Dislikes"
 
-#: include/conversation.php:1486
+#: include/conversation.php:1509
 msgid "Not Attending"
 msgid_plural "Not Attending"
 msgstr[0] "Not attending"
 msgstr[1] "Not attending"
 
-#: include/conversation.php:1489 src/Content/ContactSelector.php:148
+#: include/conversation.php:1512 src/Content/ContactSelector.php:167
 msgid "Undecided"
 msgid_plural "Undecided"
 msgstr[0] "Undecided"
 msgstr[1] "Undecided"
 
-#: include/enotify.php:55
+#: include/enotify.php:57
 msgid "Friendica Notification"
 msgstr "Friendica notification"
 
-#: include/enotify.php:58
+#: include/enotify.php:60
 msgid "Thank You,"
 msgstr "Thank you"
 
-#: include/enotify.php:61
+#: include/enotify.php:63
 #, php-format
 msgid "%1$s, %2$s Administrator"
 msgstr "%1$s, %2$s Administrator"
 
-#: include/enotify.php:63
+#: include/enotify.php:65
 #, php-format
 msgid "%s Administrator"
 msgstr "%s Administrator"
 
-#: include/enotify.php:126
+#: include/enotify.php:134
 #, php-format
 msgid "[Friendica:Notify] New mail received at %s"
 msgstr "[Friendica:Notify] New mail received at %s"
 
-#: include/enotify.php:128
+#: include/enotify.php:136
 #, php-format
 msgid "%1$s sent you a new private message at %2$s."
 msgstr "%1$s sent you a new private message at %2$s."
 
-#: include/enotify.php:129
+#: include/enotify.php:137
 msgid "a private message"
 msgstr "a private message"
 
-#: include/enotify.php:129
+#: include/enotify.php:137
 #, php-format
 msgid "%1$s sent you %2$s."
 msgstr "%1$s sent you %2$s."
 
-#: include/enotify.php:131
+#: include/enotify.php:139
 #, php-format
 msgid "Please visit %s to view and/or reply to your private messages."
 msgstr "Please visit %s to view or reply to your private messages."
 
-#: include/enotify.php:165
+#: include/enotify.php:172
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]a %3$s[/url]"
+msgstr ""
+
+#: include/enotify.php:178
 #, php-format
 msgid "%1$s commented on [url=%2$s]a %3$s[/url]"
 msgstr "%1$s commented on [url=%2$s]a %3$s[/url]"
 
-#: include/enotify.php:173
+#: include/enotify.php:188
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]%3$s's %4$s[/url]"
+msgstr ""
+
+#: include/enotify.php:195
 #, php-format
 msgid "%1$s commented on [url=%2$s]%3$s's %4$s[/url]"
 msgstr "%1$s commented on [url=%2$s]%3$s's %4$s[/url]"
 
-#: include/enotify.php:183
+#: include/enotify.php:207
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]your %3$s[/url]"
+msgstr ""
+
+#: include/enotify.php:213
 #, php-format
 msgid "%1$s commented on [url=%2$s]your %3$s[/url]"
 msgstr "%1$s commented on [url=%2$s]your %3$s[/url]"
 
-#: include/enotify.php:195
+#: include/enotify.php:224
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]their %3$s[/url]"
+msgstr ""
+
+#: include/enotify.php:230
+#, php-format
+msgid "%1$s commented on [url=%2$s]their %3$s[/url]"
+msgstr ""
+
+#: include/enotify.php:243
+#, php-format
+msgid "[Friendica:Notify] %s tagged you"
+msgstr "[Friendica:Notify] %s tagged you"
+
+#: include/enotify.php:245
+#, php-format
+msgid "%1$s tagged you at %2$s"
+msgstr "%1$s tagged you at %2$s"
+
+#: include/enotify.php:247
 #, php-format
 msgid "[Friendica:Notify] Comment to conversation #%1$d by %2$s"
 msgstr "[Friendica:Notify] Comment to conversation #%1$d by %2$s"
 
-#: include/enotify.php:197
+#: include/enotify.php:249
 #, php-format
 msgid "%s commented on an item/conversation you have been following."
 msgstr "%s commented on an item/conversation you have been following."
 
-#: include/enotify.php:200 include/enotify.php:215 include/enotify.php:230
-#: include/enotify.php:245 include/enotify.php:264 include/enotify.php:280
+#: include/enotify.php:254 include/enotify.php:269 include/enotify.php:284
+#: include/enotify.php:303 include/enotify.php:319
 #, php-format
 msgid "Please visit %s to view and/or reply to the conversation."
 msgstr "Please visit %s to view or reply to the conversation."
 
-#: include/enotify.php:207
+#: include/enotify.php:261
 #, php-format
 msgid "[Friendica:Notify] %s posted to your profile wall"
 msgstr "[Friendica:Notify] %s posted to your profile wall"
 
-#: include/enotify.php:209
+#: include/enotify.php:263
 #, php-format
 msgid "%1$s posted to your profile wall at %2$s"
 msgstr "%1$s posted to your profile wall at %2$s"
 
-#: include/enotify.php:210
+#: include/enotify.php:264
 #, php-format
 msgid "%1$s posted to [url=%2$s]your wall[/url]"
 msgstr "%1$s posted to [url=%2$s]your wall[/url]"
 
-#: include/enotify.php:222
-#, php-format
-msgid "[Friendica:Notify] %s tagged you"
-msgstr "[Friendica:Notify] %s tagged you"
-
-#: include/enotify.php:224
-#, php-format
-msgid "%1$s tagged you at %2$s"
-msgstr "%1$s tagged you at %2$s"
-
-#: include/enotify.php:225
-#, php-format
-msgid "%1$s [url=%2$s]tagged you[/url]."
-msgstr "%1$s [url=%2$s]tagged you[/url]."
-
-#: include/enotify.php:237
+#: include/enotify.php:276
 #, php-format
 msgid "[Friendica:Notify] %s shared a new post"
 msgstr "[Friendica:Notify] %s shared a new post"
 
-#: include/enotify.php:239
+#: include/enotify.php:278
 #, php-format
 msgid "%1$s shared a new post at %2$s"
 msgstr "%1$s shared a new post at %2$s"
 
-#: include/enotify.php:240
+#: include/enotify.php:279
 #, php-format
 msgid "%1$s [url=%2$s]shared a post[/url]."
 msgstr "%1$s [url=%2$s]shared a post[/url]."
 
-#: include/enotify.php:252
+#: include/enotify.php:291
 #, php-format
 msgid "[Friendica:Notify] %1$s poked you"
 msgstr "[Friendica:Notify] %1$s poked you"
 
-#: include/enotify.php:254
+#: include/enotify.php:293
 #, php-format
 msgid "%1$s poked you at %2$s"
 msgstr "%1$s poked you at %2$s"
 
-#: include/enotify.php:255
+#: include/enotify.php:294
 #, php-format
 msgid "%1$s [url=%2$s]poked you[/url]."
 msgstr "%1$s [url=%2$s]poked you[/url]."
 
-#: include/enotify.php:272
+#: include/enotify.php:311
 #, php-format
 msgid "[Friendica:Notify] %s tagged your post"
 msgstr "[Friendica:Notify] %s tagged your post"
 
-#: include/enotify.php:274
+#: include/enotify.php:313
 #, php-format
 msgid "%1$s tagged your post at %2$s"
 msgstr "%1$s tagged your post at %2$s"
 
-#: include/enotify.php:275
+#: include/enotify.php:314
 #, php-format
 msgid "%1$s tagged [url=%2$s]your post[/url]"
 msgstr "%1$s tagged [url=%2$s]your post[/url]"
 
-#: include/enotify.php:287
+#: include/enotify.php:326
 msgid "[Friendica:Notify] Introduction received"
 msgstr "[Friendica:Notify] Introduction received"
 
-#: include/enotify.php:289
+#: include/enotify.php:328
 #, php-format
 msgid "You've received an introduction from '%1$s' at %2$s"
 msgstr "You've received an introduction from '%1$s' at %2$s"
 
-#: include/enotify.php:290
+#: include/enotify.php:329
 #, php-format
 msgid "You've received [url=%1$s]an introduction[/url] from %2$s."
 msgstr "You've received [url=%1$s]an introduction[/url] from %2$s."
 
-#: include/enotify.php:295 include/enotify.php:341
+#: include/enotify.php:334 include/enotify.php:380
 #, php-format
 msgid "You may visit their profile at %s"
 msgstr "You may visit their profile at %s"
 
-#: include/enotify.php:297
+#: include/enotify.php:336
 #, php-format
 msgid "Please visit %s to approve or reject the introduction."
 msgstr "Please visit %s to approve or reject the introduction."
 
-#: include/enotify.php:304
+#: include/enotify.php:343
 msgid "[Friendica:Notify] A new person is sharing with you"
 msgstr "[Friendica:Notify] A new person is sharing with you"
 
-#: include/enotify.php:306 include/enotify.php:307
+#: include/enotify.php:345 include/enotify.php:346
 #, php-format
 msgid "%1$s is sharing with you at %2$s"
 msgstr "%1$s is sharing with you at %2$s"
 
-#: include/enotify.php:314
+#: include/enotify.php:353
 msgid "[Friendica:Notify] You have a new follower"
 msgstr "[Friendica:Notify] You have a new follower"
 
-#: include/enotify.php:316 include/enotify.php:317
+#: include/enotify.php:355 include/enotify.php:356
 #, php-format
 msgid "You have a new follower at %2$s : %1$s"
 msgstr "You have a new follower at %2$s : %1$s"
 
-#: include/enotify.php:330
+#: include/enotify.php:369
 msgid "[Friendica:Notify] Friend suggestion received"
 msgstr "[Friendica:Notify] Friend suggestion received"
 
-#: include/enotify.php:332
+#: include/enotify.php:371
 #, php-format
 msgid "You've received a friend suggestion from '%1$s' at %2$s"
 msgstr "You've received a friend suggestion from '%1$s' at %2$s"
 
-#: include/enotify.php:333
+#: include/enotify.php:372
 #, php-format
 msgid ""
 "You've received [url=%1$s]a friend suggestion[/url] for %2$s from %3$s."
 msgstr "You've received [url=%1$s]a friend suggestion[/url] for %2$s from %3$s."
 
-#: include/enotify.php:339
+#: include/enotify.php:378
 msgid "Name:"
 msgstr "Name:"
 
-#: include/enotify.php:340
+#: include/enotify.php:379
 msgid "Photo:"
 msgstr "Photo:"
 
-#: include/enotify.php:343
+#: include/enotify.php:382
 #, php-format
 msgid "Please visit %s to approve or reject the suggestion."
 msgstr "Please visit %s to approve or reject the suggestion."
 
-#: include/enotify.php:351 include/enotify.php:366
+#: include/enotify.php:390 include/enotify.php:405
 msgid "[Friendica:Notify] Connection accepted"
 msgstr "[Friendica:Notify] Connection accepted"
 
-#: include/enotify.php:353 include/enotify.php:368
+#: include/enotify.php:392 include/enotify.php:407
 #, php-format
 msgid "'%1$s' has accepted your connection request at %2$s"
 msgstr "'%1$s' has accepted your connection request at %2$s"
 
-#: include/enotify.php:354 include/enotify.php:369
+#: include/enotify.php:393 include/enotify.php:408
 #, php-format
 msgid "%2$s has accepted your [url=%1$s]connection request[/url]."
 msgstr "%2$s has accepted your [url=%1$s]connection request[/url]."
 
-#: include/enotify.php:359
+#: include/enotify.php:398
 msgid ""
 "You are now mutual friends and may exchange status updates, photos, and "
 "email without restriction."
 msgstr "You are now mutual friends and may exchange status updates, photos, and email without restriction."
 
-#: include/enotify.php:361
+#: include/enotify.php:400
 #, php-format
 msgid "Please visit %s if you wish to make any changes to this relationship."
 msgstr "Please visit %s if you wish to make any changes to this relationship."
 
-#: include/enotify.php:374
+#: include/enotify.php:413
 #, php-format
 msgid ""
 "'%1$s' has chosen to accept you a fan, which restricts some forms of "
@@ -744,37 +764,37 @@ msgid ""
 "automatically."
 msgstr "'%1$s' has chosen to accept you as a fan, which restricts some forms of communication - such as private messaging and some profile interactions. If this is a celebrity or community page, these settings were applied automatically."
 
-#: include/enotify.php:376
+#: include/enotify.php:415
 #, php-format
 msgid ""
 "'%1$s' may choose to extend this into a two-way or more permissive "
 "relationship in the future."
 msgstr "'%1$s' may choose to extend this into a two-way or more permissive relationship in the future."
 
-#: include/enotify.php:378
+#: include/enotify.php:417
 #, php-format
 msgid "Please visit %s  if you wish to make any changes to this relationship."
 msgstr "Please visit %s  if you wish to make any changes to this relationship."
 
-#: include/enotify.php:388 mod/removeme.php:49
+#: include/enotify.php:427 mod/removeme.php:46
 msgid "[Friendica System Notify]"
 msgstr "[Friendica System Notify]"
 
-#: include/enotify.php:388
+#: include/enotify.php:427
 msgid "registration request"
 msgstr "registration request"
 
-#: include/enotify.php:390
+#: include/enotify.php:429
 #, php-format
 msgid "You've received a registration request from '%1$s' at %2$s"
 msgstr "You've received a registration request from '%1$s' at %2$s."
 
-#: include/enotify.php:391
+#: include/enotify.php:430
 #, php-format
 msgid "You've received a [url=%1$s]registration request[/url] from %2$s."
 msgstr "You've received a [url=%1$s]registration request[/url] from %2$s."
 
-#: include/enotify.php:396
+#: include/enotify.php:435
 #, php-format
 msgid ""
 "Full Name:\t%s\n"
@@ -782,256 +802,270 @@ msgid ""
 "Login Name:\t%s (%s)"
 msgstr ""
 
-#: include/enotify.php:402
+#: include/enotify.php:441
 #, php-format
 msgid "Please visit %s to approve or reject the request."
 msgstr "Please visit %s to approve or reject the request."
 
-#: include/items.php:359 mod/admin.php:295 mod/admin.php:2029
-#: mod/admin.php:2275 mod/display.php:75 mod/display.php:253
-#: mod/display.php:349 mod/notice.php:21 mod/viewsrc.php:22
+#: include/items.php:353 mod/admin.php:302 mod/admin.php:2131
+#: mod/admin.php:2378 mod/notice.php:20 mod/viewsrc.php:22
 msgid "Item not found."
 msgstr "Item not found."
 
-#: include/items.php:397
+#: include/items.php:391
 msgid "Do you really want to delete this item?"
 msgstr "Do you really want to delete this item?"
 
-#: include/items.php:399 mod/api.php:112 mod/dfrn_request.php:648
-#: mod/follow.php:154 mod/message.php:152 mod/profiles.php:542
-#: mod/profiles.php:545 mod/profiles.php:567 mod/register.php:239
-#: mod/settings.php:1100 mod/settings.php:1106 mod/settings.php:1113
-#: mod/settings.php:1117 mod/settings.php:1121 mod/settings.php:1125
-#: mod/settings.php:1129 mod/settings.php:1133 mod/settings.php:1153
-#: mod/settings.php:1154 mod/settings.php:1155 mod/settings.php:1156
-#: mod/settings.php:1157 mod/suggest.php:41 src/Module/Contact.php:449
+#: include/items.php:393 mod/api.php:109 mod/dfrn_request.php:640
+#: mod/follow.php:150 mod/message.php:150 mod/profiles.php:526
+#: mod/profiles.php:529 mod/profiles.php:551 mod/settings.php:1085
+#: mod/settings.php:1091 mod/settings.php:1098 mod/settings.php:1102
+#: mod/settings.php:1106 mod/settings.php:1110 mod/settings.php:1114
+#: mod/settings.php:1118 mod/settings.php:1138 mod/settings.php:1139
+#: mod/settings.php:1140 mod/settings.php:1141 mod/settings.php:1142
+#: mod/suggest.php:41 src/Module/Contact.php:444 src/Module/Register.php:97
 msgid "Yes"
 msgstr "Yes"
 
-#: include/items.php:449 mod/allfriends.php:24 mod/api.php:37 mod/api.php:42
-#: mod/attach.php:39 mod/cal.php:304 mod/common.php:29 mod/crepair.php:101
-#: mod/delegate.php:31 mod/delegate.php:49 mod/delegate.php:60
-#: mod/dfrn_confirm.php:69 mod/dirfind.php:29 mod/editpost.php:22
-#: mod/events.php:199 mod/follow.php:58 mod/follow.php:122 mod/fsuggest.php:81
-#: mod/group.php:30 mod/invite.php:25 mod/invite.php:111 mod/item.php:169
-#: mod/manage.php:132 mod/message.php:58 mod/message.php:103
-#: mod/network.php:39 mod/nogroup.php:23 mod/notes.php:33
-#: mod/notifications.php:70 mod/ostatus_subscribe.php:18 mod/photos.php:189
-#: mod/photos.php:1064 mod/poke.php:144 mod/profiles.php:183
-#: mod/profiles.php:515 mod/profile_photo.php:33 mod/profile_photo.php:180
-#: mod/profile_photo.php:202 mod/register.php:55 mod/regmod.php:91
-#: mod/repair_ostatus.php:16 mod/settings.php:48 mod/settings.php:154
-#: mod/settings.php:670 mod/suggest.php:62 mod/uimport.php:17
-#: mod/unfollow.php:22 mod/unfollow.php:77 mod/unfollow.php:109
-#: mod/viewcontacts.php:63 mod/wallmessage.php:19 mod/wallmessage.php:43
-#: mod/wallmessage.php:82 mod/wallmessage.php:106 mod/wall_attach.php:81
-#: mod/wall_attach.php:84 mod/wall_upload.php:106 mod/wall_upload.php:109
-#: src/App.php:1786 src/Module/Contact.php:365
+#: include/items.php:443 mod/allfriends.php:22 mod/api.php:34 mod/api.php:39
+#: mod/cal.php:303 mod/common.php:27 mod/crepair.php:90 mod/delegate.php:30
+#: mod/delegate.php:48 mod/delegate.php:59 mod/dfrn_confirm.php:66
+#: mod/dirfind.php:29 mod/editpost.php:22 mod/events.php:207 mod/follow.php:57
+#: mod/follow.php:121 mod/fsuggest.php:77 mod/group.php:28 mod/invite.php:23
+#: mod/invite.php:111 mod/item.php:167 mod/manage.php:129 mod/message.php:56
+#: mod/message.php:101 mod/network.php:35 mod/nogroup.php:18 mod/notes.php:27
+#: mod/notifications.php:70 mod/ostatus_subscribe.php:18 mod/photos.php:186
+#: mod/photos.php:1020 mod/poke.php:141 mod/profile_photo.php:32
+#: mod/profile_photo.php:177 mod/profile_photo.php:204 mod/profiles.php:182
+#: mod/profiles.php:499 mod/regmod.php:89 mod/repair_ostatus.php:16
+#: mod/settings.php:48 mod/settings.php:154 mod/settings.php:655
+#: mod/suggest.php:62 mod/uimport.php:17 mod/unfollow.php:22
+#: mod/unfollow.php:77 mod/unfollow.php:109 mod/viewcontacts.php:56
+#: mod/wall_attach.php:76 mod/wall_attach.php:79 mod/wall_upload.php:107
+#: mod/wall_upload.php:110 mod/wallmessage.php:19 mod/wallmessage.php:43
+#: mod/wallmessage.php:82 mod/wallmessage.php:106 src/Module/Attach.php:42
+#: src/Module/Contact.php:360 src/Module/Register.php:193 src/App.php:1482
 msgid "Permission denied."
 msgstr "Permission denied."
 
-#: include/items.php:520 src/Content/Feature.php:95
+#: include/items.php:514 src/Content/Feature.php:99
 msgid "Archives"
 msgstr "Archives"
 
-#: include/items.php:526 src/App.php:791 src/Content/ForumManager.php:133
-#: src/Content/Widget.php:308 src/Object/Post.php:447
-#: view/theme/vier/theme.php:258
+#: include/items.php:520 view/theme/vier/theme.php:255
+#: src/Content/ForumManager.php:135 src/Content/Widget.php:329
+#: src/Object/Post.php:458 src/App.php:666
 msgid "show more"
-msgstr "Show more..."
+msgstr "show more"
+
+#: mod/apps.php:15 src/App.php:1351
+msgid "You must be logged in to use addons. "
+msgstr "You must be logged in to use addons. "
+
+#: mod/apps.php:20
+msgid "Applications"
+msgstr "Applications"
+
+#: mod/apps.php:25
+msgid "No installed applications."
+msgstr "No installed applications."
+
+#: mod/maintenance.php:26
+msgid "System down for maintenance"
+msgstr "Sorry, the system is currently down for maintenance."
 
-#: mod/admin.php:116
+#: mod/admin.php:122
 msgid "Theme settings updated."
 msgstr "Theme settings updated."
 
-#: mod/admin.php:189 src/Content/Nav.php:228
+#: mod/admin.php:196 src/Content/Nav.php:231
 msgid "Information"
 msgstr "Information"
 
-#: mod/admin.php:190
+#: mod/admin.php:197
 msgid "Overview"
 msgstr "Overview"
 
-#: mod/admin.php:191 mod/admin.php:761
+#: mod/admin.php:198 mod/admin.php:779
 msgid "Federation Statistics"
 msgstr "Federation statistics"
 
-#: mod/admin.php:192
+#: mod/admin.php:199
 msgid "Configuration"
 msgstr "Configuration"
 
-#: mod/admin.php:193 mod/admin.php:1488
+#: mod/admin.php:200 mod/admin.php:1581
 msgid "Site"
 msgstr "Site"
 
-#: mod/admin.php:194 mod/admin.php:1417 mod/admin.php:1961 mod/admin.php:1978
+#: mod/admin.php:201 mod/admin.php:1482 mod/admin.php:2062 mod/admin.php:2079
 msgid "Users"
 msgstr "Users"
 
-#: mod/admin.php:195 mod/admin.php:2077 mod/admin.php:2137 mod/settings.php:99
+#: mod/admin.php:202 mod/admin.php:2179 mod/admin.php:2239 mod/settings.php:99
 msgid "Addons"
 msgstr "Addons"
 
-#: mod/admin.php:196 mod/admin.php:2347 mod/admin.php:2391
+#: mod/admin.php:203 mod/admin.php:2436 mod/admin.php:2480
 msgid "Themes"
 msgstr "Theme selection"
 
-#: mod/admin.php:197 mod/settings.php:77
+#: mod/admin.php:204 mod/settings.php:77
 msgid "Additional features"
 msgstr "Additional features"
 
-#: mod/admin.php:198 mod/admin.php:322 mod/register.php:292
-#: src/Content/Nav.php:231 src/Module/Tos.php:71
+#: mod/admin.php:205 mod/admin.php:329 src/Content/Nav.php:234
+#: src/Module/Register.php:144 src/Module/Tos.php:73
 msgid "Terms of Service"
 msgstr "Terms of Service"
 
-#: mod/admin.php:199
+#: mod/admin.php:206
 msgid "Database"
 msgstr "Database"
 
-#: mod/admin.php:200
+#: mod/admin.php:207
 msgid "DB updates"
 msgstr "DB updates"
 
-#: mod/admin.php:201 mod/admin.php:804
+#: mod/admin.php:208 mod/admin.php:823
 msgid "Inspect Queue"
 msgstr "Inspect queue"
 
-#: mod/admin.php:202
+#: mod/admin.php:209
 msgid "Inspect Deferred Workers"
 msgstr ""
 
-#: mod/admin.php:203
+#: mod/admin.php:210
 msgid "Inspect worker Queue"
 msgstr ""
 
-#: mod/admin.php:204
+#: mod/admin.php:211
 msgid "Tools"
 msgstr "Tools"
 
-#: mod/admin.php:205
+#: mod/admin.php:212
 msgid "Contact Blocklist"
 msgstr "Contact blocklist"
 
-#: mod/admin.php:206 mod/admin.php:384
+#: mod/admin.php:213 mod/admin.php:395
 msgid "Server Blocklist"
 msgstr "Server blocklist"
 
-#: mod/admin.php:207 mod/admin.php:542
+#: mod/admin.php:214 mod/admin.php:558
 msgid "Delete Item"
 msgstr "Delete item"
 
-#: mod/admin.php:208 mod/admin.php:209 mod/admin.php:2466
+#: mod/admin.php:215 mod/admin.php:216 mod/admin.php:2556
 msgid "Logs"
 msgstr "Logs"
 
-#: mod/admin.php:210 mod/admin.php:2533
+#: mod/admin.php:217 mod/admin.php:2624
 msgid "View Logs"
 msgstr "View logs"
 
-#: mod/admin.php:212
+#: mod/admin.php:219
 msgid "Diagnostics"
 msgstr "Diagnostics"
 
-#: mod/admin.php:213
+#: mod/admin.php:220
 msgid "PHP Info"
 msgstr "PHP info"
 
-#: mod/admin.php:214
+#: mod/admin.php:221
 msgid "probe address"
 msgstr "Probe address"
 
-#: mod/admin.php:215
+#: mod/admin.php:222
 msgid "check webfinger"
 msgstr "Check webfinger"
 
-#: mod/admin.php:235 src/Content/Nav.php:271
+#: mod/admin.php:242 src/Content/Nav.php:274
 msgid "Admin"
 msgstr "Admin"
 
-#: mod/admin.php:236
+#: mod/admin.php:243
 msgid "Addon Features"
 msgstr "Addon features"
 
-#: mod/admin.php:237
+#: mod/admin.php:244
 msgid "User registrations waiting for confirmation"
 msgstr "User registrations awaiting confirmation"
 
-#: mod/admin.php:321 mod/admin.php:383 mod/admin.php:499 mod/admin.php:541
-#: mod/admin.php:760 mod/admin.php:803 mod/admin.php:854 mod/admin.php:972
-#: mod/admin.php:1487 mod/admin.php:1960 mod/admin.php:2076 mod/admin.php:2136
-#: mod/admin.php:2346 mod/admin.php:2390 mod/admin.php:2465 mod/admin.php:2532
+#: mod/admin.php:328 mod/admin.php:394 mod/admin.php:514 mod/admin.php:557
+#: mod/admin.php:778 mod/admin.php:822 mod/admin.php:875 mod/admin.php:998
+#: mod/admin.php:1580 mod/admin.php:2061 mod/admin.php:2178 mod/admin.php:2238
+#: mod/admin.php:2435 mod/admin.php:2479 mod/admin.php:2555 mod/admin.php:2623
 msgid "Administration"
 msgstr "Administration"
 
-#: mod/admin.php:323
+#: mod/admin.php:330
 msgid "Display Terms of Service"
 msgstr "Display Terms of Service"
 
-#: mod/admin.php:323
+#: mod/admin.php:330
 msgid ""
 "Enable the Terms of Service page. If this is enabled a link to the terms "
 "will be added to the registration form and the general information page."
 msgstr "Enable the Terms of Service page. If this is enabled, a link to the terms will be added to the registration form and to the general information page."
 
-#: mod/admin.php:324
+#: mod/admin.php:331
 msgid "Display Privacy Statement"
 msgstr "Display Privacy Statement"
 
-#: mod/admin.php:324
+#: mod/admin.php:331
 #, php-format
 msgid ""
 "Show some informations regarding the needed information to operate the node "
 "according e.g. to <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."
 msgstr "Show some information needed, for example, to comply with <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."
 
-#: mod/admin.php:325
+#: mod/admin.php:332
 msgid "Privacy Statement Preview"
 msgstr "Privacy Statement Preview"
 
-#: mod/admin.php:327
+#: mod/admin.php:334
 msgid "The Terms of Service"
 msgstr "Terms of Service"
 
-#: mod/admin.php:327
+#: mod/admin.php:334
 msgid ""
 "Enter the Terms of Service for your node here. You can use BBCode. Headers "
 "of sections should be [h2] and below."
 msgstr "Enter the Terms of Service for your node here. You can use BBCode. Headers of sections should be [h2] or less."
 
-#: mod/admin.php:329 mod/admin.php:1489 mod/admin.php:2138 mod/admin.php:2392
-#: mod/admin.php:2467 mod/admin.php:2614 mod/delegate.php:174
-#: mod/settings.php:680 mod/settings.php:787 mod/settings.php:875
-#: mod/settings.php:964 mod/settings.php:1189
+#: mod/admin.php:336 mod/admin.php:1582 mod/admin.php:2240 mod/admin.php:2481
+#: mod/admin.php:2557 mod/admin.php:2707 mod/delegate.php:175
+#: mod/settings.php:665 mod/settings.php:772 mod/settings.php:860
+#: mod/settings.php:949 mod/settings.php:1174
 msgid "Save Settings"
 msgstr "Save settings"
 
-#: mod/admin.php:375 mod/admin.php:393 mod/dfrn_request.php:348
-#: mod/friendica.php:122 src/Model/Contact.php:1603
+#: mod/admin.php:386 mod/admin.php:404 mod/dfrn_request.php:346
+#: mod/friendica.php:131 src/Model/Contact.php:1702
 msgid "Blocked domain"
 msgstr "Blocked domain"
 
-#: mod/admin.php:375
+#: mod/admin.php:386
 msgid "The blocked domain"
 msgstr "Blocked domain"
 
-#: mod/admin.php:376 mod/admin.php:394 mod/friendica.php:122
+#: mod/admin.php:387 mod/admin.php:405 mod/friendica.php:131
 msgid "Reason for the block"
 msgstr "Reason for the block"
 
-#: mod/admin.php:376 mod/admin.php:389
+#: mod/admin.php:387 mod/admin.php:400
 msgid "The reason why you blocked this domain."
 msgstr "Reason why you blocked this domain."
 
-#: mod/admin.php:377
+#: mod/admin.php:388
 msgid "Delete domain"
 msgstr "Delete domain"
 
-#: mod/admin.php:377
+#: mod/admin.php:388
 msgid "Check to delete this entry from the blocklist"
 msgstr "Check to delete this entry from the blocklist"
 
-#: mod/admin.php:385
+#: mod/admin.php:396
 msgid ""
 "This page can be used to define a black list of servers from the federated "
 "network that are not allowed to interact with your node. For all entered "
@@ -1039,264 +1073,264 @@ msgid ""
 "server."
 msgstr "This page can be used to define a blacklist of servers from the federated network that are not allowed to interact with your node. For all entered domains you should also give a reason why you have blocked the remote server."
 
-#: mod/admin.php:386
+#: mod/admin.php:397
 msgid ""
 "The list of blocked servers will be made publically available on the "
 "/friendica page so that your users and people investigating communication "
 "problems can find the reason easily."
 msgstr "The list of blocked servers will be available publicly on the Friendica page so that your users and people investigating communication problems can find the reason."
 
-#: mod/admin.php:387
+#: mod/admin.php:398
 msgid "Add new entry to block list"
 msgstr "Add new entry to block list"
 
-#: mod/admin.php:388
+#: mod/admin.php:399
 msgid "Server Domain"
 msgstr "Server domain"
 
-#: mod/admin.php:388
+#: mod/admin.php:399
 msgid ""
 "The domain of the new server to add to the block list. Do not include the "
 "protocol."
 msgstr "The domain of the new server to add to the block list. Do not include the protocol."
 
-#: mod/admin.php:389
+#: mod/admin.php:400
 msgid "Block reason"
 msgstr "Block reason"
 
-#: mod/admin.php:390
+#: mod/admin.php:401
 msgid "Add Entry"
 msgstr "Add entry"
 
-#: mod/admin.php:391
+#: mod/admin.php:402
 msgid "Save changes to the blocklist"
 msgstr "Save changes to the blocklist"
 
-#: mod/admin.php:392
+#: mod/admin.php:403
 msgid "Current Entries in the Blocklist"
 msgstr "Current entries in the blocklist"
 
-#: mod/admin.php:395
+#: mod/admin.php:406
 msgid "Delete entry from blocklist"
 msgstr "Delete entry from blocklist"
 
-#: mod/admin.php:398
+#: mod/admin.php:409
 msgid "Delete entry from blocklist?"
 msgstr "Delete entry from blocklist?"
 
-#: mod/admin.php:424
+#: mod/admin.php:436
 msgid "Server added to blocklist."
 msgstr "Server added to blocklist."
 
-#: mod/admin.php:440
+#: mod/admin.php:452
 msgid "Site blocklist updated."
 msgstr "Site blocklist updated."
 
-#: mod/admin.php:463 src/Core/Console/GlobalCommunityBlock.php:68
+#: mod/admin.php:477 src/Core/Console/GlobalCommunityBlock.php:68
 msgid "The contact has been blocked from the node"
 msgstr "This contact has been blocked from the node"
 
-#: mod/admin.php:465 src/Core/Console/GlobalCommunityBlock.php:65
+#: mod/admin.php:479 src/Core/Console/GlobalCommunityBlock.php:65
 #, php-format
 msgid "Could not find any contact entry for this URL (%s)"
 msgstr "Could not find any contact entry for this URL (%s)"
 
-#: mod/admin.php:472
+#: mod/admin.php:486
 #, php-format
 msgid "%s contact unblocked"
 msgid_plural "%s contacts unblocked"
 msgstr[0] "%s contact unblocked"
 msgstr[1] "%s contacts unblocked"
 
-#: mod/admin.php:500
+#: mod/admin.php:515
 msgid "Remote Contact Blocklist"
 msgstr "Remote contact blocklist"
 
-#: mod/admin.php:501
+#: mod/admin.php:516
 msgid ""
 "This page allows you to prevent any message from a remote contact to reach "
 "your node."
 msgstr "This page allows you to prevent any message from a remote contact to reach your node."
 
-#: mod/admin.php:502
+#: mod/admin.php:517
 msgid "Block Remote Contact"
 msgstr "Block remote contact"
 
-#: mod/admin.php:503 mod/admin.php:1963
+#: mod/admin.php:518 mod/admin.php:2064
 msgid "select all"
 msgstr "select all"
 
-#: mod/admin.php:504
+#: mod/admin.php:519
 msgid "select none"
 msgstr "select none"
 
-#: mod/admin.php:505 mod/admin.php:1972 src/Module/Contact.php:627
-#: src/Module/Contact.php:829 src/Module/Contact.php:1082
+#: mod/admin.php:520 mod/admin.php:2073 src/Module/Contact.php:621
+#: src/Module/Contact.php:824 src/Module/Contact.php:1077
 msgid "Block"
 msgstr "Block"
 
-#: mod/admin.php:506 mod/admin.php:1974 src/Module/Contact.php:627
-#: src/Module/Contact.php:829 src/Module/Contact.php:1082
+#: mod/admin.php:521 mod/admin.php:2075 src/Module/Contact.php:621
+#: src/Module/Contact.php:824 src/Module/Contact.php:1077
 msgid "Unblock"
 msgstr "Unblock"
 
-#: mod/admin.php:507
+#: mod/admin.php:522
 msgid "No remote contact is blocked from this node."
 msgstr "No remote contact is blocked from this node."
 
-#: mod/admin.php:509
+#: mod/admin.php:524
 msgid "Blocked Remote Contacts"
 msgstr "Blocked remote contacts"
 
-#: mod/admin.php:510
+#: mod/admin.php:525
 msgid "Block New Remote Contact"
 msgstr "Block new remote contact"
 
-#: mod/admin.php:511
+#: mod/admin.php:526
 msgid "Photo"
 msgstr "Photo"
 
-#: mod/admin.php:511 mod/admin.php:1955 mod/admin.php:1966 mod/admin.php:1980
-#: mod/admin.php:1996 mod/crepair.php:161 mod/settings.php:682
-#: mod/settings.php:708
+#: mod/admin.php:526 mod/admin.php:2056 mod/admin.php:2067 mod/admin.php:2081
+#: mod/admin.php:2097 mod/crepair.php:159 mod/settings.php:667
+#: mod/settings.php:693
 msgid "Name"
 msgstr "Name:"
 
-#: mod/admin.php:511 mod/profiles.php:395
+#: mod/admin.php:526 mod/profiles.php:382
 msgid "Address"
 msgstr "Address"
 
-#: mod/admin.php:511 mod/admin.php:521 mod/follow.php:170
-#: mod/notifications.php:177 mod/notifications.php:261 mod/unfollow.php:139
-#: src/Module/Contact.php:646
+#: mod/admin.php:526 mod/admin.php:536 mod/follow.php:166
+#: mod/notifications.php:179 mod/notifications.php:263 mod/unfollow.php:137
+#: src/Module/Contact.php:639
 msgid "Profile URL"
 msgstr "Profile URL:"
 
-#: mod/admin.php:519
+#: mod/admin.php:534
 #, php-format
 msgid "%s total blocked contact"
 msgid_plural "%s total blocked contacts"
 msgstr[0] "%s total blocked contact"
 msgstr[1] "%s blocked contacts"
 
-#: mod/admin.php:521
+#: mod/admin.php:536
 msgid "URL of the remote contact to block."
 msgstr "URL of the remote contact to block."
 
-#: mod/admin.php:543
+#: mod/admin.php:559
 msgid "Delete this Item"
 msgstr "Delete"
 
-#: mod/admin.php:544
+#: mod/admin.php:560
 msgid ""
 "On this page you can delete an item from your node. If the item is a top "
 "level posting, the entire thread will be deleted."
 msgstr "Here you can delete an item from this node. If the item is a top-level posting, the entire thread will be deleted."
 
-#: mod/admin.php:545
+#: mod/admin.php:561
 msgid ""
 "You need to know the GUID of the item. You can find it e.g. by looking at "
 "the display URL. The last part of http://example.com/display/123456 is the "
 "GUID, here 123456."
 msgstr "You need to know the global unique identifier (GUID) of the item, which you can find by looking at the display URL. The last part of http://example.com/display/123456 is the GUID: i.e. 123456."
 
-#: mod/admin.php:546
+#: mod/admin.php:562
 msgid "GUID"
 msgstr "GUID"
 
-#: mod/admin.php:546
+#: mod/admin.php:562
 msgid "The GUID of the item you want to delete."
 msgstr "GUID of item to be deleted."
 
-#: mod/admin.php:580
+#: mod/admin.php:597
 msgid "Item marked for deletion."
 msgstr "Item marked for deletion."
 
-#: mod/admin.php:651
+#: mod/admin.php:669
 msgid "unknown"
 msgstr "unknown"
 
-#: mod/admin.php:754
+#: mod/admin.php:772
 msgid ""
 "This page offers you some numbers to the known part of the federated social "
 "network your Friendica node is part of. These numbers are not complete but "
 "only reflect the part of the network your node is aware of."
 msgstr "This page offers statistics about the federated social network, of which your Friendica node is one part. These numbers do not represent the entire network, but merely the parts that are connected to your node.\""
 
-#: mod/admin.php:755
+#: mod/admin.php:773
 msgid ""
 "The <em>Auto Discovered Contact Directory</em> feature is not enabled, it "
 "will improve the data displayed here."
 msgstr "The <em>Auto Discovered Contact Directory</em> feature is not enabled; enabling it will improve the data displayed here."
 
-#: mod/admin.php:767
+#: mod/admin.php:785
 #, php-format
 msgid ""
 "Currently this node is aware of %d nodes with %d registered users from the "
 "following platforms:"
 msgstr "Currently, this node is aware of %d nodes with %d registered users from the following platforms:"
 
-#: mod/admin.php:806 mod/admin.php:857
+#: mod/admin.php:825 mod/admin.php:878
 msgid "ID"
 msgstr "ID"
 
-#: mod/admin.php:807
+#: mod/admin.php:826
 msgid "Recipient Name"
 msgstr "Recipient name"
 
-#: mod/admin.php:808
+#: mod/admin.php:827
 msgid "Recipient Profile"
 msgstr "Recipient profile"
 
-#: mod/admin.php:809 src/Content/Nav.php:236
-#: src/Core/NotificationsManager.php:180 view/theme/frio/theme.php:280
+#: mod/admin.php:828 view/theme/frio/theme.php:269
+#: src/Core/NotificationsManager.php:182 src/Content/Nav.php:239
 msgid "Network"
 msgstr "Network"
 
-#: mod/admin.php:810 mod/admin.php:859
+#: mod/admin.php:829 mod/admin.php:880
 msgid "Created"
 msgstr "Created"
 
-#: mod/admin.php:811
+#: mod/admin.php:830
 msgid "Last Tried"
 msgstr "Last Tried"
 
-#: mod/admin.php:812
+#: mod/admin.php:831
 msgid ""
 "This page lists the content of the queue for outgoing postings. These are "
 "postings the initial delivery failed for. They will be resend later and "
 "eventually deleted if the delivery fails permanently."
 msgstr "This page lists the content of the queue for outgoing postings. These are postings for which the initial delivery failed. They will be resent later, and eventually deleted if the delivery fails permanently."
 
-#: mod/admin.php:833
+#: mod/admin.php:854
 msgid "Inspect Deferred Worker Queue"
 msgstr ""
 
-#: mod/admin.php:834
+#: mod/admin.php:855
 msgid ""
 "This page lists the deferred worker jobs. This are jobs that couldn't be "
 "executed at the first time."
 msgstr ""
 
-#: mod/admin.php:837
+#: mod/admin.php:858
 msgid "Inspect Worker Queue"
 msgstr ""
 
-#: mod/admin.php:838
+#: mod/admin.php:859
 msgid ""
 "This page lists the currently queued worker jobs. These jobs are handled by "
 "the worker cronjob you've set up during install."
 msgstr ""
 
-#: mod/admin.php:858
+#: mod/admin.php:879
 msgid "Job Parameters"
 msgstr ""
 
-#: mod/admin.php:860
+#: mod/admin.php:881
 msgid "Priority"
 msgstr ""
 
-#: mod/admin.php:885
+#: mod/admin.php:907
 #, php-format
 msgid ""
 "Your DB still runs with MyISAM tables. You should change the engine type to "
@@ -1307,32 +1341,32 @@ msgid ""
 " an automatic conversion.<br />"
 msgstr "Your DB still runs with MyISAM tables. You should change the engine type to InnoDB. As Friendica will use InnoDB-only features in the future, you should change this! See <a href=\"%s\">here</a> for a guide that may be helpful converting the table engines. You may also use the command <tt>php bin/console.php dbstructure toinnodb</tt> of your Friendica installation for an automatic conversion.<br />"
 
-#: mod/admin.php:892
+#: mod/admin.php:914
 #, php-format
 msgid ""
 "There is a new version of Friendica available for download. Your current "
 "version is %1$s, upstream version is %2$s"
 msgstr "A new Friendica version is available now. Your current version is %1$s, upstream version is %2$s"
 
-#: mod/admin.php:902
+#: mod/admin.php:924
 msgid ""
 "The database update failed. Please run \"php bin/console.php dbstructure "
 "update\" from the command line and have a look at the errors that might "
 "appear."
 msgstr "The database update failed. Please run \"php bin/console.php dbstructure update\" from the command line and check for errors that may appear."
 
-#: mod/admin.php:908
+#: mod/admin.php:930
 msgid "The worker was never executed. Please check your database structure!"
 msgstr "The worker process has never been executed. Please check your database structure!"
 
-#: mod/admin.php:911
+#: mod/admin.php:933
 #, php-format
 msgid ""
 "The last worker execution was on %s UTC. This is older than one hour. Please"
 " check your crontab settings."
 msgstr "The last worker process started at %s UTC. This is more than one hour ago. Please adjust your crontab settings."
 
-#: mod/admin.php:917
+#: mod/admin.php:939
 #, php-format
 msgid ""
 "Friendica's configuration now is stored in config/local.config.php, please "
@@ -1341,7 +1375,16 @@ msgid ""
 "help with the transition."
 msgstr ""
 
-#: mod/admin.php:924
+#: mod/admin.php:943
+#, php-format
+msgid ""
+"Friendica's configuration now is stored in config/local.config.php, please "
+"copy config/local-sample.config.php and move your config from "
+"<code>config/local.ini.php</code>. See <a href=\"%s\">the Config help "
+"page</a> for help with the transition."
+msgstr ""
+
+#: mod/admin.php:950
 #, php-format
 msgid ""
 "<a href=\"%s\">%s</a> is not reachable on your system. This is a severe "
@@ -1349,494 +1392,511 @@ msgid ""
 "href=\"%s\">the installation page</a> for help."
 msgstr ""
 
-#: mod/admin.php:930
+#: mod/admin.php:956
 msgid "Normal Account"
 msgstr "Standard account"
 
-#: mod/admin.php:931
+#: mod/admin.php:957
 msgid "Automatic Follower Account"
 msgstr "Automatic follower account"
 
-#: mod/admin.php:932
+#: mod/admin.php:958
 msgid "Public Forum Account"
 msgstr "Public forum account"
 
-#: mod/admin.php:933
+#: mod/admin.php:959
 msgid "Automatic Friend Account"
 msgstr "Automatic friend account"
 
-#: mod/admin.php:934
+#: mod/admin.php:960
 msgid "Blog Account"
 msgstr "Blog account"
 
-#: mod/admin.php:935
+#: mod/admin.php:961
 msgid "Private Forum Account"
 msgstr "Private forum account"
 
-#: mod/admin.php:958
+#: mod/admin.php:984
 msgid "Message queues"
 msgstr "Message queues"
 
-#: mod/admin.php:964
+#: mod/admin.php:990
 msgid "Server Settings"
 msgstr ""
 
-#: mod/admin.php:973
+#: mod/admin.php:999
 msgid "Summary"
 msgstr "Summary"
 
-#: mod/admin.php:975
+#: mod/admin.php:1001
 msgid "Registered users"
 msgstr "Signed up users"
 
-#: mod/admin.php:977
+#: mod/admin.php:1003
 msgid "Pending registrations"
 msgstr "Pending registrations"
 
-#: mod/admin.php:978
+#: mod/admin.php:1004
 msgid "Version"
 msgstr "Version"
 
-#: mod/admin.php:983
+#: mod/admin.php:1009
 msgid "Active addons"
 msgstr "Active addons"
 
-#: mod/admin.php:1015
+#: mod/admin.php:1042
 msgid "Can not parse base url. Must have at least <scheme>://<domain>"
 msgstr "Can not parse base URL. Must have at least <scheme>://<domain>"
 
-#: mod/admin.php:1351
+#: mod/admin.php:1415
 msgid "Site settings updated."
 msgstr "Site settings updated."
 
-#: mod/admin.php:1379 mod/settings.php:908
+#: mod/admin.php:1444 mod/settings.php:893
 msgid "No special theme for mobile devices"
 msgstr "No special theme for mobile devices"
 
-#: mod/admin.php:1408
+#: mod/admin.php:1473
 msgid "No community page for local users"
 msgstr "No community page for local users"
 
-#: mod/admin.php:1409
+#: mod/admin.php:1474
 msgid "No community page"
 msgstr "No community page"
 
-#: mod/admin.php:1410
+#: mod/admin.php:1475
 msgid "Public postings from users of this site"
 msgstr "Public postings from users of this site"
 
-#: mod/admin.php:1411
+#: mod/admin.php:1476
 msgid "Public postings from the federated network"
 msgstr "Public postings from the federated network"
 
-#: mod/admin.php:1412
+#: mod/admin.php:1477
 msgid "Public postings from local users and the federated network"
 msgstr "Public postings from local users and the federated network"
 
-#: mod/admin.php:1416 mod/admin.php:1585 mod/admin.php:1595
-#: src/Module/Contact.php:552
+#: mod/admin.php:1481 mod/admin.php:1682 mod/admin.php:1692
+#: src/Module/Contact.php:546
 msgid "Disabled"
 msgstr "Disabled"
 
-#: mod/admin.php:1418
+#: mod/admin.php:1483
 msgid "Users, Global Contacts"
 msgstr "Users, Global Contacts"
 
-#: mod/admin.php:1419
+#: mod/admin.php:1484
 msgid "Users, Global Contacts/fallback"
 msgstr "Users, Global Contacts/fallback"
 
-#: mod/admin.php:1423
+#: mod/admin.php:1488
 msgid "One month"
 msgstr "One month"
 
-#: mod/admin.php:1424
+#: mod/admin.php:1489
 msgid "Three months"
 msgstr "Three months"
 
-#: mod/admin.php:1425
+#: mod/admin.php:1490
 msgid "Half a year"
 msgstr "Half a year"
 
-#: mod/admin.php:1426
+#: mod/admin.php:1491
 msgid "One year"
 msgstr "One a year"
 
-#: mod/admin.php:1431
+#: mod/admin.php:1496
 msgid "Multi user instance"
 msgstr "Multi user instance"
 
-#: mod/admin.php:1457
+#: mod/admin.php:1520
 msgid "Closed"
 msgstr "Closed"
 
-#: mod/admin.php:1458
+#: mod/admin.php:1521
 msgid "Requires approval"
 msgstr "Requires approval"
 
-#: mod/admin.php:1459
+#: mod/admin.php:1522
 msgid "Open"
 msgstr "Open"
 
-#: mod/admin.php:1463
+#: mod/admin.php:1526
 msgid "No SSL policy, links will track page SSL state"
 msgstr "No SSL policy, links will track page SSL state"
 
-#: mod/admin.php:1464
+#: mod/admin.php:1527
 msgid "Force all links to use SSL"
 msgstr "Force all links to use SSL"
 
-#: mod/admin.php:1465
+#: mod/admin.php:1528
 msgid "Self-signed certificate, use SSL for local links only (discouraged)"
 msgstr "Self-signed certificate, use SSL for local links only (discouraged)"
 
-#: mod/admin.php:1469
+#: mod/admin.php:1532
 msgid "Don't check"
 msgstr "Don't check"
 
-#: mod/admin.php:1470
+#: mod/admin.php:1533
 msgid "check the stable version"
 msgstr "check for stable version updates"
 
-#: mod/admin.php:1471
+#: mod/admin.php:1534
 msgid "check the development version"
 msgstr "check for development version updates"
 
-#: mod/admin.php:1490
+#: mod/admin.php:1556
+msgid "Database (legacy)"
+msgstr ""
+
+#: mod/admin.php:1583
 msgid "Republish users to directory"
 msgstr "Republish users to directory"
 
-#: mod/admin.php:1491 mod/register.php:268
+#: mod/admin.php:1584 src/Module/Register.php:121
 msgid "Registration"
 msgstr "Registration"
 
-#: mod/admin.php:1492
+#: mod/admin.php:1585
 msgid "File upload"
 msgstr "File upload"
 
-#: mod/admin.php:1493
+#: mod/admin.php:1586
 msgid "Policies"
 msgstr "Policies"
 
-#: mod/admin.php:1494 mod/events.php:561 src/Model/Profile.php:878
-#: src/Module/Contact.php:907
+#: mod/admin.php:1587 mod/events.php:555 src/Model/Profile.php:878
+#: src/Module/Contact.php:902
 msgid "Advanced"
 msgstr "Advanced"
 
-#: mod/admin.php:1495
+#: mod/admin.php:1588
 msgid "Auto Discovered Contact Directory"
 msgstr "Auto-discovered contact directory"
 
-#: mod/admin.php:1496
+#: mod/admin.php:1589
 msgid "Performance"
 msgstr "Performance"
 
-#: mod/admin.php:1497
+#: mod/admin.php:1590
 msgid "Worker"
 msgstr "Worker"
 
-#: mod/admin.php:1498
+#: mod/admin.php:1591
 msgid "Message Relay"
 msgstr "Message relay"
 
-#: mod/admin.php:1499
+#: mod/admin.php:1592
 msgid "Relocate Instance"
 msgstr ""
 
-#: mod/admin.php:1500
+#: mod/admin.php:1593
 msgid "Warning! Advanced function. Could make this server unreachable."
 msgstr ""
 
-#: mod/admin.php:1503
+#: mod/admin.php:1597
 msgid "Site name"
 msgstr "Site name"
 
-#: mod/admin.php:1504
+#: mod/admin.php:1598
 msgid "Host name"
 msgstr "Host name"
 
-#: mod/admin.php:1505
+#: mod/admin.php:1599
 msgid "Sender Email"
 msgstr "Sender email"
 
-#: mod/admin.php:1505
+#: mod/admin.php:1599
 msgid ""
 "The email address your server shall use to send notification emails from."
 msgstr "The email address your server shall use to send notification emails from."
 
-#: mod/admin.php:1506
+#: mod/admin.php:1600
 msgid "Banner/Logo"
 msgstr "Banner/Logo"
 
-#: mod/admin.php:1507
+#: mod/admin.php:1601
 msgid "Shortcut icon"
 msgstr "Shortcut icon"
 
-#: mod/admin.php:1507
+#: mod/admin.php:1601
 msgid "Link to an icon that will be used for browsers."
 msgstr "Link to an icon that will be used for browsers."
 
-#: mod/admin.php:1508
+#: mod/admin.php:1602
 msgid "Touch icon"
 msgstr "Touch icon"
 
-#: mod/admin.php:1508
+#: mod/admin.php:1602
 msgid "Link to an icon that will be used for tablets and mobiles."
 msgstr "Link to an icon that will be used for tablets and mobiles."
 
-#: mod/admin.php:1509
+#: mod/admin.php:1603
 msgid "Additional Info"
 msgstr "Additional Info"
 
-#: mod/admin.php:1509
+#: mod/admin.php:1603
 #, php-format
 msgid ""
 "For public servers: you can add additional information here that will be "
 "listed at %s/servers."
 msgstr "For public servers: You can add additional information here that will be listed at %s/servers."
 
-#: mod/admin.php:1510
+#: mod/admin.php:1604
 msgid "System language"
 msgstr "System language"
 
-#: mod/admin.php:1511
+#: mod/admin.php:1605
 msgid "System theme"
 msgstr "System theme"
 
-#: mod/admin.php:1511
+#: mod/admin.php:1605
 msgid ""
 "Default system theme - may be over-ridden by user profiles - <a href='#' "
 "id='cnftheme'>change theme settings</a>"
 msgstr "Default system theme - may be overridden by user profiles - <a href='#' id='cnftheme'>change theme settings</a>"
 
-#: mod/admin.php:1512
+#: mod/admin.php:1606
 msgid "Mobile system theme"
 msgstr "Mobile system theme"
 
-#: mod/admin.php:1512
+#: mod/admin.php:1606
 msgid "Theme for mobile devices"
 msgstr "Theme for mobile devices"
 
-#: mod/admin.php:1513
+#: mod/admin.php:1607
 msgid "SSL link policy"
 msgstr "SSL link policy"
 
-#: mod/admin.php:1513
+#: mod/admin.php:1607
 msgid "Determines whether generated links should be forced to use SSL"
 msgstr "Determines whether generated links should be forced to use SSL"
 
-#: mod/admin.php:1514
+#: mod/admin.php:1608
 msgid "Force SSL"
 msgstr "Force SSL"
 
-#: mod/admin.php:1514
+#: mod/admin.php:1608
 msgid ""
 "Force all Non-SSL requests to SSL - Attention: on some systems it could lead"
 " to endless loops."
 msgstr "Force all Non-SSL requests to SSL - Attention: on some systems it could lead to endless loops."
 
-#: mod/admin.php:1515
+#: mod/admin.php:1609
 msgid "Hide help entry from navigation menu"
 msgstr "Hide help entry from navigation menu"
 
-#: mod/admin.php:1515
+#: mod/admin.php:1609
 msgid ""
 "Hides the menu entry for the Help pages from the navigation menu. You can "
 "still access it calling /help directly."
 msgstr "Hides the menu entry for the Help pages from the navigation menu. Help pages can still be accessed by calling ../help directly via its URL."
 
-#: mod/admin.php:1516
+#: mod/admin.php:1610
 msgid "Single user instance"
 msgstr "Single user instance"
 
-#: mod/admin.php:1516
+#: mod/admin.php:1610
 msgid "Make this instance multi-user or single-user for the named user"
 msgstr "Make this instance multi-user or single-user for the named user"
 
-#: mod/admin.php:1517
+#: mod/admin.php:1612
+msgid "File storage backend"
+msgstr ""
+
+#: mod/admin.php:1612
+msgid ""
+"The backend used to store uploaded data. If you change the storage backend, "
+"you can manually move the existing files. If you do not do so, the files "
+"uploaded before the change will still be available at the old backend. "
+"Please see <a href=\"/help/Settings#1_2_3_1\">the settings documentation</a>"
+" for more information about the choices and the moving procedure."
+msgstr ""
+
+#: mod/admin.php:1614
 msgid "Maximum image size"
 msgstr "Maximum image size"
 
-#: mod/admin.php:1517
+#: mod/admin.php:1614
 msgid ""
 "Maximum size in bytes of uploaded images. Default is 0, which means no "
 "limits."
 msgstr "Maximum size in bytes of uploaded images. Default is 0, which means no limits."
 
-#: mod/admin.php:1518
+#: mod/admin.php:1615
 msgid "Maximum image length"
 msgstr "Maximum image length"
 
-#: mod/admin.php:1518
+#: mod/admin.php:1615
 msgid ""
 "Maximum length in pixels of the longest side of uploaded images. Default is "
 "-1, which means no limits."
 msgstr "Maximum length in pixels of the longest side of uploaded images. Default is -1, which means no limits."
 
-#: mod/admin.php:1519
+#: mod/admin.php:1616
 msgid "JPEG image quality"
 msgstr "JPEG image quality"
 
-#: mod/admin.php:1519
+#: mod/admin.php:1616
 msgid ""
 "Uploaded JPEGS will be saved at this quality setting [0-100]. Default is "
 "100, which is full quality."
 msgstr "Uploaded JPEGs will be saved at this quality setting [0-100]. Default is 100, which is the original quality level."
 
-#: mod/admin.php:1521
+#: mod/admin.php:1618
 msgid "Register policy"
 msgstr "Registration policy"
 
-#: mod/admin.php:1522
+#: mod/admin.php:1619
 msgid "Maximum Daily Registrations"
 msgstr "Maximum daily registrations"
 
-#: mod/admin.php:1522
+#: mod/admin.php:1619
 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 "If open registration is permitted, this sets the maximum number of new registrations per day.  This setting has no effect for registrations by approval."
 
-#: mod/admin.php:1523
+#: mod/admin.php:1620
 msgid "Register text"
 msgstr "Registration text"
 
-#: mod/admin.php:1523
+#: mod/admin.php:1620
 msgid ""
 "Will be displayed prominently on the registration page. You can use BBCode "
 "here."
 msgstr "Will be displayed prominently on the registration page. You may use BBCode here."
 
-#: mod/admin.php:1524
+#: mod/admin.php:1621
 msgid "Forbidden Nicknames"
 msgstr ""
 
-#: mod/admin.php:1524
+#: mod/admin.php:1621
 msgid ""
 "Comma separated list of nicknames that are forbidden from registration. "
 "Preset is a list of role names according RFC 2142."
 msgstr ""
 
-#: mod/admin.php:1525
+#: mod/admin.php:1622
 msgid "Accounts abandoned after x days"
 msgstr "Accounts abandoned after so many days"
 
-#: mod/admin.php:1525
+#: mod/admin.php:1622
 msgid ""
 "Will not waste system resources polling external sites for abandonded "
 "accounts. Enter 0 for no time limit."
 msgstr "Will not waste system resources polling external sites for abandoned accounts. Enter 0 for no time limit."
 
-#: mod/admin.php:1526
+#: mod/admin.php:1623
 msgid "Allowed friend domains"
 msgstr "Allowed friend domains"
 
-#: mod/admin.php:1526
+#: mod/admin.php:1623
 msgid ""
 "Comma separated list of domains which are allowed to establish friendships "
 "with this site. Wildcards are accepted. Empty to allow any domains"
 msgstr "Comma-separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Leave empty to allow any domains"
 
-#: mod/admin.php:1527
+#: mod/admin.php:1624
 msgid "Allowed email domains"
 msgstr "Allowed email domains"
 
-#: mod/admin.php:1527
+#: mod/admin.php:1624
 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 "Comma-separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Leave empty to allow any domains"
 
-#: mod/admin.php:1528
+#: mod/admin.php:1625
 msgid "No OEmbed rich content"
 msgstr "No OEmbed rich content"
 
-#: mod/admin.php:1528
+#: mod/admin.php:1625
 msgid ""
 "Don't show the rich content (e.g. embedded PDF), except from the domains "
 "listed below."
 msgstr "Don't show rich content (e.g. embedded PDF), except from the domains listed below."
 
-#: mod/admin.php:1529
+#: mod/admin.php:1626
 msgid "Allowed OEmbed domains"
 msgstr "Allowed OEmbed domains"
 
-#: mod/admin.php:1529
+#: mod/admin.php:1626
 msgid ""
 "Comma separated list of domains which oembed content is allowed to be "
 "displayed. Wildcards are accepted."
 msgstr "Comma-separated list of domains from where OEmbed content is allowed. Wildcards are possible."
 
-#: mod/admin.php:1530
+#: mod/admin.php:1627
 msgid "Block public"
 msgstr "Block public"
 
-#: mod/admin.php:1530
+#: mod/admin.php:1627
 msgid ""
 "Check to block public access to all otherwise public personal pages on this "
 "site unless you are currently logged in."
 msgstr "Block public access to all otherwise public personal pages on this site, except for local users when logged in."
 
-#: mod/admin.php:1531
+#: mod/admin.php:1628
 msgid "Force publish"
 msgstr "Mandatory directory listing"
 
-#: mod/admin.php:1531
+#: mod/admin.php:1628
 msgid ""
 "Check to force all profiles on this site to be listed in the site directory."
 msgstr "Force all profiles on this site to be listed in the site directory."
 
-#: mod/admin.php:1531
+#: mod/admin.php:1628
 msgid "Enabling this may violate privacy laws like the GDPR"
 msgstr ""
 
-#: mod/admin.php:1532
+#: mod/admin.php:1629
 msgid "Global directory URL"
 msgstr "Global directory URL"
 
-#: mod/admin.php:1532
+#: mod/admin.php:1629
 msgid ""
 "URL to the global directory. If this is not set, the global directory is "
 "completely unavailable to the application."
 msgstr "URL to the global directory: If this is not set, the global directory is completely unavailable to the application."
 
-#: mod/admin.php:1533
+#: mod/admin.php:1630
 msgid "Private posts by default for new users"
 msgstr "Private posts by default for new users"
 
-#: mod/admin.php:1533
+#: mod/admin.php:1630
 msgid ""
 "Set default post permissions for all new members to the default privacy "
 "group rather than public."
 msgstr "Set default post permissions for all new members to the default privacy group rather than public."
 
-#: mod/admin.php:1534
+#: mod/admin.php:1631
 msgid "Don't include post content in email notifications"
 msgstr "Don't include post content in email notifications"
 
-#: mod/admin.php:1534
+#: mod/admin.php:1631
 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 "Don't include the content of a post/comment/private message in the email notifications sent from this site, as a privacy measure."
 
-#: mod/admin.php:1535
+#: mod/admin.php:1632
 msgid "Disallow public access to addons listed in the apps menu."
 msgstr "Disallow public access to addons listed in the apps menu."
 
-#: mod/admin.php:1535
+#: mod/admin.php:1632
 msgid ""
 "Checking this box will restrict addons listed in the apps menu to members "
 "only."
 msgstr "Checking this box will restrict addons listed in the apps menu to members only."
 
-#: mod/admin.php:1536
+#: mod/admin.php:1633
 msgid "Don't embed private images in posts"
 msgstr "Don't embed private images in posts"
 
-#: mod/admin.php:1536
+#: mod/admin.php:1633
 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 "
@@ -1844,11 +1904,11 @@ msgid ""
 "while."
 msgstr "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."
 
-#: mod/admin.php:1537
+#: mod/admin.php:1634
 msgid "Explicit Content"
 msgstr ""
 
-#: mod/admin.php:1537
+#: mod/admin.php:1634
 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 "
@@ -1857,245 +1917,245 @@ msgid ""
 "will be shown at the user registration page."
 msgstr ""
 
-#: mod/admin.php:1538
+#: mod/admin.php:1635
 msgid "Allow Users to set remote_self"
 msgstr "Allow users to set \"Remote self\""
 
-#: mod/admin.php:1538
+#: mod/admin.php:1635
 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 "This allows every user to mark contacts as a \"Remote self\" in the repair contact dialogue. Setting this flag on a contact will mirror every posting of that contact in the users stream."
 
-#: mod/admin.php:1539
+#: mod/admin.php:1636
 msgid "Block multiple registrations"
 msgstr "Block multiple registrations"
 
-#: mod/admin.php:1539
+#: mod/admin.php:1636
 msgid "Disallow users to register additional accounts for use as pages."
 msgstr "Disallow users to sign up for additional accounts."
 
-#: mod/admin.php:1540
-msgid "OpenID support"
-msgstr "OpenID support"
+#: mod/admin.php:1637
+msgid "Disable OpenID"
+msgstr ""
 
-#: mod/admin.php:1540
-msgid "OpenID support for registration and logins."
-msgstr "OpenID support for registration and logins."
+#: mod/admin.php:1637
+msgid "Disable OpenID support for registration and logins."
+msgstr ""
 
-#: mod/admin.php:1541
-msgid "Fullname check"
-msgstr "Full name check"
+#: mod/admin.php:1638
+msgid "No Fullname check"
+msgstr ""
 
-#: mod/admin.php:1541
+#: mod/admin.php:1638
 msgid ""
-"Force users to register with a space between firstname and lastname in Full "
-"name, as an antispam measure"
-msgstr "Force users to sign up with a space between first name and last name in the full name field; it may reduce spam and abuse registrations."
+"Allow users to register without a space between the first name and the last "
+"name in their full name."
+msgstr ""
 
-#: mod/admin.php:1542
+#: mod/admin.php:1639
 msgid "Community pages for visitors"
 msgstr "Community pages for visitors"
 
-#: mod/admin.php:1542
+#: mod/admin.php:1639
 msgid ""
 "Which community pages should be available for visitors. Local users always "
 "see both pages."
 msgstr "Which community pages should be available for visitors. Local users always see both pages."
 
-#: mod/admin.php:1543
+#: mod/admin.php:1640
 msgid "Posts per user on community page"
 msgstr "Posts per user on community page"
 
-#: mod/admin.php:1543
+#: mod/admin.php:1640
 msgid ""
 "The maximum number of posts per user on the community page. (Not valid for "
 "'Global Community')"
 msgstr "Maximum number of posts per user on the community page (not valid for 'Global Community')."
 
-#: mod/admin.php:1544
-msgid "Enable OStatus support"
-msgstr "Enable OStatus support"
+#: mod/admin.php:1641
+msgid "Disable OStatus support"
+msgstr ""
 
-#: mod/admin.php:1544
+#: mod/admin.php:1641
 msgid ""
-"Provide built-in OStatus (StatusNet, GNU Social etc.) compatibility. All "
+"Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All "
 "communications in OStatus are public, so privacy warnings will be "
 "occasionally displayed."
-msgstr "Provide built-in OStatus (StatusNet, GNU Social, etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed."
+msgstr ""
 
-#: mod/admin.php:1545
+#: mod/admin.php:1642
 msgid "Only import OStatus/ActivityPub threads from our contacts"
 msgstr ""
 
-#: mod/admin.php:1545
+#: mod/admin.php:1642
 msgid ""
 "Normally we import every content from our OStatus and ActivityPub contacts. "
 "With this option we only store threads that are started by a contact that is"
 " known on our system."
 msgstr ""
 
-#: mod/admin.php:1546
+#: mod/admin.php:1643
 msgid "OStatus support can only be enabled if threading is enabled."
 msgstr "OStatus support can only be enabled if threading is enabled."
 
-#: mod/admin.php:1548
+#: mod/admin.php:1645
 msgid ""
 "Diaspora support can't be enabled because Friendica was installed into a sub"
 " directory."
 msgstr "Diaspora support can't be enabled because Friendica was installed into a sub directory."
 
-#: mod/admin.php:1549
+#: mod/admin.php:1646
 msgid "Enable Diaspora support"
 msgstr "Enable Diaspora support"
 
-#: mod/admin.php:1549
+#: mod/admin.php:1646
 msgid "Provide built-in Diaspora network compatibility."
 msgstr "Provide built-in Diaspora network compatibility."
 
-#: mod/admin.php:1550
+#: mod/admin.php:1647
 msgid "Only allow Friendica contacts"
 msgstr "Only allow Friendica contacts"
 
-#: mod/admin.php:1550
+#: mod/admin.php:1647
 msgid ""
 "All contacts must use Friendica protocols. All other built-in communication "
 "protocols disabled."
 msgstr "All contacts must use Friendica protocols. All other built-in communication protocols will be disabled."
 
-#: mod/admin.php:1551
+#: mod/admin.php:1648
 msgid "Verify SSL"
 msgstr "Verify SSL"
 
-#: mod/admin.php:1551
+#: mod/admin.php:1648
 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 "If you wish, you can turn on strict certificate checking. This will mean you cannot connect (at all) to self-signed SSL sites."
 
-#: mod/admin.php:1552
+#: mod/admin.php:1649
 msgid "Proxy user"
 msgstr "Proxy user"
 
-#: mod/admin.php:1553
+#: mod/admin.php:1650
 msgid "Proxy URL"
 msgstr "Proxy URL"
 
-#: mod/admin.php:1554
+#: mod/admin.php:1651
 msgid "Network timeout"
 msgstr "Network timeout"
 
-#: mod/admin.php:1554
+#: mod/admin.php:1651
 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)."
 msgstr "Value is in seconds. Set to 0 for unlimited (not recommended)."
 
-#: mod/admin.php:1555
+#: mod/admin.php:1652
 msgid "Maximum Load Average"
 msgstr "Maximum load average"
 
-#: mod/admin.php:1555
+#: mod/admin.php:1652
 msgid ""
 "Maximum system load before delivery and poll processes are deferred - "
 "default 50."
 msgstr "Maximum system load before delivery and poll processes are deferred (default 50)."
 
-#: mod/admin.php:1556
+#: mod/admin.php:1653
 msgid "Maximum Load Average (Frontend)"
 msgstr "Maximum load average (frontend)"
 
-#: mod/admin.php:1556
+#: mod/admin.php:1653
 msgid "Maximum system load before the frontend quits service - default 50."
 msgstr "Maximum system load before the frontend quits service (default 50)."
 
-#: mod/admin.php:1557
+#: mod/admin.php:1654
 msgid "Minimal Memory"
 msgstr "Minimal memory"
 
-#: mod/admin.php:1557
+#: mod/admin.php:1654
 msgid ""
 "Minimal free memory in MB for the worker. Needs access to /proc/meminfo - "
 "default 0 (deactivated)."
 msgstr "Minimal free memory in MB for the worker. Needs access to /proc/meminfo - default 0 (deactivated)."
 
-#: mod/admin.php:1558
+#: mod/admin.php:1655
 msgid "Maximum table size for optimization"
 msgstr "Maximum table size for optimization"
 
-#: mod/admin.php:1558
+#: mod/admin.php:1655
 msgid ""
 "Maximum table size (in MB) for the automatic optimization. Enter -1 to "
 "disable it."
 msgstr "Maximum table size (in MB) for automatic optimization. Enter -1 to disable it."
 
-#: mod/admin.php:1559
+#: mod/admin.php:1656
 msgid "Minimum level of fragmentation"
 msgstr "Minimum level of fragmentation"
 
-#: mod/admin.php:1559
+#: mod/admin.php:1656
 msgid ""
 "Minimum fragmenation level to start the automatic optimization - default "
 "value is 30%."
 msgstr "Minimum fragmentation level to start the automatic optimization (default 30%)."
 
-#: mod/admin.php:1561
+#: mod/admin.php:1658
 msgid "Periodical check of global contacts"
 msgstr "Periodical check of global contacts"
 
-#: mod/admin.php:1561
+#: mod/admin.php:1658
 msgid ""
 "If enabled, the global contacts are checked periodically for missing or "
 "outdated data and the vitality of the contacts and servers."
 msgstr "This checks global contacts periodically for missing or outdated data and the vitality of the contacts and servers."
 
-#: mod/admin.php:1562
+#: mod/admin.php:1659
 msgid "Days between requery"
 msgstr "Days between enquiry"
 
-#: mod/admin.php:1562
+#: mod/admin.php:1659
 msgid "Number of days after which a server is requeried for his contacts."
 msgstr "Number of days after which a server is rechecked for contacts."
 
-#: mod/admin.php:1563
+#: mod/admin.php:1660
 msgid "Discover contacts from other servers"
 msgstr "Discover contacts from other servers"
 
-#: mod/admin.php:1563
+#: mod/admin.php:1660
 msgid ""
 "Periodically query other servers for contacts. You can choose between "
 "'users': the users on the remote system, 'Global Contacts': active contacts "
 "that are known on the system. The fallback is meant for Redmatrix servers "
 "and older friendica servers, where global contacts weren't available. The "
-"fallback increases the server load, so the recommened setting is 'Users, "
+"fallback increases the server load, so the recommended setting is 'Users, "
 "Global Contacts'."
-msgstr "Periodically query other servers for contacts. You can choose between 'Users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older Friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommend setting is 'Users, Global Contacts'."
+msgstr ""
 
-#: mod/admin.php:1564
+#: mod/admin.php:1661
 msgid "Timeframe for fetching global contacts"
 msgstr "Time-frame for fetching global contacts"
 
-#: mod/admin.php:1564
+#: mod/admin.php:1661
 msgid ""
 "When the discovery is activated, this value defines the timeframe for the "
 "activity of the global contacts that are fetched from other servers."
 msgstr "If discovery is activated, this value defines the time-frame for the activity of the global contacts that are fetched from other servers."
 
-#: mod/admin.php:1565
+#: mod/admin.php:1662
 msgid "Search the local directory"
 msgstr "Search the local directory"
 
-#: mod/admin.php:1565
+#: mod/admin.php:1662
 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 "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."
 
-#: mod/admin.php:1567
+#: mod/admin.php:1664
 msgid "Publish server information"
 msgstr "Publish server information"
 
-#: mod/admin.php:1567
+#: mod/admin.php:1664
 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 "
@@ -2103,50 +2163,50 @@ msgid ""
 " href='http://the-federation.info/'>the-federation.info</a> for details."
 msgstr "This publishes generic data about the server and its usage. The data contains the name and version of the server, number of users with public profiles, number of posts and the activated protocols and connectors. See <a href='http://the-federation.info/'>the-federation.info</a> for details."
 
-#: mod/admin.php:1569
+#: mod/admin.php:1666
 msgid "Check upstream version"
 msgstr "Check upstream version"
 
-#: mod/admin.php:1569
+#: mod/admin.php:1666
 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 "Enables checking for new Friendica versions at github. If there is a new version, you will be informed in the admin panel overview."
 
-#: mod/admin.php:1570
+#: mod/admin.php:1667
 msgid "Suppress Tags"
 msgstr "Suppress tags"
 
-#: mod/admin.php:1570
+#: mod/admin.php:1667
 msgid "Suppress showing a list of hashtags at the end of the posting."
 msgstr "Suppress listed hashtags at the end of posts."
 
-#: mod/admin.php:1571
+#: mod/admin.php:1668
 msgid "Clean database"
 msgstr "Clean database"
 
-#: mod/admin.php:1571
+#: mod/admin.php:1668
 msgid ""
 "Remove old remote items, orphaned database records and old content from some"
 " other helper tables."
 msgstr "Remove old remote items, orphaned database records, and old content from some other helper tables."
 
-#: mod/admin.php:1572
+#: mod/admin.php:1669
 msgid "Lifespan of remote items"
 msgstr "Lifespan of remote items"
 
-#: mod/admin.php:1572
+#: mod/admin.php:1669
 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 "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 behavior."
 
-#: mod/admin.php:1573
+#: mod/admin.php:1670
 msgid "Lifespan of unclaimed items"
 msgstr "Lifespan of unclaimed items"
 
-#: mod/admin.php:1573
+#: mod/admin.php:1670
 msgid ""
 "When the database cleanup is enabled, this defines the days after which "
 "unclaimed remote items (mostly content from the relay) will be deleted. "
@@ -2154,141 +2214,141 @@ msgid ""
 "items if set to 0."
 msgstr "When the database cleanup is enabled, this defines the days after which unclaimed remote items (mostly content from the relay) will be deleted. Default value is 90 days. Defaults to the general lifespan value of remote items if set to 0."
 
-#: mod/admin.php:1574
+#: mod/admin.php:1671
 msgid "Lifespan of raw conversation data"
 msgstr ""
 
-#: mod/admin.php:1574
+#: mod/admin.php:1671
 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 ""
 
-#: mod/admin.php:1575
+#: mod/admin.php:1672
 msgid "Path to item cache"
 msgstr "Path to item cache"
 
-#: mod/admin.php:1575
+#: mod/admin.php:1672
 msgid "The item caches buffers generated bbcode and external images."
 msgstr "The item cache retains expanded bbcode and external images."
 
-#: mod/admin.php:1576
+#: mod/admin.php:1673
 msgid "Cache duration in seconds"
 msgstr "Cache duration in seconds"
 
-#: mod/admin.php:1576
+#: mod/admin.php:1673
 msgid ""
 "How long should the cache files be hold? Default value is 86400 seconds (One"
 " day). To disable the item cache, set the value to -1."
 msgstr "How long should cache files be held? (Default 86400 seconds - one day;  -1 disables item cache)"
 
-#: mod/admin.php:1577
+#: mod/admin.php:1674
 msgid "Maximum numbers of comments per post"
 msgstr "Maximum number of comments per post"
 
-#: mod/admin.php:1577
+#: mod/admin.php:1674
 msgid "How much comments should be shown for each post? Default value is 100."
 msgstr "How many comments should be shown for each post? (Default 100)"
 
-#: mod/admin.php:1578
+#: mod/admin.php:1675
 msgid "Temp path"
 msgstr "Temp path"
 
-#: mod/admin.php:1578
+#: mod/admin.php:1675
 msgid ""
 "If you have a restricted system where the webserver can't access the system "
 "temp path, enter another path here."
 msgstr "Enter a different temp path if your system restricts the webserver's access to the system temp path."
 
-#: mod/admin.php:1579
+#: mod/admin.php:1676
 msgid "Base path to installation"
 msgstr "Base path to installation"
 
-#: mod/admin.php:1579
+#: mod/admin.php:1676
 msgid ""
 "If the system cannot detect the correct path to your installation, enter the"
 " correct path here. This setting should only be set if you are using a "
 "restricted system and symbolic links to your webroot."
 msgstr "If the system cannot detect the correct path to your installation, enter the correct path here. This setting should only be set if you are using a restricted system and symbolic links to your webroot."
 
-#: mod/admin.php:1580
+#: mod/admin.php:1677
 msgid "Disable picture proxy"
 msgstr "Disable picture proxy"
 
-#: mod/admin.php:1580
+#: mod/admin.php:1677
 msgid ""
 "The picture proxy increases performance and privacy. It shouldn't be used on"
 " systems with very low bandwidth."
 msgstr ""
 
-#: mod/admin.php:1581
+#: mod/admin.php:1678
 msgid "Only search in tags"
 msgstr "Only search in tags"
 
-#: mod/admin.php:1581
+#: mod/admin.php:1678
 msgid "On large systems the text search can slow down the system extremely."
 msgstr "On large systems, the text search can slow down the system significantly."
 
-#: mod/admin.php:1583
+#: mod/admin.php:1680
 msgid "New base url"
 msgstr "New base URL"
 
-#: mod/admin.php:1583
+#: mod/admin.php:1680
 msgid ""
 "Change base url for this server. Sends relocate message to all Friendica and"
 " Diaspora* contacts of all users."
 msgstr "Change base URL for this server. Sends a relocate message to all Friendica and Diaspora* contacts, for all users."
 
-#: mod/admin.php:1585
+#: mod/admin.php:1682
 msgid "RINO Encryption"
 msgstr "RINO Encryption"
 
-#: mod/admin.php:1585
+#: mod/admin.php:1682
 msgid "Encryption layer between nodes."
 msgstr "Encryption layer between nodes."
 
-#: mod/admin.php:1585
+#: mod/admin.php:1682
 msgid "Enabled"
 msgstr "Enabled"
 
-#: mod/admin.php:1587
+#: mod/admin.php:1684
 msgid "Maximum number of parallel workers"
 msgstr "Maximum number of parallel workers"
 
-#: mod/admin.php:1587
+#: mod/admin.php:1684
 #, php-format
 msgid ""
 "On shared hosters set this to %d. On larger systems, values of %d are great."
 " Default value is %d."
 msgstr ""
 
-#: mod/admin.php:1588
+#: mod/admin.php:1685
 msgid "Don't use 'proc_open' with the worker"
 msgstr "Don't use 'proc_open' with the worker"
 
-#: mod/admin.php:1588
+#: mod/admin.php:1685
 msgid ""
 "Enable this if your system doesn't allow the use of 'proc_open'. This can "
 "happen on shared hosters. If this is enabled you should increase the "
 "frequency of worker calls in your crontab."
 msgstr "Enable this if your system doesn't allow the use of 'proc_open'. This can happen on shared hosts. If this is enabled, you should increase the frequency of worker calls in your crontab."
 
-#: mod/admin.php:1589
+#: mod/admin.php:1686
 msgid "Enable fastlane"
 msgstr "Enable fast-lane"
 
-#: mod/admin.php:1589
+#: mod/admin.php:1686
 msgid ""
 "When enabed, the fastlane mechanism starts an additional worker if processes"
 " with higher priority are blocked by processes of lower priority."
 msgstr "The fast-lane mechanism starts an additional worker if processes with higher priority are blocked by processes of lower priority."
 
-#: mod/admin.php:1590
+#: mod/admin.php:1687
 msgid "Enable frontend worker"
 msgstr "Enable frontend worker"
 
-#: mod/admin.php:1590
+#: mod/admin.php:1687
 #, php-format
 msgid ""
 "When enabled the Worker process is triggered when backend access is "
@@ -2298,136 +2358,136 @@ msgid ""
 " on your server."
 msgstr "When enabled, the Worker process is triggered when backend access is performed \\x28e.g. messages being delivered\\x29. On smaller sites, you might want to call %s/worker on a regular basis via an external cron job. You should only enable this option if you cannot utilize cron/scheduled jobs on your server."
 
-#: mod/admin.php:1592
+#: mod/admin.php:1689
 msgid "Subscribe to relay"
 msgstr "Subscribe to relay"
 
-#: mod/admin.php:1592
+#: mod/admin.php:1689
 msgid ""
 "Enables the receiving of public posts from the relay. They will be included "
 "in the search, subscribed tags and on the global community page."
 msgstr "Receive public posts from the specified relay. Post will be included in searches, subscribed tags, and on the global community page."
 
-#: mod/admin.php:1593
+#: mod/admin.php:1690
 msgid "Relay server"
 msgstr "Relay server"
 
-#: mod/admin.php:1593
+#: mod/admin.php:1690
 msgid ""
 "Address of the relay server where public posts should be send to. For "
 "example https://relay.diasp.org"
 msgstr "Address of the relay server where public posts should be sent. For example https://relay.diasp.org"
 
-#: mod/admin.php:1594
+#: mod/admin.php:1691
 msgid "Direct relay transfer"
 msgstr "Direct relay transfer"
 
-#: mod/admin.php:1594
+#: mod/admin.php:1691
 msgid ""
 "Enables the direct transfer to other servers without using the relay servers"
 msgstr "Enables direct transfer to other servers without using a relay server."
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 msgid "Relay scope"
 msgstr "Relay scope"
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 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 "Set to 'all' or 'tags'. 'all' means receive every public post; 'tags' receive public posts only with specified tags."
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 msgid "all"
 msgstr "all"
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 msgid "tags"
 msgstr "tags"
 
-#: mod/admin.php:1596
+#: mod/admin.php:1693
 msgid "Server tags"
 msgstr "Server tags"
 
-#: mod/admin.php:1596
+#: mod/admin.php:1693
 msgid "Comma separated list of tags for the 'tags' subscription."
 msgstr "Comma-separated tags for subscription."
 
-#: mod/admin.php:1597
+#: mod/admin.php:1694
 msgid "Allow user tags"
 msgstr "Allow user tags"
 
-#: mod/admin.php:1597
+#: mod/admin.php:1694
 msgid ""
 "If enabled, the tags from the saved searches will used for the 'tags' "
 "subscription in addition to the 'relay_server_tags'."
 msgstr "Use user-generated tags from saved searches for 'tags' subscription in addition to 'relay_server_tags'."
 
-#: mod/admin.php:1600
+#: mod/admin.php:1697
 msgid "Start Relocation"
 msgstr ""
 
-#: mod/admin.php:1626
+#: mod/admin.php:1724
 msgid "Update has been marked successful"
 msgstr "Update has been marked successful"
 
-#: mod/admin.php:1633
+#: mod/admin.php:1731
 #, php-format
 msgid "Database structure update %s was successfully applied."
 msgstr "Database structure update %s was successfully applied."
 
-#: mod/admin.php:1637
+#: mod/admin.php:1735
 #, php-format
 msgid "Executing of database structure update %s failed with error: %s"
 msgstr "Execution of database structure update %s failed with error: %s"
 
-#: mod/admin.php:1653
+#: mod/admin.php:1751
 #, php-format
 msgid "Executing %s failed with error: %s"
 msgstr "Execution of %s failed with error: %s"
 
-#: mod/admin.php:1655
+#: mod/admin.php:1753
 #, php-format
 msgid "Update %s was successfully applied."
 msgstr "Update %s was successfully applied."
 
-#: mod/admin.php:1658
+#: mod/admin.php:1756
 #, php-format
 msgid "Update %s did not return a status. Unknown if it succeeded."
 msgstr "Update %s did not return a status. Unknown if it succeeded."
 
-#: mod/admin.php:1661
+#: mod/admin.php:1759
 #, php-format
 msgid "There was no additional update function %s that needed to be called."
 msgstr "There was no additional update function %s that needed to be called."
 
-#: mod/admin.php:1684
+#: mod/admin.php:1782
 msgid "No failed updates."
 msgstr "No failed updates."
 
-#: mod/admin.php:1685
+#: mod/admin.php:1783
 msgid "Check database structure"
 msgstr "Check database structure"
 
-#: mod/admin.php:1690
+#: mod/admin.php:1788
 msgid "Failed Updates"
 msgstr "Failed updates"
 
-#: mod/admin.php:1691
+#: mod/admin.php:1789
 msgid ""
 "This does not include updates prior to 1139, which did not return a status."
 msgstr "This does not include updates prior to 1139, which did not return a status."
 
-#: mod/admin.php:1692
+#: mod/admin.php:1790
 msgid "Mark success (if update was manually applied)"
 msgstr "Mark success (if update was manually applied)"
 
-#: mod/admin.php:1693
+#: mod/admin.php:1791
 msgid "Attempt to execute this update step automatically"
 msgstr "Attempt to execute this update step automatically"
 
-#: mod/admin.php:1732
+#: mod/admin.php:1831
 #, php-format
 msgid ""
 "\n"
@@ -2435,7 +2495,7 @@ msgid ""
 "\t\t\t\tthe administrator of %2$s has set up an account for you."
 msgstr "\n\t\t\tDear %1$s,\n\t\t\t\tThe administrator of %2$s has set up an account for you."
 
-#: mod/admin.php:1735
+#: mod/admin.php:1834
 #, php-format
 msgid ""
 "\n"
@@ -2467,221 +2527,225 @@ msgid ""
 "\t\t\tThank you and welcome to %4$s."
 msgstr "\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%1$s\n\t\t\tLogin Name:\t\t%2$s\n\t\t\tPassword:\t\t%3$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %1$s/removeme\n\n\t\t\tThank you and welcome to %4$s."
 
-#: mod/admin.php:1772 src/Model/User.php:773
+#: mod/admin.php:1871 src/Model/User.php:858
 #, php-format
 msgid "Registration details for %s"
 msgstr "Registration details for %s"
 
-#: mod/admin.php:1782
+#: mod/admin.php:1881
 #, php-format
 msgid "%s user blocked/unblocked"
 msgid_plural "%s users blocked/unblocked"
 msgstr[0] "%s user blocked/unblocked"
 msgstr[1] "%s users blocked/unblocked"
 
-#: mod/admin.php:1789 mod/admin.php:1842
+#: mod/admin.php:1888 mod/admin.php:1942
 msgid "You can't remove yourself"
 msgstr ""
 
-#: mod/admin.php:1792
+#: mod/admin.php:1891
 #, php-format
 msgid "%s user deleted"
 msgid_plural "%s users deleted"
 msgstr[0] "%s user deleted"
 msgstr[1] "%s users deleted"
 
-#: mod/admin.php:1840
+#: mod/admin.php:1940
 #, php-format
 msgid "User '%s' deleted"
 msgstr "User '%s' deleted"
 
-#: mod/admin.php:1851
+#: mod/admin.php:1951
 #, php-format
 msgid "User '%s' unblocked"
 msgstr "User '%s' unblocked"
 
-#: mod/admin.php:1851
+#: mod/admin.php:1951
 #, php-format
 msgid "User '%s' blocked"
 msgstr "User '%s' blocked"
 
-#: mod/admin.php:1899 mod/settings.php:1064
+#: mod/admin.php:1999 mod/settings.php:1049
 msgid "Normal Account Page"
 msgstr "Standard"
 
-#: mod/admin.php:1900 mod/settings.php:1068
+#: mod/admin.php:2000 mod/settings.php:1053
 msgid "Soapbox Page"
 msgstr "Soapbox"
 
-#: mod/admin.php:1901 mod/settings.php:1072
+#: mod/admin.php:2001 mod/settings.php:1057
 msgid "Public Forum"
 msgstr "Public forum"
 
-#: mod/admin.php:1902 mod/settings.php:1076
+#: mod/admin.php:2002 mod/settings.php:1061
 msgid "Automatic Friend Page"
 msgstr "Love-all"
 
-#: mod/admin.php:1903
+#: mod/admin.php:2003
 msgid "Private Forum"
 msgstr "Private Forum"
 
-#: mod/admin.php:1906 mod/settings.php:1048
+#: mod/admin.php:2006 mod/settings.php:1033
 msgid "Personal Page"
 msgstr "Personal Page"
 
-#: mod/admin.php:1907 mod/settings.php:1052
+#: mod/admin.php:2007 mod/settings.php:1037
 msgid "Organisation Page"
 msgstr "Organization Page"
 
-#: mod/admin.php:1908 mod/settings.php:1056
+#: mod/admin.php:2008 mod/settings.php:1041
 msgid "News Page"
 msgstr "News Page"
 
-#: mod/admin.php:1909 mod/settings.php:1060
+#: mod/admin.php:2009 mod/settings.php:1045
 msgid "Community Forum"
 msgstr "Community Forum"
 
-#: mod/admin.php:1955 mod/admin.php:1966 mod/admin.php:1980 mod/admin.php:1998
-#: src/Content/ContactSelector.php:84
+#: mod/admin.php:2010
+msgid "Relay"
+msgstr ""
+
+#: mod/admin.php:2056 mod/admin.php:2067 mod/admin.php:2081 mod/admin.php:2099
+#: src/Content/ContactSelector.php:86
 msgid "Email"
 msgstr "Email"
 
-#: mod/admin.php:1955 mod/admin.php:1980
+#: mod/admin.php:2056 mod/admin.php:2081
 msgid "Register date"
 msgstr "Registration date"
 
-#: mod/admin.php:1955 mod/admin.php:1980
+#: mod/admin.php:2056 mod/admin.php:2081
 msgid "Last login"
 msgstr "Last login"
 
-#: mod/admin.php:1955 mod/admin.php:1980
+#: mod/admin.php:2056 mod/admin.php:2081
 msgid "Last item"
 msgstr "Last item"
 
-#: mod/admin.php:1955
+#: mod/admin.php:2056
 msgid "Type"
 msgstr "Type"
 
-#: mod/admin.php:1962
+#: mod/admin.php:2063
 msgid "Add User"
 msgstr "Add user"
 
-#: mod/admin.php:1964
+#: mod/admin.php:2065
 msgid "User registrations waiting for confirm"
 msgstr "User registrations awaiting confirmation"
 
-#: mod/admin.php:1965
+#: mod/admin.php:2066
 msgid "User waiting for permanent deletion"
 msgstr "User awaiting permanent deletion"
 
-#: mod/admin.php:1966
+#: mod/admin.php:2067
 msgid "Request date"
 msgstr "Request date"
 
-#: mod/admin.php:1967
+#: mod/admin.php:2068
 msgid "No registrations."
 msgstr "No registrations."
 
-#: mod/admin.php:1968
+#: mod/admin.php:2069
 msgid "Note from the user"
 msgstr "Note from the user"
 
-#: mod/admin.php:1969 mod/notifications.php:181 mod/notifications.php:267
+#: mod/admin.php:2070 mod/notifications.php:183 mod/notifications.php:269
 msgid "Approve"
 msgstr "Approve"
 
-#: mod/admin.php:1970
+#: mod/admin.php:2071
 msgid "Deny"
 msgstr "Deny"
 
-#: mod/admin.php:1973
+#: mod/admin.php:2074
 msgid "User blocked"
 msgstr ""
 
-#: mod/admin.php:1975
+#: mod/admin.php:2076
 msgid "Site admin"
 msgstr "Site admin"
 
-#: mod/admin.php:1976
+#: mod/admin.php:2077
 msgid "Account expired"
 msgstr "Account expired"
 
-#: mod/admin.php:1979
+#: mod/admin.php:2080
 msgid "New User"
 msgstr "New user"
 
-#: mod/admin.php:1980
-msgid "Delete in"
+#: mod/admin.php:2081
+msgid "Permanent deletion"
 msgstr ""
 
-#: mod/admin.php:1985
+#: mod/admin.php:2086
 msgid ""
 "Selected users will be deleted!\\n\\nEverything these users had posted on "
 "this site will be permanently deleted!\\n\\nAre you sure?"
 msgstr "Selected users will be deleted!\\n\\nEverything these users have posted on this site will be permanently deleted!\\n\\nAre you sure?"
 
-#: mod/admin.php:1986
+#: mod/admin.php:2087
 msgid ""
 "The user {0} will be deleted!\\n\\nEverything this user has posted on this "
 "site will be permanently deleted!\\n\\nAre you sure?"
 msgstr "The user {0} will be deleted!\\n\\nEverything this user has posted on this site will be permanently deleted!\\n\\nAre you sure?"
 
-#: mod/admin.php:1996
+#: mod/admin.php:2097
 msgid "Name of the new user."
 msgstr "Name of the new user."
 
-#: mod/admin.php:1997
+#: mod/admin.php:2098
 msgid "Nickname"
 msgstr "Nickname"
 
-#: mod/admin.php:1997
+#: mod/admin.php:2098
 msgid "Nickname of the new user."
 msgstr "Nickname of the new user."
 
-#: mod/admin.php:1998
+#: mod/admin.php:2099
 msgid "Email address of the new user."
 msgstr "Email address of the new user."
 
-#: mod/admin.php:2039
+#: mod/admin.php:2141
 #, php-format
 msgid "Addon %s disabled."
 msgstr "Addon %s disabled."
 
-#: mod/admin.php:2042
+#: mod/admin.php:2144
 #, php-format
 msgid "Addon %s enabled."
 msgstr "Addon %s enabled."
 
-#: mod/admin.php:2053 mod/admin.php:2302
+#: mod/admin.php:2155 mod/admin.php:2405
 msgid "Disable"
 msgstr "Disable"
 
-#: mod/admin.php:2056 mod/admin.php:2305
+#: mod/admin.php:2158 mod/admin.php:2408
 msgid "Enable"
 msgstr "Enable"
 
-#: mod/admin.php:2078 mod/admin.php:2348
+#: mod/admin.php:2180 mod/admin.php:2437
 msgid "Toggle"
 msgstr "Toggle"
 
-#: mod/admin.php:2079 mod/admin.php:2349 mod/newmember.php:19
-#: mod/settings.php:136 src/Content/Nav.php:260 view/theme/frio/theme.php:283
+#: mod/admin.php:2181 mod/admin.php:2438 mod/newmember.php:20
+#: mod/settings.php:136 view/theme/frio/theme.php:272 src/Content/Nav.php:263
 msgid "Settings"
 msgstr "Settings"
 
-#: mod/admin.php:2086 mod/admin.php:2357
+#: mod/admin.php:2188 mod/admin.php:2446
 msgid "Author: "
 msgstr "Author: "
 
-#: mod/admin.php:2087 mod/admin.php:2358
+#: mod/admin.php:2189 mod/admin.php:2447
 msgid "Maintainer: "
 msgstr "Maintainer: "
 
-#: mod/admin.php:2139
+#: mod/admin.php:2241
 msgid "Reload active addons"
 msgstr "Reload active addons"
 
-#: mod/admin.php:2144
+#: mod/admin.php:2246
 #, php-format
 msgid ""
 "There are currently no addons available on your node. You can find the "
@@ -2689,70 +2753,70 @@ msgid ""
 " the open addon registry at %2$s"
 msgstr "There are currently no addons available on your node. You can find the official addon repository at %1$s and might find other interesting addons in the open addon registry at %2$s"
 
-#: mod/admin.php:2264
+#: mod/admin.php:2367
 msgid "No themes found."
 msgstr "No themes found."
 
-#: mod/admin.php:2339
+#: mod/admin.php:2428
 msgid "Screenshot"
 msgstr "Screenshot"
 
-#: mod/admin.php:2393
+#: mod/admin.php:2482
 msgid "Reload active themes"
 msgstr "Reload active themes"
 
-#: mod/admin.php:2398
+#: mod/admin.php:2487
 #, php-format
 msgid "No themes found on the system. They should be placed in %1$s"
 msgstr "No themes found on the system. They should be placed in %1$s"
 
-#: mod/admin.php:2399
+#: mod/admin.php:2488
 msgid "[Experimental]"
 msgstr "[Experimental]"
 
-#: mod/admin.php:2400
+#: mod/admin.php:2489
 msgid "[Unsupported]"
 msgstr "[Unsupported]"
 
-#: mod/admin.php:2424
+#: mod/admin.php:2514
 msgid "Log settings updated."
 msgstr "Log settings updated."
 
-#: mod/admin.php:2457
+#: mod/admin.php:2547
 msgid "PHP log currently enabled."
 msgstr "PHP log currently enabled."
 
-#: mod/admin.php:2459
+#: mod/admin.php:2549
 msgid "PHP log currently disabled."
 msgstr "PHP log currently disabled."
 
-#: mod/admin.php:2468
+#: mod/admin.php:2558
 msgid "Clear"
 msgstr "Clear"
 
-#: mod/admin.php:2472
+#: mod/admin.php:2562
 msgid "Enable Debugging"
 msgstr "Enable debugging"
 
-#: mod/admin.php:2473
+#: mod/admin.php:2563
 msgid "Log file"
 msgstr "Log file"
 
-#: mod/admin.php:2473
+#: mod/admin.php:2563
 msgid ""
 "Must be writable by web server. Relative to your Friendica top-level "
 "directory."
 msgstr "Must be writable by web server and relative to your Friendica top-level directory."
 
-#: mod/admin.php:2474
+#: mod/admin.php:2564
 msgid "Log level"
 msgstr "Log level"
 
-#: mod/admin.php:2476
+#: mod/admin.php:2566
 msgid "PHP logging"
 msgstr "PHP logging"
 
-#: mod/admin.php:2477
+#: mod/admin.php:2567
 msgid ""
 "To temporarily enable logging of PHP errors and warnings you can prepend the"
 " following to the index.php file of your installation. The filename set in "
@@ -2761,94 +2825,74 @@ msgid ""
 "'display_errors' is to enable these options, set to '0' to disable them."
 msgstr ""
 
-#: mod/admin.php:2508
+#: mod/admin.php:2599
 #, php-format
 msgid ""
 "Error trying to open <strong>%1$s</strong> log file.\\r\\n<br/>Check to see "
 "if file %1$s exist and is readable."
 msgstr "Error trying to open <strong>%1$s</strong> log file.\\r\\n<br/>Check to see if file %1$s exist and is readable."
 
-#: mod/admin.php:2512
+#: mod/admin.php:2603
 #, php-format
 msgid ""
 "Couldn't open <strong>%1$s</strong> log file.\\r\\n<br/>Check to see if file"
 " %1$s is readable."
 msgstr "Couldn't open <strong>%1$s</strong> log file.\\r\\n<br/>Check if file %1$s is readable."
 
-#: mod/admin.php:2603 mod/admin.php:2604 mod/settings.php:778
+#: mod/admin.php:2696 mod/admin.php:2697 mod/settings.php:763
 msgid "Off"
 msgstr "Off"
 
-#: mod/admin.php:2603 mod/admin.php:2604 mod/settings.php:778
+#: mod/admin.php:2696 mod/admin.php:2697 mod/settings.php:763
 msgid "On"
 msgstr "On"
 
-#: mod/admin.php:2604
+#: mod/admin.php:2697
 #, php-format
 msgid "Lock feature %s"
 msgstr "Lock feature %s"
 
-#: mod/admin.php:2612
+#: mod/admin.php:2705
 msgid "Manage Additional Features"
 msgstr "Manage additional features"
 
-#: mod/allfriends.php:54
+#: mod/allfriends.php:52
 msgid "No friends to display."
 msgstr "No friends to display."
 
-#: mod/allfriends.php:93 mod/dirfind.php:219 mod/match.php:107
-#: mod/suggest.php:105 src/Content/Widget.php:41 src/Model/Profile.php:309
+#: mod/allfriends.php:89 mod/dirfind.php:217 mod/match.php:102
+#: mod/suggest.php:106 src/Content/Widget.php:39 src/Model/Profile.php:313
 msgid "Connect"
 msgstr "Connect"
 
-#: mod/api.php:87 mod/api.php:109
+#: mod/api.php:84 mod/api.php:106
 msgid "Authorize application connection"
 msgstr "Authorize application connection"
 
-#: mod/api.php:88
+#: mod/api.php:85
 msgid "Return to your app and insert this Securty Code:"
 msgstr "Return to your app and insert this security code:"
 
-#: mod/api.php:97
+#: mod/api.php:94
 msgid "Please login to continue."
 msgstr "Please login to continue."
 
-#: mod/api.php:111
+#: mod/api.php:108
 msgid ""
 "Do you want to authorize this application to access your posts and contacts,"
 " and/or create new posts for you?"
 msgstr "Do you want to authorize this application to access your posts and contacts and create new posts for you?"
 
-#: mod/api.php:113 mod/dfrn_request.php:648 mod/follow.php:154
-#: mod/profiles.php:542 mod/profiles.php:546 mod/profiles.php:567
-#: mod/register.php:240 mod/settings.php:1100 mod/settings.php:1106
-#: mod/settings.php:1113 mod/settings.php:1117 mod/settings.php:1121
-#: mod/settings.php:1125 mod/settings.php:1129 mod/settings.php:1133
-#: mod/settings.php:1153 mod/settings.php:1154 mod/settings.php:1155
-#: mod/settings.php:1156 mod/settings.php:1157
+#: mod/api.php:110 mod/dfrn_request.php:640 mod/follow.php:150
+#: mod/profiles.php:526 mod/profiles.php:530 mod/profiles.php:551
+#: mod/settings.php:1085 mod/settings.php:1091 mod/settings.php:1098
+#: mod/settings.php:1102 mod/settings.php:1106 mod/settings.php:1110
+#: mod/settings.php:1114 mod/settings.php:1118 mod/settings.php:1138
+#: mod/settings.php:1139 mod/settings.php:1140 mod/settings.php:1141
+#: mod/settings.php:1142 src/Module/Register.php:98
 msgid "No"
 msgstr "No"
 
-#: mod/apps.php:15 src/App.php:1656
-msgid "You must be logged in to use addons. "
-msgstr "You must be logged in to use addons. "
-
-#: mod/apps.php:20
-msgid "Applications"
-msgstr "Applications"
-
-#: mod/apps.php:25
-msgid "No installed applications."
-msgstr "No installed applications."
-
-#: mod/attach.php:16
-msgid "Item not available."
-msgstr "Item not available."
-
-#: mod/attach.php:26
-msgid "Item was not found."
-msgstr "Item was not found."
-
 #: mod/babel.php:25
 msgid "Source input"
 msgstr "Source input"
@@ -2885,193 +2929,201 @@ msgstr "BBCode::toMarkdown => Markdown::toBBCode"
 msgid "BBCode::toMarkdown =>  Markdown::convert => HTML::toBBCode"
 msgstr "BBCode::toMarkdown =>  Markdown::convert => HTML::toBBCode"
 
-#: mod/babel.php:79
+#: mod/babel.php:83
+msgid "Item Body"
+msgstr ""
+
+#: mod/babel.php:87
+msgid "Item Tags"
+msgstr ""
+
+#: mod/babel.php:94
 msgid "Source input (Diaspora format)"
 msgstr ""
 
-#: mod/babel.php:85
+#: mod/babel.php:100
 msgid "Markdown::convert (raw HTML)"
 msgstr ""
 
-#: mod/babel.php:90
+#: mod/babel.php:105
 msgid "Markdown::convert"
 msgstr ""
 
-#: mod/babel.php:96
+#: mod/babel.php:111
 msgid "Markdown::toBBCode"
 msgstr "Markdown::toBBCode"
 
-#: mod/babel.php:103
+#: mod/babel.php:118
 msgid "Raw HTML input"
 msgstr "Raw HTML input"
 
-#: mod/babel.php:108
+#: mod/babel.php:123
 msgid "HTML Input"
 msgstr "HTML input"
 
-#: mod/babel.php:114
+#: mod/babel.php:129
 msgid "HTML::toBBCode"
 msgstr "HTML::toBBCode"
 
-#: mod/babel.php:120
+#: mod/babel.php:135
 msgid "HTML::toBBCode => BBCode::convert"
 msgstr ""
 
-#: mod/babel.php:125
+#: mod/babel.php:140
 msgid "HTML::toBBCode => BBCode::convert (raw HTML)"
 msgstr ""
 
-#: mod/babel.php:131
+#: mod/babel.php:146
 msgid "HTML::toMarkdown"
 msgstr ""
 
-#: mod/babel.php:137
+#: mod/babel.php:152
 msgid "HTML::toPlaintext"
 msgstr "HTML::toPlaintext"
 
-#: mod/babel.php:145
+#: mod/babel.php:160
 msgid "Source text"
 msgstr "Source text"
 
-#: mod/babel.php:146
+#: mod/babel.php:161
 msgid "BBCode"
 msgstr "BBCode"
 
-#: mod/babel.php:147
+#: mod/babel.php:162
 msgid "Markdown"
 msgstr "Markdown"
 
-#: mod/babel.php:148
+#: mod/babel.php:163
 msgid "HTML"
 msgstr "HTML"
 
-#: mod/bookmarklet.php:25 src/Content/Nav.php:167 src/Module/Login.php:322
+#: mod/bookmarklet.php:22 src/Content/Nav.php:170 src/Module/Login.php:322
 msgid "Login"
 msgstr "Login"
 
-#: mod/bookmarklet.php:35
+#: mod/bookmarklet.php:32
 msgid "Bad Request"
 msgstr ""
 
-#: mod/bookmarklet.php:57
+#: mod/bookmarklet.php:54
 msgid "The post was created"
 msgstr "The post was created"
 
-#: mod/cal.php:35 mod/cal.php:39 mod/community.php:38 mod/follow.php:21
+#: mod/cal.php:34 mod/cal.php:38 mod/community.php:39 mod/follow.php:20
 #: mod/viewcontacts.php:23 mod/viewcontacts.php:27 mod/viewsrc.php:13
 msgid "Access denied."
 msgstr "Access denied."
 
-#: mod/cal.php:47 mod/dfrn_poll.php:493 mod/help.php:67
-#: mod/viewcontacts.php:38 src/App.php:1707
+#: mod/cal.php:46 mod/dfrn_poll.php:486 mod/help.php:68
+#: mod/viewcontacts.php:34 src/App.php:1402
 msgid "Page not found."
 msgstr "Page not found"
 
-#: mod/cal.php:142 mod/display.php:311 mod/profile.php:190
+#: mod/cal.php:141 mod/display.php:309 src/Module/Profile.php:168
 msgid "Access to this profile has been restricted."
 msgstr "Access to this profile has been restricted."
 
-#: mod/cal.php:274 mod/events.php:390 src/Content/Nav.php:157
-#: src/Content/Nav.php:223 src/Model/Profile.php:937 src/Model/Profile.php:948
-#: view/theme/frio/theme.php:277 view/theme/frio/theme.php:281
+#: mod/cal.php:273 mod/events.php:384 view/theme/frio/theme.php:266
+#: view/theme/frio/theme.php:270 src/Content/Nav.php:160
+#: src/Content/Nav.php:226 src/Model/Profile.php:937 src/Model/Profile.php:948
 msgid "Events"
 msgstr "Events"
 
-#: mod/cal.php:275 mod/events.php:391
+#: mod/cal.php:274 mod/events.php:385
 msgid "View"
 msgstr "View"
 
-#: mod/cal.php:276 mod/events.php:393
+#: mod/cal.php:275 mod/events.php:387
 msgid "Previous"
 msgstr "Previous"
 
-#: mod/cal.php:277 mod/events.php:394 src/Module/Install.php:135
+#: mod/cal.php:276 mod/events.php:388 src/Module/Install.php:133
 msgid "Next"
 msgstr "Next"
 
-#: mod/cal.php:280 mod/events.php:399 src/Model/Event.php:430
+#: mod/cal.php:279 mod/events.php:393 src/Model/Event.php:429
 msgid "today"
 msgstr "today"
 
-#: mod/cal.php:281 mod/events.php:400 src/Model/Event.php:431
-#: src/Util/Temporal.php:312
+#: mod/cal.php:280 mod/events.php:394 src/Util/Temporal.php:314
+#: src/Model/Event.php:430
 msgid "month"
 msgstr "month"
 
-#: mod/cal.php:282 mod/events.php:401 src/Model/Event.php:432
-#: src/Util/Temporal.php:313
+#: mod/cal.php:281 mod/events.php:395 src/Util/Temporal.php:315
+#: src/Model/Event.php:431
 msgid "week"
 msgstr "week"
 
-#: mod/cal.php:283 mod/events.php:402 src/Model/Event.php:433
-#: src/Util/Temporal.php:314
+#: mod/cal.php:282 mod/events.php:396 src/Util/Temporal.php:316
+#: src/Model/Event.php:432
 msgid "day"
 msgstr "day"
 
-#: mod/cal.php:284 mod/events.php:403
+#: mod/cal.php:283 mod/events.php:397
 msgid "list"
 msgstr "List"
 
-#: mod/cal.php:297 src/Core/Console/NewPassword.php:68 src/Model/User.php:260
+#: mod/cal.php:296 src/Core/Console/NewPassword.php:67 src/Model/User.php:323
 msgid "User not found"
 msgstr "User not found"
 
-#: mod/cal.php:313
+#: mod/cal.php:312
 msgid "This calendar format is not supported"
 msgstr "This calendar format is not supported"
 
-#: mod/cal.php:315
+#: mod/cal.php:314
 msgid "No exportable data found"
 msgstr "No exportable data found"
 
-#: mod/cal.php:332
+#: mod/cal.php:331
 msgid "calendar"
 msgstr "calendar"
 
-#: mod/common.php:92
+#: mod/common.php:90
 msgid "No contacts in common."
 msgstr "No contacts in common."
 
-#: mod/common.php:143 src/Module/Contact.php:897
+#: mod/common.php:141 src/Module/Contact.php:892
 msgid "Common Friends"
 msgstr "Common friends"
 
-#: mod/community.php:31 mod/dfrn_request.php:602 mod/directory.php:43
-#: mod/display.php:203 mod/photos.php:945 mod/probe.php:13 mod/search.php:106
-#: mod/search.php:112 mod/videos.php:194 mod/viewcontacts.php:51
+#: mod/community.php:32 mod/dfrn_request.php:597 mod/directory.php:43
+#: mod/display.php:209 mod/photos.php:903 mod/probe.php:13 mod/search.php:96
+#: mod/search.php:102 mod/videos.php:147 mod/viewcontacts.php:46
 #: mod/webfinger.php:16
 msgid "Public access denied."
 msgstr "Public access denied."
 
-#: mod/community.php:74
+#: mod/community.php:75
 msgid "Community option not available."
 msgstr "Community option not available."
 
-#: mod/community.php:91
+#: mod/community.php:92
 msgid "Not available."
 msgstr "Not available."
 
-#: mod/community.php:103
+#: mod/community.php:102
 msgid "Local Community"
 msgstr "Local community"
 
-#: mod/community.php:106
+#: mod/community.php:105
 msgid "Posts from local users on this server"
 msgstr "Posts from local users on this server"
 
-#: mod/community.php:114
+#: mod/community.php:113
 msgid "Global Community"
 msgstr "Global community"
 
-#: mod/community.php:117
+#: mod/community.php:116
 msgid "Posts from users of the whole federated network"
 msgstr "Posts from users of the whole federated network"
 
-#: mod/community.php:163 mod/search.php:243
+#: mod/community.php:162 mod/search.php:229
 msgid "No results."
 msgstr "No results."
 
-#: mod/community.php:207
+#: mod/community.php:206
 msgid ""
 "This community stream shows all public posts received by this node. They may"
 " not reflect the opinions of this node’s users."
@@ -3088,288 +3140,293 @@ msgid ""
 "code or the translation of Friendica. Thank you all!"
 msgstr "Friendica is a community project that would not be possible without the help of many people. Here is a list of those who have contributed to the code or the translation of Friendica. Thank you all!"
 
-#: mod/crepair.php:90
+#: mod/crepair.php:79
 msgid "Contact settings applied."
 msgstr "Contact settings applied."
 
-#: mod/crepair.php:92
+#: mod/crepair.php:81
 msgid "Contact update failed."
 msgstr "Contact update failed."
 
-#: mod/crepair.php:113 mod/dfrn_confirm.php:130 mod/fsuggest.php:31
-#: mod/fsuggest.php:97 mod/redir.php:31 mod/redir.php:129
+#: mod/crepair.php:102 mod/dfrn_confirm.php:127 mod/fsuggest.php:28
+#: mod/fsuggest.php:89 mod/redir.php:31 mod/redir.php:137
 msgid "Contact not found."
 msgstr "Contact not found."
 
-#: mod/crepair.php:117
+#: mod/crepair.php:115
 msgid ""
 "<strong>WARNING: This is highly advanced</strong> and if you enter incorrect"
 " information your communications with this contact may stop working."
 msgstr "<strong>Warning: These are highly advanced settings.</strong> If you enter incorrect information, your communications with this contact might be disrupted."
 
-#: mod/crepair.php:118
+#: mod/crepair.php:116
 msgid ""
 "Please use your browser 'Back' button <strong>now</strong> if you are "
 "uncertain what to do on this page."
 msgstr "Please use your browser 'Back' button <strong>now</strong> if you are uncertain what to do on this page."
 
-#: mod/crepair.php:132 mod/crepair.php:134
+#: mod/crepair.php:130 mod/crepair.php:132
 msgid "No mirroring"
 msgstr "No mirroring"
 
-#: mod/crepair.php:132
+#: mod/crepair.php:130
 msgid "Mirror as forwarded posting"
 msgstr "Mirror as forwarded posting"
 
-#: mod/crepair.php:132 mod/crepair.php:134
+#: mod/crepair.php:130 mod/crepair.php:132
 msgid "Mirror as my own posting"
 msgstr "Mirror as my own posting"
 
-#: mod/crepair.php:147
+#: mod/crepair.php:145
 msgid "Return to contact editor"
 msgstr "Return to contact editor"
 
-#: mod/crepair.php:149
+#: mod/crepair.php:147
 msgid "Refetch contact data"
 msgstr "Re-fetch contact data."
 
-#: mod/crepair.php:151 mod/events.php:559 mod/fsuggest.php:115
-#: mod/invite.php:154 mod/localtime.php:56 mod/manage.php:185
-#: mod/message.php:265 mod/message.php:426 mod/photos.php:1093
-#: mod/photos.php:1181 mod/photos.php:1456 mod/photos.php:1501
-#: mod/photos.php:1540 mod/photos.php:1600 mod/poke.php:194
-#: mod/profiles.php:578 src/Module/Contact.php:600 src/Module/Install.php:189
-#: src/Module/Install.php:224 src/Object/Post.php:813
-#: view/theme/duepuntozero/config.php:72 view/theme/frio/config.php:119
-#: view/theme/quattro/config.php:74 view/theme/vier/config.php:120
+#: mod/crepair.php:149 mod/events.php:553 mod/fsuggest.php:106
+#: mod/invite.php:154 mod/localtime.php:56 mod/manage.php:182
+#: mod/message.php:261 mod/message.php:441 mod/photos.php:1049
+#: mod/photos.php:1137 mod/photos.php:1412 mod/photos.php:1457
+#: mod/photos.php:1496 mod/photos.php:1556 mod/poke.php:188
+#: mod/profiles.php:562 view/theme/duepuntozero/config.php:72
+#: view/theme/frio/config.php:119 view/theme/quattro/config.php:74
+#: view/theme/vier/config.php:120 src/Module/Contact.php:594
+#: src/Module/Install.php:187 src/Module/Install.php:222
+#: src/Object/Post.php:873
 msgid "Submit"
 msgstr "Submit"
 
-#: mod/crepair.php:152
+#: mod/crepair.php:150
 msgid "Remote Self"
 msgstr "Remote self"
 
-#: mod/crepair.php:155
+#: mod/crepair.php:153
 msgid "Mirror postings from this contact"
 msgstr "Mirror postings from this contact:"
 
-#: mod/crepair.php:157
+#: mod/crepair.php:155
 msgid ""
 "Mark this contact as remote_self, this will cause friendica to repost new "
 "entries from this contact."
 msgstr "This will cause Friendica to repost new entries from this contact."
 
-#: mod/crepair.php:162
+#: mod/crepair.php:160
 msgid "Account Nickname"
 msgstr "Account nickname:"
 
-#: mod/crepair.php:163
+#: mod/crepair.php:161
 msgid "@Tagname - overrides Name/Nickname"
 msgstr "@Tag name - overrides name/nickname:"
 
-#: mod/crepair.php:164
+#: mod/crepair.php:162
 msgid "Account URL"
 msgstr "Account URL:"
 
-#: mod/crepair.php:165
+#: mod/crepair.php:163
+msgid "Account URL Alias"
+msgstr ""
+
+#: mod/crepair.php:164
 msgid "Friend Request URL"
 msgstr "Friend request URL:"
 
-#: mod/crepair.php:166
+#: mod/crepair.php:165
 msgid "Friend Confirm URL"
 msgstr "Friend confirm URL:"
 
-#: mod/crepair.php:167
+#: mod/crepair.php:166
 msgid "Notification Endpoint URL"
 msgstr "Notification endpoint URL"
 
-#: mod/crepair.php:168
+#: mod/crepair.php:167
 msgid "Poll/Feed URL"
 msgstr "Poll/Feed URL:"
 
-#: mod/crepair.php:169
+#: mod/crepair.php:168
 msgid "New photo from this URL"
 msgstr "New photo from this URL:"
 
-#: mod/delegate.php:43
+#: mod/delegate.php:42
 msgid "Parent user not found."
 msgstr "Parent user not found."
 
-#: mod/delegate.php:150
+#: mod/delegate.php:149
 msgid "No parent user"
 msgstr "No parent user"
 
-#: mod/delegate.php:165
+#: mod/delegate.php:164
 msgid "Parent Password:"
 msgstr "Parent Password:"
 
-#: mod/delegate.php:165
+#: mod/delegate.php:164
 msgid ""
 "Please enter the password of the parent account to legitimize your request."
 msgstr "Please enter the password of the parent account to authorize this request."
 
-#: mod/delegate.php:170
+#: mod/delegate.php:171
 msgid "Parent User"
 msgstr "Parent user"
 
-#: mod/delegate.php:173
+#: mod/delegate.php:174
 msgid ""
 "Parent users have total control about this account, including the account "
 "settings. Please double check whom you give this access."
 msgstr "Parent users have total control of this account, including core settings. Please double-check whom you grant such access."
 
-#: mod/delegate.php:175 src/Content/Nav.php:258
+#: mod/delegate.php:176 src/Content/Nav.php:261
 msgid "Delegate Page Management"
 msgstr "Delegate Page Management"
 
-#: mod/delegate.php:176
+#: mod/delegate.php:177
 msgid "Delegates"
 msgstr "Delegates"
 
-#: mod/delegate.php:178
+#: mod/delegate.php:179
 msgid ""
 "Delegates are able to manage all aspects of this account/page except for "
 "basic account settings. Please do not delegate your personal account to "
 "anybody that you do not trust completely."
 msgstr "Delegates are able to manage all aspects of this account except for key setting features. Please do not delegate your personal account to anybody that you do not trust completely."
 
-#: mod/delegate.php:179
+#: mod/delegate.php:180
 msgid "Existing Page Delegates"
 msgstr "Existing page delegates"
 
-#: mod/delegate.php:181
+#: mod/delegate.php:182
 msgid "Potential Delegates"
 msgstr "Potential delegates"
 
-#: mod/delegate.php:183 mod/tagrm.php:112
+#: mod/delegate.php:184 mod/tagrm.php:114
 msgid "Remove"
 msgstr "Remove"
 
-#: mod/delegate.php:184
+#: mod/delegate.php:185
 msgid "Add"
 msgstr "Add"
 
-#: mod/delegate.php:185
+#: mod/delegate.php:186
 msgid "No entries."
 msgstr "No entries."
 
-#: mod/dfrn_confirm.php:75 mod/profiles.php:42 mod/profiles.php:152
-#: mod/profiles.php:197 mod/profiles.php:527
+#: mod/dfrn_confirm.php:72 mod/profiles.php:43 mod/profiles.php:152
+#: mod/profiles.php:196 mod/profiles.php:511
 msgid "Profile not found."
 msgstr "Profile not found."
 
-#: mod/dfrn_confirm.php:131
+#: mod/dfrn_confirm.php:128
 msgid ""
 "This may occasionally happen if contact was requested by both persons and it"
 " has already been approved."
 msgstr "This may occasionally happen if contact was requested by both persons and it has already been approved."
 
-#: mod/dfrn_confirm.php:241
+#: mod/dfrn_confirm.php:238
 msgid "Response from remote site was not understood."
 msgstr "Response from remote site was not understood."
 
-#: mod/dfrn_confirm.php:248 mod/dfrn_confirm.php:254
+#: mod/dfrn_confirm.php:245 mod/dfrn_confirm.php:251
 msgid "Unexpected response from remote site: "
 msgstr "Unexpected response from remote site: "
 
-#: mod/dfrn_confirm.php:263
+#: mod/dfrn_confirm.php:260
 msgid "Confirmation completed successfully."
 msgstr "Confirmation completed successfully."
 
-#: mod/dfrn_confirm.php:275
+#: mod/dfrn_confirm.php:272
 msgid "Temporary failure. Please wait and try again."
 msgstr "Temporary failure. Please wait and try again."
 
-#: mod/dfrn_confirm.php:278
+#: mod/dfrn_confirm.php:275
 msgid "Introduction failed or was revoked."
 msgstr "Introduction failed or was revoked."
 
-#: mod/dfrn_confirm.php:283
+#: mod/dfrn_confirm.php:280
 msgid "Remote site reported: "
 msgstr "Remote site reported: "
 
-#: mod/dfrn_confirm.php:384
+#: mod/dfrn_confirm.php:386
 msgid "Unable to set contact photo."
 msgstr "Unable to set contact photo."
 
-#: mod/dfrn_confirm.php:446
+#: mod/dfrn_confirm.php:448
 #, php-format
 msgid "No user record found for '%s' "
 msgstr "No user record found for '%s' "
 
-#: mod/dfrn_confirm.php:456
+#: mod/dfrn_confirm.php:458
 msgid "Our site encryption key is apparently messed up."
 msgstr "Our site encryption key is apparently messed up."
 
-#: mod/dfrn_confirm.php:467
+#: mod/dfrn_confirm.php:469
 msgid "Empty site URL was provided or URL could not be decrypted by us."
 msgstr "An empty URL was provided, or the URL could not be decrypted by us."
 
-#: mod/dfrn_confirm.php:483
+#: mod/dfrn_confirm.php:485
 msgid "Contact record was not found for you on our site."
 msgstr "Contact record was not found for you on our site."
 
-#: mod/dfrn_confirm.php:497
+#: mod/dfrn_confirm.php:499
 #, php-format
 msgid "Site public key not available in contact record for URL %s."
 msgstr "Site public key not available in contact record for URL %s."
 
-#: mod/dfrn_confirm.php:513
+#: mod/dfrn_confirm.php:515
 msgid ""
 "The ID provided by your system is a duplicate on our system. It should work "
 "if you try again."
 msgstr "The ID provided by your system is a duplicate on our system. It should work if you try again."
 
-#: mod/dfrn_confirm.php:524
+#: mod/dfrn_confirm.php:526
 msgid "Unable to set your contact credentials on our system."
 msgstr "Unable to set your contact credentials on our system."
 
-#: mod/dfrn_confirm.php:580
+#: mod/dfrn_confirm.php:582
 msgid "Unable to update your contact profile details on our system"
 msgstr "Unable to update your contact profile details on our system"
 
-#: mod/dfrn_confirm.php:610 mod/dfrn_request.php:564
-#: src/Model/Contact.php:1919
+#: mod/dfrn_confirm.php:612 mod/dfrn_request.php:560
+#: src/Model/Contact.php:2026
 msgid "[Name Withheld]"
 msgstr "[Name Withheld]"
 
-#: mod/dfrn_poll.php:128 mod/dfrn_poll.php:537
+#: mod/dfrn_poll.php:125 mod/dfrn_poll.php:530
 #, php-format
 msgid "%1$s welcomes %2$s"
 msgstr "%1$s welcomes %2$s"
 
-#: mod/dfrn_request.php:97
+#: mod/dfrn_request.php:98
 msgid "This introduction has already been accepted."
 msgstr "This introduction has already been accepted."
 
-#: mod/dfrn_request.php:115 mod/dfrn_request.php:356
+#: mod/dfrn_request.php:116 mod/dfrn_request.php:354
 msgid "Profile location is not valid or does not contain profile information."
 msgstr "Profile location is not valid or does not contain profile information."
 
-#: mod/dfrn_request.php:119 mod/dfrn_request.php:360
+#: mod/dfrn_request.php:120 mod/dfrn_request.php:358
 msgid "Warning: profile location has no identifiable owner name."
 msgstr "Warning: profile location has no identifiable owner name."
 
-#: mod/dfrn_request.php:122 mod/dfrn_request.php:363
+#: mod/dfrn_request.php:123 mod/dfrn_request.php:361
 msgid "Warning: profile location has no profile photo."
 msgstr "Warning: profile location has no profile photo."
 
-#: mod/dfrn_request.php:126 mod/dfrn_request.php:367
+#: mod/dfrn_request.php:127 mod/dfrn_request.php:365
 #, php-format
 msgid "%d required parameter was not found at the given location"
 msgid_plural "%d required parameters were not found at the given location"
 msgstr[0] "%d required parameter was not found at the given location"
 msgstr[1] "%d required parameters were not found at the given location"
 
-#: mod/dfrn_request.php:164
+#: mod/dfrn_request.php:165
 msgid "Introduction complete."
 msgstr "Introduction complete."
 
-#: mod/dfrn_request.php:200
+#: mod/dfrn_request.php:201
 msgid "Unrecoverable protocol error."
 msgstr "Unrecoverable protocol error."
 
-#: mod/dfrn_request.php:227
+#: mod/dfrn_request.php:228
 msgid "Profile unavailable."
 msgstr "Profile unavailable."
 
@@ -3386,159 +3443,159 @@ msgstr "Spam protection measures have been invoked."
 msgid "Friends are advised to please try again in 24 hours."
 msgstr "Friends are advised to please try again in 24 hours."
 
-#: mod/dfrn_request.php:277
+#: mod/dfrn_request.php:275
 msgid "Invalid locator"
 msgstr "Invalid locator"
 
-#: mod/dfrn_request.php:313
+#: mod/dfrn_request.php:311
 msgid "You have already introduced yourself here."
 msgstr "You have already introduced yourself here."
 
-#: mod/dfrn_request.php:316
+#: mod/dfrn_request.php:314
 #, php-format
 msgid "Apparently you are already friends with %s."
 msgstr "Apparently you are already friends with %s."
 
-#: mod/dfrn_request.php:336
+#: mod/dfrn_request.php:334
 msgid "Invalid profile URL."
 msgstr "Invalid profile URL."
 
-#: mod/dfrn_request.php:342 src/Model/Contact.php:1598
+#: mod/dfrn_request.php:340 src/Model/Contact.php:1697
 msgid "Disallowed profile URL."
 msgstr "Disallowed profile URL."
 
-#: mod/dfrn_request.php:415 src/Module/Contact.php:240
+#: mod/dfrn_request.php:413 src/Module/Contact.php:235
 msgid "Failed to update contact record."
 msgstr "Failed to update contact record."
 
-#: mod/dfrn_request.php:435
+#: mod/dfrn_request.php:433
 msgid "Your introduction has been sent."
 msgstr "Your introduction has been sent."
 
-#: mod/dfrn_request.php:473
+#: mod/dfrn_request.php:471
 msgid ""
 "Remote subscription can't be done for your network. Please subscribe "
 "directly on your system."
 msgstr "Remote subscription can't be done for your network. Please subscribe directly on your system."
 
-#: mod/dfrn_request.php:489
+#: mod/dfrn_request.php:487
 msgid "Please login to confirm introduction."
 msgstr "Please login to confirm introduction."
 
-#: mod/dfrn_request.php:497
+#: mod/dfrn_request.php:495
 msgid ""
 "Incorrect identity currently logged in. Please login to "
 "<strong>this</strong> profile."
 msgstr "Incorrect identity currently logged in. Please login to <strong>this</strong> profile."
 
-#: mod/dfrn_request.php:511 mod/dfrn_request.php:528
+#: mod/dfrn_request.php:509 mod/dfrn_request.php:524
 msgid "Confirm"
 msgstr "Confirm"
 
-#: mod/dfrn_request.php:523
+#: mod/dfrn_request.php:520
 msgid "Hide this contact"
 msgstr "Hide this contact"
 
-#: mod/dfrn_request.php:526
+#: mod/dfrn_request.php:522
 #, php-format
 msgid "Welcome home %s."
 msgstr "Welcome home %s."
 
-#: mod/dfrn_request.php:527
+#: mod/dfrn_request.php:523
 #, php-format
 msgid "Please confirm your introduction/connection request to %s."
 msgstr "Please confirm your introduction/connection request to %s."
 
-#: mod/dfrn_request.php:637
+#: mod/dfrn_request.php:632
 msgid ""
 "Please enter your 'Identity Address' from one of the following supported "
 "communications networks:"
 msgstr "Please enter your 'Identity address' from one of the following supported communications networks:"
 
-#: mod/dfrn_request.php:640
+#: mod/dfrn_request.php:634
 #, php-format
 msgid ""
 "If you are not yet a member of the free social web, <a href=\"%s\">follow "
 "this link to find a public Friendica site and join us today</a>."
 msgstr "If you are not yet part of the free social web, <a href=\"%s\">follow this link to find a public Friendica site and join us today</a>."
 
-#: mod/dfrn_request.php:645
+#: mod/dfrn_request.php:637
 msgid "Friend/Connection Request"
 msgstr "Friend/Connection request"
 
-#: mod/dfrn_request.php:646
+#: mod/dfrn_request.php:638
 msgid ""
 "Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, "
 "testuser@gnusocial.de"
 msgstr "Examples: jojo@demo.friendi.ca, http://demo.friendi.ca/profile/jojo, user@gnusocial.de"
 
-#: mod/dfrn_request.php:647 mod/follow.php:153
+#: mod/dfrn_request.php:639 mod/follow.php:149
 msgid "Please answer the following:"
 msgstr "Please answer the following:"
 
-#: mod/dfrn_request.php:648 mod/follow.php:154
+#: mod/dfrn_request.php:640 mod/follow.php:150
 #, php-format
 msgid "Does %s know you?"
 msgstr "Does %s know you?"
 
-#: mod/dfrn_request.php:649 mod/follow.php:155
+#: mod/dfrn_request.php:641 mod/follow.php:151
 msgid "Add a personal note:"
 msgstr "Add a personal note:"
 
-#: mod/dfrn_request.php:651
+#: mod/dfrn_request.php:643
 msgid "Friendica"
 msgstr "Friendica"
 
-#: mod/dfrn_request.php:652
+#: mod/dfrn_request.php:644
 msgid "GNU Social (Pleroma, Mastodon)"
 msgstr "GNU Social (Pleroma, Mastodon)"
 
-#: mod/dfrn_request.php:653
+#: mod/dfrn_request.php:645
 msgid "Diaspora (Socialhome, Hubzilla)"
 msgstr "Diaspora (Socialhome, Hubzilla)"
 
-#: mod/dfrn_request.php:654
+#: mod/dfrn_request.php:646
 #, php-format
 msgid ""
 " - please do not use this form.  Instead, enter %s into your Diaspora search"
 " bar."
 msgstr " - please do not use this form.  Instead, enter %s into your Diaspora search bar."
 
-#: mod/dfrn_request.php:655 mod/follow.php:161 mod/unfollow.php:130
+#: mod/dfrn_request.php:647 mod/follow.php:157 mod/unfollow.php:128
 msgid "Your Identity Address:"
 msgstr "My identity address:"
 
-#: mod/dfrn_request.php:657 mod/follow.php:66 mod/unfollow.php:133
+#: mod/dfrn_request.php:649 mod/follow.php:65 mod/unfollow.php:131
 msgid "Submit Request"
 msgstr "Submit request"
 
-#: mod/directory.php:154 mod/events.php:547 mod/notifications.php:251
-#: src/Model/Event.php:70 src/Model/Event.php:97 src/Model/Event.php:439
-#: src/Model/Event.php:930 src/Model/Profile.php:434
-#: src/Module/Contact.php:650
+#: mod/directory.php:154 mod/events.php:541 mod/notifications.php:253
+#: src/Model/Event.php:68 src/Model/Event.php:95 src/Model/Event.php:438
+#: src/Model/Event.php:934 src/Model/Profile.php:443
+#: src/Module/Contact.php:643
 msgid "Location:"
 msgstr "Location:"
 
-#: mod/directory.php:159 mod/notifications.php:257 src/Model/Profile.php:437
+#: mod/directory.php:159 mod/notifications.php:259 src/Model/Profile.php:446
 #: src/Model/Profile.php:758
 msgid "Gender:"
 msgstr "Gender:"
 
-#: mod/directory.php:160 src/Model/Profile.php:438 src/Model/Profile.php:782
+#: mod/directory.php:160 src/Model/Profile.php:447 src/Model/Profile.php:782
 msgid "Status:"
 msgstr "Status:"
 
-#: mod/directory.php:161 src/Model/Profile.php:439 src/Model/Profile.php:799
+#: mod/directory.php:161 src/Model/Profile.php:448 src/Model/Profile.php:799
 msgid "Homepage:"
 msgstr "Homepage:"
 
-#: mod/directory.php:162 mod/notifications.php:253 src/Model/Profile.php:440
-#: src/Model/Profile.php:819 src/Module/Contact.php:654
+#: mod/directory.php:162 mod/notifications.php:255 src/Model/Profile.php:449
+#: src/Model/Profile.php:819 src/Module/Contact.php:647
 msgid "About:"
 msgstr "About:"
 
-#: mod/directory.php:210 src/Content/Widget.php:72
-#: view/theme/vier/theme.php:208
+#: mod/directory.php:210 view/theme/vier/theme.php:208
+#: src/Content/Widget.php:70
 msgid "Global Directory"
 msgstr "Global Directory"
 
@@ -3554,8 +3611,8 @@ msgstr "Results for:"
 msgid "Site Directory"
 msgstr "Site directory"
 
-#: mod/directory.php:217 src/Content/Widget.php:67 src/Module/Contact.php:822
-#: view/theme/vier/theme.php:203
+#: mod/directory.php:217 view/theme/vier/theme.php:203
+#: src/Content/Widget.php:65 src/Module/Contact.php:817
 msgid "Find"
 msgstr "Find"
 
@@ -3573,7 +3630,7 @@ msgstr "People search - %s"
 msgid "Forum Search - %s"
 msgstr "Forum search - %s"
 
-#: mod/dirfind.php:261 mod/match.php:125
+#: mod/dirfind.php:259 mod/match.php:130
 msgid "No matches"
 msgstr "No matches"
 
@@ -3585,334 +3642,333 @@ msgstr "Item not found"
 msgid "Edit post"
 msgstr "Edit post"
 
-#: mod/editpost.php:94 mod/filer.php:38 mod/notes.php:54
-#: src/Content/Text/HTML.php:961
+#: mod/editpost.php:73 mod/filer.php:36 mod/notes.php:46
+#: src/Content/Text/HTML.php:894
 msgid "Save"
 msgstr "Save"
 
-#: mod/editpost.php:99 mod/message.php:263 mod/message.php:425
+#: mod/editpost.php:78 mod/message.php:259 mod/message.php:440
 #: mod/wallmessage.php:140
 msgid "Insert web link"
 msgstr "Insert web link"
 
-#: mod/editpost.php:100
+#: mod/editpost.php:79
 msgid "web link"
 msgstr "web link"
 
-#: mod/editpost.php:101
+#: mod/editpost.php:80
 msgid "Insert video link"
 msgstr "Insert video link"
 
-#: mod/editpost.php:102
+#: mod/editpost.php:81
 msgid "video link"
 msgstr "video link"
 
-#: mod/editpost.php:103
+#: mod/editpost.php:82
 msgid "Insert audio link"
 msgstr "Insert audio link"
 
-#: mod/editpost.php:104
+#: mod/editpost.php:83
 msgid "audio link"
 msgstr "audio link"
 
-#: mod/editpost.php:119 src/Core/ACL.php:305
+#: mod/editpost.php:98 src/Core/ACL.php:307
 msgid "CC: email addresses"
 msgstr "CC: email addresses"
 
-#: mod/editpost.php:126 src/Core/ACL.php:306
+#: mod/editpost.php:105 src/Core/ACL.php:308
 msgid "Example: bob@example.com, mary@example.com"
 msgstr "Example: bob@example.com, mary@example.com"
 
-#: mod/events.php:109 mod/events.php:111
+#: mod/events.php:117 mod/events.php:119
 msgid "Event can not end before it has started."
 msgstr "Event cannot end before it has started."
 
-#: mod/events.php:118 mod/events.php:120
+#: mod/events.php:126 mod/events.php:128
 msgid "Event title and start time are required."
 msgstr "Event title and starting time are required."
 
-#: mod/events.php:392
+#: mod/events.php:386
 msgid "Create New Event"
 msgstr "Create new event"
 
-#: mod/events.php:515
+#: mod/events.php:509
 msgid "Event details"
 msgstr "Event details"
 
-#: mod/events.php:516
+#: mod/events.php:510
 msgid "Starting date and Title are required."
 msgstr "Starting date and title are required."
 
-#: mod/events.php:517 mod/events.php:522
+#: mod/events.php:511 mod/events.php:516
 msgid "Event Starts:"
 msgstr "Event starts:"
 
-#: mod/events.php:517 mod/events.php:549 mod/profiles.php:608
+#: mod/events.php:511 mod/events.php:543 mod/profiles.php:592
 msgid "Required"
 msgstr "Required"
 
-#: mod/events.php:530 mod/events.php:555
+#: mod/events.php:524 mod/events.php:549
 msgid "Finish date/time is not known or not relevant"
 msgstr "Finish date/time is not known or not relevant"
 
-#: mod/events.php:532 mod/events.php:537
+#: mod/events.php:526 mod/events.php:531
 msgid "Event Finishes:"
 msgstr "Event finishes:"
 
-#: mod/events.php:543 mod/events.php:556
+#: mod/events.php:537 mod/events.php:550
 msgid "Adjust for viewer timezone"
 msgstr "Adjust for viewer's time zone"
 
-#: mod/events.php:545
+#: mod/events.php:539
 msgid "Description:"
 msgstr "Description:"
 
-#: mod/events.php:549 mod/events.php:551
+#: mod/events.php:543 mod/events.php:545
 msgid "Title:"
 msgstr "Title:"
 
-#: mod/events.php:552 mod/events.php:553
+#: mod/events.php:546 mod/events.php:547
 msgid "Share this event"
 msgstr "Share this event"
 
-#: mod/events.php:560 src/Model/Profile.php:877
+#: mod/events.php:554 src/Model/Profile.php:877
 msgid "Basic"
 msgstr "Basic"
 
-#: mod/events.php:562 mod/photos.php:1111 mod/photos.php:1452
-#: src/Core/ACL.php:308
+#: mod/events.php:556 mod/photos.php:1067 mod/photos.php:1408
+#: src/Core/ACL.php:310
 msgid "Permissions"
 msgstr "Permissions"
 
-#: mod/events.php:578
+#: mod/events.php:572
 msgid "Failed to remove event"
 msgstr "Failed to remove event"
 
-#: mod/events.php:580
+#: mod/events.php:574
 msgid "Event removed"
 msgstr "Event removed"
 
-#: mod/fbrowser.php:36 src/Content/Nav.php:155 src/Model/Profile.php:917
-#: view/theme/frio/theme.php:275
+#: mod/fbrowser.php:36 view/theme/frio/theme.php:264 src/Content/Nav.php:158
+#: src/Model/Profile.php:917
 msgid "Photos"
 msgstr "Photos"
 
-#: mod/fbrowser.php:45 mod/fbrowser.php:70 mod/photos.php:204
-#: mod/photos.php:1075 mod/photos.php:1170 mod/photos.php:1187
-#: mod/photos.php:1654 mod/photos.php:1669 src/Model/Photo.php:244
-#: src/Model/Photo.php:253
+#: mod/fbrowser.php:45 mod/fbrowser.php:69 mod/photos.php:201
+#: mod/photos.php:1031 mod/photos.php:1126 mod/photos.php:1143
+#: mod/photos.php:1610 mod/photos.php:1625 src/Model/Photo.php:547
+#: src/Model/Photo.php:556
 msgid "Contact Photos"
 msgstr "Contact photos"
 
-#: mod/fbrowser.php:107 mod/fbrowser.php:138 mod/profile_photo.php:251
+#: mod/fbrowser.php:106 mod/fbrowser.php:136 mod/profile_photo.php:254
 msgid "Upload"
 msgstr "Upload"
 
-#: mod/fbrowser.php:133
+#: mod/fbrowser.php:131
 msgid "Files"
 msgstr "Files"
 
-#: mod/feedtest.php:22
+#: mod/feedtest.php:18
 msgid "You must be logged in to use this module"
 msgstr "You must be logged in to use this module"
 
-#: mod/feedtest.php:49
+#: mod/feedtest.php:45
 msgid "Source URL"
 msgstr "Source URL"
 
-#: mod/fetch.php:21 mod/fetch.php:48 mod/fetch.php:55 mod/help.php:64
-#: src/App.php:1704
-msgid "Not Found"
-msgstr "Not found"
-
-#: mod/filer.php:37
+#: mod/filer.php:35
 msgid "- select -"
 msgstr "- select -"
 
-#: mod/follow.php:47
+#: mod/follow.php:46
 msgid "The contact could not be added."
 msgstr "Contact could not be added."
 
-#: mod/follow.php:77
+#: mod/follow.php:76
 msgid "You already added this contact."
 msgstr "You already added this contact."
 
-#: mod/follow.php:87
+#: mod/follow.php:86
 msgid "Diaspora support isn't enabled. Contact can't be added."
 msgstr "Diaspora support isn't enabled. Contact can't be added."
 
-#: mod/follow.php:94
+#: mod/follow.php:93
 msgid "OStatus support is disabled. Contact can't be added."
 msgstr "OStatus support is disabled. Contact can't be added."
 
-#: mod/follow.php:101
+#: mod/follow.php:100
 msgid "The network type couldn't be detected. Contact can't be added."
 msgstr "The network type couldn't be detected. Contact can't be added."
 
-#: mod/follow.php:181 mod/notifications.php:255 src/Model/Profile.php:807
-#: src/Module/Contact.php:656
+#: mod/follow.php:170 mod/notifications.php:257 src/Model/Profile.php:807
+#: src/Module/Contact.php:649
 msgid "Tags:"
 msgstr "Tags:"
 
-#: mod/follow.php:193 mod/unfollow.php:149 src/Model/Profile.php:904
-#: src/Module/Contact.php:869
+#: mod/follow.php:182 mod/unfollow.php:147 src/Model/Profile.php:904
+#: src/Module/Contact.php:864
 msgid "Status Messages and Posts"
 msgstr "Status Messages and Posts"
 
-#: mod/friendica.php:79
+#: mod/friendica.php:88
 #, php-format
 msgid ""
 "This is Friendica, version %s that is running at the web location %s. The "
 "database version is %s, the post update version is %s."
 msgstr ""
 
-#: mod/friendica.php:85
+#: mod/friendica.php:94
 msgid ""
 "Please visit <a href=\"https://friendi.ca\">Friendi.ca</a> to learn more "
 "about the Friendica project."
 msgstr "Please visit <a href=\"https://friendi.ca\">Friendi.ca</a> to learn more about the Friendica project."
 
-#: mod/friendica.php:89
+#: mod/friendica.php:98
 msgid "Bug reports and issues: please visit"
 msgstr "Bug reports and issues: please visit"
 
-#: mod/friendica.php:89
+#: mod/friendica.php:98
 msgid "the bugtracker at github"
 msgstr "the bugtracker at github"
 
-#: mod/friendica.php:92
+#: mod/friendica.php:101
 msgid "Suggestions, praise, etc. - please email \"info\" at \"friendi - dot - ca"
 msgstr "Suggestions, praise, etc. - please email \"info\" at \"friendi - dot - ca"
 
-#: mod/friendica.php:97
+#: mod/friendica.php:106
 msgid "Installed addons/apps:"
 msgstr "Installed addons/apps:"
 
-#: mod/friendica.php:111
+#: mod/friendica.php:120
 msgid "No installed addons/apps"
 msgstr "No installed addons/apps"
 
-#: mod/friendica.php:116
+#: mod/friendica.php:125
 #, php-format
 msgid "Read about the <a href=\"%1$s/tos\">Terms of Service</a> of this node."
 msgstr "Read about the <a href=\"%1$s/tos\">Terms of Service</a> of this node."
 
-#: mod/friendica.php:121
+#: mod/friendica.php:130
 msgid "On this server the following remote servers are blocked."
 msgstr "On this server the following remote servers are blocked."
 
-#: mod/fsuggest.php:73
+#: mod/fsuggest.php:69
 msgid "Friend suggestion sent."
 msgstr "Friend suggestion sent"
 
-#: mod/fsuggest.php:102
+#: mod/fsuggest.php:93
 msgid "Suggest Friends"
 msgstr "Suggest friends"
 
-#: mod/fsuggest.php:104
+#: mod/fsuggest.php:95
 #, php-format
 msgid "Suggest a friend for %s"
 msgstr "Suggest a friend for %s"
 
-#: mod/group.php:40
+#: mod/group.php:38
 msgid "Group created."
 msgstr "Group created."
 
-#: mod/group.php:46
+#: mod/group.php:44
 msgid "Could not create group."
 msgstr "Could not create group."
 
-#: mod/group.php:60 mod/group.php:187
+#: mod/group.php:58 mod/group.php:184
 msgid "Group not found."
 msgstr "Group not found."
 
-#: mod/group.php:74
+#: mod/group.php:72
 msgid "Group name changed."
 msgstr "Group name changed."
 
-#: mod/group.php:87 mod/profperm.php:30 src/App.php:1785
+#: mod/group.php:85 mod/profperm.php:30 src/App.php:1481
 msgid "Permission denied"
 msgstr "Permission denied"
 
-#: mod/group.php:105
+#: mod/group.php:103
 msgid "Save Group"
 msgstr "Save group"
 
-#: mod/group.php:106
+#: mod/group.php:104
 msgid "Filter"
 msgstr ""
 
-#: mod/group.php:111
+#: mod/group.php:109
 msgid "Create a group of contacts/friends."
 msgstr "Create a group of contacts/friends."
 
-#: mod/group.php:112 mod/group.php:136 mod/group.php:229
-#: src/Model/Group.php:419
+#: mod/group.php:110 mod/group.php:133 mod/group.php:224
+#: src/Model/Group.php:423
 msgid "Group Name: "
 msgstr "Group name: "
 
-#: mod/group.php:127 src/Model/Group.php:416
+#: mod/group.php:125 src/Model/Group.php:420
 msgid "Contacts not in any group"
 msgstr "Contacts not in any group"
 
-#: mod/group.php:159
+#: mod/group.php:156
 msgid "Group removed."
 msgstr "Group removed."
 
-#: mod/group.php:161
+#: mod/group.php:158
 msgid "Unable to remove group."
 msgstr "Unable to remove group."
 
-#: mod/group.php:222
+#: mod/group.php:217
 msgid "Delete Group"
 msgstr "Delete group"
 
-#: mod/group.php:233
+#: mod/group.php:228
 msgid "Edit Group Name"
 msgstr "Edit group name"
 
-#: mod/group.php:244
+#: mod/group.php:239
 msgid "Members"
 msgstr "Members"
 
-#: mod/group.php:246 src/Module/Contact.php:711
+#: mod/group.php:241 src/Module/Contact.php:704
 msgid "All Contacts"
 msgstr "All contacts"
 
-#: mod/group.php:247 mod/network.php:659
+#: mod/group.php:242 mod/network.php:654
 msgid "Group is empty"
 msgstr "Group is empty"
 
-#: mod/group.php:260
+#: mod/group.php:255
 msgid "Remove contact from group"
 msgstr "Remove contact from group"
 
-#: mod/group.php:278 mod/profperm.php:119
+#: mod/group.php:273 mod/profperm.php:119
 msgid "Click on a contact to add or remove."
 msgstr "Click on a contact to add or remove it."
 
-#: mod/group.php:292
+#: mod/group.php:287
 msgid "Add contact to group"
 msgstr "Add contact to group"
 
-#: mod/hcard.php:19
+#: mod/hcard.php:20
 msgid "No profile"
 msgstr "No profile"
 
-#: mod/help.php:51
+#: mod/help.php:52
 msgid "Help:"
 msgstr "Help:"
 
-#: mod/help.php:58 src/Content/Nav.php:187 view/theme/vier/theme.php:297
+#: mod/help.php:59 view/theme/vier/theme.php:294 src/Content/Nav.php:190
 msgid "Help"
 msgstr "Help"
 
+#: mod/help.php:65 src/App.php:1399
+msgid "Not Found"
+msgstr "Not found"
+
 #: mod/home.php:40
 #, php-format
 msgid "Welcome to %s"
 msgstr "Welcome to %s"
 
-#: mod/invite.php:38
+#: mod/invite.php:36
 msgid "Total invitation limit exceeded."
 msgstr "Total invitation limit exceeded"
 
@@ -3995,7 +4051,7 @@ msgstr "Send invitations"
 msgid "Enter email addresses, one per line:"
 msgstr "Enter email addresses, one per line:"
 
-#: mod/invite.php:149 mod/message.php:259 mod/message.php:420
+#: mod/invite.php:149 mod/message.php:255 mod/message.php:435
 #: mod/wallmessage.php:137
 msgid "Your message:"
 msgstr "Your message:"
@@ -4025,34 +4081,34 @@ msgstr "For more information about the Friendica project and why we feel it is i
 msgid "Unable to locate original post."
 msgstr "Unable to locate original post."
 
-#: mod/item.php:288
+#: mod/item.php:320
 msgid "Empty post discarded."
 msgstr "Empty post discarded."
 
-#: mod/item.php:810
+#: mod/item.php:841
 #, php-format
 msgid ""
 "This message was sent to you by %s, a member of the Friendica social "
 "network."
 msgstr "This message was sent to you by %s, a member of the Friendica social network."
 
-#: mod/item.php:812
+#: mod/item.php:843
 #, php-format
 msgid "You may visit them online at %s"
 msgstr "You may visit them online at %s"
 
-#: mod/item.php:813
+#: mod/item.php:844
 msgid ""
 "Please contact the sender by replying to this post if you do not wish to "
 "receive these messages."
 msgstr "Please contact the sender by replying to this post if you do not wish to receive these messages."
 
-#: mod/item.php:817
+#: mod/item.php:848
 #, php-format
 msgid "%s posted an update."
 msgstr "%s posted an update."
 
-#: mod/localtime.php:19 src/Model/Event.php:38 src/Model/Event.php:844
+#: mod/localtime.php:19 src/Model/Event.php:34 src/Model/Event.php:848
 msgid "l F d, Y \\@ g:i A"
 msgstr "l F d, Y \\@ g:i A"
 
@@ -4093,15 +4149,15 @@ msgstr "Remote privacy information not available."
 msgid "Visible to:"
 msgstr "Visible to:"
 
-#: mod/lostpass.php:30
+#: mod/lostpass.php:26
 msgid "No valid account found."
 msgstr "No valid account found."
 
-#: mod/lostpass.php:42
+#: mod/lostpass.php:38
 msgid "Password reset request issued. Check your email."
 msgstr "Password reset request issued. Please check your email."
 
-#: mod/lostpass.php:48
+#: mod/lostpass.php:44
 #, php-format
 msgid ""
 "\n"
@@ -4117,7 +4173,7 @@ msgid ""
 "\t\tissued this request."
 msgstr "\n\t\tDear %1$s,\n\t\t\tA request was received at \"%2$s\" to reset your account password\n\t\tTo confirm this request, please select the verification link\n\t\tbelow or paste it into your web browser's address bar.\n\n\t\tIf you did NOT request this change, please DO NOT follow the link\n\t\tprovided; ignore or delete this email, as the request will expire shortly.\n\n\t\tYour password will not be changed unless we can verify that you\n\t\tissued this request."
 
-#: mod/lostpass.php:59
+#: mod/lostpass.php:55
 #, php-format
 msgid ""
 "\n"
@@ -4134,66 +4190,66 @@ msgid ""
 "\t\tLogin Name:\t%3$s"
 msgstr "\n\t\tFollow this link soon to verify your identity:\n\n\t\t%1$s\n\n\t\tYou will then receive a follow-up message containing the new password.\n\t\tYou may change that password from your account settings page after logging in.\n\n\t\tThe login details are as follows:\n\n\t\tSite Location:\t%2$s\n\t\tLogin Name:\t%3$s"
 
-#: mod/lostpass.php:78
+#: mod/lostpass.php:74
 #, php-format
 msgid "Password reset requested at %s"
 msgstr "Password reset requested at %s"
 
-#: mod/lostpass.php:94
+#: mod/lostpass.php:89
 msgid ""
 "Request could not be verified. (You may have previously submitted it.) "
 "Password reset failed."
 msgstr "Request could not be verified. (You may have previously submitted it.) Password reset failed."
 
-#: mod/lostpass.php:107
+#: mod/lostpass.php:102
 msgid "Request has expired, please make a new one."
 msgstr "Request has expired, please make a new one."
 
-#: mod/lostpass.php:122
+#: mod/lostpass.php:117
 msgid "Forgot your Password?"
 msgstr "Reset My Password"
 
-#: mod/lostpass.php:123
+#: mod/lostpass.php:118
 msgid ""
 "Enter your email address and submit to have your password reset. Then check "
 "your email for further instructions."
 msgstr "Enter email address or nickname to reset your password. You will receive further instruction via email."
 
-#: mod/lostpass.php:124 src/Module/Login.php:324
+#: mod/lostpass.php:119 src/Module/Login.php:324
 msgid "Nickname or Email: "
 msgstr "Nickname or email: "
 
-#: mod/lostpass.php:125
+#: mod/lostpass.php:120
 msgid "Reset"
 msgstr "Reset"
 
-#: mod/lostpass.php:141 src/Module/Login.php:336
+#: mod/lostpass.php:135 src/Module/Login.php:336
 msgid "Password Reset"
 msgstr "Forgotten password?"
 
-#: mod/lostpass.php:142
+#: mod/lostpass.php:136
 msgid "Your password has been reset as requested."
 msgstr "Your password has been reset as requested."
 
-#: mod/lostpass.php:143
+#: mod/lostpass.php:137
 msgid "Your new password is"
 msgstr "Your new password is"
 
-#: mod/lostpass.php:144
+#: mod/lostpass.php:138
 msgid "Save or copy your new password - and then"
 msgstr "Save or copy your new password - and then"
 
-#: mod/lostpass.php:145
+#: mod/lostpass.php:139
 msgid "click here to login"
 msgstr "click here to login"
 
-#: mod/lostpass.php:146
+#: mod/lostpass.php:140
 msgid ""
 "Your password may be changed from the <em>Settings</em> page after "
 "successful login."
 msgstr "Your password may be changed from the <em>Settings</em> page after successful login."
 
-#: mod/lostpass.php:154
+#: mod/lostpass.php:148
 #, php-format
 msgid ""
 "\n"
@@ -4204,7 +4260,7 @@ msgid ""
 "\t\t"
 msgstr "\n\t\t\tDear %1$s,\n\t\t\t\tYour password has been changed as requested. Please retain this\n\t\t\tinformation for your records (or change your password immediately to\n\t\t\tsomething that you will remember).\n\t\t"
 
-#: mod/lostpass.php:160
+#: mod/lostpass.php:154
 #, php-format
 msgid ""
 "\n"
@@ -4218,171 +4274,171 @@ msgid ""
 "\t\t"
 msgstr "\n\t\t\tYour login details are as follows:\n\n\t\t\tSite Location:\t%1$s\n\t\t\tLogin Name:\t%2$s\n\t\t\tPassword:\t%3$s\n\n\t\t\tYou may change that password from your account settings page after logging in.\n\t\t"
 
-#: mod/lostpass.php:176
+#: mod/lostpass.php:170
 #, php-format
 msgid "Your password has been changed at %s"
 msgstr "Your password has been changed at %s"
 
-#: mod/maintenance.php:26
-msgid "System down for maintenance"
-msgstr "Sorry, the system is currently down for maintenance."
-
-#: mod/manage.php:181
+#: mod/manage.php:178
 msgid "Manage Identities and/or Pages"
 msgstr "Manage Identities and Pages"
 
-#: mod/manage.php:182
+#: mod/manage.php:179
 msgid ""
 "Toggle between different identities or community/group pages which share "
 "your account details or which you have been granted \"manage\" permissions"
 msgstr "Accounts that I manage or own."
 
-#: mod/manage.php:183
+#: mod/manage.php:180
 msgid "Select an identity to manage: "
 msgstr "Select identity:"
 
-#: mod/match.php:51
+#: mod/match.php:49
 msgid "No keywords to match. Please add keywords to your default profile."
 msgstr "No keywords to match. Please add keywords to your default profile."
 
-#: mod/match.php:106
-msgid "is interested in:"
-msgstr "is interested in:"
+#: mod/match.php:115 src/Content/Pager.php:198
+msgid "first"
+msgstr "first"
+
+#: mod/match.php:120 src/Content/Pager.php:258
+msgid "next"
+msgstr "next"
 
-#: mod/match.php:120
+#: mod/match.php:135
 msgid "Profile Match"
 msgstr "Profile Match"
 
-#: mod/message.php:35 mod/message.php:118 src/Content/Nav.php:252
+#: mod/message.php:33 mod/message.php:116 src/Content/Nav.php:255
 msgid "New Message"
 msgstr "New Message"
 
-#: mod/message.php:72 mod/wallmessage.php:60
+#: mod/message.php:70 mod/wallmessage.php:60
 msgid "No recipient selected."
 msgstr "No recipient selected."
 
-#: mod/message.php:76
+#: mod/message.php:74
 msgid "Unable to locate contact information."
 msgstr "Unable to locate contact information."
 
-#: mod/message.php:79 mod/wallmessage.php:66
+#: mod/message.php:77 mod/wallmessage.php:66
 msgid "Message could not be sent."
 msgstr "Message could not be sent."
 
-#: mod/message.php:82 mod/wallmessage.php:69
+#: mod/message.php:80 mod/wallmessage.php:69
 msgid "Message collection failure."
 msgstr "Message collection failure."
 
-#: mod/message.php:85 mod/wallmessage.php:72
+#: mod/message.php:83 mod/wallmessage.php:72
 msgid "Message sent."
 msgstr "Message sent."
 
-#: mod/message.php:112 mod/notifications.php:47 mod/notifications.php:185
-#: mod/notifications.php:233
+#: mod/message.php:110 mod/notifications.php:47 mod/notifications.php:187
+#: mod/notifications.php:235
 msgid "Discard"
 msgstr "Discard"
 
-#: mod/message.php:125 src/Content/Nav.php:249 view/theme/frio/theme.php:282
+#: mod/message.php:123 view/theme/frio/theme.php:271 src/Content/Nav.php:252
 msgid "Messages"
 msgstr "Messages"
 
-#: mod/message.php:150
+#: mod/message.php:148
 msgid "Do you really want to delete this message?"
 msgstr "Do you really want to delete this message?"
 
-#: mod/message.php:168
+#: mod/message.php:166
 msgid "Conversation not found."
 msgstr ""
 
-#: mod/message.php:173
+#: mod/message.php:171
 msgid "Message deleted."
 msgstr "Message deleted."
 
-#: mod/message.php:178 mod/message.php:193
+#: mod/message.php:176 mod/message.php:190
 msgid "Conversation removed."
 msgstr "Conversation removed."
 
-#: mod/message.php:207 mod/message.php:347 mod/wallmessage.php:123
+#: mod/message.php:204 mod/message.php:360 mod/wallmessage.php:123
 msgid "Please enter a link URL:"
 msgstr "Please enter a link URL:"
 
-#: mod/message.php:250 mod/wallmessage.php:128
+#: mod/message.php:246 mod/wallmessage.php:128
 msgid "Send Private Message"
 msgstr "Send private message"
 
-#: mod/message.php:251 mod/message.php:415 mod/wallmessage.php:130
+#: mod/message.php:247 mod/message.php:430 mod/wallmessage.php:130
 msgid "To:"
 msgstr "To:"
 
-#: mod/message.php:255 mod/message.php:417 mod/wallmessage.php:131
+#: mod/message.php:251 mod/message.php:432 mod/wallmessage.php:131
 msgid "Subject:"
 msgstr "Subject:"
 
-#: mod/message.php:293
+#: mod/message.php:289
 msgid "No messages."
 msgstr "No messages."
 
-#: mod/message.php:334
+#: mod/message.php:352
 msgid "Message not available."
 msgstr "Message not available."
 
-#: mod/message.php:391
+#: mod/message.php:406
 msgid "Delete message"
 msgstr "Delete message"
 
-#: mod/message.php:393 mod/message.php:494
+#: mod/message.php:408 mod/message.php:540
 msgid "D, d M Y - g:i A"
 msgstr "D, d M Y - g:i A"
 
-#: mod/message.php:408 mod/message.php:491
+#: mod/message.php:423 mod/message.php:537
 msgid "Delete conversation"
 msgstr "Delete conversation"
 
-#: mod/message.php:410
+#: mod/message.php:425
 msgid ""
 "No secure communications available. You <strong>may</strong> be able to "
 "respond from the sender's profile page."
 msgstr "No secure communications available. You <strong>may</strong> be able to respond from the sender's profile page."
 
-#: mod/message.php:414
+#: mod/message.php:429
 msgid "Send Reply"
 msgstr "Send reply"
 
-#: mod/message.php:465
+#: mod/message.php:512
 #, php-format
 msgid "Unknown sender - %s"
 msgstr "Unknown sender - %s"
 
-#: mod/message.php:467
+#: mod/message.php:514
 #, php-format
 msgid "You and %s"
 msgstr "Me and %s"
 
-#: mod/message.php:469
+#: mod/message.php:516
 #, php-format
 msgid "%s and You"
 msgstr "%s and me"
 
-#: mod/message.php:497
+#: mod/message.php:543
 #, php-format
 msgid "%d message"
 msgid_plural "%d messages"
 msgstr[0] "%d message"
 msgstr[1] "%d messages"
 
-#: mod/network.php:192 mod/search.php:40
+#: mod/network.php:183 mod/search.php:38
 msgid "Remove term"
 msgstr "Remove term"
 
-#: mod/network.php:199 mod/search.php:49
+#: mod/network.php:190 mod/search.php:47
 msgid "Saved Searches"
 msgstr "Saved searches"
 
-#: mod/network.php:200 src/Model/Group.php:410
+#: mod/network.php:191 src/Model/Group.php:414
 msgid "add"
 msgstr "add"
 
-#: mod/network.php:567
+#: mod/network.php:563
 #, php-format
 msgid ""
 "Warning: This group contains %s member from a network that doesn't allow non"
@@ -4393,85 +4449,85 @@ msgid_plural ""
 msgstr[0] "Warning: This group contains %s member from a network that doesn't allow non public messages."
 msgstr[1] "Warning: This group contains %s members from a network that doesn't allow non-public messages."
 
-#: mod/network.php:570
+#: mod/network.php:566
 msgid "Messages in this group won't be send to these receivers."
 msgstr "Messages in this group won't be sent to these receivers."
 
-#: mod/network.php:638
+#: mod/network.php:633
 msgid "No such group"
 msgstr "No such group"
 
-#: mod/network.php:663
+#: mod/network.php:658
 #, php-format
 msgid "Group: %s"
 msgstr "Group: %s"
 
-#: mod/network.php:689
+#: mod/network.php:684
 msgid "Private messages to this person are at risk of public disclosure."
 msgstr "Private messages to this person are at risk of public disclosure."
 
-#: mod/network.php:692
+#: mod/network.php:687
 msgid "Invalid contact."
 msgstr "Invalid contact."
 
-#: mod/network.php:970
+#: mod/network.php:966
 msgid "Commented Order"
 msgstr "Commented last"
 
-#: mod/network.php:973
+#: mod/network.php:969
 msgid "Sort by Comment Date"
 msgstr "Sort by comment date"
 
-#: mod/network.php:978
+#: mod/network.php:974
 msgid "Posted Order"
 msgstr "Posted last"
 
-#: mod/network.php:981
+#: mod/network.php:977
 msgid "Sort by Post Date"
 msgstr "Sort by post date"
 
-#: mod/network.php:988 mod/profiles.php:595
-#: src/Core/NotificationsManager.php:187
+#: mod/network.php:984 mod/profiles.php:579
+#: src/Core/NotificationsManager.php:189
 msgid "Personal"
 msgstr "Personal"
 
-#: mod/network.php:991
+#: mod/network.php:987
 msgid "Posts that mention or involve you"
 msgstr "Posts mentioning or involving me"
 
-#: mod/network.php:998
+#: mod/network.php:994
 msgid "New"
 msgstr "New"
 
-#: mod/network.php:1001
+#: mod/network.php:997
 msgid "Activity Stream - by date"
 msgstr "Activity Stream - by date"
 
-#: mod/network.php:1009
+#: mod/network.php:1005
 msgid "Shared Links"
 msgstr "Shared links"
 
-#: mod/network.php:1012
+#: mod/network.php:1008
 msgid "Interesting Links"
 msgstr "Interesting links"
 
-#: mod/network.php:1019
+#: mod/network.php:1015
 msgid "Starred"
 msgstr "Starred"
 
-#: mod/network.php:1022
+#: mod/network.php:1018
 msgid "Favourite Posts"
 msgstr "My favorite posts"
 
-#: mod/newmember.php:11
+#: mod/newmember.php:12
 msgid "Welcome to Friendica"
 msgstr "Welcome to Friendica"
 
-#: mod/newmember.php:12
+#: mod/newmember.php:13
 msgid "New Member Checklist"
 msgstr "New Member Checklist"
 
-#: mod/newmember.php:14
+#: mod/newmember.php:15
 msgid ""
 "We would like to offer some tips and links to help make your experience "
 "enjoyable. Click any item to visit the relevant page. A link to this page "
@@ -4479,33 +4535,33 @@ msgid ""
 "registration and then will quietly disappear."
 msgstr "We would like to offer some tips and links to help make your experience enjoyable. Click any item to visit the relevant page. A link to this page will be visible from your home page for two weeks after your initial registration and then will quietly disappear."
 
-#: mod/newmember.php:15
+#: mod/newmember.php:16
 msgid "Getting Started"
 msgstr "Getting started"
 
-#: mod/newmember.php:17
+#: mod/newmember.php:18
 msgid "Friendica Walk-Through"
 msgstr "Friendica walk-through"
 
-#: mod/newmember.php:17
+#: mod/newmember.php:18
 msgid ""
 "On your <em>Quick Start</em> page - find a brief introduction to your "
 "profile and network tabs, make some new connections, and find some groups to"
 " join."
 msgstr "On your <em>Quick Start</em> page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join."
 
-#: mod/newmember.php:21
+#: mod/newmember.php:22
 msgid "Go to Your Settings"
 msgstr "Go to your settings"
 
-#: mod/newmember.php:21
+#: mod/newmember.php:22
 msgid ""
 "On your <em>Settings</em> page -  change your initial password. Also make a "
 "note of your Identity Address. This looks just like an email address - and "
 "will be useful in making friends on the free social web."
 msgstr "On your <em>Settings</em> page -  change your initial password. Also make a note of your Identity Address. This looks just like an email address - and will be useful in making friends on the free social web."
 
-#: mod/newmember.php:22
+#: mod/newmember.php:23
 msgid ""
 "Review the other settings, particularly the privacy settings. An unpublished"
 " directory listing is like having an unlisted phone number. In general, you "
@@ -4513,88 +4569,87 @@ msgid ""
 "potential friends know exactly how to find you."
 msgstr "Review the other settings, particularly the privacy settings. An unpublished directory listing is like having an unlisted phone number. In general, you should probably publish your listing - unless all of your friends and potential friends know exactly how to find you."
 
-#: mod/newmember.php:24 mod/profperm.php:117 src/Content/Nav.php:154
-#: src/Model/Profile.php:743 src/Model/Profile.php:876
-#: src/Model/Profile.php:909 src/Module/Contact.php:661
-#: src/Module/Contact.php:874 view/theme/frio/theme.php:274
+#: mod/newmember.php:25 mod/profperm.php:117 view/theme/frio/theme.php:263
+#: src/Content/Nav.php:157 src/Model/Profile.php:876 src/Model/Profile.php:909
+#: src/Module/Contact.php:654 src/Module/Contact.php:869
 msgid "Profile"
 msgstr "Profile"
 
-#: mod/newmember.php:26 mod/profiles.php:599 mod/profile_photo.php:250
+#: mod/newmember.php:27 mod/profile_photo.php:253 mod/profiles.php:583
 msgid "Upload Profile Photo"
 msgstr "Upload profile photo"
 
-#: mod/newmember.php:26
+#: mod/newmember.php:27
 msgid ""
 "Upload a profile photo if you have not done so already. Studies have shown "
 "that people with real photos of themselves are ten times more likely to make"
 " friends than people who do not."
 msgstr "Upload a profile photo if you have not done so already. Studies have shown that people with real photos of themselves are ten times more likely to make friends than people who do not."
 
-#: mod/newmember.php:27
+#: mod/newmember.php:28
 msgid "Edit Your Profile"
 msgstr "Edit your profile"
 
-#: mod/newmember.php:27
+#: mod/newmember.php:28
 msgid ""
 "Edit your <strong>default</strong> profile to your liking. Review the "
 "settings for hiding your list of friends and hiding the profile from unknown"
 " visitors."
 msgstr "Edit your <strong>default</strong> profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors."
 
-#: mod/newmember.php:28
+#: mod/newmember.php:29
 msgid "Profile Keywords"
 msgstr "Profile keywords"
 
-#: mod/newmember.php:28
+#: mod/newmember.php:29
 msgid ""
 "Set some public keywords for your default profile which describe your "
 "interests. We may be able to find other people with similar interests and "
 "suggest friendships."
 msgstr "Set some public keywords for your default profile which describe your interests. We may be able to find other people with similar interests and suggest friendships."
 
-#: mod/newmember.php:30
+#: mod/newmember.php:31
 msgid "Connecting"
 msgstr "Connecting"
 
-#: mod/newmember.php:36
+#: mod/newmember.php:37
 msgid "Importing Emails"
 msgstr "Importing emails"
 
-#: mod/newmember.php:36
+#: mod/newmember.php:37
 msgid ""
 "Enter your email access information on your Connector Settings page if you "
 "wish to import and interact with friends or mailing lists from your email "
 "INBOX"
 msgstr "Enter your email access information on your Connector Settings if you wish to import and interact with friends or mailing lists from your email INBOX"
 
-#: mod/newmember.php:39
+#: mod/newmember.php:40
 msgid "Go to Your Contacts Page"
 msgstr "Go to your contacts page"
 
-#: mod/newmember.php:39
+#: mod/newmember.php:40
 msgid ""
 "Your Contacts page is your gateway to managing friendships and connecting "
 "with friends on other networks. Typically you enter their address or site "
 "URL in the <em>Add New Contact</em> dialog."
 msgstr "Your contacts page is your gateway to managing friendships and connecting with friends on other networks. Typically you enter their address or site URL in the <em>Add new contact</em> dialog."
 
-#: mod/newmember.php:40
+#: mod/newmember.php:41
 msgid "Go to Your Site's Directory"
 msgstr "Go to your site's directory"
 
-#: mod/newmember.php:40
+#: mod/newmember.php:41
 msgid ""
 "The Directory page lets you find other people in this network or other "
 "federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on "
 "their profile page. Provide your own Identity Address if requested."
 msgstr "The directory lets you find other people in this network or other federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on their profile page. Provide your own identity address when requested."
 
-#: mod/newmember.php:41
+#: mod/newmember.php:42
 msgid "Finding New People"
 msgstr "Finding new people"
 
-#: mod/newmember.php:41
+#: mod/newmember.php:42
 msgid ""
 "On the side panel of the Contacts page are several tools to find new "
 "friends. We can match people by interest, look up people by name or "
@@ -4603,47 +4658,47 @@ msgid ""
 "hours."
 msgstr "On the side panel of the Contacts page are several tools to find new friends. We can match people by interest, look up people by name or interest, and provide suggestions based on network relationships. On a brand new site, friend suggestions will usually begin to be populated within 24 hours."
 
-#: mod/newmember.php:43 src/Model/Group.php:411 src/Module/Contact.php:759
+#: mod/newmember.php:44 src/Model/Group.php:415 src/Module/Contact.php:752
 msgid "Groups"
 msgstr "Groups"
 
-#: mod/newmember.php:45
+#: mod/newmember.php:46
 msgid "Group Your Contacts"
 msgstr "Group your contacts"
 
-#: mod/newmember.php:45
+#: mod/newmember.php:46
 msgid ""
 "Once you have made some friends, organize them into private conversation "
 "groups from the sidebar of your Contacts page and then you can interact with"
 " each group privately on your Network page."
 msgstr "Once you have made some friends, organize them into private conversation groups from the sidebar of your contacts page and then you can interact with each group privately on your network page."
 
-#: mod/newmember.php:48
+#: mod/newmember.php:49
 msgid "Why Aren't My Posts Public?"
 msgstr "Why aren't my posts public?"
 
-#: mod/newmember.php:48
+#: mod/newmember.php:49
 msgid ""
 "Friendica respects your privacy. By default, your posts will only show up to"
 " people you've added as friends. For more information, see the help section "
 "from the link above."
 msgstr "Friendica respects your privacy. By default, your posts will only show up to people you've added as friends. For more information, see the help section from the link above."
 
-#: mod/newmember.php:52
+#: mod/newmember.php:53
 msgid "Getting Help"
 msgstr "Getting help"
 
-#: mod/newmember.php:54
+#: mod/newmember.php:55
 msgid "Go to the Help Section"
 msgstr "Go to the help section"
 
-#: mod/newmember.php:54
+#: mod/newmember.php:55
 msgid ""
 "Our <strong>help</strong> pages may be consulted for detail on other program"
 " features and resources."
 msgstr "Our <strong>help</strong> pages may be consulted for detail on other program features and resources."
 
-#: mod/notes.php:42 src/Model/Profile.php:959
+#: mod/notes.php:34 src/Model/Profile.php:959
 msgid "Personal Notes"
 msgstr "Personal notes"
 
@@ -4651,125 +4706,125 @@ msgstr "Personal notes"
 msgid "Invalid request identifier."
 msgstr "Invalid request identifier."
 
-#: mod/notifications.php:60 mod/notifications.php:184
-#: mod/notifications.php:269 src/Module/Contact.php:628
-#: src/Module/Contact.php:830 src/Module/Contact.php:1090
+#: mod/notifications.php:60 mod/notifications.php:186
+#: mod/notifications.php:271 src/Module/Contact.php:622
+#: src/Module/Contact.php:825 src/Module/Contact.php:1085
 msgid "Ignore"
 msgstr "Ignore"
 
-#: mod/notifications.php:93 src/Content/Nav.php:244
+#: mod/notifications.php:93 src/Content/Nav.php:247
 msgid "Notifications"
 msgstr "Notifications"
 
-#: mod/notifications.php:105
+#: mod/notifications.php:107
 msgid "Network Notifications"
 msgstr "Network notifications"
 
-#: mod/notifications.php:110 mod/notify.php:82
+#: mod/notifications.php:112 mod/notify.php:84
 msgid "System Notifications"
 msgstr "System notifications"
 
-#: mod/notifications.php:115
+#: mod/notifications.php:117
 msgid "Personal Notifications"
 msgstr "Personal notifications"
 
-#: mod/notifications.php:120
+#: mod/notifications.php:122
 msgid "Home Notifications"
 msgstr "Home notifications"
 
-#: mod/notifications.php:140
+#: mod/notifications.php:142
 msgid "Show unread"
 msgstr "Show unread"
 
-#: mod/notifications.php:140
+#: mod/notifications.php:142
 msgid "Show all"
 msgstr "Show all"
 
-#: mod/notifications.php:151
+#: mod/notifications.php:153
 msgid "Show Ignored Requests"
 msgstr "Show ignored requests."
 
-#: mod/notifications.php:151
+#: mod/notifications.php:153
 msgid "Hide Ignored Requests"
 msgstr "Hide ignored requests"
 
-#: mod/notifications.php:164 mod/notifications.php:241
+#: mod/notifications.php:166 mod/notifications.php:243
 msgid "Notification type:"
 msgstr ""
 
-#: mod/notifications.php:167
+#: mod/notifications.php:169
 msgid "Suggested by:"
 msgstr ""
 
-#: mod/notifications.php:179 mod/notifications.php:258
-#: src/Module/Contact.php:636
+#: mod/notifications.php:181 mod/notifications.php:260
+#: src/Module/Contact.php:630
 msgid "Hide this contact from others"
 msgstr "Hide this contact from others"
 
-#: mod/notifications.php:201
+#: mod/notifications.php:203
 msgid "Claims to be known to you: "
 msgstr "Says they know me:"
 
-#: mod/notifications.php:202
+#: mod/notifications.php:204
 msgid "yes"
 msgstr "yes"
 
-#: mod/notifications.php:202
+#: mod/notifications.php:204
 msgid "no"
 msgstr "no"
 
-#: mod/notifications.php:203 mod/notifications.php:207
+#: mod/notifications.php:205 mod/notifications.php:209
 msgid "Shall your connection be bidirectional or not?"
 msgstr "Shall your connection be in both directions or not?"
 
-#: mod/notifications.php:204 mod/notifications.php:208
+#: mod/notifications.php:206 mod/notifications.php:210
 #, php-format
 msgid ""
 "Accepting %s as a friend allows %s to subscribe to your posts, and you will "
 "also receive updates from them in your news feed."
 msgstr "Accepting %s as a friend allows %s to subscribe to your posts. You will also receive updates from them in your news feed."
 
-#: mod/notifications.php:205
+#: mod/notifications.php:207
 #, php-format
 msgid ""
 "Accepting %s as a subscriber allows them to subscribe to your posts, but you"
 " will not receive updates from them in your news feed."
 msgstr "Accepting %s as a subscriber allows them to subscribe to your posts, but you will not receive updates from them in your news feed."
 
-#: mod/notifications.php:209
+#: mod/notifications.php:211
 #, php-format
 msgid ""
 "Accepting %s as a sharer allows them to subscribe to your posts, but you "
 "will not receive updates from them in your news feed."
 msgstr "Accepting %s as a sharer allows them to subscribe to your posts, but you will not receive updates from them in your news feed."
 
-#: mod/notifications.php:220
+#: mod/notifications.php:222
 msgid "Friend"
 msgstr "Friend"
 
-#: mod/notifications.php:221
+#: mod/notifications.php:223
 msgid "Sharer"
 msgstr "Sharer"
 
-#: mod/notifications.php:221
+#: mod/notifications.php:223
 msgid "Subscriber"
 msgstr "Subscriber"
 
-#: mod/notifications.php:264 src/Model/Profile.php:537
-#: src/Module/Contact.php:93
+#: mod/notifications.php:266 src/Model/Profile.php:543
+#: src/Module/Contact.php:88
 msgid "Network:"
 msgstr "Network:"
 
-#: mod/notifications.php:277
+#: mod/notifications.php:279
 msgid "No introductions."
 msgstr "No introductions."
 
-#: mod/notifications.php:311
+#: mod/notifications.php:313
 #, php-format
 msgid "No more %s notifications."
 msgstr "No more %s notifications."
 
-#: mod/notify.php:78
+#: mod/notify.php:80
 msgid "No more system notifications."
 msgstr "No more system notifications."
 
@@ -4777,16 +4832,16 @@ msgstr "No more system notifications."
 msgid "Post successful."
 msgstr "Post successful."
 
-#: mod/openid.php:32
+#: mod/openid.php:31
 msgid "OpenID protocol error. No ID returned."
 msgstr "OpenID protocol error. No ID returned."
 
-#: mod/openid.php:68
+#: mod/openid.php:67
 msgid ""
 "Account not found and OpenID registration is not permitted on this site."
 msgstr "Account not found and OpenID registration is not permitted on this site."
 
-#: mod/openid.php:118 src/Module/Login.php:94 src/Module/Login.php:144
+#: mod/openid.php:117 src/Module/Login.php:92 src/Module/Login.php:143
 msgid "Login failed."
 msgstr "Login failed."
 
@@ -4818,7 +4873,7 @@ msgstr "success"
 msgid "failed"
 msgstr "failed"
 
-#: mod/ostatus_subscribe.php:89 src/Object/Post.php:282
+#: mod/ostatus_subscribe.php:89 src/Object/Post.php:283
 msgid "ignored"
 msgstr "Ignored"
 
@@ -4826,255 +4881,251 @@ msgstr "Ignored"
 msgid "Keep this window open until done."
 msgstr "Keep this window open until done."
 
-#: mod/photos.php:118 src/Model/Profile.php:920
+#: mod/photos.php:115 src/Model/Profile.php:920
 msgid "Photo Albums"
 msgstr "Photo Albums"
 
-#: mod/photos.php:119 mod/photos.php:1710
+#: mod/photos.php:116 mod/photos.php:1665
 msgid "Recent Photos"
 msgstr "Recent photos"
 
-#: mod/photos.php:122 mod/photos.php:1231 mod/photos.php:1712
+#: mod/photos.php:119 mod/photos.php:1187 mod/photos.php:1667
 msgid "Upload New Photos"
 msgstr "Upload new photos"
 
-#: mod/photos.php:140 mod/settings.php:56
+#: mod/photos.php:137 mod/settings.php:56
 msgid "everybody"
 msgstr "everybody"
 
-#: mod/photos.php:196
+#: mod/photos.php:193
 msgid "Contact information unavailable"
 msgstr "Contact information unavailable"
 
-#: mod/photos.php:215
+#: mod/photos.php:212
 msgid "Album not found."
 msgstr "Album not found."
 
-#: mod/photos.php:244 mod/photos.php:257 mod/photos.php:1182
+#: mod/photos.php:241 mod/photos.php:254 mod/photos.php:1138
 msgid "Delete Album"
 msgstr "Delete album"
 
-#: mod/photos.php:255
+#: mod/photos.php:252
 msgid "Do you really want to delete this photo album and all its photos?"
 msgstr "Do you really want to delete this photo album and all its photos?"
 
-#: mod/photos.php:317 mod/photos.php:329 mod/photos.php:1457
+#: mod/photos.php:310 mod/photos.php:322 mod/photos.php:1413
 msgid "Delete Photo"
 msgstr "Delete photo"
 
-#: mod/photos.php:327
+#: mod/photos.php:320
 msgid "Do you really want to delete this photo?"
 msgstr "Do you really want to delete this photo?"
 
-#: mod/photos.php:684
+#: mod/photos.php:645
 msgid "a photo"
 msgstr "a photo"
 
-#: mod/photos.php:684
+#: mod/photos.php:645
 #, php-format
 msgid "%1$s was tagged in %2$s by %3$s"
 msgstr "%1$s was tagged in %2$s by %3$s"
 
-#: mod/photos.php:780 mod/photos.php:783 mod/photos.php:812
-#: mod/profile_photo.php:155 mod/wall_upload.php:197
+#: mod/photos.php:738 mod/photos.php:741 mod/photos.php:770
+#: mod/profile_photo.php:152 mod/wall_upload.php:198
 #, php-format
 msgid "Image exceeds size limit of %s"
 msgstr "Image exceeds size limit of %s"
 
-#: mod/photos.php:786
+#: mod/photos.php:744
 msgid "Image upload didn't complete, please try again"
 msgstr "Image upload didn't complete. Please try again."
 
-#: mod/photos.php:789
+#: mod/photos.php:747
 msgid "Image file is missing"
 msgstr "Image file is missing"
 
-#: mod/photos.php:794
+#: mod/photos.php:752
 msgid ""
 "Server can't accept new file upload at this time, please contact your "
 "administrator"
 msgstr "Server can't accept new file uploads at this time. Please contact your administrator."
 
-#: mod/photos.php:820
+#: mod/photos.php:778
 msgid "Image file is empty."
 msgstr "Image file is empty."
 
-#: mod/photos.php:835 mod/profile_photo.php:164 mod/wall_upload.php:211
+#: mod/photos.php:793 mod/profile_photo.php:161 mod/wall_upload.php:212
 msgid "Unable to process image."
 msgstr "Unable to process image."
 
-#: mod/photos.php:864 mod/profile_photo.php:309 mod/wall_upload.php:250
+#: mod/photos.php:822 mod/profile_photo.php:310 mod/wall_upload.php:251
 msgid "Image upload failed."
 msgstr "Image upload failed."
 
-#: mod/photos.php:952
+#: mod/photos.php:908
 msgid "No photos selected"
 msgstr "No photos selected"
 
-#: mod/photos.php:1049 mod/videos.php:302
+#: mod/photos.php:1005 mod/videos.php:239
 msgid "Access to this item is restricted."
 msgstr "Access to this item is restricted."
 
-#: mod/photos.php:1103
+#: mod/photos.php:1059
 msgid "Upload Photos"
 msgstr "Upload photos"
 
-#: mod/photos.php:1107 mod/photos.php:1177
+#: mod/photos.php:1063 mod/photos.php:1133
 msgid "New album name: "
 msgstr "New album name: "
 
-#: mod/photos.php:1108
+#: mod/photos.php:1064
 msgid "or select existing album:"
 msgstr ""
 
-#: mod/photos.php:1109
+#: mod/photos.php:1065
 msgid "Do not show a status post for this upload"
 msgstr "Do not show a status post for this upload"
 
-#: mod/photos.php:1125 mod/photos.php:1460 mod/settings.php:1224
+#: mod/photos.php:1081 mod/photos.php:1416 mod/settings.php:1209
 msgid "Show to Groups"
 msgstr "Show to groups"
 
-#: mod/photos.php:1126 mod/photos.php:1461 mod/settings.php:1225
+#: mod/photos.php:1082 mod/photos.php:1417 mod/settings.php:1210
 msgid "Show to Contacts"
 msgstr "Show to contacts"
 
-#: mod/photos.php:1188
+#: mod/photos.php:1144
 msgid "Edit Album"
 msgstr "Edit album"
 
-#: mod/photos.php:1193
+#: mod/photos.php:1149
 msgid "Show Newest First"
 msgstr "Show newest first"
 
-#: mod/photos.php:1195
+#: mod/photos.php:1151
 msgid "Show Oldest First"
 msgstr "Show oldest first"
 
-#: mod/photos.php:1216 mod/photos.php:1695
+#: mod/photos.php:1172 mod/photos.php:1650
 msgid "View Photo"
 msgstr "View photo"
 
-#: mod/photos.php:1257
+#: mod/photos.php:1213
 msgid "Permission denied. Access to this item may be restricted."
 msgstr "Permission denied. Access to this item may be restricted."
 
-#: mod/photos.php:1259
+#: mod/photos.php:1215
 msgid "Photo not available"
 msgstr "Photo not available"
 
-#: mod/photos.php:1334
+#: mod/photos.php:1290
 msgid "View photo"
 msgstr "View photo"
 
-#: mod/photos.php:1334
+#: mod/photos.php:1290
 msgid "Edit photo"
 msgstr "Edit photo"
 
-#: mod/photos.php:1335
+#: mod/photos.php:1291
 msgid "Use as profile photo"
 msgstr "Use as profile photo"
 
-#: mod/photos.php:1341 src/Object/Post.php:155
+#: mod/photos.php:1297 src/Object/Post.php:156
 msgid "Private Message"
 msgstr "Private message"
 
-#: mod/photos.php:1361
+#: mod/photos.php:1317
 msgid "View Full Size"
 msgstr "View full size"
 
-#: mod/photos.php:1425
+#: mod/photos.php:1381
 msgid "Tags: "
 msgstr "Tags: "
 
-#: mod/photos.php:1428
+#: mod/photos.php:1384
 msgid "[Select tags to remove]"
 msgstr ""
 
-#: mod/photos.php:1443
+#: mod/photos.php:1399
 msgid "New album name"
 msgstr "New album name"
 
-#: mod/photos.php:1444
+#: mod/photos.php:1400
 msgid "Caption"
 msgstr "Caption"
 
-#: mod/photos.php:1445
+#: mod/photos.php:1401
 msgid "Add a Tag"
 msgstr "Add Tag"
 
-#: mod/photos.php:1445
+#: mod/photos.php:1401
 msgid ""
 "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
 msgstr "Example: @bob, @jojo@example.com, #California, #camping"
 
-#: mod/photos.php:1446
+#: mod/photos.php:1402
 msgid "Do not rotate"
 msgstr "Do not rotate"
 
-#: mod/photos.php:1447
+#: mod/photos.php:1403
 msgid "Rotate CW (right)"
 msgstr "Rotate right (CW)"
 
-#: mod/photos.php:1448
+#: mod/photos.php:1404
 msgid "Rotate CCW (left)"
 msgstr "Rotate left (CCW)"
 
-#: mod/photos.php:1482 src/Object/Post.php:310
+#: mod/photos.php:1438 src/Object/Post.php:311
 msgid "I like this (toggle)"
 msgstr "I like this (toggle)"
 
-#: mod/photos.php:1483 src/Object/Post.php:311
+#: mod/photos.php:1439 src/Object/Post.php:312
 msgid "I don't like this (toggle)"
 msgstr "I don't like this (toggle)"
 
-#: mod/photos.php:1498 mod/photos.php:1537 mod/photos.php:1597
-#: src/Module/Contact.php:1023 src/Object/Post.php:810
+#: mod/photos.php:1454 mod/photos.php:1493 mod/photos.php:1553
+#: src/Module/Contact.php:1018 src/Object/Post.php:870
 msgid "This is you"
 msgstr "This is me"
 
-#: mod/photos.php:1500 mod/photos.php:1539 mod/photos.php:1599
-#: src/Object/Post.php:415 src/Object/Post.php:812
+#: mod/photos.php:1456 mod/photos.php:1495 mod/photos.php:1555
+#: src/Object/Post.php:417 src/Object/Post.php:872
 msgid "Comment"
 msgstr "Comment"
 
-#: mod/photos.php:1629
+#: mod/photos.php:1585
 msgid "Map"
 msgstr "Map"
 
-#: mod/photos.php:1701 mod/videos.php:379
+#: mod/photos.php:1656 mod/videos.php:316
 msgid "View Album"
 msgstr "View album"
 
-#: mod/ping.php:281
+#: mod/ping.php:272
 msgid "{0} wants to be your friend"
 msgstr "{0} wants to be your friend"
 
-#: mod/ping.php:297
-msgid "{0} sent you a message"
-msgstr "{0} sent you a message"
-
-#: mod/ping.php:313
+#: mod/ping.php:288
 msgid "{0} requested registration"
 msgstr "{0} requested registration"
 
-#: mod/poke.php:187
+#: mod/poke.php:181
 msgid "Poke/Prod"
 msgstr "Poke/Prod"
 
-#: mod/poke.php:188
+#: mod/poke.php:182
 msgid "poke, prod or do other things to somebody"
 msgstr "Poke, prod or do other things to somebody"
 
-#: mod/poke.php:189
+#: mod/poke.php:183
 msgid "Recipient"
 msgstr "Recipient:"
 
-#: mod/poke.php:190
+#: mod/poke.php:184
 msgid "Choose what you wish to do to recipient"
 msgstr "Choose what you wish to do:"
 
-#: mod/poke.php:193
+#: mod/poke.php:187
 msgid "Make this post private"
 msgstr "Make this post private"
 
@@ -5082,405 +5133,386 @@ msgstr "Make this post private"
 msgid "Only logged in users are permitted to perform a probing."
 msgstr "Only logged in users are permitted to use the Probe feature."
 
-#: mod/profile.php:44 src/Model/Profile.php:132
-msgid "Requested profile is not available."
-msgstr "Requested profile is unavailable."
+#: mod/profile_photo.php:58
+msgid "Image uploaded but image cropping failed."
+msgstr "Image uploaded but image cropping failed."
 
-#: mod/profile.php:95 mod/profile.php:98 src/Protocol/OStatus.php:1290
+#: mod/profile_photo.php:88 mod/profile_photo.php:97 mod/profile_photo.php:106
+#: mod/profile_photo.php:318
 #, php-format
-msgid "%s's timeline"
-msgstr "%s's timeline"
+msgid "Image size reduction [%s] failed."
+msgstr "Image size reduction [%s] failed."
 
-#: mod/profile.php:96 src/Protocol/OStatus.php:1294
-#, php-format
-msgid "%s's posts"
-msgstr "%s's posts"
+#: mod/profile_photo.php:125
+msgid ""
+"Shift-reload the page or clear browser cache if the new photo does not "
+"display immediately."
+msgstr "Shift-reload the page or clear browser cache if the new photo does not display immediately."
 
-#: mod/profile.php:97 src/Protocol/OStatus.php:1297
-#, php-format
-msgid "%s's comments"
-msgstr "%s's comments"
+#: mod/profile_photo.php:133
+msgid "Unable to process image"
+msgstr "Unable to process image"
+
+#: mod/profile_photo.php:251
+msgid "Upload File:"
+msgstr "Upload File:"
+
+#: mod/profile_photo.php:252
+msgid "Select a profile:"
+msgstr "Select a profile:"
+
+#: mod/profile_photo.php:257
+msgid "or"
+msgstr "or"
+
+#: mod/profile_photo.php:258
+msgid "skip this step"
+msgstr "skip this step"
+
+#: mod/profile_photo.php:258
+msgid "select a photo from your photo albums"
+msgstr "select a photo from your photo albums"
+
+#: mod/profile_photo.php:271
+msgid "Crop Image"
+msgstr "Crop Image"
+
+#: mod/profile_photo.php:272
+msgid "Please adjust the image cropping for optimum viewing."
+msgstr "Please adjust the image cropping for optimum viewing."
 
-#: mod/profiles.php:61
+#: mod/profile_photo.php:274
+msgid "Done Editing"
+msgstr "Done editing"
+
+#: mod/profile_photo.php:308
+msgid "Image uploaded successfully."
+msgstr "Image uploaded successfully."
+
+#: mod/profiles.php:62
 msgid "Profile deleted."
 msgstr "Profile deleted."
 
-#: mod/profiles.php:77 mod/profiles.php:113
+#: mod/profiles.php:78 mod/profiles.php:114
 msgid "Profile-"
 msgstr "Profile-"
 
-#: mod/profiles.php:96 mod/profiles.php:135
+#: mod/profiles.php:97 mod/profiles.php:135
 msgid "New profile created."
 msgstr "New profile created."
 
-#: mod/profiles.php:119
+#: mod/profiles.php:120
 msgid "Profile unavailable to clone."
 msgstr "Profile unavailable to clone."
 
-#: mod/profiles.php:207
+#: mod/profiles.php:206
 msgid "Profile Name is required."
 msgstr "Profile name is required."
 
-#: mod/profiles.php:348
+#: mod/profiles.php:346
 msgid "Marital Status"
 msgstr "Marital status"
 
-#: mod/profiles.php:352
+#: mod/profiles.php:349
 msgid "Romantic Partner"
 msgstr "Romantic partner"
 
-#: mod/profiles.php:364
+#: mod/profiles.php:358
 msgid "Work/Employment"
 msgstr "Work/Employment:"
 
-#: mod/profiles.php:367
+#: mod/profiles.php:361
 msgid "Religion"
 msgstr "Religion"
 
-#: mod/profiles.php:371
+#: mod/profiles.php:364
 msgid "Political Views"
 msgstr "Political views"
 
-#: mod/profiles.php:375
+#: mod/profiles.php:367
 msgid "Gender"
 msgstr "Gender"
 
-#: mod/profiles.php:379
+#: mod/profiles.php:370
 msgid "Sexual Preference"
 msgstr "Sexual preference"
 
-#: mod/profiles.php:383
+#: mod/profiles.php:373
 msgid "XMPP"
 msgstr "XMPP"
 
-#: mod/profiles.php:387
+#: mod/profiles.php:376
 msgid "Homepage"
 msgstr "Homepage"
 
-#: mod/profiles.php:391 mod/profiles.php:594
+#: mod/profiles.php:379 mod/profiles.php:578
 msgid "Interests"
 msgstr "Interests"
 
-#: mod/profiles.php:402 mod/profiles.php:590
+#: mod/profiles.php:389 mod/profiles.php:574
 msgid "Location"
 msgstr "Location"
 
-#: mod/profiles.php:485
+#: mod/profiles.php:469
 msgid "Profile updated."
 msgstr "Profile updated."
 
-#: mod/profiles.php:539
+#: mod/profiles.php:523
 msgid "Hide contacts and friends:"
 msgstr "Hide contacts and friends:"
 
-#: mod/profiles.php:544
+#: mod/profiles.php:528
 msgid "Hide your contact/friend list from viewers of this profile?"
 msgstr "Hide your contact/friend list from viewers of this profile?"
 
-#: mod/profiles.php:564
+#: mod/profiles.php:548
 msgid "Show more profile fields:"
 msgstr "Show more profile fields:"
 
-#: mod/profiles.php:576
+#: mod/profiles.php:560
 msgid "Profile Actions"
 msgstr "Profile actions"
 
-#: mod/profiles.php:577
+#: mod/profiles.php:561
 msgid "Edit Profile Details"
 msgstr "Edit Profile Details"
 
-#: mod/profiles.php:579
+#: mod/profiles.php:563
 msgid "Change Profile Photo"
 msgstr "Change profile photo"
 
-#: mod/profiles.php:581
+#: mod/profiles.php:565
 msgid "View this profile"
 msgstr "View this profile"
 
-#: mod/profiles.php:582
+#: mod/profiles.php:566
 msgid "View all profiles"
 msgstr ""
 
-#: mod/profiles.php:583 mod/profiles.php:678 src/Model/Profile.php:410
+#: mod/profiles.php:567 mod/profiles.php:662 src/Model/Profile.php:419
 msgid "Edit visibility"
 msgstr "Edit visibility"
 
-#: mod/profiles.php:584
+#: mod/profiles.php:568
 msgid "Create a new profile using these settings"
 msgstr "Create a new profile using these settings"
 
-#: mod/profiles.php:585
+#: mod/profiles.php:569
 msgid "Clone this profile"
 msgstr "Clone this profile"
 
-#: mod/profiles.php:586
+#: mod/profiles.php:570
 msgid "Delete this profile"
 msgstr "Delete this profile"
 
-#: mod/profiles.php:588
+#: mod/profiles.php:572
 msgid "Basic information"
 msgstr "Basic information"
 
-#: mod/profiles.php:589
+#: mod/profiles.php:573
 msgid "Profile picture"
 msgstr "Profile picture"
 
-#: mod/profiles.php:591
+#: mod/profiles.php:575
 msgid "Preferences"
 msgstr "Preferences"
 
-#: mod/profiles.php:592
+#: mod/profiles.php:576
 msgid "Status information"
 msgstr "Status information"
 
-#: mod/profiles.php:593
+#: mod/profiles.php:577
 msgid "Additional information"
 msgstr "Additional information"
 
-#: mod/profiles.php:596
+#: mod/profiles.php:580
 msgid "Relation"
 msgstr "Relation"
 
-#: mod/profiles.php:597 src/Util/Temporal.php:83 src/Util/Temporal.php:85
+#: mod/profiles.php:581 src/Util/Temporal.php:79 src/Util/Temporal.php:81
 msgid "Miscellaneous"
 msgstr "Miscellaneous"
 
-#: mod/profiles.php:600
+#: mod/profiles.php:584
 msgid "Your Gender:"
 msgstr "Gender:"
 
-#: mod/profiles.php:601
+#: mod/profiles.php:585
 msgid "<span class=\"heart\">&hearts;</span> Marital Status:"
 msgstr "<span class=\"heart\">&hearts;</span> Marital status:"
 
-#: mod/profiles.php:602 src/Model/Profile.php:795
+#: mod/profiles.php:586 src/Model/Profile.php:795
 msgid "Sexual Preference:"
 msgstr "Sexual preference:"
 
-#: mod/profiles.php:603
+#: mod/profiles.php:587
 msgid "Example: fishing photography software"
 msgstr "Example: fishing photography software"
 
-#: mod/profiles.php:608
+#: mod/profiles.php:592
 msgid "Profile Name:"
 msgstr "Profile name:"
 
-#: mod/profiles.php:610
+#: mod/profiles.php:594
 msgid ""
 "This is your <strong>public</strong> profile.<br />It <strong>may</strong> "
 "be visible to anybody using the internet."
 msgstr "This is your <strong>public</strong> profile.<br />It <strong>may</strong> be visible to anybody using the internet."
 
-#: mod/profiles.php:611
+#: mod/profiles.php:595
 msgid "Your Full Name:"
 msgstr "My full name:"
 
-#: mod/profiles.php:612
+#: mod/profiles.php:596
 msgid "Title/Description:"
 msgstr "Title/Description:"
 
-#: mod/profiles.php:615
+#: mod/profiles.php:599
 msgid "Street Address:"
 msgstr "Street address:"
 
-#: mod/profiles.php:616
+#: mod/profiles.php:600
 msgid "Locality/City:"
 msgstr "Locality/City:"
 
-#: mod/profiles.php:617
+#: mod/profiles.php:601
 msgid "Region/State:"
 msgstr "Region/State:"
 
-#: mod/profiles.php:618
+#: mod/profiles.php:602
 msgid "Postal/Zip Code:"
 msgstr "Postcode:"
 
-#: mod/profiles.php:619
+#: mod/profiles.php:603
 msgid "Country:"
 msgstr "Country:"
 
-#: mod/profiles.php:620 src/Util/Temporal.php:151
+#: mod/profiles.php:604 src/Util/Temporal.php:149
 msgid "Age: "
 msgstr "Age: "
 
-#: mod/profiles.php:623
+#: mod/profiles.php:607
 msgid "Who: (if applicable)"
 msgstr "Who: (if applicable)"
 
-#: mod/profiles.php:623
+#: mod/profiles.php:607
 msgid "Examples: cathy123, Cathy Williams, cathy@example.com"
 msgstr "Examples: cathy123, Cathy Williams, cathy@example.com"
 
-#: mod/profiles.php:624
+#: mod/profiles.php:608
 msgid "Since [date]:"
 msgstr "Since when:"
 
-#: mod/profiles.php:626
+#: mod/profiles.php:610
 msgid "Tell us about yourself..."
 msgstr "About myself:"
 
-#: mod/profiles.php:627
+#: mod/profiles.php:611
 msgid "XMPP (Jabber) address:"
 msgstr "XMPP (Jabber) address:"
 
-#: mod/profiles.php:627
+#: mod/profiles.php:611
 msgid ""
 "The XMPP address will be propagated to your contacts so that they can follow"
 " you."
 msgstr "The XMPP address will be propagated to your contacts so that they can follow you."
 
-#: mod/profiles.php:628
+#: mod/profiles.php:612
 msgid "Homepage URL:"
 msgstr "Homepage URL:"
 
-#: mod/profiles.php:629 src/Model/Profile.php:803
+#: mod/profiles.php:613 src/Model/Profile.php:803
 msgid "Hometown:"
 msgstr "Home town:"
 
-#: mod/profiles.php:630 src/Model/Profile.php:811
+#: mod/profiles.php:614 src/Model/Profile.php:811
 msgid "Political Views:"
 msgstr "Political views:"
 
-#: mod/profiles.php:631
+#: mod/profiles.php:615
 msgid "Religious Views:"
 msgstr "Religious views:"
 
-#: mod/profiles.php:632
+#: mod/profiles.php:616
 msgid "Public Keywords:"
 msgstr "Public keywords:"
 
-#: mod/profiles.php:632
+#: mod/profiles.php:616
 msgid "(Used for suggesting potential friends, can be seen by others)"
 msgstr "Used for suggesting potential friends, can be seen by others."
 
-#: mod/profiles.php:633
+#: mod/profiles.php:617
 msgid "Private Keywords:"
 msgstr "Private keywords:"
 
-#: mod/profiles.php:633
+#: mod/profiles.php:617
 msgid "(Used for searching profiles, never shown to others)"
 msgstr "Used for searching profiles, never shown to others."
 
-#: mod/profiles.php:634 src/Model/Profile.php:827
+#: mod/profiles.php:618 src/Model/Profile.php:827
 msgid "Likes:"
 msgstr "Likes:"
 
-#: mod/profiles.php:635 src/Model/Profile.php:831
+#: mod/profiles.php:619 src/Model/Profile.php:831
 msgid "Dislikes:"
 msgstr "Dislikes:"
 
-#: mod/profiles.php:636
+#: mod/profiles.php:620
 msgid "Musical interests"
 msgstr "Music:"
 
-#: mod/profiles.php:637
+#: mod/profiles.php:621
 msgid "Books, literature"
 msgstr "Books, literature, poetry:"
 
-#: mod/profiles.php:638
+#: mod/profiles.php:622
 msgid "Television"
 msgstr "Television:"
 
-#: mod/profiles.php:639
+#: mod/profiles.php:623
 msgid "Film/dance/culture/entertainment"
 msgstr "Film, dance, culture, entertainment"
 
-#: mod/profiles.php:640
+#: mod/profiles.php:624
 msgid "Hobbies/Interests"
 msgstr "Hobbies/Interests:"
 
-#: mod/profiles.php:641
+#: mod/profiles.php:625
 msgid "Love/romance"
 msgstr "Love/Romance:"
 
-#: mod/profiles.php:642
+#: mod/profiles.php:626
 msgid "Work/employment"
 msgstr "Work/Employment:"
 
-#: mod/profiles.php:643
+#: mod/profiles.php:627
 msgid "School/education"
 msgstr "School/Education:"
 
-#: mod/profiles.php:644
+#: mod/profiles.php:628
 msgid "Contact information and Social Networks"
 msgstr "Contact information and other social networks:"
 
-#: mod/profiles.php:675 src/Model/Profile.php:406
+#: mod/profiles.php:659 src/Model/Profile.php:415
 msgid "Profile Image"
 msgstr "Profile image"
 
-#: mod/profiles.php:677 src/Model/Profile.php:409
+#: mod/profiles.php:661 src/Model/Profile.php:418
 msgid "visible to everybody"
 msgstr "Visible to everybody"
 
-#: mod/profiles.php:684
+#: mod/profiles.php:668
 msgid "Edit/Manage Profiles"
 msgstr "Edit/Manage Profiles"
 
-#: mod/profiles.php:685 src/Model/Profile.php:396 src/Model/Profile.php:418
+#: mod/profiles.php:669 src/Model/Profile.php:405 src/Model/Profile.php:427
 msgid "Change profile photo"
 msgstr "Change profile photo"
 
-#: mod/profiles.php:686 src/Model/Profile.php:397
+#: mod/profiles.php:670 src/Model/Profile.php:406
 msgid "Create New Profile"
 msgstr "Create new profile"
 
-#: mod/profile_photo.php:59
-msgid "Image uploaded but image cropping failed."
-msgstr "Image uploaded but image cropping failed."
-
-#: mod/profile_photo.php:91 mod/profile_photo.php:100
-#: mod/profile_photo.php:109 mod/profile_photo.php:317
-#, php-format
-msgid "Image size reduction [%s] failed."
-msgstr "Image size reduction [%s] failed."
-
-#: mod/profile_photo.php:128
-msgid ""
-"Shift-reload the page or clear browser cache if the new photo does not "
-"display immediately."
-msgstr "Shift-reload the page or clear browser cache if the new photo does not display immediately."
-
-#: mod/profile_photo.php:136
-msgid "Unable to process image"
-msgstr "Unable to process image"
-
-#: mod/profile_photo.php:248
-msgid "Upload File:"
-msgstr "Upload File:"
-
-#: mod/profile_photo.php:249
-msgid "Select a profile:"
-msgstr "Select a profile:"
-
-#: mod/profile_photo.php:254
-msgid "or"
-msgstr "or"
-
-#: mod/profile_photo.php:255
-msgid "skip this step"
-msgstr "skip this step"
-
-#: mod/profile_photo.php:255
-msgid "select a photo from your photo albums"
-msgstr "select a photo from your photo albums"
-
-#: mod/profile_photo.php:268
-msgid "Crop Image"
-msgstr "Crop Image"
-
-#: mod/profile_photo.php:269
-msgid "Please adjust the image cropping for optimum viewing."
-msgstr "Please adjust the image cropping for optimum viewing."
-
-#: mod/profile_photo.php:271
-msgid "Done Editing"
-msgstr "Done editing"
-
-#: mod/profile_photo.php:307
-msgid "Image uploaded successfully."
-msgstr "Image uploaded successfully."
-
 #: mod/profperm.php:36 mod/profperm.php:69
 msgid "Invalid profile identifier."
 msgstr "Invalid profile identifier."
@@ -5497,193 +5529,78 @@ msgstr "Visible to"
 msgid "All Contacts (with secure profile access)"
 msgstr "All contacts with secure profile access"
 
-#: mod/register.php:105
-msgid ""
-"Registration successful. Please check your email for further instructions."
-msgstr "Registration successful. Please check your email for further instructions."
+#: mod/regmod.php:53
+msgid "Account approved."
+msgstr "Account approved."
 
-#: mod/register.php:109
+#: mod/regmod.php:77
 #, php-format
-msgid ""
-"Failed to send email message. Here your accout details:<br> login: %s<br> "
-"password: %s<br><br>You can change your password after login."
-msgstr "Failed to send email message. Here are your account details:<br> login: %s<br> password: %s<br><br>You can change your password after login."
-
-#: mod/register.php:116
-msgid "Registration successful."
-msgstr "Registration successful."
+msgid "Registration revoked for %s"
+msgstr "Registration revoked for %s"
 
-#: mod/register.php:121
-msgid "Your registration can not be processed."
-msgstr "Your registration cannot be processed."
+#: mod/regmod.php:84
+msgid "Please login."
+msgstr "Please login."
 
-#: mod/register.php:164
-msgid "Your registration is pending approval by the site owner."
-msgstr "Your registration is pending approval by the site administrator."
+#: mod/removeme.php:46
+msgid "User deleted their account"
+msgstr "User deleted their account"
 
-#: mod/register.php:193 mod/uimport.php:39
+#: mod/removeme.php:47
 msgid ""
-"This site has exceeded the number of allowed daily account registrations. "
-"Please try again tomorrow."
-msgstr "This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."
+"On your Friendica node an user deleted their account. Please ensure that "
+"their data is removed from the backups."
+msgstr "A user deleted his or her account on your Friendica node. Please ensure these data are removed from the backups."
 
-#: mod/register.php:222
-msgid ""
-"You may (optionally) fill in this form via OpenID by supplying your OpenID "
-"and clicking 'Register'."
-msgstr "You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking 'Sign up now'."
+#: mod/removeme.php:48
+#, php-format
+msgid "The user id is %d"
+msgstr "The user id is %d"
+
+#: mod/removeme.php:84 mod/removeme.php:87
+msgid "Remove My Account"
+msgstr "Remove My Account"
 
-#: mod/register.php:223
+#: mod/removeme.php:85
 msgid ""
-"If you are not familiar with OpenID, please leave that field blank and fill "
-"in the rest of the items."
-msgstr "If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."
+"This will completely remove your account. Once this has been done it is not "
+"recoverable."
+msgstr "This will completely remove your account. Once this has been done it is not recoverable."
 
-#: mod/register.php:224
-msgid "Your OpenID (optional): "
-msgstr "Your OpenID (optional): "
+#: mod/removeme.php:86
+msgid "Please enter your password for verification:"
+msgstr "Please enter your password for verification:"
 
-#: mod/register.php:236
-msgid "Include your profile in member directory?"
-msgstr "Include your profile in member directory?"
-
-#: mod/register.php:263
-msgid "Note for the admin"
-msgstr "Note for the admin"
-
-#: mod/register.php:263
-msgid "Leave a message for the admin, why you want to join this node"
-msgstr "Leave a message for the admin. Why do you want to join this node?"
-
-#: mod/register.php:264
-msgid "Membership on this site is by invitation only."
-msgstr "Membership on this site is by invitation only."
-
-#: mod/register.php:265
-msgid "Your invitation code: "
-msgstr "Your invitation code: "
-
-#: mod/register.php:274
-msgid "Your Full Name (e.g. Joe Smith, real or real-looking): "
-msgstr "Your full name: "
-
-#: mod/register.php:275
-msgid ""
-"Your Email Address: (Initial information will be send there, so this has to "
-"be an existing address.)"
-msgstr "Your Email Address: (Initial information will be sent there, so this must be an existing address.)"
-
-#: mod/register.php:277 mod/settings.php:1196
-msgid "New Password:"
-msgstr "New password:"
-
-#: mod/register.php:277
-msgid "Leave empty for an auto generated password."
-msgstr "Leave empty for an auto generated password."
-
-#: mod/register.php:278 mod/settings.php:1197
-msgid "Confirm:"
-msgstr "Confirm new password:"
-
-#: mod/register.php:279
-#, php-format
-msgid ""
-"Choose a profile nickname. This must begin with a text character. Your "
-"profile address on this site will then be '<strong>nickname@%s</strong>'."
-msgstr "Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be '<strong>nickname@%s</strong>'."
-
-#: mod/register.php:280
-msgid "Choose a nickname: "
-msgstr "Choose a nickname: "
-
-#: mod/register.php:283 src/Content/Nav.php:181 src/Module/Login.php:293
-msgid "Register"
-msgstr "Sign up now >>"
-
-#: mod/register.php:289 mod/uimport.php:54
-msgid "Import"
-msgstr "Import profile"
-
-#: mod/register.php:290
-msgid "Import your profile to this friendica instance"
-msgstr "Import an existing Friendica profile to this node."
-
-#: mod/register.php:298
-msgid "Note: This node explicitly contains adult content"
-msgstr ""
-
-#: mod/regmod.php:55
-msgid "Account approved."
-msgstr "Account approved."
-
-#: mod/regmod.php:79
-#, php-format
-msgid "Registration revoked for %s"
-msgstr "Registration revoked for %s"
-
-#: mod/regmod.php:86
-msgid "Please login."
-msgstr "Please login."
-
-#: mod/removeme.php:49
-msgid "User deleted their account"
-msgstr "User deleted their account"
-
-#: mod/removeme.php:50
-msgid ""
-"On your Friendica node an user deleted their account. Please ensure that "
-"their data is removed from the backups."
-msgstr "A user deleted his or her account on your Friendica node. Please ensure these data are removed from the backups."
-
-#: mod/removeme.php:51
-#, php-format
-msgid "The user id is %d"
-msgstr "The user id is %d"
-
-#: mod/removeme.php:87 mod/removeme.php:90
-msgid "Remove My Account"
-msgstr "Remove My Account"
-
-#: mod/removeme.php:88
-msgid ""
-"This will completely remove your account. Once this has been done it is not "
-"recoverable."
-msgstr "This will completely remove your account. Once this has been done it is not recoverable."
-
-#: mod/removeme.php:89
-msgid "Please enter your password for verification:"
-msgstr "Please enter your password for verification:"
-
-#: mod/repair_ostatus.php:21
-msgid "Resubscribing to OStatus contacts"
-msgstr "Resubscribing to OStatus contacts"
+#: mod/repair_ostatus.php:21
+msgid "Resubscribing to OStatus contacts"
+msgstr "Resubscribing to OStatus contacts"
 
 #: mod/repair_ostatus.php:37
 msgid "Error"
 msgstr "Error"
 
-#: mod/search.php:113
+#: mod/search.php:103
 msgid "Only logged in users are permitted to perform a search."
 msgstr "Only logged in users are permitted to perform a search."
 
-#: mod/search.php:137
+#: mod/search.php:127
 msgid "Too Many Requests"
 msgstr "Too many requests"
 
-#: mod/search.php:138
+#: mod/search.php:128
 msgid "Only one search per minute is permitted for not logged in users."
 msgstr "Only one search per minute is permitted for not-logged-in users."
 
-#: mod/search.php:163 src/Content/Nav.php:195 src/Content/Text/HTML.php:967
+#: mod/search.php:149 src/Content/Text/HTML.php:900 src/Content/Nav.php:198
 msgid "Search"
 msgstr "Search"
 
-#: mod/search.php:249
+#: mod/search.php:235
 #, php-format
 msgid "Items tagged with: %s"
 msgstr "Items tagged with: %s"
 
-#: mod/search.php:251 src/Module/Contact.php:821
+#: mod/search.php:237 src/Module/Contact.php:816
 #, php-format
 msgid "Results for: %s"
 msgstr "Results for: %s"
@@ -5692,7 +5609,7 @@ msgstr "Results for: %s"
 msgid "Account"
 msgstr "Account"
 
-#: mod/settings.php:69 src/Content/Nav.php:263 src/Model/Profile.php:389
+#: mod/settings.php:69 src/Content/Nav.php:266 src/Model/Profile.php:398
 msgid "Profiles"
 msgstr "Profiles"
 
@@ -5700,11 +5617,11 @@ msgstr "Profiles"
 msgid "Display"
 msgstr "Display"
 
-#: mod/settings.php:92 mod/settings.php:845
+#: mod/settings.php:92 mod/settings.php:830
 msgid "Social Networks"
 msgstr "Social networks"
 
-#: mod/settings.php:106 src/Content/Nav.php:258
+#: mod/settings.php:106 src/Content/Nav.php:261
 msgid "Delegations"
 msgstr "Delegations"
 
@@ -5724,7 +5641,7 @@ msgstr "Remove account"
 msgid "Missing some important data!"
 msgstr "Missing some important data!"
 
-#: mod/settings.php:181 mod/settings.php:706 src/Module/Contact.php:828
+#: mod/settings.php:181 mod/settings.php:691 src/Module/Contact.php:823
 msgid "Update"
 msgstr "Update"
 
@@ -5744,154 +5661,144 @@ msgstr "Features updated"
 msgid "Relocate message has been send to your contacts"
 msgstr "Relocate message has been sent to your contacts"
 
-#: mod/settings.php:396 src/Model/User.php:423
-msgid "Passwords do not match. Password unchanged."
-msgstr "Passwords do not match. Password unchanged."
-
-#: mod/settings.php:401
-msgid "Empty passwords are not allowed. Password unchanged."
-msgstr "Empty passwords are not allowed. Password unchanged."
-
-#: mod/settings.php:406 src/Core/Console/NewPassword.php:82
-msgid ""
-"The new password has been exposed in a public data dump, please choose "
-"another."
-msgstr "The new password has been exposed in a public data dump; please choose another."
+#: mod/settings.php:396
+msgid "Passwords do not match."
+msgstr ""
 
-#: mod/settings.php:412
-msgid "Wrong password."
-msgstr "Wrong password."
+#: mod/settings.php:404 src/Core/Console/NewPassword.php:80
+msgid "Password update failed. Please try again."
+msgstr "Password update failed. Please try again."
 
-#: mod/settings.php:419 src/Core/Console/NewPassword.php:89
+#: mod/settings.php:407 src/Core/Console/NewPassword.php:83
 msgid "Password changed."
 msgstr "Password changed."
 
-#: mod/settings.php:421 src/Core/Console/NewPassword.php:86
-msgid "Password update failed. Please try again."
-msgstr "Password update failed. Please try again."
+#: mod/settings.php:410
+msgid "Password unchanged."
+msgstr ""
 
-#: mod/settings.php:505
+#: mod/settings.php:491
 msgid " Please use a shorter name."
 msgstr " Please use a shorter name."
 
-#: mod/settings.php:508
+#: mod/settings.php:494
 msgid " Name too short."
 msgstr " Name too short."
 
-#: mod/settings.php:516
+#: mod/settings.php:501
 msgid "Wrong Password"
 msgstr "Wrong password"
 
-#: mod/settings.php:521
+#: mod/settings.php:506
 msgid "Invalid email."
 msgstr "Invalid email."
 
-#: mod/settings.php:527
+#: mod/settings.php:512
 msgid "Cannot change to that email."
 msgstr "Cannot change to that email."
 
-#: mod/settings.php:577
+#: mod/settings.php:562
 msgid "Private forum has no privacy permissions. Using default privacy group."
 msgstr "Private forum has no privacy permissions. Using default privacy group."
 
-#: mod/settings.php:580
+#: mod/settings.php:565
 msgid "Private forum has no privacy permissions and no default privacy group."
 msgstr "Private forum has no privacy permissions and no default privacy group."
 
-#: mod/settings.php:620
+#: mod/settings.php:605
 msgid "Settings updated."
 msgstr "Settings updated."
 
-#: mod/settings.php:679 mod/settings.php:705 mod/settings.php:739
+#: mod/settings.php:664 mod/settings.php:690 mod/settings.php:724
 msgid "Add application"
 msgstr "Add application"
 
-#: mod/settings.php:683 mod/settings.php:709
+#: mod/settings.php:668 mod/settings.php:694
 msgid "Consumer Key"
 msgstr "Consumer key"
 
-#: mod/settings.php:684 mod/settings.php:710
+#: mod/settings.php:669 mod/settings.php:695
 msgid "Consumer Secret"
 msgstr "Consumer secret"
 
-#: mod/settings.php:685 mod/settings.php:711
+#: mod/settings.php:670 mod/settings.php:696
 msgid "Redirect"
 msgstr "Redirect"
 
-#: mod/settings.php:686 mod/settings.php:712
+#: mod/settings.php:671 mod/settings.php:697
 msgid "Icon url"
 msgstr "Icon URL"
 
-#: mod/settings.php:697
+#: mod/settings.php:682
 msgid "You can't edit this application."
 msgstr "You cannot edit this application."
 
-#: mod/settings.php:738
+#: mod/settings.php:723
 msgid "Connected Apps"
 msgstr "Connected Apps"
 
-#: mod/settings.php:740 src/Object/Post.php:165 src/Object/Post.php:167
+#: mod/settings.php:725 src/Object/Post.php:166 src/Object/Post.php:168
 msgid "Edit"
 msgstr "Edit"
 
-#: mod/settings.php:742
+#: mod/settings.php:727
 msgid "Client key starts with"
 msgstr "Client key starts with"
 
-#: mod/settings.php:743
+#: mod/settings.php:728
 msgid "No name"
 msgstr "No name"
 
-#: mod/settings.php:744
+#: mod/settings.php:729
 msgid "Remove authorization"
 msgstr "Remove authorization"
 
-#: mod/settings.php:755
+#: mod/settings.php:740
 msgid "No Addon settings configured"
 msgstr "No addon settings configured"
 
-#: mod/settings.php:764
+#: mod/settings.php:749
 msgid "Addon Settings"
 msgstr "Addon Settings"
 
-#: mod/settings.php:785
+#: mod/settings.php:770
 msgid "Additional Features"
 msgstr "Additional Features"
 
-#: mod/settings.php:808 src/Content/ContactSelector.php:85
+#: mod/settings.php:793 src/Content/ContactSelector.php:87
 msgid "Diaspora"
 msgstr "Diaspora"
 
-#: mod/settings.php:808 mod/settings.php:809
+#: mod/settings.php:793 mod/settings.php:794
 msgid "enabled"
 msgstr "enabled"
 
-#: mod/settings.php:808 mod/settings.php:809
+#: mod/settings.php:793 mod/settings.php:794
 msgid "disabled"
 msgstr "disabled"
 
-#: mod/settings.php:808 mod/settings.php:809
+#: mod/settings.php:793 mod/settings.php:794
 #, php-format
 msgid "Built-in support for %s connectivity is %s"
 msgstr "Built-in support for %s connectivity is %s"
 
-#: mod/settings.php:809
+#: mod/settings.php:794
 msgid "GNU Social (OStatus)"
 msgstr "GNU Social (OStatus)"
 
-#: mod/settings.php:840
+#: mod/settings.php:825
 msgid "Email access is disabled on this site."
 msgstr "Email access is disabled on this site."
 
-#: mod/settings.php:850
+#: mod/settings.php:835
 msgid "General Social Media Settings"
 msgstr "General Social Media Settings"
 
-#: mod/settings.php:851
+#: mod/settings.php:836
 msgid "Disable Content Warning"
 msgstr "Disable content warning"
 
-#: mod/settings.php:851
+#: mod/settings.php:836
 msgid ""
 "Users on networks like Mastodon or Pleroma are able to set a content warning"
 " field which collapse their post by default. This disables the automatic "
@@ -5899,316 +5806,316 @@ msgid ""
 "any other content filtering you eventually set up."
 msgstr "Users on networks like Mastodon or Pleroma are able to set a content warning field which collapses their post by default. This disables the automatic collapsing and sets the content warning as the post title. It doesn't affect any other content filtering you may set up."
 
-#: mod/settings.php:852
+#: mod/settings.php:837
 msgid "Disable intelligent shortening"
 msgstr "Disable intelligent shortening"
 
-#: mod/settings.php:852
+#: mod/settings.php:837
 msgid ""
 "Normally the system tries to find the best link to add to shortened posts. "
 "If this option is enabled then every shortened post will always point to the"
 " original friendica post."
 msgstr "Normally the system tries to find the best link to add to shortened posts. If this option is enabled then every shortened post will always point to the original Friendica post."
 
-#: mod/settings.php:853
+#: mod/settings.php:838
 msgid "Automatically follow any GNU Social (OStatus) followers/mentioners"
 msgstr "Automatically follow any GNU Social (OStatus) followers/mentioners"
 
-#: mod/settings.php:853
+#: mod/settings.php:838
 msgid ""
 "If you receive a message from an unknown OStatus user, this option decides "
 "what to do. If it is checked, a new contact will be created for every "
 "unknown user."
 msgstr "Create a new contact for every unknown OStatus user from whom you receive a message."
 
-#: mod/settings.php:854
+#: mod/settings.php:839
 msgid "Default group for OStatus contacts"
 msgstr "Default group for OStatus contacts"
 
-#: mod/settings.php:855
+#: mod/settings.php:840
 msgid "Your legacy GNU Social account"
 msgstr "Your legacy GNU Social account"
 
-#: mod/settings.php:855
+#: mod/settings.php:840
 msgid ""
 "If you enter your old GNU Social/Statusnet account name here (in the format "
 "user@domain.tld), your contacts will be added automatically. The field will "
 "be emptied when done."
 msgstr "Entering your old GNU Social/Statusnet account name here (format: user@domain.tld), will automatically added your contacts. The field will be emptied when done."
 
-#: mod/settings.php:858
+#: mod/settings.php:843
 msgid "Repair OStatus subscriptions"
 msgstr "Repair OStatus subscriptions"
 
-#: mod/settings.php:862
+#: mod/settings.php:847
 msgid "Email/Mailbox Setup"
 msgstr "Email/Mailbox setup"
 
-#: mod/settings.php:863
+#: mod/settings.php:848
 msgid ""
 "If you wish to communicate with email contacts using this service "
 "(optional), please specify how to connect to your mailbox."
 msgstr "Specify how to connect to your mailbox, if you wish to communicate with existing email contacts."
 
-#: mod/settings.php:864
+#: mod/settings.php:849
 msgid "Last successful email check:"
 msgstr "Last successful email check:"
 
-#: mod/settings.php:866
+#: mod/settings.php:851
 msgid "IMAP server name:"
 msgstr "IMAP server name:"
 
-#: mod/settings.php:867
+#: mod/settings.php:852
 msgid "IMAP port:"
 msgstr "IMAP port:"
 
-#: mod/settings.php:868
+#: mod/settings.php:853
 msgid "Security:"
 msgstr "Security:"
 
-#: mod/settings.php:868 mod/settings.php:873
+#: mod/settings.php:853 mod/settings.php:858
 msgid "None"
 msgstr "None"
 
-#: mod/settings.php:869
+#: mod/settings.php:854
 msgid "Email login name:"
 msgstr "Email login name:"
 
-#: mod/settings.php:870
+#: mod/settings.php:855
 msgid "Email password:"
 msgstr "Email password:"
 
-#: mod/settings.php:871
+#: mod/settings.php:856
 msgid "Reply-to address:"
 msgstr "Reply-to address:"
 
-#: mod/settings.php:872
+#: mod/settings.php:857
 msgid "Send public posts to all email contacts:"
 msgstr "Send public posts to all email contacts:"
 
-#: mod/settings.php:873
+#: mod/settings.php:858
 msgid "Action after import:"
 msgstr "Action after import:"
 
-#: mod/settings.php:873 src/Content/Nav.php:246
+#: mod/settings.php:858 src/Content/Nav.php:249
 msgid "Mark as seen"
 msgstr "Mark as seen"
 
-#: mod/settings.php:873
+#: mod/settings.php:858
 msgid "Move to folder"
 msgstr "Move to folder"
 
-#: mod/settings.php:874
+#: mod/settings.php:859
 msgid "Move to folder:"
 msgstr "Move to folder:"
 
-#: mod/settings.php:917
+#: mod/settings.php:902
 #, php-format
 msgid "%s - (Unsupported)"
 msgstr "%s - (Unsupported)"
 
-#: mod/settings.php:919
+#: mod/settings.php:904
 #, php-format
 msgid "%s - (Experimental)"
 msgstr "%s - (Experimental)"
 
-#: mod/settings.php:946 src/Core/L10n.php:359 src/Model/Event.php:396
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:396
 msgid "Sunday"
 msgstr "Sunday"
 
-#: mod/settings.php:946 src/Core/L10n.php:359 src/Model/Event.php:397
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:397
 msgid "Monday"
 msgstr "Monday"
 
-#: mod/settings.php:962
+#: mod/settings.php:947
 msgid "Display Settings"
 msgstr "Display Settings"
 
-#: mod/settings.php:968
+#: mod/settings.php:953
 msgid "Display Theme:"
 msgstr "Display theme:"
 
-#: mod/settings.php:969
+#: mod/settings.php:954
 msgid "Mobile Theme:"
 msgstr "Mobile theme:"
 
-#: mod/settings.php:970
+#: mod/settings.php:955
 msgid "Suppress warning of insecure networks"
 msgstr "Suppress warning of insecure networks"
 
-#: mod/settings.php:970
+#: mod/settings.php:955
 msgid ""
 "Should the system suppress the warning that the current group contains "
 "members of networks that can't receive non public postings."
 msgstr "Suppresses warnings if groups contain members whose networks cannot receive non-public postings."
 
-#: mod/settings.php:971
+#: mod/settings.php:956
 msgid "Update browser every xx seconds"
 msgstr "Update browser every so many seconds:"
 
-#: mod/settings.php:971
+#: mod/settings.php:956
 msgid "Minimum of 10 seconds. Enter -1 to disable it."
 msgstr "Minimum 10 seconds; to disable -1."
 
-#: mod/settings.php:972
+#: mod/settings.php:957
 msgid "Number of items to display per page:"
 msgstr "Number of items displayed per page:"
 
-#: mod/settings.php:972 mod/settings.php:973
+#: mod/settings.php:957 mod/settings.php:958
 msgid "Maximum of 100 items"
 msgstr "Maximum of 100 items"
 
-#: mod/settings.php:973
+#: mod/settings.php:958
 msgid "Number of items to display per page when viewed from mobile device:"
 msgstr "Number of items displayed per page on mobile devices:"
 
-#: mod/settings.php:974
+#: mod/settings.php:959
 msgid "Don't show emoticons"
 msgstr "Don't show emoticons"
 
-#: mod/settings.php:975
+#: mod/settings.php:960
 msgid "Calendar"
 msgstr "Calendar"
 
-#: mod/settings.php:976
+#: mod/settings.php:961
 msgid "Beginning of week:"
 msgstr "Week begins: "
 
-#: mod/settings.php:977
+#: mod/settings.php:962
 msgid "Don't show notices"
 msgstr "Don't show notices"
 
-#: mod/settings.php:978
+#: mod/settings.php:963
 msgid "Infinite scroll"
 msgstr "Infinite scroll"
 
-#: mod/settings.php:979
+#: mod/settings.php:964
 msgid "Automatic updates only at the top of the network page"
 msgstr "Automatically updates only top of the network page"
 
-#: mod/settings.php:979
+#: mod/settings.php:964
 msgid ""
 "When disabled, the network page is updated all the time, which could be "
 "confusing while reading."
 msgstr "When disabled, the network page is updated all the time, which could be confusing while reading."
 
-#: mod/settings.php:980
+#: mod/settings.php:965
 msgid "Bandwidth Saver Mode"
 msgstr ""
 
-#: mod/settings.php:980
+#: mod/settings.php:965
 msgid ""
 "When enabled, embedded content is not displayed on automatic updates, they "
 "only show on page reload."
 msgstr "If enabled, embedded content is not displayed on automatic updates; it is only shown on page reload."
 
-#: mod/settings.php:981
+#: mod/settings.php:966
 msgid "Smart Threading"
 msgstr "Smart Threading"
 
-#: mod/settings.php:981
+#: mod/settings.php:966
 msgid ""
 "When enabled, suppress extraneous thread indentation while keeping it where "
 "it matters. Only works if threading is available and enabled."
 msgstr "Suppresses extraneous thread indentation while keeping it where it matters. Only works if threading is available and enabled."
 
-#: mod/settings.php:983
+#: mod/settings.php:968
 msgid "General Theme Settings"
 msgstr "Themes"
 
-#: mod/settings.php:984
+#: mod/settings.php:969
 msgid "Custom Theme Settings"
 msgstr "Theme customization"
 
-#: mod/settings.php:985
+#: mod/settings.php:970
 msgid "Content Settings"
 msgstr "Content/Layout"
 
-#: mod/settings.php:986 view/theme/duepuntozero/config.php:74
+#: mod/settings.php:971 view/theme/duepuntozero/config.php:74
 #: view/theme/frio/config.php:121 view/theme/quattro/config.php:76
 #: view/theme/vier/config.php:122
 msgid "Theme settings"
 msgstr "Theme settings"
 
-#: mod/settings.php:1000
+#: mod/settings.php:985
 msgid "Unable to find your profile. Please contact your admin."
 msgstr "Unable to find your profile. Please contact your admin."
 
-#: mod/settings.php:1039
+#: mod/settings.php:1024
 msgid "Account Types"
 msgstr "Account types:"
 
-#: mod/settings.php:1040
+#: mod/settings.php:1025
 msgid "Personal Page Subtypes"
 msgstr "Personal Page subtypes"
 
-#: mod/settings.php:1041
+#: mod/settings.php:1026
 msgid "Community Forum Subtypes"
 msgstr "Community forum subtypes"
 
-#: mod/settings.php:1049
+#: mod/settings.php:1034
 msgid "Account for a personal profile."
 msgstr "Account for a personal profile."
 
-#: mod/settings.php:1053
+#: mod/settings.php:1038
 msgid ""
 "Account for an organisation that automatically approves contact requests as "
 "\"Followers\"."
 msgstr "Account for an organization that automatically approves contact requests as \"Followers\"."
 
-#: mod/settings.php:1057
+#: mod/settings.php:1042
 msgid ""
 "Account for a news reflector that automatically approves contact requests as"
 " \"Followers\"."
 msgstr "Account for a news reflector that automatically approves contact requests as \"Followers\"."
 
-#: mod/settings.php:1061
+#: mod/settings.php:1046
 msgid "Account for community discussions."
 msgstr "Account for community discussions."
 
-#: mod/settings.php:1065
+#: mod/settings.php:1050
 msgid ""
 "Account for a regular personal profile that requires manual approval of "
 "\"Friends\" and \"Followers\"."
 msgstr "Account for a regular personal profile that requires manual approval of \"Friends\" and \"Followers\"."
 
-#: mod/settings.php:1069
+#: mod/settings.php:1054
 msgid ""
 "Account for a public profile that automatically approves contact requests as"
 " \"Followers\"."
 msgstr "Account for a public profile that automatically approves contact requests as \"Followers\"."
 
-#: mod/settings.php:1073
+#: mod/settings.php:1058
 msgid "Automatically approves all contact requests."
 msgstr "Automatically approves all contact requests."
 
-#: mod/settings.php:1077
+#: mod/settings.php:1062
 msgid ""
 "Account for a popular profile that automatically approves contact requests "
 "as \"Friends\"."
 msgstr "Account for a popular profile that automatically approves contact requests as \"Friends\"."
 
-#: mod/settings.php:1080
+#: mod/settings.php:1065
 msgid "Private Forum [Experimental]"
 msgstr "Private forum [Experimental]"
 
-#: mod/settings.php:1081
+#: mod/settings.php:1066
 msgid "Requires manual approval of contact requests."
 msgstr "Requires manual approval of contact requests."
 
-#: mod/settings.php:1092
+#: mod/settings.php:1077
 msgid "OpenID:"
 msgstr "OpenID:"
 
-#: mod/settings.php:1092
+#: mod/settings.php:1077
 msgid "(Optional) Allow this OpenID to login to this account."
 msgstr "(Optional) Allow this OpenID to login to this account."
 
-#: mod/settings.php:1100
+#: mod/settings.php:1085
 msgid "Publish your default profile in your local site directory?"
 msgstr "Publish default profile in local site directory?"
 
-#: mod/settings.php:1100
+#: mod/settings.php:1085
 #, php-format
 msgid ""
 "Your profile will be published in this node's <a href=\"%s\">local "
@@ -6216,304 +6123,318 @@ msgid ""
 " system settings."
 msgstr "Your profile will be published in this node's <a href=\"%s\">local directory</a>. Your profile details may be publicly visible depending on the system settings."
 
-#: mod/settings.php:1106
+#: mod/settings.php:1091
 msgid "Publish your default profile in the global social directory?"
 msgstr "Publish default profile in global directory?"
 
-#: mod/settings.php:1106
+#: mod/settings.php:1091
 #, php-format
 msgid ""
 "Your profile will be published in the global friendica directories (e.g. <a "
 "href=\"%s\">%s</a>). Your profile will be visible in public."
 msgstr "Your profile will be published in the global Friendica directories (e.g. <a href=\"%s\">%s</a>). Your profile will be publicly visible."
 
-#: mod/settings.php:1113
+#: mod/settings.php:1098
 msgid "Hide your contact/friend list from viewers of your default profile?"
 msgstr "Hide my contact list from others?"
 
-#: mod/settings.php:1113
+#: mod/settings.php:1098
 msgid ""
 "Your contact list won't be shown in your default profile page. You can "
 "decide to show your contact list separately for each additional profile you "
 "create"
 msgstr "Your contact list won't be shown in your default profile page. You can decide to display your contact list separately for each additional profile you create"
 
-#: mod/settings.php:1117
+#: mod/settings.php:1102
 msgid "Hide your profile details from anonymous viewers?"
 msgstr "Hide your profile details from anonymous viewers?"
 
-#: mod/settings.php:1117
+#: mod/settings.php:1102
 msgid ""
 "Anonymous visitors will only see your profile picture, your display name and"
 " the nickname you are using on your profile page. Your public posts and "
 "replies will still be accessible by other means."
 msgstr ""
 
-#: mod/settings.php:1121
+#: mod/settings.php:1106
 msgid "Allow friends to post to your profile page?"
 msgstr "Allow friends to post to my wall?"
 
-#: mod/settings.php:1121
+#: mod/settings.php:1106
 msgid ""
 "Your contacts may write posts on your profile wall. These posts will be "
 "distributed to your contacts"
 msgstr "Your contacts may write posts on your profile wall. These posts will be distributed to your contacts"
 
-#: mod/settings.php:1125
+#: mod/settings.php:1110
 msgid "Allow friends to tag your posts?"
 msgstr "Allow friends to tag my post?"
 
-#: mod/settings.php:1125
+#: mod/settings.php:1110
 msgid "Your contacts can add additional tags to your posts."
 msgstr "Your contacts can add additional tags to your posts."
 
-#: mod/settings.php:1129
+#: mod/settings.php:1114
 msgid "Allow us to suggest you as a potential friend to new members?"
 msgstr "Allow us to suggest you as a potential friend to new members?"
 
-#: mod/settings.php:1129
+#: mod/settings.php:1114
 msgid ""
 "If you like, Friendica may suggest new members to add you as a contact."
 msgstr "If you like, Friendica may suggest new members to add you as a contact."
 
-#: mod/settings.php:1133
+#: mod/settings.php:1118
 msgid "Permit unknown people to send you private mail?"
 msgstr "Allow unknown people to send me private messages?"
 
-#: mod/settings.php:1133
+#: mod/settings.php:1118
 msgid ""
 "Friendica network users may send you private messages even if they are not "
 "in your contact list."
 msgstr "Friendica network users may send you private messages even if they are not in your contact list."
 
-#: mod/settings.php:1137
+#: mod/settings.php:1122
 msgid "Profile is <strong>not published</strong>."
 msgstr "Profile is <strong>not published</strong>."
 
-#: mod/settings.php:1143
+#: mod/settings.php:1128
 #, php-format
 msgid "Your Identity Address is <strong>'%s'</strong> or '%s'."
 msgstr "My identity address: <strong>'%s'</strong> or '%s'"
 
-#: mod/settings.php:1150
+#: mod/settings.php:1135
 msgid "Automatically expire posts after this many days:"
 msgstr "Automatically expire posts after this many days:"
 
-#: mod/settings.php:1150
+#: mod/settings.php:1135
 msgid "If empty, posts will not expire. Expired posts will be deleted"
 msgstr "Posts will not expire if empty;  expired posts will be deleted"
 
-#: mod/settings.php:1151
+#: mod/settings.php:1136
 msgid "Advanced expiration settings"
 msgstr "Advanced expiration settings"
 
-#: mod/settings.php:1152
+#: mod/settings.php:1137
 msgid "Advanced Expiration"
 msgstr "Advanced expiration"
 
-#: mod/settings.php:1153
+#: mod/settings.php:1138
 msgid "Expire posts:"
 msgstr "Expire posts:"
 
-#: mod/settings.php:1154
+#: mod/settings.php:1139
 msgid "Expire personal notes:"
 msgstr "Expire personal notes:"
 
-#: mod/settings.php:1155
+#: mod/settings.php:1140
 msgid "Expire starred posts:"
 msgstr "Expire starred posts:"
 
-#: mod/settings.php:1156
+#: mod/settings.php:1141
 msgid "Expire photos:"
 msgstr "Expire photos:"
 
-#: mod/settings.php:1157
+#: mod/settings.php:1142
 msgid "Only expire posts by others:"
 msgstr "Only expire posts by others:"
 
-#: mod/settings.php:1187
+#: mod/settings.php:1172
 msgid "Account Settings"
 msgstr "Account Settings"
 
-#: mod/settings.php:1195
+#: mod/settings.php:1180
 msgid "Password Settings"
 msgstr "Password change"
 
-#: mod/settings.php:1197
+#: mod/settings.php:1181 src/Module/Register.php:130
+msgid "New Password:"
+msgstr "New password:"
+
+#: mod/settings.php:1181
+msgid ""
+"Allowed characters are a-z, A-Z, 0-9 and special characters except white "
+"spaces, accentuated letters and colon (:)."
+msgstr ""
+
+#: mod/settings.php:1182 src/Module/Register.php:131
+msgid "Confirm:"
+msgstr "Confirm new password:"
+
+#: mod/settings.php:1182
 msgid "Leave password fields blank unless changing"
 msgstr "Leave password fields blank unless changing"
 
-#: mod/settings.php:1198
+#: mod/settings.php:1183
 msgid "Current Password:"
 msgstr "Current password:"
 
-#: mod/settings.php:1198 mod/settings.php:1199
+#: mod/settings.php:1183 mod/settings.php:1184
 msgid "Your current password to confirm the changes"
 msgstr "Current password to confirm change"
 
-#: mod/settings.php:1199
+#: mod/settings.php:1184
 msgid "Password:"
 msgstr "Password:"
 
-#: mod/settings.php:1203
+#: mod/settings.php:1188
 msgid "Basic Settings"
 msgstr "Basic information"
 
-#: mod/settings.php:1204 src/Model/Profile.php:751
+#: mod/settings.php:1189 src/Model/Profile.php:751
 msgid "Full Name:"
 msgstr "Full name:"
 
-#: mod/settings.php:1205
+#: mod/settings.php:1190
 msgid "Email Address:"
 msgstr "Email address:"
 
-#: mod/settings.php:1206
+#: mod/settings.php:1191
 msgid "Your Timezone:"
 msgstr "Time zone:"
 
-#: mod/settings.php:1207
+#: mod/settings.php:1192
 msgid "Your Language:"
 msgstr "Language:"
 
-#: mod/settings.php:1207
+#: mod/settings.php:1192
 msgid ""
 "Set the language we use to show you friendica interface and to send you "
 "emails"
 msgstr "Set the language of your Friendica interface and emails sent to you."
 
-#: mod/settings.php:1208
+#: mod/settings.php:1193
 msgid "Default Post Location:"
 msgstr "Posting location:"
 
-#: mod/settings.php:1209
+#: mod/settings.php:1194
 msgid "Use Browser Location:"
 msgstr "Use browser location:"
 
-#: mod/settings.php:1212
+#: mod/settings.php:1197
 msgid "Security and Privacy Settings"
 msgstr "Security and privacy"
 
-#: mod/settings.php:1214
+#: mod/settings.php:1199
 msgid "Maximum Friend Requests/Day:"
 msgstr "Maximum friend requests per day:"
 
-#: mod/settings.php:1214 mod/settings.php:1243
+#: mod/settings.php:1199 mod/settings.php:1228
 msgid "(to prevent spam abuse)"
 msgstr "May prevent spam and abusive registrations"
 
-#: mod/settings.php:1215
+#: mod/settings.php:1200
 msgid "Default Post Permissions"
 msgstr "Default post permissions"
 
-#: mod/settings.php:1216
+#: mod/settings.php:1201
 msgid "(click to open/close)"
 msgstr "(reveal/hide)"
 
-#: mod/settings.php:1226
+#: mod/settings.php:1211
 msgid "Default Private Post"
 msgstr "Default private post"
 
-#: mod/settings.php:1227
+#: mod/settings.php:1212
 msgid "Default Public Post"
 msgstr "Default public post"
 
-#: mod/settings.php:1231
+#: mod/settings.php:1216
 msgid "Default Permissions for New Posts"
 msgstr "Default permissions for new posts"
 
-#: mod/settings.php:1243
+#: mod/settings.php:1228
 msgid "Maximum private messages per day from unknown people:"
 msgstr "Maximum private messages per day from unknown people:"
 
-#: mod/settings.php:1246
+#: mod/settings.php:1231
 msgid "Notification Settings"
 msgstr "Notification"
 
-#: mod/settings.php:1247
+#: mod/settings.php:1232
 msgid "Send a notification email when:"
 msgstr "Send notification email when:"
 
-#: mod/settings.php:1248
+#: mod/settings.php:1233
 msgid "You receive an introduction"
 msgstr "Receiving an introduction"
 
-#: mod/settings.php:1249
+#: mod/settings.php:1234
 msgid "Your introductions are confirmed"
 msgstr "My introductions are confirmed"
 
-#: mod/settings.php:1250
+#: mod/settings.php:1235
 msgid "Someone writes on your profile wall"
 msgstr "Someone writes on my wall"
 
-#: mod/settings.php:1251
+#: mod/settings.php:1236
 msgid "Someone writes a followup comment"
 msgstr "A follow up comment is posted"
 
-#: mod/settings.php:1252
+#: mod/settings.php:1237
 msgid "You receive a private message"
 msgstr "receiving a private message"
 
-#: mod/settings.php:1253
+#: mod/settings.php:1238
 msgid "You receive a friend suggestion"
 msgstr "Receiving a friend suggestion"
 
-#: mod/settings.php:1254
+#: mod/settings.php:1239
 msgid "You are tagged in a post"
 msgstr "Tagged in a post"
 
-#: mod/settings.php:1255
+#: mod/settings.php:1240
 msgid "You are poked/prodded/etc. in a post"
 msgstr "Poked in a post"
 
-#: mod/settings.php:1257
+#: mod/settings.php:1242
 msgid "Activate desktop notifications"
 msgstr "Activate desktop notifications"
 
-#: mod/settings.php:1257
+#: mod/settings.php:1242
 msgid "Show desktop popup on new notifications"
 msgstr "Show desktop pop-up on new notifications"
 
-#: mod/settings.php:1259
+#: mod/settings.php:1244
 msgid "Text-only notification emails"
 msgstr "Text-only notification emails"
 
-#: mod/settings.php:1261
+#: mod/settings.php:1246
 msgid "Send text only notification emails, without the html part"
 msgstr "Receive text only emails without HTML "
 
-#: mod/settings.php:1263
+#: mod/settings.php:1248
 msgid "Show detailled notifications"
 msgstr "Show detailled notifications"
 
-#: mod/settings.php:1265
+#: mod/settings.php:1250
 msgid ""
 "Per default, notifications are condensed to a single notification per item. "
 "When enabled every notification is displayed."
 msgstr "By default, notifications are condensed into a single notification for each item. When enabled, every notification is displayed."
 
-#: mod/settings.php:1267
+#: mod/settings.php:1252
 msgid "Advanced Account/Page Type Settings"
 msgstr "Advanced account types"
 
-#: mod/settings.php:1268
+#: mod/settings.php:1253
 msgid "Change the behaviour of this account for special situations"
 msgstr "Change behavior of this account for special situations"
 
-#: mod/settings.php:1271
+#: mod/settings.php:1256
 msgid "Relocate"
 msgstr "Recent relocation"
 
-#: mod/settings.php:1272
+#: mod/settings.php:1257
 msgid ""
 "If you have moved this profile from another server, and some of your "
 "contacts don't receive your updates, try pushing this button."
 msgstr "If you have moved this profile from another server and some of your contacts don't receive your updates:"
 
-#: mod/settings.php:1273
+#: mod/settings.php:1258
 msgid "Resend relocate message to contacts"
 msgstr "Resend relocation message to contacts"
 
-#: mod/subthread.php:106
+#: mod/subthread.php:104
 #, php-format
 msgid "%1$s is following %2$s's %3$s"
 msgstr "%1$s is following %2$s's %3$s"
@@ -6528,11 +6449,11 @@ msgid ""
 "hours."
 msgstr "No suggestions available. If this is a new site, please try again in 24 hours."
 
-#: mod/suggest.php:88 mod/suggest.php:108
+#: mod/suggest.php:89 mod/suggest.php:109
 msgid "Ignore/Hide"
 msgstr "Ignore/Hide"
 
-#: mod/suggest.php:118 src/Content/Widget.php:68 view/theme/vier/theme.php:204
+#: mod/suggest.php:119 view/theme/vier/theme.php:204 src/Content/Widget.php:66
 msgid "Friend Suggestions"
 msgstr "Friend suggestions"
 
@@ -6540,11 +6461,11 @@ msgstr "Friend suggestions"
 msgid "Tag(s) removed"
 msgstr ""
 
-#: mod/tagrm.php:99
+#: mod/tagrm.php:101
 msgid "Remove Item Tag"
 msgstr "Remove Item tag"
 
-#: mod/tagrm.php:101
+#: mod/tagrm.php:103
 msgid "Select a tag to remove: "
 msgstr "Select a tag to remove: "
 
@@ -6573,6 +6494,16 @@ msgstr "Export your account info, contacts and all your items as JSON. This coul
 msgid "User imports on closed servers can only be done by an administrator."
 msgstr ""
 
+#: mod/uimport.php:39 src/Module/Register.php:59
+msgid ""
+"This site has exceeded the number of allowed daily account registrations. "
+"Please try again tomorrow."
+msgstr "This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."
+
+#: mod/uimport.php:54 src/Module/Register.php:141
+msgid "Import"
+msgstr "Import profile"
+
 #: mod/uimport.php:56
 msgid "Move account"
 msgstr "Move Existing Friendica Account"
@@ -6616,57 +6547,85 @@ msgstr "Unfollowing is currently not supported by your network."
 msgid "Contact unfollowed"
 msgstr "Contact unfollowed"
 
-#: mod/unfollow.php:117 src/Module/Contact.php:576
+#: mod/unfollow.php:118 src/Module/Contact.php:570
 msgid "Disconnect/Unfollow"
 msgstr "Disconnect/Unfollow"
 
 #: mod/update_community.php:23 mod/update_contact.php:23
 #: mod/update_display.php:24 mod/update_network.php:33 mod/update_notes.php:36
-#: mod/update_profile.php:35
+#: mod/update_profile.php:34
 msgid "[Embedded content - reload page to view]"
 msgstr "[Embedded content - reload page to view]"
 
-#: mod/videos.php:134
+#: mod/videos.php:97
 msgid "Do you really want to delete this video?"
 msgstr "Do you really want to delete this video?"
 
-#: mod/videos.php:139
+#: mod/videos.php:102
 msgid "Delete Video"
 msgstr "Delete video"
 
-#: mod/videos.php:201
+#: mod/videos.php:152
 msgid "No videos selected"
 msgstr "No videos selected"
 
-#: mod/videos.php:372 src/Model/Item.php:3430
+#: mod/videos.php:309 src/Model/Item.php:3435
 msgid "View Video"
 msgstr "View video"
 
-#: mod/videos.php:387
+#: mod/videos.php:324
 msgid "Recent Videos"
 msgstr "Recent videos"
 
-#: mod/videos.php:389
+#: mod/videos.php:326
 msgid "Upload New Videos"
 msgstr "Upload new videos"
 
-#: mod/viewcontacts.php:97
+#: mod/viewcontacts.php:78
 msgid "No contacts."
 msgstr "No contacts."
 
-#: mod/viewcontacts.php:113 src/Module/Contact.php:609
-#: src/Module/Contact.php:1029
+#: mod/viewcontacts.php:94 src/Module/Contact.php:603
+#: src/Module/Contact.php:1024
 #, php-format
 msgid "Visit %s's profile [%s]"
 msgstr "Visit %s's profile [%s]"
 
-#: mod/viewcontacts.php:132 src/Content/Nav.php:200 src/Content/Nav.php:266
-#: src/Content/Text/HTML.php:978 src/Model/Profile.php:980
-#: src/Model/Profile.php:983 src/Module/Contact.php:816
-#: src/Module/Contact.php:886 view/theme/frio/theme.php:284
+#: mod/viewcontacts.php:114 view/theme/frio/theme.php:273
+#: src/Content/Text/HTML.php:911 src/Content/Nav.php:203
+#: src/Content/Nav.php:269 src/Model/Profile.php:980 src/Model/Profile.php:983
+#: src/Module/Contact.php:811 src/Module/Contact.php:881
 msgid "Contacts"
 msgstr "Contacts"
 
+#: mod/wall_attach.php:26 mod/wall_attach.php:33 mod/wall_attach.php:85
+#: mod/wall_upload.php:42 mod/wall_upload.php:58 mod/wall_upload.php:116
+#: mod/wall_upload.php:167 mod/wall_upload.php:170
+msgid "Invalid request."
+msgstr "Invalid request."
+
+#: mod/wall_attach.php:103
+msgid "Sorry, maybe your upload is bigger than the PHP configuration allows"
+msgstr "Sorry, maybe your upload is bigger than the PHP configuration allows"
+
+#: mod/wall_attach.php:103
+msgid "Or - did you try to upload an empty file?"
+msgstr "Or did you try to upload an empty file?"
+
+#: mod/wall_attach.php:114
+#, php-format
+msgid "File exceeds size limit of %s"
+msgstr "File exceeds size limit of %s"
+
+#: mod/wall_attach.php:129
+msgid "File upload failed."
+msgstr "File upload failed."
+
+#: mod/wall_upload.php:243 src/Object/Image.php:967 src/Object/Image.php:983
+#: src/Object/Image.php:991 src/Object/Image.php:1016
+msgid "Wall Photos"
+msgstr "Wall photos"
+
 #: mod/wallmessage.php:52 mod/wallmessage.php:115
 #, php-format
 msgid "Number of daily wall messages for %s exceeded. Message failed."
@@ -6687,2008 +6646,2338 @@ msgid ""
 "your site allow private mail from unknown senders."
 msgstr "If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders."
 
-#: mod/wall_attach.php:28 mod/wall_attach.php:35 mod/wall_attach.php:90
-#: mod/wall_upload.php:41 mod/wall_upload.php:57 mod/wall_upload.php:115
-#: mod/wall_upload.php:166 mod/wall_upload.php:169
-msgid "Invalid request."
-msgstr "Invalid request."
-
-#: mod/wall_attach.php:108
-msgid "Sorry, maybe your upload is bigger than the PHP configuration allows"
-msgstr "Sorry, maybe your upload is bigger than the PHP configuration allows"
+#: view/theme/duepuntozero/config.php:55 src/Model/User.php:684
+msgid "default"
+msgstr "default"
 
-#: mod/wall_attach.php:108
-msgid "Or - did you try to upload an empty file?"
-msgstr "Or did you try to upload an empty file?"
+#: view/theme/duepuntozero/config.php:56
+msgid "greenzero"
+msgstr "greenzero"
 
-#: mod/wall_attach.php:119
-#, php-format
-msgid "File exceeds size limit of %s"
-msgstr "File exceeds size limit of %s"
+#: view/theme/duepuntozero/config.php:57
+msgid "purplezero"
+msgstr "purplezero"
 
-#: mod/wall_attach.php:143 mod/wall_attach.php:159
-msgid "File upload failed."
-msgstr "File upload failed."
+#: view/theme/duepuntozero/config.php:58
+msgid "easterbunny"
+msgstr "easterbunny"
 
-#: mod/wall_upload.php:242 src/Object/Image.php:968 src/Object/Image.php:984
-#: src/Object/Image.php:992 src/Object/Image.php:1017
-msgid "Wall Photos"
-msgstr "Wall photos"
+#: view/theme/duepuntozero/config.php:59
+msgid "darkzero"
+msgstr "darkzero"
 
-#: src/App.php:790
-msgid "Delete this item?"
-msgstr "Delete this item?"
+#: view/theme/duepuntozero/config.php:60
+msgid "comix"
+msgstr "comix"
 
-#: src/App.php:792
-msgid "show fewer"
-msgstr "Show fewer."
+#: view/theme/duepuntozero/config.php:61
+msgid "slackr"
+msgstr "slackr"
 
-#: src/App.php:834
-msgid "toggle mobile"
-msgstr "Toggle mobile"
+#: view/theme/duepuntozero/config.php:75
+msgid "Variations"
+msgstr "Variations"
 
-#: src/App.php:1383
-msgid "No system theme config value set."
-msgstr "No system theme configuration value set."
+#: view/theme/frio/php/Image.php:24
+msgid "Top Banner"
+msgstr "Top Banner"
 
-#: src/BaseModule.php:133
+#: view/theme/frio/php/Image.php:24
 msgid ""
-"The form security token was not correct. This probably happened because the "
-"form has been opened for too long (>3 hours) before submitting it."
-msgstr "The form security token was incorrect. This probably happened because the form has not been submitted within 3 hours."
+"Resize image to the width of the screen and show background color below on "
+"long pages."
+msgstr "Resize image to the width of the screen and show background color below on long pages."
 
-#: src/Content/ContactSelector.php:57
-msgid "Frequently"
-msgstr "Frequently"
+#: view/theme/frio/php/Image.php:25
+msgid "Full screen"
+msgstr "Full screen"
 
-#: src/Content/ContactSelector.php:58
-msgid "Hourly"
-msgstr "Hourly"
+#: view/theme/frio/php/Image.php:25
+msgid ""
+"Resize image to fill entire screen, clipping either the right or the bottom."
+msgstr "Resize image to fill entire screen, clipping either the right or the bottom."
 
-#: src/Content/ContactSelector.php:59
-msgid "Twice daily"
-msgstr "Twice daily"
+#: view/theme/frio/php/Image.php:26
+msgid "Single row mosaic"
+msgstr "Single row mosaic"
 
-#: src/Content/ContactSelector.php:60
-msgid "Daily"
-msgstr "Daily"
+#: view/theme/frio/php/Image.php:26
+msgid ""
+"Resize image to repeat it on a single row, either vertical or horizontal."
+msgstr "Resize image to repeat it on a single row, either vertical or horizontal."
 
-#: src/Content/ContactSelector.php:61
-msgid "Weekly"
-msgstr "Weekly"
+#: view/theme/frio/php/Image.php:27
+msgid "Mosaic"
+msgstr "Mosaic"
 
-#: src/Content/ContactSelector.php:62
-msgid "Monthly"
-msgstr "Monthly"
+#: view/theme/frio/php/Image.php:27
+msgid "Repeat image to fill the screen."
+msgstr "Repeat image to fill the screen."
 
-#: src/Content/ContactSelector.php:81
-msgid "DFRN"
-msgstr ""
+#: view/theme/frio/config.php:103
+msgid "Custom"
+msgstr "Custom"
 
-#: src/Content/ContactSelector.php:82
-msgid "OStatus"
-msgstr "OStatus"
+#: view/theme/frio/config.php:115
+msgid "Note"
+msgstr "Note"
 
-#: src/Content/ContactSelector.php:83
-msgid "RSS/Atom"
-msgstr "RSS/Atom"
+#: view/theme/frio/config.php:115
+msgid "Check image permissions if all users are allowed to see the image"
+msgstr "Check image permissions that everyone is allowed to see the image"
 
-#: src/Content/ContactSelector.php:86
-msgid "Zot!"
-msgstr "Zot!"
+#: view/theme/frio/config.php:122
+msgid "Select color scheme"
+msgstr "Select color scheme"
 
-#: src/Content/ContactSelector.php:87
-msgid "LinkedIn"
-msgstr "LinkedIn"
+#: view/theme/frio/config.php:123
+msgid "Navigation bar background color"
+msgstr "Navigation bar background color:"
 
-#: src/Content/ContactSelector.php:88
-msgid "XMPP/IM"
-msgstr "XMPP/IM"
+#: view/theme/frio/config.php:124
+msgid "Navigation bar icon color "
+msgstr "Navigation bar icon color:"
 
-#: src/Content/ContactSelector.php:89
-msgid "MySpace"
-msgstr "MySpace"
+#: view/theme/frio/config.php:125
+msgid "Link color"
+msgstr "Link color:"
 
-#: src/Content/ContactSelector.php:90
-msgid "Google+"
-msgstr "Google+"
+#: view/theme/frio/config.php:126
+msgid "Set the background color"
+msgstr "Background color:"
 
-#: src/Content/ContactSelector.php:91
-msgid "pump.io"
-msgstr "pump.io"
+#: view/theme/frio/config.php:127
+msgid "Content background opacity"
+msgstr "Content background opacity"
 
-#: src/Content/ContactSelector.php:92
-msgid "Twitter"
-msgstr "Twitter"
+#: view/theme/frio/config.php:128
+msgid "Set the background image"
+msgstr "Background image:"
 
-#: src/Content/ContactSelector.php:93
-msgid "Diaspora Connector"
-msgstr "Diaspora Connector"
+#: view/theme/frio/config.php:129
+msgid "Background image style"
+msgstr "Background image style"
 
-#: src/Content/ContactSelector.php:94
-msgid "GNU Social Connector"
-msgstr "GNU Social Connector"
+#: view/theme/frio/config.php:134
+msgid "Login page background image"
+msgstr "Login page background image"
 
-#: src/Content/ContactSelector.php:95
-msgid "ActivityPub"
-msgstr ""
+#: view/theme/frio/config.php:138
+msgid "Login page background color"
+msgstr "Login page background color"
 
-#: src/Content/ContactSelector.php:96
-msgid "pnut"
-msgstr "pnut"
+#: view/theme/frio/config.php:138
+msgid "Leave background image and color empty for theme defaults"
+msgstr "Leave background image and color empty for theme defaults"
 
-#: src/Content/ContactSelector.php:148
-msgid "Male"
-msgstr "Male"
+#: view/theme/frio/theme.php:239
+msgid "Guest"
+msgstr "Guest"
 
-#: src/Content/ContactSelector.php:148
-msgid "Female"
-msgstr "Female"
+#: view/theme/frio/theme.php:244
+msgid "Visitor"
+msgstr "Visitor"
 
-#: src/Content/ContactSelector.php:148
-msgid "Currently Male"
-msgstr "Currently male"
+#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
+#: src/Module/Login.php:321
+msgid "Logout"
+msgstr "Logout"
 
-#: src/Content/ContactSelector.php:148
-msgid "Currently Female"
-msgstr "Currently female"
+#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
+msgid "End this session"
+msgstr "End this session"
 
-#: src/Content/ContactSelector.php:148
-msgid "Mostly Male"
-msgstr "Mostly male"
+#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
+#: src/Model/Profile.php:901 src/Module/Contact.php:652
+#: src/Module/Contact.php:853
+msgid "Status"
+msgstr "Status"
 
-#: src/Content/ContactSelector.php:148
-msgid "Mostly Female"
-msgstr "Mostly female"
+#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
+#: src/Content/Nav.php:242
+msgid "Your posts and conversations"
+msgstr "My posts and conversations"
 
-#: src/Content/ContactSelector.php:148
-msgid "Transgender"
-msgstr "Transgender"
+#: view/theme/frio/theme.php:263 src/Content/Nav.php:157
+msgid "Your profile page"
+msgstr "My profile page"
 
-#: src/Content/ContactSelector.php:148
-msgid "Intersex"
-msgstr "Intersex"
+#: view/theme/frio/theme.php:264 src/Content/Nav.php:158
+msgid "Your photos"
+msgstr "My photos"
 
-#: src/Content/ContactSelector.php:148
-msgid "Transsexual"
-msgstr "Transsexual"
+#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
+#: src/Model/Profile.php:925 src/Model/Profile.php:928
+msgid "Videos"
+msgstr "Videos"
 
-#: src/Content/ContactSelector.php:148
-msgid "Hermaphrodite"
-msgstr "Hermaphrodite"
+#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
+msgid "Your videos"
+msgstr "My videos"
 
-#: src/Content/ContactSelector.php:148
-msgid "Neuter"
-msgstr "Neuter"
+#: view/theme/frio/theme.php:266 src/Content/Nav.php:160
+msgid "Your events"
+msgstr "My events"
 
-#: src/Content/ContactSelector.php:148
-msgid "Non-specific"
-msgstr "Non-specific"
+#: view/theme/frio/theme.php:269 src/Content/Nav.php:239
+msgid "Conversations from your friends"
+msgstr "My friends' conversations"
 
-#: src/Content/ContactSelector.php:148
-msgid "Other"
-msgstr "Other"
+#: view/theme/frio/theme.php:270 src/Content/Nav.php:226
+#: src/Model/Profile.php:940 src/Model/Profile.php:951
+msgid "Events and Calendar"
+msgstr "Events and calendar"
 
-#: src/Content/ContactSelector.php:170
-msgid "Males"
-msgstr "Males"
+#: view/theme/frio/theme.php:271 src/Content/Nav.php:252
+msgid "Private mail"
+msgstr "Private messages"
 
-#: src/Content/ContactSelector.php:170
-msgid "Females"
-msgstr "Females"
+#: view/theme/frio/theme.php:272 src/Content/Nav.php:263
+msgid "Account settings"
+msgstr "Account settings"
 
-#: src/Content/ContactSelector.php:170
-msgid "Gay"
-msgstr "Gay"
+#: view/theme/frio/theme.php:273 src/Content/Nav.php:269
+msgid "Manage/edit friends and contacts"
+msgstr "Manage/Edit friends and contacts"
 
-#: src/Content/ContactSelector.php:170
-msgid "Lesbian"
-msgstr "Lesbian"
+#: view/theme/quattro/config.php:77
+msgid "Alignment"
+msgstr "Alignment"
 
-#: src/Content/ContactSelector.php:170
-msgid "No Preference"
-msgstr "No Preference"
+#: view/theme/quattro/config.php:77
+msgid "Left"
+msgstr "Left"
 
-#: src/Content/ContactSelector.php:170
-msgid "Bisexual"
-msgstr "Bisexual"
+#: view/theme/quattro/config.php:77
+msgid "Center"
+msgstr "Center"
 
-#: src/Content/ContactSelector.php:170
-msgid "Autosexual"
-msgstr "Auto-sexual"
+#: view/theme/quattro/config.php:78
+msgid "Color scheme"
+msgstr "Color scheme"
 
-#: src/Content/ContactSelector.php:170
-msgid "Abstinent"
-msgstr "Abstinent"
+#: view/theme/quattro/config.php:79
+msgid "Posts font size"
+msgstr "Posts font size"
 
-#: src/Content/ContactSelector.php:170
-msgid "Virgin"
-msgstr "Virgin"
+#: view/theme/quattro/config.php:80
+msgid "Textareas font size"
+msgstr "Text areas font size"
 
-#: src/Content/ContactSelector.php:170
-msgid "Deviant"
-msgstr "Deviant"
+#: view/theme/vier/config.php:76
+msgid "Comma separated list of helper forums"
+msgstr "Comma-separated list of helper forums"
 
-#: src/Content/ContactSelector.php:170
-msgid "Fetish"
-msgstr "Fetish"
+#: view/theme/vier/config.php:116 src/Core/ACL.php:301
+msgid "don't show"
+msgstr "don't show"
 
-#: src/Content/ContactSelector.php:170
-msgid "Oodles"
-msgstr "Oodles"
+#: view/theme/vier/config.php:116 src/Core/ACL.php:300
+msgid "show"
+msgstr "show"
 
-#: src/Content/ContactSelector.php:170
-msgid "Nonsexual"
-msgstr "Asexual"
+#: view/theme/vier/config.php:123
+msgid "Set style"
+msgstr "Set style"
 
-#: src/Content/ContactSelector.php:192
-msgid "Single"
-msgstr "Single"
+#: view/theme/vier/config.php:124
+msgid "Community Pages"
+msgstr "Community pages"
 
-#: src/Content/ContactSelector.php:192
-msgid "Lonely"
-msgstr "Lonely"
+#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
+msgid "Community Profiles"
+msgstr "Community profiles"
 
-#: src/Content/ContactSelector.php:192
-msgid "Available"
-msgstr "Available"
+#: view/theme/vier/config.php:126
+msgid "Help or @NewHere ?"
+msgstr "Help or @NewHere ?"
 
-#: src/Content/ContactSelector.php:192
-msgid "Unavailable"
-msgstr "Unavailable"
+#: view/theme/vier/config.php:127 view/theme/vier/theme.php:373
+msgid "Connect Services"
+msgstr "Connect services"
 
-#: src/Content/ContactSelector.php:192
-msgid "Has crush"
-msgstr "Having a crush"
+#: view/theme/vier/config.php:128
+msgid "Find Friends"
+msgstr "Find friends"
 
-#: src/Content/ContactSelector.php:192
-msgid "Infatuated"
-msgstr "Infatuated"
-
-#: src/Content/ContactSelector.php:192
-msgid "Dating"
-msgstr "Dating"
-
-#: src/Content/ContactSelector.php:192
-msgid "Unfaithful"
-msgstr "Unfaithful"
+#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
+msgid "Last users"
+msgstr "Last users"
 
-#: src/Content/ContactSelector.php:192
-msgid "Sex Addict"
-msgstr "Sex addict"
+#: view/theme/vier/theme.php:199 src/Content/Widget.php:61
+msgid "Find People"
+msgstr "Find people"
 
-#: src/Content/ContactSelector.php:192 src/Model/User.php:618
-msgid "Friends"
-msgstr "Friends"
+#: view/theme/vier/theme.php:200 src/Content/Widget.php:62
+msgid "Enter name or interest"
+msgstr "Enter name or interest"
 
-#: src/Content/ContactSelector.php:192
-msgid "Friends/Benefits"
-msgstr "Friends with benefits"
+#: view/theme/vier/theme.php:202 src/Content/Widget.php:64
+msgid "Examples: Robert Morgenstein, Fishing"
+msgstr "Examples: Robert Morgenstein, fishing"
 
-#: src/Content/ContactSelector.php:192
-msgid "Casual"
-msgstr "Casual"
+#: view/theme/vier/theme.php:205 src/Content/Widget.php:67
+msgid "Similar Interests"
+msgstr "Similar interests"
 
-#: src/Content/ContactSelector.php:192
-msgid "Engaged"
-msgstr "Engaged"
+#: view/theme/vier/theme.php:206 src/Content/Widget.php:68
+msgid "Random Profile"
+msgstr "Random profile"
 
-#: src/Content/ContactSelector.php:192
-msgid "Married"
-msgstr "Married"
+#: view/theme/vier/theme.php:207 src/Content/Widget.php:69
+msgid "Invite Friends"
+msgstr "Invite friends"
 
-#: src/Content/ContactSelector.php:192
-msgid "Imaginarily married"
-msgstr "Imaginarily married"
+#: view/theme/vier/theme.php:210 src/Content/Widget.php:72
+msgid "Local Directory"
+msgstr "Local directory"
 
-#: src/Content/ContactSelector.php:192
-msgid "Partners"
-msgstr "Partners"
+#: view/theme/vier/theme.php:250 src/Content/Text/HTML.php:914
+#: src/Content/ForumManager.php:130 src/Content/Nav.php:207
+msgid "Forums"
+msgstr "Forums"
 
-#: src/Content/ContactSelector.php:192
-msgid "Cohabiting"
-msgstr "Cohabiting"
+#: view/theme/vier/theme.php:252 src/Content/ForumManager.php:132
+msgid "External link to forum"
+msgstr "External link to forum"
 
-#: src/Content/ContactSelector.php:192
-msgid "Common law"
-msgstr "Common law spouse"
+#: view/theme/vier/theme.php:288
+msgid "Quick Start"
+msgstr "Quick start"
 
-#: src/Content/ContactSelector.php:192
-msgid "Happy"
-msgstr "Happy"
+#: src/Core/Console/ArchiveContact.php:65
+#, php-format
+msgid "Could not find any unarchived contact entry for this URL (%s)"
+msgstr "Could not find any unarchived contact entry for this URL (%s)"
 
-#: src/Content/ContactSelector.php:192
-msgid "Not looking"
-msgstr "Not looking"
+#: src/Core/Console/ArchiveContact.php:70
+msgid "The contact entries have been archived"
+msgstr "The contact entries have been archived"
 
-#: src/Content/ContactSelector.php:192
-msgid "Swinger"
-msgstr "Swinger"
+#: src/Core/Console/NewPassword.php:72
+msgid "Enter new password: "
+msgstr "Enter new password: "
 
-#: src/Content/ContactSelector.php:192
-msgid "Betrayed"
-msgstr "Betrayed"
+#: src/Core/Console/PostUpdate.php:50
+#, php-format
+msgid "Post update version number has been set to %s."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Separated"
-msgstr "Separated"
+#: src/Core/Console/PostUpdate.php:58
+msgid "Check for pending update actions."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Unstable"
-msgstr "Unstable"
+#: src/Core/Console/PostUpdate.php:60
+msgid "Done."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Divorced"
-msgstr "Divorced"
+#: src/Core/Console/PostUpdate.php:62
+msgid "Execute pending post updates."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Imaginarily divorced"
-msgstr "Imaginarily divorced"
+#: src/Core/Console/PostUpdate.php:68
+msgid "All pending post updates are done."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Widowed"
-msgstr "Widowed"
+#: src/Core/ACL.php:287
+msgid "Post to Email"
+msgstr "Post to email"
 
-#: src/Content/ContactSelector.php:192
-msgid "Uncertain"
-msgstr "Uncertain"
+#: src/Core/ACL.php:293
+msgid "Hide your profile details from unknown viewers?"
+msgstr "Hide profile details from unknown viewers?"
 
-#: src/Content/ContactSelector.php:192
-msgid "It's complicated"
-msgstr "It's complicated"
+#: src/Core/ACL.php:292
+#, php-format
+msgid "Connectors disabled, since \"%s\" is enabled."
+msgstr "Connectors are disabled since \"%s\" is enabled."
 
-#: src/Content/ContactSelector.php:192
-msgid "Don't care"
-msgstr "Don't care"
+#: src/Core/ACL.php:299
+msgid "Visible to everybody"
+msgstr "Visible to everybody"
 
-#: src/Content/ContactSelector.php:192
-msgid "Ask me"
-msgstr "Ask me"
+#: src/Core/ACL.php:311
+msgid "Close"
+msgstr "Close"
 
-#: src/Content/Feature.php:79
-msgid "General Features"
-msgstr "General"
+#: src/Core/Authentication.php:87
+msgid "Welcome "
+msgstr "Welcome "
 
-#: src/Content/Feature.php:81
-msgid "Multiple Profiles"
-msgstr "Multiple profiles"
+#: src/Core/Authentication.php:88
+msgid "Please upload a profile photo."
+msgstr "Please upload a profile photo."
 
-#: src/Content/Feature.php:81
-msgid "Ability to create multiple profiles"
-msgstr "Ability to create multiple profiles"
+#: src/Core/Authentication.php:90
+msgid "Welcome back "
+msgstr "Welcome back "
 
-#: src/Content/Feature.php:82
-msgid "Photo Location"
-msgstr "Photo location"
+#: src/Core/Installer.php:162
+msgid ""
+"The database configuration file \"config/local.config.php\" could not be "
+"written. Please use the enclosed text to create a configuration file in your"
+" web server root."
+msgstr ""
 
-#: src/Content/Feature.php:82
+#: src/Core/Installer.php:181
 msgid ""
-"Photo metadata is normally stripped. This extracts the location (if present)"
-" prior to stripping metadata and links it to a map."
-msgstr "Photo metadata is normally removed. This saves the geo tag (if present) and links it to a map prior to removing other metadata."
+"You may need to import the file \"database.sql\" manually using phpmyadmin "
+"or mysql."
+msgstr "You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."
 
-#: src/Content/Feature.php:83
-msgid "Export Public Calendar"
-msgstr "Export public calendar"
+#: src/Core/Installer.php:182 src/Module/Install.php:132
+#: src/Module/Install.php:263
+msgid "Please see the file \"INSTALL.txt\"."
+msgstr "Please see the file \"INSTALL.txt\"."
 
-#: src/Content/Feature.php:83
-msgid "Ability for visitors to download the public calendar"
-msgstr "Ability for visitors to download the public calendar"
+#: src/Core/Installer.php:243
+msgid "Could not find a command line version of PHP in the web server PATH."
+msgstr "Could not find a command line version of PHP in the web server PATH."
 
-#: src/Content/Feature.php:88
-msgid "Post Composition Features"
-msgstr "Post composition"
+#: src/Core/Installer.php:244
+msgid ""
+"If you don't have a command line version of PHP installed on your server, "
+"you will not be able to run the background processing. See <a "
+"href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-"
+"up-the-worker'>'Setup the worker'</a>"
+msgstr "If your server doesn't have a command line version of PHP installed, you won't be able to run background processing. See <a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-worker'>'Setup the worker'</a>"
 
-#: src/Content/Feature.php:89
-msgid "Auto-mention Forums"
-msgstr "Auto-mention forums"
+#: src/Core/Installer.php:248
+msgid "PHP executable path"
+msgstr "PHP executable path"
 
-#: src/Content/Feature.php:89
+#: src/Core/Installer.php:248
 msgid ""
-"Add/remove mention when a forum page is selected/deselected in ACL window."
-msgstr "Add/Remove mention when a forum page is selected or deselected in the ACL window."
+"Enter full path to php executable. You can leave this blank to continue the "
+"installation."
+msgstr "Enter full path to php executable. You can leave this blank to continue the installation."
 
-#: src/Content/Feature.php:94
-msgid "Network Sidebar"
-msgstr "Network sidebar"
+#: src/Core/Installer.php:253
+msgid "Command line PHP"
+msgstr "Command line PHP"
 
-#: src/Content/Feature.php:95
-msgid "Ability to select posts by date ranges"
-msgstr "Ability to select posts by date ranges"
+#: src/Core/Installer.php:262
+msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
+msgstr "PHP executable is not a php cli binary; it could possibly be a cgi-fgci version."
 
-#: src/Content/Feature.php:96
-msgid "Protocol Filter"
-msgstr ""
+#: src/Core/Installer.php:263
+msgid "Found PHP version: "
+msgstr "Found PHP version: "
 
-#: src/Content/Feature.php:96
-msgid "Enable widget to display Network posts only from selected protocols"
-msgstr ""
+#: src/Core/Installer.php:265
+msgid "PHP cli binary"
+msgstr "PHP cli binary"
 
-#: src/Content/Feature.php:101
-msgid "Network Tabs"
-msgstr "Network tabs"
+#: src/Core/Installer.php:278
+msgid ""
+"The command line version of PHP on your system does not have "
+"\"register_argc_argv\" enabled."
+msgstr "The command line version of PHP on your system does not have \"register_argc_argv\" enabled."
 
-#: src/Content/Feature.php:102
-msgid "Network New Tab"
-msgstr "Network new tab"
+#: src/Core/Installer.php:279
+msgid "This is required for message delivery to work."
+msgstr "This is required for message delivery to work."
 
-#: src/Content/Feature.php:102
-msgid "Enable tab to display only new Network posts (from the last 12 hours)"
-msgstr "Enable tab to display only new network posts (last 12 hours)"
+#: src/Core/Installer.php:284
+msgid "PHP register_argc_argv"
+msgstr "PHP register_argc_argv"
 
-#: src/Content/Feature.php:103
-msgid "Network Shared Links Tab"
-msgstr "Network shared links tab"
+#: src/Core/Installer.php:316
+msgid ""
+"Error: the \"openssl_pkey_new\" function on this system is not able to "
+"generate encryption keys"
+msgstr "Error: the \"openssl_pkey_new\" function on this system is not able to generate encryption keys"
 
-#: src/Content/Feature.php:103
-msgid "Enable tab to display only Network posts with links in them"
-msgstr "Enable tab to display only network posts with links in them"
+#: src/Core/Installer.php:317
+msgid ""
+"If running under Windows, please see "
+"\"http://www.php.net/manual/en/openssl.installation.php\"."
+msgstr "If running under Windows OS, please see \"http://www.php.net/manual/en/openssl.installation.php\"."
 
-#: src/Content/Feature.php:108
-msgid "Post/Comment Tools"
-msgstr "Post/Comment tools"
+#: src/Core/Installer.php:320
+msgid "Generate encryption keys"
+msgstr "Generate encryption keys"
 
-#: src/Content/Feature.php:109
-msgid "Post Categories"
-msgstr "Post categories"
+#: src/Core/Installer.php:371
+msgid ""
+"Error: Apache webserver mod-rewrite module is required but not installed."
+msgstr "Error: Apache web server mod-rewrite module is required but not installed."
 
-#: src/Content/Feature.php:109
-msgid "Add categories to your posts"
-msgstr "Add categories to your posts"
+#: src/Core/Installer.php:376
+msgid "Apache mod_rewrite module"
+msgstr "Apache mod_rewrite module"
 
-#: src/Content/Feature.php:114
-msgid "Advanced Profile Settings"
-msgstr "Advanced profiles"
+#: src/Core/Installer.php:382
+msgid "Error: PDO or MySQLi PHP module required but not installed."
+msgstr "Error: PDO or MySQLi PHP module required but not installed."
 
-#: src/Content/Feature.php:115
-msgid "List Forums"
-msgstr "List forums"
+#: src/Core/Installer.php:387
+msgid "Error: The MySQL driver for PDO is not installed."
+msgstr "Error: MySQL driver for PDO is not installed."
 
-#: src/Content/Feature.php:115
-msgid "Show visitors public community forums at the Advanced Profile Page"
-msgstr "Show visitors of public community forums at the advanced profile page"
+#: src/Core/Installer.php:391
+msgid "PDO or MySQLi PHP module"
+msgstr "PDO or MySQLi PHP module"
 
-#: src/Content/Feature.php:116
-msgid "Tag Cloud"
-msgstr "Tag cloud"
+#: src/Core/Installer.php:399
+msgid "Error, XML PHP module required but not installed."
+msgstr "Error, XML PHP module required but not installed."
 
-#: src/Content/Feature.php:116
-msgid "Provide a personal tag cloud on your profile page"
-msgstr "Provide a personal tag cloud on your profile page"
+#: src/Core/Installer.php:403
+msgid "XML PHP module"
+msgstr "XML PHP module"
 
-#: src/Content/Feature.php:117
-msgid "Display Membership Date"
-msgstr "Display membership date"
+#: src/Core/Installer.php:406
+msgid "libCurl PHP module"
+msgstr "libCurl PHP module"
 
-#: src/Content/Feature.php:117
-msgid "Display membership date in profile"
-msgstr "Display membership date in profile"
+#: src/Core/Installer.php:407
+msgid "Error: libCURL PHP module required but not installed."
+msgstr "Error: libCURL PHP module required but not installed."
 
-#: src/Content/ForumManager.php:128 src/Content/Nav.php:204
-#: src/Content/Text/HTML.php:981 view/theme/vier/theme.php:253
-msgid "Forums"
-msgstr "Forums"
+#: src/Core/Installer.php:413
+msgid "GD graphics PHP module"
+msgstr "GD graphics PHP module"
 
-#: src/Content/ForumManager.php:130 view/theme/vier/theme.php:255
-msgid "External link to forum"
-msgstr "External link to forum"
+#: src/Core/Installer.php:414
+msgid ""
+"Error: GD graphics PHP module with JPEG support required but not installed."
+msgstr "Error: GD graphics PHP module with JPEG support required but not installed."
 
-#: src/Content/Nav.php:72
-msgid "Nothing new here"
-msgstr "Nothing new here"
+#: src/Core/Installer.php:420
+msgid "OpenSSL PHP module"
+msgstr "OpenSSL PHP module"
 
-#: src/Content/Nav.php:76
-msgid "Clear notifications"
-msgstr "Clear notifications"
+#: src/Core/Installer.php:421
+msgid "Error: openssl PHP module required but not installed."
+msgstr "Error: openssl PHP module required but not installed."
 
-#: src/Content/Nav.php:77 src/Content/Text/HTML.php:970
-msgid "@name, !forum, #tags, content"
-msgstr "@name, !forum, #tags, content"
+#: src/Core/Installer.php:427
+msgid "mb_string PHP module"
+msgstr "mb_string PHP module"
 
-#: src/Content/Nav.php:150 src/Module/Login.php:321
-#: view/theme/frio/theme.php:270
-msgid "Logout"
-msgstr "Logout"
+#: src/Core/Installer.php:428
+msgid "Error: mb_string PHP module required but not installed."
+msgstr "Error: mb_string PHP module required but not installed."
 
-#: src/Content/Nav.php:150 view/theme/frio/theme.php:270
-msgid "End this session"
-msgstr "End this session"
+#: src/Core/Installer.php:434
+msgid "iconv PHP module"
+msgstr "iconv PHP module"
 
-#: src/Content/Nav.php:153 src/Model/Profile.php:901
-#: src/Module/Contact.php:659 src/Module/Contact.php:858
-#: view/theme/frio/theme.php:273
-msgid "Status"
-msgstr "Status"
+#: src/Core/Installer.php:435
+msgid "Error: iconv PHP module required but not installed."
+msgstr "Error: iconv PHP module required but not installed."
 
-#: src/Content/Nav.php:153 src/Content/Nav.php:239
-#: view/theme/frio/theme.php:273
-msgid "Your posts and conversations"
-msgstr "My posts and conversations"
+#: src/Core/Installer.php:441
+msgid "POSIX PHP module"
+msgstr "POSIX PHP module"
 
-#: src/Content/Nav.php:154 view/theme/frio/theme.php:274
-msgid "Your profile page"
-msgstr "My profile page"
+#: src/Core/Installer.php:442
+msgid "Error: POSIX PHP module required but not installed."
+msgstr "Error: POSIX PHP module required but not installed."
 
-#: src/Content/Nav.php:155 view/theme/frio/theme.php:275
-msgid "Your photos"
-msgstr "My photos"
+#: src/Core/Installer.php:448
+msgid "JSON PHP module"
+msgstr ""
 
-#: src/Content/Nav.php:156 src/Model/Profile.php:925 src/Model/Profile.php:928
-#: view/theme/frio/theme.php:276
-msgid "Videos"
-msgstr "Videos"
+#: src/Core/Installer.php:449
+msgid "Error: JSON PHP module required but not installed."
+msgstr ""
 
-#: src/Content/Nav.php:156 view/theme/frio/theme.php:276
-msgid "Your videos"
-msgstr "My videos"
+#: src/Core/Installer.php:472
+msgid ""
+"The web installer needs to be able to create a file called "
+"\"local.config.php\" in the \"config\" folder of your web server and it is "
+"unable to do so."
+msgstr ""
 
-#: src/Content/Nav.php:157 view/theme/frio/theme.php:277
-msgid "Your events"
-msgstr "My events"
+#: src/Core/Installer.php:473
+msgid ""
+"This is most often a permission setting, as the web server may not be able "
+"to write files in your folder - even if you can."
+msgstr "This is most often a permission setting issue, as the web server may not be able to write files in your directory - even if you can."
 
-#: src/Content/Nav.php:158
-msgid "Personal notes"
-msgstr "Personal notes"
+#: src/Core/Installer.php:474
+msgid ""
+"At the end of this procedure, we will give you a text to save in a file "
+"named local.config.php in your Friendica \"config\" folder."
+msgstr ""
 
-#: src/Content/Nav.php:158
-msgid "Your personal notes"
-msgstr "My personal notes"
+#: src/Core/Installer.php:475
+msgid ""
+"You can alternatively skip this procedure and perform a manual installation."
+" Please see the file \"INSTALL.txt\" for instructions."
+msgstr "Alternatively, you may skip this procedure and perform a manual installation. Please see the file \"INSTALL.txt\" for instructions."
 
-#: src/Content/Nav.php:167
-msgid "Sign in"
-msgstr "Sign in"
+#: src/Core/Installer.php:478
+msgid "config/local.config.php is writable"
+msgstr ""
 
-#: src/Content/Nav.php:177 src/Content/Nav.php:239
-#: src/Core/NotificationsManager.php:194
-msgid "Home"
-msgstr "Home"
+#: src/Core/Installer.php:498
+msgid ""
+"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
+"compiles templates to PHP to speed up rendering."
+msgstr "Friendica uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering."
 
-#: src/Content/Nav.php:177
-msgid "Home Page"
-msgstr "Home page"
+#: src/Core/Installer.php:499
+msgid ""
+"In order to store these compiled templates, the web server needs to have "
+"write access to the directory view/smarty3/ under the Friendica top level "
+"folder."
+msgstr "In order to store these compiled templates, the web server needs to have write access to the directory view/smarty3/ under the Friendica top-level directory."
 
-#: src/Content/Nav.php:181
-msgid "Create an account"
-msgstr "Create account"
+#: src/Core/Installer.php:500
+msgid ""
+"Please ensure that the user that your web server runs as (e.g. www-data) has"
+" write access to this folder."
+msgstr "Please ensure the user that your web server runs as (e.g. www-data) has write access to this directory."
 
-#: src/Content/Nav.php:187
-msgid "Help and documentation"
-msgstr "Help and documentation"
+#: src/Core/Installer.php:501
+msgid ""
+"Note: as a security measure, you should give the web server write access to "
+"view/smarty3/ only--not the template files (.tpl) that it contains."
+msgstr "Note: as a security measure, you should give the web server write access to view/smarty3/ only--not the template files (.tpl) that it contains."
 
-#: src/Content/Nav.php:191
-msgid "Apps"
-msgstr "Apps"
+#: src/Core/Installer.php:504
+msgid "view/smarty3 is writable"
+msgstr "view/smarty3 is writable"
 
-#: src/Content/Nav.php:191
-msgid "Addon applications, utilities, games"
-msgstr "Addon applications, utilities, games"
+#: src/Core/Installer.php:533
+msgid ""
+"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist"
+" to .htaccess."
+msgstr ""
 
-#: src/Content/Nav.php:195
-msgid "Search site content"
-msgstr "Search site content"
+#: src/Core/Installer.php:535
+msgid "Error message from Curl when fetching"
+msgstr "Error message from Curl while fetching"
 
-#: src/Content/Nav.php:198 src/Content/Text/HTML.php:976
-msgid "Full Text"
-msgstr "Full text"
+#: src/Core/Installer.php:540
+msgid "Url rewrite is working"
+msgstr "URL rewrite is working"
 
-#: src/Content/Nav.php:199 src/Content/Text/HTML.php:977
-#: src/Content/Widget/TagCloud.php:55
-msgid "Tags"
-msgstr "Tags"
+#: src/Core/Installer.php:569
+msgid "ImageMagick PHP extension is not installed"
+msgstr "ImageMagick PHP extension is not installed"
 
-#: src/Content/Nav.php:219
-msgid "Community"
-msgstr "Community"
+#: src/Core/Installer.php:571
+msgid "ImageMagick PHP extension is installed"
+msgstr "ImageMagick PHP extension is installed"
 
-#: src/Content/Nav.php:219
-msgid "Conversations on this and other servers"
-msgstr "Conversations on this and other servers"
+#: src/Core/Installer.php:573 tests/src/Core/InstallerTest.php:329
+#: tests/src/Core/InstallerTest.php:355
+msgid "ImageMagick supports GIF"
+msgstr "ImageMagick supports GIF"
 
-#: src/Content/Nav.php:223 src/Model/Profile.php:940 src/Model/Profile.php:951
-#: view/theme/frio/theme.php:281
-msgid "Events and Calendar"
-msgstr "Events and calendar"
+#: src/Core/Installer.php:595
+msgid "Could not connect to database."
+msgstr "Could not connect to database."
 
-#: src/Content/Nav.php:226
-msgid "Directory"
-msgstr "Directory"
+#: src/Core/Installer.php:602
+msgid "Database already in use."
+msgstr "Database already in use."
 
-#: src/Content/Nav.php:226
-msgid "People directory"
-msgstr "People directory"
+#: src/Core/L10n.php:368 src/Model/Event.php:398
+msgid "Tuesday"
+msgstr "Tuesday"
 
-#: src/Content/Nav.php:228
-msgid "Information about this friendica instance"
-msgstr "Information about this Friendica instance"
+#: src/Core/L10n.php:368 src/Model/Event.php:399
+msgid "Wednesday"
+msgstr "Wednesday"
 
-#: src/Content/Nav.php:231
-msgid "Terms of Service of this Friendica instance"
-msgstr "Terms of Service of this Friendica instance"
+#: src/Core/L10n.php:368 src/Model/Event.php:400
+msgid "Thursday"
+msgstr "Thursday"
 
-#: src/Content/Nav.php:236 view/theme/frio/theme.php:280
-msgid "Conversations from your friends"
-msgstr "My friends' conversations"
+#: src/Core/L10n.php:368 src/Model/Event.php:401
+msgid "Friday"
+msgstr "Friday"
 
-#: src/Content/Nav.php:237
-msgid "Network Reset"
-msgstr "Network reset"
+#: src/Core/L10n.php:368 src/Model/Event.php:402
+msgid "Saturday"
+msgstr "Saturday"
 
-#: src/Content/Nav.php:237
-msgid "Load Network page with no filters"
-msgstr "Load network page without filters"
+#: src/Core/L10n.php:372 src/Model/Event.php:417
+msgid "January"
+msgstr "January"
 
-#: src/Content/Nav.php:243 src/Core/NotificationsManager.php:201
-msgid "Introductions"
-msgstr "Introductions"
+#: src/Core/L10n.php:372 src/Model/Event.php:418
+msgid "February"
+msgstr "February"
 
-#: src/Content/Nav.php:243
-msgid "Friend Requests"
-msgstr "Friend requests"
+#: src/Core/L10n.php:372 src/Model/Event.php:419
+msgid "March"
+msgstr "March"
 
-#: src/Content/Nav.php:245
-msgid "See all notifications"
-msgstr "See all notifications"
+#: src/Core/L10n.php:372 src/Model/Event.php:420
+msgid "April"
+msgstr "April"
 
-#: src/Content/Nav.php:246
-msgid "Mark all system notifications seen"
-msgstr "Mark notifications as seen"
+#: src/Core/L10n.php:372 src/Core/L10n.php:391 src/Model/Event.php:408
+msgid "May"
+msgstr "May"
 
-#: src/Content/Nav.php:249 view/theme/frio/theme.php:282
-msgid "Private mail"
-msgstr "Private messages"
+#: src/Core/L10n.php:372 src/Model/Event.php:421
+msgid "June"
+msgstr "June"
 
-#: src/Content/Nav.php:250
-msgid "Inbox"
-msgstr "Inbox"
+#: src/Core/L10n.php:372 src/Model/Event.php:422
+msgid "July"
+msgstr "July"
 
-#: src/Content/Nav.php:251
-msgid "Outbox"
-msgstr "Outbox"
+#: src/Core/L10n.php:372 src/Model/Event.php:423
+msgid "August"
+msgstr "August"
 
-#: src/Content/Nav.php:255
-msgid "Manage"
-msgstr "Manage"
+#: src/Core/L10n.php:372 src/Model/Event.php:424
+msgid "September"
+msgstr "September"
 
-#: src/Content/Nav.php:255
-msgid "Manage other pages"
-msgstr "Manage other pages"
+#: src/Core/L10n.php:372 src/Model/Event.php:425
+msgid "October"
+msgstr "October"
 
-#: src/Content/Nav.php:260 view/theme/frio/theme.php:283
-msgid "Account settings"
-msgstr "Account settings"
+#: src/Core/L10n.php:372 src/Model/Event.php:426
+msgid "November"
+msgstr "November"
 
-#: src/Content/Nav.php:263
-msgid "Manage/Edit Profiles"
-msgstr "Manage/Edit profiles"
+#: src/Core/L10n.php:372 src/Model/Event.php:427
+msgid "December"
+msgstr "December"
 
-#: src/Content/Nav.php:266 view/theme/frio/theme.php:284
-msgid "Manage/edit friends and contacts"
-msgstr "Manage/Edit friends and contacts"
+#: src/Core/L10n.php:387 src/Model/Event.php:389
+msgid "Mon"
+msgstr "Mon"
 
-#: src/Content/Nav.php:271
-msgid "Site setup and configuration"
-msgstr "Site setup and configuration"
+#: src/Core/L10n.php:387 src/Model/Event.php:390
+msgid "Tue"
+msgstr "Tue"
 
-#: src/Content/Nav.php:274
-msgid "Navigation"
-msgstr "Navigation"
+#: src/Core/L10n.php:387 src/Model/Event.php:391
+msgid "Wed"
+msgstr "Wed"
 
-#: src/Content/Nav.php:274
-msgid "Site map"
-msgstr "Site map"
+#: src/Core/L10n.php:387 src/Model/Event.php:392
+msgid "Thu"
+msgstr "Thu"
 
-#: src/Content/OEmbed.php:257
-msgid "Embedding disabled"
-msgstr "Embedding disabled"
+#: src/Core/L10n.php:387 src/Model/Event.php:393
+msgid "Fri"
+msgstr "Fri"
 
-#: src/Content/OEmbed.php:377
-msgid "Embedded content"
-msgstr "Embedded content"
+#: src/Core/L10n.php:387 src/Model/Event.php:394
+msgid "Sat"
+msgstr "Sat"
 
-#: src/Content/Pager.php:166
-msgid "newer"
-msgstr "Later posts"
+#: src/Core/L10n.php:387 src/Model/Event.php:388
+msgid "Sun"
+msgstr "Sun"
 
-#: src/Content/Pager.php:171
-msgid "older"
-msgstr "Earlier posts"
+#: src/Core/L10n.php:391 src/Model/Event.php:404
+msgid "Jan"
+msgstr "Jan"
 
-#: src/Content/Pager.php:210
-msgid "first"
-msgstr "first"
+#: src/Core/L10n.php:391 src/Model/Event.php:405
+msgid "Feb"
+msgstr "Feb"
 
-#: src/Content/Pager.php:215
-msgid "prev"
-msgstr "prev"
+#: src/Core/L10n.php:391 src/Model/Event.php:406
+msgid "Mar"
+msgstr "Mar"
 
-#: src/Content/Pager.php:270
-msgid "next"
-msgstr "next"
+#: src/Core/L10n.php:391 src/Model/Event.php:407
+msgid "Apr"
+msgstr "Apr"
 
-#: src/Content/Pager.php:275
-msgid "last"
-msgstr "last"
+#: src/Core/L10n.php:391 src/Model/Event.php:410
+msgid "Jul"
+msgstr "Jul"
 
-#: src/Content/Text/BBCode.php:426
-msgid "view full size"
-msgstr "view full size"
+#: src/Core/L10n.php:391 src/Model/Event.php:411
+msgid "Aug"
+msgstr "Aug"
 
-#: src/Content/Text/BBCode.php:858 src/Content/Text/BBCode.php:1583
-#: src/Content/Text/BBCode.php:1584
-msgid "Image/photo"
-msgstr "Image/Photo"
+#: src/Core/L10n.php:391
+msgid "Sep"
+msgstr "Sep"
 
-#: src/Content/Text/BBCode.php:961
-#, php-format
-msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
-msgstr "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
+#: src/Core/L10n.php:391 src/Model/Event.php:413
+msgid "Oct"
+msgstr "Oct"
 
-#: src/Content/Text/BBCode.php:1510 src/Content/Text/BBCode.php:1532
-msgid "$1 wrote:"
-msgstr "$1 wrote:"
+#: src/Core/L10n.php:391 src/Model/Event.php:414
+msgid "Nov"
+msgstr "Nov"
 
-#: src/Content/Text/BBCode.php:1594 src/Content/Text/BBCode.php:1595
-msgid "Encrypted content"
-msgstr "Encrypted content"
+#: src/Core/L10n.php:391 src/Model/Event.php:415
+msgid "Dec"
+msgstr "Dec"
 
-#: src/Content/Text/BBCode.php:1702
-msgid "Invalid source protocol"
-msgstr "Invalid source protocol"
+#: src/Core/L10n.php:410
+msgid "poke"
+msgstr "poke"
 
-#: src/Content/Text/BBCode.php:1713
-msgid "Invalid link protocol"
-msgstr "Invalid link protocol"
+#: src/Core/L10n.php:410
+msgid "poked"
+msgstr "poked"
 
-#: src/Content/Text/HTML.php:797
-msgid "Loading more entries..."
-msgstr "Loading more entries..."
+#: src/Core/L10n.php:411
+msgid "ping"
+msgstr "ping"
 
-#: src/Content/Text/HTML.php:798
-msgid "The end"
-msgstr "The end"
+#: src/Core/L10n.php:411
+msgid "pinged"
+msgstr "pinged"
 
-#: src/Content/Text/HTML.php:838
-msgid "No contacts"
-msgstr "No contacts"
+#: src/Core/L10n.php:412
+msgid "prod"
+msgstr "prod"
 
-#: src/Content/Text/HTML.php:865
-#, php-format
-msgid "%d Contact"
-msgid_plural "%d Contacts"
-msgstr[0] "%d contact"
-msgstr[1] "%d contacts"
+#: src/Core/L10n.php:412
+msgid "prodded"
+msgstr "prodded"
 
-#: src/Content/Text/HTML.php:878
-msgid "View Contacts"
-msgstr "View contacts"
+#: src/Core/L10n.php:413
+msgid "slap"
+msgstr "slap"
 
-#: src/Content/Text/HTML.php:961
-msgid "Follow"
-msgstr "Follow"
+#: src/Core/L10n.php:413
+msgid "slapped"
+msgstr "slapped"
 
-#: src/Content/Text/HTML.php:1016 src/Model/Item.php:3480
-#: src/Model/Item.php:3491
-msgid "Click to open/close"
-msgstr "Reveal/hide"
+#: src/Core/L10n.php:414
+msgid "finger"
+msgstr "finger"
 
-#: src/Content/Widget/CalendarExport.php:66
-msgid "Export"
-msgstr "Export"
+#: src/Core/L10n.php:414
+msgid "fingered"
+msgstr "fingered"
 
-#: src/Content/Widget/CalendarExport.php:67
-msgid "Export calendar as ical"
-msgstr "Export calendar as ical"
+#: src/Core/L10n.php:415
+msgid "rebuff"
+msgstr "rebuff"
 
-#: src/Content/Widget/CalendarExport.php:68
-msgid "Export calendar as csv"
-msgstr "Export calendar as csv"
+#: src/Core/L10n.php:415
+msgid "rebuffed"
+msgstr "rebuffed"
 
-#: src/Content/Widget.php:37
-msgid "Add New Contact"
-msgstr "Add new contact"
+#: src/Core/NotificationsManager.php:175
+msgid "System"
+msgstr "System"
 
-#: src/Content/Widget.php:38
-msgid "Enter address or web location"
-msgstr "Enter address or web location"
+#: src/Core/NotificationsManager.php:196 src/Content/Nav.php:180
+#: src/Content/Nav.php:242
+msgid "Home"
+msgstr "Home"
 
-#: src/Content/Widget.php:39
-msgid "Example: bob@example.com, http://example.com/barbara"
-msgstr "Example: jo@example.com, http://example.com/jo"
+#: src/Core/NotificationsManager.php:203 src/Content/Nav.php:246
+msgid "Introductions"
+msgstr "Introductions"
 
-#: src/Content/Widget.php:57
+#: src/Core/NotificationsManager.php:265 src/Core/NotificationsManager.php:277
 #, php-format
-msgid "%d invitation available"
-msgid_plural "%d invitations available"
-msgstr[0] "%d invitation available"
-msgstr[1] "%d invitations available"
-
-#: src/Content/Widget.php:63 view/theme/vier/theme.php:199
-msgid "Find People"
-msgstr "Find people"
-
-#: src/Content/Widget.php:64 view/theme/vier/theme.php:200
-msgid "Enter name or interest"
-msgstr "Enter name or interest"
-
-#: src/Content/Widget.php:66 view/theme/vier/theme.php:202
-msgid "Examples: Robert Morgenstein, Fishing"
-msgstr "Examples: Robert Morgenstein, fishing"
-
-#: src/Content/Widget.php:69 view/theme/vier/theme.php:205
-msgid "Similar Interests"
-msgstr "Similar interests"
-
-#: src/Content/Widget.php:70 view/theme/vier/theme.php:206
-msgid "Random Profile"
-msgstr "Random profile"
-
-#: src/Content/Widget.php:71 view/theme/vier/theme.php:207
-msgid "Invite Friends"
-msgstr "Invite friends"
-
-#: src/Content/Widget.php:74 view/theme/vier/theme.php:210
-msgid "Local Directory"
-msgstr "Local directory"
-
-#: src/Content/Widget.php:158
-msgid "Protocols"
-msgstr ""
-
-#: src/Content/Widget.php:161
-msgid "All Protocols"
-msgstr ""
-
-#: src/Content/Widget.php:196
-msgid "Saved Folders"
-msgstr "Saved Folders"
-
-#: src/Content/Widget.php:199 src/Content/Widget.php:239
-msgid "Everything"
-msgstr "Everything"
-
-#: src/Content/Widget.php:236
-msgid "Categories"
-msgstr "Categories"
+msgid "%s commented on %s's post"
+msgstr "%s commented on %s's post"
 
-#: src/Content/Widget.php:303
+#: src/Core/NotificationsManager.php:276
 #, php-format
-msgid "%d contact in common"
-msgid_plural "%d contacts in common"
-msgstr[0] "%d contact in common"
-msgstr[1] "%d contacts in common"
-
-#: src/Core/ACL.php:285
-msgid "Post to Email"
-msgstr "Post to email"
+msgid "%s created a new post"
+msgstr "%s posted something new"
 
-#: src/Core/ACL.php:291
-msgid "Hide your profile details from unknown viewers?"
-msgstr "Hide profile details from unknown viewers?"
+#: src/Core/NotificationsManager.php:290
+#, php-format
+msgid "%s liked %s's post"
+msgstr "%s liked %s's post"
 
-#: src/Core/ACL.php:290
+#: src/Core/NotificationsManager.php:303
 #, php-format
-msgid "Connectors disabled, since \"%s\" is enabled."
-msgstr "Connectors are disabled since \"%s\" is enabled."
+msgid "%s disliked %s's post"
+msgstr "%s disliked %s's post"
 
-#: src/Core/ACL.php:297
-msgid "Visible to everybody"
-msgstr "Visible to everybody"
+#: src/Core/NotificationsManager.php:316
+#, php-format
+msgid "%s is attending %s's event"
+msgstr "%s is going to %s's event"
 
-#: src/Core/ACL.php:298 view/theme/vier/config.php:116
-msgid "show"
-msgstr "show"
+#: src/Core/NotificationsManager.php:329
+#, php-format
+msgid "%s is not attending %s's event"
+msgstr "%s is not going to %s's event"
 
-#: src/Core/ACL.php:299 view/theme/vier/config.php:116
-msgid "don't show"
-msgstr "don't show"
+#: src/Core/NotificationsManager.php:342
+#, php-format
+msgid "%s may attend %s's event"
+msgstr "%s may go to %s's event"
 
-#: src/Core/ACL.php:309
-msgid "Close"
-msgstr "Close"
+#: src/Core/NotificationsManager.php:375
+#, php-format
+msgid "%s is now friends with %s"
+msgstr "%s is now friends with %s"
 
-#: src/Core/Authentication.php:89
-msgid "Welcome "
-msgstr "Welcome "
+#: src/Core/NotificationsManager.php:651
+msgid "Friend Suggestion"
+msgstr "Friend suggestion"
 
-#: src/Core/Authentication.php:90
-msgid "Please upload a profile photo."
-msgstr "Please upload a profile photo."
+#: src/Core/NotificationsManager.php:685
+msgid "Friend/Connect Request"
+msgstr "Friend/Contact request"
 
-#: src/Core/Authentication.php:92
-msgid "Welcome back "
-msgstr "Welcome back "
+#: src/Core/NotificationsManager.php:685
+msgid "New Follower"
+msgstr "New follower"
 
-#: src/Core/Console/ArchiveContact.php:66
-#, php-format
-msgid "Could not find any unarchived contact entry for this URL (%s)"
-msgstr "Could not find any unarchived contact entry for this URL (%s)"
+#: src/Core/System.php:137
+msgid "Error 400 - Bad Request"
+msgstr ""
 
-#: src/Core/Console/ArchiveContact.php:71
-msgid "The contact entries have been archived"
-msgstr "The contact entries have been archived"
+#: src/Core/System.php:138
+msgid "Error 401 - Unauthorized"
+msgstr ""
 
-#: src/Core/Console/NewPassword.php:73
-msgid "Enter new password: "
-msgstr "Enter new password: "
+#: src/Core/System.php:139
+msgid "Error 403 - Forbidden"
+msgstr ""
 
-#: src/Core/Console/NewPassword.php:78 src/Model/User.php:315
-msgid "Password can't be empty"
-msgstr "Password can't be empty"
+#: src/Core/System.php:140
+msgid "Error 404 - Not Found"
+msgstr ""
 
-#: src/Core/Console/PostUpdate.php:50
-#, php-format
-msgid "Post update version number has been set to %s."
+#: src/Core/System.php:141
+msgid "Error 500 - Internal Server Error"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:58
-msgid "Check for pending update actions."
+#: src/Core/System.php:142
+msgid "Error 503 - Service Unavailable"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:60
-msgid "Done."
+#: src/Core/System.php:150
+msgid ""
+"The server cannot or will not process the request due to an apparent client "
+"error."
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:62
-msgid "Execute pending post updates."
+#: src/Core/System.php:151
+msgid ""
+"Authentication is required and has failed or has not yet been provided."
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:68
-msgid "All pending post updates are done."
+#: src/Core/System.php:152
+msgid ""
+"The request was valid, but the server is refusing action. The user might not"
+" have the necessary permissions for a resource, or may need an account."
 msgstr ""
 
-#: src/Core/Installer.php:160
+#: src/Core/System.php:153
 msgid ""
-"The database configuration file \"config/local.config.php\" could not be "
-"written. Please use the enclosed text to create a configuration file in your"
-" web server root."
+"The requested resource could not be found but may be available in the "
+"future."
 msgstr ""
 
-#: src/Core/Installer.php:176
+#: src/Core/System.php:154
 msgid ""
-"You may need to import the file \"database.sql\" manually using phpmyadmin "
-"or mysql."
-msgstr "You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."
+"An unexpected condition was encountered and no more specific message is "
+"suitable."
+msgstr "An unexpected condition was encountered and no more specific message is available."
 
-#: src/Core/Installer.php:177 src/Module/Install.php:134
-#: src/Module/Install.php:264
-msgid "Please see the file \"INSTALL.txt\"."
-msgstr "Please see the file \"INSTALL.txt\"."
+#: src/Core/System.php:155
+msgid ""
+"The server is currently unavailable (because it is overloaded or down for "
+"maintenance). Please try again later."
+msgstr ""
 
-#: src/Core/Installer.php:239
-msgid "Could not find a command line version of PHP in the web server PATH."
-msgstr "Could not find a command line version of PHP in the web server PATH."
+#: src/Core/Update.php:168
+#, php-format
+msgid "Update %s failed. See error logs."
+msgstr "Update %s failed. See error logs."
 
-#: src/Core/Installer.php:240
+#: src/Core/Update.php:225
+#, php-format
 msgid ""
-"If you don't have a command line version of PHP installed on your server, "
-"you will not be able to run the background processing. See <a "
-"href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-"
-"up-the-worker'>'Setup the worker'</a>"
-msgstr "If your server doesn't have a command line version of PHP installed, you won't be able to run background processing. See <a href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-up-the-worker'>'Setup the worker'</a>"
+"\n"
+"\t\t\t\tThe friendica developers released update %s recently,\n"
+"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
+"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n"
+"\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
+msgstr "\n\t\t\t\tThe friendica developers released update %s recently,\n\t\t\t\tbut when I tried to install it, something went terribly wrong.\n\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
 
-#: src/Core/Installer.php:244
-msgid "PHP executable path"
-msgstr "PHP executable path"
+#: src/Core/Update.php:231
+#, php-format
+msgid ""
+"The error message is\n"
+"[pre]%s[/pre]"
+msgstr "The error message is\n[pre]%s[/pre]"
 
-#: src/Core/Installer.php:244
+#: src/Core/Update.php:260
+#, php-format
 msgid ""
-"Enter full path to php executable. You can leave this blank to continue the "
-"installation."
-msgstr "Enter full path to php executable. You can leave this blank to continue the installation."
+"\n"
+"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
+msgstr ""
 
-#: src/Core/Installer.php:249
-msgid "Command line PHP"
-msgstr "Command line PHP"
+#: src/Core/UserImport.php:103
+msgid "Error decoding account file"
+msgstr "Error decoding account file"
 
-#: src/Core/Installer.php:258
-msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
-msgstr "PHP executable is not a php cli binary; it could possibly be a cgi-fgci version."
+#: src/Core/UserImport.php:109
+msgid "Error! No version data in file! This is not a Friendica account file?"
+msgstr "Error! No version data in file! Is this a Friendica account file?"
 
-#: src/Core/Installer.php:259
-msgid "Found PHP version: "
-msgstr "Found PHP version: "
+#: src/Core/UserImport.php:117
+#, php-format
+msgid "User '%s' already exists on this server!"
+msgstr "User '%s' already exists on this server!"
 
-#: src/Core/Installer.php:261
-msgid "PHP cli binary"
-msgstr "PHP cli binary"
+#: src/Core/UserImport.php:153
+msgid "User creation error"
+msgstr "User creation error"
 
-#: src/Core/Installer.php:274
-msgid ""
-"The command line version of PHP on your system does not have "
-"\"register_argc_argv\" enabled."
-msgstr "The command line version of PHP on your system does not have \"register_argc_argv\" enabled."
+#: src/Core/UserImport.php:171
+msgid "User profile creation error"
+msgstr "User profile creation error"
 
-#: src/Core/Installer.php:275
-msgid "This is required for message delivery to work."
-msgstr "This is required for message delivery to work."
+#: src/Core/UserImport.php:215
+#, php-format
+msgid "%d contact not imported"
+msgid_plural "%d contacts not imported"
+msgstr[0] "%d contact not imported"
+msgstr[1] "%d contacts not imported"
 
-#: src/Core/Installer.php:280
-msgid "PHP register_argc_argv"
-msgstr "PHP register_argc_argv"
+#: src/Core/UserImport.php:280
+msgid "Done. You can now login with your username and password"
+msgstr "Done. You can now login with your username and password"
 
-#: src/Core/Installer.php:312
-msgid ""
-"Error: the \"openssl_pkey_new\" function on this system is not able to "
-"generate encryption keys"
-msgstr "Error: the \"openssl_pkey_new\" function on this system is not able to generate encryption keys"
+#: src/Util/Temporal.php:147 src/Model/Profile.php:771
+msgid "Birthday:"
+msgstr "Birthday:"
 
-#: src/Core/Installer.php:313
-msgid ""
-"If running under Windows, please see "
-"\"http://www.php.net/manual/en/openssl.installation.php\"."
-msgstr "If running under Windows OS, please see \"http://www.php.net/manual/en/openssl.installation.php\"."
+#: src/Util/Temporal.php:151
+msgid "YYYY-MM-DD or MM-DD"
+msgstr "YYYY-MM-DD or MM-DD"
 
-#: src/Core/Installer.php:316
-msgid "Generate encryption keys"
-msgstr "Generate encryption keys"
+#: src/Util/Temporal.php:298
+msgid "never"
+msgstr "never"
 
-#: src/Core/Installer.php:367
-msgid ""
-"Error: Apache webserver mod-rewrite module is required but not installed."
-msgstr "Error: Apache web server mod-rewrite module is required but not installed."
+#: src/Util/Temporal.php:305
+msgid "less than a second ago"
+msgstr "less than a second ago"
 
-#: src/Core/Installer.php:372
-msgid "Apache mod_rewrite module"
-msgstr "Apache mod_rewrite module"
+#: src/Util/Temporal.php:313
+msgid "year"
+msgstr "year"
 
-#: src/Core/Installer.php:378
-msgid "Error: PDO or MySQLi PHP module required but not installed."
-msgstr "Error: PDO or MySQLi PHP module required but not installed."
+#: src/Util/Temporal.php:313
+msgid "years"
+msgstr "years"
 
-#: src/Core/Installer.php:383
-msgid "Error: The MySQL driver for PDO is not installed."
-msgstr "Error: MySQL driver for PDO is not installed."
+#: src/Util/Temporal.php:314
+msgid "months"
+msgstr "months"
 
-#: src/Core/Installer.php:387
-msgid "PDO or MySQLi PHP module"
-msgstr "PDO or MySQLi PHP module"
+#: src/Util/Temporal.php:315
+msgid "weeks"
+msgstr "weeks"
 
-#: src/Core/Installer.php:395
-msgid "Error, XML PHP module required but not installed."
-msgstr "Error, XML PHP module required but not installed."
+#: src/Util/Temporal.php:316
+msgid "days"
+msgstr "days"
 
-#: src/Core/Installer.php:399
-msgid "XML PHP module"
-msgstr "XML PHP module"
+#: src/Util/Temporal.php:317
+msgid "hour"
+msgstr "hour"
 
-#: src/Core/Installer.php:402
-msgid "libCurl PHP module"
-msgstr "libCurl PHP module"
+#: src/Util/Temporal.php:317
+msgid "hours"
+msgstr "hours"
 
-#: src/Core/Installer.php:403
-msgid "Error: libCURL PHP module required but not installed."
-msgstr "Error: libCURL PHP module required but not installed."
+#: src/Util/Temporal.php:318
+msgid "minute"
+msgstr "minute"
 
-#: src/Core/Installer.php:409
-msgid "GD graphics PHP module"
-msgstr "GD graphics PHP module"
+#: src/Util/Temporal.php:318
+msgid "minutes"
+msgstr "minutes"
 
-#: src/Core/Installer.php:410
-msgid ""
-"Error: GD graphics PHP module with JPEG support required but not installed."
-msgstr "Error: GD graphics PHP module with JPEG support required but not installed."
+#: src/Util/Temporal.php:319
+msgid "second"
+msgstr "second"
 
-#: src/Core/Installer.php:416
-msgid "OpenSSL PHP module"
-msgstr "OpenSSL PHP module"
+#: src/Util/Temporal.php:319
+msgid "seconds"
+msgstr "seconds"
 
-#: src/Core/Installer.php:417
-msgid "Error: openssl PHP module required but not installed."
-msgstr "Error: openssl PHP module required but not installed."
+#: src/Util/Temporal.php:329
+#, php-format
+msgid "in %1$d %2$s"
+msgstr ""
 
-#: src/Core/Installer.php:423
-msgid "mb_string PHP module"
-msgstr "mb_string PHP module"
+#: src/Util/Temporal.php:332
+#, php-format
+msgid "%1$d %2$s ago"
+msgstr "%1$d %2$s ago"
 
-#: src/Core/Installer.php:424
-msgid "Error: mb_string PHP module required but not installed."
-msgstr "Error: mb_string PHP module required but not installed."
+#: src/Content/Text/BBCode.php:429
+msgid "view full size"
+msgstr "view full size"
 
-#: src/Core/Installer.php:430
-msgid "iconv PHP module"
-msgstr "iconv PHP module"
+#: src/Content/Text/BBCode.php:863 src/Content/Text/BBCode.php:1596
+#: src/Content/Text/BBCode.php:1597
+msgid "Image/photo"
+msgstr "Image/Photo"
 
-#: src/Core/Installer.php:431
-msgid "Error: iconv PHP module required but not installed."
-msgstr "Error: iconv PHP module required but not installed."
+#: src/Content/Text/BBCode.php:967
+#, php-format
+msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
+msgstr "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
 
-#: src/Core/Installer.php:437
-msgid "POSIX PHP module"
-msgstr "POSIX PHP module"
+#: src/Content/Text/BBCode.php:1523 src/Content/Text/BBCode.php:1545
+msgid "$1 wrote:"
+msgstr "$1 wrote:"
 
-#: src/Core/Installer.php:438
-msgid "Error: POSIX PHP module required but not installed."
-msgstr "Error: POSIX PHP module required but not installed."
+#: src/Content/Text/BBCode.php:1607 src/Content/Text/BBCode.php:1608
+msgid "Encrypted content"
+msgstr "Encrypted content"
 
-#: src/Core/Installer.php:461
-msgid ""
-"The web installer needs to be able to create a file called "
-"\"local.config.php\" in the \"config\" folder of your web server and it is "
-"unable to do so."
-msgstr ""
+#: src/Content/Text/BBCode.php:1715
+msgid "Invalid source protocol"
+msgstr "Invalid source protocol"
 
-#: src/Core/Installer.php:462
-msgid ""
-"This is most often a permission setting, as the web server may not be able "
-"to write files in your folder - even if you can."
-msgstr "This is most often a permission setting issue, as the web server may not be able to write files in your directory - even if you can."
+#: src/Content/Text/BBCode.php:1726
+msgid "Invalid link protocol"
+msgstr "Invalid link protocol"
 
-#: src/Core/Installer.php:463
-msgid ""
-"At the end of this procedure, we will give you a text to save in a file "
-"named local.config.php in your Friendica \"config\" folder."
-msgstr ""
+#: src/Content/Text/HTML.php:800
+msgid "Loading more entries..."
+msgstr "Loading more entries..."
 
-#: src/Core/Installer.php:464
-msgid ""
-"You can alternatively skip this procedure and perform a manual installation."
-" Please see the file \"INSTALL.txt\" for instructions."
-msgstr "Alternatively, you may skip this procedure and perform a manual installation. Please see the file \"INSTALL.txt\" for instructions."
+#: src/Content/Text/HTML.php:801
+msgid "The end"
+msgstr "The end"
 
-#: src/Core/Installer.php:467
-msgid "config/local.config.php is writable"
-msgstr ""
+#: src/Content/Text/HTML.php:894
+msgid "Follow"
+msgstr "Follow"
 
-#: src/Core/Installer.php:487
-msgid ""
-"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
-"compiles templates to PHP to speed up rendering."
-msgstr "Friendica uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering."
+#: src/Content/Text/HTML.php:903 src/Content/Nav.php:79
+msgid "@name, !forum, #tags, content"
+msgstr "@name, !forum, #tags, content"
 
-#: src/Core/Installer.php:488
-msgid ""
-"In order to store these compiled templates, the web server needs to have "
-"write access to the directory view/smarty3/ under the Friendica top level "
-"folder."
-msgstr "In order to store these compiled templates, the web server needs to have write access to the directory view/smarty3/ under the Friendica top-level directory."
+#: src/Content/Text/HTML.php:909 src/Content/Nav.php:201
+msgid "Full Text"
+msgstr "Full text"
 
-#: src/Core/Installer.php:489
-msgid ""
-"Please ensure that the user that your web server runs as (e.g. www-data) has"
-" write access to this folder."
-msgstr "Please ensure the user that your web server runs as (e.g. www-data) has write access to this directory."
+#: src/Content/Text/HTML.php:910 src/Content/Widget/TagCloud.php:54
+#: src/Content/Nav.php:202
+msgid "Tags"
+msgstr "Tags"
 
-#: src/Core/Installer.php:490
-msgid ""
-"Note: as a security measure, you should give the web server write access to "
-"view/smarty3/ only--not the template files (.tpl) that it contains."
-msgstr "Note: as a security measure, you should give the web server write access to view/smarty3/ only--not the template files (.tpl) that it contains."
+#: src/Content/Text/HTML.php:951 src/Model/Item.php:3485
+#: src/Model/Item.php:3496
+msgid "Click to open/close"
+msgstr "Reveal/hide"
 
-#: src/Core/Installer.php:493
-msgid "view/smarty3 is writable"
-msgstr "view/smarty3 is writable"
+#: src/Content/Widget/CalendarExport.php:64
+msgid "Export"
+msgstr "Export"
 
-#: src/Core/Installer.php:521
-msgid ""
-"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist"
-" to .htaccess."
-msgstr ""
+#: src/Content/Widget/CalendarExport.php:65
+msgid "Export calendar as ical"
+msgstr "Export calendar as ical"
 
-#: src/Core/Installer.php:523
-msgid "Error message from Curl when fetching"
-msgstr "Error message from Curl while fetching"
+#: src/Content/Widget/CalendarExport.php:66
+msgid "Export calendar as csv"
+msgstr "Export calendar as csv"
 
-#: src/Core/Installer.php:528
-msgid "Url rewrite is working"
-msgstr "URL rewrite is working"
+#: src/Content/Widget/ContactBlock.php:58
+msgid "No contacts"
+msgstr "No contacts"
 
-#: src/Core/Installer.php:557
-msgid "ImageMagick PHP extension is not installed"
-msgstr "ImageMagick PHP extension is not installed"
+#: src/Content/Widget/ContactBlock.php:90
+#, php-format
+msgid "%d Contact"
+msgid_plural "%d Contacts"
+msgstr[0] "%d contact"
+msgstr[1] "%d contacts"
 
-#: src/Core/Installer.php:559
-msgid "ImageMagick PHP extension is installed"
-msgstr "ImageMagick PHP extension is installed"
+#: src/Content/Widget/ContactBlock.php:109
+msgid "View Contacts"
+msgstr "View contacts"
 
-#: src/Core/Installer.php:561 tests/src/Core/InstallerTest.php:308
-#: tests/src/Core/InstallerTest.php:332
-msgid "ImageMagick supports GIF"
-msgstr "ImageMagick supports GIF"
+#: src/Content/ContactSelector.php:58
+msgid "Frequently"
+msgstr "Frequently"
 
-#: src/Core/Installer.php:583
-msgid "Could not connect to database."
-msgstr "Could not connect to database."
+#: src/Content/ContactSelector.php:59
+msgid "Hourly"
+msgstr "Hourly"
 
-#: src/Core/Installer.php:590
-msgid "Database already in use."
-msgstr "Database already in use."
+#: src/Content/ContactSelector.php:60
+msgid "Twice daily"
+msgstr "Twice daily"
 
-#: src/Core/L10n.php:359 src/Model/Event.php:398
-msgid "Tuesday"
-msgstr "Tuesday"
+#: src/Content/ContactSelector.php:61
+msgid "Daily"
+msgstr "Daily"
 
-#: src/Core/L10n.php:359 src/Model/Event.php:399
-msgid "Wednesday"
-msgstr "Wednesday"
+#: src/Content/ContactSelector.php:62
+msgid "Weekly"
+msgstr "Weekly"
 
-#: src/Core/L10n.php:359 src/Model/Event.php:400
-msgid "Thursday"
-msgstr "Thursday"
+#: src/Content/ContactSelector.php:63
+msgid "Monthly"
+msgstr "Monthly"
 
-#: src/Core/L10n.php:359 src/Model/Event.php:401
-msgid "Friday"
-msgstr "Friday"
+#: src/Content/ContactSelector.php:83
+msgid "DFRN"
+msgstr ""
 
-#: src/Core/L10n.php:359 src/Model/Event.php:402
-msgid "Saturday"
-msgstr "Saturday"
+#: src/Content/ContactSelector.php:84
+msgid "OStatus"
+msgstr "OStatus"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:417
-msgid "January"
-msgstr "January"
+#: src/Content/ContactSelector.php:85
+msgid "RSS/Atom"
+msgstr "RSS/Atom"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:418
-msgid "February"
-msgstr "February"
+#: src/Content/ContactSelector.php:88
+msgid "Zot!"
+msgstr "Zot!"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:419
-msgid "March"
-msgstr "March"
+#: src/Content/ContactSelector.php:89
+msgid "LinkedIn"
+msgstr "LinkedIn"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:420
-msgid "April"
-msgstr "April"
+#: src/Content/ContactSelector.php:90
+msgid "XMPP/IM"
+msgstr "XMPP/IM"
 
-#: src/Core/L10n.php:363 src/Core/L10n.php:382 src/Model/Event.php:408
-#: src/Model/Event.php:421
-msgid "May"
-msgstr "May"
+#: src/Content/ContactSelector.php:91
+msgid "MySpace"
+msgstr "MySpace"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:422
-msgid "June"
-msgstr "June"
+#: src/Content/ContactSelector.php:92
+msgid "Google+"
+msgstr "Google+"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:423
-msgid "July"
-msgstr "July"
+#: src/Content/ContactSelector.php:93
+msgid "pump.io"
+msgstr "pump.io"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:424
-msgid "August"
-msgstr "August"
+#: src/Content/ContactSelector.php:94
+msgid "Twitter"
+msgstr "Twitter"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:425
-msgid "September"
-msgstr "September"
+#: src/Content/ContactSelector.php:95
+msgid "Diaspora Connector"
+msgstr "Diaspora Connector"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:426
-msgid "October"
-msgstr "October"
+#: src/Content/ContactSelector.php:96
+msgid "GNU Social Connector"
+msgstr "GNU Social Connector"
 
-#: src/Core/L10n.php:363 src/Model/Event.php:427
-msgid "November"
-msgstr "November"
+#: src/Content/ContactSelector.php:97
+msgid "ActivityPub"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:428
-msgid "December"
-msgstr "December"
+#: src/Content/ContactSelector.php:98
+msgid "pnut"
+msgstr "pnut"
 
-#: src/Core/L10n.php:378 src/Model/Event.php:389
-msgid "Mon"
-msgstr "Mon"
+#: src/Content/ContactSelector.php:154
+msgid "Male"
+msgstr "Male"
 
-#: src/Core/L10n.php:378 src/Model/Event.php:390
-msgid "Tue"
-msgstr "Tue"
+#: src/Content/ContactSelector.php:155
+msgid "Female"
+msgstr "Female"
 
-#: src/Core/L10n.php:378 src/Model/Event.php:391
-msgid "Wed"
-msgstr "Wed"
+#: src/Content/ContactSelector.php:156
+msgid "Currently Male"
+msgstr "Currently male"
 
-#: src/Core/L10n.php:378 src/Model/Event.php:392
-msgid "Thu"
-msgstr "Thu"
+#: src/Content/ContactSelector.php:157
+msgid "Currently Female"
+msgstr "Currently female"
 
-#: src/Core/L10n.php:378 src/Model/Event.php:393
-msgid "Fri"
-msgstr "Fri"
+#: src/Content/ContactSelector.php:158
+msgid "Mostly Male"
+msgstr "Mostly male"
 
-#: src/Core/L10n.php:378 src/Model/Event.php:394
-msgid "Sat"
-msgstr "Sat"
+#: src/Content/ContactSelector.php:159
+msgid "Mostly Female"
+msgstr "Mostly female"
 
-#: src/Core/L10n.php:378 src/Model/Event.php:388
-msgid "Sun"
-msgstr "Sun"
+#: src/Content/ContactSelector.php:160
+msgid "Transgender"
+msgstr "Transgender"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:404
-msgid "Jan"
-msgstr "Jan"
+#: src/Content/ContactSelector.php:161
+msgid "Intersex"
+msgstr "Intersex"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:405
-msgid "Feb"
-msgstr "Feb"
+#: src/Content/ContactSelector.php:162
+msgid "Transsexual"
+msgstr "Transsexual"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:406
-msgid "Mar"
-msgstr "Mar"
+#: src/Content/ContactSelector.php:163
+msgid "Hermaphrodite"
+msgstr "Hermaphrodite"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:407
-msgid "Apr"
-msgstr "Apr"
+#: src/Content/ContactSelector.php:164
+msgid "Neuter"
+msgstr "Neuter"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:410
-msgid "Jul"
-msgstr "Jul"
+#: src/Content/ContactSelector.php:165
+msgid "Non-specific"
+msgstr "Non-specific"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:411
-msgid "Aug"
-msgstr "Aug"
+#: src/Content/ContactSelector.php:166
+msgid "Other"
+msgstr "Other"
 
-#: src/Core/L10n.php:382
-msgid "Sep"
-msgstr "Sep"
+#: src/Content/ContactSelector.php:194
+msgid "Males"
+msgstr "Males"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:413
-msgid "Oct"
-msgstr "Oct"
+#: src/Content/ContactSelector.php:195
+msgid "Females"
+msgstr "Females"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:414
-msgid "Nov"
-msgstr "Nov"
+#: src/Content/ContactSelector.php:196
+msgid "Gay"
+msgstr "Gay"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:415
-msgid "Dec"
-msgstr "Dec"
+#: src/Content/ContactSelector.php:197
+msgid "Lesbian"
+msgstr "Lesbian"
 
-#: src/Core/L10n.php:400
-msgid "poke"
-msgstr "poke"
+#: src/Content/ContactSelector.php:198
+msgid "No Preference"
+msgstr "No Preference"
 
-#: src/Core/L10n.php:400
-msgid "poked"
-msgstr "poked"
+#: src/Content/ContactSelector.php:199
+msgid "Bisexual"
+msgstr "Bisexual"
 
-#: src/Core/L10n.php:401
-msgid "ping"
-msgstr "ping"
+#: src/Content/ContactSelector.php:200
+msgid "Autosexual"
+msgstr "Auto-sexual"
 
-#: src/Core/L10n.php:401
-msgid "pinged"
-msgstr "pinged"
+#: src/Content/ContactSelector.php:201
+msgid "Abstinent"
+msgstr "Abstinent"
 
-#: src/Core/L10n.php:402
-msgid "prod"
-msgstr "prod"
+#: src/Content/ContactSelector.php:202
+msgid "Virgin"
+msgstr "Virgin"
 
-#: src/Core/L10n.php:402
-msgid "prodded"
-msgstr "prodded"
+#: src/Content/ContactSelector.php:203
+msgid "Deviant"
+msgstr "Deviant"
 
-#: src/Core/L10n.php:403
-msgid "slap"
-msgstr "slap"
+#: src/Content/ContactSelector.php:204
+msgid "Fetish"
+msgstr "Fetish"
 
-#: src/Core/L10n.php:403
-msgid "slapped"
-msgstr "slapped"
+#: src/Content/ContactSelector.php:205
+msgid "Oodles"
+msgstr "Oodles"
 
-#: src/Core/L10n.php:404
-msgid "finger"
-msgstr "finger"
+#: src/Content/ContactSelector.php:206
+msgid "Nonsexual"
+msgstr "Asexual"
 
-#: src/Core/L10n.php:404
-msgid "fingered"
-msgstr "fingered"
+#: src/Content/ContactSelector.php:232
+msgid "Single"
+msgstr "Single"
 
-#: src/Core/L10n.php:405
-msgid "rebuff"
-msgstr "rebuff"
+#: src/Content/ContactSelector.php:233
+msgid "Lonely"
+msgstr "Lonely"
 
-#: src/Core/L10n.php:405
-msgid "rebuffed"
-msgstr "rebuffed"
+#: src/Content/ContactSelector.php:234
+msgid "Available"
+msgstr "Available"
 
-#: src/Core/NotificationsManager.php:173
-msgid "System"
-msgstr "System"
+#: src/Content/ContactSelector.php:235
+msgid "Unavailable"
+msgstr "Unavailable"
 
-#: src/Core/NotificationsManager.php:263 src/Core/NotificationsManager.php:275
-#, php-format
-msgid "%s commented on %s's post"
-msgstr "%s commented on %s's post"
+#: src/Content/ContactSelector.php:236
+msgid "Has crush"
+msgstr "Having a crush"
 
-#: src/Core/NotificationsManager.php:274
-#, php-format
-msgid "%s created a new post"
-msgstr "%s posted something new"
+#: src/Content/ContactSelector.php:237
+msgid "Infatuated"
+msgstr "Infatuated"
 
-#: src/Core/NotificationsManager.php:288
-#, php-format
-msgid "%s liked %s's post"
-msgstr "%s liked %s's post"
+#: src/Content/ContactSelector.php:238
+msgid "Dating"
+msgstr "Dating"
 
-#: src/Core/NotificationsManager.php:301
-#, php-format
-msgid "%s disliked %s's post"
-msgstr "%s disliked %s's post"
+#: src/Content/ContactSelector.php:239
+msgid "Unfaithful"
+msgstr "Unfaithful"
 
-#: src/Core/NotificationsManager.php:314
-#, php-format
-msgid "%s is attending %s's event"
-msgstr "%s is going to %s's event"
+#: src/Content/ContactSelector.php:240
+msgid "Sex Addict"
+msgstr "Sex addict"
 
-#: src/Core/NotificationsManager.php:327
-#, php-format
-msgid "%s is not attending %s's event"
-msgstr "%s is not going to %s's event"
+#: src/Content/ContactSelector.php:241 src/Model/User.php:701
+msgid "Friends"
+msgstr "Friends"
 
-#: src/Core/NotificationsManager.php:340
-#, php-format
-msgid "%s may attend %s's event"
-msgstr "%s may go to %s's event"
+#: src/Content/ContactSelector.php:242
+msgid "Friends/Benefits"
+msgstr "Friends with benefits"
 
-#: src/Core/NotificationsManager.php:373
-#, php-format
-msgid "%s is now friends with %s"
-msgstr "%s is now friends with %s"
+#: src/Content/ContactSelector.php:243
+msgid "Casual"
+msgstr "Casual"
 
-#: src/Core/NotificationsManager.php:639
-msgid "Friend Suggestion"
-msgstr "Friend suggestion"
+#: src/Content/ContactSelector.php:244
+msgid "Engaged"
+msgstr "Engaged"
 
-#: src/Core/NotificationsManager.php:673
-msgid "Friend/Connect Request"
-msgstr "Friend/Contact request"
+#: src/Content/ContactSelector.php:245
+msgid "Married"
+msgstr "Married"
 
-#: src/Core/NotificationsManager.php:673
-msgid "New Follower"
-msgstr "New follower"
+#: src/Content/ContactSelector.php:246
+msgid "Imaginarily married"
+msgstr "Imaginarily married"
 
-#: src/Core/Update.php:157
-#, php-format
-msgid "Update %s failed. See error logs."
-msgstr "Update %s failed. See error logs."
+#: src/Content/ContactSelector.php:247
+msgid "Partners"
+msgstr "Partners"
 
-#: src/Core/Update.php:213
-#, php-format
-msgid ""
-"\n"
-"\t\t\t\tThe friendica developers released update %s recently,\n"
-"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
-"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n"
-"\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
-msgstr "\n\t\t\t\tThe friendica developers released update %s recently,\n\t\t\t\tbut when I tried to install it, something went terribly wrong.\n\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
+#: src/Content/ContactSelector.php:248
+msgid "Cohabiting"
+msgstr "Cohabiting"
 
-#: src/Core/Update.php:219
-#, php-format
-msgid ""
-"The error message is\n"
-"[pre]%s[/pre]"
-msgstr "The error message is\n[pre]%s[/pre]"
-
-#: src/Core/Update.php:248
-#, php-format
-msgid ""
-"\n"
-"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
-msgstr ""
-
-#: src/Core/UserImport.php:103
-msgid "Error decoding account file"
-msgstr "Error decoding account file"
-
-#: src/Core/UserImport.php:109
-msgid "Error! No version data in file! This is not a Friendica account file?"
-msgstr "Error! No version data in file! Is this a Friendica account file?"
+#: src/Content/ContactSelector.php:249
+msgid "Common law"
+msgstr "Common law spouse"
 
-#: src/Core/UserImport.php:117
-#, php-format
-msgid "User '%s' already exists on this server!"
-msgstr "User '%s' already exists on this server!"
+#: src/Content/ContactSelector.php:250
+msgid "Happy"
+msgstr "Happy"
 
-#: src/Core/UserImport.php:153
-msgid "User creation error"
-msgstr "User creation error"
+#: src/Content/ContactSelector.php:251
+msgid "Not looking"
+msgstr "Not looking"
 
-#: src/Core/UserImport.php:171
-msgid "User profile creation error"
-msgstr "User profile creation error"
+#: src/Content/ContactSelector.php:252
+msgid "Swinger"
+msgstr "Swinger"
 
-#: src/Core/UserImport.php:215
-#, php-format
-msgid "%d contact not imported"
-msgid_plural "%d contacts not imported"
-msgstr[0] "%d contact not imported"
-msgstr[1] "%d contacts not imported"
+#: src/Content/ContactSelector.php:253
+msgid "Betrayed"
+msgstr "Betrayed"
 
-#: src/Core/UserImport.php:280
-msgid "Done. You can now login with your username and password"
-msgstr "Done. You can now login with your username and password"
+#: src/Content/ContactSelector.php:254
+msgid "Separated"
+msgstr "Separated"
 
-#: src/Database/DBStructure.php:45
-msgid "There are no tables on MyISAM."
-msgstr "There are no tables on MyISAM."
+#: src/Content/ContactSelector.php:255
+msgid "Unstable"
+msgstr "Unstable"
 
-#: src/Database/DBStructure.php:153
-#, php-format
-msgid ""
-"\n"
-"Error %d occurred during database update:\n"
-"%s\n"
-msgstr "\nError %d occurred during database update:\n%s\n"
+#: src/Content/ContactSelector.php:256
+msgid "Divorced"
+msgstr "Divorced"
 
-#: src/Database/DBStructure.php:156
-msgid "Errors encountered performing database changes: "
-msgstr "Errors encountered performing database changes: "
+#: src/Content/ContactSelector.php:257
+msgid "Imaginarily divorced"
+msgstr "Imaginarily divorced"
 
-#: src/Database/DBStructure.php:172
-#, php-format
-msgid "%s: Database update"
-msgstr "%s: Database update"
+#: src/Content/ContactSelector.php:258
+msgid "Widowed"
+msgstr "Widowed"
 
-#: src/Database/DBStructure.php:435
-#, php-format
-msgid "%s: updating %s table."
-msgstr "%s: updating %s table."
+#: src/Content/ContactSelector.php:259
+msgid "Uncertain"
+msgstr "Uncertain"
 
-#: src/LegacyModule.php:29
-#, php-format
-msgid "Legacy module file not found: %s"
-msgstr ""
+#: src/Content/ContactSelector.php:260
+msgid "It's complicated"
+msgstr "It's complicated"
 
-#: src/Model/Contact.php:955
-msgid "Drop Contact"
-msgstr "Drop contact"
+#: src/Content/ContactSelector.php:261
+msgid "Don't care"
+msgstr "Don't care"
 
-#: src/Model/Contact.php:1418
-msgid "Organisation"
-msgstr "Organization"
+#: src/Content/ContactSelector.php:262
+msgid "Ask me"
+msgstr "Ask me"
 
-#: src/Model/Contact.php:1422
-msgid "News"
-msgstr "News"
+#: src/Content/Feature.php:82
+msgid "General Features"
+msgstr "General"
 
-#: src/Model/Contact.php:1426
-msgid "Forum"
-msgstr "Forum"
+#: src/Content/Feature.php:84
+msgid "Multiple Profiles"
+msgstr "Multiple profiles"
 
-#: src/Model/Contact.php:1608
-msgid "Connect URL missing."
-msgstr "Connect URL missing."
+#: src/Content/Feature.php:84
+msgid "Ability to create multiple profiles"
+msgstr "Ability to create multiple profiles"
 
-#: src/Model/Contact.php:1617
-msgid ""
-"The contact could not be added. Please check the relevant network "
-"credentials in your Settings -> Social Networks page."
-msgstr "The contact could not be added. Please check the relevant network credentials in your Settings -> Social Networks page."
+#: src/Content/Feature.php:85
+msgid "Photo Location"
+msgstr "Photo location"
 
-#: src/Model/Contact.php:1656
+#: src/Content/Feature.php:85
 msgid ""
-"This site is not configured to allow communications with other networks."
-msgstr "This site is not configured to allow communications with other networks."
+"Photo metadata is normally stripped. This extracts the location (if present)"
+" prior to stripping metadata and links it to a map."
+msgstr "Photo metadata is normally removed. This saves the geo tag (if present) and links it to a map prior to removing other metadata."
 
-#: src/Model/Contact.php:1657 src/Model/Contact.php:1671
-msgid "No compatible communication protocols or feeds were discovered."
-msgstr "No compatible communication protocols or feeds were discovered."
+#: src/Content/Feature.php:86
+msgid "Export Public Calendar"
+msgstr "Export public calendar"
 
-#: src/Model/Contact.php:1669
-msgid "The profile address specified does not provide adequate information."
-msgstr "The profile address specified does not provide adequate information."
+#: src/Content/Feature.php:86
+msgid "Ability for visitors to download the public calendar"
+msgstr "Ability for visitors to download the public calendar"
 
-#: src/Model/Contact.php:1674
-msgid "An author or name was not found."
-msgstr "An author or name was not found."
+#: src/Content/Feature.php:91
+msgid "Post Composition Features"
+msgstr "Post composition"
 
-#: src/Model/Contact.php:1677
-msgid "No browser URL could be matched to this address."
-msgstr "No browser URL could be matched to this address."
+#: src/Content/Feature.php:92
+msgid "Auto-mention Forums"
+msgstr "Auto-mention forums"
 
-#: src/Model/Contact.php:1680
+#: src/Content/Feature.php:92
 msgid ""
-"Unable to match @-style Identity Address with a known protocol or email "
-"contact."
-msgstr "Unable to match @-style identity address with a known protocol or email contact."
-
-#: src/Model/Contact.php:1681
-msgid "Use mailto: in front of address to force email check."
-msgstr "Use mailto: in front of address to force email check."
+"Add/remove mention when a forum page is selected/deselected in ACL window."
+msgstr "Add/Remove mention when a forum page is selected or deselected in the ACL window."
 
-#: src/Model/Contact.php:1687
-msgid ""
-"The profile address specified belongs to a network which has been disabled "
-"on this site."
-msgstr "The profile address specified belongs to a network which has been disabled on this site."
+#: src/Content/Feature.php:93
+msgid "Explicit Mentions"
+msgstr ""
 
-#: src/Model/Contact.php:1692
+#: src/Content/Feature.php:93
 msgid ""
-"Limited profile. This person will be unable to receive direct/personal "
-"notifications from you."
-msgstr "Limited profile: This person will be unable to receive direct/private messages from you."
+"Add explicit mentions to comment box for manual control over who gets "
+"mentioned in replies."
+msgstr ""
 
-#: src/Model/Contact.php:1743
-msgid "Unable to retrieve contact information."
-msgstr "Unable to retrieve contact information."
+#: src/Content/Feature.php:98
+msgid "Network Sidebar"
+msgstr "Network sidebar"
 
-#: src/Model/Event.php:63 src/Model/Event.php:80 src/Model/Event.php:437
-#: src/Model/Event.php:912
-msgid "Starts:"
-msgstr "Starts:"
+#: src/Content/Feature.php:99
+msgid "Ability to select posts by date ranges"
+msgstr "Ability to select posts by date ranges"
 
-#: src/Model/Event.php:66 src/Model/Event.php:86 src/Model/Event.php:438
-#: src/Model/Event.php:916
-msgid "Finishes:"
-msgstr "Finishes:"
+#: src/Content/Feature.php:100
+msgid "Protocol Filter"
+msgstr ""
 
-#: src/Model/Event.php:386
-msgid "all-day"
-msgstr "All-day"
+#: src/Content/Feature.php:100
+msgid "Enable widget to display Network posts only from selected protocols"
+msgstr ""
 
-#: src/Model/Event.php:409
-msgid "Jun"
-msgstr "Jun"
+#: src/Content/Feature.php:105
+msgid "Network Tabs"
+msgstr "Network tabs"
 
-#: src/Model/Event.php:412
-msgid "Sept"
-msgstr "Sep"
+#: src/Content/Feature.php:106
+msgid "Network New Tab"
+msgstr "Network new tab"
 
-#: src/Model/Event.php:435
-msgid "No events to display"
-msgstr "No events to display"
+#: src/Content/Feature.php:106
+msgid "Enable tab to display only new Network posts (from the last 12 hours)"
+msgstr "Enable tab to display only new network posts (last 12 hours)"
 
-#: src/Model/Event.php:559
-msgid "l, F j"
-msgstr "l, F j"
+#: src/Content/Feature.php:107
+msgid "Network Shared Links Tab"
+msgstr "Network shared links tab"
 
-#: src/Model/Event.php:590
-msgid "Edit event"
-msgstr "Edit event"
+#: src/Content/Feature.php:107
+msgid "Enable tab to display only Network posts with links in them"
+msgstr "Enable tab to display only network posts with links in them"
 
-#: src/Model/Event.php:591
-msgid "Duplicate event"
-msgstr "Duplicate event"
+#: src/Content/Feature.php:112
+msgid "Post/Comment Tools"
+msgstr "Post/Comment tools"
 
-#: src/Model/Event.php:592
-msgid "Delete event"
-msgstr "Delete event"
+#: src/Content/Feature.php:113
+msgid "Post Categories"
+msgstr "Post categories"
 
-#: src/Model/Event.php:624 src/Model/Item.php:3529 src/Model/Item.php:3536
-msgid "link to source"
-msgstr "Link to source"
+#: src/Content/Feature.php:113
+msgid "Add categories to your posts"
+msgstr "Add categories to your posts"
 
-#: src/Model/Event.php:845
-msgid "D g:i A"
-msgstr "D g:i A"
+#: src/Content/Feature.php:118
+msgid "Advanced Profile Settings"
+msgstr "Advanced profiles"
 
-#: src/Model/Event.php:846
-msgid "g:i A"
-msgstr "g:i A"
+#: src/Content/Feature.php:119
+msgid "List Forums"
+msgstr "List forums"
 
-#: src/Model/Event.php:931 src/Model/Event.php:933
-msgid "Show map"
-msgstr "Show map"
+#: src/Content/Feature.php:119
+msgid "Show visitors public community forums at the Advanced Profile Page"
+msgstr "Show visitors of public community forums at the advanced profile page"
 
-#: src/Model/Event.php:932
-msgid "Hide map"
-msgstr "Hide map"
+#: src/Content/Feature.php:120
+msgid "Tag Cloud"
+msgstr "Tag cloud"
 
-#: src/Model/Event.php:1022
-#, php-format
-msgid "%s's birthday"
-msgstr "%s's birthday"
+#: src/Content/Feature.php:120
+msgid "Provide a personal tag cloud on your profile page"
+msgstr "Provide a personal tag cloud on your profile page"
 
-#: src/Model/Event.php:1023
-#, php-format
-msgid "Happy Birthday %s"
-msgstr "Happy Birthday, %s!"
+#: src/Content/Feature.php:121
+msgid "Display Membership Date"
+msgstr "Display membership date"
 
-#: src/Model/FileTag.php:255
-msgid "Item filed"
-msgstr "Item filed"
+#: src/Content/Feature.php:121
+msgid "Display membership date in profile"
+msgstr "Display membership date in profile"
 
-#: src/Model/Group.php:47
-msgid ""
-"A deleted group with this name was revived. Existing item permissions "
-"<strong>may</strong> apply to this group and any future members. If this is "
-"not what you intended, please create another group with a different name."
-msgstr "A deleted group with this name has been revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."
+#: src/Content/Nav.php:74
+msgid "Nothing new here"
+msgstr "Nothing new here"
 
-#: src/Model/Group.php:333
-msgid "Default privacy group for new contacts"
-msgstr "Default privacy group for new contacts"
+#: src/Content/Nav.php:78
+msgid "Clear notifications"
+msgstr "Clear notifications"
 
-#: src/Model/Group.php:366
-msgid "Everybody"
-msgstr "Everybody"
+#: src/Content/Nav.php:161
+msgid "Personal notes"
+msgstr "Personal notes"
 
-#: src/Model/Group.php:386
-msgid "edit"
-msgstr "edit"
+#: src/Content/Nav.php:161
+msgid "Your personal notes"
+msgstr "My personal notes"
 
-#: src/Model/Group.php:415
-msgid "Edit group"
-msgstr "Edit group"
+#: src/Content/Nav.php:170
+msgid "Sign in"
+msgstr "Sign in"
 
-#: src/Model/Group.php:418
-msgid "Create a new group"
-msgstr "Create new group"
+#: src/Content/Nav.php:180
+msgid "Home Page"
+msgstr "Home page"
 
-#: src/Model/Group.php:420
-msgid "Edit groups"
-msgstr "Edit groups"
+#: src/Content/Nav.php:184 src/Module/Login.php:293
+#: src/Module/Register.php:136
+msgid "Register"
+msgstr "Sign up now >>"
 
-#: src/Model/Item.php:3267
-msgid "activity"
-msgstr "activity"
+#: src/Content/Nav.php:184
+msgid "Create an account"
+msgstr "Create account"
 
-#: src/Model/Item.php:3269 src/Object/Post.php:446 src/Object/Post.php:458
-msgid "comment"
-msgid_plural "comments"
-msgstr[0] "comment"
-msgstr[1] "comments"
+#: src/Content/Nav.php:190
+msgid "Help and documentation"
+msgstr "Help and documentation"
 
-#: src/Model/Item.php:3272
-msgid "post"
-msgstr "post"
+#: src/Content/Nav.php:194
+msgid "Apps"
+msgstr "Apps"
 
-#: src/Model/Item.php:3368
-#, php-format
-msgid "Content warning: %s"
-msgstr "Content warning: %s"
+#: src/Content/Nav.php:194
+msgid "Addon applications, utilities, games"
+msgstr "Addon applications, utilities, games"
 
-#: src/Model/Item.php:3447
-msgid "bytes"
-msgstr "bytes"
+#: src/Content/Nav.php:198
+msgid "Search site content"
+msgstr "Search site content"
 
-#: src/Model/Item.php:3523
-msgid "View on separate page"
-msgstr "View on separate page"
+#: src/Content/Nav.php:222
+msgid "Community"
+msgstr "Community"
 
-#: src/Model/Item.php:3524
-msgid "view on separate page"
-msgstr "view on separate page"
+#: src/Content/Nav.php:222
+msgid "Conversations on this and other servers"
+msgstr "Conversations on this and other servers"
 
-#: src/Model/Mail.php:40 src/Model/Mail.php:172
-msgid "[no subject]"
-msgstr "[no subject]"
+#: src/Content/Nav.php:229
+msgid "Directory"
+msgstr "Directory"
 
-#: src/Model/Profile.php:114
-msgid "Requested account is not available."
-msgstr "Requested account is unavailable."
+#: src/Content/Nav.php:229
+msgid "People directory"
+msgstr "People directory"
 
-#: src/Model/Profile.php:180 src/Model/Profile.php:416
-#: src/Model/Profile.php:872
-msgid "Edit profile"
-msgstr "Edit profile"
+#: src/Content/Nav.php:231
+msgid "Information about this friendica instance"
+msgstr "Information about this Friendica instance"
 
-#: src/Model/Profile.php:350
-msgid "Atom feed"
-msgstr "Atom feed"
+#: src/Content/Nav.php:234
+msgid "Terms of Service of this Friendica instance"
+msgstr "Terms of Service of this Friendica instance"
 
-#: src/Model/Profile.php:389
-msgid "Manage/edit profiles"
-msgstr "Manage/Edit profiles"
+#: src/Content/Nav.php:240
+msgid "Network Reset"
+msgstr "Network reset"
 
-#: src/Model/Profile.php:441 src/Module/Contact.php:652
-msgid "XMPP:"
-msgstr "XMPP:"
+#: src/Content/Nav.php:240
+msgid "Load Network page with no filters"
+msgstr "Load network page without filters"
 
-#: src/Model/Profile.php:567 src/Model/Profile.php:665
-msgid "g A l F d"
-msgstr "g A l F d"
+#: src/Content/Nav.php:246
+msgid "Friend Requests"
+msgstr "Friend requests"
 
-#: src/Model/Profile.php:568
-msgid "F d"
-msgstr "F d"
+#: src/Content/Nav.php:248
+msgid "See all notifications"
+msgstr "See all notifications"
 
-#: src/Model/Profile.php:630 src/Model/Profile.php:716
-msgid "[today]"
-msgstr "[today]"
+#: src/Content/Nav.php:249
+msgid "Mark all system notifications seen"
+msgstr "Mark notifications as seen"
 
-#: src/Model/Profile.php:641
-msgid "Birthday Reminders"
-msgstr "Birthday reminders"
+#: src/Content/Nav.php:253
+msgid "Inbox"
+msgstr "Inbox"
 
-#: src/Model/Profile.php:642
-msgid "Birthdays this week:"
-msgstr "Birthdays this week:"
+#: src/Content/Nav.php:254
+msgid "Outbox"
+msgstr "Outbox"
 
-#: src/Model/Profile.php:703
-msgid "[No description]"
-msgstr "[No description]"
+#: src/Content/Nav.php:258
+msgid "Manage"
+msgstr "Manage"
 
-#: src/Model/Profile.php:730
-msgid "Event Reminders"
-msgstr "Event reminders"
+#: src/Content/Nav.php:258
+msgid "Manage other pages"
+msgstr "Manage other pages"
 
-#: src/Model/Profile.php:731
-msgid "Upcoming events the next 7 days:"
-msgstr ""
+#: src/Content/Nav.php:266
+msgid "Manage/Edit Profiles"
+msgstr "Manage/Edit profiles"
 
-#: src/Model/Profile.php:754
-msgid "Member since:"
-msgstr "Member since:"
+#: src/Content/Nav.php:274
+msgid "Site setup and configuration"
+msgstr "Site setup and configuration"
 
-#: src/Model/Profile.php:762
-msgid "j F, Y"
-msgstr "j F, Y"
+#: src/Content/Nav.php:277
+msgid "Navigation"
+msgstr "Navigation"
 
-#: src/Model/Profile.php:763
-msgid "j F"
-msgstr "j F"
+#: src/Content/Nav.php:277
+msgid "Site map"
+msgstr "Site map"
 
-#: src/Model/Profile.php:771 src/Util/Temporal.php:149
-msgid "Birthday:"
-msgstr "Birthday:"
+#: src/Content/OEmbed.php:256
+msgid "Embedding disabled"
+msgstr "Embedding disabled"
 
-#: src/Model/Profile.php:778
-msgid "Age:"
-msgstr "Age:"
+#: src/Content/OEmbed.php:379
+msgid "Embedded content"
+msgstr "Embedded content"
 
-#: src/Model/Profile.php:791
-#, php-format
-msgid "for %1$d %2$s"
-msgstr "for %1$d %2$s"
+#: src/Content/Pager.php:153
+msgid "newer"
+msgstr "Later posts"
 
-#: src/Model/Profile.php:815
-msgid "Religion:"
-msgstr "Religion:"
+#: src/Content/Pager.php:158
+msgid "older"
+msgstr "Earlier posts"
 
-#: src/Model/Profile.php:823
-msgid "Hobbies/Interests:"
-msgstr "Hobbies/Interests:"
+#: src/Content/Pager.php:203
+msgid "prev"
+msgstr "prev"
 
-#: src/Model/Profile.php:835
-msgid "Contact information and Social Networks:"
-msgstr "Contact information and social networks:"
+#: src/Content/Pager.php:263
+msgid "last"
+msgstr "last"
 
-#: src/Model/Profile.php:839
-msgid "Musical interests:"
-msgstr "Music:"
+#: src/Content/Widget.php:35
+msgid "Add New Contact"
+msgstr "Add new contact"
 
-#: src/Model/Profile.php:843
-msgid "Books, literature:"
-msgstr "Books/Literature:"
+#: src/Content/Widget.php:36
+msgid "Enter address or web location"
+msgstr "Enter address or web location"
 
-#: src/Model/Profile.php:847
-msgid "Television:"
-msgstr "Television:"
+#: src/Content/Widget.php:37
+msgid "Example: bob@example.com, http://example.com/barbara"
+msgstr "Example: jo@example.com, http://example.com/jo"
 
-#: src/Model/Profile.php:851
-msgid "Film/dance/culture/entertainment:"
-msgstr "Arts, culture, entertainment:"
+#: src/Content/Widget.php:55
+#, php-format
+msgid "%d invitation available"
+msgid_plural "%d invitations available"
+msgstr[0] "%d invitation available"
+msgstr[1] "%d invitations available"
 
-#: src/Model/Profile.php:855
-msgid "Love/Romance:"
-msgstr "Love/Romance:"
+#: src/Content/Widget.php:158
+msgid "Protocols"
+msgstr ""
 
-#: src/Model/Profile.php:859
-msgid "Work/employment:"
-msgstr "Work/Employment:"
+#: src/Content/Widget.php:161
+msgid "All Protocols"
+msgstr ""
 
-#: src/Model/Profile.php:863
-msgid "School/education:"
-msgstr "School/Education:"
+#: src/Content/Widget.php:198
+msgid "Saved Folders"
+msgstr "Saved Folders"
 
-#: src/Model/Profile.php:868
-msgid "Forums:"
-msgstr "Forums:"
+#: src/Content/Widget.php:201 src/Content/Widget.php:243
+msgid "Everything"
+msgstr "Everything"
 
-#: src/Model/Profile.php:912 src/Module/Contact.php:877
-msgid "Profile Details"
-msgstr "Profile Details"
+#: src/Content/Widget.php:240
+msgid "Categories"
+msgstr "Categories"
 
-#: src/Model/Profile.php:962
-msgid "Only You Can See This"
-msgstr "Only you can see this."
+#: src/Content/Widget.php:324
+#, php-format
+msgid "%d contact in common"
+msgid_plural "%d contacts in common"
+msgstr[0] "%d contact in common"
+msgstr[1] "%d contacts in common"
 
-#: src/Model/Profile.php:970 src/Model/Profile.php:973
-msgid "Tips for New Members"
-msgstr "Tips for New Members"
+#: src/Database/DBStructure.php:47
+msgid "There are no tables on MyISAM."
+msgstr "There are no tables on MyISAM."
 
-#: src/Model/Profile.php:1135
+#: src/Database/DBStructure.php:71
 #, php-format
-msgid "OpenWebAuth: %1$s welcomes %2$s"
-msgstr ""
+msgid ""
+"\n"
+"Error %d occurred during database update:\n"
+"%s\n"
+msgstr "\nError %d occurred during database update:\n%s\n"
 
-#: src/Model/User.php:207
-msgid "Login failed"
-msgstr "Login failed"
+#: src/Database/DBStructure.php:74
+msgid "Errors encountered performing database changes: "
+msgstr "Errors encountered performing database changes: "
 
-#: src/Model/User.php:238
-msgid "Not enough information to authenticate"
-msgstr "Not enough information to authenticate"
+#: src/Database/DBStructure.php:263
+#, php-format
+msgid "%s: Database update"
+msgstr "%s: Database update"
 
-#: src/Model/User.php:430
-msgid "An invitation is required."
-msgstr "An invitation is required."
+#: src/Database/DBStructure.php:524
+#, php-format
+msgid "%s: updating %s table."
+msgstr "%s: updating %s table."
 
-#: src/Model/User.php:434
-msgid "Invitation could not be verified."
-msgstr "Invitation could not be verified."
+#: src/Model/Contact.php:1037
+msgid "Drop Contact"
+msgstr "Drop contact"
 
-#: src/Model/User.php:441
-msgid "Invalid OpenID url"
-msgstr "Invalid OpenID URL"
+#: src/Model/Contact.php:1509
+msgid "Organisation"
+msgstr "Organization"
 
-#: src/Model/User.php:454 src/Module/Login.php:108
-msgid ""
-"We encountered a problem while logging in with the OpenID you provided. "
-"Please check the correct spelling of the ID."
-msgstr "We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID."
+#: src/Model/Contact.php:1513
+msgid "News"
+msgstr "News"
 
-#: src/Model/User.php:454 src/Module/Login.php:108
-msgid "The error message was:"
-msgstr "The error message was:"
+#: src/Model/Contact.php:1517
+msgid "Forum"
+msgstr "Forum"
 
-#: src/Model/User.php:460
-msgid "Please enter the required information."
-msgstr "Please enter the required information."
+#: src/Model/Contact.php:1707
+msgid "Connect URL missing."
+msgstr "Connect URL missing."
 
-#: src/Model/User.php:476
-#, php-format
+#: src/Model/Contact.php:1716
 msgid ""
-"system.username_min_length (%s) and system.username_max_length (%s) are "
-"excluding each other, swapping values."
-msgstr ""
-
-#: src/Model/User.php:483
-#, php-format
-msgid "Username should be at least %s character."
-msgid_plural "Username should be at least %s characters."
-msgstr[0] ""
-msgstr[1] ""
+"The contact could not be added. Please check the relevant network "
+"credentials in your Settings -> Social Networks page."
+msgstr "The contact could not be added. Please check the relevant network credentials in your Settings -> Social Networks page."
 
-#: src/Model/User.php:487
-#, php-format
+#: src/Model/Contact.php:1755
+msgid ""
+"This site is not configured to allow communications with other networks."
+msgstr "This site is not configured to allow communications with other networks."
+
+#: src/Model/Contact.php:1756 src/Model/Contact.php:1769
+msgid "No compatible communication protocols or feeds were discovered."
+msgstr "No compatible communication protocols or feeds were discovered."
+
+#: src/Model/Contact.php:1767
+msgid "The profile address specified does not provide adequate information."
+msgstr "The profile address specified does not provide adequate information."
+
+#: src/Model/Contact.php:1772
+msgid "An author or name was not found."
+msgstr "An author or name was not found."
+
+#: src/Model/Contact.php:1775
+msgid "No browser URL could be matched to this address."
+msgstr "No browser URL could be matched to this address."
+
+#: src/Model/Contact.php:1778
+msgid ""
+"Unable to match @-style Identity Address with a known protocol or email "
+"contact."
+msgstr "Unable to match @-style identity address with a known protocol or email contact."
+
+#: src/Model/Contact.php:1779
+msgid "Use mailto: in front of address to force email check."
+msgstr "Use mailto: in front of address to force email check."
+
+#: src/Model/Contact.php:1785
+msgid ""
+"The profile address specified belongs to a network which has been disabled "
+"on this site."
+msgstr "The profile address specified belongs to a network which has been disabled on this site."
+
+#: src/Model/Contact.php:1790
+msgid ""
+"Limited profile. This person will be unable to receive direct/personal "
+"notifications from you."
+msgstr "Limited profile: This person will be unable to receive direct/private messages from you."
+
+#: src/Model/Contact.php:1843
+msgid "Unable to retrieve contact information."
+msgstr "Unable to retrieve contact information."
+
+#: src/Model/Event.php:61 src/Model/Event.php:78 src/Model/Event.php:436
+#: src/Model/Event.php:916
+msgid "Starts:"
+msgstr "Starts:"
+
+#: src/Model/Event.php:64 src/Model/Event.php:84 src/Model/Event.php:437
+#: src/Model/Event.php:920
+msgid "Finishes:"
+msgstr "Finishes:"
+
+#: src/Model/Event.php:386
+msgid "all-day"
+msgstr "All-day"
+
+#: src/Model/Event.php:409
+msgid "Jun"
+msgstr "Jun"
+
+#: src/Model/Event.php:412
+msgid "Sept"
+msgstr "Sep"
+
+#: src/Model/Event.php:434
+msgid "No events to display"
+msgstr "No events to display"
+
+#: src/Model/Event.php:562
+msgid "l, F j"
+msgstr "l, F j"
+
+#: src/Model/Event.php:593
+msgid "Edit event"
+msgstr "Edit event"
+
+#: src/Model/Event.php:594
+msgid "Duplicate event"
+msgstr "Duplicate event"
+
+#: src/Model/Event.php:595
+msgid "Delete event"
+msgstr "Delete event"
+
+#: src/Model/Event.php:627 src/Model/Item.php:3536 src/Model/Item.php:3543
+msgid "link to source"
+msgstr "Link to source"
+
+#: src/Model/Event.php:849
+msgid "D g:i A"
+msgstr "D g:i A"
+
+#: src/Model/Event.php:850
+msgid "g:i A"
+msgstr "g:i A"
+
+#: src/Model/Event.php:935 src/Model/Event.php:937
+msgid "Show map"
+msgstr "Show map"
+
+#: src/Model/Event.php:936
+msgid "Hide map"
+msgstr "Hide map"
+
+#: src/Model/Event.php:1028
+#, php-format
+msgid "%s's birthday"
+msgstr "%s's birthday"
+
+#: src/Model/Event.php:1029
+#, php-format
+msgid "Happy Birthday %s"
+msgstr "Happy Birthday, %s!"
+
+#: src/Model/FileTag.php:256
+msgid "Item filed"
+msgstr "Item filed"
+
+#: src/Model/Group.php:43
+msgid ""
+"A deleted group with this name was revived. Existing item permissions "
+"<strong>may</strong> apply to this group and any future members. If this is "
+"not what you intended, please create another group with a different name."
+msgstr "A deleted group with this name has been revived. Existing item permissions <strong>may</strong> apply to this group and any future members. If this is not what you intended, please create another group with a different name."
+
+#: src/Model/Group.php:338
+msgid "Default privacy group for new contacts"
+msgstr "Default privacy group for new contacts"
+
+#: src/Model/Group.php:370
+msgid "Everybody"
+msgstr "Everybody"
+
+#: src/Model/Group.php:390
+msgid "edit"
+msgstr "edit"
+
+#: src/Model/Group.php:419
+msgid "Edit group"
+msgstr "Edit group"
+
+#: src/Model/Group.php:422
+msgid "Create a new group"
+msgstr "Create new group"
+
+#: src/Model/Group.php:424
+msgid "Edit groups"
+msgstr "Edit groups"
+
+#: src/Model/Item.php:3269
+msgid "activity"
+msgstr "activity"
+
+#: src/Model/Item.php:3271 src/Object/Post.php:457 src/Object/Post.php:469
+msgid "comment"
+msgid_plural "comments"
+msgstr[0] "comment"
+msgstr[1] "comments"
+
+#: src/Model/Item.php:3274
+msgid "post"
+msgstr "post"
+
+#: src/Model/Item.php:3373
+#, php-format
+msgid "Content warning: %s"
+msgstr "Content warning: %s"
+
+#: src/Model/Item.php:3452
+msgid "bytes"
+msgstr "bytes"
+
+#: src/Model/Item.php:3530
+msgid "View on separate page"
+msgstr "View on separate page"
+
+#: src/Model/Item.php:3531
+msgid "view on separate page"
+msgstr "view on separate page"
+
+#: src/Model/Mail.php:40 src/Model/Mail.php:175
+msgid "[no subject]"
+msgstr "[no subject]"
+
+#: src/Model/Profile.php:115
+msgid "Requested account is not available."
+msgstr "Requested account is unavailable."
+
+#: src/Model/Profile.php:133
+msgid "Requested profile is not available."
+msgstr "Requested profile is unavailable."
+
+#: src/Model/Profile.php:181 src/Model/Profile.php:425
+#: src/Model/Profile.php:872
+msgid "Edit profile"
+msgstr "Edit profile"
+
+#: src/Model/Profile.php:359
+msgid "Atom feed"
+msgstr "Atom feed"
+
+#: src/Model/Profile.php:398
+msgid "Manage/edit profiles"
+msgstr "Manage/Edit profiles"
+
+#: src/Model/Profile.php:450 src/Module/Contact.php:645
+msgid "XMPP:"
+msgstr "XMPP:"
+
+#: src/Model/Profile.php:573 src/Model/Profile.php:671
+msgid "g A l F d"
+msgstr "g A l F d"
+
+#: src/Model/Profile.php:574
+msgid "F d"
+msgstr "F d"
+
+#: src/Model/Profile.php:636 src/Model/Profile.php:722
+msgid "[today]"
+msgstr "[today]"
+
+#: src/Model/Profile.php:647
+msgid "Birthday Reminders"
+msgstr "Birthday reminders"
+
+#: src/Model/Profile.php:648
+msgid "Birthdays this week:"
+msgstr "Birthdays this week:"
+
+#: src/Model/Profile.php:709
+msgid "[No description]"
+msgstr "[No description]"
+
+#: src/Model/Profile.php:736
+msgid "Event Reminders"
+msgstr "Event reminders"
+
+#: src/Model/Profile.php:737
+msgid "Upcoming events the next 7 days:"
+msgstr ""
+
+#: src/Model/Profile.php:754
+msgid "Member since:"
+msgstr "Member since:"
+
+#: src/Model/Profile.php:762
+msgid "j F, Y"
+msgstr "j F, Y"
+
+#: src/Model/Profile.php:763
+msgid "j F"
+msgstr "j F"
+
+#: src/Model/Profile.php:778
+msgid "Age:"
+msgstr "Age:"
+
+#: src/Model/Profile.php:791
+#, php-format
+msgid "for %1$d %2$s"
+msgstr "for %1$d %2$s"
+
+#: src/Model/Profile.php:815
+msgid "Religion:"
+msgstr "Religion:"
+
+#: src/Model/Profile.php:823
+msgid "Hobbies/Interests:"
+msgstr "Hobbies/Interests:"
+
+#: src/Model/Profile.php:835
+msgid "Contact information and Social Networks:"
+msgstr "Contact information and social networks:"
+
+#: src/Model/Profile.php:839
+msgid "Musical interests:"
+msgstr "Music:"
+
+#: src/Model/Profile.php:843
+msgid "Books, literature:"
+msgstr "Books/Literature:"
+
+#: src/Model/Profile.php:847
+msgid "Television:"
+msgstr "Television:"
+
+#: src/Model/Profile.php:851
+msgid "Film/dance/culture/entertainment:"
+msgstr "Arts, culture, entertainment:"
+
+#: src/Model/Profile.php:855
+msgid "Love/Romance:"
+msgstr "Love/Romance:"
+
+#: src/Model/Profile.php:859
+msgid "Work/employment:"
+msgstr "Work/Employment:"
+
+#: src/Model/Profile.php:863
+msgid "School/education:"
+msgstr "School/Education:"
+
+#: src/Model/Profile.php:868
+msgid "Forums:"
+msgstr "Forums:"
+
+#: src/Model/Profile.php:912 src/Module/Contact.php:872
+msgid "Profile Details"
+msgstr "Profile Details"
+
+#: src/Model/Profile.php:962
+msgid "Only You Can See This"
+msgstr "Only you can see this."
+
+#: src/Model/Profile.php:970 src/Model/Profile.php:973
+msgid "Tips for New Members"
+msgstr "Tips for New Members"
+
+#: src/Model/Profile.php:1150
+#, php-format
+msgid "OpenWebAuth: %1$s welcomes %2$s"
+msgstr ""
+
+#: src/Model/Storage/Database.php:36
+#, php-format
+msgid "Database storage failed to update %s"
+msgstr ""
+
+#: src/Model/Storage/Database.php:43
+msgid "Database storage failed to insert data"
+msgstr ""
+
+#: src/Model/Storage/Filesystem.php:63
+#, php-format
+msgid "Filesystem storage failed to create \"%s\". Check you write permissions."
+msgstr ""
+
+#: src/Model/Storage/Filesystem.php:105
+#, php-format
+msgid ""
+"Filesystem storage failed to save data to \"%s\". Check your write "
+"permissions"
+msgstr ""
+
+#: src/Model/Storage/Filesystem.php:126
+msgid "Storage base path"
+msgstr ""
+
+#: src/Model/Storage/Filesystem.php:128
+msgid ""
+"Folder where uploaded files are saved. For maximum security, This should be "
+"a path outside web server folder tree"
+msgstr ""
+
+#: src/Model/Storage/Filesystem.php:138
+msgid "Enter a valid existing folder"
+msgstr ""
+
+#: src/Model/User.php:270
+msgid "Login failed"
+msgstr "Login failed"
+
+#: src/Model/User.php:301
+msgid "Not enough information to authenticate"
+msgstr "Not enough information to authenticate"
+
+#: src/Model/User.php:379
+msgid "Password can't be empty"
+msgstr "Password can't be empty"
+
+#: src/Model/User.php:398
+msgid "Empty passwords are not allowed."
+msgstr ""
+
+#: src/Model/User.php:402
+msgid ""
+"The new password has been exposed in a public data dump, please choose "
+"another."
+msgstr "The new password has been exposed in a public data dump; please choose another."
+
+#: src/Model/User.php:408
+msgid ""
+"The password can't contain accentuated letters, white spaces or colons (:)"
+msgstr ""
+
+#: src/Model/User.php:508
+msgid "Passwords do not match. Password unchanged."
+msgstr "Passwords do not match. Password unchanged."
+
+#: src/Model/User.php:515
+msgid "An invitation is required."
+msgstr "An invitation is required."
+
+#: src/Model/User.php:519
+msgid "Invitation could not be verified."
+msgstr "Invitation could not be verified."
+
+#: src/Model/User.php:526
+msgid "Invalid OpenID url"
+msgstr "Invalid OpenID URL"
+
+#: src/Model/User.php:539 src/Module/Login.php:106
+msgid ""
+"We encountered a problem while logging in with the OpenID you provided. "
+"Please check the correct spelling of the ID."
+msgstr "We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID."
+
+#: src/Model/User.php:539 src/Module/Login.php:106
+msgid "The error message was:"
+msgstr "The error message was:"
+
+#: src/Model/User.php:545
+msgid "Please enter the required information."
+msgstr "Please enter the required information."
+
+#: src/Model/User.php:559
+#, php-format
+msgid ""
+"system.username_min_length (%s) and system.username_max_length (%s) are "
+"excluding each other, swapping values."
+msgstr ""
+
+#: src/Model/User.php:566
+#, php-format
+msgid "Username should be at least %s character."
+msgid_plural "Username should be at least %s characters."
+msgstr[0] ""
+msgstr[1] ""
+
+#: src/Model/User.php:570
+#, php-format
 msgid "Username should be at most %s character."
 msgid_plural "Username should be at most %s characters."
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/Model/User.php:495
+#: src/Model/User.php:578
 msgid "That doesn't appear to be your full (First Last) name."
 msgstr "That doesn't appear to be your full (i.e first and last) name."
 
-#: src/Model/User.php:500
+#: src/Model/User.php:583
 msgid "Your email domain is not among those allowed on this site."
 msgstr "Your email domain is not allowed on this site."
 
-#: src/Model/User.php:504
+#: src/Model/User.php:587
 msgid "Not a valid email address."
 msgstr "Not a valid email address."
 
-#: src/Model/User.php:507
+#: src/Model/User.php:590
 msgid "The nickname was blocked from registration by the nodes admin."
 msgstr ""
 
-#: src/Model/User.php:511 src/Model/User.php:519
+#: src/Model/User.php:594 src/Model/User.php:602
 msgid "Cannot use that email."
 msgstr "Cannot use that email."
 
-#: src/Model/User.php:526
+#: src/Model/User.php:609
 msgid "Your nickname can only contain a-z, 0-9 and _."
 msgstr "Your nickname can only contain a-z, 0-9 and _."
 
-#: src/Model/User.php:533 src/Model/User.php:590
+#: src/Model/User.php:616 src/Model/User.php:673
 msgid "Nickname is already registered. Please choose another."
 msgstr "Nickname is already registered. Please choose another."
 
-#: src/Model/User.php:543
+#: src/Model/User.php:626
 msgid "SERIOUS ERROR: Generation of security keys failed."
 msgstr "SERIOUS ERROR: Generation of security keys failed."
 
-#: src/Model/User.php:577 src/Model/User.php:581
+#: src/Model/User.php:660 src/Model/User.php:664
 msgid "An error occurred during registration. Please try again."
 msgstr "An error occurred during registration. Please try again."
 
-#: src/Model/User.php:601 view/theme/duepuntozero/config.php:55
-msgid "default"
-msgstr "default"
-
-#: src/Model/User.php:606
+#: src/Model/User.php:689
 msgid "An error occurred creating your default profile. Please try again."
 msgstr "An error occurred creating your default profile. Please try again."
 
-#: src/Model/User.php:613
+#: src/Model/User.php:696
 msgid "An error occurred creating your self contact. Please try again."
 msgstr "An error occurred creating your self contact. Please try again."
 
-#: src/Model/User.php:622
+#: src/Model/User.php:705
 msgid ""
 "An error occurred creating your default contact group. Please try again."
 msgstr "An error occurred while creating your default contact group. Please try again."
 
-#: src/Model/User.php:697
+#: src/Model/User.php:781
 #, php-format
 msgid ""
 "\n"
@@ -8703,12 +8992,12 @@ msgid ""
 "\t\t"
 msgstr ""
 
-#: src/Model/User.php:714
+#: src/Model/User.php:798
 #, php-format
 msgid "Registration at %s"
 msgstr "Registration at %s"
 
-#: src/Model/User.php:732
+#: src/Model/User.php:817
 #, php-format
 msgid ""
 "\n"
@@ -8717,7 +9006,7 @@ msgid ""
 "\t\t"
 msgstr "\n\t\t\tDear %1$s,\n\t\t\t\tThank you for registering at %2$s. Your account has been created.\n\t\t"
 
-#: src/Model/User.php:738
+#: src/Model/User.php:823
 #, php-format
 msgid ""
 "\n"
@@ -8749,460 +9038,510 @@ msgid ""
 "\t\t\tThank you and welcome to %2$s."
 msgstr "\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%3$s\n\t\t\tLogin Name:\t\t%1$s\n\t\t\tPassword:\t\t%5$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %3$s/removeme\n\n\t\t\tThank you and welcome to %2$s."
 
-#: src/Module/Contact.php:171
+#: src/Protocol/Diaspora.php:2496
+msgid "Sharing notification from Diaspora network"
+msgstr "Sharing notification from Diaspora network"
+
+#: src/Protocol/Diaspora.php:3613
+msgid "Attachments:"
+msgstr "Attachments:"
+
+#: src/Protocol/OStatus.php:1302 src/Module/Profile.php:102
+#: src/Module/Profile.php:105
+#, php-format
+msgid "%s's timeline"
+msgstr "%s's timeline"
+
+#: src/Protocol/OStatus.php:1306 src/Module/Profile.php:103
+#, php-format
+msgid "%s's posts"
+msgstr "%s's posts"
+
+#: src/Protocol/OStatus.php:1309 src/Module/Profile.php:104
+#, php-format
+msgid "%s's comments"
+msgstr "%s's comments"
+
+#: src/Protocol/OStatus.php:1866
+#, php-format
+msgid "%s is now following %s."
+msgstr "%s is now following %s."
+
+#: src/Protocol/OStatus.php:1867
+msgid "following"
+msgstr "following"
+
+#: src/Protocol/OStatus.php:1870
+#, php-format
+msgid "%s stopped following %s."
+msgstr "%s stopped following %s."
+
+#: src/Protocol/OStatus.php:1871
+msgid "stopped following"
+msgstr "stopped following"
+
+#: src/Worker/Delivery.php:453
+msgid "(no subject)"
+msgstr "(no subject)"
+
+#: src/Module/Attach.php:36 src/Module/Attach.php:48
+msgid "Item was not found."
+msgstr "Item was not found."
+
+#: src/Module/Contact.php:166
 #, php-format
 msgid "%d contact edited."
 msgid_plural "%d contacts edited."
 msgstr[0] "%d contact edited."
 msgstr[1] "%d contacts edited."
 
-#: src/Module/Contact.php:196 src/Module/Contact.php:379
+#: src/Module/Contact.php:191 src/Module/Contact.php:374
 msgid "Could not access contact record."
 msgstr "Could not access contact record."
 
-#: src/Module/Contact.php:206
+#: src/Module/Contact.php:201
 msgid "Could not locate selected profile."
 msgstr "Could not locate selected profile."
 
-#: src/Module/Contact.php:238
+#: src/Module/Contact.php:233
 msgid "Contact updated."
 msgstr "Contact updated."
 
-#: src/Module/Contact.php:400
+#: src/Module/Contact.php:395
 msgid "Contact has been blocked"
 msgstr "Contact has been blocked"
 
-#: src/Module/Contact.php:400
+#: src/Module/Contact.php:395
 msgid "Contact has been unblocked"
 msgstr "Contact has been unblocked"
 
-#: src/Module/Contact.php:410
+#: src/Module/Contact.php:405
 msgid "Contact has been ignored"
 msgstr "Contact has been ignored"
 
-#: src/Module/Contact.php:410
+#: src/Module/Contact.php:405
 msgid "Contact has been unignored"
 msgstr "Contact has been unignored"
 
-#: src/Module/Contact.php:420
+#: src/Module/Contact.php:415
 msgid "Contact has been archived"
 msgstr "Contact has been archived"
 
-#: src/Module/Contact.php:420
+#: src/Module/Contact.php:415
 msgid "Contact has been unarchived"
 msgstr "Contact has been unarchived"
 
-#: src/Module/Contact.php:444
+#: src/Module/Contact.php:439
 msgid "Drop contact"
 msgstr "Drop contact"
 
-#: src/Module/Contact.php:447 src/Module/Contact.php:825
+#: src/Module/Contact.php:442 src/Module/Contact.php:820
 msgid "Do you really want to delete this contact?"
 msgstr "Do you really want to delete this contact?"
 
-#: src/Module/Contact.php:461
+#: src/Module/Contact.php:456
 msgid "Contact has been removed."
 msgstr "Contact has been removed."
 
-#: src/Module/Contact.php:492
+#: src/Module/Contact.php:486
 #, php-format
 msgid "You are mutual friends with %s"
 msgstr "You are mutual friends with %s"
 
-#: src/Module/Contact.php:497
+#: src/Module/Contact.php:491
 #, php-format
 msgid "You are sharing with %s"
 msgstr "You are sharing with %s"
 
-#: src/Module/Contact.php:502
+#: src/Module/Contact.php:496
 #, php-format
 msgid "%s is sharing with you"
 msgstr "%s is sharing with you"
 
-#: src/Module/Contact.php:526
+#: src/Module/Contact.php:520
 msgid "Private communications are not available for this contact."
 msgstr "Private communications are not available for this contact."
 
-#: src/Module/Contact.php:528
+#: src/Module/Contact.php:522
 msgid "Never"
 msgstr "Never"
 
-#: src/Module/Contact.php:531
+#: src/Module/Contact.php:525
 msgid "(Update was successful)"
 msgstr "(Update was successful)"
 
-#: src/Module/Contact.php:531
+#: src/Module/Contact.php:525
 msgid "(Update was not successful)"
 msgstr "(Update was not successful)"
 
-#: src/Module/Contact.php:533 src/Module/Contact.php:1063
+#: src/Module/Contact.php:527 src/Module/Contact.php:1058
 msgid "Suggest friends"
 msgstr "Suggest friends"
 
-#: src/Module/Contact.php:537
+#: src/Module/Contact.php:531
 #, php-format
 msgid "Network type: %s"
 msgstr "Network type: %s"
 
-#: src/Module/Contact.php:542
+#: src/Module/Contact.php:536
 msgid "Communications lost with this contact!"
 msgstr "Communications lost with this contact!"
 
-#: src/Module/Contact.php:548
+#: src/Module/Contact.php:542
 msgid "Fetch further information for feeds"
 msgstr "Fetch further information for feeds"
 
-#: src/Module/Contact.php:550
+#: src/Module/Contact.php:544
 msgid ""
 "Fetch information like preview pictures, title and teaser from the feed "
 "item. You can activate this if the feed doesn't contain much text. Keywords "
 "are taken from the meta header in the feed item and are posted as hash tags."
 msgstr "Fetch information like preview pictures, title, and teaser from the feed item. You can activate this if the feed doesn't contain much text. Keywords are taken from the meta header in the feed item and are posted as hash tags."
 
-#: src/Module/Contact.php:553
+#: src/Module/Contact.php:547
 msgid "Fetch information"
 msgstr "Fetch information"
 
-#: src/Module/Contact.php:554
+#: src/Module/Contact.php:548
 msgid "Fetch keywords"
 msgstr "Fetch keywords"
 
-#: src/Module/Contact.php:555
+#: src/Module/Contact.php:549
 msgid "Fetch information and keywords"
 msgstr "Fetch information and keywords"
 
-#: src/Module/Contact.php:587
+#: src/Module/Contact.php:581
 msgid "Profile Visibility"
 msgstr "Profile visibility"
 
-#: src/Module/Contact.php:588
+#: src/Module/Contact.php:582
 msgid "Contact Information / Notes"
 msgstr "Personal note"
 
-#: src/Module/Contact.php:589
+#: src/Module/Contact.php:583
 msgid "Contact Settings"
 msgstr "Notification and privacy "
 
-#: src/Module/Contact.php:598
+#: src/Module/Contact.php:592
 msgid "Contact"
 msgstr "Contact"
 
-#: src/Module/Contact.php:602
+#: src/Module/Contact.php:596
 #, php-format
 msgid ""
 "Please choose the profile you would like to display to %s when viewing your "
 "profile securely."
 msgstr "Please choose the profile you would like to display to %s when viewing your profile securely."
 
-#: src/Module/Contact.php:604
+#: src/Module/Contact.php:598
 msgid "Their personal note"
 msgstr "Their personal note"
 
-#: src/Module/Contact.php:606
+#: src/Module/Contact.php:600
 msgid "Edit contact notes"
 msgstr "Edit contact notes"
 
-#: src/Module/Contact.php:610
+#: src/Module/Contact.php:604
 msgid "Block/Unblock contact"
 msgstr "Block/Unblock contact"
 
-#: src/Module/Contact.php:611
+#: src/Module/Contact.php:605
 msgid "Ignore contact"
 msgstr "Ignore contact"
 
-#: src/Module/Contact.php:612
+#: src/Module/Contact.php:606
 msgid "Repair URL settings"
 msgstr "Repair URL settings"
 
-#: src/Module/Contact.php:613
+#: src/Module/Contact.php:607
 msgid "View conversations"
 msgstr "View conversations"
 
-#: src/Module/Contact.php:618
+#: src/Module/Contact.php:612
 msgid "Last update:"
 msgstr "Last update:"
 
-#: src/Module/Contact.php:620
+#: src/Module/Contact.php:614
 msgid "Update public posts"
 msgstr "Update public posts"
 
-#: src/Module/Contact.php:622 src/Module/Contact.php:1073
+#: src/Module/Contact.php:616 src/Module/Contact.php:1068
 msgid "Update now"
 msgstr "Update now"
 
-#: src/Module/Contact.php:628 src/Module/Contact.php:830
-#: src/Module/Contact.php:1090
+#: src/Module/Contact.php:622 src/Module/Contact.php:825
+#: src/Module/Contact.php:1085
 msgid "Unignore"
 msgstr "Unignore"
 
-#: src/Module/Contact.php:632
+#: src/Module/Contact.php:626
 msgid "Currently blocked"
 msgstr "Currently blocked"
 
-#: src/Module/Contact.php:633
+#: src/Module/Contact.php:627
 msgid "Currently ignored"
 msgstr "Currently ignored"
 
-#: src/Module/Contact.php:634
+#: src/Module/Contact.php:628
 msgid "Currently archived"
 msgstr "Currently archived"
 
-#: src/Module/Contact.php:635
+#: src/Module/Contact.php:629
 msgid "Awaiting connection acknowledge"
 msgstr "Awaiting connection acknowledgement"
 
-#: src/Module/Contact.php:636
+#: src/Module/Contact.php:630
 msgid ""
 "Replies/likes to your public posts <strong>may</strong> still be visible"
 msgstr "Replies/Likes to your public posts <strong>may</strong> still be visible"
 
-#: src/Module/Contact.php:637
+#: src/Module/Contact.php:631
 msgid "Notification for new posts"
 msgstr "Notification for new posts"
 
-#: src/Module/Contact.php:637
+#: src/Module/Contact.php:631
 msgid "Send a notification of every new post of this contact"
 msgstr "Send notification for every new post from this contact"
 
-#: src/Module/Contact.php:640
+#: src/Module/Contact.php:633
 msgid "Blacklisted keywords"
 msgstr "Blacklisted keywords"
 
-#: src/Module/Contact.php:640
+#: src/Module/Contact.php:633
 msgid ""
 "Comma separated list of keywords that should not be converted to hashtags, "
 "when \"Fetch information and keywords\" is selected"
 msgstr "Comma-separated list of keywords that should not be converted to hashtags, when \"Fetch information and keywords\" is selected"
 
-#: src/Module/Contact.php:657
+#: src/Module/Contact.php:650
 msgid "Actions"
 msgstr "Actions"
 
-#: src/Module/Contact.php:703
+#: src/Module/Contact.php:696
 msgid "Suggestions"
 msgstr "Suggestions"
 
-#: src/Module/Contact.php:706
+#: src/Module/Contact.php:699
 msgid "Suggest potential friends"
 msgstr "Suggest potential friends"
 
-#: src/Module/Contact.php:714
+#: src/Module/Contact.php:707
 msgid "Show all contacts"
 msgstr "Show all contacts"
 
-#: src/Module/Contact.php:719
+#: src/Module/Contact.php:712
 msgid "Unblocked"
 msgstr "Unblocked"
 
-#: src/Module/Contact.php:722
+#: src/Module/Contact.php:715
 msgid "Only show unblocked contacts"
 msgstr "Only show unblocked contacts"
 
-#: src/Module/Contact.php:727
+#: src/Module/Contact.php:720
 msgid "Blocked"
 msgstr "Blocked"
 
-#: src/Module/Contact.php:730
+#: src/Module/Contact.php:723
 msgid "Only show blocked contacts"
 msgstr "Only show blocked contacts"
 
-#: src/Module/Contact.php:735
+#: src/Module/Contact.php:728
 msgid "Ignored"
 msgstr "Ignored"
 
-#: src/Module/Contact.php:738
+#: src/Module/Contact.php:731
 msgid "Only show ignored contacts"
 msgstr "Only show ignored contacts"
 
-#: src/Module/Contact.php:743
+#: src/Module/Contact.php:736
 msgid "Archived"
 msgstr "Archived"
 
-#: src/Module/Contact.php:746
+#: src/Module/Contact.php:739
 msgid "Only show archived contacts"
 msgstr "Only show archived contacts"
 
-#: src/Module/Contact.php:751
+#: src/Module/Contact.php:744
 msgid "Hidden"
 msgstr "Hidden"
 
-#: src/Module/Contact.php:754
+#: src/Module/Contact.php:747
 msgid "Only show hidden contacts"
 msgstr "Only show hidden contacts"
 
-#: src/Module/Contact.php:762
+#: src/Module/Contact.php:755
 msgid "Organize your contact groups"
 msgstr ""
 
-#: src/Module/Contact.php:820
+#: src/Module/Contact.php:815
 msgid "Search your contacts"
 msgstr "Search your contacts"
 
-#: src/Module/Contact.php:831 src/Module/Contact.php:1099
+#: src/Module/Contact.php:826 src/Module/Contact.php:1094
 msgid "Archive"
 msgstr "Archive"
 
-#: src/Module/Contact.php:831 src/Module/Contact.php:1099
+#: src/Module/Contact.php:826 src/Module/Contact.php:1094
 msgid "Unarchive"
 msgstr "Unarchive"
 
-#: src/Module/Contact.php:834
+#: src/Module/Contact.php:829
 msgid "Batch Actions"
 msgstr "Batch actions"
 
-#: src/Module/Contact.php:861
+#: src/Module/Contact.php:856
 msgid "Conversations started by this contact"
 msgstr ""
 
-#: src/Module/Contact.php:866
+#: src/Module/Contact.php:861
 msgid "Posts and Comments"
 msgstr ""
 
-#: src/Module/Contact.php:889
+#: src/Module/Contact.php:884
 msgid "View all contacts"
 msgstr "View all contacts"
 
-#: src/Module/Contact.php:900
+#: src/Module/Contact.php:895
 msgid "View all common friends"
 msgstr "View all common friends"
 
-#: src/Module/Contact.php:910
+#: src/Module/Contact.php:905
 msgid "Advanced Contact Settings"
 msgstr "Advanced contact settings"
 
-#: src/Module/Contact.php:996
+#: src/Module/Contact.php:991
 msgid "Mutual Friendship"
 msgstr "Mutual friendship"
 
-#: src/Module/Contact.php:1001
+#: src/Module/Contact.php:996
 msgid "is a fan of yours"
 msgstr "is a fan of yours"
 
-#: src/Module/Contact.php:1006
+#: src/Module/Contact.php:1001
 msgid "you are a fan of"
 msgstr "I follow them"
 
-#: src/Module/Contact.php:1030
+#: src/Module/Contact.php:1025
 msgid "Edit contact"
 msgstr "Edit contact"
 
-#: src/Module/Contact.php:1084
+#: src/Module/Contact.php:1079
 msgid "Toggle Blocked status"
 msgstr "Toggle blocked status"
 
-#: src/Module/Contact.php:1092
+#: src/Module/Contact.php:1087
 msgid "Toggle Ignored status"
 msgstr "Toggle ignored status"
 
-#: src/Module/Contact.php:1101
+#: src/Module/Contact.php:1096
 msgid "Toggle Archive status"
 msgstr "Toggle archive status"
 
-#: src/Module/Contact.php:1109
+#: src/Module/Contact.php:1104
 msgid "Delete contact"
 msgstr "Delete contact"
 
-#: src/Module/Install.php:120
+#: src/Module/Install.php:118
 msgid "Friendica Communications Server - Setup"
 msgstr ""
 
-#: src/Module/Install.php:131
+#: src/Module/Install.php:129
 msgid "System check"
 msgstr "System check"
 
-#: src/Module/Install.php:136
+#: src/Module/Install.php:134
 msgid "Check again"
 msgstr "Check again"
 
-#: src/Module/Install.php:153
+#: src/Module/Install.php:151
 msgid "Database connection"
 msgstr "Database connection"
 
-#: src/Module/Install.php:154
+#: src/Module/Install.php:152
 msgid ""
 "In order to install Friendica we need to know how to connect to your "
 "database."
 msgstr "In order to install Friendica we need to know how to connect to your database."
 
-#: src/Module/Install.php:155
+#: src/Module/Install.php:153
 msgid ""
 "Please contact your hosting provider or site administrator if you have "
 "questions about these settings."
 msgstr "Please contact your hosting provider or site administrator if you have questions about these settings."
 
-#: src/Module/Install.php:156
+#: src/Module/Install.php:154
 msgid ""
 "The database you specify below should already exist. If it does not, please "
 "create it before continuing."
 msgstr "The database you specify below should already exist. If it does not, please create it before continuing."
 
-#: src/Module/Install.php:159
+#: src/Module/Install.php:157
 msgid "Database Server Name"
 msgstr "Database server name"
 
-#: src/Module/Install.php:164
+#: src/Module/Install.php:162
 msgid "Database Login Name"
 msgstr "Database login name"
 
-#: src/Module/Install.php:170
+#: src/Module/Install.php:168
 msgid "Database Login Password"
 msgstr "Database login password"
 
-#: src/Module/Install.php:172
+#: src/Module/Install.php:170
 msgid "For security reasons the password must not be empty"
 msgstr "For security reasons the password must not be empty"
 
-#: src/Module/Install.php:175
+#: src/Module/Install.php:173
 msgid "Database Name"
 msgstr "Database name"
 
-#: src/Module/Install.php:180 src/Module/Install.php:216
+#: src/Module/Install.php:178 src/Module/Install.php:214
 msgid "Site administrator email address"
 msgstr "Site administrator email address"
 
-#: src/Module/Install.php:182 src/Module/Install.php:216
+#: src/Module/Install.php:180 src/Module/Install.php:214
 msgid ""
 "Your account email address must match this in order to use the web admin "
 "panel."
 msgstr "Your account email address must match this in order to use the web admin panel."
 
-#: src/Module/Install.php:186 src/Module/Install.php:217
+#: src/Module/Install.php:184 src/Module/Install.php:215
 msgid "Please select a default timezone for your website"
 msgstr "Please select a default time zone for your website"
 
-#: src/Module/Install.php:210
+#: src/Module/Install.php:208
 msgid "Site settings"
 msgstr "Site settings"
 
-#: src/Module/Install.php:219
+#: src/Module/Install.php:217
 msgid "System Language:"
 msgstr "System language:"
 
-#: src/Module/Install.php:221
+#: src/Module/Install.php:219
 msgid ""
 "Set the default language for your Friendica installation interface and to "
 "send emails."
 msgstr "Set the default language for your Friendica installation interface and email communication."
 
-#: src/Module/Install.php:233
+#: src/Module/Install.php:231
 msgid "Your Friendica site database has been installed."
 msgstr "Your Friendica site database has been installed."
 
-#: src/Module/Install.php:241
+#: src/Module/Install.php:239
 msgid "Installation finished"
 msgstr ""
 
-#: src/Module/Install.php:262
+#: src/Module/Install.php:261
 msgid "<h1>What next</h1>"
 msgstr "<h1>What next</h1>"
 
-#: src/Module/Install.php:263
+#: src/Module/Install.php:262
 msgid ""
 "IMPORTANT: You will need to [manually] setup a scheduled task for the "
 "worker."
 msgstr "IMPORTANT: You will need to [manually] setup a scheduled task for the worker."
 
-#: src/Module/Install.php:266
+#: src/Module/Install.php:265
 #, php-format
 msgid ""
 "Go to your new Friendica node <a href=\"%s/register\">registration page</a> "
@@ -9210,7 +9549,7 @@ msgid ""
 " administrator email. This will allow you to enter the site admin panel."
 msgstr "Go to your new Friendica node <a href=\"%s/register\">registration page</a> and register as new user. Remember to use the same email you have entered as administrator email. This will allow you to enter the site admin panel."
 
-#: src/Module/Itemsource.php:33
+#: src/Module/Itemsource.php:41
 msgid "Item Guid"
 msgstr ""
 
@@ -9250,442 +9589,298 @@ msgstr "Website Privacy Policy"
 msgid "privacy policy"
 msgstr "Privacy policy"
 
-#: src/Module/Logout.php:29
+#: src/Module/Logout.php:27
 msgid "Logged out."
 msgstr "Logged out."
 
-#: src/Module/Proxy.php:136
+#: src/Module/Proxy.php:73
 msgid "Bad Request."
 msgstr ""
 
-#: src/Module/Tos.php:35 src/Module/Tos.php:75
-msgid ""
-"At the time of registration, and for providing communications between the "
-"user account and their contacts, the user has to provide a display name (pen"
-" name), an username (nickname) and a working email address. The names will "
-"be accessible on the profile page of the account by any visitor of the page,"
-" even if other profile details are not displayed. The email address will "
-"only be used to send the user notifications about interactions, but wont be "
-"visibly displayed. The listing of an account in the node's user directory or"
-" the global user directory is optional and can be controlled in the user "
-"settings, it is not necessary for communication."
-msgstr "At the time of registration, and for providing communications between the user account and their contacts, the user has to provide a display name (pen name), a username (nickname) and a working email address. The names will be accessible on the profile page of the account by any visitor of the page, even if other profile details are not displayed. The email address will only be used to send the user notifications about interactions, but won’t be visibly displayed. The listing of an account in the node's user directory or the global user directory is optional and can be controlled in the user settings, it is not necessary for communication."
-
-#: src/Module/Tos.php:36 src/Module/Tos.php:76
+#: src/Module/Register.php:83
 msgid ""
-"This data is required for communication and is passed on to the nodes of the"
-" communication partners and is stored there. Users can enter additional "
-"private data that may be transmitted to the communication partners accounts."
-msgstr "This information is required for communication and is passed on to the nodes of the communication partners and is stored there. Users can enter additional personal information that may be transmitted to the communication partner's accounts."
-
-#: src/Module/Tos.php:37 src/Module/Tos.php:77
-#, php-format
-msgid ""
-"At any point in time a logged in user can export their account data from the"
-" <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants "
-"to delete their account they can do so at <a "
-"href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will "
-"be permanent. Deletion of the data will also be requested from the nodes of "
-"the communication partners."
-msgstr "At any point in time a logged in user can export their account data from the <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants to delete their account they can do so at <a href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners."
-
-#: src/Module/Tos.php:40 src/Module/Tos.php:74
-msgid "Privacy Statement"
-msgstr "Privacy Statement"
-
-#: src/Object/Post.php:134
-msgid "This entry was edited"
-msgstr "This entry was edited"
-
-#: src/Object/Post.php:197
-msgid "Delete locally"
-msgstr ""
-
-#: src/Object/Post.php:200
-msgid "Delete globally"
-msgstr ""
-
-#: src/Object/Post.php:200
-msgid "Remove locally"
+"You may (optionally) fill in this form via OpenID by supplying your OpenID "
+"and clicking \"Register\"."
 msgstr ""
 
-#: src/Object/Post.php:214
-msgid "save to folder"
-msgstr "Save to folder"
-
-#: src/Object/Post.php:249
-msgid "I will attend"
-msgstr "I will attend"
-
-#: src/Object/Post.php:249
-msgid "I will not attend"
-msgstr "I will not attend"
-
-#: src/Object/Post.php:249
-msgid "I might attend"
-msgstr "I might attend"
-
-#: src/Object/Post.php:277
-msgid "ignore thread"
-msgstr "Ignore thread"
-
-#: src/Object/Post.php:278
-msgid "unignore thread"
-msgstr "Unignore thread"
-
-#: src/Object/Post.php:279
-msgid "toggle ignore status"
-msgstr "Toggle ignore status"
-
-#: src/Object/Post.php:290
-msgid "add star"
-msgstr "Add star"
-
-#: src/Object/Post.php:291
-msgid "remove star"
-msgstr "Remove star"
-
-#: src/Object/Post.php:292
-msgid "toggle star status"
-msgstr "Toggle star status"
-
-#: src/Object/Post.php:295
-msgid "starred"
-msgstr "Starred"
-
-#: src/Object/Post.php:299
-msgid "add tag"
-msgstr "Add tag"
-
-#: src/Object/Post.php:310
-msgid "like"
-msgstr "Like"
-
-#: src/Object/Post.php:311
-msgid "dislike"
-msgstr "Dislike"
-
-#: src/Object/Post.php:314
-msgid "Share this"
-msgstr "Share this"
-
-#: src/Object/Post.php:314
-msgid "share"
-msgstr "Share"
+#: src/Module/Register.php:84
+msgid ""
+"If you are not familiar with OpenID, please leave that field blank and fill "
+"in the rest of the items."
+msgstr "If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."
 
-#: src/Object/Post.php:381
-msgid "to"
-msgstr "to"
+#: src/Module/Register.php:85
+msgid "Your OpenID (optional): "
+msgstr "Your OpenID (optional): "
 
-#: src/Object/Post.php:382
-msgid "via"
-msgstr "via"
+#: src/Module/Register.php:94
+msgid "Include your profile in member directory?"
+msgstr "Include your profile in member directory?"
 
-#: src/Object/Post.php:383
-msgid "Wall-to-Wall"
-msgstr "Wall-to-wall"
+#: src/Module/Register.php:117
+msgid "Note for the admin"
+msgstr "Note for the admin"
 
-#: src/Object/Post.php:384
-msgid "via Wall-To-Wall:"
-msgstr "via wall-to-wall:"
+#: src/Module/Register.php:117
+msgid "Leave a message for the admin, why you want to join this node"
+msgstr "Leave a message for the admin. Why do you want to join this node?"
 
-#: src/Object/Post.php:444
-#, php-format
-msgid "%d comment"
-msgid_plural "%d comments"
-msgstr[0] "%d comment"
-msgstr[1] "%d comments -"
+#: src/Module/Register.php:118
+msgid "Membership on this site is by invitation only."
+msgstr "Membership on this site is by invitation only."
 
-#: src/Protocol/Diaspora.php:2434
-msgid "Sharing notification from Diaspora network"
-msgstr "Sharing notification from Diaspora network"
+#: src/Module/Register.php:119
+msgid "Your invitation code: "
+msgstr "Your invitation code: "
 
-#: src/Protocol/Diaspora.php:3528
-msgid "Attachments:"
-msgstr "Attachments:"
+#: src/Module/Register.php:127
+msgid "Your Full Name (e.g. Joe Smith, real or real-looking): "
+msgstr "Your full name: "
 
-#: src/Protocol/OStatus.php:1839
-#, php-format
-msgid "%s is now following %s."
-msgstr "%s is now following %s."
+#: src/Module/Register.php:128
+msgid ""
+"Your Email Address: (Initial information will be send there, so this has to "
+"be an existing address.)"
+msgstr "Your Email Address: (Initial information will be sent there, so this must be an existing address.)"
 
-#: src/Protocol/OStatus.php:1840
-msgid "following"
-msgstr "following"
+#: src/Module/Register.php:130
+msgid "Leave empty for an auto generated password."
+msgstr "Leave empty for an auto generated password."
 
-#: src/Protocol/OStatus.php:1843
+#: src/Module/Register.php:132
 #, php-format
-msgid "%s stopped following %s."
-msgstr "%s stopped following %s."
-
-#: src/Protocol/OStatus.php:1844
-msgid "stopped following"
-msgstr "stopped following"
-
-#: src/Util/Temporal.php:153
-msgid "YYYY-MM-DD or MM-DD"
-msgstr "YYYY-MM-DD or MM-DD"
-
-#: src/Util/Temporal.php:296
-msgid "never"
-msgstr "never"
-
-#: src/Util/Temporal.php:303
-msgid "less than a second ago"
-msgstr "less than a second ago"
-
-#: src/Util/Temporal.php:311
-msgid "year"
-msgstr "year"
-
-#: src/Util/Temporal.php:311
-msgid "years"
-msgstr "years"
-
-#: src/Util/Temporal.php:312
-msgid "months"
-msgstr "months"
-
-#: src/Util/Temporal.php:313
-msgid "weeks"
-msgstr "weeks"
-
-#: src/Util/Temporal.php:314
-msgid "days"
-msgstr "days"
-
-#: src/Util/Temporal.php:315
-msgid "hour"
-msgstr "hour"
-
-#: src/Util/Temporal.php:315
-msgid "hours"
-msgstr "hours"
-
-#: src/Util/Temporal.php:316
-msgid "minute"
-msgstr "minute"
-
-#: src/Util/Temporal.php:316
-msgid "minutes"
-msgstr "minutes"
+msgid ""
+"Choose a profile nickname. This must begin with a text character. Your "
+"profile address on this site will then be \"<strong>nickname@%s</strong>\"."
+msgstr ""
 
-#: src/Util/Temporal.php:317
-msgid "second"
-msgstr "second"
+#: src/Module/Register.php:133
+msgid "Choose a nickname: "
+msgstr "Choose a nickname: "
 
-#: src/Util/Temporal.php:317
-msgid "seconds"
-msgstr "seconds"
+#: src/Module/Register.php:142
+msgid "Import your profile to this friendica instance"
+msgstr "Import an existing Friendica profile to this node."
 
-#: src/Util/Temporal.php:327
-#, php-format
-msgid "in %1$d %2$s"
+#: src/Module/Register.php:150
+msgid "Note: This node explicitly contains adult content"
 msgstr ""
 
-#: src/Util/Temporal.php:330
-#, php-format
-msgid "%1$d %2$s ago"
-msgstr "%1$d %2$s ago"
-
-#: src/Worker/Delivery.php:433
-msgid "(no subject)"
-msgstr "(no subject)"
-
-#: update.php:195
-#, php-format
-msgid "%s: Updating author-id and owner-id in item and thread table. "
-msgstr "%s: Updating author-id and owner-id in item and thread table. "
+#: src/Module/Register.php:243
+msgid ""
+"Registration successful. Please check your email for further instructions."
+msgstr "Registration successful. Please check your email for further instructions."
 
-#: update.php:241
+#: src/Module/Register.php:247
 #, php-format
-msgid "%s: Updating post-type."
-msgstr ""
-
-#: view/theme/duepuntozero/config.php:56
-msgid "greenzero"
-msgstr "greenzero"
+msgid ""
+"Failed to send email message. Here your accout details:<br> login: %s<br> "
+"password: %s<br><br>You can change your password after login."
+msgstr "Failed to send email message. Here are your account details:<br> login: %s<br> password: %s<br><br>You can change your password after login."
 
-#: view/theme/duepuntozero/config.php:57
-msgid "purplezero"
-msgstr "purplezero"
+#: src/Module/Register.php:254
+msgid "Registration successful."
+msgstr "Registration successful."
 
-#: view/theme/duepuntozero/config.php:58
-msgid "easterbunny"
-msgstr "easterbunny"
+#: src/Module/Register.php:259
+msgid "Your registration can not be processed."
+msgstr "Your registration cannot be processed."
 
-#: view/theme/duepuntozero/config.php:59
-msgid "darkzero"
-msgstr "darkzero"
+#: src/Module/Register.php:305
+msgid "Your registration is pending approval by the site owner."
+msgstr "Your registration is pending approval by the site administrator."
 
-#: view/theme/duepuntozero/config.php:60
-msgid "comix"
-msgstr "comix"
+#: src/Module/Tos.php:35 src/Module/Tos.php:77
+msgid ""
+"At the time of registration, and for providing communications between the "
+"user account and their contacts, the user has to provide a display name (pen"
+" name), an username (nickname) and a working email address. The names will "
+"be accessible on the profile page of the account by any visitor of the page,"
+" even if other profile details are not displayed. The email address will "
+"only be used to send the user notifications about interactions, but wont be "
+"visibly displayed. The listing of an account in the node's user directory or"
+" the global user directory is optional and can be controlled in the user "
+"settings, it is not necessary for communication."
+msgstr "At the time of registration, and for providing communications between the user account and their contacts, the user has to provide a display name (pen name), a username (nickname) and a working email address. The names will be accessible on the profile page of the account by any visitor of the page, even if other profile details are not displayed. The email address will only be used to send the user notifications about interactions, but won’t be visibly displayed. The listing of an account in the node's user directory or the global user directory is optional and can be controlled in the user settings, it is not necessary for communication."
 
-#: view/theme/duepuntozero/config.php:61
-msgid "slackr"
-msgstr "slackr"
+#: src/Module/Tos.php:36 src/Module/Tos.php:78
+msgid ""
+"This data is required for communication and is passed on to the nodes of the"
+" communication partners and is stored there. Users can enter additional "
+"private data that may be transmitted to the communication partners accounts."
+msgstr "This information is required for communication and is passed on to the nodes of the communication partners and is stored there. Users can enter additional personal information that may be transmitted to the communication partner's accounts."
 
-#: view/theme/duepuntozero/config.php:75
-msgid "Variations"
-msgstr "Variations"
+#: src/Module/Tos.php:37 src/Module/Tos.php:79
+#, php-format
+msgid ""
+"At any point in time a logged in user can export their account data from the"
+" <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants "
+"to delete their account they can do so at <a "
+"href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will "
+"be permanent. Deletion of the data will also be requested from the nodes of "
+"the communication partners."
+msgstr "At any point in time a logged in user can export their account data from the <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants to delete their account they can do so at <a href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners."
 
-#: view/theme/frio/config.php:103
-msgid "Custom"
-msgstr "Custom"
+#: src/Module/Tos.php:40 src/Module/Tos.php:76
+msgid "Privacy Statement"
+msgstr "Privacy Statement"
 
-#: view/theme/frio/config.php:115
-msgid "Note"
-msgstr "Note"
+#: src/Object/Post.php:136
+msgid "This entry was edited"
+msgstr "This entry was edited"
 
-#: view/theme/frio/config.php:115
-msgid "Check image permissions if all users are allowed to see the image"
-msgstr "Check image permissions that everyone is allowed to see the image"
+#: src/Object/Post.php:198
+msgid "Delete locally"
+msgstr ""
 
-#: view/theme/frio/config.php:122
-msgid "Select color scheme"
-msgstr "Select color scheme"
+#: src/Object/Post.php:201
+msgid "Delete globally"
+msgstr ""
 
-#: view/theme/frio/config.php:123
-msgid "Navigation bar background color"
-msgstr "Navigation bar background color:"
+#: src/Object/Post.php:201
+msgid "Remove locally"
+msgstr ""
 
-#: view/theme/frio/config.php:124
-msgid "Navigation bar icon color "
-msgstr "Navigation bar icon color:"
+#: src/Object/Post.php:215
+msgid "save to folder"
+msgstr "Save to folder"
 
-#: view/theme/frio/config.php:125
-msgid "Link color"
-msgstr "Link color:"
+#: src/Object/Post.php:250
+msgid "I will attend"
+msgstr "I will attend"
 
-#: view/theme/frio/config.php:126
-msgid "Set the background color"
-msgstr "Background color:"
+#: src/Object/Post.php:250
+msgid "I will not attend"
+msgstr "I will not attend"
 
-#: view/theme/frio/config.php:127
-msgid "Content background opacity"
-msgstr "Content background opacity"
+#: src/Object/Post.php:250
+msgid "I might attend"
+msgstr "I might attend"
 
-#: view/theme/frio/config.php:128
-msgid "Set the background image"
-msgstr "Background image:"
+#: src/Object/Post.php:278
+msgid "ignore thread"
+msgstr "Ignore thread"
 
-#: view/theme/frio/config.php:129
-msgid "Background image style"
-msgstr "Background image style"
+#: src/Object/Post.php:279
+msgid "unignore thread"
+msgstr "Unignore thread"
 
-#: view/theme/frio/config.php:134
-msgid "Login page background image"
-msgstr "Login page background image"
+#: src/Object/Post.php:280
+msgid "toggle ignore status"
+msgstr "Toggle ignore status"
 
-#: view/theme/frio/config.php:138
-msgid "Login page background color"
-msgstr "Login page background color"
+#: src/Object/Post.php:291
+msgid "add star"
+msgstr "Add star"
 
-#: view/theme/frio/config.php:138
-msgid "Leave background image and color empty for theme defaults"
-msgstr "Leave background image and color empty for theme defaults"
+#: src/Object/Post.php:292
+msgid "remove star"
+msgstr "Remove star"
 
-#: view/theme/frio/php/Image.php:24
-msgid "Top Banner"
-msgstr "Top Banner"
+#: src/Object/Post.php:293
+msgid "toggle star status"
+msgstr "Toggle star status"
 
-#: view/theme/frio/php/Image.php:24
-msgid ""
-"Resize image to the width of the screen and show background color below on "
-"long pages."
-msgstr "Resize image to the width of the screen and show background color below on long pages."
+#: src/Object/Post.php:296
+msgid "starred"
+msgstr "Starred"
 
-#: view/theme/frio/php/Image.php:25
-msgid "Full screen"
-msgstr "Full screen"
+#: src/Object/Post.php:300
+msgid "add tag"
+msgstr "Add tag"
 
-#: view/theme/frio/php/Image.php:25
-msgid ""
-"Resize image to fill entire screen, clipping either the right or the bottom."
-msgstr "Resize image to fill entire screen, clipping either the right or the bottom."
+#: src/Object/Post.php:311
+msgid "like"
+msgstr "Like"
 
-#: view/theme/frio/php/Image.php:26
-msgid "Single row mosaic"
-msgstr "Single row mosaic"
+#: src/Object/Post.php:312
+msgid "dislike"
+msgstr "Dislike"
 
-#: view/theme/frio/php/Image.php:26
-msgid ""
-"Resize image to repeat it on a single row, either vertical or horizontal."
-msgstr "Resize image to repeat it on a single row, either vertical or horizontal."
+#: src/Object/Post.php:315
+msgid "Share this"
+msgstr "Share this"
 
-#: view/theme/frio/php/Image.php:27
-msgid "Mosaic"
-msgstr "Mosaic"
+#: src/Object/Post.php:315
+msgid "share"
+msgstr "Share"
 
-#: view/theme/frio/php/Image.php:27
-msgid "Repeat image to fill the screen."
-msgstr "Repeat image to fill the screen."
+#: src/Object/Post.php:382
+msgid "to"
+msgstr "to"
 
-#: view/theme/frio/theme.php:252
-msgid "Guest"
-msgstr "Guest"
+#: src/Object/Post.php:383
+msgid "via"
+msgstr "via"
 
-#: view/theme/frio/theme.php:257
-msgid "Visitor"
-msgstr "Visitor"
+#: src/Object/Post.php:384
+msgid "Wall-to-Wall"
+msgstr "Wall-to-wall"
 
-#: view/theme/quattro/config.php:77
-msgid "Alignment"
-msgstr "Alignment"
+#: src/Object/Post.php:385
+msgid "via Wall-To-Wall:"
+msgstr "via wall-to-wall:"
 
-#: view/theme/quattro/config.php:77
-msgid "Left"
-msgstr "Left"
+#: src/Object/Post.php:432
+msgid "Notifier task is pending"
+msgstr ""
 
-#: view/theme/quattro/config.php:77
-msgid "Center"
-msgstr "Center"
+#: src/Object/Post.php:433
+msgid "Delivery to remote servers is pending"
+msgstr ""
 
-#: view/theme/quattro/config.php:78
-msgid "Color scheme"
-msgstr "Color scheme"
+#: src/Object/Post.php:434
+msgid "Delivery to remote servers is underway"
+msgstr ""
 
-#: view/theme/quattro/config.php:79
-msgid "Posts font size"
-msgstr "Posts font size"
+#: src/Object/Post.php:435
+msgid "Delivery to remote servers is mostly done"
+msgstr ""
 
-#: view/theme/quattro/config.php:80
-msgid "Textareas font size"
-msgstr "Text areas font size"
+#: src/Object/Post.php:436
+msgid "Delivery to remote servers is done"
+msgstr ""
 
-#: view/theme/vier/config.php:76
-msgid "Comma separated list of helper forums"
-msgstr "Comma-separated list of helper forums"
+#: src/Object/Post.php:455
+#, php-format
+msgid "%d comment"
+msgid_plural "%d comments"
+msgstr[0] "%d comment"
+msgstr[1] "%d comments -"
 
-#: view/theme/vier/config.php:123
-msgid "Set style"
-msgstr "Set style"
+#: src/App.php:665
+msgid "Delete this item?"
+msgstr "Delete this item?"
 
-#: view/theme/vier/config.php:124
-msgid "Community Pages"
-msgstr "Community pages"
+#: src/App.php:667
+msgid "show fewer"
+msgstr "show fewer"
 
-#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
-msgid "Community Profiles"
-msgstr "Community profiles"
+#: src/App.php:709
+msgid "toggle mobile"
+msgstr "Toggle mobile"
 
-#: view/theme/vier/config.php:126
-msgid "Help or @NewHere ?"
-msgstr "Help or @NewHere ?"
+#: src/App.php:1077
+msgid "No system theme config value set."
+msgstr "No system theme configuration value set."
 
-#: view/theme/vier/config.php:127 view/theme/vier/theme.php:388
-msgid "Connect Services"
-msgstr "Connect services"
+#: src/BaseModule.php:133
+msgid ""
+"The form security token was not correct. This probably happened because the "
+"form has been opened for too long (>3 hours) before submitting it."
+msgstr "The form security token was incorrect. This probably happened because the form has not been submitted within 3 hours."
 
-#: view/theme/vier/config.php:128
-msgid "Find Friends"
-msgstr "Find friends"
+#: src/LegacyModule.php:30
+#, php-format
+msgid "Legacy module file not found: %s"
+msgstr ""
 
-#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
-msgid "Last users"
-msgstr "Last users"
+#: update.php:217
+#, php-format
+msgid "%s: Updating author-id and owner-id in item and thread table. "
+msgstr "%s: Updating author-id and owner-id in item and thread table. "
 
-#: view/theme/vier/theme.php:291
-msgid "Quick Start"
-msgstr "Quick start"
+#: update.php:272
+#, php-format
+msgid "%s: Updating post-type."
+msgstr ""
index 2c6a5b1497dc52c5559118b32f780b638cd42927..c63cd58ec72ad010b72f2f22013e0a25a1efa2e7 100644 (file)
@@ -135,18 +135,22 @@ $a->strings["%1\$s sent you a new private message at %2\$s."] = "%1\$s sent you
 $a->strings["a private message"] = "a private message";
 $a->strings["%1\$s sent you %2\$s."] = "%1\$s sent you %2\$s.";
 $a->strings["Please visit %s to view and/or reply to your private messages."] = "Please visit %s to view or reply to your private messages.";
+$a->strings["%1\$s tagged you on [url=%2\$s]a %3\$s[/url]"] = "";
 $a->strings["%1\$s commented on [url=%2\$s]a %3\$s[/url]"] = "%1\$s commented on [url=%2\$s]a %3\$s[/url]";
+$a->strings["%1\$s tagged you on [url=%2\$s]%3\$s's %4\$s[/url]"] = "";
 $a->strings["%1\$s commented on [url=%2\$s]%3\$s's %4\$s[/url]"] = "%1\$s commented on [url=%2\$s]%3\$s's %4\$s[/url]";
+$a->strings["%1\$s tagged you on [url=%2\$s]your %3\$s[/url]"] = "";
 $a->strings["%1\$s commented on [url=%2\$s]your %3\$s[/url]"] = "%1\$s commented on [url=%2\$s]your %3\$s[/url]";
+$a->strings["%1\$s tagged you on [url=%2\$s]their %3\$s[/url]"] = "";
+$a->strings["%1\$s commented on [url=%2\$s]their %3\$s[/url]"] = "";
+$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica:Notify] %s tagged you";
+$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s tagged you at %2\$s";
 $a->strings["[Friendica:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Friendica:Notify] Comment to conversation #%1\$d by %2\$s";
 $a->strings["%s commented on an item/conversation you have been following."] = "%s commented on an item/conversation you have been following.";
 $a->strings["Please visit %s to view and/or reply to the conversation."] = "Please visit %s to view or reply to the conversation.";
 $a->strings["[Friendica:Notify] %s posted to your profile wall"] = "[Friendica:Notify] %s posted to your profile wall";
 $a->strings["%1\$s posted to your profile wall at %2\$s"] = "%1\$s posted to your profile wall at %2\$s";
 $a->strings["%1\$s posted to [url=%2\$s]your wall[/url]"] = "%1\$s posted to [url=%2\$s]your wall[/url]";
-$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica:Notify] %s tagged you";
-$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s tagged you at %2\$s";
-$a->strings["%1\$s [url=%2\$s]tagged you[/url]."] = "%1\$s [url=%2\$s]tagged you[/url].";
 $a->strings["[Friendica:Notify] %s shared a new post"] = "[Friendica:Notify] %s shared a new post";
 $a->strings["%1\$s shared a new post at %2\$s"] = "%1\$s shared a new post at %2\$s";
 $a->strings["%1\$s [url=%2\$s]shared a post[/url]."] = "%1\$s [url=%2\$s]shared a post[/url].";
@@ -190,7 +194,11 @@ $a->strings["Do you really want to delete this item?"] = "Do you really want to
 $a->strings["Yes"] = "Yes";
 $a->strings["Permission denied."] = "Permission denied.";
 $a->strings["Archives"] = "Archives";
-$a->strings["show more"] = "Show more...";
+$a->strings["show more"] = "show more";
+$a->strings["You must be logged in to use addons. "] = "You must be logged in to use addons. ";
+$a->strings["Applications"] = "Applications";
+$a->strings["No installed applications."] = "No installed applications.";
+$a->strings["System down for maintenance"] = "Sorry, the system is currently down for maintenance.";
 $a->strings["Theme settings updated."] = "Theme settings updated.";
 $a->strings["Information"] = "Information";
 $a->strings["Overview"] = "Overview";
@@ -302,6 +310,7 @@ $a->strings["The database update failed. Please run \"php bin/console.php dbstru
 $a->strings["The worker was never executed. Please check your database structure!"] = "The worker process has never been executed. Please check your database structure!";
 $a->strings["The last worker execution was on %s UTC. This is older than one hour. Please check your crontab settings."] = "The last worker process started at %s UTC. This is more than one hour ago. Please adjust your crontab settings.";
 $a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>.htconfig.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "";
+$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>config/local.ini.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "";
 $a->strings["<a href=\"%s\">%s</a> is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See <a href=\"%s\">the installation page</a> for help."] = "";
 $a->strings["Normal Account"] = "Standard account";
 $a->strings["Automatic Follower Account"] = "Automatic follower account";
@@ -341,6 +350,7 @@ $a->strings["Self-signed certificate, use SSL for local links only (discouraged)
 $a->strings["Don't check"] = "Don't check";
 $a->strings["check the stable version"] = "check for stable version updates";
 $a->strings["check the development version"] = "check for development version updates";
+$a->strings["Database (legacy)"] = "";
 $a->strings["Republish users to directory"] = "Republish users to directory";
 $a->strings["Registration"] = "Registration";
 $a->strings["File upload"] = "File upload";
@@ -376,6 +386,8 @@ $a->strings["Hide help entry from navigation menu"] = "Hide help entry from navi
 $a->strings["Hides the menu entry for the Help pages from the navigation menu. You can still access it calling /help directly."] = "Hides the menu entry for the Help pages from the navigation menu. Help pages can still be accessed by calling ../help directly via its URL.";
 $a->strings["Single user instance"] = "Single user instance";
 $a->strings["Make this instance multi-user or single-user for the named user"] = "Make this instance multi-user or single-user for the named user";
+$a->strings["File storage backend"] = "";
+$a->strings["The backend used to store uploaded data. If you change the storage backend, you can manually move the existing files. If you do not do so, the files uploaded before the change will still be available at the old backend. Please see <a href=\"/help/Settings#1_2_3_1\">the settings documentation</a> for more information about the choices and the moving procedure."] = "";
 $a->strings["Maximum image size"] = "Maximum image size";
 $a->strings["Maximum size in bytes of uploaded images. Default is 0, which means no limits."] = "Maximum size in bytes of uploaded images. Default is 0, which means no limits.";
 $a->strings["Maximum image length"] = "Maximum image length";
@@ -420,16 +432,16 @@ $a->strings["Allow Users to set remote_self"] = "Allow users to set \"Remote sel
 $a->strings["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."] = "This allows every user to mark contacts as a \"Remote self\" in the repair contact dialogue. Setting this flag on a contact will mirror every posting of that contact in the users stream.";
 $a->strings["Block multiple registrations"] = "Block multiple registrations";
 $a->strings["Disallow users to register additional accounts for use as pages."] = "Disallow users to sign up for additional accounts.";
-$a->strings["OpenID support"] = "OpenID support";
-$a->strings["OpenID support for registration and logins."] = "OpenID support for registration and logins.";
-$a->strings["Fullname check"] = "Full name check";
-$a->strings["Force users to register with a space between firstname and lastname in Full name, as an antispam measure"] = "Force users to sign up with a space between first name and last name in the full name field; it may reduce spam and abuse registrations.";
+$a->strings["Disable OpenID"] = "";
+$a->strings["Disable OpenID support for registration and logins."] = "";
+$a->strings["No Fullname check"] = "";
+$a->strings["Allow users to register without a space between the first name and the last name in their full name."] = "";
 $a->strings["Community pages for visitors"] = "Community pages for visitors";
 $a->strings["Which community pages should be available for visitors. Local users always see both pages."] = "Which community pages should be available for visitors. Local users always see both pages.";
 $a->strings["Posts per user on community page"] = "Posts per user on community page";
 $a->strings["The maximum number of posts per user on the community page. (Not valid for 'Global Community')"] = "Maximum number of posts per user on the community page (not valid for 'Global Community').";
-$a->strings["Enable OStatus support"] = "Enable OStatus support";
-$a->strings["Provide built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed."] = "Provide built-in OStatus (StatusNet, GNU Social, etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed.";
+$a->strings["Disable OStatus support"] = "";
+$a->strings["Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed."] = "";
 $a->strings["Only import OStatus/ActivityPub threads from our contacts"] = "";
 $a->strings["Normally we import every content from our OStatus and ActivityPub contacts. With this option we only store threads that are started by a contact that is known on our system."] = "";
 $a->strings["OStatus support can only be enabled if threading is enabled."] = "OStatus support can only be enabled if threading is enabled.";
@@ -459,7 +471,7 @@ $a->strings["If enabled, the global contacts are checked periodically for missin
 $a->strings["Days between requery"] = "Days between enquiry";
 $a->strings["Number of days after which a server is requeried for his contacts."] = "Number of days after which a server is rechecked for contacts.";
 $a->strings["Discover contacts from other servers"] = "Discover contacts from other servers";
-$a->strings["Periodically query other servers for contacts. You can choose between 'users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommened setting is 'Users, Global Contacts'."] = "Periodically query other servers for contacts. You can choose between 'Users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older Friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommend setting is 'Users, Global Contacts'.";
+$a->strings["Periodically query other servers for contacts. You can choose between 'users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommended setting is 'Users, Global Contacts'."] = "";
 $a->strings["Timeframe for fetching global contacts"] = "Time-frame for fetching global contacts";
 $a->strings["When the discovery is activated, this value defines the timeframe for the activity of the global contacts that are fetched from other servers."] = "If discovery is activated, this value defines the time-frame for the activity of the global contacts that are fetched from other servers.";
 $a->strings["Search the local directory"] = "Search the local directory";
@@ -557,6 +569,7 @@ $a->strings["Personal Page"] = "Personal Page";
 $a->strings["Organisation Page"] = "Organization Page";
 $a->strings["News Page"] = "News Page";
 $a->strings["Community Forum"] = "Community Forum";
+$a->strings["Relay"] = "";
 $a->strings["Email"] = "Email";
 $a->strings["Register date"] = "Registration date";
 $a->strings["Last login"] = "Last login";
@@ -574,7 +587,7 @@ $a->strings["User blocked"] = "";
 $a->strings["Site admin"] = "Site admin";
 $a->strings["Account expired"] = "Account expired";
 $a->strings["New User"] = "New user";
-$a->strings["Delete in"] = "";
+$a->strings["Permanent deletion"] = "";
 $a->strings["Selected users will be deleted!\\n\\nEverything these users had posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "Selected users will be deleted!\\n\\nEverything these users have posted on this site will be permanently deleted!\\n\\nAre you sure?";
 $a->strings["The user {0} will be deleted!\\n\\nEverything this user has posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "The user {0} will be deleted!\\n\\nEverything this user has posted on this site will be permanently deleted!\\n\\nAre you sure?";
 $a->strings["Name of the new user."] = "Name of the new user.";
@@ -620,11 +633,6 @@ $a->strings["Return to your app and insert this Securty Code:"] = "Return to you
 $a->strings["Please login to continue."] = "Please login to continue.";
 $a->strings["Do you want to authorize this application to access your posts and contacts, and/or create new posts for you?"] = "Do you want to authorize this application to access your posts and contacts and create new posts for you?";
 $a->strings["No"] = "No";
-$a->strings["You must be logged in to use addons. "] = "You must be logged in to use addons. ";
-$a->strings["Applications"] = "Applications";
-$a->strings["No installed applications."] = "No installed applications.";
-$a->strings["Item not available."] = "Item not available.";
-$a->strings["Item was not found."] = "Item was not found.";
 $a->strings["Source input"] = "Source input";
 $a->strings["BBCode::toPlaintext"] = "BBCode::toPlaintext";
 $a->strings["BBCode::convert (raw HTML)"] = "BBCode::convert (raw HTML)";
@@ -634,6 +642,8 @@ $a->strings["BBCode::toMarkdown"] = "BBCode::toMarkdown";
 $a->strings["BBCode::toMarkdown => Markdown::convert"] = "BBCode::toMarkdown => Markdown::convert";
 $a->strings["BBCode::toMarkdown => Markdown::toBBCode"] = "BBCode::toMarkdown => Markdown::toBBCode";
 $a->strings["BBCode::toMarkdown =>  Markdown::convert => HTML::toBBCode"] = "BBCode::toMarkdown =>  Markdown::convert => HTML::toBBCode";
+$a->strings["Item Body"] = "";
+$a->strings["Item Tags"] = "";
 $a->strings["Source input (Diaspora format)"] = "";
 $a->strings["Markdown::convert (raw HTML)"] = "";
 $a->strings["Markdown::convert"] = "";
@@ -698,6 +708,7 @@ $a->strings["Mark this contact as remote_self, this will cause friendica to repo
 $a->strings["Account Nickname"] = "Account nickname:";
 $a->strings["@Tagname - overrides Name/Nickname"] = "@Tag name - overrides name/nickname:";
 $a->strings["Account URL"] = "Account URL:";
+$a->strings["Account URL Alias"] = "";
 $a->strings["Friend Request URL"] = "Friend request URL:";
 $a->strings["Friend Confirm URL"] = "Friend confirm URL:";
 $a->strings["Notification Endpoint URL"] = "Notification endpoint URL";
@@ -825,7 +836,6 @@ $a->strings["Upload"] = "Upload";
 $a->strings["Files"] = "Files";
 $a->strings["You must be logged in to use this module"] = "You must be logged in to use this module";
 $a->strings["Source URL"] = "Source URL";
-$a->strings["Not Found"] = "Not found";
 $a->strings["- select -"] = "- select -";
 $a->strings["The contact could not be added."] = "Contact could not be added.";
 $a->strings["You already added this contact."] = "You already added this contact.";
@@ -869,6 +879,7 @@ $a->strings["Add contact to group"] = "Add contact to group";
 $a->strings["No profile"] = "No profile";
 $a->strings["Help:"] = "Help:";
 $a->strings["Help"] = "Help";
+$a->strings["Not Found"] = "Not found";
 $a->strings["Welcome to %s"] = "Welcome to %s";
 $a->strings["Total invitation limit exceeded."] = "Total invitation limit exceeded";
 $a->strings["%s : Not a valid email address."] = "%s : Not a valid email address";
@@ -928,12 +939,12 @@ $a->strings["Your password may be changed from the <em>Settings</em> page after
 $a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tYour password has been changed as requested. Please retain this\n\t\t\tinformation for your records (or change your password immediately to\n\t\t\tsomething that you will remember).\n\t\t"] = "\n\t\t\tDear %1\$s,\n\t\t\t\tYour password has been changed as requested. Please retain this\n\t\t\tinformation for your records (or change your password immediately to\n\t\t\tsomething that you will remember).\n\t\t";
 $a->strings["\n\t\t\tYour login details are as follows:\n\n\t\t\tSite Location:\t%1\$s\n\t\t\tLogin Name:\t%2\$s\n\t\t\tPassword:\t%3\$s\n\n\t\t\tYou may change that password from your account settings page after logging in.\n\t\t"] = "\n\t\t\tYour login details are as follows:\n\n\t\t\tSite Location:\t%1\$s\n\t\t\tLogin Name:\t%2\$s\n\t\t\tPassword:\t%3\$s\n\n\t\t\tYou may change that password from your account settings page after logging in.\n\t\t";
 $a->strings["Your password has been changed at %s"] = "Your password has been changed at %s";
-$a->strings["System down for maintenance"] = "Sorry, the system is currently down for maintenance.";
 $a->strings["Manage Identities and/or Pages"] = "Manage Identities and Pages";
 $a->strings["Toggle between different identities or community/group pages which share your account details or which you have been granted \"manage\" permissions"] = "Accounts that I manage or own.";
 $a->strings["Select an identity to manage: "] = "Select identity:";
 $a->strings["No keywords to match. Please add keywords to your default profile."] = "No keywords to match. Please add keywords to your default profile.";
-$a->strings["is interested in:"] = "is interested in:";
+$a->strings["first"] = "first";
+$a->strings["next"] = "next";
 $a->strings["Profile Match"] = "Profile Match";
 $a->strings["New Message"] = "New Message";
 $a->strings["No recipient selected."] = "No recipient selected.";
@@ -1118,7 +1129,6 @@ $a->strings["Comment"] = "Comment";
 $a->strings["Map"] = "Map";
 $a->strings["View Album"] = "View album";
 $a->strings["{0} wants to be your friend"] = "{0} wants to be your friend";
-$a->strings["{0} sent you a message"] = "{0} sent you a message";
 $a->strings["{0} requested registration"] = "{0} requested registration";
 $a->strings["Poke/Prod"] = "Poke/Prod";
 $a->strings["poke, prod or do other things to somebody"] = "Poke, prod or do other things to somebody";
@@ -1126,10 +1136,19 @@ $a->strings["Recipient"] = "Recipient:";
 $a->strings["Choose what you wish to do to recipient"] = "Choose what you wish to do:";
 $a->strings["Make this post private"] = "Make this post private";
 $a->strings["Only logged in users are permitted to perform a probing."] = "Only logged in users are permitted to use the Probe feature.";
-$a->strings["Requested profile is not available."] = "Requested profile is unavailable.";
-$a->strings["%s's timeline"] = "%s's timeline";
-$a->strings["%s's posts"] = "%s's posts";
-$a->strings["%s's comments"] = "%s's comments";
+$a->strings["Image uploaded but image cropping failed."] = "Image uploaded but image cropping failed.";
+$a->strings["Image size reduction [%s] failed."] = "Image size reduction [%s] failed.";
+$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Shift-reload the page or clear browser cache if the new photo does not display immediately.";
+$a->strings["Unable to process image"] = "Unable to process image";
+$a->strings["Upload File:"] = "Upload File:";
+$a->strings["Select a profile:"] = "Select a profile:";
+$a->strings["or"] = "or";
+$a->strings["skip this step"] = "skip this step";
+$a->strings["select a photo from your photo albums"] = "select a photo from your photo albums";
+$a->strings["Crop Image"] = "Crop Image";
+$a->strings["Please adjust the image cropping for optimum viewing."] = "Please adjust the image cropping for optimum viewing.";
+$a->strings["Done Editing"] = "Done editing";
+$a->strings["Image uploaded successfully."] = "Image uploaded successfully.";
 $a->strings["Profile deleted."] = "Profile deleted.";
 $a->strings["Profile-"] = "Profile-";
 $a->strings["New profile created."] = "New profile created.";
@@ -1210,48 +1229,10 @@ $a->strings["visible to everybody"] = "Visible to everybody";
 $a->strings["Edit/Manage Profiles"] = "Edit/Manage Profiles";
 $a->strings["Change profile photo"] = "Change profile photo";
 $a->strings["Create New Profile"] = "Create new profile";
-$a->strings["Image uploaded but image cropping failed."] = "Image uploaded but image cropping failed.";
-$a->strings["Image size reduction [%s] failed."] = "Image size reduction [%s] failed.";
-$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Shift-reload the page or clear browser cache if the new photo does not display immediately.";
-$a->strings["Unable to process image"] = "Unable to process image";
-$a->strings["Upload File:"] = "Upload File:";
-$a->strings["Select a profile:"] = "Select a profile:";
-$a->strings["or"] = "or";
-$a->strings["skip this step"] = "skip this step";
-$a->strings["select a photo from your photo albums"] = "select a photo from your photo albums";
-$a->strings["Crop Image"] = "Crop Image";
-$a->strings["Please adjust the image cropping for optimum viewing."] = "Please adjust the image cropping for optimum viewing.";
-$a->strings["Done Editing"] = "Done editing";
-$a->strings["Image uploaded successfully."] = "Image uploaded successfully.";
 $a->strings["Invalid profile identifier."] = "Invalid profile identifier.";
 $a->strings["Profile Visibility Editor"] = "Profile Visibility Editor";
 $a->strings["Visible To"] = "Visible to";
 $a->strings["All Contacts (with secure profile access)"] = "All contacts with secure profile access";
-$a->strings["Registration successful. Please check your email for further instructions."] = "Registration successful. Please check your email for further instructions.";
-$a->strings["Failed to send email message. Here your accout details:<br> login: %s<br> password: %s<br><br>You can change your password after login."] = "Failed to send email message. Here are your account details:<br> login: %s<br> password: %s<br><br>You can change your password after login.";
-$a->strings["Registration successful."] = "Registration successful.";
-$a->strings["Your registration can not be processed."] = "Your registration cannot be processed.";
-$a->strings["Your registration is pending approval by the site owner."] = "Your registration is pending approval by the site administrator.";
-$a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.";
-$a->strings["You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking 'Register'."] = "You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking 'Sign up now'.";
-$a->strings["If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."] = "If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items.";
-$a->strings["Your OpenID (optional): "] = "Your OpenID (optional): ";
-$a->strings["Include your profile in member directory?"] = "Include your profile in member directory?";
-$a->strings["Note for the admin"] = "Note for the admin";
-$a->strings["Leave a message for the admin, why you want to join this node"] = "Leave a message for the admin. Why do you want to join this node?";
-$a->strings["Membership on this site is by invitation only."] = "Membership on this site is by invitation only.";
-$a->strings["Your invitation code: "] = "Your invitation code: ";
-$a->strings["Your Full Name (e.g. Joe Smith, real or real-looking): "] = "Your full name: ";
-$a->strings["Your Email Address: (Initial information will be send there, so this has to be an existing address.)"] = "Your Email Address: (Initial information will be sent there, so this must be an existing address.)";
-$a->strings["New Password:"] = "New password:";
-$a->strings["Leave empty for an auto generated password."] = "Leave empty for an auto generated password.";
-$a->strings["Confirm:"] = "Confirm new password:";
-$a->strings["Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be '<strong>nickname@%s</strong>'."] = "Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be '<strong>nickname@%s</strong>'.";
-$a->strings["Choose a nickname: "] = "Choose a nickname: ";
-$a->strings["Register"] = "Sign up now >>";
-$a->strings["Import"] = "Import profile";
-$a->strings["Import your profile to this friendica instance"] = "Import an existing Friendica profile to this node.";
-$a->strings["Note: This node explicitly contains adult content"] = "";
 $a->strings["Account approved."] = "Account approved.";
 $a->strings["Registration revoked for %s"] = "Registration revoked for %s";
 $a->strings["Please login."] = "Please login.";
@@ -1283,12 +1264,10 @@ $a->strings["Failed to connect with email account using the settings provided."]
 $a->strings["Email settings updated."] = "Email settings updated.";
 $a->strings["Features updated"] = "Features updated";
 $a->strings["Relocate message has been send to your contacts"] = "Relocate message has been sent to your contacts";
-$a->strings["Passwords do not match. Password unchanged."] = "Passwords do not match. Password unchanged.";
-$a->strings["Empty passwords are not allowed. Password unchanged."] = "Empty passwords are not allowed. Password unchanged.";
-$a->strings["The new password has been exposed in a public data dump, please choose another."] = "The new password has been exposed in a public data dump; please choose another.";
-$a->strings["Wrong password."] = "Wrong password.";
-$a->strings["Password changed."] = "Password changed.";
+$a->strings["Passwords do not match."] = "";
 $a->strings["Password update failed. Please try again."] = "Password update failed. Please try again.";
+$a->strings["Password changed."] = "Password changed.";
+$a->strings["Password unchanged."] = "";
 $a->strings[" Please use a shorter name."] = " Please use a shorter name.";
 $a->strings[" Name too short."] = " Name too short.";
 $a->strings["Wrong Password"] = "Wrong password";
@@ -1417,6 +1396,9 @@ $a->strings["Expire photos:"] = "Expire photos:";
 $a->strings["Only expire posts by others:"] = "Only expire posts by others:";
 $a->strings["Account Settings"] = "Account Settings";
 $a->strings["Password Settings"] = "Password change";
+$a->strings["New Password:"] = "New password:";
+$a->strings["Allowed characters are a-z, A-Z, 0-9 and special characters except white spaces, accentuated letters and colon (:)."] = "";
+$a->strings["Confirm:"] = "Confirm new password:";
 $a->strings["Leave password fields blank unless changing"] = "Leave password fields blank unless changing";
 $a->strings["Current Password:"] = "Current password:";
 $a->strings["Your current password to confirm the changes"] = "Current password to confirm change";
@@ -1472,6 +1454,8 @@ $a->strings["Export your account info and contacts. Use this to make a backup of
 $a->strings["Export all"] = "Export all";
 $a->strings["Export your accout info, contacts and all your items as json. Could be a very big file, and could take a lot of time. Use this to make a full backup of your account (photos are not exported)"] = "Export your account info, contacts and all your items as JSON. This could be a very big file, and could take a lot of time. Use this to make a full backup of your account. Photos are not exported.";
 $a->strings["User imports on closed servers can only be done by an administrator."] = "";
+$a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.";
+$a->strings["Import"] = "Import profile";
 $a->strings["Move account"] = "Move Existing Friendica Account";
 $a->strings["You can import an account from another Friendica server."] = "You can import an existing Friendica profile to this node.";
 $a->strings["You need to export your account from the old server and upload it here. We will recreate your old account here with all your contacts. We will try also to inform your friends that you moved here."] = "You need to export your account from the old server and upload it here. We will recreate your old account here with all your contacts. We will try also to inform your friends that you moved here.";
@@ -1492,132 +1476,48 @@ $a->strings["Upload New Videos"] = "Upload new videos";
 $a->strings["No contacts."] = "No contacts.";
 $a->strings["Visit %s's profile [%s]"] = "Visit %s's profile [%s]";
 $a->strings["Contacts"] = "Contacts";
-$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Number of daily wall messages for %s exceeded. Message failed.";
-$a->strings["Unable to check your home location."] = "Unable to check your home location.";
-$a->strings["No recipient."] = "No recipient.";
-$a->strings["If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders."] = "If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders.";
 $a->strings["Invalid request."] = "Invalid request.";
 $a->strings["Sorry, maybe your upload is bigger than the PHP configuration allows"] = "Sorry, maybe your upload is bigger than the PHP configuration allows";
 $a->strings["Or - did you try to upload an empty file?"] = "Or did you try to upload an empty file?";
 $a->strings["File exceeds size limit of %s"] = "File exceeds size limit of %s";
 $a->strings["File upload failed."] = "File upload failed.";
 $a->strings["Wall Photos"] = "Wall photos";
-$a->strings["Delete this item?"] = "Delete this item?";
-$a->strings["show fewer"] = "Show fewer.";
-$a->strings["toggle mobile"] = "Toggle mobile";
-$a->strings["No system theme config value set."] = "No system theme configuration value set.";
-$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "The form security token was incorrect. This probably happened because the form has not been submitted within 3 hours.";
-$a->strings["Frequently"] = "Frequently";
-$a->strings["Hourly"] = "Hourly";
-$a->strings["Twice daily"] = "Twice daily";
-$a->strings["Daily"] = "Daily";
-$a->strings["Weekly"] = "Weekly";
-$a->strings["Monthly"] = "Monthly";
-$a->strings["DFRN"] = "";
-$a->strings["OStatus"] = "OStatus";
-$a->strings["RSS/Atom"] = "RSS/Atom";
-$a->strings["Zot!"] = "Zot!";
-$a->strings["LinkedIn"] = "LinkedIn";
-$a->strings["XMPP/IM"] = "XMPP/IM";
-$a->strings["MySpace"] = "MySpace";
-$a->strings["Google+"] = "Google+";
-$a->strings["pump.io"] = "pump.io";
-$a->strings["Twitter"] = "Twitter";
-$a->strings["Diaspora Connector"] = "Diaspora Connector";
-$a->strings["GNU Social Connector"] = "GNU Social Connector";
-$a->strings["ActivityPub"] = "";
-$a->strings["pnut"] = "pnut";
-$a->strings["Male"] = "Male";
-$a->strings["Female"] = "Female";
-$a->strings["Currently Male"] = "Currently male";
-$a->strings["Currently Female"] = "Currently female";
-$a->strings["Mostly Male"] = "Mostly male";
-$a->strings["Mostly Female"] = "Mostly female";
-$a->strings["Transgender"] = "Transgender";
-$a->strings["Intersex"] = "Intersex";
-$a->strings["Transsexual"] = "Transsexual";
-$a->strings["Hermaphrodite"] = "Hermaphrodite";
-$a->strings["Neuter"] = "Neuter";
-$a->strings["Non-specific"] = "Non-specific";
-$a->strings["Other"] = "Other";
-$a->strings["Males"] = "Males";
-$a->strings["Females"] = "Females";
-$a->strings["Gay"] = "Gay";
-$a->strings["Lesbian"] = "Lesbian";
-$a->strings["No Preference"] = "No Preference";
-$a->strings["Bisexual"] = "Bisexual";
-$a->strings["Autosexual"] = "Auto-sexual";
-$a->strings["Abstinent"] = "Abstinent";
-$a->strings["Virgin"] = "Virgin";
-$a->strings["Deviant"] = "Deviant";
-$a->strings["Fetish"] = "Fetish";
-$a->strings["Oodles"] = "Oodles";
-$a->strings["Nonsexual"] = "Asexual";
-$a->strings["Single"] = "Single";
-$a->strings["Lonely"] = "Lonely";
-$a->strings["Available"] = "Available";
-$a->strings["Unavailable"] = "Unavailable";
-$a->strings["Has crush"] = "Having a crush";
-$a->strings["Infatuated"] = "Infatuated";
-$a->strings["Dating"] = "Dating";
-$a->strings["Unfaithful"] = "Unfaithful";
-$a->strings["Sex Addict"] = "Sex addict";
-$a->strings["Friends"] = "Friends";
-$a->strings["Friends/Benefits"] = "Friends with benefits";
-$a->strings["Casual"] = "Casual";
-$a->strings["Engaged"] = "Engaged";
-$a->strings["Married"] = "Married";
-$a->strings["Imaginarily married"] = "Imaginarily married";
-$a->strings["Partners"] = "Partners";
-$a->strings["Cohabiting"] = "Cohabiting";
-$a->strings["Common law"] = "Common law spouse";
-$a->strings["Happy"] = "Happy";
-$a->strings["Not looking"] = "Not looking";
-$a->strings["Swinger"] = "Swinger";
-$a->strings["Betrayed"] = "Betrayed";
-$a->strings["Separated"] = "Separated";
-$a->strings["Unstable"] = "Unstable";
-$a->strings["Divorced"] = "Divorced";
-$a->strings["Imaginarily divorced"] = "Imaginarily divorced";
-$a->strings["Widowed"] = "Widowed";
-$a->strings["Uncertain"] = "Uncertain";
-$a->strings["It's complicated"] = "It's complicated";
-$a->strings["Don't care"] = "Don't care";
-$a->strings["Ask me"] = "Ask me";
-$a->strings["General Features"] = "General";
-$a->strings["Multiple Profiles"] = "Multiple profiles";
-$a->strings["Ability to create multiple profiles"] = "Ability to create multiple profiles";
-$a->strings["Photo Location"] = "Photo location";
-$a->strings["Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map."] = "Photo metadata is normally removed. This saves the geo tag (if present) and links it to a map prior to removing other metadata.";
-$a->strings["Export Public Calendar"] = "Export public calendar";
-$a->strings["Ability for visitors to download the public calendar"] = "Ability for visitors to download the public calendar";
-$a->strings["Post Composition Features"] = "Post composition";
-$a->strings["Auto-mention Forums"] = "Auto-mention forums";
-$a->strings["Add/remove mention when a forum page is selected/deselected in ACL window."] = "Add/Remove mention when a forum page is selected or deselected in the ACL window.";
-$a->strings["Network Sidebar"] = "Network sidebar";
-$a->strings["Ability to select posts by date ranges"] = "Ability to select posts by date ranges";
-$a->strings["Protocol Filter"] = "";
-$a->strings["Enable widget to display Network posts only from selected protocols"] = "";
-$a->strings["Network Tabs"] = "Network tabs";
-$a->strings["Network New Tab"] = "Network new tab";
-$a->strings["Enable tab to display only new Network posts (from the last 12 hours)"] = "Enable tab to display only new network posts (last 12 hours)";
-$a->strings["Network Shared Links Tab"] = "Network shared links tab";
-$a->strings["Enable tab to display only Network posts with links in them"] = "Enable tab to display only network posts with links in them";
-$a->strings["Post/Comment Tools"] = "Post/Comment tools";
-$a->strings["Post Categories"] = "Post categories";
-$a->strings["Add categories to your posts"] = "Add categories to your posts";
-$a->strings["Advanced Profile Settings"] = "Advanced profiles";
-$a->strings["List Forums"] = "List forums";
-$a->strings["Show visitors public community forums at the Advanced Profile Page"] = "Show visitors of public community forums at the advanced profile page";
-$a->strings["Tag Cloud"] = "Tag cloud";
-$a->strings["Provide a personal tag cloud on your profile page"] = "Provide a personal tag cloud on your profile page";
-$a->strings["Display Membership Date"] = "Display membership date";
-$a->strings["Display membership date in profile"] = "Display membership date in profile";
-$a->strings["Forums"] = "Forums";
-$a->strings["External link to forum"] = "External link to forum";
-$a->strings["Nothing new here"] = "Nothing new here";
-$a->strings["Clear notifications"] = "Clear notifications";
-$a->strings["@name, !forum, #tags, content"] = "@name, !forum, #tags, content";
+$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Number of daily wall messages for %s exceeded. Message failed.";
+$a->strings["Unable to check your home location."] = "Unable to check your home location.";
+$a->strings["No recipient."] = "No recipient.";
+$a->strings["If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders."] = "If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders.";
+$a->strings["default"] = "default";
+$a->strings["greenzero"] = "greenzero";
+$a->strings["purplezero"] = "purplezero";
+$a->strings["easterbunny"] = "easterbunny";
+$a->strings["darkzero"] = "darkzero";
+$a->strings["comix"] = "comix";
+$a->strings["slackr"] = "slackr";
+$a->strings["Variations"] = "Variations";
+$a->strings["Top Banner"] = "Top Banner";
+$a->strings["Resize image to the width of the screen and show background color below on long pages."] = "Resize image to the width of the screen and show background color below on long pages.";
+$a->strings["Full screen"] = "Full screen";
+$a->strings["Resize image to fill entire screen, clipping either the right or the bottom."] = "Resize image to fill entire screen, clipping either the right or the bottom.";
+$a->strings["Single row mosaic"] = "Single row mosaic";
+$a->strings["Resize image to repeat it on a single row, either vertical or horizontal."] = "Resize image to repeat it on a single row, either vertical or horizontal.";
+$a->strings["Mosaic"] = "Mosaic";
+$a->strings["Repeat image to fill the screen."] = "Repeat image to fill the screen.";
+$a->strings["Custom"] = "Custom";
+$a->strings["Note"] = "Note";
+$a->strings["Check image permissions if all users are allowed to see the image"] = "Check image permissions that everyone is allowed to see the image";
+$a->strings["Select color scheme"] = "Select color scheme";
+$a->strings["Navigation bar background color"] = "Navigation bar background color:";
+$a->strings["Navigation bar icon color "] = "Navigation bar icon color:";
+$a->strings["Link color"] = "Link color:";
+$a->strings["Set the background color"] = "Background color:";
+$a->strings["Content background opacity"] = "Content background opacity";
+$a->strings["Set the background image"] = "Background image:";
+$a->strings["Background image style"] = "Background image style";
+$a->strings["Login page background image"] = "Login page background image";
+$a->strings["Login page background color"] = "Login page background color";
+$a->strings["Leave background image and color empty for theme defaults"] = "Leave background image and color empty for theme defaults";
+$a->strings["Guest"] = "Guest";
+$a->strings["Visitor"] = "Visitor";
 $a->strings["Logout"] = "Logout";
 $a->strings["End this session"] = "End this session";
 $a->strings["Status"] = "Status";
@@ -1627,78 +1527,27 @@ $a->strings["Your photos"] = "My photos";
 $a->strings["Videos"] = "Videos";
 $a->strings["Your videos"] = "My videos";
 $a->strings["Your events"] = "My events";
-$a->strings["Personal notes"] = "Personal notes";
-$a->strings["Your personal notes"] = "My personal notes";
-$a->strings["Sign in"] = "Sign in";
-$a->strings["Home"] = "Home";
-$a->strings["Home Page"] = "Home page";
-$a->strings["Create an account"] = "Create account";
-$a->strings["Help and documentation"] = "Help and documentation";
-$a->strings["Apps"] = "Apps";
-$a->strings["Addon applications, utilities, games"] = "Addon applications, utilities, games";
-$a->strings["Search site content"] = "Search site content";
-$a->strings["Full Text"] = "Full text";
-$a->strings["Tags"] = "Tags";
-$a->strings["Community"] = "Community";
-$a->strings["Conversations on this and other servers"] = "Conversations on this and other servers";
-$a->strings["Events and Calendar"] = "Events and calendar";
-$a->strings["Directory"] = "Directory";
-$a->strings["People directory"] = "People directory";
-$a->strings["Information about this friendica instance"] = "Information about this Friendica instance";
-$a->strings["Terms of Service of this Friendica instance"] = "Terms of Service of this Friendica instance";
 $a->strings["Conversations from your friends"] = "My friends' conversations";
-$a->strings["Network Reset"] = "Network reset";
-$a->strings["Load Network page with no filters"] = "Load network page without filters";
-$a->strings["Introductions"] = "Introductions";
-$a->strings["Friend Requests"] = "Friend requests";
-$a->strings["See all notifications"] = "See all notifications";
-$a->strings["Mark all system notifications seen"] = "Mark notifications as seen";
+$a->strings["Events and Calendar"] = "Events and calendar";
 $a->strings["Private mail"] = "Private messages";
-$a->strings["Inbox"] = "Inbox";
-$a->strings["Outbox"] = "Outbox";
-$a->strings["Manage"] = "Manage";
-$a->strings["Manage other pages"] = "Manage other pages";
 $a->strings["Account settings"] = "Account settings";
-$a->strings["Manage/Edit Profiles"] = "Manage/Edit profiles";
 $a->strings["Manage/edit friends and contacts"] = "Manage/Edit friends and contacts";
-$a->strings["Site setup and configuration"] = "Site setup and configuration";
-$a->strings["Navigation"] = "Navigation";
-$a->strings["Site map"] = "Site map";
-$a->strings["Embedding disabled"] = "Embedding disabled";
-$a->strings["Embedded content"] = "Embedded content";
-$a->strings["newer"] = "Later posts";
-$a->strings["older"] = "Earlier posts";
-$a->strings["first"] = "first";
-$a->strings["prev"] = "prev";
-$a->strings["next"] = "next";
-$a->strings["last"] = "last";
-$a->strings["view full size"] = "view full size";
-$a->strings["Image/photo"] = "Image/Photo";
-$a->strings["<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s"] = "<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s";
-$a->strings["$1 wrote:"] = "$1 wrote:";
-$a->strings["Encrypted content"] = "Encrypted content";
-$a->strings["Invalid source protocol"] = "Invalid source protocol";
-$a->strings["Invalid link protocol"] = "Invalid link protocol";
-$a->strings["Loading more entries..."] = "Loading more entries...";
-$a->strings["The end"] = "The end";
-$a->strings["No contacts"] = "No contacts";
-$a->strings["%d Contact"] = [
-       0 => "%d contact",
-       1 => "%d contacts",
-];
-$a->strings["View Contacts"] = "View contacts";
-$a->strings["Follow"] = "Follow";
-$a->strings["Click to open/close"] = "Reveal/hide";
-$a->strings["Export"] = "Export";
-$a->strings["Export calendar as ical"] = "Export calendar as ical";
-$a->strings["Export calendar as csv"] = "Export calendar as csv";
-$a->strings["Add New Contact"] = "Add new contact";
-$a->strings["Enter address or web location"] = "Enter address or web location";
-$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Example: jo@example.com, http://example.com/jo";
-$a->strings["%d invitation available"] = [
-       0 => "%d invitation available",
-       1 => "%d invitations available",
-];
+$a->strings["Alignment"] = "Alignment";
+$a->strings["Left"] = "Left";
+$a->strings["Center"] = "Center";
+$a->strings["Color scheme"] = "Color scheme";
+$a->strings["Posts font size"] = "Posts font size";
+$a->strings["Textareas font size"] = "Text areas font size";
+$a->strings["Comma separated list of helper forums"] = "Comma-separated list of helper forums";
+$a->strings["don't show"] = "don't show";
+$a->strings["show"] = "show";
+$a->strings["Set style"] = "Set style";
+$a->strings["Community Pages"] = "Community pages";
+$a->strings["Community Profiles"] = "Community profiles";
+$a->strings["Help or @NewHere ?"] = "Help or @NewHere ?";
+$a->strings["Connect Services"] = "Connect services";
+$a->strings["Find Friends"] = "Find friends";
+$a->strings["Last users"] = "Last users";
 $a->strings["Find People"] = "Find people";
 $a->strings["Enter name or interest"] = "Enter name or interest";
 $a->strings["Examples: Robert Morgenstein, Fishing"] = "Examples: Robert Morgenstein, fishing";
@@ -1706,34 +1555,25 @@ $a->strings["Similar Interests"] = "Similar interests";
 $a->strings["Random Profile"] = "Random profile";
 $a->strings["Invite Friends"] = "Invite friends";
 $a->strings["Local Directory"] = "Local directory";
-$a->strings["Protocols"] = "";
-$a->strings["All Protocols"] = "";
-$a->strings["Saved Folders"] = "Saved Folders";
-$a->strings["Everything"] = "Everything";
-$a->strings["Categories"] = "Categories";
-$a->strings["%d contact in common"] = [
-       0 => "%d contact in common",
-       1 => "%d contacts in common",
-];
-$a->strings["Post to Email"] = "Post to email";
-$a->strings["Hide your profile details from unknown viewers?"] = "Hide profile details from unknown viewers?";
-$a->strings["Connectors disabled, since \"%s\" is enabled."] = "Connectors are disabled since \"%s\" is enabled.";
-$a->strings["Visible to everybody"] = "Visible to everybody";
-$a->strings["show"] = "show";
-$a->strings["don't show"] = "don't show";
-$a->strings["Close"] = "Close";
-$a->strings["Welcome "] = "Welcome ";
-$a->strings["Please upload a profile photo."] = "Please upload a profile photo.";
-$a->strings["Welcome back "] = "Welcome back ";
+$a->strings["Forums"] = "Forums";
+$a->strings["External link to forum"] = "External link to forum";
+$a->strings["Quick Start"] = "Quick start";
 $a->strings["Could not find any unarchived contact entry for this URL (%s)"] = "Could not find any unarchived contact entry for this URL (%s)";
 $a->strings["The contact entries have been archived"] = "The contact entries have been archived";
 $a->strings["Enter new password: "] = "Enter new password: ";
-$a->strings["Password can't be empty"] = "Password can't be empty";
 $a->strings["Post update version number has been set to %s."] = "";
 $a->strings["Check for pending update actions."] = "";
 $a->strings["Done."] = "";
 $a->strings["Execute pending post updates."] = "";
 $a->strings["All pending post updates are done."] = "";
+$a->strings["Post to Email"] = "Post to email";
+$a->strings["Hide your profile details from unknown viewers?"] = "Hide profile details from unknown viewers?";
+$a->strings["Connectors disabled, since \"%s\" is enabled."] = "Connectors are disabled since \"%s\" is enabled.";
+$a->strings["Visible to everybody"] = "Visible to everybody";
+$a->strings["Close"] = "Close";
+$a->strings["Welcome "] = "Welcome ";
+$a->strings["Please upload a profile photo."] = "Please upload a profile photo.";
+$a->strings["Welcome back "] = "Welcome back ";
 $a->strings["The database configuration file \"config/local.config.php\" could not be written. Please use the enclosed text to create a configuration file in your web server root."] = "";
 $a->strings["You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."] = "You may need to import the file \"database.sql\" manually using phpmyadmin or mysql.";
 $a->strings["Please see the file \"INSTALL.txt\"."] = "Please see the file \"INSTALL.txt\".";
@@ -1770,6 +1610,8 @@ $a->strings["iconv PHP module"] = "iconv PHP module";
 $a->strings["Error: iconv PHP module required but not installed."] = "Error: iconv PHP module required but not installed.";
 $a->strings["POSIX PHP module"] = "POSIX PHP module";
 $a->strings["Error: POSIX PHP module required but not installed."] = "Error: POSIX PHP module required but not installed.";
+$a->strings["JSON PHP module"] = "";
+$a->strings["Error: JSON PHP module required but not installed."] = "";
 $a->strings["The web installer needs to be able to create a file called \"local.config.php\" in the \"config\" folder of your web server and it is unable to do so."] = "";
 $a->strings["This is most often a permission setting, as the web server may not be able to write files in your folder - even if you can."] = "This is most often a permission setting issue, as the web server may not be able to write files in your directory - even if you can.";
 $a->strings["At the end of this procedure, we will give you a text to save in a file named local.config.php in your Friendica \"config\" folder."] = "";
@@ -1835,6 +1677,8 @@ $a->strings["fingered"] = "fingered";
 $a->strings["rebuff"] = "rebuff";
 $a->strings["rebuffed"] = "rebuffed";
 $a->strings["System"] = "System";
+$a->strings["Home"] = "Home";
+$a->strings["Introductions"] = "Introductions";
 $a->strings["%s commented on %s's post"] = "%s commented on %s's post";
 $a->strings["%s created a new post"] = "%s posted something new";
 $a->strings["%s liked %s's post"] = "%s liked %s's post";
@@ -1846,6 +1690,18 @@ $a->strings["%s is now friends with %s"] = "%s is now friends with %s";
 $a->strings["Friend Suggestion"] = "Friend suggestion";
 $a->strings["Friend/Connect Request"] = "Friend/Contact request";
 $a->strings["New Follower"] = "New follower";
+$a->strings["Error 400 - Bad Request"] = "";
+$a->strings["Error 401 - Unauthorized"] = "";
+$a->strings["Error 403 - Forbidden"] = "";
+$a->strings["Error 404 - Not Found"] = "";
+$a->strings["Error 500 - Internal Server Error"] = "";
+$a->strings["Error 503 - Service Unavailable"] = "";
+$a->strings["The server cannot or will not process the request due to an apparent client error."] = "";
+$a->strings["Authentication is required and has failed or has not yet been provided."] = "";
+$a->strings["The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource, or may need an account."] = "";
+$a->strings["The requested resource could not be found but may be available in the future."] = "";
+$a->strings["An unexpected condition was encountered and no more specific message is suitable."] = "An unexpected condition was encountered and no more specific message is available.";
+$a->strings["The server is currently unavailable (because it is overloaded or down for maintenance). Please try again later."] = "";
 $a->strings["Update %s failed. See error logs."] = "Update %s failed. See error logs.";
 $a->strings["\n\t\t\t\tThe friendica developers released update %s recently,\n\t\t\t\tbut when I tried to install it, something went terribly wrong.\n\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."] = "\n\t\t\t\tThe friendica developers released update %s recently,\n\t\t\t\tbut when I tried to install it, something went terribly wrong.\n\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid.";
 $a->strings["The error message is\n[pre]%s[/pre]"] = "The error message is\n[pre]%s[/pre]";
@@ -1860,12 +1716,212 @@ $a->strings["%d contact not imported"] = [
        1 => "%d contacts not imported",
 ];
 $a->strings["Done. You can now login with your username and password"] = "Done. You can now login with your username and password";
+$a->strings["Birthday:"] = "Birthday:";
+$a->strings["YYYY-MM-DD or MM-DD"] = "YYYY-MM-DD or MM-DD";
+$a->strings["never"] = "never";
+$a->strings["less than a second ago"] = "less than a second ago";
+$a->strings["year"] = "year";
+$a->strings["years"] = "years";
+$a->strings["months"] = "months";
+$a->strings["weeks"] = "weeks";
+$a->strings["days"] = "days";
+$a->strings["hour"] = "hour";
+$a->strings["hours"] = "hours";
+$a->strings["minute"] = "minute";
+$a->strings["minutes"] = "minutes";
+$a->strings["second"] = "second";
+$a->strings["seconds"] = "seconds";
+$a->strings["in %1\$d %2\$s"] = "";
+$a->strings["%1\$d %2\$s ago"] = "%1\$d %2\$s ago";
+$a->strings["view full size"] = "view full size";
+$a->strings["Image/photo"] = "Image/Photo";
+$a->strings["<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s"] = "<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s";
+$a->strings["$1 wrote:"] = "$1 wrote:";
+$a->strings["Encrypted content"] = "Encrypted content";
+$a->strings["Invalid source protocol"] = "Invalid source protocol";
+$a->strings["Invalid link protocol"] = "Invalid link protocol";
+$a->strings["Loading more entries..."] = "Loading more entries...";
+$a->strings["The end"] = "The end";
+$a->strings["Follow"] = "Follow";
+$a->strings["@name, !forum, #tags, content"] = "@name, !forum, #tags, content";
+$a->strings["Full Text"] = "Full text";
+$a->strings["Tags"] = "Tags";
+$a->strings["Click to open/close"] = "Reveal/hide";
+$a->strings["Export"] = "Export";
+$a->strings["Export calendar as ical"] = "Export calendar as ical";
+$a->strings["Export calendar as csv"] = "Export calendar as csv";
+$a->strings["No contacts"] = "No contacts";
+$a->strings["%d Contact"] = [
+       0 => "%d contact",
+       1 => "%d contacts",
+];
+$a->strings["View Contacts"] = "View contacts";
+$a->strings["Frequently"] = "Frequently";
+$a->strings["Hourly"] = "Hourly";
+$a->strings["Twice daily"] = "Twice daily";
+$a->strings["Daily"] = "Daily";
+$a->strings["Weekly"] = "Weekly";
+$a->strings["Monthly"] = "Monthly";
+$a->strings["DFRN"] = "";
+$a->strings["OStatus"] = "OStatus";
+$a->strings["RSS/Atom"] = "RSS/Atom";
+$a->strings["Zot!"] = "Zot!";
+$a->strings["LinkedIn"] = "LinkedIn";
+$a->strings["XMPP/IM"] = "XMPP/IM";
+$a->strings["MySpace"] = "MySpace";
+$a->strings["Google+"] = "Google+";
+$a->strings["pump.io"] = "pump.io";
+$a->strings["Twitter"] = "Twitter";
+$a->strings["Diaspora Connector"] = "Diaspora Connector";
+$a->strings["GNU Social Connector"] = "GNU Social Connector";
+$a->strings["ActivityPub"] = "";
+$a->strings["pnut"] = "pnut";
+$a->strings["Male"] = "Male";
+$a->strings["Female"] = "Female";
+$a->strings["Currently Male"] = "Currently male";
+$a->strings["Currently Female"] = "Currently female";
+$a->strings["Mostly Male"] = "Mostly male";
+$a->strings["Mostly Female"] = "Mostly female";
+$a->strings["Transgender"] = "Transgender";
+$a->strings["Intersex"] = "Intersex";
+$a->strings["Transsexual"] = "Transsexual";
+$a->strings["Hermaphrodite"] = "Hermaphrodite";
+$a->strings["Neuter"] = "Neuter";
+$a->strings["Non-specific"] = "Non-specific";
+$a->strings["Other"] = "Other";
+$a->strings["Males"] = "Males";
+$a->strings["Females"] = "Females";
+$a->strings["Gay"] = "Gay";
+$a->strings["Lesbian"] = "Lesbian";
+$a->strings["No Preference"] = "No Preference";
+$a->strings["Bisexual"] = "Bisexual";
+$a->strings["Autosexual"] = "Auto-sexual";
+$a->strings["Abstinent"] = "Abstinent";
+$a->strings["Virgin"] = "Virgin";
+$a->strings["Deviant"] = "Deviant";
+$a->strings["Fetish"] = "Fetish";
+$a->strings["Oodles"] = "Oodles";
+$a->strings["Nonsexual"] = "Asexual";
+$a->strings["Single"] = "Single";
+$a->strings["Lonely"] = "Lonely";
+$a->strings["Available"] = "Available";
+$a->strings["Unavailable"] = "Unavailable";
+$a->strings["Has crush"] = "Having a crush";
+$a->strings["Infatuated"] = "Infatuated";
+$a->strings["Dating"] = "Dating";
+$a->strings["Unfaithful"] = "Unfaithful";
+$a->strings["Sex Addict"] = "Sex addict";
+$a->strings["Friends"] = "Friends";
+$a->strings["Friends/Benefits"] = "Friends with benefits";
+$a->strings["Casual"] = "Casual";
+$a->strings["Engaged"] = "Engaged";
+$a->strings["Married"] = "Married";
+$a->strings["Imaginarily married"] = "Imaginarily married";
+$a->strings["Partners"] = "Partners";
+$a->strings["Cohabiting"] = "Cohabiting";
+$a->strings["Common law"] = "Common law spouse";
+$a->strings["Happy"] = "Happy";
+$a->strings["Not looking"] = "Not looking";
+$a->strings["Swinger"] = "Swinger";
+$a->strings["Betrayed"] = "Betrayed";
+$a->strings["Separated"] = "Separated";
+$a->strings["Unstable"] = "Unstable";
+$a->strings["Divorced"] = "Divorced";
+$a->strings["Imaginarily divorced"] = "Imaginarily divorced";
+$a->strings["Widowed"] = "Widowed";
+$a->strings["Uncertain"] = "Uncertain";
+$a->strings["It's complicated"] = "It's complicated";
+$a->strings["Don't care"] = "Don't care";
+$a->strings["Ask me"] = "Ask me";
+$a->strings["General Features"] = "General";
+$a->strings["Multiple Profiles"] = "Multiple profiles";
+$a->strings["Ability to create multiple profiles"] = "Ability to create multiple profiles";
+$a->strings["Photo Location"] = "Photo location";
+$a->strings["Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map."] = "Photo metadata is normally removed. This saves the geo tag (if present) and links it to a map prior to removing other metadata.";
+$a->strings["Export Public Calendar"] = "Export public calendar";
+$a->strings["Ability for visitors to download the public calendar"] = "Ability for visitors to download the public calendar";
+$a->strings["Post Composition Features"] = "Post composition";
+$a->strings["Auto-mention Forums"] = "Auto-mention forums";
+$a->strings["Add/remove mention when a forum page is selected/deselected in ACL window."] = "Add/Remove mention when a forum page is selected or deselected in the ACL window.";
+$a->strings["Explicit Mentions"] = "";
+$a->strings["Add explicit mentions to comment box for manual control over who gets mentioned in replies."] = "";
+$a->strings["Network Sidebar"] = "Network sidebar";
+$a->strings["Ability to select posts by date ranges"] = "Ability to select posts by date ranges";
+$a->strings["Protocol Filter"] = "";
+$a->strings["Enable widget to display Network posts only from selected protocols"] = "";
+$a->strings["Network Tabs"] = "Network tabs";
+$a->strings["Network New Tab"] = "Network new tab";
+$a->strings["Enable tab to display only new Network posts (from the last 12 hours)"] = "Enable tab to display only new network posts (last 12 hours)";
+$a->strings["Network Shared Links Tab"] = "Network shared links tab";
+$a->strings["Enable tab to display only Network posts with links in them"] = "Enable tab to display only network posts with links in them";
+$a->strings["Post/Comment Tools"] = "Post/Comment tools";
+$a->strings["Post Categories"] = "Post categories";
+$a->strings["Add categories to your posts"] = "Add categories to your posts";
+$a->strings["Advanced Profile Settings"] = "Advanced profiles";
+$a->strings["List Forums"] = "List forums";
+$a->strings["Show visitors public community forums at the Advanced Profile Page"] = "Show visitors of public community forums at the advanced profile page";
+$a->strings["Tag Cloud"] = "Tag cloud";
+$a->strings["Provide a personal tag cloud on your profile page"] = "Provide a personal tag cloud on your profile page";
+$a->strings["Display Membership Date"] = "Display membership date";
+$a->strings["Display membership date in profile"] = "Display membership date in profile";
+$a->strings["Nothing new here"] = "Nothing new here";
+$a->strings["Clear notifications"] = "Clear notifications";
+$a->strings["Personal notes"] = "Personal notes";
+$a->strings["Your personal notes"] = "My personal notes";
+$a->strings["Sign in"] = "Sign in";
+$a->strings["Home Page"] = "Home page";
+$a->strings["Register"] = "Sign up now >>";
+$a->strings["Create an account"] = "Create account";
+$a->strings["Help and documentation"] = "Help and documentation";
+$a->strings["Apps"] = "Apps";
+$a->strings["Addon applications, utilities, games"] = "Addon applications, utilities, games";
+$a->strings["Search site content"] = "Search site content";
+$a->strings["Community"] = "Community";
+$a->strings["Conversations on this and other servers"] = "Conversations on this and other servers";
+$a->strings["Directory"] = "Directory";
+$a->strings["People directory"] = "People directory";
+$a->strings["Information about this friendica instance"] = "Information about this Friendica instance";
+$a->strings["Terms of Service of this Friendica instance"] = "Terms of Service of this Friendica instance";
+$a->strings["Network Reset"] = "Network reset";
+$a->strings["Load Network page with no filters"] = "Load network page without filters";
+$a->strings["Friend Requests"] = "Friend requests";
+$a->strings["See all notifications"] = "See all notifications";
+$a->strings["Mark all system notifications seen"] = "Mark notifications as seen";
+$a->strings["Inbox"] = "Inbox";
+$a->strings["Outbox"] = "Outbox";
+$a->strings["Manage"] = "Manage";
+$a->strings["Manage other pages"] = "Manage other pages";
+$a->strings["Manage/Edit Profiles"] = "Manage/Edit profiles";
+$a->strings["Site setup and configuration"] = "Site setup and configuration";
+$a->strings["Navigation"] = "Navigation";
+$a->strings["Site map"] = "Site map";
+$a->strings["Embedding disabled"] = "Embedding disabled";
+$a->strings["Embedded content"] = "Embedded content";
+$a->strings["newer"] = "Later posts";
+$a->strings["older"] = "Earlier posts";
+$a->strings["prev"] = "prev";
+$a->strings["last"] = "last";
+$a->strings["Add New Contact"] = "Add new contact";
+$a->strings["Enter address or web location"] = "Enter address or web location";
+$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Example: jo@example.com, http://example.com/jo";
+$a->strings["%d invitation available"] = [
+       0 => "%d invitation available",
+       1 => "%d invitations available",
+];
+$a->strings["Protocols"] = "";
+$a->strings["All Protocols"] = "";
+$a->strings["Saved Folders"] = "Saved Folders";
+$a->strings["Everything"] = "Everything";
+$a->strings["Categories"] = "Categories";
+$a->strings["%d contact in common"] = [
+       0 => "%d contact in common",
+       1 => "%d contacts in common",
+];
 $a->strings["There are no tables on MyISAM."] = "There are no tables on MyISAM.";
 $a->strings["\nError %d occurred during database update:\n%s\n"] = "\nError %d occurred during database update:\n%s\n";
 $a->strings["Errors encountered performing database changes: "] = "Errors encountered performing database changes: ";
 $a->strings["%s: Database update"] = "%s: Database update";
 $a->strings["%s: updating %s table."] = "%s: updating %s table.";
-$a->strings["Legacy module file not found: %s"] = "";
 $a->strings["Drop Contact"] = "Drop contact";
 $a->strings["Organisation"] = "Organization";
 $a->strings["News"] = "News";
@@ -1919,6 +1975,7 @@ $a->strings["View on separate page"] = "View on separate page";
 $a->strings["view on separate page"] = "view on separate page";
 $a->strings["[no subject]"] = "[no subject]";
 $a->strings["Requested account is not available."] = "Requested account is unavailable.";
+$a->strings["Requested profile is not available."] = "Requested profile is unavailable.";
 $a->strings["Edit profile"] = "Edit profile";
 $a->strings["Atom feed"] = "Atom feed";
 $a->strings["Manage/edit profiles"] = "Manage/Edit profiles";
@@ -1934,7 +1991,6 @@ $a->strings["Upcoming events the next 7 days:"] = "";
 $a->strings["Member since:"] = "Member since:";
 $a->strings["j F, Y"] = "j F, Y";
 $a->strings["j F"] = "j F";
-$a->strings["Birthday:"] = "Birthday:";
 $a->strings["Age:"] = "Age:";
 $a->strings["for %1\$d %2\$s"] = "for %1\$d %2\$s";
 $a->strings["Religion:"] = "Religion:";
@@ -1952,8 +2008,20 @@ $a->strings["Profile Details"] = "Profile Details";
 $a->strings["Only You Can See This"] = "Only you can see this.";
 $a->strings["Tips for New Members"] = "Tips for New Members";
 $a->strings["OpenWebAuth: %1\$s welcomes %2\$s"] = "";
+$a->strings["Database storage failed to update %s"] = "";
+$a->strings["Database storage failed to insert data"] = "";
+$a->strings["Filesystem storage failed to create \"%s\". Check you write permissions."] = "";
+$a->strings["Filesystem storage failed to save data to \"%s\". Check your write permissions"] = "";
+$a->strings["Storage base path"] = "";
+$a->strings["Folder where uploaded files are saved. For maximum security, This should be a path outside web server folder tree"] = "";
+$a->strings["Enter a valid existing folder"] = "";
 $a->strings["Login failed"] = "Login failed";
 $a->strings["Not enough information to authenticate"] = "Not enough information to authenticate";
+$a->strings["Password can't be empty"] = "Password can't be empty";
+$a->strings["Empty passwords are not allowed."] = "";
+$a->strings["The new password has been exposed in a public data dump, please choose another."] = "The new password has been exposed in a public data dump; please choose another.";
+$a->strings["The password can't contain accentuated letters, white spaces or colons (:)"] = "";
+$a->strings["Passwords do not match. Password unchanged."] = "Passwords do not match. Password unchanged.";
 $a->strings["An invitation is required."] = "An invitation is required.";
 $a->strings["Invitation could not be verified."] = "Invitation could not be verified.";
 $a->strings["Invalid OpenID url"] = "Invalid OpenID URL";
@@ -1978,7 +2046,6 @@ $a->strings["Your nickname can only contain a-z, 0-9 and _."] = "Your nickname c
 $a->strings["Nickname is already registered. Please choose another."] = "Nickname is already registered. Please choose another.";
 $a->strings["SERIOUS ERROR: Generation of security keys failed."] = "SERIOUS ERROR: Generation of security keys failed.";
 $a->strings["An error occurred during registration. Please try again."] = "An error occurred during registration. Please try again.";
-$a->strings["default"] = "default";
 $a->strings["An error occurred creating your default profile. Please try again."] = "An error occurred creating your default profile. Please try again.";
 $a->strings["An error occurred creating your self contact. Please try again."] = "An error occurred creating your self contact. Please try again.";
 $a->strings["An error occurred creating your default contact group. Please try again."] = "An error occurred while creating your default contact group. Please try again.";
@@ -1986,6 +2053,17 @@ $a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Yo
 $a->strings["Registration at %s"] = "Registration at %s";
 $a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Your account has been created.\n\t\t"] = "\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Your account has been created.\n\t\t";
 $a->strings["\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%3\$s\n\t\t\tLogin Name:\t\t%1\$s\n\t\t\tPassword:\t\t%5\$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %3\$s/removeme\n\n\t\t\tThank you and welcome to %2\$s."] = "\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%3\$s\n\t\t\tLogin Name:\t\t%1\$s\n\t\t\tPassword:\t\t%5\$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %3\$s/removeme\n\n\t\t\tThank you and welcome to %2\$s.";
+$a->strings["Sharing notification from Diaspora network"] = "Sharing notification from Diaspora network";
+$a->strings["Attachments:"] = "Attachments:";
+$a->strings["%s's timeline"] = "%s's timeline";
+$a->strings["%s's posts"] = "%s's posts";
+$a->strings["%s's comments"] = "%s's comments";
+$a->strings["%s is now following %s."] = "%s is now following %s.";
+$a->strings["following"] = "following";
+$a->strings["%s stopped following %s."] = "%s stopped following %s.";
+$a->strings["stopped following"] = "stopped following";
+$a->strings["(no subject)"] = "(no subject)";
+$a->strings["Item was not found."] = "Item was not found.";
 $a->strings["%d contact edited."] = [
        0 => "%d contact edited.",
        1 => "%d contacts edited.",
@@ -2108,6 +2186,26 @@ $a->strings["Website Privacy Policy"] = "Website Privacy Policy";
 $a->strings["privacy policy"] = "Privacy policy";
 $a->strings["Logged out."] = "Logged out.";
 $a->strings["Bad Request."] = "";
+$a->strings["You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking \"Register\"."] = "";
+$a->strings["If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."] = "If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items.";
+$a->strings["Your OpenID (optional): "] = "Your OpenID (optional): ";
+$a->strings["Include your profile in member directory?"] = "Include your profile in member directory?";
+$a->strings["Note for the admin"] = "Note for the admin";
+$a->strings["Leave a message for the admin, why you want to join this node"] = "Leave a message for the admin. Why do you want to join this node?";
+$a->strings["Membership on this site is by invitation only."] = "Membership on this site is by invitation only.";
+$a->strings["Your invitation code: "] = "Your invitation code: ";
+$a->strings["Your Full Name (e.g. Joe Smith, real or real-looking): "] = "Your full name: ";
+$a->strings["Your Email Address: (Initial information will be send there, so this has to be an existing address.)"] = "Your Email Address: (Initial information will be sent there, so this must be an existing address.)";
+$a->strings["Leave empty for an auto generated password."] = "Leave empty for an auto generated password.";
+$a->strings["Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be \"<strong>nickname@%s</strong>\"."] = "";
+$a->strings["Choose a nickname: "] = "Choose a nickname: ";
+$a->strings["Import your profile to this friendica instance"] = "Import an existing Friendica profile to this node.";
+$a->strings["Note: This node explicitly contains adult content"] = "";
+$a->strings["Registration successful. Please check your email for further instructions."] = "Registration successful. Please check your email for further instructions.";
+$a->strings["Failed to send email message. Here your accout details:<br> login: %s<br> password: %s<br><br>You can change your password after login."] = "Failed to send email message. Here are your account details:<br> login: %s<br> password: %s<br><br>You can change your password after login.";
+$a->strings["Registration successful."] = "Registration successful.";
+$a->strings["Your registration can not be processed."] = "Your registration cannot be processed.";
+$a->strings["Your registration is pending approval by the site owner."] = "Your registration is pending approval by the site administrator.";
 $a->strings["At the time of registration, and for providing communications between the user account and their contacts, the user has to provide a display name (pen name), an username (nickname) and a working email address. The names will be accessible on the profile page of the account by any visitor of the page, even if other profile details are not displayed. The email address will only be used to send the user notifications about interactions, but wont be visibly displayed. The listing of an account in the node's user directory or the global user directory is optional and can be controlled in the user settings, it is not necessary for communication."] = "At the time of registration, and for providing communications between the user account and their contacts, the user has to provide a display name (pen name), a username (nickname) and a working email address. The names will be accessible on the profile page of the account by any visitor of the page, even if other profile details are not displayed. The email address will only be used to send the user notifications about interactions, but won’t be visibly displayed. The listing of an account in the node's user directory or the global user directory is optional and can be controlled in the user settings, it is not necessary for communication.";
 $a->strings["This data is required for communication and is passed on to the nodes of the communication partners and is stored there. Users can enter additional private data that may be transmitted to the communication partners accounts."] = "This information is required for communication and is passed on to the nodes of the communication partners and is stored there. Users can enter additional personal information that may be transmitted to the communication partner's accounts.";
 $a->strings["At any point in time a logged in user can export their account data from the <a href=\"%1\$s/settings/uexport\">account settings</a>. If the user wants to delete their account they can do so at <a href=\"%1\$s/removeme\">%1\$s/removeme</a>. The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners."] = "At any point in time a logged in user can export their account data from the <a href=\"%1\$s/settings/uexport\">account settings</a>. If the user wants to delete their account they can do so at <a href=\"%1\$s/removeme\">%1\$s/removeme</a>. The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners.";
@@ -2136,78 +2234,20 @@ $a->strings["to"] = "to";
 $a->strings["via"] = "via";
 $a->strings["Wall-to-Wall"] = "Wall-to-wall";
 $a->strings["via Wall-To-Wall:"] = "via wall-to-wall:";
+$a->strings["Notifier task is pending"] = "";
+$a->strings["Delivery to remote servers is pending"] = "";
+$a->strings["Delivery to remote servers is underway"] = "";
+$a->strings["Delivery to remote servers is mostly done"] = "";
+$a->strings["Delivery to remote servers is done"] = "";
 $a->strings["%d comment"] = [
        0 => "%d comment",
        1 => "%d comments -",
 ];
-$a->strings["Sharing notification from Diaspora network"] = "Sharing notification from Diaspora network";
-$a->strings["Attachments:"] = "Attachments:";
-$a->strings["%s is now following %s."] = "%s is now following %s.";
-$a->strings["following"] = "following";
-$a->strings["%s stopped following %s."] = "%s stopped following %s.";
-$a->strings["stopped following"] = "stopped following";
-$a->strings["YYYY-MM-DD or MM-DD"] = "YYYY-MM-DD or MM-DD";
-$a->strings["never"] = "never";
-$a->strings["less than a second ago"] = "less than a second ago";
-$a->strings["year"] = "year";
-$a->strings["years"] = "years";
-$a->strings["months"] = "months";
-$a->strings["weeks"] = "weeks";
-$a->strings["days"] = "days";
-$a->strings["hour"] = "hour";
-$a->strings["hours"] = "hours";
-$a->strings["minute"] = "minute";
-$a->strings["minutes"] = "minutes";
-$a->strings["second"] = "second";
-$a->strings["seconds"] = "seconds";
-$a->strings["in %1\$d %2\$s"] = "";
-$a->strings["%1\$d %2\$s ago"] = "%1\$d %2\$s ago";
-$a->strings["(no subject)"] = "(no subject)";
+$a->strings["Delete this item?"] = "Delete this item?";
+$a->strings["show fewer"] = "show fewer";
+$a->strings["toggle mobile"] = "Toggle mobile";
+$a->strings["No system theme config value set."] = "No system theme configuration value set.";
+$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "The form security token was incorrect. This probably happened because the form has not been submitted within 3 hours.";
+$a->strings["Legacy module file not found: %s"] = "";
 $a->strings["%s: Updating author-id and owner-id in item and thread table. "] = "%s: Updating author-id and owner-id in item and thread table. ";
 $a->strings["%s: Updating post-type."] = "";
-$a->strings["greenzero"] = "greenzero";
-$a->strings["purplezero"] = "purplezero";
-$a->strings["easterbunny"] = "easterbunny";
-$a->strings["darkzero"] = "darkzero";
-$a->strings["comix"] = "comix";
-$a->strings["slackr"] = "slackr";
-$a->strings["Variations"] = "Variations";
-$a->strings["Custom"] = "Custom";
-$a->strings["Note"] = "Note";
-$a->strings["Check image permissions if all users are allowed to see the image"] = "Check image permissions that everyone is allowed to see the image";
-$a->strings["Select color scheme"] = "Select color scheme";
-$a->strings["Navigation bar background color"] = "Navigation bar background color:";
-$a->strings["Navigation bar icon color "] = "Navigation bar icon color:";
-$a->strings["Link color"] = "Link color:";
-$a->strings["Set the background color"] = "Background color:";
-$a->strings["Content background opacity"] = "Content background opacity";
-$a->strings["Set the background image"] = "Background image:";
-$a->strings["Background image style"] = "Background image style";
-$a->strings["Login page background image"] = "Login page background image";
-$a->strings["Login page background color"] = "Login page background color";
-$a->strings["Leave background image and color empty for theme defaults"] = "Leave background image and color empty for theme defaults";
-$a->strings["Top Banner"] = "Top Banner";
-$a->strings["Resize image to the width of the screen and show background color below on long pages."] = "Resize image to the width of the screen and show background color below on long pages.";
-$a->strings["Full screen"] = "Full screen";
-$a->strings["Resize image to fill entire screen, clipping either the right or the bottom."] = "Resize image to fill entire screen, clipping either the right or the bottom.";
-$a->strings["Single row mosaic"] = "Single row mosaic";
-$a->strings["Resize image to repeat it on a single row, either vertical or horizontal."] = "Resize image to repeat it on a single row, either vertical or horizontal.";
-$a->strings["Mosaic"] = "Mosaic";
-$a->strings["Repeat image to fill the screen."] = "Repeat image to fill the screen.";
-$a->strings["Guest"] = "Guest";
-$a->strings["Visitor"] = "Visitor";
-$a->strings["Alignment"] = "Alignment";
-$a->strings["Left"] = "Left";
-$a->strings["Center"] = "Center";
-$a->strings["Color scheme"] = "Color scheme";
-$a->strings["Posts font size"] = "Posts font size";
-$a->strings["Textareas font size"] = "Text areas font size";
-$a->strings["Comma separated list of helper forums"] = "Comma-separated list of helper forums";
-$a->strings["Set style"] = "Set style";
-$a->strings["Community Pages"] = "Community pages";
-$a->strings["Community Profiles"] = "Community profiles";
-$a->strings["Help or @NewHere ?"] = "Help or @NewHere ?";
-$a->strings["Connect Services"] = "Connect services";
-$a->strings["Find Friends"] = "Find friends";
-$a->strings["Last users"] = "Last users";
-$a->strings["Quick Start"] = "Quick start";
index bd273cafe3ed8bd1d115352edbe8ec8544bb2a21..f433d12a27f9f640eb74f0ee6cfeef2156d0e63c 100644 (file)
@@ -8,6 +8,7 @@
 # Damien Goutte-Gattat <damien+transifex@incenp.org>, 2015-2016
 # Damien Goutte-Gattat <damien+transifex@incenp.org>, 2015
 # Domovoy <domovoy@errlock.org>, 2012
+# Hypolite Petovan <hypolite@mrpetovan.com>, 2019
 # Hypolite Petovan <hypolite@mrpetovan.com>, 2016
 # Jak <inactive+Jak@transifex.com>, 2014
 # Lionel Triay <zapimax38@free.fr>, 2013
 # tomamplius <thomas@lgy.fr>, 2014
 # Tubuntu <tubuntu@testimonium.be>, 2013-2015
 # Vincent Vindarel <vindarel@mailz.org>, 2018
-# vladimir N <lapoubelle111@gmail.com>, 2018
+# Vladimir Núñez <lapoubelle111@gmail.com>, 2018
 msgid ""
 msgstr ""
 "Project-Id-Version: friendica\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-11-27 02:39-0500\n"
-"PO-Revision-Date: 2018-12-30 14:24+0000\n"
-"Last-Translator: vladimir N <lapoubelle111@gmail.com>\n"
+"POT-Creation-Date: 2019-02-10 08:14+0100\n"
+"PO-Revision-Date: 2019-02-15 20:23+0000\n"
+"Last-Translator: Hypolite Petovan <hypolite@mrpetovan.com>\n"
 "Language-Team: French (http://www.transifex.com/Friendica/friendica/language/fr/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -37,722 +38,742 @@ msgstr ""
 "Language: fr\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
-#: include/api.php:1142
+#: include/api.php:1179
 #, php-format
 msgid "Daily posting limit of %d post reached. The post was rejected."
 msgid_plural "Daily posting limit of %d posts reached. The post was rejected."
 msgstr[0] "Limite quotidienne de publications de%d atteinte. La publication a Ã©té rejetée."
 msgstr[1] "Limite quotidienne de %dpublications atteinte.  La publication a Ã©té rejetée."
 
-#: include/api.php:1156
+#: include/api.php:1193
 #, php-format
 msgid "Weekly posting limit of %d post reached. The post was rejected."
 msgid_plural ""
 "Weekly posting limit of %d posts reached. The post was rejected."
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "Limite hebdomadaire d'%d unique publication atteinte, votre soumission a Ã©té rejetée."
+msgstr[1] "Limite hebdomadaire de %d publications atteinte, votre soumission a Ã©té rejetée."
 
-#: include/api.php:1170
+#: include/api.php:1207
 #, php-format
 msgid "Monthly posting limit of %d post reached. The post was rejected."
 msgstr "La limite mensuelle de%d publication est atteinte. Votre publication a Ã©té rejetée."
 
-#: include/api.php:4335 mod/photos.php:96 mod/photos.php:204
-#: mod/photos.php:737 mod/photos.php:1170 mod/photos.php:1187
-#: mod/photos.php:1680 mod/profile_photo.php:88 mod/profile_photo.php:97
-#: mod/profile_photo.php:106 mod/profile_photo.php:215
-#: mod/profile_photo.php:304 mod/profile_photo.php:314 src/Model/User.php:652
-#: src/Model/User.php:660 src/Model/User.php:668
+#: include/api.php:4578 mod/photos.php:93 mod/photos.php:201
+#: mod/photos.php:695 mod/photos.php:1126 mod/photos.php:1143
+#: mod/photos.php:1636 mod/profile_photo.php:85 mod/profile_photo.php:94
+#: mod/profile_photo.php:103 mod/profile_photo.php:217
+#: mod/profile_photo.php:305 mod/profile_photo.php:315 src/Model/User.php:735
+#: src/Model/User.php:743 src/Model/User.php:751
 msgid "Profile Photos"
 msgstr "Photos du profil"
 
-#: include/conversation.php:156 include/conversation.php:292
-#: src/Model/Item.php:3263
+#: include/conversation.php:160 include/conversation.php:297
+#: src/Model/Item.php:3265
 msgid "event"
 msgstr "événement"
 
-#: include/conversation.php:159 include/conversation.php:169
-#: include/conversation.php:295 include/conversation.php:304
-#: mod/subthread.php:90 mod/tagger.php:72
+#: include/conversation.php:163 include/conversation.php:173
+#: include/conversation.php:300 include/conversation.php:309
+#: mod/subthread.php:88 mod/tagger.php:70
 msgid "status"
 msgstr "le statut"
 
-#: include/conversation.php:164 include/conversation.php:300
-#: mod/subthread.php:90 mod/tagger.php:72 src/Model/Item.php:3265
+#: include/conversation.php:168 include/conversation.php:305
+#: mod/subthread.php:88 mod/tagger.php:70 src/Model/Item.php:3267
 msgid "photo"
 msgstr "photo"
 
-#: include/conversation.php:176
+#: include/conversation.php:181
 #, php-format
 msgid "%1$s likes %2$s's %3$s"
 msgstr "%1$s aime %3$s de %2$s"
 
-#: include/conversation.php:178
+#: include/conversation.php:183
 #, php-format
 msgid "%1$s doesn't like %2$s's %3$s"
 msgstr "%1$s n'aime pas %3$s de %2$s"
 
-#: include/conversation.php:180
+#: include/conversation.php:185
 #, php-format
 msgid "%1$s attends %2$s's %3$s"
 msgstr "%1$s participe Ã  %3$s de %2$s"
 
-#: include/conversation.php:182
+#: include/conversation.php:187
 #, php-format
 msgid "%1$s doesn't attend %2$s's %3$s"
 msgstr "%1$s ne participe pas Ã  %3$s de %2$s"
 
-#: include/conversation.php:184
+#: include/conversation.php:189
 #, php-format
 msgid "%1$s attends maybe %2$s's %3$s"
 msgstr "%1$s participe peut-être Ã  %3$s de %2$s"
 
-#: include/conversation.php:219
+#: include/conversation.php:224
 #, php-format
 msgid "%1$s is now friends with %2$s"
 msgstr "%1$s est désormais lié Ã  %2$s"
 
-#: include/conversation.php:260
+#: include/conversation.php:265
 #, php-format
 msgid "%1$s poked %2$s"
 msgstr "%1$s a sollicité %2$s"
 
-#: include/conversation.php:314 mod/tagger.php:110
+#: include/conversation.php:319 mod/tagger.php:108
 #, php-format
 msgid "%1$s tagged %2$s's %3$s with %4$s"
 msgstr "%1$s a Ã©tiqueté %3$s de %2$s avec %4$s"
 
-#: include/conversation.php:336
+#: include/conversation.php:341
 msgid "post/item"
 msgstr "publication/élément"
 
-#: include/conversation.php:337
+#: include/conversation.php:342
 #, php-format
 msgid "%1$s marked %2$s's %3$s as favorite"
 msgstr "%1$s a marqué le %3$s de %2$s comme favori"
 
-#: include/conversation.php:551 mod/photos.php:1511 mod/profiles.php:356
+#: include/conversation.php:568 mod/photos.php:1467 mod/profiles.php:352
 msgid "Likes"
 msgstr "Derniers \"J'aime\""
 
-#: include/conversation.php:551 mod/photos.php:1511 mod/profiles.php:360
+#: include/conversation.php:568 mod/photos.php:1467 mod/profiles.php:355
 msgid "Dislikes"
 msgstr "Derniers \"Je n'aime pas\""
 
-#: include/conversation.php:552 include/conversation.php:1483
-#: mod/photos.php:1512
+#: include/conversation.php:569 include/conversation.php:1506
+#: mod/photos.php:1468
 msgid "Attending"
 msgid_plural "Attending"
 msgstr[0] "Participe"
 msgstr[1] "Participent"
 
-#: include/conversation.php:552 mod/photos.php:1512
+#: include/conversation.php:569 mod/photos.php:1468
 msgid "Not attending"
 msgstr "Ne participe pas"
 
-#: include/conversation.php:552 mod/photos.php:1512
+#: include/conversation.php:569 mod/photos.php:1468
 msgid "Might attend"
 msgstr "Participera peut-être"
 
-#: include/conversation.php:632 mod/photos.php:1568 src/Object/Post.php:206
+#: include/conversation.php:649 mod/photos.php:1524 src/Object/Post.php:207
 msgid "Select"
 msgstr "Sélectionner"
 
-#: include/conversation.php:633 mod/admin.php:1971 mod/photos.php:1569
-#: mod/settings.php:741 src/Module/Contact.php:832 src/Module/Contact.php:1107
+#: include/conversation.php:650 mod/admin.php:2072 mod/photos.php:1525
+#: mod/settings.php:726 src/Module/Contact.php:827 src/Module/Contact.php:1102
 msgid "Delete"
 msgstr "Supprimer"
 
-#: include/conversation.php:667 src/Object/Post.php:379
-#: src/Object/Post.php:380
+#: include/conversation.php:684 src/Object/Post.php:380
+#: src/Object/Post.php:381
 #, php-format
 msgid "View %s's profile @ %s"
 msgstr "Voir le profil de %s @ %s"
 
-#: include/conversation.php:679 src/Object/Post.php:367
+#: include/conversation.php:696 src/Object/Post.php:368
 msgid "Categories:"
 msgstr "Catégories :"
 
-#: include/conversation.php:680 src/Object/Post.php:368
+#: include/conversation.php:697 src/Object/Post.php:369
 msgid "Filed under:"
 msgstr "Rangé sous :"
 
-#: include/conversation.php:687 src/Object/Post.php:393
+#: include/conversation.php:704 src/Object/Post.php:394
 #, php-format
 msgid "%s from %s"
 msgstr "%s de %s"
 
-#: include/conversation.php:702
+#: include/conversation.php:719
 msgid "View in context"
 msgstr "Voir dans le contexte"
 
-#: include/conversation.php:704 include/conversation.php:1151
-#: mod/editpost.php:109 mod/message.php:264 mod/message.php:427
-#: mod/photos.php:1484 mod/wallmessage.php:141 src/Object/Post.php:418
+#: include/conversation.php:721 include/conversation.php:1172
+#: mod/editpost.php:88 mod/message.php:260 mod/message.php:442
+#: mod/photos.php:1440 mod/wallmessage.php:141 src/Object/Post.php:420
 msgid "Please wait"
 msgstr "Patientez"
 
-#: include/conversation.php:768
+#: include/conversation.php:785
 msgid "remove"
 msgstr "enlever"
 
-#: include/conversation.php:772
+#: include/conversation.php:789
 msgid "Delete Selected Items"
 msgstr "Supprimer les Ã©léments sélectionnés"
 
-#: include/conversation.php:872 view/theme/frio/theme.php:369
+#: include/conversation.php:893 view/theme/frio/theme.php:358
 msgid "Follow Thread"
 msgstr "Suivre le fil"
 
-#: include/conversation.php:873 src/Model/Contact.php:950
+#: include/conversation.php:894 src/Model/Contact.php:1032
 msgid "View Status"
 msgstr "Voir les statuts"
 
-#: include/conversation.php:874 include/conversation.php:890
-#: mod/allfriends.php:76 mod/directory.php:167 mod/dirfind.php:228
-#: mod/match.php:91 mod/suggest.php:86 src/Model/Contact.php:890
-#: src/Model/Contact.php:943 src/Model/Contact.php:951
+#: include/conversation.php:895 include/conversation.php:911
+#: mod/allfriends.php:72 mod/directory.php:167 mod/dirfind.php:226
+#: mod/match.php:87 mod/suggest.php:87 src/Model/Contact.php:972
+#: src/Model/Contact.php:1025 src/Model/Contact.php:1033
 msgid "View Profile"
 msgstr "Voir le profil"
 
-#: include/conversation.php:875 src/Model/Contact.php:952
+#: include/conversation.php:896 src/Model/Contact.php:1034
 msgid "View Photos"
 msgstr "Voir les photos"
 
-#: include/conversation.php:876 src/Model/Contact.php:944
-#: src/Model/Contact.php:953
+#: include/conversation.php:897 src/Model/Contact.php:1026
+#: src/Model/Contact.php:1035
 msgid "Network Posts"
 msgstr "Publications du réseau"
 
-#: include/conversation.php:877 src/Model/Contact.php:945
-#: src/Model/Contact.php:954
+#: include/conversation.php:898 src/Model/Contact.php:1027
+#: src/Model/Contact.php:1036
 msgid "View Contact"
 msgstr "Voir Contact"
 
-#: include/conversation.php:878 src/Model/Contact.php:956
+#: include/conversation.php:899 src/Model/Contact.php:1038
 msgid "Send PM"
 msgstr "Message privé"
 
-#: include/conversation.php:882 src/Model/Contact.php:957
+#: include/conversation.php:903 src/Model/Contact.php:1039
 msgid "Poke"
 msgstr "Sollicitations (pokes)"
 
-#: include/conversation.php:887 mod/allfriends.php:77 mod/dirfind.php:229
-#: mod/follow.php:147 mod/match.php:92 mod/suggest.php:87
-#: src/Content/Widget.php:65 src/Model/Contact.php:946
-#: src/Module/Contact.php:580 view/theme/vier/theme.php:201
+#: include/conversation.php:908 mod/allfriends.php:73 mod/dirfind.php:227
+#: mod/follow.php:147 mod/match.php:88 mod/suggest.php:88
+#: view/theme/vier/theme.php:201 src/Content/Widget.php:63
+#: src/Model/Contact.php:1028 src/Module/Contact.php:574
 msgid "Connect/Follow"
 msgstr "Se connecter/Suivre"
 
-#: include/conversation.php:1005
+#: include/conversation.php:1030
 #, php-format
 msgid "%s likes this."
 msgstr "%s aime Ã§a."
 
-#: include/conversation.php:1008
+#: include/conversation.php:1033
 #, php-format
 msgid "%s doesn't like this."
 msgstr "%s n'aime pas Ã§a."
 
-#: include/conversation.php:1011
+#: include/conversation.php:1036
 #, php-format
 msgid "%s attends."
 msgstr "%s participe"
 
-#: include/conversation.php:1014
+#: include/conversation.php:1039
 #, php-format
 msgid "%s doesn't attend."
 msgstr "%s ne participe pas"
 
-#: include/conversation.php:1017
+#: include/conversation.php:1042
 #, php-format
 msgid "%s attends maybe."
 msgstr "%s participe peut-être"
 
-#: include/conversation.php:1028
+#: include/conversation.php:1050
 msgid "and"
 msgstr "et"
 
-#: include/conversation.php:1034
+#: include/conversation.php:1056
 #, php-format
 msgid "and %d other people"
 msgstr "et %dautres personnes"
 
-#: include/conversation.php:1043
+#: include/conversation.php:1064
 #, php-format
 msgid "<span  %1$s>%2$d people</span> like this"
 msgstr "<span  %1$s>%2$d personnes</span> aiment Ã§a"
 
-#: include/conversation.php:1044
+#: include/conversation.php:1065
 #, php-format
 msgid "%s like this."
 msgstr "%s aime Ã§a."
 
-#: include/conversation.php:1047
+#: include/conversation.php:1068
 #, php-format
 msgid "<span  %1$s>%2$d people</span> don't like this"
 msgstr "<span  %1$s>%2$d personnes</span> n'aiment pas Ã§a"
 
-#: include/conversation.php:1048
+#: include/conversation.php:1069
 #, php-format
 msgid "%s don't like this."
 msgstr "%s n'aiment pas Ã§a."
 
-#: include/conversation.php:1051
+#: include/conversation.php:1072
 #, php-format
 msgid "<span  %1$s>%2$d people</span> attend"
 msgstr "<span %1$s>%2$d personnes</span> participent"
 
-#: include/conversation.php:1052
+#: include/conversation.php:1073
 #, php-format
 msgid "%s attend."
 msgstr "%s participent."
 
-#: include/conversation.php:1055
+#: include/conversation.php:1076
 #, php-format
 msgid "<span  %1$s>%2$d people</span> don't attend"
 msgstr "<span  %1$s>%2$d personnes</span> ne participent pas"
 
-#: include/conversation.php:1056
+#: include/conversation.php:1077
 #, php-format
 msgid "%s don't attend."
 msgstr "%s ne participent pas."
 
-#: include/conversation.php:1059
+#: include/conversation.php:1080
 #, php-format
 msgid "<span  %1$s>%2$d people</span> attend maybe"
 msgstr "<span  %1$s>%2$d personnes</span> vont peut-être participer"
 
-#: include/conversation.php:1060
+#: include/conversation.php:1081
 #, php-format
 msgid "%s attend maybe."
 msgstr "%sparticipent peut-être"
 
-#: include/conversation.php:1090
+#: include/conversation.php:1111
 msgid "Visible to <strong>everybody</strong>"
 msgstr "Visible par <strong>tout le monde</strong>"
 
-#: include/conversation.php:1091 src/Object/Post.php:822
+#: include/conversation.php:1112 src/Object/Post.php:882
 msgid "Please enter a image/video/audio/webpage URL:"
 msgstr "Veuillez entrer une URL d'image/vidéo/page web."
 
-#: include/conversation.php:1092
+#: include/conversation.php:1113
 msgid "Tag term:"
 msgstr "Étiquette :"
 
-#: include/conversation.php:1093 mod/filer.php:37
+#: include/conversation.php:1114 mod/filer.php:35
 msgid "Save to Folder:"
 msgstr "Sauver dans le Dossier :"
 
-#: include/conversation.php:1094
+#: include/conversation.php:1115
 msgid "Where are you right now?"
 msgstr "Où Ãªtes-vous actuellement ?"
 
-#: include/conversation.php:1095
+#: include/conversation.php:1116
 msgid "Delete item(s)?"
 msgstr "Supprimer les Ã©lément(s) ?"
 
-#: include/conversation.php:1127
+#: include/conversation.php:1148
 msgid "New Post"
 msgstr "Nouvelle publication"
 
-#: include/conversation.php:1130
+#: include/conversation.php:1151
 msgid "Share"
 msgstr "Partager"
 
-#: include/conversation.php:1131 mod/editpost.php:95 mod/message.php:262
-#: mod/message.php:424 mod/wallmessage.php:139
+#: include/conversation.php:1152 mod/editpost.php:74 mod/message.php:258
+#: mod/message.php:439 mod/wallmessage.php:139
 msgid "Upload photo"
 msgstr "Joindre photo"
 
-#: include/conversation.php:1132 mod/editpost.php:96
+#: include/conversation.php:1153 mod/editpost.php:75
 msgid "upload photo"
 msgstr "envoi image"
 
-#: include/conversation.php:1133 mod/editpost.php:97
+#: include/conversation.php:1154 mod/editpost.php:76
 msgid "Attach file"
 msgstr "Joindre fichier"
 
-#: include/conversation.php:1134 mod/editpost.php:98
+#: include/conversation.php:1155 mod/editpost.php:77
 msgid "attach file"
 msgstr "ajout fichier"
 
-#: include/conversation.php:1135 src/Object/Post.php:814
+#: include/conversation.php:1156 src/Object/Post.php:874
 msgid "Bold"
 msgstr "Gras"
 
-#: include/conversation.php:1136 src/Object/Post.php:815
+#: include/conversation.php:1157 src/Object/Post.php:875
 msgid "Italic"
 msgstr "Italique"
 
-#: include/conversation.php:1137 src/Object/Post.php:816
+#: include/conversation.php:1158 src/Object/Post.php:876
 msgid "Underline"
 msgstr "Souligné"
 
-#: include/conversation.php:1138 src/Object/Post.php:817
+#: include/conversation.php:1159 src/Object/Post.php:877
 msgid "Quote"
 msgstr "Citation"
 
-#: include/conversation.php:1139 src/Object/Post.php:818
+#: include/conversation.php:1160 src/Object/Post.php:878
 msgid "Code"
 msgstr "Code"
 
-#: include/conversation.php:1140 src/Object/Post.php:819
+#: include/conversation.php:1161 src/Object/Post.php:879
 msgid "Image"
 msgstr "Image"
 
-#: include/conversation.php:1141 src/Object/Post.php:820
+#: include/conversation.php:1162 src/Object/Post.php:880
 msgid "Link"
 msgstr "Lien"
 
-#: include/conversation.php:1142 src/Object/Post.php:821
+#: include/conversation.php:1163 src/Object/Post.php:881
 msgid "Link or Media"
 msgstr "Lien ou média"
 
-#: include/conversation.php:1143 mod/editpost.php:105
+#: include/conversation.php:1164 mod/editpost.php:84
 msgid "Set your location"
 msgstr "Définir votre localisation"
 
-#: include/conversation.php:1144 mod/editpost.php:106
+#: include/conversation.php:1165 mod/editpost.php:85
 msgid "set location"
 msgstr "spéc. localisation"
 
-#: include/conversation.php:1145 mod/editpost.php:107
+#: include/conversation.php:1166 mod/editpost.php:86
 msgid "Clear browser location"
 msgstr "Effacer la localisation du navigateur"
 
-#: include/conversation.php:1146 mod/editpost.php:108
+#: include/conversation.php:1167 mod/editpost.php:87
 msgid "clear location"
 msgstr "supp. localisation"
 
-#: include/conversation.php:1148 mod/editpost.php:123
+#: include/conversation.php:1169 mod/editpost.php:102
 msgid "Set title"
 msgstr "Définir un titre"
 
-#: include/conversation.php:1150 mod/editpost.php:125
+#: include/conversation.php:1171 mod/editpost.php:104
 msgid "Categories (comma-separated list)"
 msgstr "Catégories (séparées par des virgules)"
 
-#: include/conversation.php:1152 mod/editpost.php:110
+#: include/conversation.php:1173 mod/editpost.php:89
 msgid "Permission settings"
 msgstr "Réglages des permissions"
 
-#: include/conversation.php:1153 mod/editpost.php:140
+#: include/conversation.php:1174 mod/editpost.php:119
 msgid "permissions"
 msgstr "permissions"
 
-#: include/conversation.php:1162 mod/editpost.php:120
+#: include/conversation.php:1183 mod/editpost.php:99
 msgid "Public post"
 msgstr "Publication publique"
 
-#: include/conversation.php:1166 mod/editpost.php:131 mod/events.php:557
-#: mod/photos.php:1502 mod/photos.php:1541 mod/photos.php:1601
-#: src/Object/Post.php:823
+#: include/conversation.php:1187 mod/editpost.php:110 mod/events.php:551
+#: mod/photos.php:1458 mod/photos.php:1497 mod/photos.php:1557
+#: src/Object/Post.php:883
 msgid "Preview"
 msgstr "Aperçu"
 
-#: include/conversation.php:1170 include/items.php:402
-#: mod/dfrn_request.php:658 mod/editpost.php:134 mod/fbrowser.php:105
-#: mod/fbrowser.php:136 mod/follow.php:165 mod/message.php:155
-#: mod/photos.php:260 mod/photos.php:332 mod/settings.php:681
-#: mod/settings.php:707 mod/suggest.php:44 mod/tagrm.php:20 mod/tagrm.php:113
-#: mod/unfollow.php:134 mod/videos.php:142 src/Module/Contact.php:452
+#: include/conversation.php:1191 include/items.php:396
+#: mod/dfrn_request.php:650 mod/editpost.php:113 mod/fbrowser.php:104
+#: mod/fbrowser.php:134 mod/follow.php:161 mod/message.php:153
+#: mod/photos.php:257 mod/photos.php:325 mod/settings.php:666
+#: mod/settings.php:692 mod/suggest.php:44 mod/tagrm.php:20 mod/tagrm.php:115
+#: mod/unfollow.php:132 mod/videos.php:105 src/Module/Contact.php:447
 msgid "Cancel"
 msgstr "Annuler"
 
-#: include/conversation.php:1175
+#: include/conversation.php:1196
 msgid "Post to Groups"
 msgstr "Publier aux groupes"
 
-#: include/conversation.php:1176
+#: include/conversation.php:1197
 msgid "Post to Contacts"
 msgstr "Publier aux contacts"
 
-#: include/conversation.php:1177
+#: include/conversation.php:1198
 msgid "Private post"
 msgstr "Message privé"
 
-#: include/conversation.php:1182 mod/editpost.php:138
-#: src/Model/Profile.php:361
+#: include/conversation.php:1203 mod/editpost.php:117
+#: src/Model/Profile.php:370
 msgid "Message"
 msgstr "Message"
 
-#: include/conversation.php:1183 mod/editpost.php:139
+#: include/conversation.php:1204 mod/editpost.php:118
 msgid "Browser"
 msgstr "Navigateur"
 
-#: include/conversation.php:1454
+#: include/conversation.php:1476
 msgid "View all"
 msgstr "Voir tout"
 
-#: include/conversation.php:1477
+#: include/conversation.php:1500
 msgid "Like"
 msgid_plural "Likes"
 msgstr[0] "Like"
 msgstr[1] "Likes"
 
-#: include/conversation.php:1480
+#: include/conversation.php:1503
 msgid "Dislike"
 msgid_plural "Dislikes"
 msgstr[0] "Dislike"
 msgstr[1] "Dislikes"
 
-#: include/conversation.php:1486
+#: include/conversation.php:1509
 msgid "Not Attending"
 msgid_plural "Not Attending"
 msgstr[0] "Ne participe pas"
 msgstr[1] "Ne participent pas"
 
-#: include/conversation.php:1489 src/Content/ContactSelector.php:148
+#: include/conversation.php:1512 src/Content/ContactSelector.php:167
 msgid "Undecided"
 msgid_plural "Undecided"
 msgstr[0] "Indécis"
 msgstr[1] "Indécis"
 
-#: include/enotify.php:55
+#: include/enotify.php:57
 msgid "Friendica Notification"
 msgstr "Notification Friendica"
 
-#: include/enotify.php:58
+#: include/enotify.php:60
 msgid "Thank You,"
 msgstr "Merci, "
 
-#: include/enotify.php:61
+#: include/enotify.php:63
 #, php-format
 msgid "%1$s, %2$s Administrator"
 msgstr "%1$s,, l'administrateur de %2$s"
 
-#: include/enotify.php:63
+#: include/enotify.php:65
 #, php-format
 msgid "%s Administrator"
 msgstr "L'administrateur de %s"
 
-#: include/enotify.php:126
+#: include/enotify.php:134
 #, php-format
 msgid "[Friendica:Notify] New mail received at %s"
 msgstr "[Friendica:Notification] Nouveau courriel reçu sur %s"
 
-#: include/enotify.php:128
+#: include/enotify.php:136
 #, php-format
 msgid "%1$s sent you a new private message at %2$s."
 msgstr "%1$s vous a envoyé un nouveau message privé sur %2$s."
 
-#: include/enotify.php:129
+#: include/enotify.php:137
 msgid "a private message"
 msgstr "un message privé"
 
-#: include/enotify.php:129
+#: include/enotify.php:137
 #, php-format
 msgid "%1$s sent you %2$s."
 msgstr "%1$s vous a envoyé %2$s."
 
-#: include/enotify.php:131
+#: include/enotify.php:139
 #, php-format
 msgid "Please visit %s to view and/or reply to your private messages."
 msgstr "Merci de visiter %s pour voir vos messages privés et/ou y répondre."
 
-#: include/enotify.php:165
+#: include/enotify.php:172
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]a %3$s[/url]"
+msgstr "%1$s vous a mentionné•e sur [url=%2$s]un•e %3$s[/url]"
+
+#: include/enotify.php:178
 #, php-format
 msgid "%1$s commented on [url=%2$s]a %3$s[/url]"
 msgstr "%1$s a commenté sur [url=%2$s]un %3$s[/url]"
 
-#: include/enotify.php:173
+#: include/enotify.php:188
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]%3$s's %4$s[/url]"
+msgstr "%1$s vous a mentionné•e sur [url=%2$s]un•e %4$s de %3$s [/url]"
+
+#: include/enotify.php:195
 #, php-format
 msgid "%1$s commented on [url=%2$s]%3$s's %4$s[/url]"
 msgstr "%1$s a commenté sur [url=%2$s]le %4$s de %3$s[/url]"
 
-#: include/enotify.php:183
+#: include/enotify.php:207
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]your %3$s[/url]"
+msgstr "%1$s vous a mentionné•e sur [url=%2$s]votre %3$s[/url]"
+
+#: include/enotify.php:213
 #, php-format
 msgid "%1$s commented on [url=%2$s]your %3$s[/url]"
 msgstr "%1$s commented on [url=%2$s]your %3$s[/url]"
 
-#: include/enotify.php:195
+#: include/enotify.php:224
+#, php-format
+msgid "%1$s tagged you on [url=%2$s]their %3$s[/url]"
+msgstr "%1$s vous a mentionné•e sur [url=%2$s]leur %3$s[/url]"
+
+#: include/enotify.php:230
+#, php-format
+msgid "%1$s commented on [url=%2$s]their %3$s[/url]"
+msgstr "%1$s a commenté sur [url=%2$s]leur %3$s[/url]"
+
+#: include/enotify.php:243
+#, php-format
+msgid "[Friendica:Notify] %s tagged you"
+msgstr "[Friendica:Notification] %s vous a Ã©tiqueté"
+
+#: include/enotify.php:245
+#, php-format
+msgid "%1$s tagged you at %2$s"
+msgstr "%1$s vous a Ã©tiqueté sur %2$s"
+
+#: include/enotify.php:247
 #, php-format
 msgid "[Friendica:Notify] Comment to conversation #%1$d by %2$s"
 msgstr "[Friendica:Notification] Commentaire de %2$s sur la conversation #%1$d"
 
-#: include/enotify.php:197
+#: include/enotify.php:249
 #, php-format
 msgid "%s commented on an item/conversation you have been following."
 msgstr "%s a commenté un Ã©lément que vous suivez."
 
-#: include/enotify.php:200 include/enotify.php:215 include/enotify.php:230
-#: include/enotify.php:245 include/enotify.php:264 include/enotify.php:280
+#: include/enotify.php:254 include/enotify.php:269 include/enotify.php:284
+#: include/enotify.php:303 include/enotify.php:319
 #, php-format
 msgid "Please visit %s to view and/or reply to the conversation."
 msgstr "Merci de visiter %s pour voir la conversation et/ou y répondre."
 
-#: include/enotify.php:207
+#: include/enotify.php:261
 #, php-format
 msgid "[Friendica:Notify] %s posted to your profile wall"
 msgstr "[Friendica:Notification] %s a posté sur votre mur"
 
-#: include/enotify.php:209
+#: include/enotify.php:263
 #, php-format
 msgid "%1$s posted to your profile wall at %2$s"
 msgstr "%1$s a publié sur votre mur Ã  %2$s"
 
-#: include/enotify.php:210
+#: include/enotify.php:264
 #, php-format
 msgid "%1$s posted to [url=%2$s]your wall[/url]"
 msgstr "%1$s a posté sur [url=%2$s]votre mur[/url]"
 
-#: include/enotify.php:222
-#, php-format
-msgid "[Friendica:Notify] %s tagged you"
-msgstr "[Friendica:Notification] %s vous a Ã©tiqueté"
-
-#: include/enotify.php:224
-#, php-format
-msgid "%1$s tagged you at %2$s"
-msgstr "%1$s vous a Ã©tiqueté sur %2$s"
-
-#: include/enotify.php:225
-#, php-format
-msgid "%1$s [url=%2$s]tagged you[/url]."
-msgstr "%1$s [url=%2$s]vous a Ã©tiqueté[/url]."
-
-#: include/enotify.php:237
+#: include/enotify.php:276
 #, php-format
 msgid "[Friendica:Notify] %s shared a new post"
 msgstr "[Friendica:Notification] %s partage une nouvelle publication"
 
-#: include/enotify.php:239
+#: include/enotify.php:278
 #, php-format
 msgid "%1$s shared a new post at %2$s"
 msgstr "%1$s a partagé une nouvelle publication sur %2$s"
 
-#: include/enotify.php:240
+#: include/enotify.php:279
 #, php-format
 msgid "%1$s [url=%2$s]shared a post[/url]."
 msgstr "%1$s [url=%2$s]partage une publication[/url]."
 
-#: include/enotify.php:252
+#: include/enotify.php:291
 #, php-format
 msgid "[Friendica:Notify] %1$s poked you"
 msgstr "[Friendica:Notify] %1$s vous a sollicité"
 
-#: include/enotify.php:254
+#: include/enotify.php:293
 #, php-format
 msgid "%1$s poked you at %2$s"
 msgstr "%1$s vous a sollicité via %2$s"
 
-#: include/enotify.php:255
+#: include/enotify.php:294
 #, php-format
 msgid "%1$s [url=%2$s]poked you[/url]."
 msgstr "%1$s vous a [url=%2$s]sollicité[/url]."
 
-#: include/enotify.php:272
+#: include/enotify.php:311
 #, php-format
 msgid "[Friendica:Notify] %s tagged your post"
 msgstr "[Friendica:Notification] %s a Ã©tiqueté votre publication"
 
-#: include/enotify.php:274
+#: include/enotify.php:313
 #, php-format
 msgid "%1$s tagged your post at %2$s"
 msgstr "%1$s a Ã©tiqueté votre publication sur %2$s"
 
-#: include/enotify.php:275
+#: include/enotify.php:314
 #, php-format
 msgid "%1$s tagged [url=%2$s]your post[/url]"
 msgstr "%1$s a Ã©tiqueté [url=%2$s]votre publication[/url]"
 
-#: include/enotify.php:287
+#: include/enotify.php:326
 msgid "[Friendica:Notify] Introduction received"
 msgstr "[Friendica:Notification] Introduction reçue"
 
-#: include/enotify.php:289
+#: include/enotify.php:328
 #, php-format
 msgid "You've received an introduction from '%1$s' at %2$s"
 msgstr "Vous avez reçu une introduction de '%1$s' sur %2$s"
 
-#: include/enotify.php:290
+#: include/enotify.php:329
 #, php-format
 msgid "You've received [url=%1$s]an introduction[/url] from %2$s."
 msgstr "Vous avez reçu [url=%1$s]une introduction[/url] de %2$s."
 
-#: include/enotify.php:295 include/enotify.php:341
+#: include/enotify.php:334 include/enotify.php:380
 #, php-format
 msgid "You may visit their profile at %s"
 msgstr "Vous pouvez visiter son profil sur %s"
 
-#: include/enotify.php:297
+#: include/enotify.php:336
 #, php-format
 msgid "Please visit %s to approve or reject the introduction."
 msgstr "Merci de visiter %s pour approuver ou rejeter l'introduction."
 
-#: include/enotify.php:304
+#: include/enotify.php:343
 msgid "[Friendica:Notify] A new person is sharing with you"
 msgstr "[Notification Friendica] Une nouvelle personne partage avec vous"
 
-#: include/enotify.php:306 include/enotify.php:307
+#: include/enotify.php:345 include/enotify.php:346
 #, php-format
 msgid "%1$s is sharing with you at %2$s"
 msgstr "%1$s partage avec vous sur %2$s"
 
-#: include/enotify.php:314
+#: include/enotify.php:353
 msgid "[Friendica:Notify] You have a new follower"
 msgstr "[Friendica:Notification] Vous avez un nouvel abonné"
 
-#: include/enotify.php:316 include/enotify.php:317
+#: include/enotify.php:355 include/enotify.php:356
 #, php-format
 msgid "You have a new follower at %2$s : %1$s"
 msgstr "Vous avez un nouvel abonné Ã  %2$s : %1$s"
 
-#: include/enotify.php:330
+#: include/enotify.php:369
 msgid "[Friendica:Notify] Friend suggestion received"
 msgstr "[Friendica:Notification] Nouvelle suggestion d'amitié"
 
-#: include/enotify.php:332
+#: include/enotify.php:371
 #, php-format
 msgid "You've received a friend suggestion from '%1$s' at %2$s"
 msgstr "Vous avez reçu une suggestion de '%1$s' sur %2$s"
 
-#: include/enotify.php:333
+#: include/enotify.php:372
 #, php-format
 msgid ""
 "You've received [url=%1$s]a friend suggestion[/url] for %2$s from %3$s."
 msgstr "Vous avez reçu [url=%1$s]une suggestion[/url] de %3$s pour %2$s."
 
-#: include/enotify.php:339
+#: include/enotify.php:378
 msgid "Name:"
 msgstr "Nom :"
 
-#: include/enotify.php:340
+#: include/enotify.php:379
 msgid "Photo:"
 msgstr "Photo :"
 
-#: include/enotify.php:343
+#: include/enotify.php:382
 #, php-format
 msgid "Please visit %s to approve or reject the suggestion."
 msgstr "Merci de visiter %s pour approuver ou rejeter la suggestion."
 
-#: include/enotify.php:351 include/enotify.php:366
+#: include/enotify.php:390 include/enotify.php:405
 msgid "[Friendica:Notify] Connection accepted"
 msgstr "[Friendica:Notification] Connexion acceptée"
 
-#: include/enotify.php:353 include/enotify.php:368
+#: include/enotify.php:392 include/enotify.php:407
 #, php-format
 msgid "'%1$s' has accepted your connection request at %2$s"
 msgstr "'%1$s' a accepté votre demande de connexion Ã  %2$s"
 
-#: include/enotify.php:354 include/enotify.php:369
+#: include/enotify.php:393 include/enotify.php:408
 #, php-format
 msgid "%2$s has accepted your [url=%1$s]connection request[/url]."
 msgstr "%2$s a accepté votre [url=%1$s]demande de connexion[/url]."
 
-#: include/enotify.php:359
+#: include/enotify.php:398
 msgid ""
 "You are now mutual friends and may exchange status updates, photos, and "
 "email without restriction."
 msgstr "Vous Ãªtes désormais mutuellement amis, et pouvez Ã©changer des mises-à-jour d'état, des photos, et des messages sans restriction."
 
-#: include/enotify.php:361
+#: include/enotify.php:400
 #, php-format
 msgid "Please visit %s if you wish to make any changes to this relationship."
 msgstr "Veuillez visiter %s si vous souhaitez modifier cette relation."
 
-#: include/enotify.php:374
+#: include/enotify.php:413
 #, php-format
 msgid ""
 "'%1$s' has chosen to accept you a fan, which restricts some forms of "
@@ -761,294 +782,308 @@ msgid ""
 "automatically."
 msgstr "'%1$s' a choisi de vous accepter comme fan ce qui empêche certains canaux de communication tel les messages privés et certaines interactions de profil. Ceci est une page de célébrité ou de communauté, ces paramètres ont Ã©té appliqués automatiquement."
 
-#: include/enotify.php:376
+#: include/enotify.php:415
 #, php-format
 msgid ""
 "'%1$s' may choose to extend this into a two-way or more permissive "
 "relationship in the future."
 msgstr "%1$s peut choisir Ã  l'avenir de rendre cette relation réciproque ou au moins plus permissive."
 
-#: include/enotify.php:378
+#: include/enotify.php:417
 #, php-format
 msgid "Please visit %s  if you wish to make any changes to this relationship."
 msgstr "Veuillez visiter %s si vous souhaitez modifier cette relation."
 
-#: include/enotify.php:388 mod/removeme.php:49
+#: include/enotify.php:427 mod/removeme.php:46
 msgid "[Friendica System Notify]"
 msgstr "[Friendica Notification Sytème]"
 
-#: include/enotify.php:388
+#: include/enotify.php:427
 msgid "registration request"
 msgstr "demande d'inscription"
 
-#: include/enotify.php:390
+#: include/enotify.php:429
 #, php-format
 msgid "You've received a registration request from '%1$s' at %2$s"
 msgstr "Vous avez reçu une demande d'inscription de %1$s sur %2$s"
 
-#: include/enotify.php:391
+#: include/enotify.php:430
 #, php-format
 msgid "You've received a [url=%1$s]registration request[/url] from %2$s."
 msgstr "%2$s vous a envoyé une [url=%1$s]demande de création de compte[/url]."
 
-#: include/enotify.php:396
+#: include/enotify.php:435
 #, php-format
 msgid ""
 "Full Name:\t%s\n"
 "Site Location:\t%s\n"
 "Login Name:\t%s (%s)"
-msgstr ""
+msgstr "Nom complet :\t%s\nAdresse du site :\t%s\nIdentifiant :\t%s (%s)"
 
-#: include/enotify.php:402
+#: include/enotify.php:441
 #, php-format
 msgid "Please visit %s to approve or reject the request."
 msgstr "Veuillez visiter %s pour approuver ou rejeter la demande."
 
-#: include/items.php:359 mod/admin.php:295 mod/admin.php:2029
-#: mod/admin.php:2275 mod/display.php:75 mod/display.php:253
-#: mod/display.php:349 mod/notice.php:21 mod/viewsrc.php:22
+#: include/items.php:353 mod/admin.php:302 mod/admin.php:2131
+#: mod/admin.php:2378 mod/notice.php:20 mod/viewsrc.php:22
 msgid "Item not found."
 msgstr "Élément introuvable."
 
-#: include/items.php:397
+#: include/items.php:391
 msgid "Do you really want to delete this item?"
 msgstr "Voulez-vous vraiment supprimer cet Ã©lément ?"
 
-#: include/items.php:399 mod/api.php:112 mod/dfrn_request.php:648
-#: mod/follow.php:154 mod/message.php:152 mod/profiles.php:542
-#: mod/profiles.php:545 mod/profiles.php:567 mod/register.php:239
-#: mod/settings.php:1100 mod/settings.php:1106 mod/settings.php:1113
-#: mod/settings.php:1117 mod/settings.php:1121 mod/settings.php:1125
-#: mod/settings.php:1129 mod/settings.php:1133 mod/settings.php:1153
-#: mod/settings.php:1154 mod/settings.php:1155 mod/settings.php:1156
-#: mod/settings.php:1157 mod/suggest.php:41 src/Module/Contact.php:449
+#: include/items.php:393 mod/api.php:109 mod/dfrn_request.php:640
+#: mod/follow.php:150 mod/message.php:150 mod/profiles.php:526
+#: mod/profiles.php:529 mod/profiles.php:551 mod/settings.php:1085
+#: mod/settings.php:1091 mod/settings.php:1098 mod/settings.php:1102
+#: mod/settings.php:1106 mod/settings.php:1110 mod/settings.php:1114
+#: mod/settings.php:1118 mod/settings.php:1138 mod/settings.php:1139
+#: mod/settings.php:1140 mod/settings.php:1141 mod/settings.php:1142
+#: mod/suggest.php:41 src/Module/Contact.php:444 src/Module/Register.php:97
 msgid "Yes"
 msgstr "Oui"
 
-#: include/items.php:449 mod/allfriends.php:24 mod/api.php:37 mod/api.php:42
-#: mod/attach.php:39 mod/cal.php:304 mod/common.php:29 mod/crepair.php:101
-#: mod/delegate.php:31 mod/delegate.php:49 mod/delegate.php:60
-#: mod/dfrn_confirm.php:69 mod/dirfind.php:29 mod/editpost.php:22
-#: mod/events.php:199 mod/follow.php:58 mod/follow.php:122 mod/fsuggest.php:81
-#: mod/group.php:30 mod/invite.php:25 mod/invite.php:111 mod/item.php:169
-#: mod/manage.php:132 mod/message.php:58 mod/message.php:103
-#: mod/network.php:39 mod/nogroup.php:23 mod/notes.php:33
-#: mod/notifications.php:70 mod/ostatus_subscribe.php:18 mod/photos.php:189
-#: mod/photos.php:1064 mod/poke.php:144 mod/profiles.php:183
-#: mod/profiles.php:515 mod/profile_photo.php:33 mod/profile_photo.php:180
-#: mod/profile_photo.php:202 mod/register.php:55 mod/regmod.php:91
-#: mod/repair_ostatus.php:16 mod/settings.php:48 mod/settings.php:154
-#: mod/settings.php:670 mod/suggest.php:62 mod/uimport.php:17
-#: mod/unfollow.php:22 mod/unfollow.php:77 mod/unfollow.php:109
-#: mod/viewcontacts.php:63 mod/wallmessage.php:19 mod/wallmessage.php:43
-#: mod/wallmessage.php:82 mod/wallmessage.php:106 mod/wall_attach.php:81
-#: mod/wall_attach.php:84 mod/wall_upload.php:106 mod/wall_upload.php:109
-#: src/App.php:1786 src/Module/Contact.php:365
+#: include/items.php:443 mod/allfriends.php:22 mod/api.php:34 mod/api.php:39
+#: mod/cal.php:303 mod/common.php:27 mod/crepair.php:90 mod/delegate.php:30
+#: mod/delegate.php:48 mod/delegate.php:59 mod/dfrn_confirm.php:66
+#: mod/dirfind.php:29 mod/editpost.php:22 mod/events.php:207 mod/follow.php:57
+#: mod/follow.php:121 mod/fsuggest.php:77 mod/group.php:28 mod/invite.php:23
+#: mod/invite.php:111 mod/item.php:167 mod/manage.php:129 mod/message.php:56
+#: mod/message.php:101 mod/network.php:35 mod/nogroup.php:18 mod/notes.php:27
+#: mod/notifications.php:70 mod/ostatus_subscribe.php:18 mod/photos.php:186
+#: mod/photos.php:1020 mod/poke.php:141 mod/profile_photo.php:32
+#: mod/profile_photo.php:177 mod/profile_photo.php:204 mod/profiles.php:182
+#: mod/profiles.php:499 mod/regmod.php:89 mod/repair_ostatus.php:16
+#: mod/settings.php:48 mod/settings.php:154 mod/settings.php:655
+#: mod/suggest.php:62 mod/uimport.php:17 mod/unfollow.php:22
+#: mod/unfollow.php:77 mod/unfollow.php:109 mod/viewcontacts.php:56
+#: mod/wall_attach.php:76 mod/wall_attach.php:79 mod/wall_upload.php:107
+#: mod/wall_upload.php:110 mod/wallmessage.php:19 mod/wallmessage.php:43
+#: mod/wallmessage.php:82 mod/wallmessage.php:106 src/Module/Attach.php:42
+#: src/Module/Contact.php:360 src/Module/Register.php:193 src/App.php:1482
 msgid "Permission denied."
 msgstr "Permission refusée."
 
-#: include/items.php:520 src/Content/Feature.php:95
+#: include/items.php:514 src/Content/Feature.php:99
 msgid "Archives"
 msgstr "Archives"
 
-#: include/items.php:526 src/App.php:791 src/Content/ForumManager.php:133
-#: src/Content/Widget.php:308 src/Object/Post.php:447
-#: view/theme/vier/theme.php:258
+#: include/items.php:520 view/theme/vier/theme.php:255
+#: src/Content/ForumManager.php:135 src/Content/Widget.php:329
+#: src/Object/Post.php:458 src/App.php:666
 msgid "show more"
 msgstr "montrer plus"
 
-#: mod/admin.php:116
+#: mod/apps.php:15 src/App.php:1351
+msgid "You must be logged in to use addons. "
+msgstr "Vous devez Ãªtre connecté pour utiliser les greffons."
+
+#: mod/apps.php:20
+msgid "Applications"
+msgstr "Applications"
+
+#: mod/apps.php:25
+msgid "No installed applications."
+msgstr "Pas d'application installée."
+
+#: mod/maintenance.php:26
+msgid "System down for maintenance"
+msgstr "Système indisponible pour cause de maintenance"
+
+#: mod/admin.php:122
 msgid "Theme settings updated."
 msgstr "Réglages du thème sauvés."
 
-#: mod/admin.php:189 src/Content/Nav.php:228
+#: mod/admin.php:196 src/Content/Nav.php:231
 msgid "Information"
 msgstr "Information"
 
-#: mod/admin.php:190
+#: mod/admin.php:197
 msgid "Overview"
-msgstr ""
+msgstr "Synthèse"
 
-#: mod/admin.php:191 mod/admin.php:761
+#: mod/admin.php:198 mod/admin.php:779
 msgid "Federation Statistics"
 msgstr "Statistiques Federation"
 
-#: mod/admin.php:192
+#: mod/admin.php:199
 msgid "Configuration"
 msgstr "Configuration"
 
-#: mod/admin.php:193 mod/admin.php:1488
+#: mod/admin.php:200 mod/admin.php:1581
 msgid "Site"
 msgstr "Site"
 
-#: mod/admin.php:194 mod/admin.php:1417 mod/admin.php:1961 mod/admin.php:1978
+#: mod/admin.php:201 mod/admin.php:1482 mod/admin.php:2062 mod/admin.php:2079
 msgid "Users"
 msgstr "Utilisateurs"
 
-#: mod/admin.php:195 mod/admin.php:2077 mod/admin.php:2137 mod/settings.php:99
+#: mod/admin.php:202 mod/admin.php:2179 mod/admin.php:2239 mod/settings.php:99
 msgid "Addons"
 msgstr "Extensions"
 
-#: mod/admin.php:196 mod/admin.php:2347 mod/admin.php:2391
+#: mod/admin.php:203 mod/admin.php:2436 mod/admin.php:2480
 msgid "Themes"
 msgstr "Thèmes"
 
-#: mod/admin.php:197 mod/settings.php:77
+#: mod/admin.php:204 mod/settings.php:77
 msgid "Additional features"
 msgstr "Fonctions supplémentaires"
 
-#: mod/admin.php:198 mod/admin.php:322 mod/register.php:292
-#: src/Content/Nav.php:231 src/Module/Tos.php:71
+#: mod/admin.php:205 mod/admin.php:329 src/Content/Nav.php:234
+#: src/Module/Register.php:144 src/Module/Tos.php:73
 msgid "Terms of Service"
 msgstr "Conditions de service"
 
-#: mod/admin.php:199
+#: mod/admin.php:206
 msgid "Database"
 msgstr "Base de données"
 
-#: mod/admin.php:200
+#: mod/admin.php:207
 msgid "DB updates"
 msgstr "Mise-à-jour de la base"
 
-#: mod/admin.php:201 mod/admin.php:804
+#: mod/admin.php:208 mod/admin.php:823
 msgid "Inspect Queue"
 msgstr "Inspecter la file d'attente"
 
-#: mod/admin.php:202
+#: mod/admin.php:209
 msgid "Inspect Deferred Workers"
-msgstr ""
+msgstr "Tâches de fond reportées"
 
-#: mod/admin.php:203
+#: mod/admin.php:210
 msgid "Inspect worker Queue"
-msgstr ""
+msgstr "Tâches de fond en attente"
 
-#: mod/admin.php:204
+#: mod/admin.php:211
 msgid "Tools"
 msgstr "Outils"
 
-#: mod/admin.php:205
+#: mod/admin.php:212
 msgid "Contact Blocklist"
 msgstr "Liste de contacts bloqués"
 
-#: mod/admin.php:206 mod/admin.php:384
+#: mod/admin.php:213 mod/admin.php:395
 msgid "Server Blocklist"
 msgstr "Serveurs bloqués"
 
-#: mod/admin.php:207 mod/admin.php:542
+#: mod/admin.php:214 mod/admin.php:558
 msgid "Delete Item"
 msgstr "Supprimer un Ã©lément"
 
-#: mod/admin.php:208 mod/admin.php:209 mod/admin.php:2466
+#: mod/admin.php:215 mod/admin.php:216 mod/admin.php:2556
 msgid "Logs"
 msgstr "Journaux"
 
-#: mod/admin.php:210 mod/admin.php:2533
+#: mod/admin.php:217 mod/admin.php:2624
 msgid "View Logs"
 msgstr "Voir les logs"
 
-#: mod/admin.php:212
+#: mod/admin.php:219
 msgid "Diagnostics"
-msgstr ""
+msgstr "Diagnostics"
 
-#: mod/admin.php:213
+#: mod/admin.php:220
 msgid "PHP Info"
-msgstr ""
+msgstr "PHP Info"
 
-#: mod/admin.php:214
+#: mod/admin.php:221
 msgid "probe address"
 msgstr "Tester une adresse"
 
-#: mod/admin.php:215
+#: mod/admin.php:222
 msgid "check webfinger"
 msgstr "vérification de webfinger"
 
-#: mod/admin.php:235 src/Content/Nav.php:271
+#: mod/admin.php:242 src/Content/Nav.php:274
 msgid "Admin"
 msgstr "Admin"
 
-#: mod/admin.php:236
+#: mod/admin.php:243
 msgid "Addon Features"
-msgstr ""
+msgstr "Fonctionnalités des addons"
 
-#: mod/admin.php:237
+#: mod/admin.php:244
 msgid "User registrations waiting for confirmation"
 msgstr "Inscriptions en attente de confirmation"
 
-#: mod/admin.php:321 mod/admin.php:383 mod/admin.php:499 mod/admin.php:541
-#: mod/admin.php:760 mod/admin.php:803 mod/admin.php:854 mod/admin.php:972
-#: mod/admin.php:1487 mod/admin.php:1960 mod/admin.php:2076 mod/admin.php:2136
-#: mod/admin.php:2346 mod/admin.php:2390 mod/admin.php:2465 mod/admin.php:2532
+#: mod/admin.php:328 mod/admin.php:394 mod/admin.php:514 mod/admin.php:557
+#: mod/admin.php:778 mod/admin.php:822 mod/admin.php:875 mod/admin.php:998
+#: mod/admin.php:1580 mod/admin.php:2061 mod/admin.php:2178 mod/admin.php:2238
+#: mod/admin.php:2435 mod/admin.php:2479 mod/admin.php:2555 mod/admin.php:2623
 msgid "Administration"
 msgstr "Administration"
 
-#: mod/admin.php:323
+#: mod/admin.php:330
 msgid "Display Terms of Service"
-msgstr ""
+msgstr "Afficher les Conditions d'Utilisation"
 
-#: mod/admin.php:323
+#: mod/admin.php:330
 msgid ""
 "Enable the Terms of Service page. If this is enabled a link to the terms "
 "will be added to the registration form and the general information page."
-msgstr ""
+msgstr "Active la page de Conditions d'Utilisation. Un lien vers cette page est ajouté dans le formulaire d'inscription et la page A Propos."
 
-#: mod/admin.php:324
+#: mod/admin.php:331
 msgid "Display Privacy Statement"
-msgstr ""
+msgstr "Afficher la Politique de Confidentialité"
 
-#: mod/admin.php:324
+#: mod/admin.php:331
 #, php-format
 msgid ""
 "Show some informations regarding the needed information to operate the node "
 "according e.g. to <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."
-msgstr ""
+msgstr "Affiche les informations légales nécessaires pour publier un site Friendica en accord avec le <a href=\"%s\" target=\"_blank\">RGPD européen</a> par exemple."
 
-#: mod/admin.php:325
+#: mod/admin.php:332
 msgid "Privacy Statement Preview"
-msgstr ""
+msgstr "Aperçu de la Politique de Confidentialité"
 
-#: mod/admin.php:327
+#: mod/admin.php:334
 msgid "The Terms of Service"
-msgstr ""
+msgstr "Conditions d'Utilisation"
 
-#: mod/admin.php:327
+#: mod/admin.php:334
 msgid ""
 "Enter the Terms of Service for your node here. You can use BBCode. Headers "
 "of sections should be [h2] and below."
-msgstr ""
+msgstr "Saisissez les Conditions d'Utilisations de votre site. Les BBCodes sont disponibles, les titres commencent Ã  [h2]."
 
-#: mod/admin.php:329 mod/admin.php:1489 mod/admin.php:2138 mod/admin.php:2392
-#: mod/admin.php:2467 mod/admin.php:2614 mod/delegate.php:174
-#: mod/settings.php:680 mod/settings.php:787 mod/settings.php:875
-#: mod/settings.php:964 mod/settings.php:1189
+#: mod/admin.php:336 mod/admin.php:1582 mod/admin.php:2240 mod/admin.php:2481
+#: mod/admin.php:2557 mod/admin.php:2707 mod/delegate.php:175
+#: mod/settings.php:665 mod/settings.php:772 mod/settings.php:860
+#: mod/settings.php:949 mod/settings.php:1174
 msgid "Save Settings"
 msgstr "Sauvegarder les paramètres"
 
-#: mod/admin.php:375 mod/admin.php:393 mod/dfrn_request.php:348
-#: mod/friendica.php:122 src/Model/Contact.php:1603
+#: mod/admin.php:386 mod/admin.php:404 mod/dfrn_request.php:346
+#: mod/friendica.php:131 src/Model/Contact.php:1702
 msgid "Blocked domain"
 msgstr "Domaine bloqué"
 
-#: mod/admin.php:375
+#: mod/admin.php:386
 msgid "The blocked domain"
 msgstr "Domaine bloqué"
 
-#: mod/admin.php:376 mod/admin.php:394 mod/friendica.php:122
+#: mod/admin.php:387 mod/admin.php:405 mod/friendica.php:131
 msgid "Reason for the block"
 msgstr "Raison du blocage."
 
-#: mod/admin.php:376 mod/admin.php:389
+#: mod/admin.php:387 mod/admin.php:400
 msgid "The reason why you blocked this domain."
 msgstr "Raison pour laquelle vous souhaitez bloquer ce domaine."
 
-#: mod/admin.php:377
+#: mod/admin.php:388
 msgid "Delete domain"
 msgstr "Supprimer le domaine."
 
-#: mod/admin.php:377
+#: mod/admin.php:388
 msgid "Check to delete this entry from the blocklist"
 msgstr "Cochez la case pour retirer cette entrée de la liste noire"
 
-#: mod/admin.php:385
+#: mod/admin.php:396
 msgid ""
 "This page can be used to define a black list of servers from the federated "
 "network that are not allowed to interact with your node. For all entered "
@@ -1056,264 +1091,264 @@ msgid ""
 "server."
 msgstr "Cette page permet de créer une liste noire des serveurs de la fédération qui ne sont pas autorisés Ã  interagir avec votre serveur. Pour chaque serveur bloqué, vous devez fournir la raison du blocage."
 
-#: mod/admin.php:386
+#: mod/admin.php:397
 msgid ""
 "The list of blocked servers will be made publically available on the "
 "/friendica page so that your users and people investigating communication "
 "problems can find the reason easily."
 msgstr "La liste des serveurs bloqués sera publiée sur la page /friendica pour que les utilisateurs rencontrant des problèmes de communication puissent en comprendre la raison."
 
-#: mod/admin.php:387
+#: mod/admin.php:398
 msgid "Add new entry to block list"
 msgstr "Ajouter une nouvelle entrée Ã  la liste noire"
 
-#: mod/admin.php:388
+#: mod/admin.php:399
 msgid "Server Domain"
 msgstr "Adresse du serveur"
 
-#: mod/admin.php:388
+#: mod/admin.php:399
 msgid ""
 "The domain of the new server to add to the block list. Do not include the "
 "protocol."
 msgstr "Adresse du serveur Ã  ajouter Ã  la liste noire. Ne pas mettre le protocole."
 
-#: mod/admin.php:389
+#: mod/admin.php:400
 msgid "Block reason"
 msgstr "Raison du blocage."
 
-#: mod/admin.php:390
+#: mod/admin.php:401
 msgid "Add Entry"
 msgstr "Ajouter"
 
-#: mod/admin.php:391
+#: mod/admin.php:402
 msgid "Save changes to the blocklist"
 msgstr "Sauvegarder la liste noire"
 
-#: mod/admin.php:392
+#: mod/admin.php:403
 msgid "Current Entries in the Blocklist"
 msgstr "Entrées de la liste noire"
 
-#: mod/admin.php:395
+#: mod/admin.php:406
 msgid "Delete entry from blocklist"
 msgstr "Supprimer l'entrée de la liste noire"
 
-#: mod/admin.php:398
+#: mod/admin.php:409
 msgid "Delete entry from blocklist?"
 msgstr "Supprimer l'entrée de la liste noire ?"
 
-#: mod/admin.php:424
+#: mod/admin.php:436
 msgid "Server added to blocklist."
 msgstr "Serveur ajouté Ã  la liste noire."
 
-#: mod/admin.php:440
+#: mod/admin.php:452
 msgid "Site blocklist updated."
 msgstr "Liste noire mise Ã  jour."
 
-#: mod/admin.php:463 src/Core/Console/GlobalCommunityBlock.php:68
+#: mod/admin.php:477 src/Core/Console/GlobalCommunityBlock.php:68
 msgid "The contact has been blocked from the node"
-msgstr ""
+msgstr "Le profile distant a Ã©té bloqué"
 
-#: mod/admin.php:465 src/Core/Console/GlobalCommunityBlock.php:65
+#: mod/admin.php:479 src/Core/Console/GlobalCommunityBlock.php:65
 #, php-format
 msgid "Could not find any contact entry for this URL (%s)"
-msgstr ""
+msgstr "Aucun profil distant n'a Ã©té trouvé Ã  cette URL (%s)"
 
-#: mod/admin.php:472
+#: mod/admin.php:486
 #, php-format
 msgid "%s contact unblocked"
 msgid_plural "%s contacts unblocked"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "%s contact débloqué"
+msgstr[1] "%s profiles distants débloqués"
 
-#: mod/admin.php:500
+#: mod/admin.php:515
 msgid "Remote Contact Blocklist"
-msgstr ""
+msgstr "Liste des profiles distants bloqués"
 
-#: mod/admin.php:501
+#: mod/admin.php:516
 msgid ""
 "This page allows you to prevent any message from a remote contact to reach "
 "your node."
-msgstr ""
+msgstr "Cette page vous permet de refuser toutes les publications d'un profile distant sur votre site."
 
-#: mod/admin.php:502
+#: mod/admin.php:517
 msgid "Block Remote Contact"
-msgstr ""
+msgstr "Bloquer le profile distant"
 
-#: mod/admin.php:503 mod/admin.php:1963
+#: mod/admin.php:518 mod/admin.php:2064
 msgid "select all"
 msgstr "tout sélectionner"
 
-#: mod/admin.php:504
+#: mod/admin.php:519
 msgid "select none"
-msgstr ""
+msgstr "Sélectionner tous"
 
-#: mod/admin.php:505 mod/admin.php:1972 src/Module/Contact.php:627
-#: src/Module/Contact.php:829 src/Module/Contact.php:1082
+#: mod/admin.php:520 mod/admin.php:2073 src/Module/Contact.php:621
+#: src/Module/Contact.php:824 src/Module/Contact.php:1077
 msgid "Block"
 msgstr "Bloquer"
 
-#: mod/admin.php:506 mod/admin.php:1974 src/Module/Contact.php:627
-#: src/Module/Contact.php:829 src/Module/Contact.php:1082
+#: mod/admin.php:521 mod/admin.php:2075 src/Module/Contact.php:621
+#: src/Module/Contact.php:824 src/Module/Contact.php:1077
 msgid "Unblock"
 msgstr "Débloquer"
 
-#: mod/admin.php:507
+#: mod/admin.php:522
 msgid "No remote contact is blocked from this node."
-msgstr ""
+msgstr "Aucun profil distant n'est bloqué"
 
-#: mod/admin.php:509
+#: mod/admin.php:524
 msgid "Blocked Remote Contacts"
-msgstr ""
+msgstr "Profils distants bloqués"
 
-#: mod/admin.php:510
+#: mod/admin.php:525
 msgid "Block New Remote Contact"
-msgstr ""
+msgstr "Bloquer un nouveau profil distant"
 
-#: mod/admin.php:511
+#: mod/admin.php:526
 msgid "Photo"
-msgstr ""
+msgstr "Photo"
 
-#: mod/admin.php:511 mod/admin.php:1955 mod/admin.php:1966 mod/admin.php:1980
-#: mod/admin.php:1996 mod/crepair.php:161 mod/settings.php:682
-#: mod/settings.php:708
+#: mod/admin.php:526 mod/admin.php:2056 mod/admin.php:2067 mod/admin.php:2081
+#: mod/admin.php:2097 mod/crepair.php:159 mod/settings.php:667
+#: mod/settings.php:693
 msgid "Name"
 msgstr "Nom"
 
-#: mod/admin.php:511 mod/profiles.php:395
+#: mod/admin.php:526 mod/profiles.php:382
 msgid "Address"
 msgstr "Adresse"
 
-#: mod/admin.php:511 mod/admin.php:521 mod/follow.php:170
-#: mod/notifications.php:177 mod/notifications.php:261 mod/unfollow.php:139
-#: src/Module/Contact.php:646
+#: mod/admin.php:526 mod/admin.php:536 mod/follow.php:166
+#: mod/notifications.php:179 mod/notifications.php:263 mod/unfollow.php:137
+#: src/Module/Contact.php:639
 msgid "Profile URL"
 msgstr "URL du Profil"
 
-#: mod/admin.php:519
+#: mod/admin.php:534
 #, php-format
 msgid "%s total blocked contact"
 msgid_plural "%s total blocked contacts"
-msgstr[0] ""
-msgstr[1] ""
+msgstr[0] "%s profil distant bloqué"
+msgstr[1] "%s profils distans bloqués"
 
-#: mod/admin.php:521
+#: mod/admin.php:536
 msgid "URL of the remote contact to block."
-msgstr ""
+msgstr "URL du profil distant Ã  bloquer."
 
-#: mod/admin.php:543
+#: mod/admin.php:559
 msgid "Delete this Item"
 msgstr "Supprimer l'élément"
 
-#: mod/admin.php:544
+#: mod/admin.php:560
 msgid ""
 "On this page you can delete an item from your node. If the item is a top "
 "level posting, the entire thread will be deleted."
 msgstr "Sur cette page, vous pouvez supprimer un Ã©lément de votre noeud. Si cet Ã©lément est le premier post d'un fil de discussion, le fil de discussion entier sera supprimé."
 
-#: mod/admin.php:545
+#: mod/admin.php:561
 msgid ""
 "You need to know the GUID of the item. You can find it e.g. by looking at "
 "the display URL. The last part of http://example.com/display/123456 is the "
 "GUID, here 123456."
 msgstr "Vous devez connaître le GUID de l'élément. Vous pouvez le trouver en sélectionnant l'élément puis en lisant l'URL. La dernière partie de l'URL est le GUID. Exemple: http://example.com/display/123456 a pour GUID: 123456."
 
-#: mod/admin.php:546
+#: mod/admin.php:562
 msgid "GUID"
 msgstr "GUID"
 
-#: mod/admin.php:546
+#: mod/admin.php:562
 msgid "The GUID of the item you want to delete."
 msgstr "GUID de l'élément Ã  supprimer."
 
-#: mod/admin.php:580
+#: mod/admin.php:597
 msgid "Item marked for deletion."
 msgstr "L'élément va Ãªtre supprimé."
 
-#: mod/admin.php:651
+#: mod/admin.php:669
 msgid "unknown"
 msgstr "inconnu"
 
-#: mod/admin.php:754
+#: mod/admin.php:772
 msgid ""
 "This page offers you some numbers to the known part of the federated social "
 "network your Friendica node is part of. These numbers are not complete but "
 "only reflect the part of the network your node is aware of."
 msgstr "Cette page montre quelques statistiques de la partie connue du réseau social fédéré dont votre instance Friendica fait partie. Ces chiffres sont partiels et ne reflètent que la portion du réseau dont votre instance a connaissance."
 
-#: mod/admin.php:755
+#: mod/admin.php:773
 msgid ""
 "The <em>Auto Discovered Contact Directory</em> feature is not enabled, it "
 "will improve the data displayed here."
 msgstr "En activant la fonctionnalité <em>Répertoire de Contacts Découverts Automatiquement</em>, cela améliorera la qualité des chiffres présentés ici."
 
-#: mod/admin.php:767
+#: mod/admin.php:785
 #, php-format
 msgid ""
 "Currently this node is aware of %d nodes with %d registered users from the "
 "following platforms:"
-msgstr ""
+msgstr "Ce site a connaissance de %d sites distants totalisant %d utilisateurs répartis entre les plate-formes suivantes :"
 
-#: mod/admin.php:806 mod/admin.php:857
+#: mod/admin.php:825 mod/admin.php:878
 msgid "ID"
 msgstr "ID"
 
-#: mod/admin.php:807
+#: mod/admin.php:826
 msgid "Recipient Name"
 msgstr "Nom du destinataire"
 
-#: mod/admin.php:808
+#: mod/admin.php:827
 msgid "Recipient Profile"
 msgstr "Profil du destinataire"
 
-#: mod/admin.php:809 src/Content/Nav.php:236
-#: src/Core/NotificationsManager.php:180 view/theme/frio/theme.php:280
+#: mod/admin.php:828 view/theme/frio/theme.php:269
+#: src/Core/NotificationsManager.php:182 src/Content/Nav.php:239
 msgid "Network"
 msgstr "Réseau"
 
-#: mod/admin.php:810 mod/admin.php:859
+#: mod/admin.php:829 mod/admin.php:880
 msgid "Created"
 msgstr "Créé"
 
-#: mod/admin.php:811
+#: mod/admin.php:830
 msgid "Last Tried"
 msgstr "Dernier essai"
 
-#: mod/admin.php:812
+#: mod/admin.php:831
 msgid ""
 "This page lists the content of the queue for outgoing postings. These are "
 "postings the initial delivery failed for. They will be resend later and "
 "eventually deleted if the delivery fails permanently."
 msgstr "Cette page présente le contenu de la file d'attente pour les publications sortantes. Ce sont des messages dont la première livraison a Ã©choué. Ils seront réenvoyés plus tard et Ã©ventuellement supprimés si l'envoi Ã©choue de façon permanente."
 
-#: mod/admin.php:833
+#: mod/admin.php:854
 msgid "Inspect Deferred Worker Queue"
-msgstr ""
+msgstr "Détail des tâches de fond reportées"
 
-#: mod/admin.php:834
+#: mod/admin.php:855
 msgid ""
 "This page lists the deferred worker jobs. This are jobs that couldn't be "
 "executed at the first time."
-msgstr ""
+msgstr "Cette page détaille les tâches de fond reportées après avoir Ã©choué une première fois."
 
-#: mod/admin.php:837
+#: mod/admin.php:858
 msgid "Inspect Worker Queue"
-msgstr ""
+msgstr "Détail des tâches de fond en attente"
 
-#: mod/admin.php:838
+#: mod/admin.php:859
 msgid ""
 "This page lists the currently queued worker jobs. These jobs are handled by "
 "the worker cronjob you've set up during install."
-msgstr ""
+msgstr "Cette page détaille les tâches de fond en attente. Elles seront traitées lors de la prochaine exécution de la tâche planifiée que vous avez définie lors de l'installation."
 
-#: mod/admin.php:858
+#: mod/admin.php:879
 msgid "Job Parameters"
-msgstr ""
+msgstr "Paramètres de la tâche"
 
-#: mod/admin.php:860
+#: mod/admin.php:881
 msgid "Priority"
-msgstr ""
+msgstr "Priorité"
 
-#: mod/admin.php:885
+#: mod/admin.php:907
 #, php-format
 msgid ""
 "Your DB still runs with MyISAM tables. You should change the engine type to "
@@ -1322,538 +1357,564 @@ msgid ""
 "converting the table engines. You may also use the command <tt>php "
 "bin/console.php dbstructure toinnodb</tt> of your Friendica installation for"
 " an automatic conversion.<br />"
-msgstr ""
+msgstr "<br />Votre base de donnée comporte des tables MYISAM. Vous devriez changer pour InnoDB car il est prévu d'utiliser des fonctionnalités spécifiques Ã  InnoDB Ã  l'avenir. Veuillez consulter <a href=\"%s\">ce guide de conversion</a> pour mettre Ã  jour votre base de donnée. Vous pouvez Ã©galement exécuter la commande <tt>php bin/console.php dbstructure toinnodb</tt> Ã  la racine de votre répertoire Friendica pour une conversion automatique."
 
-#: mod/admin.php:892
+#: mod/admin.php:914
 #, php-format
 msgid ""
 "There is a new version of Friendica available for download. Your current "
 "version is %1$s, upstream version is %2$s"
 msgstr "Une nouvelle version de Friendica est disponible. Votre version est %1$s, la nouvelle version est %2$s"
 
-#: mod/admin.php:902
+#: mod/admin.php:924
 msgid ""
 "The database update failed. Please run \"php bin/console.php dbstructure "
 "update\" from the command line and have a look at the errors that might "
 "appear."
-msgstr ""
+msgstr "La mise Ã  jour automatique de la base de donnée a Ã©choué. Veuillez exécuter la commande <code>php bin/console.php dbstructure update</code> depuis votre répertoire Friendica et noter les erreurs potentielles."
 
-#: mod/admin.php:908
+#: mod/admin.php:930
 msgid "The worker was never executed. Please check your database structure!"
 msgstr "Le 'worker' n'a pas encore Ã©té exécuté. Vérifiez la structure de votre base de données."
 
-#: mod/admin.php:911
+#: mod/admin.php:933
 #, php-format
 msgid ""
 "The last worker execution was on %s UTC. This is older than one hour. Please"
 " check your crontab settings."
 msgstr "La dernière exécution du 'worker' s'est déroulée Ã  %s, c'est-à-dire il y a plus d'une heure. Vérifiez les réglages de crontab."
 
-#: mod/admin.php:917
+#: mod/admin.php:939
 #, php-format
 msgid ""
 "Friendica's configuration now is stored in config/local.config.php, please "
 "copy config/local-sample.config.php and move your config from "
 "<code>.htconfig.php</code>. See <a href=\"%s\">the Config help page</a> for "
 "help with the transition."
-msgstr ""
+msgstr "La configuration de votre site Friendica est maintenant stockée dans le fichier <code>config/local.config.php</code>, veuillez copier le fichier <code>config/local-sample.config.php</code> et transférer votre configuration depuis le fichier <code>.htconfig.php</code>. Veuillez consulter <a href=\"%s\">la page d'aide de configuration (en anglais)</a> pour vous aider dans la transition."
 
-#: mod/admin.php:924
+#: mod/admin.php:943
+#, php-format
+msgid ""
+"Friendica's configuration now is stored in config/local.config.php, please "
+"copy config/local-sample.config.php and move your config from "
+"<code>config/local.ini.php</code>. See <a href=\"%s\">the Config help "
+"page</a> for help with the transition."
+msgstr "La configuration de votre site Friendica est maintenant stockée dans le fichier <code>config/local.config.php</code>, veuillez copier le fichier <code>config/local-sample.config.php</code> et transférer votre configuration depuis le fichier <code>config/local.ini.php</code>. Veuillez consulter <a href=\"%s\">la page d'aide de configuration (en anglais)</a> pour vous aider dans la transition."
+
+#: mod/admin.php:950
 #, php-format
 msgid ""
 "<a href=\"%s\">%s</a> is not reachable on your system. This is a severe "
 "configuration issue that prevents server to server communication. See <a "
 "href=\"%s\">the installation page</a> for help."
-msgstr ""
+msgstr "<a href=\"%s\">%s</a> n'est pas accessible sur votre site. C'est un problème de configuration sévère qui empêche toute communication avec les serveurs distants. Veuillez consulter <a href=\"%s\">la page d'aide Ã  l'installation</a> (en anglais) pour plus d'information."
 
-#: mod/admin.php:930
+#: mod/admin.php:956
 msgid "Normal Account"
 msgstr "Compte normal"
 
-#: mod/admin.php:931
+#: mod/admin.php:957
 msgid "Automatic Follower Account"
-msgstr ""
+msgstr "Profile Resuivant"
 
-#: mod/admin.php:932
+#: mod/admin.php:958
 msgid "Public Forum Account"
-msgstr ""
+msgstr "Forum public"
 
-#: mod/admin.php:933
+#: mod/admin.php:959
 msgid "Automatic Friend Account"
 msgstr "Compte auto-amical"
 
-#: mod/admin.php:934
+#: mod/admin.php:960
 msgid "Blog Account"
 msgstr "Compte de blog"
 
-#: mod/admin.php:935
+#: mod/admin.php:961
 msgid "Private Forum Account"
-msgstr ""
+msgstr "Forum privé"
 
-#: mod/admin.php:958
+#: mod/admin.php:984
 msgid "Message queues"
 msgstr "Files d'attente des messages"
 
-#: mod/admin.php:964
+#: mod/admin.php:990
 msgid "Server Settings"
-msgstr ""
+msgstr "Paramètres du site"
 
-#: mod/admin.php:973
+#: mod/admin.php:999
 msgid "Summary"
 msgstr "Résumé"
 
-#: mod/admin.php:975
+#: mod/admin.php:1001
 msgid "Registered users"
 msgstr "Utilisateurs inscrits"
 
-#: mod/admin.php:977
+#: mod/admin.php:1003
 msgid "Pending registrations"
 msgstr "Inscriptions en attente"
 
-#: mod/admin.php:978
+#: mod/admin.php:1004
 msgid "Version"
 msgstr "Version"
 
-#: mod/admin.php:983
+#: mod/admin.php:1009
 msgid "Active addons"
-msgstr ""
+msgstr "Add-ons actifs"
 
-#: mod/admin.php:1015
+#: mod/admin.php:1042
 msgid "Can not parse base url. Must have at least <scheme>://<domain>"
 msgstr "Impossible d'analyser l'URL de base. Doit contenir au moins <scheme>://<domain>"
 
-#: mod/admin.php:1351
+#: mod/admin.php:1415
 msgid "Site settings updated."
 msgstr "Réglages du site mis-à-jour."
 
-#: mod/admin.php:1379 mod/settings.php:908
+#: mod/admin.php:1444 mod/settings.php:893
 msgid "No special theme for mobile devices"
 msgstr "Pas de thème particulier pour les terminaux mobiles"
 
-#: mod/admin.php:1408
+#: mod/admin.php:1473
 msgid "No community page for local users"
-msgstr ""
+msgstr "Pas de page communauté pour les utilisateurs enregistrés"
 
-#: mod/admin.php:1409
+#: mod/admin.php:1474
 msgid "No community page"
 msgstr "Aucune page de communauté"
 
-#: mod/admin.php:1410
+#: mod/admin.php:1475
 msgid "Public postings from users of this site"
 msgstr "Publications publiques des utilisateurs de ce site"
 
-#: mod/admin.php:1411
+#: mod/admin.php:1476
 msgid "Public postings from the federated network"
-msgstr ""
+msgstr "Publications publiques du réseau fédéré"
 
-#: mod/admin.php:1412
+#: mod/admin.php:1477
 msgid "Public postings from local users and the federated network"
-msgstr ""
+msgstr "Publications publiques des utilisateurs du site et du réseau fédéré"
 
-#: mod/admin.php:1416 mod/admin.php:1585 mod/admin.php:1595
-#: src/Module/Contact.php:552
+#: mod/admin.php:1481 mod/admin.php:1682 mod/admin.php:1692
+#: src/Module/Contact.php:546
 msgid "Disabled"
 msgstr "Désactivé"
 
-#: mod/admin.php:1418
+#: mod/admin.php:1483
 msgid "Users, Global Contacts"
 msgstr "Utilisateurs, Contacts Globaux"
 
-#: mod/admin.php:1419
+#: mod/admin.php:1484
 msgid "Users, Global Contacts/fallback"
 msgstr "Utilisateurs, Contacts Globaux/alternative"
 
-#: mod/admin.php:1423
+#: mod/admin.php:1488
 msgid "One month"
 msgstr "Un mois"
 
-#: mod/admin.php:1424
+#: mod/admin.php:1489
 msgid "Three months"
 msgstr "Trois mois"
 
-#: mod/admin.php:1425
+#: mod/admin.php:1490
 msgid "Half a year"
 msgstr "Six mois"
 
-#: mod/admin.php:1426
+#: mod/admin.php:1491
 msgid "One year"
 msgstr "Un an"
 
-#: mod/admin.php:1431
+#: mod/admin.php:1496
 msgid "Multi user instance"
 msgstr "Instance multi-utilisateurs"
 
-#: mod/admin.php:1457
+#: mod/admin.php:1520
 msgid "Closed"
 msgstr "Fermé"
 
-#: mod/admin.php:1458
+#: mod/admin.php:1521
 msgid "Requires approval"
 msgstr "Demande une apptrobation"
 
-#: mod/admin.php:1459
+#: mod/admin.php:1522
 msgid "Open"
 msgstr "Ouvert"
 
-#: mod/admin.php:1463
+#: mod/admin.php:1526
 msgid "No SSL policy, links will track page SSL state"
 msgstr "Pas de politique SSL, le liens conserveront l'état SSL de la page"
 
-#: mod/admin.php:1464
+#: mod/admin.php:1527
 msgid "Force all links to use SSL"
 msgstr "Forcer tous les liens Ã  utiliser SSL"
 
-#: mod/admin.php:1465
+#: mod/admin.php:1528
 msgid "Self-signed certificate, use SSL for local links only (discouraged)"
 msgstr "Certificat auto-signé, n'utiliser SSL que pour les liens locaux (non recommandé)"
 
-#: mod/admin.php:1469
+#: mod/admin.php:1532
 msgid "Don't check"
 msgstr "Ne pas rechercher"
 
-#: mod/admin.php:1470
+#: mod/admin.php:1533
 msgid "check the stable version"
 msgstr "Rechercher les versions stables"
 
-#: mod/admin.php:1471
+#: mod/admin.php:1534
 msgid "check the development version"
 msgstr "Rechercher les versions de développement"
 
-#: mod/admin.php:1490
+#: mod/admin.php:1556
+msgid "Database (legacy)"
+msgstr "Base de donnée (historique)"
+
+#: mod/admin.php:1583
 msgid "Republish users to directory"
-msgstr ""
+msgstr "Republier les utilisateurs sur le répertoire"
 
-#: mod/admin.php:1491 mod/register.php:268
+#: mod/admin.php:1584 src/Module/Register.php:121
 msgid "Registration"
 msgstr "Inscription"
 
-#: mod/admin.php:1492
+#: mod/admin.php:1585
 msgid "File upload"
 msgstr "Téléversement de fichier"
 
-#: mod/admin.php:1493
+#: mod/admin.php:1586
 msgid "Policies"
 msgstr "Politiques"
 
-#: mod/admin.php:1494 mod/events.php:561 src/Model/Profile.php:878
-#: src/Module/Contact.php:907
+#: mod/admin.php:1587 mod/events.php:555 src/Model/Profile.php:878
+#: src/Module/Contact.php:902
 msgid "Advanced"
 msgstr "Avancé"
 
-#: mod/admin.php:1495
+#: mod/admin.php:1588
 msgid "Auto Discovered Contact Directory"
 msgstr "Répertoire de Contacts Découverts Automatiquement"
 
-#: mod/admin.php:1496
+#: mod/admin.php:1589
 msgid "Performance"
 msgstr "Performance"
 
-#: mod/admin.php:1497
+#: mod/admin.php:1590
 msgid "Worker"
 msgstr "Worker"
 
-#: mod/admin.php:1498
+#: mod/admin.php:1591
 msgid "Message Relay"
-msgstr ""
+msgstr "Relai de publication"
 
-#: mod/admin.php:1499
+#: mod/admin.php:1592
 msgid "Relocate Instance"
-msgstr ""
+msgstr "Déménager le site"
 
-#: mod/admin.php:1500
+#: mod/admin.php:1593
 msgid "Warning! Advanced function. Could make this server unreachable."
-msgstr ""
+msgstr "Attention! Cette fonctionnalité avancée peut rendre votre site inaccessible."
 
-#: mod/admin.php:1503
+#: mod/admin.php:1597
 msgid "Site name"
 msgstr "Nom du site"
 
-#: mod/admin.php:1504
+#: mod/admin.php:1598
 msgid "Host name"
 msgstr "Nom de la machine hôte"
 
-#: mod/admin.php:1505
+#: mod/admin.php:1599
 msgid "Sender Email"
 msgstr "Courriel de l'émetteur"
 
-#: mod/admin.php:1505
+#: mod/admin.php:1599
 msgid ""
 "The email address your server shall use to send notification emails from."
 msgstr "L'adresse courriel Ã  partir de laquelle votre serveur enverra des courriels."
 
-#: mod/admin.php:1506
+#: mod/admin.php:1600
 msgid "Banner/Logo"
 msgstr "Bannière/Logo"
 
-#: mod/admin.php:1507
+#: mod/admin.php:1601
 msgid "Shortcut icon"
 msgstr "Icône de raccourci"
 
-#: mod/admin.php:1507
+#: mod/admin.php:1601
 msgid "Link to an icon that will be used for browsers."
 msgstr "Lien vers une icône qui sera utilisée pour les navigateurs."
 
-#: mod/admin.php:1508
+#: mod/admin.php:1602
 msgid "Touch icon"
 msgstr "Icône pour systèmes tactiles"
 
-#: mod/admin.php:1508
+#: mod/admin.php:1602
 msgid "Link to an icon that will be used for tablets and mobiles."
 msgstr "Lien vers une icône qui sera utilisée pour les tablettes et les mobiles."
 
-#: mod/admin.php:1509
+#: mod/admin.php:1603
 msgid "Additional Info"
 msgstr "Informations supplémentaires"
 
-#: mod/admin.php:1509
+#: mod/admin.php:1603
 #, php-format
 msgid ""
 "For public servers: you can add additional information here that will be "
 "listed at %s/servers."
-msgstr ""
+msgstr "Description publique destinée au <a href=\"%s\">répertoire global de sites Friendica</a>."
 
-#: mod/admin.php:1510
+#: mod/admin.php:1604
 msgid "System language"
 msgstr "Langue du système"
 
-#: mod/admin.php:1511
+#: mod/admin.php:1605
 msgid "System theme"
 msgstr "Thème du système"
 
-#: mod/admin.php:1511
+#: mod/admin.php:1605
 msgid ""
 "Default system theme - may be over-ridden by user profiles - <a href='#' "
 "id='cnftheme'>change theme settings</a>"
 msgstr "Thème par défaut sur ce site - peut Ãªtre changé au niveau du profile utilisateur - <a href='#' id='cnftheme'>changer les réglages du thème</a>"
 
-#: mod/admin.php:1512
+#: mod/admin.php:1606
 msgid "Mobile system theme"
 msgstr "Thème mobile"
 
-#: mod/admin.php:1512
+#: mod/admin.php:1606
 msgid "Theme for mobile devices"
 msgstr "Thème pour les terminaux mobiles"
 
-#: mod/admin.php:1513
+#: mod/admin.php:1607
 msgid "SSL link policy"
 msgstr "Politique SSL pour les liens"
 
-#: mod/admin.php:1513
+#: mod/admin.php:1607
 msgid "Determines whether generated links should be forced to use SSL"
 msgstr "Détermine si les liens générés doivent forcer l'utilisation de SSL"
 
-#: mod/admin.php:1514
+#: mod/admin.php:1608
 msgid "Force SSL"
 msgstr "SSL obligatoire"
 
-#: mod/admin.php:1514
+#: mod/admin.php:1608
 msgid ""
 "Force all Non-SSL requests to SSL - Attention: on some systems it could lead"
 " to endless loops."
 msgstr "Redirige toutes les requêtes en clair vers des requêtes SSL. Attention : sur certains systèmes cela peut conduire Ã  des boucles de redirection infinies."
 
-#: mod/admin.php:1515
+#: mod/admin.php:1609
 msgid "Hide help entry from navigation menu"
 msgstr "Cacher l'aide du menu de navigation"
 
-#: mod/admin.php:1515
+#: mod/admin.php:1609
 msgid ""
 "Hides the menu entry for the Help pages from the navigation menu. You can "
 "still access it calling /help directly."
 msgstr "Cacher du menu de navigation l'entrée vers les pages d'aide. Vous pouvez toujours y accéder en tapant directement /help."
 
-#: mod/admin.php:1516
+#: mod/admin.php:1610
 msgid "Single user instance"
 msgstr "Instance mono-utilisateur"
 
-#: mod/admin.php:1516
+#: mod/admin.php:1610
 msgid "Make this instance multi-user or single-user for the named user"
 msgstr "Transformer cette en instance en multi-utilisateur ou mono-utilisateur pour cet l'utilisateur."
 
-#: mod/admin.php:1517
+#: mod/admin.php:1612
+msgid "File storage backend"
+msgstr "Destination du stockage de fichier"
+
+#: mod/admin.php:1612
+msgid ""
+"The backend used to store uploaded data. If you change the storage backend, "
+"you can manually move the existing files. If you do not do so, the files "
+"uploaded before the change will still be available at the old backend. "
+"Please see <a href=\"/help/Settings#1_2_3_1\">the settings documentation</a>"
+" for more information about the choices and the moving procedure."
+msgstr "La destination du stockage des fichiers. Si vous changez cette destination, vous pouvez migrer les fichiers existants. Si vous ne le faites pas, ils resteront accessibles Ã  leur emplacement actuel. Veuillez consulter <a href=\"/help/Settings#1_2_3_1\">la page d'aide Ã  la Configuration</a> (en anglais) pour plus d'information sur les choix possibles et la procédure de migration."
+
+#: mod/admin.php:1614
 msgid "Maximum image size"
 msgstr "Taille maximale des images"
 
-#: mod/admin.php:1517
+#: mod/admin.php:1614
 msgid ""
 "Maximum size in bytes of uploaded images. Default is 0, which means no "
 "limits."
 msgstr "Taille maximale des images envoyées (en octets). 0 par défaut, c'est Ã  dire \"aucune limite\"."
 
-#: mod/admin.php:1518
+#: mod/admin.php:1615
 msgid "Maximum image length"
 msgstr "Longueur maximale des images"
 
-#: mod/admin.php:1518
+#: mod/admin.php:1615
 msgid ""
 "Maximum length in pixels of the longest side of uploaded images. Default is "
 "-1, which means no limits."
 msgstr "Longueur maximale en pixels du plus long côté des images téléversées. La valeur par défaut est -1 : absence de limite."
 
-#: mod/admin.php:1519
+#: mod/admin.php:1616
 msgid "JPEG image quality"
 msgstr "Qualité JPEG des images"
 
-#: mod/admin.php:1519
+#: mod/admin.php:1616
 msgid ""
 "Uploaded JPEGS will be saved at this quality setting [0-100]. Default is "
 "100, which is full quality."
 msgstr "Les JPEGs téléversés seront sauvegardés avec ce niveau de qualité [0-100]. La valeur par défaut est 100, soit la qualité maximale."
 
-#: mod/admin.php:1521
+#: mod/admin.php:1618
 msgid "Register policy"
 msgstr "Politique d'inscription"
 
-#: mod/admin.php:1522
+#: mod/admin.php:1619
 msgid "Maximum Daily Registrations"
 msgstr "Inscriptions maximum par jour"
 
-#: mod/admin.php:1522
+#: mod/admin.php:1619
 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 "Si les inscriptions sont permises ci-dessus, ceci fixe le nombre maximum d'inscriptions de nouveaux utilisateurs acceptées par jour. Si les inscriptions ne sont pas ouvertes, ce paramètre n'a aucun effet."
 
-#: mod/admin.php:1523
+#: mod/admin.php:1620
 msgid "Register text"
 msgstr "Texte d'inscription"
 
-#: mod/admin.php:1523
+#: mod/admin.php:1620
 msgid ""
 "Will be displayed prominently on the registration page. You can use BBCode "
 "here."
-msgstr ""
+msgstr "Ce texte est affiché sur la page d'inscription. Les BBCodes sont autorisés."
 
-#: mod/admin.php:1524
+#: mod/admin.php:1621
 msgid "Forbidden Nicknames"
-msgstr ""
+msgstr "Identifiants réservés"
 
-#: mod/admin.php:1524
+#: mod/admin.php:1621
 msgid ""
 "Comma separated list of nicknames that are forbidden from registration. "
 "Preset is a list of role names according RFC 2142."
-msgstr ""
+msgstr "Liste d'identifiants réservés séparés par des virgules. Ces identifiants ne peuvent pas Ãªtre utilisés pour s'enregistrer. La liste de base provient de la RFC 2142."
 
-#: mod/admin.php:1525
+#: mod/admin.php:1622
 msgid "Accounts abandoned after x days"
 msgstr "Les comptes sont abandonnés après x jours"
 
-#: mod/admin.php:1525
+#: mod/admin.php:1622
 msgid ""
 "Will not waste system resources polling external sites for abandonded "
 "accounts. Enter 0 for no time limit."
 msgstr "Pour ne pas gaspiller les ressources système, on cesse d'interroger les sites distants pour les comptes abandonnés. Mettre 0 pour désactiver cette fonction."
 
-#: mod/admin.php:1526
+#: mod/admin.php:1623
 msgid "Allowed friend domains"
 msgstr "Domaines autorisés"
 
-#: mod/admin.php:1526
+#: mod/admin.php:1623
 msgid ""
 "Comma separated list of domains which are allowed to establish friendships "
 "with this site. Wildcards are accepted. Empty to allow any domains"
 msgstr "Une liste de domaines, séparés par des virgules, autorisés Ã  Ã©tablir des relations avec les utilisateurs de ce site. Les '*' sont acceptés. Laissez vide pour autoriser tous les domaines"
 
-#: mod/admin.php:1527
+#: mod/admin.php:1624
 msgid "Allowed email domains"
 msgstr "Domaines courriel autorisés"
 
-#: mod/admin.php:1527
+#: mod/admin.php:1624
 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 "Liste de domaines - séparés par des virgules - dont les adresses e-mail sont autorisées Ã  s'inscrire sur ce site. Les '*' sont acceptées. Laissez vide pour autoriser tous les domaines"
 
-#: mod/admin.php:1528
+#: mod/admin.php:1625
 msgid "No OEmbed rich content"
-msgstr ""
+msgstr "Désactiver le texte riche avec OEmbed"
 
-#: mod/admin.php:1528
+#: mod/admin.php:1625
 msgid ""
 "Don't show the rich content (e.g. embedded PDF), except from the domains "
 "listed below."
-msgstr ""
+msgstr "Evite le contenu riche avec OEmbed (comme un document PDF incrusté), sauf provenant des domaines autorisés listés ci-après."
 
-#: mod/admin.php:1529
+#: mod/admin.php:1626
 msgid "Allowed OEmbed domains"
-msgstr ""
+msgstr "Domaines autorisés pour OEmbed"
 
-#: mod/admin.php:1529
+#: mod/admin.php:1626
 msgid ""
 "Comma separated list of domains which oembed content is allowed to be "
 "displayed. Wildcards are accepted."
-msgstr ""
+msgstr "Liste de noms de domaine séparés par des virgules. Ces domaines peuvent afficher du contenu riche avec OEmbed."
 
-#: mod/admin.php:1530
+#: mod/admin.php:1627
 msgid "Block public"
 msgstr "Interdire la publication globale"
 
-#: mod/admin.php:1530
+#: mod/admin.php:1627
 msgid ""
 "Check to block public access to all otherwise public personal pages on this "
 "site unless you are currently logged in."
 msgstr "Cocher pour bloquer les accès anonymes (non-connectés) Ã  tout sauf aux pages personnelles publiques."
 
-#: mod/admin.php:1531
+#: mod/admin.php:1628
 msgid "Force publish"
 msgstr "Forcer la publication globale"
 
-#: mod/admin.php:1531
+#: mod/admin.php:1628
 msgid ""
 "Check to force all profiles on this site to be listed in the site directory."
 msgstr "Cocher pour publier obligatoirement tous les profils locaux dans l'annuaire du site."
 
-#: mod/admin.php:1531
+#: mod/admin.php:1628
 msgid "Enabling this may violate privacy laws like the GDPR"
-msgstr ""
+msgstr "Activer cette option peut potentiellement enfreindre les lois sur la protection de la vie privée comme le RGPD."
 
-#: mod/admin.php:1532
+#: mod/admin.php:1629
 msgid "Global directory URL"
 msgstr "URL de l'annuaire global"
 
-#: mod/admin.php:1532
+#: mod/admin.php:1629
 msgid ""
 "URL to the global directory. If this is not set, the global directory is "
 "completely unavailable to the application."
 msgstr "URL de l'annuaire global. Si ce champ n'est pas défini, l'annuaire global sera complètement indisponible pour l'application."
 
-#: mod/admin.php:1533
+#: mod/admin.php:1630
 msgid "Private posts by default for new users"
 msgstr "Publications privées par défaut pour les nouveaux utilisateurs"
 
-#: mod/admin.php:1533
+#: mod/admin.php:1630
 msgid ""
 "Set default post permissions for all new members to the default privacy "
 "group rather than public."
 msgstr "Rendre les publications de tous les nouveaux utilisateurs accessibles seulement par le groupe de contacts par défaut, et non par tout le monde."
 
-#: mod/admin.php:1534
+#: mod/admin.php:1631
 msgid "Don't include post content in email notifications"
 msgstr "Ne pas inclure le contenu posté dans l'e-mail de notification"
 
-#: mod/admin.php:1534
+#: mod/admin.php:1631
 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 "Ne pas inclure le contenu de publication/commentaire/message privé/etc dans l'e-mail de notification qui est envoyé Ã  partir du site, par mesure de confidentialité."
 
-#: mod/admin.php:1535
+#: mod/admin.php:1632
 msgid "Disallow public access to addons listed in the apps menu."
 msgstr "Interdire l’accès public pour les greffons listées dans le menu apps."
 
-#: mod/admin.php:1535
+#: mod/admin.php:1632
 msgid ""
 "Checking this box will restrict addons listed in the apps menu to members "
 "only."
 msgstr "Cocher cette case restreint la liste des greffons dans le menu des applications seulement aux membres."
 
-#: mod/admin.php:1536
+#: mod/admin.php:1633
 msgid "Don't embed private images in posts"
 msgstr "Ne pas miniaturiser les images privées dans les publications"
 
-#: mod/admin.php:1536
+#: mod/admin.php:1633
 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 "
@@ -1861,258 +1922,258 @@ msgid ""
 "while."
 msgstr "Ne remplacez pas les images privées hébergées localement dans les publications avec une image attaché en copie, car cela signifie que le contact qui reçoit les publications contenant ces photos privées devra s’authentifier pour charger chaque image, ce qui peut prendre du temps."
 
-#: mod/admin.php:1537
+#: mod/admin.php:1634
 msgid "Explicit Content"
-msgstr ""
+msgstr "Contenu adulte"
 
-#: mod/admin.php:1537
+#: mod/admin.php:1634
 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 "
 "node information and might be used, e.g. by the global directory, to filter "
 "your node from listings of nodes to join. Additionally a note about this "
 "will be shown at the user registration page."
-msgstr ""
+msgstr "Activez cette option si votre site est principalement utilisé pour publier du contenu adulte. Cette information est publique et peut Ãªtre utilisée pour filtrer votre site dans le répertoire de site global. Elle est Ã©galement affichée sur la page d'inscription."
 
-#: mod/admin.php:1538
+#: mod/admin.php:1635
 msgid "Allow Users to set remote_self"
 msgstr "Autoriser les utilisateurs Ã  définir remote_self"
 
-#: mod/admin.php:1538
+#: mod/admin.php:1635
 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 "Cocher cette case, permet Ã  chaque utilisateur de marquer chaque contact comme un remote_self dans la boîte de dialogue de réparation des contacts. Activer cette fonction Ã  un contact engendre la réplique de toutes les publications d'un contact dans le flux d'activités des utilisateurs."
 
-#: mod/admin.php:1539
+#: mod/admin.php:1636
 msgid "Block multiple registrations"
 msgstr "Interdire les inscriptions multiples"
 
-#: mod/admin.php:1539
+#: mod/admin.php:1636
 msgid "Disallow users to register additional accounts for use as pages."
 msgstr "Ne pas permettre l'inscription de comptes multiples comme des pages."
 
-#: mod/admin.php:1540
-msgid "OpenID support"
-msgstr "Support OpenID"
+#: mod/admin.php:1637
+msgid "Disable OpenID"
+msgstr "Désactiver OpenID"
 
-#: mod/admin.php:1540
-msgid "OpenID support for registration and logins."
-msgstr "Supporter OpenID pour les inscriptions et connexions."
+#: mod/admin.php:1637
+msgid "Disable OpenID support for registration and logins."
+msgstr "Désactive OpenID pour l'inscription et l'identification."
 
-#: mod/admin.php:1541
-msgid "Fullname check"
-msgstr "Vérification du \"Prénom Nom\""
+#: mod/admin.php:1638
+msgid "No Fullname check"
+msgstr "Désactiver l'obligation de nom complet"
 
-#: mod/admin.php:1541
+#: mod/admin.php:1638
 msgid ""
-"Force users to register with a space between firstname and lastname in Full "
-"name, as an antispam measure"
-msgstr "Imposer l'utilisation d'un espace entre le prénom et le nom (dans le Nom complet), pour limiter les abus"
+"Allow users to register without a space between the first name and the last "
+"name in their full name."
+msgstr "Supprime l'obligation d'avoir au moins un espace dans le nom complet des utilisateurs pour séparer leur prénom et nom de famille."
 
-#: mod/admin.php:1542
+#: mod/admin.php:1639
 msgid "Community pages for visitors"
-msgstr ""
+msgstr "Affichage de la page communauté pour les utilisateurs anonymes"
 
-#: mod/admin.php:1542
+#: mod/admin.php:1639
 msgid ""
 "Which community pages should be available for visitors. Local users always "
 "see both pages."
-msgstr ""
+msgstr "Quelles pages communauté sont disponibles pour les utilisateurs anonymes."
 
-#: mod/admin.php:1543
+#: mod/admin.php:1640
 msgid "Posts per user on community page"
 msgstr "Nombre de publications par utilisateur sur la page de la communauté (n'est pas valide pour "
 
-#: mod/admin.php:1543
+#: mod/admin.php:1640
 msgid ""
 "The maximum number of posts per user on the community page. (Not valid for "
 "'Global Community')"
 msgstr "Nombre maximal de publications par utilisateurs sur la page de la communauté (ne s'applique pas pour Â« Communauté globale Â»)."
 
-#: mod/admin.php:1544
-msgid "Enable OStatus support"
-msgstr "Activer le support d'OStatus"
+#: mod/admin.php:1641
+msgid "Disable OStatus support"
+msgstr "Désactiver OStatus"
 
-#: mod/admin.php:1544
+#: mod/admin.php:1641
 msgid ""
-"Provide built-in OStatus (StatusNet, GNU Social etc.) compatibility. All "
+"Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All "
 "communications in OStatus are public, so privacy warnings will be "
 "occasionally displayed."
-msgstr "Fourni nativement la compatibilité avec OStatus (StatusNet, GNU Social etc.). Touts les communications utilisant OStatus sont public, des avertissements liés Ã  la vie privée seront affichés si utile."
+msgstr "Désactive le support natif d'OStatus (StatusNet, GNU Social, etc...). Toutes les communications via OStatus sont publiques, donc des avertissements de protection de vie privée sont régulièrement affichés."
 
-#: mod/admin.php:1545
+#: mod/admin.php:1642
 msgid "Only import OStatus/ActivityPub threads from our contacts"
 msgstr ""
 
-#: mod/admin.php:1545
+#: mod/admin.php:1642
 msgid ""
 "Normally we import every content from our OStatus and ActivityPub contacts. "
 "With this option we only store threads that are started by a contact that is"
 " known on our system."
 msgstr ""
 
-#: mod/admin.php:1546
+#: mod/admin.php:1643
 msgid "OStatus support can only be enabled if threading is enabled."
 msgstr "Le support OStatus ne peut Ãªtre activé que si l'imbrication des commentaires est activée."
 
-#: mod/admin.php:1548
+#: mod/admin.php:1645
 msgid ""
 "Diaspora support can't be enabled because Friendica was installed into a sub"
 " directory."
 msgstr "Le support de Diaspora ne peut pas Ãªtre activé parce que Friendica a Ã©té installé dans un sous-répertoire."
 
-#: mod/admin.php:1549
+#: mod/admin.php:1646
 msgid "Enable Diaspora support"
 msgstr "Activer le support de Diaspora"
 
-#: mod/admin.php:1549
+#: mod/admin.php:1646
 msgid "Provide built-in Diaspora network compatibility."
 msgstr "Fournir une compatibilité Diaspora intégrée."
 
-#: mod/admin.php:1550
+#: mod/admin.php:1647
 msgid "Only allow Friendica contacts"
 msgstr "N'autoriser que les contacts Friendica"
 
-#: mod/admin.php:1550
+#: mod/admin.php:1647
 msgid ""
 "All contacts must use Friendica protocols. All other built-in communication "
 "protocols disabled."
 msgstr "Tous les contacts doivent utiliser les protocoles de Friendica. Tous les autres protocoles de communication intégrés sont désactivés."
 
-#: mod/admin.php:1551
+#: mod/admin.php:1648
 msgid "Verify SSL"
 msgstr "Vérifier SSL"
 
-#: mod/admin.php:1551
+#: mod/admin.php:1648
 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 "Si vous le souhaitez, vous pouvez activier la vérification stricte des certificats. Cela signifie que vous ne pourrez pas vous connecter (du tout) aux sites SSL munis d'un certificat auto-signé."
 
-#: mod/admin.php:1552
+#: mod/admin.php:1649
 msgid "Proxy user"
 msgstr "Utilisateur du proxy"
 
-#: mod/admin.php:1553
+#: mod/admin.php:1650
 msgid "Proxy URL"
 msgstr "URL du proxy"
 
-#: mod/admin.php:1554
+#: mod/admin.php:1651
 msgid "Network timeout"
 msgstr "Dépassement du délai d'attente du réseau"
 
-#: mod/admin.php:1554
+#: mod/admin.php:1651
 msgid "Value is in seconds. Set to 0 for unlimited (not recommended)."
 msgstr "Valeur en secondes. Mettre Ã  0 pour 'illimité' (pas recommandé)."
 
-#: mod/admin.php:1555
+#: mod/admin.php:1652
 msgid "Maximum Load Average"
 msgstr "Plafond de la charge moyenne"
 
-#: mod/admin.php:1555
+#: mod/admin.php:1652
 msgid ""
 "Maximum system load before delivery and poll processes are deferred - "
 "default 50."
 msgstr "Charge système maximale Ã  partir de laquelle l'émission et la réception seront soumises Ã  un délai supplémentaire. Par défaut, 50."
 
-#: mod/admin.php:1556
+#: mod/admin.php:1653
 msgid "Maximum Load Average (Frontend)"
 msgstr "Plafond de la charge moyenne (frontale)"
 
-#: mod/admin.php:1556
+#: mod/admin.php:1653
 msgid "Maximum system load before the frontend quits service - default 50."
 msgstr "Limite de charge système pour le rendu des pages - défaut 50."
 
-#: mod/admin.php:1557
+#: mod/admin.php:1654
 msgid "Minimal Memory"
 msgstr ""
 
-#: mod/admin.php:1557
+#: mod/admin.php:1654
 msgid ""
 "Minimal free memory in MB for the worker. Needs access to /proc/meminfo - "
 "default 0 (deactivated)."
 msgstr ""
 
-#: mod/admin.php:1558
+#: mod/admin.php:1655
 msgid "Maximum table size for optimization"
 msgstr "Limite de taille de table pour l'optimisation"
 
-#: mod/admin.php:1558
+#: mod/admin.php:1655
 msgid ""
 "Maximum table size (in MB) for the automatic optimization. Enter -1 to "
 "disable it."
 msgstr ""
 
-#: mod/admin.php:1559
+#: mod/admin.php:1656
 msgid "Minimum level of fragmentation"
 msgstr "Seuil de fragmentation"
 
-#: mod/admin.php:1559
+#: mod/admin.php:1656
 msgid ""
 "Minimum fragmenation level to start the automatic optimization - default "
 "value is 30%."
 msgstr "Seuil de fragmentation pour que l'optimisation automatique se déclenche - défaut 30%."
 
-#: mod/admin.php:1561
+#: mod/admin.php:1658
 msgid "Periodical check of global contacts"
 msgstr "Vérification périodique des contacts globaux"
 
-#: mod/admin.php:1561
+#: mod/admin.php:1658
 msgid ""
 "If enabled, the global contacts are checked periodically for missing or "
 "outdated data and the vitality of the contacts and servers."
 msgstr "Si activé, les données manquantes et obsolètes et la vitalité des contacts et des serveurs seront vérifiées périodiquement dans les contacts globaux."
 
-#: mod/admin.php:1562
+#: mod/admin.php:1659
 msgid "Days between requery"
 msgstr "Nombre de jours entre les requêtes"
 
-#: mod/admin.php:1562
+#: mod/admin.php:1659
 msgid "Number of days after which a server is requeried for his contacts."
 msgstr "Nombre de jours avant qu'une requête de contacts soient envoyée Ã  nouveau Ã  un serveur."
 
-#: mod/admin.php:1563
+#: mod/admin.php:1660
 msgid "Discover contacts from other servers"
 msgstr "Découvrir des contacts des autres serveurs"
 
-#: mod/admin.php:1563
+#: mod/admin.php:1660
 msgid ""
 "Periodically query other servers for contacts. You can choose between "
 "'users': the users on the remote system, 'Global Contacts': active contacts "
 "that are known on the system. The fallback is meant for Redmatrix servers "
 "and older friendica servers, where global contacts weren't available. The "
-"fallback increases the server load, so the recommened setting is 'Users, "
+"fallback increases the server load, so the recommended setting is 'Users, "
 "Global Contacts'."
 msgstr ""
 
-#: mod/admin.php:1564
+#: mod/admin.php:1661
 msgid "Timeframe for fetching global contacts"
 msgstr "Fréquence de récupération des contacts globaux"
 
-#: mod/admin.php:1564
+#: mod/admin.php:1661
 msgid ""
 "When the discovery is activated, this value defines the timeframe for the "
 "activity of the global contacts that are fetched from other servers."
 msgstr "Quand la découverte de contacts est activée, cette valeur détermine la fréquence de récupération des données des contacts globaux présents sur d'autres serveurs."
 
-#: mod/admin.php:1565
+#: mod/admin.php:1662
 msgid "Search the local directory"
 msgstr "Chercher dans le répertoire local"
 
-#: mod/admin.php:1565
+#: mod/admin.php:1662
 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 "Cherche dans le répertoire local au lieu du répertoire local. Quand une recherche locale est effectuée, la même recherche est effectuée dans le répertoire global en tâche de fond. Cela améliore les résultats de la recherche si elle est réitérée."
 
-#: mod/admin.php:1567
+#: mod/admin.php:1664
 msgid "Publish server information"
 msgstr "Publier les informations du serveur"
 
-#: mod/admin.php:1567
+#: mod/admin.php:1664
 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 "
@@ -2120,50 +2181,50 @@ msgid ""
 " href='http://the-federation.info/'>the-federation.info</a> for details."
 msgstr "Si cette option est activée, des informations sur le serveur et son utilisation seront publiées. Ces informations incluent le nom et la version du serveur, le nombre d’utilisateurs avec des profils publics, le nombre de messages, les protocoles supportés et les connecteurs disponibles. Plus de détails sur <a href='http://the-federation.info/'>the-federation.info</a>."
 
-#: mod/admin.php:1569
+#: mod/admin.php:1666
 msgid "Check upstream version"
 msgstr "Mises Ã  jour"
 
-#: mod/admin.php:1569
+#: mod/admin.php:1666
 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 "Permet de vérifier la présence de nouvelles versions de Friendica sur github. Si une nouvelle version est disponible, vous recevrez une notification dans l'interface d'administration."
 
-#: mod/admin.php:1570
+#: mod/admin.php:1667
 msgid "Suppress Tags"
 msgstr "Masquer les tags"
 
-#: mod/admin.php:1570
+#: mod/admin.php:1667
 msgid "Suppress showing a list of hashtags at the end of the posting."
 msgstr "Ne pas afficher la liste des hashtags Ã  la fin d’un message."
 
-#: mod/admin.php:1571
+#: mod/admin.php:1668
 msgid "Clean database"
 msgstr ""
 
-#: mod/admin.php:1571
+#: mod/admin.php:1668
 msgid ""
 "Remove old remote items, orphaned database records and old content from some"
 " other helper tables."
 msgstr ""
 
-#: mod/admin.php:1572
+#: mod/admin.php:1669
 msgid "Lifespan of remote items"
 msgstr ""
 
-#: mod/admin.php:1572
+#: mod/admin.php:1669
 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 ""
 
-#: mod/admin.php:1573
+#: mod/admin.php:1670
 msgid "Lifespan of unclaimed items"
 msgstr ""
 
-#: mod/admin.php:1573
+#: mod/admin.php:1670
 msgid ""
 "When the database cleanup is enabled, this defines the days after which "
 "unclaimed remote items (mostly content from the relay) will be deleted. "
@@ -2171,141 +2232,141 @@ msgid ""
 "items if set to 0."
 msgstr ""
 
-#: mod/admin.php:1574
+#: mod/admin.php:1671
 msgid "Lifespan of raw conversation data"
 msgstr ""
 
-#: mod/admin.php:1574
+#: mod/admin.php:1671
 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 ""
 
-#: mod/admin.php:1575
+#: mod/admin.php:1672
 msgid "Path to item cache"
 msgstr "Chemin vers le cache des objets."
 
-#: mod/admin.php:1575
+#: mod/admin.php:1672
 msgid "The item caches buffers generated bbcode and external images."
 msgstr ""
 
-#: mod/admin.php:1576
+#: mod/admin.php:1673
 msgid "Cache duration in seconds"
 msgstr "Durée du cache en secondes"
 
-#: mod/admin.php:1576
+#: mod/admin.php:1673
 msgid ""
 "How long should the cache files be hold? Default value is 86400 seconds (One"
 " day). To disable the item cache, set the value to -1."
 msgstr "Combien de temps les fichiers de cache doivent Ãªtre maintenu? La valeur par défaut est 86400 secondes (une journée). Pour désactiver le cache de l'item, définissez la valeur Ã  -1."
 
-#: mod/admin.php:1577
+#: mod/admin.php:1674
 msgid "Maximum numbers of comments per post"
 msgstr "Nombre maximum de commentaires par publication"
 
-#: mod/admin.php:1577
+#: mod/admin.php:1674
 msgid "How much comments should be shown for each post? Default value is 100."
 msgstr "Combien de commentaires doivent Ãªtre affichés pour chaque publication? Valeur par défaut: 100."
 
-#: mod/admin.php:1578
+#: mod/admin.php:1675
 msgid "Temp path"
 msgstr "Chemin des fichiers temporaires"
 
-#: mod/admin.php:1578
+#: mod/admin.php:1675
 msgid ""
 "If you have a restricted system where the webserver can't access the system "
 "temp path, enter another path here."
 msgstr "Si vous n'avez pas la possibilité d'avoir accès au répertoire temp, entrez un autre répertoire ici."
 
-#: mod/admin.php:1579
+#: mod/admin.php:1676
 msgid "Base path to installation"
 msgstr "Chemin de base de l'installation"
 
-#: mod/admin.php:1579
+#: mod/admin.php:1676
 msgid ""
 "If the system cannot detect the correct path to your installation, enter the"
 " correct path here. This setting should only be set if you are using a "
 "restricted system and symbolic links to your webroot."
 msgstr "Si le système ne peut pas détecter le chemin de l'installation, entrez le bon chemin ici. Ce paramètre doit Ãªtre utilisé uniquement si vous avez des accès restreints Ã  votre système et que vous n'avez qu'un lien symbolique vers le répertoire web."
 
-#: mod/admin.php:1580
+#: mod/admin.php:1677
 msgid "Disable picture proxy"
 msgstr "Désactiver le proxy image "
 
-#: mod/admin.php:1580
+#: mod/admin.php:1677
 msgid ""
 "The picture proxy increases performance and privacy. It shouldn't be used on"
 " systems with very low bandwidth."
 msgstr ""
 
-#: mod/admin.php:1581
+#: mod/admin.php:1678
 msgid "Only search in tags"
 msgstr "Rechercher seulement dans les Ã©tiquettes"
 
-#: mod/admin.php:1581
+#: mod/admin.php:1678
 msgid "On large systems the text search can slow down the system extremely."
 msgstr "La recherche textuelle peut ralentir considérablement les systèmes de grande taille."
 
-#: mod/admin.php:1583
+#: mod/admin.php:1680
 msgid "New base url"
 msgstr "Nouvelle URL de base"
 
-#: mod/admin.php:1583
+#: mod/admin.php:1680
 msgid ""
 "Change base url for this server. Sends relocate message to all Friendica and"
 " Diaspora* contacts of all users."
 msgstr ""
 
-#: mod/admin.php:1585
+#: mod/admin.php:1682
 msgid "RINO Encryption"
 msgstr "Chiffrement RINO"
 
-#: mod/admin.php:1585
+#: mod/admin.php:1682
 msgid "Encryption layer between nodes."
 msgstr "Couche de chiffrement entre les nÅ“uds du réseau."
 
-#: mod/admin.php:1585
+#: mod/admin.php:1682
 msgid "Enabled"
 msgstr ""
 
-#: mod/admin.php:1587
+#: mod/admin.php:1684
 msgid "Maximum number of parallel workers"
 msgstr "Nombre maximum de processus simultanés"
 
-#: mod/admin.php:1587
+#: mod/admin.php:1684
 #, php-format
 msgid ""
 "On shared hosters set this to %d. On larger systems, values of %d are great."
 " Default value is %d."
 msgstr ""
 
-#: mod/admin.php:1588
+#: mod/admin.php:1685
 msgid "Don't use 'proc_open' with the worker"
 msgstr "Ne pas utiliser 'proc_open' pour les tâches de fond"
 
-#: mod/admin.php:1588
+#: mod/admin.php:1685
 msgid ""
 "Enable this if your system doesn't allow the use of 'proc_open'. This can "
 "happen on shared hosters. If this is enabled you should increase the "
 "frequency of worker calls in your crontab."
 msgstr "Activez cette option si votre système ne permet pas d'utiliser 'proc_open'. Cela peut Ãªtre le cas sur les hébergements partagés. Si vous activez cette option, vous devriez augmenter la fréquence d'appel du \"worker\" dans crontab."
 
-#: mod/admin.php:1589
+#: mod/admin.php:1686
 msgid "Enable fastlane"
 msgstr ""
 
-#: mod/admin.php:1589
+#: mod/admin.php:1686
 msgid ""
 "When enabed, the fastlane mechanism starts an additional worker if processes"
 " with higher priority are blocked by processes of lower priority."
 msgstr ""
 
-#: mod/admin.php:1590
+#: mod/admin.php:1687
 msgid "Enable frontend worker"
 msgstr ""
 
-#: mod/admin.php:1590
+#: mod/admin.php:1687
 #, php-format
 msgid ""
 "When enabled the Worker process is triggered when backend access is "
@@ -2315,136 +2376,136 @@ msgid ""
 " on your server."
 msgstr ""
 
-#: mod/admin.php:1592
+#: mod/admin.php:1689
 msgid "Subscribe to relay"
 msgstr ""
 
-#: mod/admin.php:1592
+#: mod/admin.php:1689
 msgid ""
 "Enables the receiving of public posts from the relay. They will be included "
 "in the search, subscribed tags and on the global community page."
 msgstr ""
 
-#: mod/admin.php:1593
+#: mod/admin.php:1690
 msgid "Relay server"
 msgstr ""
 
-#: mod/admin.php:1593
+#: mod/admin.php:1690
 msgid ""
 "Address of the relay server where public posts should be send to. For "
 "example https://relay.diasp.org"
 msgstr ""
 
-#: mod/admin.php:1594
+#: mod/admin.php:1691
 msgid "Direct relay transfer"
 msgstr ""
 
-#: mod/admin.php:1594
+#: mod/admin.php:1691
 msgid ""
 "Enables the direct transfer to other servers without using the relay servers"
 msgstr ""
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 msgid "Relay scope"
 msgstr ""
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 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 ""
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 msgid "all"
 msgstr ""
 
-#: mod/admin.php:1595
+#: mod/admin.php:1692
 msgid "tags"
 msgstr ""
 
-#: mod/admin.php:1596
+#: mod/admin.php:1693
 msgid "Server tags"
 msgstr ""
 
-#: mod/admin.php:1596
+#: mod/admin.php:1693
 msgid "Comma separated list of tags for the 'tags' subscription."
 msgstr ""
 
-#: mod/admin.php:1597
+#: mod/admin.php:1694
 msgid "Allow user tags"
 msgstr ""
 
-#: mod/admin.php:1597
+#: mod/admin.php:1694
 msgid ""
 "If enabled, the tags from the saved searches will used for the 'tags' "
 "subscription in addition to the 'relay_server_tags'."
 msgstr ""
 
-#: mod/admin.php:1600
+#: mod/admin.php:1697
 msgid "Start Relocation"
 msgstr ""
 
-#: mod/admin.php:1626
+#: mod/admin.php:1724
 msgid "Update has been marked successful"
 msgstr "Mise-à-jour validée comme 'réussie'"
 
-#: mod/admin.php:1633
+#: mod/admin.php:1731
 #, php-format
 msgid "Database structure update %s was successfully applied."
 msgstr "La structure de base de données pour la mise Ã  jour %s a Ã©té appliquée avec succès."
 
-#: mod/admin.php:1637
+#: mod/admin.php:1735
 #, php-format
 msgid "Executing of database structure update %s failed with error: %s"
 msgstr "L'exécution de la mise Ã  jour %s pour la structure de base de données a Ã©choué avec l'erreur: %s"
 
-#: mod/admin.php:1653
+#: mod/admin.php:1751
 #, php-format
 msgid "Executing %s failed with error: %s"
 msgstr "L'exécution %s a Ã©choué avec l'erreur: %s"
 
-#: mod/admin.php:1655
+#: mod/admin.php:1753
 #, php-format
 msgid "Update %s was successfully applied."
 msgstr "Mise-à-jour %s appliquée avec succès."
 
-#: mod/admin.php:1658
+#: mod/admin.php:1756
 #, php-format
 msgid "Update %s did not return a status. Unknown if it succeeded."
 msgstr "La mise-à-jour %s n'a pas retourné de détails. Impossible de savoir si elle a réussi."
 
-#: mod/admin.php:1661
+#: mod/admin.php:1759
 #, php-format
 msgid "There was no additional update function %s that needed to be called."
 msgstr "Il n'y avait aucune fonction supplémentaire de mise Ã  jour %s qui devait Ãªtre appelé"
 
-#: mod/admin.php:1684
+#: mod/admin.php:1782
 msgid "No failed updates."
 msgstr "Pas de mises-à-jour Ã©chouées."
 
-#: mod/admin.php:1685
+#: mod/admin.php:1783
 msgid "Check database structure"
 msgstr "Vérifier la structure de la base de données"
 
-#: mod/admin.php:1690
+#: mod/admin.php:1788
 msgid "Failed Updates"
 msgstr "Mises-à-jour Ã©chouées"
 
-#: mod/admin.php:1691
+#: mod/admin.php:1789
 msgid ""
 "This does not include updates prior to 1139, which did not return a status."
 msgstr "Ceci n'inclut pas les versions antérieures Ã  la 1139, qui ne retournaient jamais de détails."
 
-#: mod/admin.php:1692
+#: mod/admin.php:1790
 msgid "Mark success (if update was manually applied)"
 msgstr "Marquer comme 'réussie' (dans le cas d'une mise-à-jour manuelle)"
 
-#: mod/admin.php:1693
+#: mod/admin.php:1791
 msgid "Attempt to execute this update step automatically"
 msgstr "Tenter d'éxecuter cette Ã©tape automatiquement"
 
-#: mod/admin.php:1732
+#: mod/admin.php:1831
 #, php-format
 msgid ""
 "\n"
@@ -2452,7 +2513,7 @@ msgid ""
 "\t\t\t\tthe administrator of %2$s has set up an account for you."
 msgstr "\n\t\t\tChère/Cher %1$s,\n\t\t\t\tL’administrateur de %2$s vous a ouvert un compte."
 
-#: mod/admin.php:1735
+#: mod/admin.php:1834
 #, php-format
 msgid ""
 "\n"
@@ -2484,221 +2545,225 @@ msgid ""
 "\t\t\tThank you and welcome to %4$s."
 msgstr ""
 
-#: mod/admin.php:1772 src/Model/User.php:773
+#: mod/admin.php:1871 src/Model/User.php:858
 #, php-format
 msgid "Registration details for %s"
 msgstr "Détails d'inscription pour %s"
 
-#: mod/admin.php:1782
+#: mod/admin.php:1881
 #, php-format
 msgid "%s user blocked/unblocked"
 msgid_plural "%s users blocked/unblocked"
 msgstr[0] "%s utilisateur a (dé)bloqué"
 msgstr[1] "%s utilisateurs ont (dé)bloqué"
 
-#: mod/admin.php:1789 mod/admin.php:1842
+#: mod/admin.php:1888 mod/admin.php:1942
 msgid "You can't remove yourself"
 msgstr ""
 
-#: mod/admin.php:1792
+#: mod/admin.php:1891
 #, php-format
 msgid "%s user deleted"
 msgid_plural "%s users deleted"
 msgstr[0] "%s utilisateur supprimé"
 msgstr[1] "%s utilisateurs supprimés"
 
-#: mod/admin.php:1840
+#: mod/admin.php:1940
 #, php-format
 msgid "User '%s' deleted"
 msgstr "Utilisateur '%s' supprimé"
 
-#: mod/admin.php:1851
+#: mod/admin.php:1951
 #, php-format
 msgid "User '%s' unblocked"
 msgstr "Utilisateur '%s' débloqué"
 
-#: mod/admin.php:1851
+#: mod/admin.php:1951
 #, php-format
 msgid "User '%s' blocked"
 msgstr "Utilisateur '%s' bloqué"
 
-#: mod/admin.php:1899 mod/settings.php:1064
+#: mod/admin.php:1999 mod/settings.php:1049
 msgid "Normal Account Page"
 msgstr "Compte normal"
 
-#: mod/admin.php:1900 mod/settings.php:1068
+#: mod/admin.php:2000 mod/settings.php:1053
 msgid "Soapbox Page"
 msgstr "Compte \"boîte Ã  savon\""
 
-#: mod/admin.php:1901 mod/settings.php:1072
+#: mod/admin.php:2001 mod/settings.php:1057
 msgid "Public Forum"
 msgstr "Forum public"
 
-#: mod/admin.php:1902 mod/settings.php:1076
+#: mod/admin.php:2002 mod/settings.php:1061
 msgid "Automatic Friend Page"
 msgstr "Compte d' \"amitié automatique\""
 
-#: mod/admin.php:1903
+#: mod/admin.php:2003
 msgid "Private Forum"
 msgstr ""
 
-#: mod/admin.php:1906 mod/settings.php:1048
+#: mod/admin.php:2006 mod/settings.php:1033
 msgid "Personal Page"
 msgstr "Page personnelle"
 
-#: mod/admin.php:1907 mod/settings.php:1052
+#: mod/admin.php:2007 mod/settings.php:1037
 msgid "Organisation Page"
 msgstr ""
 
-#: mod/admin.php:1908 mod/settings.php:1056
+#: mod/admin.php:2008 mod/settings.php:1041
 msgid "News Page"
 msgstr "Page d'informations"
 
-#: mod/admin.php:1909 mod/settings.php:1060
+#: mod/admin.php:2009 mod/settings.php:1045
 msgid "Community Forum"
 msgstr ""
 
-#: mod/admin.php:1955 mod/admin.php:1966 mod/admin.php:1980 mod/admin.php:1998
-#: src/Content/ContactSelector.php:84
+#: mod/admin.php:2010
+msgid "Relay"
+msgstr ""
+
+#: mod/admin.php:2056 mod/admin.php:2067 mod/admin.php:2081 mod/admin.php:2099
+#: src/Content/ContactSelector.php:86
 msgid "Email"
 msgstr "Courriel"
 
-#: mod/admin.php:1955 mod/admin.php:1980
+#: mod/admin.php:2056 mod/admin.php:2081
 msgid "Register date"
 msgstr "Date d'inscription"
 
-#: mod/admin.php:1955 mod/admin.php:1980
+#: mod/admin.php:2056 mod/admin.php:2081
 msgid "Last login"
 msgstr "Dernière connexion"
 
-#: mod/admin.php:1955 mod/admin.php:1980
+#: mod/admin.php:2056 mod/admin.php:2081
 msgid "Last item"
 msgstr "Dernier Ã©lément"
 
-#: mod/admin.php:1955
+#: mod/admin.php:2056
 msgid "Type"
 msgstr ""
 
-#: mod/admin.php:1962
+#: mod/admin.php:2063
 msgid "Add User"
 msgstr "Ajouter l'utilisateur"
 
-#: mod/admin.php:1964
+#: mod/admin.php:2065
 msgid "User registrations waiting for confirm"
 msgstr "Inscriptions d'utilisateurs en attente de confirmation"
 
-#: mod/admin.php:1965
+#: mod/admin.php:2066
 msgid "User waiting for permanent deletion"
 msgstr "Utilisateur en attente de suppression définitive"
 
-#: mod/admin.php:1966
+#: mod/admin.php:2067
 msgid "Request date"
 msgstr "Date de la demande"
 
-#: mod/admin.php:1967
+#: mod/admin.php:2068
 msgid "No registrations."
 msgstr "Pas d'inscriptions."
 
-#: mod/admin.php:1968
+#: mod/admin.php:2069
 msgid "Note from the user"
 msgstr ""
 
-#: mod/admin.php:1969 mod/notifications.php:181 mod/notifications.php:267
+#: mod/admin.php:2070 mod/notifications.php:183 mod/notifications.php:269
 msgid "Approve"
 msgstr "Approuver"
 
-#: mod/admin.php:1970
+#: mod/admin.php:2071
 msgid "Deny"
 msgstr "Rejetter"
 
-#: mod/admin.php:1973
+#: mod/admin.php:2074
 msgid "User blocked"
 msgstr ""
 
-#: mod/admin.php:1975
+#: mod/admin.php:2076
 msgid "Site admin"
 msgstr "Administration du Site"
 
-#: mod/admin.php:1976
+#: mod/admin.php:2077
 msgid "Account expired"
 msgstr "Compte expiré"
 
-#: mod/admin.php:1979
+#: mod/admin.php:2080
 msgid "New User"
 msgstr "Nouvel utilisateur"
 
-#: mod/admin.php:1980
-msgid "Delete in"
+#: mod/admin.php:2081
+msgid "Permanent deletion"
 msgstr ""
 
-#: mod/admin.php:1985
+#: mod/admin.php:2086
 msgid ""
 "Selected users will be deleted!\\n\\nEverything these users had posted on "
 "this site will be permanently deleted!\\n\\nAre you sure?"
 msgstr "Les utilisateurs sélectionnés vont Ãªtre supprimés!\\n\\nTout ce qu'ils ont posté sur ce site sera définitivement effacé!\\n\\nÊtes-vous certain?"
 
-#: mod/admin.php:1986
+#: mod/admin.php:2087
 msgid ""
 "The user {0} will be deleted!\\n\\nEverything this user has posted on this "
 "site will be permanently deleted!\\n\\nAre you sure?"
 msgstr "L'utilisateur {0} va Ãªtre supprimé!\\n\\nTout ce qu'il a posté sur ce site sera définitivement perdu!\\n\\nÊtes-vous certain?"
 
-#: mod/admin.php:1996
+#: mod/admin.php:2097
 msgid "Name of the new user."
 msgstr "Nom du nouvel utilisateur."
 
-#: mod/admin.php:1997
+#: mod/admin.php:2098
 msgid "Nickname"
 msgstr "Pseudo"
 
-#: mod/admin.php:1997
+#: mod/admin.php:2098
 msgid "Nickname of the new user."
 msgstr "Pseudo du nouvel utilisateur."
 
-#: mod/admin.php:1998
+#: mod/admin.php:2099
 msgid "Email address of the new user."
 msgstr "Adresse mail du nouvel utilisateur."
 
-#: mod/admin.php:2039
+#: mod/admin.php:2141
 #, php-format
 msgid "Addon %s disabled."
 msgstr ""
 
-#: mod/admin.php:2042
+#: mod/admin.php:2144
 #, php-format
 msgid "Addon %s enabled."
 msgstr ""
 
-#: mod/admin.php:2053 mod/admin.php:2302
+#: mod/admin.php:2155 mod/admin.php:2405
 msgid "Disable"
 msgstr "Désactiver"
 
-#: mod/admin.php:2056 mod/admin.php:2305
+#: mod/admin.php:2158 mod/admin.php:2408
 msgid "Enable"
 msgstr "Activer"
 
-#: mod/admin.php:2078 mod/admin.php:2348
+#: mod/admin.php:2180 mod/admin.php:2437
 msgid "Toggle"
 msgstr "Activer/Désactiver"
 
-#: mod/admin.php:2079 mod/admin.php:2349 mod/newmember.php:19
-#: mod/settings.php:136 src/Content/Nav.php:260 view/theme/frio/theme.php:283
+#: mod/admin.php:2181 mod/admin.php:2438 mod/newmember.php:20
+#: mod/settings.php:136 view/theme/frio/theme.php:272 src/Content/Nav.php:263
 msgid "Settings"
 msgstr "Réglages"
 
-#: mod/admin.php:2086 mod/admin.php:2357
+#: mod/admin.php:2188 mod/admin.php:2446
 msgid "Author: "
 msgstr "Auteur : "
 
-#: mod/admin.php:2087 mod/admin.php:2358
+#: mod/admin.php:2189 mod/admin.php:2447
 msgid "Maintainer: "
 msgstr "Mainteneur : "
 
-#: mod/admin.php:2139
+#: mod/admin.php:2241
 msgid "Reload active addons"
 msgstr ""
 
-#: mod/admin.php:2144
+#: mod/admin.php:2246
 #, php-format
 msgid ""
 "There are currently no addons available on your node. You can find the "
@@ -2706,70 +2771,70 @@ msgid ""
 " the open addon registry at %2$s"
 msgstr ""
 
-#: mod/admin.php:2264
+#: mod/admin.php:2367
 msgid "No themes found."
 msgstr "Aucun thème trouvé."
 
-#: mod/admin.php:2339
+#: mod/admin.php:2428
 msgid "Screenshot"
 msgstr "Capture d'écran"
 
-#: mod/admin.php:2393
+#: mod/admin.php:2482
 msgid "Reload active themes"
 msgstr "Recharger les thèmes actifs"
 
-#: mod/admin.php:2398
+#: mod/admin.php:2487
 #, php-format
 msgid "No themes found on the system. They should be placed in %1$s"
 msgstr ""
 
-#: mod/admin.php:2399
+#: mod/admin.php:2488
 msgid "[Experimental]"
 msgstr "[Expérimental]"
 
-#: mod/admin.php:2400
+#: mod/admin.php:2489
 msgid "[Unsupported]"
 msgstr "[Non supporté]"
 
-#: mod/admin.php:2424
+#: mod/admin.php:2514
 msgid "Log settings updated."
 msgstr "Réglages des journaux mis-à-jour."
 
-#: mod/admin.php:2457
+#: mod/admin.php:2547
 msgid "PHP log currently enabled."
 msgstr "Log PHP actuellement activé."
 
-#: mod/admin.php:2459
+#: mod/admin.php:2549
 msgid "PHP log currently disabled."
 msgstr "Log PHP actuellement desactivé."
 
-#: mod/admin.php:2468
+#: mod/admin.php:2558
 msgid "Clear"
 msgstr "Effacer"
 
-#: mod/admin.php:2472
+#: mod/admin.php:2562
 msgid "Enable Debugging"
 msgstr "Activer le déboggage"
 
-#: mod/admin.php:2473
+#: mod/admin.php:2563
 msgid "Log file"
 msgstr "Fichier de journaux"
 
-#: mod/admin.php:2473
+#: mod/admin.php:2563
 msgid ""
 "Must be writable by web server. Relative to your Friendica top-level "
 "directory."
 msgstr "Accès en Ã©criture par le serveur web requis. Relatif Ã  la racine de votre installation de Friendica."
 
-#: mod/admin.php:2474
+#: mod/admin.php:2564
 msgid "Log level"
 msgstr "Niveau de journalisaton"
 
-#: mod/admin.php:2476
+#: mod/admin.php:2566
 msgid "PHP logging"
 msgstr "Log PHP"
 
-#: mod/admin.php:2477
+#: mod/admin.php:2567
 msgid ""
 "To temporarily enable logging of PHP errors and warnings you can prepend the"
 " following to the index.php file of your installation. The filename set in "
@@ -2778,94 +2843,74 @@ msgid ""
 "'display_errors' is to enable these options, set to '0' to disable them."
 msgstr ""
 
-#: mod/admin.php:2508
+#: mod/admin.php:2599
 #, php-format
 msgid ""
 "Error trying to open <strong>%1$s</strong> log file.\\r\\n<br/>Check to see "
 "if file %1$s exist and is readable."
 msgstr ""
 
-#: mod/admin.php:2512
+#: mod/admin.php:2603
 #, php-format
 msgid ""
 "Couldn't open <strong>%1$s</strong> log file.\\r\\n<br/>Check to see if file"
 " %1$s is readable."
 msgstr ""
 
-#: mod/admin.php:2603 mod/admin.php:2604 mod/settings.php:778
+#: mod/admin.php:2696 mod/admin.php:2697 mod/settings.php:763
 msgid "Off"
 msgstr "Éteint"
 
-#: mod/admin.php:2603 mod/admin.php:2604 mod/settings.php:778
+#: mod/admin.php:2696 mod/admin.php:2697 mod/settings.php:763
 msgid "On"
 msgstr "Allumé"
 
-#: mod/admin.php:2604
+#: mod/admin.php:2697
 #, php-format
 msgid "Lock feature %s"
 msgstr "Verouiller la fonctionnalité %s"
 
-#: mod/admin.php:2612
+#: mod/admin.php:2705
 msgid "Manage Additional Features"
 msgstr "Gérer les fonctionnalités avancées"
 
-#: mod/allfriends.php:54
+#: mod/allfriends.php:52
 msgid "No friends to display."
 msgstr "Pas d'amis Ã  afficher."
 
-#: mod/allfriends.php:93 mod/dirfind.php:219 mod/match.php:107
-#: mod/suggest.php:105 src/Content/Widget.php:41 src/Model/Profile.php:309
+#: mod/allfriends.php:89 mod/dirfind.php:217 mod/match.php:102
+#: mod/suggest.php:106 src/Content/Widget.php:39 src/Model/Profile.php:313
 msgid "Connect"
 msgstr "Se connecter"
 
-#: mod/api.php:87 mod/api.php:109
+#: mod/api.php:84 mod/api.php:106
 msgid "Authorize application connection"
 msgstr "Autoriser l'application Ã  se connecter"
 
-#: mod/api.php:88
+#: mod/api.php:85
 msgid "Return to your app and insert this Securty Code:"
 msgstr "Retournez Ã  votre application et saisissez ce Code de Sécurité : "
 
-#: mod/api.php:97
+#: mod/api.php:94
 msgid "Please login to continue."
 msgstr "Merci de vous connecter pour continuer."
 
-#: mod/api.php:111
+#: mod/api.php:108
 msgid ""
 "Do you want to authorize this application to access your posts and contacts,"
 " and/or create new posts for you?"
 msgstr "Voulez-vous autoriser cette application Ã  accéder Ã  vos publications et contacts, et/ou Ã  créer des billets Ã  votre place?"
 
-#: mod/api.php:113 mod/dfrn_request.php:648 mod/follow.php:154
-#: mod/profiles.php:542 mod/profiles.php:546 mod/profiles.php:567
-#: mod/register.php:240 mod/settings.php:1100 mod/settings.php:1106
-#: mod/settings.php:1113 mod/settings.php:1117 mod/settings.php:1121
-#: mod/settings.php:1125 mod/settings.php:1129 mod/settings.php:1133
-#: mod/settings.php:1153 mod/settings.php:1154 mod/settings.php:1155
-#: mod/settings.php:1156 mod/settings.php:1157
+#: mod/api.php:110 mod/dfrn_request.php:640 mod/follow.php:150
+#: mod/profiles.php:526 mod/profiles.php:530 mod/profiles.php:551
+#: mod/settings.php:1085 mod/settings.php:1091 mod/settings.php:1098
+#: mod/settings.php:1102 mod/settings.php:1106 mod/settings.php:1110
+#: mod/settings.php:1114 mod/settings.php:1118 mod/settings.php:1138
+#: mod/settings.php:1139 mod/settings.php:1140 mod/settings.php:1141
+#: mod/settings.php:1142 src/Module/Register.php:98
 msgid "No"
 msgstr "Non"
 
-#: mod/apps.php:15 src/App.php:1656
-msgid "You must be logged in to use addons. "
-msgstr "Vous devez Ãªtre connecté pour utiliser les greffons."
-
-#: mod/apps.php:20
-msgid "Applications"
-msgstr "Applications"
-
-#: mod/apps.php:25
-msgid "No installed applications."
-msgstr "Pas d'application installée."
-
-#: mod/attach.php:16
-msgid "Item not available."
-msgstr "Elément non disponible."
-
-#: mod/attach.php:26
-msgid "Item was not found."
-msgstr "Element introuvable."
-
 #: mod/babel.php:25
 msgid "Source input"
 msgstr ""
@@ -2902,193 +2947,201 @@ msgstr ""
 msgid "BBCode::toMarkdown =>  Markdown::convert => HTML::toBBCode"
 msgstr ""
 
-#: mod/babel.php:79
+#: mod/babel.php:83
+msgid "Item Body"
+msgstr ""
+
+#: mod/babel.php:87
+msgid "Item Tags"
+msgstr ""
+
+#: mod/babel.php:94
 msgid "Source input (Diaspora format)"
 msgstr ""
 
-#: mod/babel.php:85
+#: mod/babel.php:100
 msgid "Markdown::convert (raw HTML)"
 msgstr ""
 
-#: mod/babel.php:90
+#: mod/babel.php:105
 msgid "Markdown::convert"
 msgstr ""
 
-#: mod/babel.php:96
+#: mod/babel.php:111
 msgid "Markdown::toBBCode"
 msgstr ""
 
-#: mod/babel.php:103
+#: mod/babel.php:118
 msgid "Raw HTML input"
 msgstr ""
 
-#: mod/babel.php:108
+#: mod/babel.php:123
 msgid "HTML Input"
 msgstr ""
 
-#: mod/babel.php:114
+#: mod/babel.php:129
 msgid "HTML::toBBCode"
 msgstr ""
 
-#: mod/babel.php:120
+#: mod/babel.php:135
 msgid "HTML::toBBCode => BBCode::convert"
 msgstr ""
 
-#: mod/babel.php:125
+#: mod/babel.php:140
 msgid "HTML::toBBCode => BBCode::convert (raw HTML)"
 msgstr ""
 
-#: mod/babel.php:131
+#: mod/babel.php:146
 msgid "HTML::toMarkdown"
 msgstr ""
 
-#: mod/babel.php:137
+#: mod/babel.php:152
 msgid "HTML::toPlaintext"
 msgstr ""
 
-#: mod/babel.php:145
+#: mod/babel.php:160
 msgid "Source text"
 msgstr ""
 
-#: mod/babel.php:146
+#: mod/babel.php:161
 msgid "BBCode"
 msgstr ""
 
-#: mod/babel.php:147
+#: mod/babel.php:162
 msgid "Markdown"
 msgstr ""
 
-#: mod/babel.php:148
+#: mod/babel.php:163
 msgid "HTML"
 msgstr ""
 
-#: mod/bookmarklet.php:25 src/Content/Nav.php:167 src/Module/Login.php:322
+#: mod/bookmarklet.php:22 src/Content/Nav.php:170 src/Module/Login.php:322
 msgid "Login"
 msgstr "Connexion"
 
-#: mod/bookmarklet.php:35
+#: mod/bookmarklet.php:32
 msgid "Bad Request"
 msgstr ""
 
-#: mod/bookmarklet.php:57
+#: mod/bookmarklet.php:54
 msgid "The post was created"
 msgstr "La publication a Ã©té créée"
 
-#: mod/cal.php:35 mod/cal.php:39 mod/community.php:38 mod/follow.php:21
+#: mod/cal.php:34 mod/cal.php:38 mod/community.php:39 mod/follow.php:20
 #: mod/viewcontacts.php:23 mod/viewcontacts.php:27 mod/viewsrc.php:13
 msgid "Access denied."
 msgstr "Accès refusé."
 
-#: mod/cal.php:47 mod/dfrn_poll.php:493 mod/help.php:67
-#: mod/viewcontacts.php:38 src/App.php:1707
+#: mod/cal.php:46 mod/dfrn_poll.php:486 mod/help.php:68
+#: mod/viewcontacts.php:34 src/App.php:1402
 msgid "Page not found."
 msgstr "Page introuvable."
 
-#: mod/cal.php:142 mod/display.php:311 mod/profile.php:190
+#: mod/cal.php:141 mod/display.php:309 src/Module/Profile.php:168
 msgid "Access to this profile has been restricted."
 msgstr "L'accès au profil a Ã©té restreint."
 
-#: mod/cal.php:274 mod/events.php:390 src/Content/Nav.php:157
-#: src/Content/Nav.php:223 src/Model/Profile.php:937 src/Model/Profile.php:948
-#: view/theme/frio/theme.php:277 view/theme/frio/theme.php:281
+#: mod/cal.php:273 mod/events.php:384 view/theme/frio/theme.php:266
+#: view/theme/frio/theme.php:270 src/Content/Nav.php:160
+#: src/Content/Nav.php:226 src/Model/Profile.php:937 src/Model/Profile.php:948
 msgid "Events"
 msgstr "Événements"
 
-#: mod/cal.php:275 mod/events.php:391
+#: mod/cal.php:274 mod/events.php:385
 msgid "View"
 msgstr "Vue"
 
-#: mod/cal.php:276 mod/events.php:393
+#: mod/cal.php:275 mod/events.php:387
 msgid "Previous"
 msgstr "Précédent"
 
-#: mod/cal.php:277 mod/events.php:394 src/Module/Install.php:135
+#: mod/cal.php:276 mod/events.php:388 src/Module/Install.php:133
 msgid "Next"
 msgstr "Suivant"
 
-#: mod/cal.php:280 mod/events.php:399 src/Model/Event.php:430
+#: mod/cal.php:279 mod/events.php:393 src/Model/Event.php:429
 msgid "today"
 msgstr "aujourd'hui"
 
-#: mod/cal.php:281 mod/events.php:400 src/Model/Event.php:431
-#: src/Util/Temporal.php:312
+#: mod/cal.php:280 mod/events.php:394 src/Util/Temporal.php:314
+#: src/Model/Event.php:430
 msgid "month"
 msgstr "mois"
 
-#: mod/cal.php:282 mod/events.php:401 src/Model/Event.php:432
-#: src/Util/Temporal.php:313
+#: mod/cal.php:281 mod/events.php:395 src/Util/Temporal.php:315
+#: src/Model/Event.php:431
 msgid "week"
 msgstr "semaine"
 
-#: mod/cal.php:283 mod/events.php:402 src/Model/Event.php:433
-#: src/Util/Temporal.php:314
+#: mod/cal.php:282 mod/events.php:396 src/Util/Temporal.php:316
+#: src/Model/Event.php:432
 msgid "day"
 msgstr "jour"
 
-#: mod/cal.php:284 mod/events.php:403
+#: mod/cal.php:283 mod/events.php:397
 msgid "list"
 msgstr ""
 
-#: mod/cal.php:297 src/Core/Console/NewPassword.php:68 src/Model/User.php:260
+#: mod/cal.php:296 src/Core/Console/NewPassword.php:67 src/Model/User.php:323
 msgid "User not found"
 msgstr "Utilisateur introuvable"
 
-#: mod/cal.php:313
+#: mod/cal.php:312
 msgid "This calendar format is not supported"
 msgstr "Format de calendrier inconnu"
 
-#: mod/cal.php:315
+#: mod/cal.php:314
 msgid "No exportable data found"
 msgstr "Rien Ã  exporter"
 
-#: mod/cal.php:332
+#: mod/cal.php:331
 msgid "calendar"
 msgstr "calendrier"
 
-#: mod/common.php:92
+#: mod/common.php:90
 msgid "No contacts in common."
 msgstr "Pas de contacts en commun."
 
-#: mod/common.php:143 src/Module/Contact.php:897
+#: mod/common.php:141 src/Module/Contact.php:892
 msgid "Common Friends"
 msgstr "Amis communs"
 
-#: mod/community.php:31 mod/dfrn_request.php:602 mod/directory.php:43
-#: mod/display.php:203 mod/photos.php:945 mod/probe.php:13 mod/search.php:106
-#: mod/search.php:112 mod/videos.php:194 mod/viewcontacts.php:51
+#: mod/community.php:32 mod/dfrn_request.php:597 mod/directory.php:43
+#: mod/display.php:209 mod/photos.php:903 mod/probe.php:13 mod/search.php:96
+#: mod/search.php:102 mod/videos.php:147 mod/viewcontacts.php:46
 #: mod/webfinger.php:16
 msgid "Public access denied."
 msgstr "Accès public refusé."
 
-#: mod/community.php:74
+#: mod/community.php:75
 msgid "Community option not available."
 msgstr ""
 
-#: mod/community.php:91
+#: mod/community.php:92
 msgid "Not available."
 msgstr "Indisponible."
 
-#: mod/community.php:103
+#: mod/community.php:102
 msgid "Local Community"
 msgstr ""
 
-#: mod/community.php:106
+#: mod/community.php:105
 msgid "Posts from local users on this server"
 msgstr ""
 
-#: mod/community.php:114
+#: mod/community.php:113
 msgid "Global Community"
 msgstr ""
 
-#: mod/community.php:117
+#: mod/community.php:116
 msgid "Posts from users of the whole federated network"
 msgstr ""
 
-#: mod/community.php:163 mod/search.php:243
+#: mod/community.php:162 mod/search.php:229
 msgid "No results."
 msgstr "Aucun résultat."
 
-#: mod/community.php:207
+#: mod/community.php:206
 msgid ""
 "This community stream shows all public posts received by this node. They may"
 " not reflect the opinions of this node’s users."
@@ -3105,288 +3158,293 @@ msgid ""
 "code or the translation of Friendica. Thank you all!"
 msgstr "Friendica est un projet communautaire, qui ne serait pas possible sans l'aide de beaucoup de gens. Voici une liste de ceux qui ont contribué au code ou Ã  la traduction de Friendica. Merci Ã  tous!"
 
-#: mod/crepair.php:90
+#: mod/crepair.php:79
 msgid "Contact settings applied."
 msgstr "Réglages du contact appliqués."
 
-#: mod/crepair.php:92
+#: mod/crepair.php:81
 msgid "Contact update failed."
 msgstr "Impossible d'appliquer les réglages."
 
-#: mod/crepair.php:113 mod/dfrn_confirm.php:130 mod/fsuggest.php:31
-#: mod/fsuggest.php:97 mod/redir.php:31 mod/redir.php:129
+#: mod/crepair.php:102 mod/dfrn_confirm.php:127 mod/fsuggest.php:28
+#: mod/fsuggest.php:89 mod/redir.php:31 mod/redir.php:137
 msgid "Contact not found."
 msgstr "Contact introuvable."
 
-#: mod/crepair.php:117
+#: mod/crepair.php:115
 msgid ""
 "<strong>WARNING: This is highly advanced</strong> and if you enter incorrect"
 " information your communications with this contact may stop working."
 msgstr "<strong>ATTENTION: Manipulation réservée aux experts</strong>, toute information incorrecte pourrait empêcher la communication avec ce contact."
 
-#: mod/crepair.php:118
+#: mod/crepair.php:116
 msgid ""
 "Please use your browser 'Back' button <strong>now</strong> if you are "
 "uncertain what to do on this page."
 msgstr "une photo"
 
-#: mod/crepair.php:132 mod/crepair.php:134
+#: mod/crepair.php:130 mod/crepair.php:132
 msgid "No mirroring"
 msgstr "Pas de miroir"
 
-#: mod/crepair.php:132
+#: mod/crepair.php:130
 msgid "Mirror as forwarded posting"
 msgstr ""
 
-#: mod/crepair.php:132 mod/crepair.php:134
+#: mod/crepair.php:130 mod/crepair.php:132
 msgid "Mirror as my own posting"
 msgstr ""
 
-#: mod/crepair.php:147
+#: mod/crepair.php:145
 msgid "Return to contact editor"
 msgstr "Retour Ã  l'éditeur de contact"
 
-#: mod/crepair.php:149
+#: mod/crepair.php:147
 msgid "Refetch contact data"
 msgstr "Récupérer Ã  nouveau les données de contact"
 
-#: mod/crepair.php:151 mod/events.php:559 mod/fsuggest.php:115
-#: mod/invite.php:154 mod/localtime.php:56 mod/manage.php:185
-#: mod/message.php:265 mod/message.php:426 mod/photos.php:1093
-#: mod/photos.php:1181 mod/photos.php:1456 mod/photos.php:1501
-#: mod/photos.php:1540 mod/photos.php:1600 mod/poke.php:194
-#: mod/profiles.php:578 src/Module/Contact.php:600 src/Module/Install.php:189
-#: src/Module/Install.php:224 src/Object/Post.php:813
-#: view/theme/duepuntozero/config.php:72 view/theme/frio/config.php:119
-#: view/theme/quattro/config.php:74 view/theme/vier/config.php:120
+#: mod/crepair.php:149 mod/events.php:553 mod/fsuggest.php:106
+#: mod/invite.php:154 mod/localtime.php:56 mod/manage.php:182
+#: mod/message.php:261 mod/message.php:441 mod/photos.php:1049
+#: mod/photos.php:1137 mod/photos.php:1412 mod/photos.php:1457
+#: mod/photos.php:1496 mod/photos.php:1556 mod/poke.php:188
+#: mod/profiles.php:562 view/theme/duepuntozero/config.php:72
+#: view/theme/frio/config.php:119 view/theme/quattro/config.php:74
+#: view/theme/vier/config.php:120 src/Module/Contact.php:594
+#: src/Module/Install.php:187 src/Module/Install.php:222
+#: src/Object/Post.php:873
 msgid "Submit"
 msgstr "Envoyer"
 
-#: mod/crepair.php:152
+#: mod/crepair.php:150
 msgid "Remote Self"
 msgstr "Identité Ã  distance"
 
-#: mod/crepair.php:155
+#: mod/crepair.php:153
 msgid "Mirror postings from this contact"
 msgstr "Copier les publications de ce contact"
 
-#: mod/crepair.php:157
+#: mod/crepair.php:155
 msgid ""
 "Mark this contact as remote_self, this will cause friendica to repost new "
 "entries from this contact."
 msgstr "Marquer ce contact comme Ã©tant remote_self, friendica republiera alors les nouvelles entrées de ce contact."
 
-#: mod/crepair.php:162
+#: mod/crepair.php:160
 msgid "Account Nickname"
 msgstr "Pseudo du compte"
 
-#: mod/crepair.php:163
+#: mod/crepair.php:161
 msgid "@Tagname - overrides Name/Nickname"
 msgstr "@NomEtiquette - prend le pas sur Nom/Pseudo"
 
-#: mod/crepair.php:164
+#: mod/crepair.php:162
 msgid "Account URL"
 msgstr "URL du compte"
 
-#: mod/crepair.php:165
+#: mod/crepair.php:163
+msgid "Account URL Alias"
+msgstr ""
+
+#: mod/crepair.php:164
 msgid "Friend Request URL"
 msgstr "Echec du téléversement de l'image."
 
-#: mod/crepair.php:166
+#: mod/crepair.php:165
 msgid "Friend Confirm URL"
 msgstr "Accès public refusé."
 
-#: mod/crepair.php:167
+#: mod/crepair.php:166
 msgid "Notification Endpoint URL"
 msgstr "Aucune photo sélectionnée"
 
-#: mod/crepair.php:168
+#: mod/crepair.php:167
 msgid "Poll/Feed URL"
 msgstr "Téléverser des photos"
 
-#: mod/crepair.php:169
+#: mod/crepair.php:168
 msgid "New photo from this URL"
 msgstr "Nouvelle photo depuis cette URL"
 
-#: mod/delegate.php:43
+#: mod/delegate.php:42
 msgid "Parent user not found."
 msgstr ""
 
-#: mod/delegate.php:150
+#: mod/delegate.php:149
 msgid "No parent user"
 msgstr ""
 
-#: mod/delegate.php:165
+#: mod/delegate.php:164
 msgid "Parent Password:"
 msgstr ""
 
-#: mod/delegate.php:165
+#: mod/delegate.php:164
 msgid ""
 "Please enter the password of the parent account to legitimize your request."
 msgstr ""
 
-#: mod/delegate.php:170
+#: mod/delegate.php:171
 msgid "Parent User"
 msgstr ""
 
-#: mod/delegate.php:173
+#: mod/delegate.php:174
 msgid ""
 "Parent users have total control about this account, including the account "
 "settings. Please double check whom you give this access."
 msgstr ""
 
-#: mod/delegate.php:175 src/Content/Nav.php:258
+#: mod/delegate.php:176 src/Content/Nav.php:261
 msgid "Delegate Page Management"
 msgstr "Déléguer la gestion de la page"
 
-#: mod/delegate.php:176
+#: mod/delegate.php:177
 msgid "Delegates"
 msgstr ""
 
-#: mod/delegate.php:178
+#: mod/delegate.php:179
 msgid ""
 "Delegates are able to manage all aspects of this account/page except for "
 "basic account settings. Please do not delegate your personal account to "
 "anybody that you do not trust completely."
 msgstr "Les délégataires seront capables de gérer tous les aspects de ce compte ou de cette page, Ã  l'exception des réglages de compte. Merci de ne pas déléguer votre compte principal Ã  quelqu'un en qui vous n'avez pas une confiance absolue."
 
-#: mod/delegate.php:179
+#: mod/delegate.php:180
 msgid "Existing Page Delegates"
 msgstr "Délégataires existants"
 
-#: mod/delegate.php:181
+#: mod/delegate.php:182
 msgid "Potential Delegates"
 msgstr "Délégataires potentiels"
 
-#: mod/delegate.php:183 mod/tagrm.php:112
+#: mod/delegate.php:184 mod/tagrm.php:114
 msgid "Remove"
 msgstr "Utiliser comme photo de profil"
 
-#: mod/delegate.php:184
+#: mod/delegate.php:185
 msgid "Add"
 msgstr "Ajouter"
 
-#: mod/delegate.php:185
+#: mod/delegate.php:186
 msgid "No entries."
 msgstr "Aucune entrée."
 
-#: mod/dfrn_confirm.php:75 mod/profiles.php:42 mod/profiles.php:152
-#: mod/profiles.php:197 mod/profiles.php:527
+#: mod/dfrn_confirm.php:72 mod/profiles.php:43 mod/profiles.php:152
+#: mod/profiles.php:196 mod/profiles.php:511
 msgid "Profile not found."
 msgstr "Profil introuvable."
 
-#: mod/dfrn_confirm.php:131
+#: mod/dfrn_confirm.php:128
 msgid ""
 "This may occasionally happen if contact was requested by both persons and it"
 " has already been approved."
 msgstr "Ceci peut se produire lorsque le contact a Ã©té requis par les deux personnes et a déjà Ã©té approuvé."
 
-#: mod/dfrn_confirm.php:241
+#: mod/dfrn_confirm.php:238
 msgid "Response from remote site was not understood."
 msgstr "Réponse du site distant incomprise."
 
-#: mod/dfrn_confirm.php:248 mod/dfrn_confirm.php:254
+#: mod/dfrn_confirm.php:245 mod/dfrn_confirm.php:251
 msgid "Unexpected response from remote site: "
 msgstr "Réponse inattendue du site distant : "
 
-#: mod/dfrn_confirm.php:263
+#: mod/dfrn_confirm.php:260
 msgid "Confirmation completed successfully."
 msgstr "Confirmation achevée avec succès."
 
-#: mod/dfrn_confirm.php:275
+#: mod/dfrn_confirm.php:272
 msgid "Temporary failure. Please wait and try again."
 msgstr "Échec temporaire. Merci de recommencer ultérieurement."
 
-#: mod/dfrn_confirm.php:278
+#: mod/dfrn_confirm.php:275
 msgid "Introduction failed or was revoked."
 msgstr "Introduction Ã©chouée ou annulée."
 
-#: mod/dfrn_confirm.php:283
+#: mod/dfrn_confirm.php:280
 msgid "Remote site reported: "
 msgstr "Alerte du site distant : "
 
-#: mod/dfrn_confirm.php:384
+#: mod/dfrn_confirm.php:386
 msgid "Unable to set contact photo."
 msgstr "Impossible de définir la photo du contact."
 
-#: mod/dfrn_confirm.php:446
+#: mod/dfrn_confirm.php:448
 #, php-format
 msgid "No user record found for '%s' "
 msgstr "Pas d'utilisateur trouvé pour '%s' "
 
-#: mod/dfrn_confirm.php:456
+#: mod/dfrn_confirm.php:458
 msgid "Our site encryption key is apparently messed up."
 msgstr "Notre clé de chiffrement de site est apparemment corrompue."
 
-#: mod/dfrn_confirm.php:467
+#: mod/dfrn_confirm.php:469
 msgid "Empty site URL was provided or URL could not be decrypted by us."
 msgstr "URL de site absente ou indéchiffrable."
 
-#: mod/dfrn_confirm.php:483
+#: mod/dfrn_confirm.php:485
 msgid "Contact record was not found for you on our site."
 msgstr "Pas d'entrée pour ce contact sur notre site."
 
-#: mod/dfrn_confirm.php:497
+#: mod/dfrn_confirm.php:499
 #, php-format
 msgid "Site public key not available in contact record for URL %s."
 msgstr "La clé publique du site ne se trouve pas dans l'enregistrement du contact pour l'URL %s."
 
-#: mod/dfrn_confirm.php:513
+#: mod/dfrn_confirm.php:515
 msgid ""
 "The ID provided by your system is a duplicate on our system. It should work "
 "if you try again."
 msgstr "L'identifiant fourni par votre système fait doublon sur le notre. Cela peut fonctionner si vous réessayez."
 
-#: mod/dfrn_confirm.php:524
+#: mod/dfrn_confirm.php:526
 msgid "Unable to set your contact credentials on our system."
 msgstr "Impossible de vous définir des permissions sur notre système."
 
-#: mod/dfrn_confirm.php:580
+#: mod/dfrn_confirm.php:582
 msgid "Unable to update your contact profile details on our system"
 msgstr "Impossible de mettre les détails de votre profil Ã  jour sur notre système"
 
-#: mod/dfrn_confirm.php:610 mod/dfrn_request.php:564
-#: src/Model/Contact.php:1919
+#: mod/dfrn_confirm.php:612 mod/dfrn_request.php:560
+#: src/Model/Contact.php:2026
 msgid "[Name Withheld]"
 msgstr "[Nom non-publié]"
 
-#: mod/dfrn_poll.php:128 mod/dfrn_poll.php:537
+#: mod/dfrn_poll.php:125 mod/dfrn_poll.php:530
 #, php-format
 msgid "%1$s welcomes %2$s"
 msgstr "%1$s accueille %2$s"
 
-#: mod/dfrn_request.php:97
+#: mod/dfrn_request.php:98
 msgid "This introduction has already been accepted."
 msgstr "Cette introduction a déjà Ã©té acceptée."
 
-#: mod/dfrn_request.php:115 mod/dfrn_request.php:356
+#: mod/dfrn_request.php:116 mod/dfrn_request.php:354
 msgid "Profile location is not valid or does not contain profile information."
 msgstr "L'emplacement du profil est invalide ou ne contient pas de profil valide."
 
-#: mod/dfrn_request.php:119 mod/dfrn_request.php:360
+#: mod/dfrn_request.php:120 mod/dfrn_request.php:358
 msgid "Warning: profile location has no identifiable owner name."
 msgstr "Attention: l'emplacement du profil n'a pas de nom identifiable."
 
-#: mod/dfrn_request.php:122 mod/dfrn_request.php:363
+#: mod/dfrn_request.php:123 mod/dfrn_request.php:361
 msgid "Warning: profile location has no profile photo."
 msgstr "Attention: l'emplacement du profil n'a pas de photo de profil."
 
-#: mod/dfrn_request.php:126 mod/dfrn_request.php:367
+#: mod/dfrn_request.php:127 mod/dfrn_request.php:365
 #, php-format
 msgid "%d required parameter was not found at the given location"
 msgid_plural "%d required parameters were not found at the given location"
 msgstr[0] "%d paramètre requis n'a pas Ã©té trouvé Ã  l'endroit indiqué"
 msgstr[1] "%d paramètres requis n'ont pas Ã©té trouvés Ã  l'endroit indiqué"
 
-#: mod/dfrn_request.php:164
+#: mod/dfrn_request.php:165
 msgid "Introduction complete."
 msgstr "Phase d'introduction achevée."
 
-#: mod/dfrn_request.php:200
+#: mod/dfrn_request.php:201
 msgid "Unrecoverable protocol error."
 msgstr "Erreur de protocole non-récupérable."
 
-#: mod/dfrn_request.php:227
+#: mod/dfrn_request.php:228
 msgid "Profile unavailable."
 msgstr "Profil indisponible."
 
@@ -3403,159 +3461,159 @@ msgstr "Des mesures de protection contre le spam ont Ã©té déclenchées."
 msgid "Friends are advised to please try again in 24 hours."
 msgstr "Les relations sont encouragées Ã  attendre 24 heures pour recommencer."
 
-#: mod/dfrn_request.php:277
+#: mod/dfrn_request.php:275
 msgid "Invalid locator"
 msgstr "Localisateur invalide"
 
-#: mod/dfrn_request.php:313
+#: mod/dfrn_request.php:311
 msgid "You have already introduced yourself here."
 msgstr "Vous vous Ãªtes déjà présenté ici."
 
-#: mod/dfrn_request.php:316
+#: mod/dfrn_request.php:314
 #, php-format
 msgid "Apparently you are already friends with %s."
 msgstr "Il semblerait que vous soyez déjà ami avec %s."
 
-#: mod/dfrn_request.php:336
+#: mod/dfrn_request.php:334
 msgid "Invalid profile URL."
 msgstr "URL de profil invalide."
 
-#: mod/dfrn_request.php:342 src/Model/Contact.php:1598
+#: mod/dfrn_request.php:340 src/Model/Contact.php:1697
 msgid "Disallowed profile URL."
 msgstr "URL de profil interdite."
 
-#: mod/dfrn_request.php:415 src/Module/Contact.php:240
+#: mod/dfrn_request.php:413 src/Module/Contact.php:235
 msgid "Failed to update contact record."
 msgstr "Échec de mise Ã  jour du contact."
 
-#: mod/dfrn_request.php:435
+#: mod/dfrn_request.php:433
 msgid "Your introduction has been sent."
 msgstr "Votre introduction a Ã©té envoyée."
 
-#: mod/dfrn_request.php:473
+#: mod/dfrn_request.php:471
 msgid ""
 "Remote subscription can't be done for your network. Please subscribe "
 "directly on your system."
 msgstr ""
 
-#: mod/dfrn_request.php:489
+#: mod/dfrn_request.php:487
 msgid "Please login to confirm introduction."
 msgstr "Connectez-vous pour confirmer l'introduction."
 
-#: mod/dfrn_request.php:497
+#: mod/dfrn_request.php:495
 msgid ""
 "Incorrect identity currently logged in. Please login to "
 "<strong>this</strong> profile."
 msgstr "Identité incorrecte actuellement connectée. Merci de vous connecter Ã  <strong>ce</strong> profil."
 
-#: mod/dfrn_request.php:511 mod/dfrn_request.php:528
+#: mod/dfrn_request.php:509 mod/dfrn_request.php:524
 msgid "Confirm"
 msgstr "Confirmer"
 
-#: mod/dfrn_request.php:523
+#: mod/dfrn_request.php:520
 msgid "Hide this contact"
 msgstr "Cacher ce contact"
 
-#: mod/dfrn_request.php:526
+#: mod/dfrn_request.php:522
 #, php-format
 msgid "Welcome home %s."
 msgstr "Bienvenue chez vous, %s."
 
-#: mod/dfrn_request.php:527
+#: mod/dfrn_request.php:523
 #, php-format
 msgid "Please confirm your introduction/connection request to %s."
 msgstr "Merci de confirmer votre demande d'introduction auprès de %s."
 
-#: mod/dfrn_request.php:637
+#: mod/dfrn_request.php:632
 msgid ""
 "Please enter your 'Identity Address' from one of the following supported "
 "communications networks:"
 msgstr "Merci d'entrer votre \"adresse d'identité\" de l'un des réseaux de communication suivant:"
 
-#: mod/dfrn_request.php:640
+#: mod/dfrn_request.php:634
 #, php-format
 msgid ""
 "If you are not yet a member of the free social web, <a href=\"%s\">follow "
 "this link to find a public Friendica site and join us today</a>."
 msgstr ""
 
-#: mod/dfrn_request.php:645
+#: mod/dfrn_request.php:637
 msgid "Friend/Connection Request"
 msgstr "Requête de relation/amitié"
 
-#: mod/dfrn_request.php:646
+#: mod/dfrn_request.php:638
 msgid ""
 "Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, "
 "testuser@gnusocial.de"
 msgstr ""
 
-#: mod/dfrn_request.php:647 mod/follow.php:153
+#: mod/dfrn_request.php:639 mod/follow.php:149
 msgid "Please answer the following:"
 msgstr "Merci de répondre Ã  ce qui suit :"
 
-#: mod/dfrn_request.php:648 mod/follow.php:154
+#: mod/dfrn_request.php:640 mod/follow.php:150
 #, php-format
 msgid "Does %s know you?"
 msgstr "Est-ce que %s vous connaît?"
 
-#: mod/dfrn_request.php:649 mod/follow.php:155
+#: mod/dfrn_request.php:641 mod/follow.php:151
 msgid "Add a personal note:"
 msgstr "Ajouter une note personnelle :"
 
-#: mod/dfrn_request.php:651
+#: mod/dfrn_request.php:643
 msgid "Friendica"
 msgstr "Friendica"
 
-#: mod/dfrn_request.php:652
+#: mod/dfrn_request.php:644
 msgid "GNU Social (Pleroma, Mastodon)"
 msgstr ""
 
-#: mod/dfrn_request.php:653
+#: mod/dfrn_request.php:645
 msgid "Diaspora (Socialhome, Hubzilla)"
 msgstr ""
 
-#: mod/dfrn_request.php:654
+#: mod/dfrn_request.php:646
 #, php-format
 msgid ""
 " - please do not use this form.  Instead, enter %s into your Diaspora search"
 " bar."
 msgstr " - merci de ne pas utiliser ce formulaire.   Entrez plutôt %s dans votre barre de recherche Diaspora."
 
-#: mod/dfrn_request.php:655 mod/follow.php:161 mod/unfollow.php:130
+#: mod/dfrn_request.php:647 mod/follow.php:157 mod/unfollow.php:128
 msgid "Your Identity Address:"
 msgstr "Votre adresse d'identité :"
 
-#: mod/dfrn_request.php:657 mod/follow.php:66 mod/unfollow.php:133
+#: mod/dfrn_request.php:649 mod/follow.php:65 mod/unfollow.php:131
 msgid "Submit Request"
 msgstr "Envoyer la requête"
 
-#: mod/directory.php:154 mod/events.php:547 mod/notifications.php:251
-#: src/Model/Event.php:70 src/Model/Event.php:97 src/Model/Event.php:439
-#: src/Model/Event.php:930 src/Model/Profile.php:434
-#: src/Module/Contact.php:650
+#: mod/directory.php:154 mod/events.php:541 mod/notifications.php:253
+#: src/Model/Event.php:68 src/Model/Event.php:95 src/Model/Event.php:438
+#: src/Model/Event.php:934 src/Model/Profile.php:443
+#: src/Module/Contact.php:643
 msgid "Location:"
 msgstr "Localisation :"
 
-#: mod/directory.php:159 mod/notifications.php:257 src/Model/Profile.php:437
+#: mod/directory.php:159 mod/notifications.php:259 src/Model/Profile.php:446
 #: src/Model/Profile.php:758
 msgid "Gender:"
 msgstr "Genre :"
 
-#: mod/directory.php:160 src/Model/Profile.php:438 src/Model/Profile.php:782
+#: mod/directory.php:160 src/Model/Profile.php:447 src/Model/Profile.php:782
 msgid "Status:"
 msgstr "Statut :"
 
-#: mod/directory.php:161 src/Model/Profile.php:439 src/Model/Profile.php:799
+#: mod/directory.php:161 src/Model/Profile.php:448 src/Model/Profile.php:799
 msgid "Homepage:"
 msgstr "Page personnelle :"
 
-#: mod/directory.php:162 mod/notifications.php:253 src/Model/Profile.php:440
-#: src/Model/Profile.php:819 src/Module/Contact.php:654
+#: mod/directory.php:162 mod/notifications.php:255 src/Model/Profile.php:449
+#: src/Model/Profile.php:819 src/Module/Contact.php:647
 msgid "About:"
 msgstr "À propos :"
 
-#: mod/directory.php:210 src/Content/Widget.php:72
-#: view/theme/vier/theme.php:208
+#: mod/directory.php:210 view/theme/vier/theme.php:208
+#: src/Content/Widget.php:70
 msgid "Global Directory"
 msgstr "Annuaire global"
 
@@ -3571,8 +3629,8 @@ msgstr "Résultats pour :"
 msgid "Site Directory"
 msgstr "Annuaire local"
 
-#: mod/directory.php:217 src/Content/Widget.php:67 src/Module/Contact.php:822
-#: view/theme/vier/theme.php:203
+#: mod/directory.php:217 view/theme/vier/theme.php:203
+#: src/Content/Widget.php:65 src/Module/Contact.php:817
 msgid "Find"
 msgstr "Trouver"
 
@@ -3590,7 +3648,7 @@ msgstr "Recherche de personne - %s"
 msgid "Forum Search - %s"
 msgstr "Recherche de Forum - %s"
 
-#: mod/dirfind.php:261 mod/match.php:125
+#: mod/dirfind.php:259 mod/match.php:130
 msgid "No matches"
 msgstr "Aucune correspondance"
 
@@ -3602,334 +3660,333 @@ msgstr "Élément introuvable"
 msgid "Edit post"
 msgstr "Éditer la publication"
 
-#: mod/editpost.php:94 mod/filer.php:38 mod/notes.php:54
-#: src/Content/Text/HTML.php:961
+#: mod/editpost.php:73 mod/filer.php:36 mod/notes.php:46
+#: src/Content/Text/HTML.php:894
 msgid "Save"
 msgstr "Sauver"
 
-#: mod/editpost.php:99 mod/message.php:263 mod/message.php:425
+#: mod/editpost.php:78 mod/message.php:259 mod/message.php:440
 #: mod/wallmessage.php:140
 msgid "Insert web link"
 msgstr "Insérer lien web"
 
-#: mod/editpost.php:100
+#: mod/editpost.php:79
 msgid "web link"
 msgstr "lien web"
 
-#: mod/editpost.php:101
+#: mod/editpost.php:80
 msgid "Insert video link"
 msgstr "Insérer un lien video"
 
-#: mod/editpost.php:102
+#: mod/editpost.php:81
 msgid "video link"
 msgstr "lien vidéo"
 
-#: mod/editpost.php:103
+#: mod/editpost.php:82
 msgid "Insert audio link"
 msgstr "Insérer un lien audio"
 
-#: mod/editpost.php:104
+#: mod/editpost.php:83
 msgid "audio link"
 msgstr "lien audio"
 
-#: mod/editpost.php:119 src/Core/ACL.php:305
+#: mod/editpost.php:98 src/Core/ACL.php:307
 msgid "CC: email addresses"
 msgstr "CC: adresses de courriel"
 
-#: mod/editpost.php:126 src/Core/ACL.php:306
+#: mod/editpost.php:105 src/Core/ACL.php:308
 msgid "Example: bob@example.com, mary@example.com"
 msgstr "Exemple : bob@exemple.com, mary@exemple.com"
 
-#: mod/events.php:109 mod/events.php:111
+#: mod/events.php:117 mod/events.php:119
 msgid "Event can not end before it has started."
 msgstr "L'événement ne peut pas se terminer avant d'avoir commencé."
 
-#: mod/events.php:118 mod/events.php:120
+#: mod/events.php:126 mod/events.php:128
 msgid "Event title and start time are required."
 msgstr "Vous devez donner un nom et un horaire de début Ã  l'événement."
 
-#: mod/events.php:392
+#: mod/events.php:386
 msgid "Create New Event"
 msgstr "Créer un nouvel Ã©vénement"
 
-#: mod/events.php:515
+#: mod/events.php:509
 msgid "Event details"
 msgstr "Détails de l'événement"
 
-#: mod/events.php:516
+#: mod/events.php:510
 msgid "Starting date and Title are required."
 msgstr "La date de début et le titre sont requis."
 
-#: mod/events.php:517 mod/events.php:522
+#: mod/events.php:511 mod/events.php:516
 msgid "Event Starts:"
 msgstr "Début de l'événement :"
 
-#: mod/events.php:517 mod/events.php:549 mod/profiles.php:608
+#: mod/events.php:511 mod/events.php:543 mod/profiles.php:592
 msgid "Required"
 msgstr "Requis"
 
-#: mod/events.php:530 mod/events.php:555
+#: mod/events.php:524 mod/events.php:549
 msgid "Finish date/time is not known or not relevant"
 msgstr "Date / heure de fin inconnue ou sans objet"
 
-#: mod/events.php:532 mod/events.php:537
+#: mod/events.php:526 mod/events.php:531
 msgid "Event Finishes:"
 msgstr "Fin de l'événement :"
 
-#: mod/events.php:543 mod/events.php:556
+#: mod/events.php:537 mod/events.php:550
 msgid "Adjust for viewer timezone"
 msgstr "Ajuster Ã  la zone horaire du visiteur"
 
-#: mod/events.php:545
+#: mod/events.php:539
 msgid "Description:"
 msgstr "Description :"
 
-#: mod/events.php:549 mod/events.php:551
+#: mod/events.php:543 mod/events.php:545
 msgid "Title:"
 msgstr "Titre :"
 
-#: mod/events.php:552 mod/events.php:553
+#: mod/events.php:546 mod/events.php:547
 msgid "Share this event"
 msgstr "Partager cet Ã©vénement"
 
-#: mod/events.php:560 src/Model/Profile.php:877
+#: mod/events.php:554 src/Model/Profile.php:877
 msgid "Basic"
 msgstr "Simple"
 
-#: mod/events.php:562 mod/photos.php:1111 mod/photos.php:1452
-#: src/Core/ACL.php:308
+#: mod/events.php:556 mod/photos.php:1067 mod/photos.php:1408
+#: src/Core/ACL.php:310
 msgid "Permissions"
 msgstr "Permissions"
 
-#: mod/events.php:578
+#: mod/events.php:572
 msgid "Failed to remove event"
 msgstr "La suppression de l'événement a Ã©choué."
 
-#: mod/events.php:580
+#: mod/events.php:574
 msgid "Event removed"
 msgstr "Événement supprimé."
 
-#: mod/fbrowser.php:36 src/Content/Nav.php:155 src/Model/Profile.php:917
-#: view/theme/frio/theme.php:275
+#: mod/fbrowser.php:36 view/theme/frio/theme.php:264 src/Content/Nav.php:158
+#: src/Model/Profile.php:917
 msgid "Photos"
 msgstr "Photos"
 
-#: mod/fbrowser.php:45 mod/fbrowser.php:70 mod/photos.php:204
-#: mod/photos.php:1075 mod/photos.php:1170 mod/photos.php:1187
-#: mod/photos.php:1654 mod/photos.php:1669 src/Model/Photo.php:244
-#: src/Model/Photo.php:253
+#: mod/fbrowser.php:45 mod/fbrowser.php:69 mod/photos.php:201
+#: mod/photos.php:1031 mod/photos.php:1126 mod/photos.php:1143
+#: mod/photos.php:1610 mod/photos.php:1625 src/Model/Photo.php:547
+#: src/Model/Photo.php:556
 msgid "Contact Photos"
 msgstr "Photos du contact"
 
-#: mod/fbrowser.php:107 mod/fbrowser.php:138 mod/profile_photo.php:251
+#: mod/fbrowser.php:106 mod/fbrowser.php:136 mod/profile_photo.php:254
 msgid "Upload"
 msgstr "Téléverser"
 
-#: mod/fbrowser.php:133
+#: mod/fbrowser.php:131
 msgid "Files"
 msgstr "Fichiers"
 
-#: mod/feedtest.php:22
+#: mod/feedtest.php:18
 msgid "You must be logged in to use this module"
 msgstr ""
 
-#: mod/feedtest.php:49
+#: mod/feedtest.php:45
 msgid "Source URL"
 msgstr ""
 
-#: mod/fetch.php:21 mod/fetch.php:48 mod/fetch.php:55 mod/help.php:64
-#: src/App.php:1704
-msgid "Not Found"
-msgstr "Non trouvé"
-
-#: mod/filer.php:37
+#: mod/filer.php:35
 msgid "- select -"
 msgstr "- choisir -"
 
-#: mod/follow.php:47
+#: mod/follow.php:46
 msgid "The contact could not be added."
 msgstr ""
 
-#: mod/follow.php:77
+#: mod/follow.php:76
 msgid "You already added this contact."
 msgstr "Vous avez déjà ajouté ce contact."
 
-#: mod/follow.php:87
+#: mod/follow.php:86
 msgid "Diaspora support isn't enabled. Contact can't be added."
 msgstr "Le support de Diaspora est désactivé. Le contact ne peut pas Ãªtre ajouté."
 
-#: mod/follow.php:94
+#: mod/follow.php:93
 msgid "OStatus support is disabled. Contact can't be added."
 msgstr "Le support d'OStatus est désactivé. Le contact ne peut pas Ãªtre ajouté."
 
-#: mod/follow.php:101
+#: mod/follow.php:100
 msgid "The network type couldn't be detected. Contact can't be added."
 msgstr "Impossible de détecter le type de réseau. Le contact ne peut pas Ãªtre ajouté."
 
-#: mod/follow.php:181 mod/notifications.php:255 src/Model/Profile.php:807
-#: src/Module/Contact.php:656
+#: mod/follow.php:170 mod/notifications.php:257 src/Model/Profile.php:807
+#: src/Module/Contact.php:649
 msgid "Tags:"
 msgstr "Étiquette :"
 
-#: mod/follow.php:193 mod/unfollow.php:149 src/Model/Profile.php:904
-#: src/Module/Contact.php:869
+#: mod/follow.php:182 mod/unfollow.php:147 src/Model/Profile.php:904
+#: src/Module/Contact.php:864
 msgid "Status Messages and Posts"
 msgstr "Messages d'état et publications"
 
-#: mod/friendica.php:79
+#: mod/friendica.php:88
 #, php-format
 msgid ""
 "This is Friendica, version %s that is running at the web location %s. The "
 "database version is %s, the post update version is %s."
 msgstr ""
 
-#: mod/friendica.php:85
+#: mod/friendica.php:94
 msgid ""
 "Please visit <a href=\"https://friendi.ca\">Friendi.ca</a> to learn more "
 "about the Friendica project."
 msgstr "Rendez-vous sur <a href=\"https://friendi.ca\">Friendi.ca</a> pour en savoir plus sur le projet Friendica."
 
-#: mod/friendica.php:89
+#: mod/friendica.php:98
 msgid "Bug reports and issues: please visit"
 msgstr "Pour les rapports de bugs : rendez vous sur"
 
-#: mod/friendica.php:89
+#: mod/friendica.php:98
 msgid "the bugtracker at github"
 msgstr "le bugtracker sur GitHub"
 
-#: mod/friendica.php:92
+#: mod/friendica.php:101
 msgid "Suggestions, praise, etc. - please email \"info\" at \"friendi - dot - ca"
 msgstr ""
 
-#: mod/friendica.php:97
+#: mod/friendica.php:106
 msgid "Installed addons/apps:"
 msgstr ""
 
-#: mod/friendica.php:111
+#: mod/friendica.php:120
 msgid "No installed addons/apps"
 msgstr ""
 
-#: mod/friendica.php:116
+#: mod/friendica.php:125
 #, php-format
 msgid "Read about the <a href=\"%1$s/tos\">Terms of Service</a> of this node."
 msgstr ""
 
-#: mod/friendica.php:121
+#: mod/friendica.php:130
 msgid "On this server the following remote servers are blocked."
 msgstr "Sur ce serveur, les serveurs suivants sont sur liste noire."
 
-#: mod/fsuggest.php:73
+#: mod/fsuggest.php:69
 msgid "Friend suggestion sent."
 msgstr "Suggestion d'amitié/contact envoyée."
 
-#: mod/fsuggest.php:102
+#: mod/fsuggest.php:93
 msgid "Suggest Friends"
 msgstr "Suggérer des amis/contacts"
 
-#: mod/fsuggest.php:104
+#: mod/fsuggest.php:95
 #, php-format
 msgid "Suggest a friend for %s"
 msgstr "Suggérer un ami/contact pour %s"
 
-#: mod/group.php:40
+#: mod/group.php:38
 msgid "Group created."
 msgstr "Groupe créé."
 
-#: mod/group.php:46
+#: mod/group.php:44
 msgid "Could not create group."
 msgstr "Impossible de créer le groupe."
 
-#: mod/group.php:60 mod/group.php:187
+#: mod/group.php:58 mod/group.php:184
 msgid "Group not found."
 msgstr "Groupe introuvable."
 
-#: mod/group.php:74
+#: mod/group.php:72
 msgid "Group name changed."
 msgstr "Groupe renommé."
 
-#: mod/group.php:87 mod/profperm.php:30 src/App.php:1785
+#: mod/group.php:85 mod/profperm.php:30 src/App.php:1481
 msgid "Permission denied"
 msgstr "Permission refusée"
 
-#: mod/group.php:105
+#: mod/group.php:103
 msgid "Save Group"
 msgstr "Sauvegarder le groupe"
 
-#: mod/group.php:106
+#: mod/group.php:104
 msgid "Filter"
 msgstr ""
 
-#: mod/group.php:111
+#: mod/group.php:109
 msgid "Create a group of contacts/friends."
 msgstr "Créez un groupe de contacts/amis."
 
-#: mod/group.php:112 mod/group.php:136 mod/group.php:229
-#: src/Model/Group.php:419
+#: mod/group.php:110 mod/group.php:133 mod/group.php:224
+#: src/Model/Group.php:423
 msgid "Group Name: "
 msgstr "Nom du groupe : "
 
-#: mod/group.php:127 src/Model/Group.php:416
+#: mod/group.php:125 src/Model/Group.php:420
 msgid "Contacts not in any group"
 msgstr "Contacts n'appartenant Ã  aucun groupe"
 
-#: mod/group.php:159
+#: mod/group.php:156
 msgid "Group removed."
 msgstr "Groupe enlevé."
 
-#: mod/group.php:161
+#: mod/group.php:158
 msgid "Unable to remove group."
 msgstr "Impossible d'enlever le groupe."
 
-#: mod/group.php:222
+#: mod/group.php:217
 msgid "Delete Group"
 msgstr "Supprimer le groupe"
 
-#: mod/group.php:233
+#: mod/group.php:228
 msgid "Edit Group Name"
 msgstr "Éditer le nom du groupe"
 
-#: mod/group.php:244
+#: mod/group.php:239
 msgid "Members"
 msgstr "Membres"
 
-#: mod/group.php:246 src/Module/Contact.php:711
+#: mod/group.php:241 src/Module/Contact.php:704
 msgid "All Contacts"
 msgstr "Tous les contacts"
 
-#: mod/group.php:247 mod/network.php:659
+#: mod/group.php:242 mod/network.php:654
 msgid "Group is empty"
 msgstr "Groupe vide"
 
-#: mod/group.php:260
+#: mod/group.php:255
 msgid "Remove contact from group"
 msgstr ""
 
-#: mod/group.php:278 mod/profperm.php:119
+#: mod/group.php:273 mod/profperm.php:119
 msgid "Click on a contact to add or remove."
 msgstr "Cliquez sur un contact pour l'ajouter ou le supprimer."
 
-#: mod/group.php:292
+#: mod/group.php:287
 msgid "Add contact to group"
 msgstr ""
 
-#: mod/hcard.php:19
+#: mod/hcard.php:20
 msgid "No profile"
 msgstr "Aucun profil"
 
-#: mod/help.php:51
+#: mod/help.php:52
 msgid "Help:"
 msgstr "Aide :"
 
-#: mod/help.php:58 src/Content/Nav.php:187 view/theme/vier/theme.php:297
+#: mod/help.php:59 view/theme/vier/theme.php:294 src/Content/Nav.php:190
 msgid "Help"
 msgstr "Aide"
 
+#: mod/help.php:65 src/App.php:1399
+msgid "Not Found"
+msgstr "Non trouvé"
+
 #: mod/home.php:40
 #, php-format
 msgid "Welcome to %s"
 msgstr "Bienvenue sur %s"
 
-#: mod/invite.php:38
+#: mod/invite.php:36
 msgid "Total invitation limit exceeded."
 msgstr "La limite d'invitation totale est Ã©xédée."
 
@@ -4012,7 +4069,7 @@ msgstr "Envoyer des invitations"
 msgid "Enter email addresses, one per line:"
 msgstr "Entrez les adresses email, une par ligne :"
 
-#: mod/invite.php:149 mod/message.php:259 mod/message.php:420
+#: mod/invite.php:149 mod/message.php:255 mod/message.php:435
 #: mod/wallmessage.php:137
 msgid "Your message:"
 msgstr "Votre message :"
@@ -4042,34 +4099,34 @@ msgstr ""
 msgid "Unable to locate original post."
 msgstr "Impossible de localiser la publication originale."
 
-#: mod/item.php:288
+#: mod/item.php:320
 msgid "Empty post discarded."
 msgstr "Publication vide rejetée."
 
-#: mod/item.php:810
+#: mod/item.php:841
 #, php-format
 msgid ""
 "This message was sent to you by %s, a member of the Friendica social "
 "network."
 msgstr "Ce message vous a Ã©té envoyé par %s, membre du réseau social Friendica."
 
-#: mod/item.php:812
+#: mod/item.php:843
 #, php-format
 msgid "You may visit them online at %s"
 msgstr "Vous pouvez leur rendre visite sur %s"
 
-#: mod/item.php:813
+#: mod/item.php:844
 msgid ""
 "Please contact the sender by replying to this post if you do not wish to "
 "receive these messages."
 msgstr "Merci de contacter l’émetteur en répondant Ã  cette publication si vous ne souhaitez pas recevoir ces messages."
 
-#: mod/item.php:817
+#: mod/item.php:848
 #, php-format
 msgid "%s posted an update."
 msgstr "%s a publié une mise Ã  jour."
 
-#: mod/localtime.php:19 src/Model/Event.php:38 src/Model/Event.php:844
+#: mod/localtime.php:19 src/Model/Event.php:34 src/Model/Event.php:848
 msgid "l F d, Y \\@ g:i A"
 msgstr "l F d, Y \\@ g:i A"
 
@@ -4110,15 +4167,15 @@ msgstr "Informations de confidentialité indisponibles."
 msgid "Visible to:"
 msgstr "Visible par :"
 
-#: mod/lostpass.php:30
+#: mod/lostpass.php:26
 msgid "No valid account found."
 msgstr "Impossible de trouver un compte valide."
 
-#: mod/lostpass.php:42
+#: mod/lostpass.php:38
 msgid "Password reset request issued. Check your email."
 msgstr "Réinitialisation du mot de passe en cours. Vérifiez votre courriel."
 
-#: mod/lostpass.php:48
+#: mod/lostpass.php:44
 #, php-format
 msgid ""
 "\n"
@@ -4134,7 +4191,7 @@ msgid ""
 "\t\tissued this request."
 msgstr ""
 
-#: mod/lostpass.php:59
+#: mod/lostpass.php:55
 #, php-format
 msgid ""
 "\n"
@@ -4151,66 +4208,66 @@ msgid ""
 "\t\tLogin Name:\t%3$s"
 msgstr ""
 
-#: mod/lostpass.php:78
+#: mod/lostpass.php:74
 #, php-format
 msgid "Password reset requested at %s"
 msgstr "Requête de réinitialisation de mot de passe Ã  %s"
 
-#: mod/lostpass.php:94
+#: mod/lostpass.php:89
 msgid ""
 "Request could not be verified. (You may have previously submitted it.) "
 "Password reset failed."
 msgstr "Impossible d'honorer cette demande. (Vous l'avez peut-être déjà utilisée par le passé.) La réinitialisation a Ã©choué."
 
-#: mod/lostpass.php:107
+#: mod/lostpass.php:102
 msgid "Request has expired, please make a new one."
 msgstr ""
 
-#: mod/lostpass.php:122
+#: mod/lostpass.php:117
 msgid "Forgot your Password?"
 msgstr "Mot de passe oublié ?"
 
-#: mod/lostpass.php:123
+#: mod/lostpass.php:118
 msgid ""
 "Enter your email address and submit to have your password reset. Then check "
 "your email for further instructions."
 msgstr "Entrez votre adresse de courriel et validez pour réinitialiser votre mot de passe. Vous recevrez la suite des instructions par courriel."
 
-#: mod/lostpass.php:124 src/Module/Login.php:324
+#: mod/lostpass.php:119 src/Module/Login.php:324
 msgid "Nickname or Email: "
 msgstr "Pseudo ou eMail : "
 
-#: mod/lostpass.php:125
+#: mod/lostpass.php:120
 msgid "Reset"
 msgstr "Réinitialiser"
 
-#: mod/lostpass.php:141 src/Module/Login.php:336
+#: mod/lostpass.php:135 src/Module/Login.php:336
 msgid "Password Reset"
 msgstr "Réinitialiser le mot de passe"
 
-#: mod/lostpass.php:142
+#: mod/lostpass.php:136
 msgid "Your password has been reset as requested."
 msgstr "Votre mot de passe a bien Ã©té réinitialisé."
 
-#: mod/lostpass.php:143
+#: mod/lostpass.php:137
 msgid "Your new password is"
 msgstr "Votre nouveau mot de passe est "
 
-#: mod/lostpass.php:144
+#: mod/lostpass.php:138
 msgid "Save or copy your new password - and then"
 msgstr "Sauvez ou copiez ce nouveau mot de passe - puis"
 
-#: mod/lostpass.php:145
+#: mod/lostpass.php:139
 msgid "click here to login"
 msgstr "cliquez ici pour vous connecter"
 
-#: mod/lostpass.php:146
+#: mod/lostpass.php:140
 msgid ""
 "Your password may be changed from the <em>Settings</em> page after "
 "successful login."
 msgstr "Votre mot de passe peut Ãªtre changé depuis la page &lt;em&gt;Réglages&lt;/em&gt;, une fois que vous serez connecté."
 
-#: mod/lostpass.php:154
+#: mod/lostpass.php:148
 #, php-format
 msgid ""
 "\n"
@@ -4221,7 +4278,7 @@ msgid ""
 "\t\t"
 msgstr ""
 
-#: mod/lostpass.php:160
+#: mod/lostpass.php:154
 #, php-format
 msgid ""
 "\n"
@@ -4235,171 +4292,171 @@ msgid ""
 "\t\t"
 msgstr ""
 
-#: mod/lostpass.php:176
+#: mod/lostpass.php:170
 #, php-format
 msgid "Your password has been changed at %s"
 msgstr "Votre mot de passe a Ã©té modifié Ã  %s"
 
-#: mod/maintenance.php:26
-msgid "System down for maintenance"
-msgstr "Système indisponible pour cause de maintenance"
-
-#: mod/manage.php:181
+#: mod/manage.php:178
 msgid "Manage Identities and/or Pages"
 msgstr "Gérer les identités et/ou les pages"
 
-#: mod/manage.php:182
+#: mod/manage.php:179
 msgid ""
 "Toggle between different identities or community/group pages which share "
 "your account details or which you have been granted \"manage\" permissions"
 msgstr "Basculez entre les différentes identités ou pages (groupes/communautés) qui se partagent votre compte ou que vous avez Ã©té autorisé Ã  gérer."
 
-#: mod/manage.php:183
+#: mod/manage.php:180
 msgid "Select an identity to manage: "
 msgstr "Choisir une identité Ã  gérer: "
 
-#: mod/match.php:51
+#: mod/match.php:49
 msgid "No keywords to match. Please add keywords to your default profile."
 msgstr "Aucun mot-clé en correspondance. Merci d'ajouter des mots-clés Ã  votre profil par défaut."
 
-#: mod/match.php:106
-msgid "is interested in:"
-msgstr "s'intéresse Ã  :"
+#: mod/match.php:115 src/Content/Pager.php:198
+msgid "first"
+msgstr "premier"
+
+#: mod/match.php:120 src/Content/Pager.php:258
+msgid "next"
+msgstr "suivant"
 
-#: mod/match.php:120
+#: mod/match.php:135
 msgid "Profile Match"
 msgstr "Correpondance de profils"
 
-#: mod/message.php:35 mod/message.php:118 src/Content/Nav.php:252
+#: mod/message.php:33 mod/message.php:116 src/Content/Nav.php:255
 msgid "New Message"
 msgstr "Nouveau message"
 
-#: mod/message.php:72 mod/wallmessage.php:60
+#: mod/message.php:70 mod/wallmessage.php:60
 msgid "No recipient selected."
 msgstr "Pas de destinataire sélectionné."
 
-#: mod/message.php:76
+#: mod/message.php:74
 msgid "Unable to locate contact information."
 msgstr "Impossible de localiser les informations du contact."
 
-#: mod/message.php:79 mod/wallmessage.php:66
+#: mod/message.php:77 mod/wallmessage.php:66
 msgid "Message could not be sent."
 msgstr "Impossible d'envoyer le message."
 
-#: mod/message.php:82 mod/wallmessage.php:69
+#: mod/message.php:80 mod/wallmessage.php:69
 msgid "Message collection failure."
 msgstr "Récupération des messages infructueuse."
 
-#: mod/message.php:85 mod/wallmessage.php:72
+#: mod/message.php:83 mod/wallmessage.php:72
 msgid "Message sent."
 msgstr "Message envoyé."
 
-#: mod/message.php:112 mod/notifications.php:47 mod/notifications.php:185
-#: mod/notifications.php:233
+#: mod/message.php:110 mod/notifications.php:47 mod/notifications.php:187
+#: mod/notifications.php:235
 msgid "Discard"
 msgstr "Rejeter"
 
-#: mod/message.php:125 src/Content/Nav.php:249 view/theme/frio/theme.php:282
+#: mod/message.php:123 view/theme/frio/theme.php:271 src/Content/Nav.php:252
 msgid "Messages"
 msgstr "Messages"
 
-#: mod/message.php:150
+#: mod/message.php:148
 msgid "Do you really want to delete this message?"
 msgstr "Voulez-vous vraiment supprimer ce message ?"
 
-#: mod/message.php:168
+#: mod/message.php:166
 msgid "Conversation not found."
 msgstr ""
 
-#: mod/message.php:173
+#: mod/message.php:171
 msgid "Message deleted."
 msgstr "Message supprimé."
 
-#: mod/message.php:178 mod/message.php:193
+#: mod/message.php:176 mod/message.php:190
 msgid "Conversation removed."
 msgstr "Conversation supprimée."
 
-#: mod/message.php:207 mod/message.php:347 mod/wallmessage.php:123
+#: mod/message.php:204 mod/message.php:360 mod/wallmessage.php:123
 msgid "Please enter a link URL:"
 msgstr "Entrez un lien web :"
 
-#: mod/message.php:250 mod/wallmessage.php:128
+#: mod/message.php:246 mod/wallmessage.php:128
 msgid "Send Private Message"
 msgstr "Envoyer un message privé"
 
-#: mod/message.php:251 mod/message.php:415 mod/wallmessage.php:130
+#: mod/message.php:247 mod/message.php:430 mod/wallmessage.php:130
 msgid "To:"
 msgstr "À:"
 
-#: mod/message.php:255 mod/message.php:417 mod/wallmessage.php:131
+#: mod/message.php:251 mod/message.php:432 mod/wallmessage.php:131
 msgid "Subject:"
 msgstr "Sujet:"
 
-#: mod/message.php:293
+#: mod/message.php:289
 msgid "No messages."
 msgstr "Aucun message."
 
-#: mod/message.php:334
+#: mod/message.php:352
 msgid "Message not available."
 msgstr "Message indisponible."
 
-#: mod/message.php:391
+#: mod/message.php:406
 msgid "Delete message"
 msgstr "Effacer message"
 
-#: mod/message.php:393 mod/message.php:494
+#: mod/message.php:408 mod/message.php:540
 msgid "D, d M Y - g:i A"
 msgstr "D, d M Y - g:i A"
 
-#: mod/message.php:408 mod/message.php:491
+#: mod/message.php:423 mod/message.php:537
 msgid "Delete conversation"
 msgstr "Effacer conversation"
 
-#: mod/message.php:410
+#: mod/message.php:425
 msgid ""
 "No secure communications available. You <strong>may</strong> be able to "
 "respond from the sender's profile page."
 msgstr "Pas de communications sécurisées possibles. Vous serez <strong>peut-être</strong> en mesure de répondre depuis la page de profil de l'émetteur."
 
-#: mod/message.php:414
+#: mod/message.php:429
 msgid "Send Reply"
 msgstr "Répondre"
 
-#: mod/message.php:465
+#: mod/message.php:512
 #, php-format
 msgid "Unknown sender - %s"
 msgstr "Émetteur inconnu - %s"
 
-#: mod/message.php:467
+#: mod/message.php:514
 #, php-format
 msgid "You and %s"
 msgstr "Vous et %s"
 
-#: mod/message.php:469
+#: mod/message.php:516
 #, php-format
 msgid "%s and You"
 msgstr "%s et vous"
 
-#: mod/message.php:497
+#: mod/message.php:543
 #, php-format
 msgid "%d message"
 msgid_plural "%d messages"
 msgstr[0] "%d message"
 msgstr[1] "%d messages"
 
-#: mod/network.php:192 mod/search.php:40
+#: mod/network.php:183 mod/search.php:38
 msgid "Remove term"
 msgstr "Retirer le terme"
 
-#: mod/network.php:199 mod/search.php:49
+#: mod/network.php:190 mod/search.php:47
 msgid "Saved Searches"
 msgstr "Recherches"
 
-#: mod/network.php:200 src/Model/Group.php:410
+#: mod/network.php:191 src/Model/Group.php:414
 msgid "add"
 msgstr "ajouter"
 
-#: mod/network.php:567
+#: mod/network.php:563
 #, php-format
 msgid ""
 "Warning: This group contains %s member from a network that doesn't allow non"
@@ -4410,85 +4467,85 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: mod/network.php:570
+#: mod/network.php:566
 msgid "Messages in this group won't be send to these receivers."
 msgstr "Les messages dans ce groupe ne seront pas envoyés Ã  ces destinataires."
 
-#: mod/network.php:638
+#: mod/network.php:633
 msgid "No such group"
 msgstr "Groupe inexistant"
 
-#: mod/network.php:663
+#: mod/network.php:658
 #, php-format
 msgid "Group: %s"
 msgstr "Group : %s"
 
-#: mod/network.php:689
+#: mod/network.php:684
 msgid "Private messages to this person are at risk of public disclosure."
 msgstr "Les messages privés envoyés Ã  ce contact s'exposent Ã  une diffusion incontrôlée."
 
-#: mod/network.php:692
+#: mod/network.php:687
 msgid "Invalid contact."
 msgstr "Contact invalide."
 
-#: mod/network.php:970
+#: mod/network.php:966
 msgid "Commented Order"
 msgstr "Tri par commentaires"
 
-#: mod/network.php:973
+#: mod/network.php:969
 msgid "Sort by Comment Date"
 msgstr "Trier par date de commentaire"
 
-#: mod/network.php:978
+#: mod/network.php:974
 msgid "Posted Order"
 msgstr "Tri des publications"
 
-#: mod/network.php:981
+#: mod/network.php:977
 msgid "Sort by Post Date"
 msgstr "Trier par date de publication"
 
-#: mod/network.php:988 mod/profiles.php:595
-#: src/Core/NotificationsManager.php:187
+#: mod/network.php:984 mod/profiles.php:579
+#: src/Core/NotificationsManager.php:189
 msgid "Personal"
 msgstr "Personnel"
 
-#: mod/network.php:991
+#: mod/network.php:987
 msgid "Posts that mention or involve you"
 msgstr "Publications qui vous concernent"
 
-#: mod/network.php:998
+#: mod/network.php:994
 msgid "New"
 msgstr "Nouveau"
 
-#: mod/network.php:1001
+#: mod/network.php:997
 msgid "Activity Stream - by date"
 msgstr "Flux d'activités - par date"
 
-#: mod/network.php:1009
+#: mod/network.php:1005
 msgid "Shared Links"
 msgstr "Liens partagés"
 
-#: mod/network.php:1012
+#: mod/network.php:1008
 msgid "Interesting Links"
 msgstr "Liens intéressants"
 
-#: mod/network.php:1019
+#: mod/network.php:1015
 msgid "Starred"
 msgstr "Mis en avant"
 
-#: mod/network.php:1022
+#: mod/network.php:1018
 msgid "Favourite Posts"
 msgstr "Publications favorites"
 
-#: mod/newmember.php:11
+#: mod/newmember.php:12
 msgid "Welcome to Friendica"
 msgstr "Bienvenue sur Friendica"
 
-#: mod/newmember.php:12
+#: mod/newmember.php:13
 msgid "New Member Checklist"
 msgstr "Checklist du nouvel utilisateur"
 
-#: mod/newmember.php:14
+#: mod/newmember.php:15
 msgid ""
 "We would like to offer some tips and links to help make your experience "
 "enjoyable. Click any item to visit the relevant page. A link to this page "
@@ -4496,33 +4553,33 @@ msgid ""
 "registration and then will quietly disappear."
 msgstr "Nous souhaiterions vous donner quelques astuces et ressources pour rendre votre expérience la plus agréable possible. Cliquez sur n'importe lequel de ces Ã©léments pour visiter la page correspondante. Un lien vers cette page restera visible sur votre page d'accueil pendant les deux semaines qui suivent votre inscription initiale, puis disparaîtra silencieusement."
 
-#: mod/newmember.php:15
+#: mod/newmember.php:16
 msgid "Getting Started"
 msgstr "Bien démarrer"
 
-#: mod/newmember.php:17
+#: mod/newmember.php:18
 msgid "Friendica Walk-Through"
 msgstr "Friendica pas-à-pas"
 
-#: mod/newmember.php:17
+#: mod/newmember.php:18
 msgid ""
 "On your <em>Quick Start</em> page - find a brief introduction to your "
 "profile and network tabs, make some new connections, and find some groups to"
 " join."
 msgstr "Sur votre page d'accueil, dans <em>Conseils aux nouveaux venus</em> - vous trouverez une rapide introduction aux onglets Profil et Réseau, pourrez vous connecter Ã  Facebook, Ã©tablir de nouvelles relations, et choisir des groupes Ã  rejoindre."
 
-#: mod/newmember.php:21
+#: mod/newmember.php:22
 msgid "Go to Your Settings"
 msgstr "Éditer vos Réglages"
 
-#: mod/newmember.php:21
+#: mod/newmember.php:22
 msgid ""
 "On your <em>Settings</em> page -  change your initial password. Also make a "
 "note of your Identity Address. This looks just like an email address - and "
 "will be useful in making friends on the free social web."
 msgstr "Sur la page des <em>Réglages</em> -     changez votre mot de passe initial. Notez bien votre Identité. Elle ressemble Ã  une adresse de courriel - et vous sera utile pour vous faire des amis dans le web social libre."
 
-#: mod/newmember.php:22
+#: mod/newmember.php:23
 msgid ""
 "Review the other settings, particularly the privacy settings. An unpublished"
 " directory listing is like having an unlisted phone number. In general, you "
@@ -4530,88 +4587,87 @@ msgid ""
 "potential friends know exactly how to find you."
 msgstr "Vérifiez les autres réglages, tout particulièrement ceux liés Ã  la vie privée. Un profil non listé, c'est un peu comme un numéro sur liste rouge. En général, vous devriez probablement publier votre profil - Ã  moins que tous vos amis (potentiels) sachent déjà comment vous trouver."
 
-#: mod/newmember.php:24 mod/profperm.php:117 src/Content/Nav.php:154
-#: src/Model/Profile.php:743 src/Model/Profile.php:876
-#: src/Model/Profile.php:909 src/Module/Contact.php:661
-#: src/Module/Contact.php:874 view/theme/frio/theme.php:274
+#: mod/newmember.php:25 mod/profperm.php:117 view/theme/frio/theme.php:263
+#: src/Content/Nav.php:157 src/Model/Profile.php:876 src/Model/Profile.php:909
+#: src/Module/Contact.php:654 src/Module/Contact.php:869
 msgid "Profile"
 msgstr "Profil"
 
-#: mod/newmember.php:26 mod/profiles.php:599 mod/profile_photo.php:250
+#: mod/newmember.php:27 mod/profile_photo.php:253 mod/profiles.php:583
 msgid "Upload Profile Photo"
 msgstr "Téléverser une photo de profil"
 
-#: mod/newmember.php:26
+#: mod/newmember.php:27
 msgid ""
 "Upload a profile photo if you have not done so already. Studies have shown "
 "that people with real photos of themselves are ten times more likely to make"
 " friends than people who do not."
 msgstr "Téléversez (envoyez) une photo de profil si vous n'en avez pas déjà une. Les Ã©tudes montrent que les gens qui affichent de vraies photos d'eux sont dix fois plus susceptibles de se faire des amis."
 
-#: mod/newmember.php:27
+#: mod/newmember.php:28
 msgid "Edit Your Profile"
 msgstr "Éditer votre Profil"
 
-#: mod/newmember.php:27
+#: mod/newmember.php:28
 msgid ""
 "Edit your <strong>default</strong> profile to your liking. Review the "
 "settings for hiding your list of friends and hiding the profile from unknown"
 " visitors."
 msgstr "Éditez votre profil <strong>par défaut</strong> Ã  votre convenance. Vérifiez les réglages concernant la visibilité de votre liste d'amis par les visiteurs inconnus."
 
-#: mod/newmember.php:28
+#: mod/newmember.php:29
 msgid "Profile Keywords"
 msgstr "Mots-clés du profil"
 
-#: mod/newmember.php:28
+#: mod/newmember.php:29
 msgid ""
 "Set some public keywords for your default profile which describe your "
 "interests. We may be able to find other people with similar interests and "
 "suggest friendships."
 msgstr "Choisissez quelques mots-clé publics pour votre profil par défaut. Ils pourront ainsi décrire vos centres d'intérêt, et nous pourrons vous proposer des contacts qui les partagent."
 
-#: mod/newmember.php:30
+#: mod/newmember.php:31
 msgid "Connecting"
 msgstr "Connexions"
 
-#: mod/newmember.php:36
+#: mod/newmember.php:37
 msgid "Importing Emails"
 msgstr "Importer courriels"
 
-#: mod/newmember.php:36
+#: mod/newmember.php:37
 msgid ""
 "Enter your email access information on your Connector Settings page if you "
 "wish to import and interact with friends or mailing lists from your email "
 "INBOX"
 msgstr "Entrez vos paramètres de courriel dans les Réglages des connecteurs si vous souhaitez importer et interagir avec des amis ou des listes venant de votre Boîte de Réception."
 
-#: mod/newmember.php:39
+#: mod/newmember.php:40
 msgid "Go to Your Contacts Page"
 msgstr "Consulter vos Contacts"
 
-#: mod/newmember.php:39
+#: mod/newmember.php:40
 msgid ""
 "Your Contacts page is your gateway to managing friendships and connecting "
 "with friends on other networks. Typically you enter their address or site "
 "URL in the <em>Add New Contact</em> dialog."
 msgstr "Votre page Contacts est le point d'entrée vers la gestion de vos amitiés/relations et la connexion Ã  des amis venant d'autres réseaux. Typiquement, vous pourrez y rentrer leur adresse d'Identité ou l'URL de leur site dans le formulaire <em>Ajouter un nouveau contact</em>."
 
-#: mod/newmember.php:40
+#: mod/newmember.php:41
 msgid "Go to Your Site's Directory"
 msgstr "Consulter l'Annuaire de votre Site"
 
-#: mod/newmember.php:40
+#: mod/newmember.php:41
 msgid ""
 "The Directory page lets you find other people in this network or other "
 "federated sites. Look for a <em>Connect</em> or <em>Follow</em> link on "
 "their profile page. Provide your own Identity Address if requested."
 msgstr "La page Annuaire vous permet de trouver d'autres personnes au sein de ce réseaux ou parmi d'autres sites fédérés. Cherchez un lien <em>Relier</em> ou <em>Suivre</em> sur leur profil. Vous pourrez avoir besoin d'indiquer votre adresse d'identité."
 
-#: mod/newmember.php:41
+#: mod/newmember.php:42
 msgid "Finding New People"
 msgstr "Trouver de nouvelles personnes"
 
-#: mod/newmember.php:41
+#: mod/newmember.php:42
 msgid ""
 "On the side panel of the Contacts page are several tools to find new "
 "friends. We can match people by interest, look up people by name or "
@@ -4620,47 +4676,47 @@ msgid ""
 "hours."
 msgstr "Sur le panneau latéral de la page Contacts, il y a plusieurs moyens de trouver de nouveaux amis. Nous pouvons mettre les gens en relation selon leurs intérêts, rechercher des amis par nom ou intérêt, et fournir des suggestions en fonction de la topologie du réseau. Sur un site tout neuf, les suggestions d'amitié devraient commencer Ã  apparaître au bout de 24 heures."
 
-#: mod/newmember.php:43 src/Model/Group.php:411 src/Module/Contact.php:759
+#: mod/newmember.php:44 src/Model/Group.php:415 src/Module/Contact.php:752
 msgid "Groups"
 msgstr "Groupes"
 
-#: mod/newmember.php:45
+#: mod/newmember.php:46
 msgid "Group Your Contacts"
 msgstr "Grouper vos contacts"
 
-#: mod/newmember.php:45
+#: mod/newmember.php:46
 msgid ""
 "Once you have made some friends, organize them into private conversation "
 "groups from the sidebar of your Contacts page and then you can interact with"
 " each group privately on your Network page."
 msgstr "Une fois que vous avez trouvé quelques amis, organisez-les en groupes de conversation privés depuis le panneau latéral de la page Contacts. Vous pourrez ensuite interagir avec chaque groupe de manière privée depuis la page Réseau."
 
-#: mod/newmember.php:48
+#: mod/newmember.php:49
 msgid "Why Aren't My Posts Public?"
 msgstr "Pourquoi mes Ã©léments ne sont pas publics ?"
 
-#: mod/newmember.php:48
+#: mod/newmember.php:49
 msgid ""
 "Friendica respects your privacy. By default, your posts will only show up to"
 " people you've added as friends. For more information, see the help section "
 "from the link above."
 msgstr "Friendica respecte votre vie privée. Par défaut, toutes vos publications seront seulement montrés Ã  vos amis. Pour plus d'information, consultez la section \"aide\" du lien ci-dessus."
 
-#: mod/newmember.php:52
+#: mod/newmember.php:53
 msgid "Getting Help"
 msgstr "Obtenir de l'aide"
 
-#: mod/newmember.php:54
+#: mod/newmember.php:55
 msgid "Go to the Help Section"
 msgstr "Aller Ã  la section Aide"
 
-#: mod/newmember.php:54
+#: mod/newmember.php:55
 msgid ""
 "Our <strong>help</strong> pages may be consulted for detail on other program"
 " features and resources."
 msgstr "Nos pages d'<strong>aide</strong> peuvent Ãªtre consultées pour davantage de détails sur les fonctionnalités ou les ressources."
 
-#: mod/notes.php:42 src/Model/Profile.php:959
+#: mod/notes.php:34 src/Model/Profile.php:959
 msgid "Personal Notes"
 msgstr "Notes personnelles"
 
@@ -4668,125 +4724,125 @@ msgstr "Notes personnelles"
 msgid "Invalid request identifier."
 msgstr "Identifiant de demande invalide."
 
-#: mod/notifications.php:60 mod/notifications.php:184
-#: mod/notifications.php:269 src/Module/Contact.php:628
-#: src/Module/Contact.php:830 src/Module/Contact.php:1090
+#: mod/notifications.php:60 mod/notifications.php:186
+#: mod/notifications.php:271 src/Module/Contact.php:622
+#: src/Module/Contact.php:825 src/Module/Contact.php:1085
 msgid "Ignore"
 msgstr "Ignorer"
 
-#: mod/notifications.php:93 src/Content/Nav.php:244
+#: mod/notifications.php:93 src/Content/Nav.php:247
 msgid "Notifications"
 msgstr "Notifications"
 
-#: mod/notifications.php:105
+#: mod/notifications.php:107
 msgid "Network Notifications"
 msgstr "Notifications du réseau"
 
-#: mod/notifications.php:110 mod/notify.php:82
+#: mod/notifications.php:112 mod/notify.php:84
 msgid "System Notifications"
 msgstr "Notifications du système"
 
-#: mod/notifications.php:115
+#: mod/notifications.php:117
 msgid "Personal Notifications"
 msgstr "Notifications personnelles"
 
-#: mod/notifications.php:120
+#: mod/notifications.php:122
 msgid "Home Notifications"
 msgstr "Notifications de page d'accueil"
 
-#: mod/notifications.php:140
+#: mod/notifications.php:142
 msgid "Show unread"
 msgstr "Afficher non-lus"
 
-#: mod/notifications.php:140
+#: mod/notifications.php:142
 msgid "Show all"
 msgstr "Tout afficher"
 
-#: mod/notifications.php:151
+#: mod/notifications.php:153
 msgid "Show Ignored Requests"
 msgstr "Voir les demandes ignorées"
 
-#: mod/notifications.php:151
+#: mod/notifications.php:153
 msgid "Hide Ignored Requests"
 msgstr "Cacher les demandes ignorées"
 
-#: mod/notifications.php:164 mod/notifications.php:241
+#: mod/notifications.php:166 mod/notifications.php:243
 msgid "Notification type:"
 msgstr ""
 
-#: mod/notifications.php:167
+#: mod/notifications.php:169
 msgid "Suggested by:"
 msgstr ""
 
-#: mod/notifications.php:179 mod/notifications.php:258
-#: src/Module/Contact.php:636
+#: mod/notifications.php:181 mod/notifications.php:260
+#: src/Module/Contact.php:630
 msgid "Hide this contact from others"
 msgstr "Cacher ce contact aux autres"
 
-#: mod/notifications.php:201
+#: mod/notifications.php:203
 msgid "Claims to be known to you: "
 msgstr "Prétend que vous le connaissez : "
 
-#: mod/notifications.php:202
+#: mod/notifications.php:204
 msgid "yes"
 msgstr "oui"
 
-#: mod/notifications.php:202
+#: mod/notifications.php:204
 msgid "no"
 msgstr "non"
 
-#: mod/notifications.php:203 mod/notifications.php:207
+#: mod/notifications.php:205 mod/notifications.php:209
 msgid "Shall your connection be bidirectional or not?"
 msgstr "Souhaitez vous que votre connexion soit bi-directionnelle ?"
 
-#: mod/notifications.php:204 mod/notifications.php:208
+#: mod/notifications.php:206 mod/notifications.php:210
 #, php-format
 msgid ""
 "Accepting %s as a friend allows %s to subscribe to your posts, and you will "
 "also receive updates from them in your news feed."
 msgstr ""
 
-#: mod/notifications.php:205
+#: mod/notifications.php:207
 #, php-format
 msgid ""
 "Accepting %s as a subscriber allows them to subscribe to your posts, but you"
 " will not receive updates from them in your news feed."
 msgstr ""
 
-#: mod/notifications.php:209
+#: mod/notifications.php:211
 #, php-format
 msgid ""
 "Accepting %s as a sharer allows them to subscribe to your posts, but you "
 "will not receive updates from them in your news feed."
 msgstr ""
 
-#: mod/notifications.php:220
+#: mod/notifications.php:222
 msgid "Friend"
 msgstr "Ami"
 
-#: mod/notifications.php:221
+#: mod/notifications.php:223
 msgid "Sharer"
 msgstr "Initiateur du partage"
 
-#: mod/notifications.php:221
+#: mod/notifications.php:223
 msgid "Subscriber"
 msgstr ""
 
-#: mod/notifications.php:264 src/Model/Profile.php:537
-#: src/Module/Contact.php:93
+#: mod/notifications.php:266 src/Model/Profile.php:543
+#: src/Module/Contact.php:88
 msgid "Network:"
 msgstr "Réseau"
 
-#: mod/notifications.php:277
+#: mod/notifications.php:279
 msgid "No introductions."
 msgstr "Aucune demande d'introduction."
 
-#: mod/notifications.php:311
+#: mod/notifications.php:313
 #, php-format
 msgid "No more %s notifications."
 msgstr "Aucune notification de %s"
 
-#: mod/notify.php:78
+#: mod/notify.php:80
 msgid "No more system notifications."
 msgstr "Pas plus de notifications système."
 
@@ -4794,16 +4850,16 @@ msgstr "Pas plus de notifications système."
 msgid "Post successful."
 msgstr "Publication réussie."
 
-#: mod/openid.php:32
+#: mod/openid.php:31
 msgid "OpenID protocol error. No ID returned."
 msgstr "Erreur de protocole OpenID. Pas d'ID en retour."
 
-#: mod/openid.php:68
+#: mod/openid.php:67
 msgid ""
 "Account not found and OpenID registration is not permitted on this site."
 msgstr "Compte introuvable, et l'inscription OpenID n'est pas autorisée sur ce site."
 
-#: mod/openid.php:118 src/Module/Login.php:94 src/Module/Login.php:144
+#: mod/openid.php:117 src/Module/Login.php:92 src/Module/Login.php:143
 msgid "Login failed."
 msgstr "Échec de connexion."
 
@@ -4835,7 +4891,7 @@ msgstr "réussite"
 msgid "failed"
 msgstr "échec"
 
-#: mod/ostatus_subscribe.php:89 src/Object/Post.php:282
+#: mod/ostatus_subscribe.php:89 src/Object/Post.php:283
 msgid "ignored"
 msgstr "ignoré"
 
@@ -4843,255 +4899,251 @@ msgstr "ignoré"
 msgid "Keep this window open until done."
 msgstr "Veuillez garder cette fenêtre ouverte jusqu'à la fin."
 
-#: mod/photos.php:118 src/Model/Profile.php:920
+#: mod/photos.php:115 src/Model/Profile.php:920
 msgid "Photo Albums"
 msgstr "Albums photo"
 
-#: mod/photos.php:119 mod/photos.php:1710
+#: mod/photos.php:116 mod/photos.php:1665
 msgid "Recent Photos"
 msgstr "Photos récentes"
 
-#: mod/photos.php:122 mod/photos.php:1231 mod/photos.php:1712
+#: mod/photos.php:119 mod/photos.php:1187 mod/photos.php:1667
 msgid "Upload New Photos"
 msgstr "Téléverser de nouvelles photos"
 
-#: mod/photos.php:140 mod/settings.php:56
+#: mod/photos.php:137 mod/settings.php:56
 msgid "everybody"
 msgstr "tout le monde"
 
-#: mod/photos.php:196
+#: mod/photos.php:193
 msgid "Contact information unavailable"
 msgstr "Informations de contact indisponibles"
 
-#: mod/photos.php:215
+#: mod/photos.php:212
 msgid "Album not found."
 msgstr "Album introuvable."
 
-#: mod/photos.php:244 mod/photos.php:257 mod/photos.php:1182
+#: mod/photos.php:241 mod/photos.php:254 mod/photos.php:1138
 msgid "Delete Album"
 msgstr "Effacer l'album"
 
-#: mod/photos.php:255
+#: mod/photos.php:252
 msgid "Do you really want to delete this photo album and all its photos?"
 msgstr "Voulez-vous vraiment supprimer cet album photo et toutes ses photos ?"
 
-#: mod/photos.php:317 mod/photos.php:329 mod/photos.php:1457
+#: mod/photos.php:310 mod/photos.php:322 mod/photos.php:1413
 msgid "Delete Photo"
 msgstr "Effacer la photo"
 
-#: mod/photos.php:327
+#: mod/photos.php:320
 msgid "Do you really want to delete this photo?"
 msgstr "Voulez-vous vraiment supprimer cette photo ?"
 
-#: mod/photos.php:684
+#: mod/photos.php:645
 msgid "a photo"
 msgstr "une photo"
 
-#: mod/photos.php:684
+#: mod/photos.php:645
 #, php-format
 msgid "%1$s was tagged in %2$s by %3$s"
 msgstr "%1$s a Ã©té Ã©tiqueté dans %2$s par %3$s"
 
-#: mod/photos.php:780 mod/photos.php:783 mod/photos.php:812
-#: mod/profile_photo.php:155 mod/wall_upload.php:197
+#: mod/photos.php:738 mod/photos.php:741 mod/photos.php:770
+#: mod/profile_photo.php:152 mod/wall_upload.php:198
 #, php-format
 msgid "Image exceeds size limit of %s"
 msgstr "L'image dépasse la taille limite de %s"
 
-#: mod/photos.php:786
+#: mod/photos.php:744
 msgid "Image upload didn't complete, please try again"
 msgstr ""
 
-#: mod/photos.php:789
+#: mod/photos.php:747
 msgid "Image file is missing"
 msgstr ""
 
-#: mod/photos.php:794
+#: mod/photos.php:752
 msgid ""
 "Server can't accept new file upload at this time, please contact your "
 "administrator"
 msgstr ""
 
-#: mod/photos.php:820
+#: mod/photos.php:778
 msgid "Image file is empty."
 msgstr "Fichier image vide."
 
-#: mod/photos.php:835 mod/profile_photo.php:164 mod/wall_upload.php:211
+#: mod/photos.php:793 mod/profile_photo.php:161 mod/wall_upload.php:212
 msgid "Unable to process image."
 msgstr "Impossible de traiter l'image."
 
-#: mod/photos.php:864 mod/profile_photo.php:309 mod/wall_upload.php:250
+#: mod/photos.php:822 mod/profile_photo.php:310 mod/wall_upload.php:251
 msgid "Image upload failed."
 msgstr "Le téléversement de l'image a Ã©choué."
 
-#: mod/photos.php:952
+#: mod/photos.php:908
 msgid "No photos selected"
 msgstr "Aucune photo sélectionnée"
 
-#: mod/photos.php:1049 mod/videos.php:302
+#: mod/photos.php:1005 mod/videos.php:239
 msgid "Access to this item is restricted."
 msgstr "Accès restreint Ã  cet Ã©lément."
 
-#: mod/photos.php:1103
+#: mod/photos.php:1059
 msgid "Upload Photos"
 msgstr "Téléverser des photos"
 
-#: mod/photos.php:1107 mod/photos.php:1177
+#: mod/photos.php:1063 mod/photos.php:1133
 msgid "New album name: "
 msgstr "Nom du nouvel album : "
 
-#: mod/photos.php:1108
+#: mod/photos.php:1064
 msgid "or select existing album:"
 msgstr ""
 
-#: mod/photos.php:1109
+#: mod/photos.php:1065
 msgid "Do not show a status post for this upload"
 msgstr "Ne pas publier de notice de statut pour cet envoi"
 
-#: mod/photos.php:1125 mod/photos.php:1460 mod/settings.php:1224
+#: mod/photos.php:1081 mod/photos.php:1416 mod/settings.php:1209
 msgid "Show to Groups"
 msgstr "Montrer aux groupes"
 
-#: mod/photos.php:1126 mod/photos.php:1461 mod/settings.php:1225
+#: mod/photos.php:1082 mod/photos.php:1417 mod/settings.php:1210
 msgid "Show to Contacts"
 msgstr "Montrer aux Contacts"
 
-#: mod/photos.php:1188
+#: mod/photos.php:1144
 msgid "Edit Album"
 msgstr "Éditer l'album"
 
-#: mod/photos.php:1193
+#: mod/photos.php:1149
 msgid "Show Newest First"
 msgstr "Plus récent d'abord"
 
-#: mod/photos.php:1195
+#: mod/photos.php:1151
 msgid "Show Oldest First"
 msgstr "Plus ancien d'abord"
 
-#: mod/photos.php:1216 mod/photos.php:1695
+#: mod/photos.php:1172 mod/photos.php:1650
 msgid "View Photo"
 msgstr "Voir la photo"
 
-#: mod/photos.php:1257
+#: mod/photos.php:1213
 msgid "Permission denied. Access to this item may be restricted."
 msgstr "Interdit. L'accès Ã  cet Ã©lément peut avoir Ã©té restreint."
 
-#: mod/photos.php:1259
+#: mod/photos.php:1215
 msgid "Photo not available"
 msgstr "Photo indisponible"
 
-#: mod/photos.php:1334
+#: mod/photos.php:1290
 msgid "View photo"
 msgstr "Voir photo"
 
-#: mod/photos.php:1334
+#: mod/photos.php:1290
 msgid "Edit photo"
 msgstr "Éditer la photo"
 
-#: mod/photos.php:1335
+#: mod/photos.php:1291
 msgid "Use as profile photo"
 msgstr "Utiliser comme photo de profil"
 
-#: mod/photos.php:1341 src/Object/Post.php:155
+#: mod/photos.php:1297 src/Object/Post.php:156
 msgid "Private Message"
 msgstr "Message privé"
 
-#: mod/photos.php:1361
+#: mod/photos.php:1317
 msgid "View Full Size"
 msgstr "Voir en taille réelle"
 
-#: mod/photos.php:1425
+#: mod/photos.php:1381
 msgid "Tags: "
 msgstr "Étiquettes :"
 
-#: mod/photos.php:1428
+#: mod/photos.php:1384
 msgid "[Select tags to remove]"
 msgstr ""
 
-#: mod/photos.php:1443
+#: mod/photos.php:1399
 msgid "New album name"
 msgstr "Nom du nouvel album"
 
-#: mod/photos.php:1444
+#: mod/photos.php:1400
 msgid "Caption"
 msgstr "Titre"
 
-#: mod/photos.php:1445
+#: mod/photos.php:1401
 msgid "Add a Tag"
 msgstr "Ajouter une Ã©tiquette"
 
-#: mod/photos.php:1445
+#: mod/photos.php:1401
 msgid ""
 "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
 msgstr "Exemples : @bob, @Barbara_Jensen, @jim@example.com, #Californie, #vacances"
 
-#: mod/photos.php:1446
+#: mod/photos.php:1402
 msgid "Do not rotate"
 msgstr "Pas de rotation"
 
-#: mod/photos.php:1447
+#: mod/photos.php:1403
 msgid "Rotate CW (right)"
 msgstr "Tourner dans le sens des aiguilles d'une montre (vers la droite)"
 
-#: mod/photos.php:1448
+#: mod/photos.php:1404
 msgid "Rotate CCW (left)"
 msgstr "Tourner dans le sens contraire des aiguilles d'une montre (vers la gauche)"
 
-#: mod/photos.php:1482 src/Object/Post.php:310
+#: mod/photos.php:1438 src/Object/Post.php:311
 msgid "I like this (toggle)"
 msgstr "J'aime"
 
-#: mod/photos.php:1483 src/Object/Post.php:311
+#: mod/photos.php:1439 src/Object/Post.php:312
 msgid "I don't like this (toggle)"
 msgstr "Je n'aime pas"
 
-#: mod/photos.php:1498 mod/photos.php:1537 mod/photos.php:1597
-#: src/Module/Contact.php:1023 src/Object/Post.php:810
+#: mod/photos.php:1454 mod/photos.php:1493 mod/photos.php:1553
+#: src/Module/Contact.php:1018 src/Object/Post.php:870
 msgid "This is you"
 msgstr "C'est vous"
 
-#: mod/photos.php:1500 mod/photos.php:1539 mod/photos.php:1599
-#: src/Object/Post.php:415 src/Object/Post.php:812
+#: mod/photos.php:1456 mod/photos.php:1495 mod/photos.php:1555
+#: src/Object/Post.php:417 src/Object/Post.php:872
 msgid "Comment"
 msgstr "Commenter"
 
-#: mod/photos.php:1629
+#: mod/photos.php:1585
 msgid "Map"
 msgstr "Carte"
 
-#: mod/photos.php:1701 mod/videos.php:379
+#: mod/photos.php:1656 mod/videos.php:316
 msgid "View Album"
 msgstr "Voir l'album"
 
-#: mod/ping.php:281
+#: mod/ping.php:272
 msgid "{0} wants to be your friend"
 msgstr "{0} souhaite Ãªtre votre ami(e)"
 
-#: mod/ping.php:297
-msgid "{0} sent you a message"
-msgstr "{0} vous a envoyé un message"
-
-#: mod/ping.php:313
+#: mod/ping.php:288
 msgid "{0} requested registration"
 msgstr "{0} a demandé Ã  s'inscrire"
 
-#: mod/poke.php:187
+#: mod/poke.php:181
 msgid "Poke/Prod"
 msgstr "Solliciter"
 
-#: mod/poke.php:188
+#: mod/poke.php:182
 msgid "poke, prod or do other things to somebody"
 msgstr "solliciter (poke/...) quelqu'un"
 
-#: mod/poke.php:189
+#: mod/poke.php:183
 msgid "Recipient"
 msgstr "Destinataire"
 
-#: mod/poke.php:190
+#: mod/poke.php:184
 msgid "Choose what you wish to do to recipient"
 msgstr "Choisissez ce que vous voulez faire au destinataire"
 
-#: mod/poke.php:193
+#: mod/poke.php:187
 msgid "Make this post private"
 msgstr "Rendez ce message privé"
 
@@ -5099,405 +5151,386 @@ msgstr "Rendez ce message privé"
 msgid "Only logged in users are permitted to perform a probing."
 msgstr ""
 
-#: mod/profile.php:44 src/Model/Profile.php:132
-msgid "Requested profile is not available."
-msgstr "Le profil demandé n'est pas disponible."
+#: mod/profile_photo.php:58
+msgid "Image uploaded but image cropping failed."
+msgstr "Image envoyée, mais impossible de la retailler."
 
-#: mod/profile.php:95 mod/profile.php:98 src/Protocol/OStatus.php:1290
+#: mod/profile_photo.php:88 mod/profile_photo.php:97 mod/profile_photo.php:106
+#: mod/profile_photo.php:318
 #, php-format
-msgid "%s's timeline"
-msgstr ""
+msgid "Image size reduction [%s] failed."
+msgstr "Réduction de la taille de l'image [%s] Ã©chouée."
 
-#: mod/profile.php:96 src/Protocol/OStatus.php:1294
-#, php-format
-msgid "%s's posts"
-msgstr ""
+#: mod/profile_photo.php:125
+msgid ""
+"Shift-reload the page or clear browser cache if the new photo does not "
+"display immediately."
+msgstr "Rechargez la page avec la touche Maj pressée, ou bien effacez le cache du navigateur, si d'aventure la nouvelle photo n'apparaissait pas immédiatement."
 
-#: mod/profile.php:97 src/Protocol/OStatus.php:1297
-#, php-format
-msgid "%s's comments"
-msgstr ""
+#: mod/profile_photo.php:133
+msgid "Unable to process image"
+msgstr "Impossible de traiter l'image"
+
+#: mod/profile_photo.php:251
+msgid "Upload File:"
+msgstr "Fichier Ã  téléverser :"
+
+#: mod/profile_photo.php:252
+msgid "Select a profile:"
+msgstr "Choisir un profil :"
+
+#: mod/profile_photo.php:257
+msgid "or"
+msgstr "ou"
+
+#: mod/profile_photo.php:258
+msgid "skip this step"
+msgstr "ignorer cette Ã©tape"
+
+#: mod/profile_photo.php:258
+msgid "select a photo from your photo albums"
+msgstr "choisissez une photo depuis vos albums"
+
+#: mod/profile_photo.php:271
+msgid "Crop Image"
+msgstr "(Re)cadrer l'image"
+
+#: mod/profile_photo.php:272
+msgid "Please adjust the image cropping for optimum viewing."
+msgstr "Ajustez le cadre de l'image pour une visualisation optimale."
+
+#: mod/profile_photo.php:274
+msgid "Done Editing"
+msgstr "Édition terminée"
+
+#: mod/profile_photo.php:308
+msgid "Image uploaded successfully."
+msgstr "Image téléversée avec succès."
 
-#: mod/profiles.php:61
+#: mod/profiles.php:62
 msgid "Profile deleted."
 msgstr "Profil supprimé."
 
-#: mod/profiles.php:77 mod/profiles.php:113
+#: mod/profiles.php:78 mod/profiles.php:114
 msgid "Profile-"
 msgstr "Profil-"
 
-#: mod/profiles.php:96 mod/profiles.php:135
+#: mod/profiles.php:97 mod/profiles.php:135
 msgid "New profile created."
 msgstr "Nouveau profil créé."
 
-#: mod/profiles.php:119
+#: mod/profiles.php:120
 msgid "Profile unavailable to clone."
 msgstr "Ce profil ne peut Ãªtre cloné."
 
-#: mod/profiles.php:207
+#: mod/profiles.php:206
 msgid "Profile Name is required."
 msgstr "Le nom du profil est requis."
 
-#: mod/profiles.php:348
+#: mod/profiles.php:346
 msgid "Marital Status"
 msgstr "Statut marital"
 
-#: mod/profiles.php:352
+#: mod/profiles.php:349
 msgid "Romantic Partner"
 msgstr "Partenaire / conjoint"
 
-#: mod/profiles.php:364
+#: mod/profiles.php:358
 msgid "Work/Employment"
 msgstr "Travail / Occupation"
 
-#: mod/profiles.php:367
+#: mod/profiles.php:361
 msgid "Religion"
 msgstr "Religion"
 
-#: mod/profiles.php:371
+#: mod/profiles.php:364
 msgid "Political Views"
 msgstr "Tendance politique"
 
-#: mod/profiles.php:375
+#: mod/profiles.php:367
 msgid "Gender"
 msgstr "Sexe"
 
-#: mod/profiles.php:379
+#: mod/profiles.php:370
 msgid "Sexual Preference"
 msgstr "Préférence sexuelle"
 
-#: mod/profiles.php:383
+#: mod/profiles.php:373
 msgid "XMPP"
 msgstr "XMPP"
 
-#: mod/profiles.php:387
+#: mod/profiles.php:376
 msgid "Homepage"
 msgstr "Site internet"
 
-#: mod/profiles.php:391 mod/profiles.php:594
+#: mod/profiles.php:379 mod/profiles.php:578
 msgid "Interests"
 msgstr "Centres d'intérêt"
 
-#: mod/profiles.php:402 mod/profiles.php:590
+#: mod/profiles.php:389 mod/profiles.php:574
 msgid "Location"
 msgstr "Localisation"
 
-#: mod/profiles.php:485
+#: mod/profiles.php:469
 msgid "Profile updated."
 msgstr "Profil mis Ã  jour."
 
-#: mod/profiles.php:539
+#: mod/profiles.php:523
 msgid "Hide contacts and friends:"
 msgstr "Cacher mes contacts et amis :"
 
-#: mod/profiles.php:544
+#: mod/profiles.php:528
 msgid "Hide your contact/friend list from viewers of this profile?"
 msgstr "Cacher ma liste d'amis / contacts des visiteurs de ce profil ?"
 
-#: mod/profiles.php:564
+#: mod/profiles.php:548
 msgid "Show more profile fields:"
 msgstr "Afficher plus d'infos de profil :"
 
-#: mod/profiles.php:576
+#: mod/profiles.php:560
 msgid "Profile Actions"
 msgstr "Actions de Profil"
 
-#: mod/profiles.php:577
+#: mod/profiles.php:561
 msgid "Edit Profile Details"
 msgstr "Éditer les détails du profil"
 
-#: mod/profiles.php:579
+#: mod/profiles.php:563
 msgid "Change Profile Photo"
 msgstr "Changer la photo du profil"
 
-#: mod/profiles.php:581
+#: mod/profiles.php:565
 msgid "View this profile"
 msgstr "Voir ce profil"
 
-#: mod/profiles.php:582
+#: mod/profiles.php:566
 msgid "View all profiles"
 msgstr ""
 
-#: mod/profiles.php:583 mod/profiles.php:678 src/Model/Profile.php:410
+#: mod/profiles.php:567 mod/profiles.php:662 src/Model/Profile.php:419
 msgid "Edit visibility"
 msgstr "Changer la visibilité"
 
-#: mod/profiles.php:584
+#: mod/profiles.php:568
 msgid "Create a new profile using these settings"
 msgstr "Créer un nouveau profil en utilisant ces réglages"
 
-#: mod/profiles.php:585
+#: mod/profiles.php:569
 msgid "Clone this profile"
 msgstr "Cloner ce profil"
 
-#: mod/profiles.php:586
+#: mod/profiles.php:570
 msgid "Delete this profile"
 msgstr "Supprimer ce profil"
 
-#: mod/profiles.php:588
+#: mod/profiles.php:572
 msgid "Basic information"
 msgstr "Information de base"
 
-#: mod/profiles.php:589
+#: mod/profiles.php:573
 msgid "Profile picture"
 msgstr "Image de profil"
 
-#: mod/profiles.php:591
+#: mod/profiles.php:575
 msgid "Preferences"
 msgstr "Préférences"
 
-#: mod/profiles.php:592
+#: mod/profiles.php:576
 msgid "Status information"
 msgstr "Information sur le statut"
 
-#: mod/profiles.php:593
+#: mod/profiles.php:577
 msgid "Additional information"
 msgstr "Information additionnelle"
 
-#: mod/profiles.php:596
+#: mod/profiles.php:580
 msgid "Relation"
 msgstr "Relation"
 
-#: mod/profiles.php:597 src/Util/Temporal.php:83 src/Util/Temporal.php:85
+#: mod/profiles.php:581 src/Util/Temporal.php:79 src/Util/Temporal.php:81
 msgid "Miscellaneous"
 msgstr "Divers"
 
-#: mod/profiles.php:600
+#: mod/profiles.php:584
 msgid "Your Gender:"
 msgstr "Votre genre :"
 
-#: mod/profiles.php:601
+#: mod/profiles.php:585
 msgid "<span class=\"heart\">&hearts;</span> Marital Status:"
 msgstr "<span class=\"heart\">&hearts;</span> Statut marital :"
 
-#: mod/profiles.php:602 src/Model/Profile.php:795
+#: mod/profiles.php:586 src/Model/Profile.php:795
 msgid "Sexual Preference:"
 msgstr "Préférence sexuelle :"
 
-#: mod/profiles.php:603
+#: mod/profiles.php:587
 msgid "Example: fishing photography software"
 msgstr "Exemple : football dessin programmation"
 
-#: mod/profiles.php:608
+#: mod/profiles.php:592
 msgid "Profile Name:"
 msgstr "Nom du profil :"
 
-#: mod/profiles.php:610
+#: mod/profiles.php:594
 msgid ""
 "This is your <strong>public</strong> profile.<br />It <strong>may</strong> "
 "be visible to anybody using the internet."
 msgstr "Ceci est votre profil <strong>public</strong>.<br />Il <strong>peut</strong> Ãªtre visible par n'importe quel utilisateur d'Internet."
 
-#: mod/profiles.php:611
+#: mod/profiles.php:595
 msgid "Your Full Name:"
 msgstr "Votre nom complet :"
 
-#: mod/profiles.php:612
+#: mod/profiles.php:596
 msgid "Title/Description:"
 msgstr "Titre / Description :"
 
-#: mod/profiles.php:615
+#: mod/profiles.php:599
 msgid "Street Address:"
 msgstr "Adresse postale :"
 
-#: mod/profiles.php:616
+#: mod/profiles.php:600
 msgid "Locality/City:"
 msgstr "Ville :"
 
-#: mod/profiles.php:617
+#: mod/profiles.php:601
 msgid "Region/State:"
 msgstr "Région / Ã‰tat :"
 
-#: mod/profiles.php:618
+#: mod/profiles.php:602
 msgid "Postal/Zip Code:"
 msgstr "Code postal :"
 
-#: mod/profiles.php:619
+#: mod/profiles.php:603
 msgid "Country:"
 msgstr "Pays :"
 
-#: mod/profiles.php:620 src/Util/Temporal.php:151
+#: mod/profiles.php:604 src/Util/Temporal.php:149
 msgid "Age: "
 msgstr "Age : "
 
-#: mod/profiles.php:623
+#: mod/profiles.php:607
 msgid "Who: (if applicable)"
 msgstr "Qui : (si pertinent)"
 
-#: mod/profiles.php:623
+#: mod/profiles.php:607
 msgid "Examples: cathy123, Cathy Williams, cathy@example.com"
 msgstr "Exemples: cathy123, Cathy Williams, cathy@example.com"
 
-#: mod/profiles.php:624
+#: mod/profiles.php:608
 msgid "Since [date]:"
 msgstr "Depuis [date]  :"
 
-#: mod/profiles.php:626
+#: mod/profiles.php:610
 msgid "Tell us about yourself..."
 msgstr "Parlez-nous de vous..."
 
-#: mod/profiles.php:627
+#: mod/profiles.php:611
 msgid "XMPP (Jabber) address:"
 msgstr "Adresse XMPP (Jabber) :"
 
-#: mod/profiles.php:627
+#: mod/profiles.php:611
 msgid ""
 "The XMPP address will be propagated to your contacts so that they can follow"
 " you."
 msgstr "Votre adresse XMPP sera transmise Ã  vos contacts pour qu'ils puissent vous suivre."
 
-#: mod/profiles.php:628
+#: mod/profiles.php:612
 msgid "Homepage URL:"
 msgstr "Page personnelle :"
 
-#: mod/profiles.php:629 src/Model/Profile.php:803
+#: mod/profiles.php:613 src/Model/Profile.php:803
 msgid "Hometown:"
 msgstr " Ville d'origine :"
 
-#: mod/profiles.php:630 src/Model/Profile.php:811
+#: mod/profiles.php:614 src/Model/Profile.php:811
 msgid "Political Views:"
 msgstr "Opinions politiques :"
 
-#: mod/profiles.php:631
+#: mod/profiles.php:615
 msgid "Religious Views:"
 msgstr "Opinions religieuses :"
 
-#: mod/profiles.php:632
+#: mod/profiles.php:616
 msgid "Public Keywords:"
 msgstr "Mots-clés publics :"
 
-#: mod/profiles.php:632
+#: mod/profiles.php:616
 msgid "(Used for suggesting potential friends, can be seen by others)"
 msgstr "(Utilisés pour vous suggérer des amis potentiels. Ils peuvent Ãªtre vus par autrui)"
 
-#: mod/profiles.php:633
+#: mod/profiles.php:617
 msgid "Private Keywords:"
 msgstr "Mots-clés privés :"
 
-#: mod/profiles.php:633
+#: mod/profiles.php:617
 msgid "(Used for searching profiles, never shown to others)"
 msgstr "(Utilisés pour rechercher des profils. Ils ne seront jamais montrés Ã  autrui)"
 
-#: mod/profiles.php:634 src/Model/Profile.php:827
+#: mod/profiles.php:618 src/Model/Profile.php:827
 msgid "Likes:"
 msgstr "J'aime :"
 
-#: mod/profiles.php:635 src/Model/Profile.php:831
+#: mod/profiles.php:619 src/Model/Profile.php:831
 msgid "Dislikes:"
 msgstr "Je n'aime pas :"
 
-#: mod/profiles.php:636
+#: mod/profiles.php:620
 msgid "Musical interests"
 msgstr "Goûts musicaux"
 
-#: mod/profiles.php:637
+#: mod/profiles.php:621
 msgid "Books, literature"
 msgstr "Lectures"
 
-#: mod/profiles.php:638
+#: mod/profiles.php:622
 msgid "Television"
 msgstr "Télévision"
 
-#: mod/profiles.php:639
+#: mod/profiles.php:623
 msgid "Film/dance/culture/entertainment"
 msgstr "Cinéma / Danse / Culture / Divertissement"
 
-#: mod/profiles.php:640
+#: mod/profiles.php:624
 msgid "Hobbies/Interests"
 msgstr "Passe-temps / Centres d'intérêt"
 
-#: mod/profiles.php:641
+#: mod/profiles.php:625
 msgid "Love/romance"
 msgstr "Amour / Romance"
 
-#: mod/profiles.php:642
+#: mod/profiles.php:626
 msgid "Work/employment"
 msgstr "Activité professionnelle / Occupation"
 
-#: mod/profiles.php:643
+#: mod/profiles.php:627
 msgid "School/education"
 msgstr "Études / Formation"
 
-#: mod/profiles.php:644
+#: mod/profiles.php:628
 msgid "Contact information and Social Networks"
 msgstr "Coordonnées / Réseaux sociaux"
 
-#: mod/profiles.php:675 src/Model/Profile.php:406
+#: mod/profiles.php:659 src/Model/Profile.php:415
 msgid "Profile Image"
 msgstr "Image du profil"
 
-#: mod/profiles.php:677 src/Model/Profile.php:409
+#: mod/profiles.php:661 src/Model/Profile.php:418
 msgid "visible to everybody"
 msgstr "visible par tous"
 
-#: mod/profiles.php:684
+#: mod/profiles.php:668
 msgid "Edit/Manage Profiles"
 msgstr "Editer / gérer les profils"
 
-#: mod/profiles.php:685 src/Model/Profile.php:396 src/Model/Profile.php:418
+#: mod/profiles.php:669 src/Model/Profile.php:405 src/Model/Profile.php:427
 msgid "Change profile photo"
 msgstr "Changer de photo de profil"
 
-#: mod/profiles.php:686 src/Model/Profile.php:397
+#: mod/profiles.php:670 src/Model/Profile.php:406
 msgid "Create New Profile"
 msgstr "Créer un nouveau profil"
 
-#: mod/profile_photo.php:59
-msgid "Image uploaded but image cropping failed."
-msgstr "Image envoyée, mais impossible de la retailler."
-
-#: mod/profile_photo.php:91 mod/profile_photo.php:100
-#: mod/profile_photo.php:109 mod/profile_photo.php:317
-#, php-format
-msgid "Image size reduction [%s] failed."
-msgstr "Réduction de la taille de l'image [%s] Ã©chouée."
-
-#: mod/profile_photo.php:128
-msgid ""
-"Shift-reload the page or clear browser cache if the new photo does not "
-"display immediately."
-msgstr "Rechargez la page avec la touche Maj pressée, ou bien effacez le cache du navigateur, si d'aventure la nouvelle photo n'apparaissait pas immédiatement."
-
-#: mod/profile_photo.php:136
-msgid "Unable to process image"
-msgstr "Impossible de traiter l'image"
-
-#: mod/profile_photo.php:248
-msgid "Upload File:"
-msgstr "Fichier Ã  téléverser :"
-
-#: mod/profile_photo.php:249
-msgid "Select a profile:"
-msgstr "Choisir un profil :"
-
-#: mod/profile_photo.php:254
-msgid "or"
-msgstr "ou"
-
-#: mod/profile_photo.php:255
-msgid "skip this step"
-msgstr "ignorer cette Ã©tape"
-
-#: mod/profile_photo.php:255
-msgid "select a photo from your photo albums"
-msgstr "choisissez une photo depuis vos albums"
-
-#: mod/profile_photo.php:268
-msgid "Crop Image"
-msgstr "(Re)cadrer l'image"
-
-#: mod/profile_photo.php:269
-msgid "Please adjust the image cropping for optimum viewing."
-msgstr "Ajustez le cadre de l'image pour une visualisation optimale."
-
-#: mod/profile_photo.php:271
-msgid "Done Editing"
-msgstr "Édition terminée"
-
-#: mod/profile_photo.php:307
-msgid "Image uploaded successfully."
-msgstr "Image téléversée avec succès."
-
 #: mod/profperm.php:36 mod/profperm.php:69
 msgid "Invalid profile identifier."
 msgstr "Identifiant de profil invalide."
@@ -5514,160 +5547,45 @@ msgstr "Visible par"
 msgid "All Contacts (with secure profile access)"
 msgstr "Tous les contacts (ayant un accès sécurisé)"
 
-#: mod/register.php:105
-msgid ""
-"Registration successful. Please check your email for further instructions."
-msgstr "Inscription réussie. Vérifiez vos emails pour la suite des instructions."
-
-#: mod/register.php:109
-#, php-format
-msgid ""
-"Failed to send email message. Here your accout details:<br> login: %s<br> "
-"password: %s<br><br>You can change your password after login."
-msgstr "Impossible d’envoyer le courriel de confirmation. Voici vos informations de connexion:<br> identifiant : %s<br> mot de passe : %s<br><br>Vous pourrez changer votre mot de passe une fois connecté."
-
-#: mod/register.php:116
-msgid "Registration successful."
-msgstr "Inscription réussie."
-
-#: mod/register.php:121
-msgid "Your registration can not be processed."
-msgstr "Votre inscription ne peut Ãªtre traitée."
-
-#: mod/register.php:164
-msgid "Your registration is pending approval by the site owner."
-msgstr "Votre inscription attend une validation du propriétaire du site."
-
-#: mod/register.php:193 mod/uimport.php:39
-msgid ""
-"This site has exceeded the number of allowed daily account registrations. "
-"Please try again tomorrow."
-msgstr "Le nombre d'inscriptions quotidiennes pour ce site a Ã©té dépassé. Merci de réessayer demain."
-
-#: mod/register.php:222
-msgid ""
-"You may (optionally) fill in this form via OpenID by supplying your OpenID "
-"and clicking 'Register'."
-msgstr "Vous pouvez (si vous le souhaitez) remplir ce formulaire via OpenID. Fournissez votre OpenID et cliquez \"S'inscrire\"."
-
-#: mod/register.php:223
-msgid ""
-"If you are not familiar with OpenID, please leave that field blank and fill "
-"in the rest of the items."
-msgstr "Si vous n'êtes pas familier avec OpenID, laissez ce champ vide et remplissez le reste."
-
-#: mod/register.php:224
-msgid "Your OpenID (optional): "
-msgstr "Votre OpenID (facultatif): "
-
-#: mod/register.php:236
-msgid "Include your profile in member directory?"
-msgstr "Inclure votre profil dans l'annuaire des membres?"
-
-#: mod/register.php:263
-msgid "Note for the admin"
-msgstr "Commentaire pour l'administrateur"
-
-#: mod/register.php:263
-msgid "Leave a message for the admin, why you want to join this node"
-msgstr "Indiquez Ã  l'administrateur les raisons de votre inscription Ã  cette instance."
-
-#: mod/register.php:264
-msgid "Membership on this site is by invitation only."
-msgstr "L'inscription Ã  ce site se fait uniquement sur invitation."
-
-#: mod/register.php:265
-msgid "Your invitation code: "
-msgstr ""
-
-#: mod/register.php:274
-msgid "Your Full Name (e.g. Joe Smith, real or real-looking): "
-msgstr "Votre nom complet (p. ex. Michel Dupont):"
-
-#: mod/register.php:275
-msgid ""
-"Your Email Address: (Initial information will be send there, so this has to "
-"be an existing address.)"
-msgstr "Votre courriel : (Des informations de connexion vont Ãªtre envoyées Ã  cette adresse; elle doit exister)."
-
-#: mod/register.php:277 mod/settings.php:1196
-msgid "New Password:"
-msgstr "Nouveau mot de passe :"
-
-#: mod/register.php:277
-msgid "Leave empty for an auto generated password."
-msgstr "Laisser ce champ libre pour obtenir un mot de passe généré automatiquement."
-
-#: mod/register.php:278 mod/settings.php:1197
-msgid "Confirm:"
-msgstr "Confirmer :"
-
-#: mod/register.php:279
-#, php-format
-msgid ""
-"Choose a profile nickname. This must begin with a text character. Your "
-"profile address on this site will then be '<strong>nickname@%s</strong>'."
-msgstr ""
-
-#: mod/register.php:280
-msgid "Choose a nickname: "
-msgstr "Choisir un pseudo : "
-
-#: mod/register.php:283 src/Content/Nav.php:181 src/Module/Login.php:293
-msgid "Register"
-msgstr "S'inscrire"
-
-#: mod/register.php:289 mod/uimport.php:54
-msgid "Import"
-msgstr "Importer"
-
-#: mod/register.php:290
-msgid "Import your profile to this friendica instance"
-msgstr "Importer votre profile dans cette instance de friendica"
-
-#: mod/register.php:298
-msgid "Note: This node explicitly contains adult content"
-msgstr ""
-
-#: mod/regmod.php:55
+#: mod/regmod.php:53
 msgid "Account approved."
 msgstr "Inscription validée."
 
-#: mod/regmod.php:79
+#: mod/regmod.php:77
 #, php-format
 msgid "Registration revoked for %s"
 msgstr "Inscription révoquée pour %s"
 
-#: mod/regmod.php:86
+#: mod/regmod.php:84
 msgid "Please login."
 msgstr "Merci de vous connecter."
 
-#: mod/removeme.php:49
+#: mod/removeme.php:46
 msgid "User deleted their account"
 msgstr ""
 
-#: mod/removeme.php:50
+#: mod/removeme.php:47
 msgid ""
 "On your Friendica node an user deleted their account. Please ensure that "
 "their data is removed from the backups."
 msgstr ""
 
-#: mod/removeme.php:51
+#: mod/removeme.php:48
 #, php-format
 msgid "The user id is %d"
 msgstr ""
 
-#: mod/removeme.php:87 mod/removeme.php:90
+#: mod/removeme.php:84 mod/removeme.php:87
 msgid "Remove My Account"
 msgstr "Supprimer mon compte"
 
-#: mod/removeme.php:88
+#: mod/removeme.php:85
 msgid ""
 "This will completely remove your account. Once this has been done it is not "
 "recoverable."
 msgstr "Ceci supprimera totalement votre compte. Cette opération est irréversible."
 
-#: mod/removeme.php:89
+#: mod/removeme.php:86
 msgid "Please enter your password for verification:"
 msgstr "Merci de saisir votre mot de passe pour vérification :"
 
@@ -5679,28 +5597,28 @@ msgstr "Réinscription aux contacts OStatus"
 msgid "Error"
 msgstr "Erreur"
 
-#: mod/search.php:113
+#: mod/search.php:103
 msgid "Only logged in users are permitted to perform a search."
 msgstr "Seuls les utilisateurs inscrits sont autorisés Ã  lancer une recherche."
 
-#: mod/search.php:137
+#: mod/search.php:127
 msgid "Too Many Requests"
 msgstr "Trop de requêtes"
 
-#: mod/search.php:138
+#: mod/search.php:128
 msgid "Only one search per minute is permitted for not logged in users."
 msgstr "Une seule recherche par minute pour les utilisateurs qui ne sont pas connectés."
 
-#: mod/search.php:163 src/Content/Nav.php:195 src/Content/Text/HTML.php:967
+#: mod/search.php:149 src/Content/Text/HTML.php:900 src/Content/Nav.php:198
 msgid "Search"
 msgstr "Recherche"
 
-#: mod/search.php:249
+#: mod/search.php:235
 #, php-format
 msgid "Items tagged with: %s"
 msgstr "Éléments taggés %s"
 
-#: mod/search.php:251 src/Module/Contact.php:821
+#: mod/search.php:237 src/Module/Contact.php:816
 #, php-format
 msgid "Results for: %s"
 msgstr "Résultats pour : %s"
@@ -5709,7 +5627,7 @@ msgstr "Résultats pour : %s"
 msgid "Account"
 msgstr "Compte"
 
-#: mod/settings.php:69 src/Content/Nav.php:263 src/Model/Profile.php:389
+#: mod/settings.php:69 src/Content/Nav.php:266 src/Model/Profile.php:398
 msgid "Profiles"
 msgstr "Profils"
 
@@ -5717,11 +5635,11 @@ msgstr "Profils"
 msgid "Display"
 msgstr "Afficher"
 
-#: mod/settings.php:92 mod/settings.php:845
+#: mod/settings.php:92 mod/settings.php:830
 msgid "Social Networks"
 msgstr "Réseaux sociaux"
 
-#: mod/settings.php:106 src/Content/Nav.php:258
+#: mod/settings.php:106 src/Content/Nav.php:261
 msgid "Delegations"
 msgstr "Délégations"
 
@@ -5741,7 +5659,7 @@ msgstr "Supprimer le compte"
 msgid "Missing some important data!"
 msgstr "Il manque certaines informations importantes !"
 
-#: mod/settings.php:181 mod/settings.php:706 src/Module/Contact.php:828
+#: mod/settings.php:181 mod/settings.php:691 src/Module/Contact.php:823
 msgid "Update"
 msgstr "Mises Ã  jour"
 
@@ -5761,154 +5679,144 @@ msgstr "Fonctionnalités mises Ã  jour"
 msgid "Relocate message has been send to your contacts"
 msgstr "Un message de relocalisation a Ã©té envoyé Ã  vos contacts."
 
-#: mod/settings.php:396 src/Model/User.php:423
-msgid "Passwords do not match. Password unchanged."
-msgstr "Les mots de passe ne correspondent pas. Aucun changement appliqué."
-
-#: mod/settings.php:401
-msgid "Empty passwords are not allowed. Password unchanged."
-msgstr "Les mots de passe vides sont interdits. Aucun changement appliqué."
-
-#: mod/settings.php:406 src/Core/Console/NewPassword.php:82
-msgid ""
-"The new password has been exposed in a public data dump, please choose "
-"another."
+#: mod/settings.php:396
+msgid "Passwords do not match."
 msgstr ""
 
-#: mod/settings.php:412
-msgid "Wrong password."
-msgstr "Mauvais mot de passe."
+#: mod/settings.php:404 src/Core/Console/NewPassword.php:80
+msgid "Password update failed. Please try again."
+msgstr "Le changement de mot de passe a Ã©choué. Merci de recommencer."
 
-#: mod/settings.php:419 src/Core/Console/NewPassword.php:89
+#: mod/settings.php:407 src/Core/Console/NewPassword.php:83
 msgid "Password changed."
 msgstr "Mot de passe changé."
 
-#: mod/settings.php:421 src/Core/Console/NewPassword.php:86
-msgid "Password update failed. Please try again."
-msgstr "Le changement de mot de passe a Ã©choué. Merci de recommencer."
+#: mod/settings.php:410
+msgid "Password unchanged."
+msgstr ""
 
-#: mod/settings.php:505
+#: mod/settings.php:491
 msgid " Please use a shorter name."
 msgstr " Merci d'utiliser un nom plus court."
 
-#: mod/settings.php:508
+#: mod/settings.php:494
 msgid " Name too short."
 msgstr " Nom trop court."
 
-#: mod/settings.php:516
+#: mod/settings.php:501
 msgid "Wrong Password"
 msgstr "Mauvais mot de passe"
 
-#: mod/settings.php:521
+#: mod/settings.php:506
 msgid "Invalid email."
 msgstr ""
 
-#: mod/settings.php:527
+#: mod/settings.php:512
 msgid "Cannot change to that email."
 msgstr ""
 
-#: mod/settings.php:577
+#: mod/settings.php:562
 msgid "Private forum has no privacy permissions. Using default privacy group."
 msgstr "Ce forum privé n'a pas de paramètres de vie privée. Utilisation des paramètres de confidentialité par défaut."
 
-#: mod/settings.php:580
+#: mod/settings.php:565
 msgid "Private forum has no privacy permissions and no default privacy group."
 msgstr "Ce forum privé n'a pas de paramètres de vie privée ni de paramètres de confidentialité par défaut."
 
-#: mod/settings.php:620
+#: mod/settings.php:605
 msgid "Settings updated."
 msgstr "Réglages mis Ã  jour."
 
-#: mod/settings.php:679 mod/settings.php:705 mod/settings.php:739
+#: mod/settings.php:664 mod/settings.php:690 mod/settings.php:724
 msgid "Add application"
 msgstr "Ajouter une application"
 
-#: mod/settings.php:683 mod/settings.php:709
+#: mod/settings.php:668 mod/settings.php:694
 msgid "Consumer Key"
 msgstr "Clé utilisateur"
 
-#: mod/settings.php:684 mod/settings.php:710
+#: mod/settings.php:669 mod/settings.php:695
 msgid "Consumer Secret"
 msgstr "Secret utilisateur"
 
-#: mod/settings.php:685 mod/settings.php:711
+#: mod/settings.php:670 mod/settings.php:696
 msgid "Redirect"
 msgstr "Rediriger"
 
-#: mod/settings.php:686 mod/settings.php:712
+#: mod/settings.php:671 mod/settings.php:697
 msgid "Icon url"
 msgstr "URL de l'icône"
 
-#: mod/settings.php:697
+#: mod/settings.php:682
 msgid "You can't edit this application."
 msgstr "Vous ne pouvez pas Ã©diter cette application."
 
-#: mod/settings.php:738
+#: mod/settings.php:723
 msgid "Connected Apps"
 msgstr "Applications connectées"
 
-#: mod/settings.php:740 src/Object/Post.php:165 src/Object/Post.php:167
+#: mod/settings.php:725 src/Object/Post.php:166 src/Object/Post.php:168
 msgid "Edit"
 msgstr "Éditer"
 
-#: mod/settings.php:742
+#: mod/settings.php:727
 msgid "Client key starts with"
 msgstr "La clé cliente commence par"
 
-#: mod/settings.php:743
+#: mod/settings.php:728
 msgid "No name"
 msgstr "Sans nom"
 
-#: mod/settings.php:744
+#: mod/settings.php:729
 msgid "Remove authorization"
 msgstr "Révoquer l'autorisation"
 
-#: mod/settings.php:755
+#: mod/settings.php:740
 msgid "No Addon settings configured"
 msgstr ""
 
-#: mod/settings.php:764
+#: mod/settings.php:749
 msgid "Addon Settings"
 msgstr ""
 
-#: mod/settings.php:785
+#: mod/settings.php:770
 msgid "Additional Features"
 msgstr "Fonctions supplémentaires"
 
-#: mod/settings.php:808 src/Content/ContactSelector.php:85
+#: mod/settings.php:793 src/Content/ContactSelector.php:87
 msgid "Diaspora"
 msgstr "Diaspora"
 
-#: mod/settings.php:808 mod/settings.php:809
+#: mod/settings.php:793 mod/settings.php:794
 msgid "enabled"
 msgstr "activé"
 
-#: mod/settings.php:808 mod/settings.php:809
+#: mod/settings.php:793 mod/settings.php:794
 msgid "disabled"
 msgstr "désactivé"
 
-#: mod/settings.php:808 mod/settings.php:809
+#: mod/settings.php:793 mod/settings.php:794
 #, php-format
 msgid "Built-in support for %s connectivity is %s"
 msgstr "Le support natif pour la connectivité %s est %s"
 
-#: mod/settings.php:809
+#: mod/settings.php:794
 msgid "GNU Social (OStatus)"
 msgstr "GNU Social (OStatus)"
 
-#: mod/settings.php:840
+#: mod/settings.php:825
 msgid "Email access is disabled on this site."
 msgstr "L'accès courriel est désactivé sur ce site."
 
-#: mod/settings.php:850
+#: mod/settings.php:835
 msgid "General Social Media Settings"
 msgstr "Paramètres généraux des réseaux sociaux"
 
-#: mod/settings.php:851
+#: mod/settings.php:836
 msgid "Disable Content Warning"
 msgstr ""
 
-#: mod/settings.php:851
+#: mod/settings.php:836
 msgid ""
 "Users on networks like Mastodon or Pleroma are able to set a content warning"
 " field which collapse their post by default. This disables the automatic "
@@ -5916,316 +5824,316 @@ msgid ""
 "any other content filtering you eventually set up."
 msgstr ""
 
-#: mod/settings.php:852
+#: mod/settings.php:837
 msgid "Disable intelligent shortening"
 msgstr "Désactiver la réduction d'URL"
 
-#: mod/settings.php:852
+#: mod/settings.php:837
 msgid ""
 "Normally the system tries to find the best link to add to shortened posts. "
 "If this option is enabled then every shortened post will always point to the"
 " original friendica post."
 msgstr "Normalement, le système tente de trouver le meilleur lien Ã  ajouter aux publications raccourcies. Si cette option est activée, les publications raccourcies dirigeront toujours vers leur publication d'origine sur Friendica."
 
-#: mod/settings.php:853
+#: mod/settings.php:838
 msgid "Automatically follow any GNU Social (OStatus) followers/mentioners"
 msgstr "Suivre automatiquement ceux qui me suivent ou me mentionnent sur GNU Social (OStatus)"
 
-#: mod/settings.php:853
+#: mod/settings.php:838
 msgid ""
 "If you receive a message from an unknown OStatus user, this option decides "
 "what to do. If it is checked, a new contact will be created for every "
 "unknown user."
 msgstr "Si vous recevez un message d'un utilisateur OStatus inconnu, cette option détermine ce qui sera fait. Si elle est cochée, un nouveau contact sera créé pour chaque utilisateur inconnu."
 
-#: mod/settings.php:854
+#: mod/settings.php:839
 msgid "Default group for OStatus contacts"
 msgstr "Groupe par défaut pour les contacts OStatus"
 
-#: mod/settings.php:855
+#: mod/settings.php:840
 msgid "Your legacy GNU Social account"
 msgstr "Le compte GNU Social que vous avez déjà"
 
-#: mod/settings.php:855
+#: mod/settings.php:840
 msgid ""
 "If you enter your old GNU Social/Statusnet account name here (in the format "
 "user@domain.tld), your contacts will be added automatically. The field will "
 "be emptied when done."
 msgstr "Si vous entrez le nom de votre ancien compte GNU Social / StatusNet ici (utiliser le format utilisateur@domaine.tld), vos contacts seront ajoutés automatiquement. Le champ sera vidé lorsque ce sera terminé."
 
-#: mod/settings.php:858
+#: mod/settings.php:843
 msgid "Repair OStatus subscriptions"
 msgstr "Réparer les abonnements OStatus"
 
-#: mod/settings.php:862
+#: mod/settings.php:847
 msgid "Email/Mailbox Setup"
 msgstr "Réglages de courriel/boîte Ã  lettre"
 
-#: mod/settings.php:863
+#: mod/settings.php:848
 msgid ""
 "If you wish to communicate with email contacts using this service "
 "(optional), please specify how to connect to your mailbox."
 msgstr "Si vous souhaitez communiquer avec vos contacts \"courriel\" (facultatif), merci de nous indiquer comment vous connecter Ã  votre boîte."
 
-#: mod/settings.php:864
+#: mod/settings.php:849
 msgid "Last successful email check:"
 msgstr "Dernière vérification réussie des courriels :"
 
-#: mod/settings.php:866
+#: mod/settings.php:851
 msgid "IMAP server name:"
 msgstr "Nom du serveur IMAP :"
 
-#: mod/settings.php:867
+#: mod/settings.php:852
 msgid "IMAP port:"
 msgstr "Port IMAP :"
 
-#: mod/settings.php:868
+#: mod/settings.php:853
 msgid "Security:"
 msgstr "Sécurité :"
 
-#: mod/settings.php:868 mod/settings.php:873
+#: mod/settings.php:853 mod/settings.php:858
 msgid "None"
 msgstr "Aucun(e)"
 
-#: mod/settings.php:869
+#: mod/settings.php:854
 msgid "Email login name:"
 msgstr "Nom de connexion :"
 
-#: mod/settings.php:870
+#: mod/settings.php:855
 msgid "Email password:"
 msgstr "Mot de passe :"
 
-#: mod/settings.php:871
+#: mod/settings.php:856
 msgid "Reply-to address:"
 msgstr "Adresse de réponse :"
 
-#: mod/settings.php:872
+#: mod/settings.php:857
 msgid "Send public posts to all email contacts:"
 msgstr "Envoyer les publications publiques Ã  tous les contacts courriels :"
 
-#: mod/settings.php:873
+#: mod/settings.php:858
 msgid "Action after import:"
 msgstr "Action après import :"
 
-#: mod/settings.php:873 src/Content/Nav.php:246
+#: mod/settings.php:858 src/Content/Nav.php:249
 msgid "Mark as seen"
 msgstr "Marquer comme vu"
 
-#: mod/settings.php:873
+#: mod/settings.php:858
 msgid "Move to folder"
 msgstr "Déplacer vers"
 
-#: mod/settings.php:874
+#: mod/settings.php:859
 msgid "Move to folder:"
 msgstr "Déplacer vers :"
 
-#: mod/settings.php:917
+#: mod/settings.php:902
 #, php-format
 msgid "%s - (Unsupported)"
 msgstr ""
 
-#: mod/settings.php:919
+#: mod/settings.php:904
 #, php-format
 msgid "%s - (Experimental)"
 msgstr ""
 
-#: mod/settings.php:946 src/Core/L10n.php:359 src/Model/Event.php:396
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:396
 msgid "Sunday"
 msgstr "Dimanche"
 
-#: mod/settings.php:946 src/Core/L10n.php:359 src/Model/Event.php:397
+#: mod/settings.php:931 src/Core/L10n.php:368 src/Model/Event.php:397
 msgid "Monday"
 msgstr "Lundi"
 
-#: mod/settings.php:962
+#: mod/settings.php:947
 msgid "Display Settings"
 msgstr "Affichage"
 
-#: mod/settings.php:968
+#: mod/settings.php:953
 msgid "Display Theme:"
 msgstr "Thème d'affichage:"
 
-#: mod/settings.php:969
+#: mod/settings.php:954
 msgid "Mobile Theme:"
 msgstr "Thème mobile:"
 
-#: mod/settings.php:970
+#: mod/settings.php:955
 msgid "Suppress warning of insecure networks"
 msgstr ""
 
-#: mod/settings.php:970
+#: mod/settings.php:955
 msgid ""
 "Should the system suppress the warning that the current group contains "
 "members of networks that can't receive non public postings."
 msgstr ""
 
-#: mod/settings.php:971
+#: mod/settings.php:956
 msgid "Update browser every xx seconds"
 msgstr "Mettre Ã  jour l'affichage toutes les xx secondes"
 
-#: mod/settings.php:971
+#: mod/settings.php:956
 msgid "Minimum of 10 seconds. Enter -1 to disable it."
 msgstr "Minimum de 10 secondes. Saisir -1 pour désactiver."
 
-#: mod/settings.php:972
+#: mod/settings.php:957
 msgid "Number of items to display per page:"
 msgstr "Nombre d’éléments par page :"
 
-#: mod/settings.php:972 mod/settings.php:973
+#: mod/settings.php:957 mod/settings.php:958
 msgid "Maximum of 100 items"
 msgstr "Maximum de 100 Ã©léments"
 
-#: mod/settings.php:973
+#: mod/settings.php:958
 msgid "Number of items to display per page when viewed from mobile device:"
 msgstr "Nombre d'éléments Ã  afficher par page pour un appareil mobile"
 
-#: mod/settings.php:974
+#: mod/settings.php:959
 msgid "Don't show emoticons"
 msgstr "Ne pas afficher les Ã©moticônes"
 
-#: mod/settings.php:975
+#: mod/settings.php:960
 msgid "Calendar"
 msgstr "Calendrier"
 
-#: mod/settings.php:976
+#: mod/settings.php:961
 msgid "Beginning of week:"
 msgstr "Début de la semaine :"
 
-#: mod/settings.php:977
+#: mod/settings.php:962
 msgid "Don't show notices"
 msgstr "Ne plus afficher les avis"
 
-#: mod/settings.php:978
+#: mod/settings.php:963
 msgid "Infinite scroll"
 msgstr "Défilement infini"
 
-#: mod/settings.php:979
+#: mod/settings.php:964
 msgid "Automatic updates only at the top of the network page"
 msgstr "Mises Ã  jour automatiques seulement en haut de la page Réseau"
 
-#: mod/settings.php:979
+#: mod/settings.php:964
 msgid ""
 "When disabled, the network page is updated all the time, which could be "
 "confusing while reading."
 msgstr "Si désactivé, la page Réseau est mise Ã  jour en permanence, ce qui peut rendre la lecture difficile."
 
-#: mod/settings.php:980
+#: mod/settings.php:965
 msgid "Bandwidth Saver Mode"
 msgstr ""
 
-#: mod/settings.php:980
+#: mod/settings.php:965
 msgid ""
 "When enabled, embedded content is not displayed on automatic updates, they "
 "only show on page reload."
 msgstr "Si activé, le contenu intégré aux pages est mis Ã  jour uniquement lors du rafraîchissement manuel des pages : il n'est plus mis Ã  jour lors des rafraîchissements automatiques."
 
-#: mod/settings.php:981
+#: mod/settings.php:966
 msgid "Smart Threading"
 msgstr ""
 
-#: mod/settings.php:981
+#: mod/settings.php:966
 msgid ""
 "When enabled, suppress extraneous thread indentation while keeping it where "
 "it matters. Only works if threading is available and enabled."
 msgstr ""
 
-#: mod/settings.php:983
+#: mod/settings.php:968
 msgid "General Theme Settings"
 msgstr "Paramètres généraux de thème"
 
-#: mod/settings.php:984
+#: mod/settings.php:969
 msgid "Custom Theme Settings"
 msgstr "Paramètres personnalisés de thème"
 
-#: mod/settings.php:985
+#: mod/settings.php:970
 msgid "Content Settings"
 msgstr "Paramètres de contenu"
 
-#: mod/settings.php:986 view/theme/duepuntozero/config.php:74
+#: mod/settings.php:971 view/theme/duepuntozero/config.php:74
 #: view/theme/frio/config.php:121 view/theme/quattro/config.php:76
 #: view/theme/vier/config.php:122
 msgid "Theme settings"
 msgstr "Réglages du thème graphique"
 
-#: mod/settings.php:1000
+#: mod/settings.php:985
 msgid "Unable to find your profile. Please contact your admin."
 msgstr ""
 
-#: mod/settings.php:1039
+#: mod/settings.php:1024
 msgid "Account Types"
 msgstr "Type de compte"
 
-#: mod/settings.php:1040
+#: mod/settings.php:1025
 msgid "Personal Page Subtypes"
 msgstr "Sous-catégories de page personnelle"
 
-#: mod/settings.php:1041
+#: mod/settings.php:1026
 msgid "Community Forum Subtypes"
 msgstr "Sous-catégories de forums communautaires"
 
-#: mod/settings.php:1049
+#: mod/settings.php:1034
 msgid "Account for a personal profile."
 msgstr "Compte pour profil personnel."
 
-#: mod/settings.php:1053
+#: mod/settings.php:1038
 msgid ""
 "Account for an organisation that automatically approves contact requests as "
 "\"Followers\"."
 msgstr ""
 
-#: mod/settings.php:1057
+#: mod/settings.php:1042
 msgid ""
 "Account for a news reflector that automatically approves contact requests as"
 " \"Followers\"."
 msgstr ""
 
-#: mod/settings.php:1061
+#: mod/settings.php:1046
 msgid "Account for community discussions."
 msgstr ""
 
-#: mod/settings.php:1065
+#: mod/settings.php:1050
 msgid ""
 "Account for a regular personal profile that requires manual approval of "
 "\"Friends\" and \"Followers\"."
 msgstr ""
 
-#: mod/settings.php:1069
+#: mod/settings.php:1054
 msgid ""
 "Account for a public profile that automatically approves contact requests as"
 " \"Followers\"."
 msgstr ""
 
-#: mod/settings.php:1073
+#: mod/settings.php:1058
 msgid "Automatically approves all contact requests."
 msgstr "Les demandes de participation au forum sont automatiquement acceptées."
 
-#: mod/settings.php:1077
+#: mod/settings.php:1062
 msgid ""
 "Account for a popular profile that automatically approves contact requests "
 "as \"Friends\"."
 msgstr "Compte qui accepte automatiquement les demandes d'ajout en tant qu'ami."
 
-#: mod/settings.php:1080
+#: mod/settings.php:1065
 msgid "Private Forum [Experimental]"
 msgstr "Forum privé [expérimental]"
 
-#: mod/settings.php:1081
+#: mod/settings.php:1066
 msgid "Requires manual approval of contact requests."
 msgstr "Les demandes de participation au forum nécessitent une approbation."
 
-#: mod/settings.php:1092
+#: mod/settings.php:1077
 msgid "OpenID:"
 msgstr "OpenID:"
 
-#: mod/settings.php:1092
+#: mod/settings.php:1077
 msgid "(Optional) Allow this OpenID to login to this account."
 msgstr "&amp;nbsp;(Facultatif) Autoriser cet OpenID Ã  se connecter Ã  ce compte."
 
-#: mod/settings.php:1100
+#: mod/settings.php:1085
 msgid "Publish your default profile in your local site directory?"
 msgstr "Publier votre profil par défaut sur l'annuaire local de ce site ?"
 
-#: mod/settings.php:1100
+#: mod/settings.php:1085
 #, php-format
 msgid ""
 "Your profile will be published in this node's <a href=\"%s\">local "
@@ -6233,304 +6141,318 @@ msgid ""
 " system settings."
 msgstr ""
 
-#: mod/settings.php:1106
+#: mod/settings.php:1091
 msgid "Publish your default profile in the global social directory?"
 msgstr "Publier votre profil par défaut sur l'annuaire global ?"
 
-#: mod/settings.php:1106
+#: mod/settings.php:1091
 #, php-format
 msgid ""
 "Your profile will be published in the global friendica directories (e.g. <a "
 "href=\"%s\">%s</a>). Your profile will be visible in public."
 msgstr ""
 
-#: mod/settings.php:1113
+#: mod/settings.php:1098
 msgid "Hide your contact/friend list from viewers of your default profile?"
 msgstr "Cacher votre liste de contacts/amis des visiteurs de votre profil par défaut?"
 
-#: mod/settings.php:1113
+#: mod/settings.php:1098
 msgid ""
 "Your contact list won't be shown in your default profile page. You can "
 "decide to show your contact list separately for each additional profile you "
 "create"
 msgstr ""
 
-#: mod/settings.php:1117
+#: mod/settings.php:1102
 msgid "Hide your profile details from anonymous viewers?"
 msgstr ""
 
-#: mod/settings.php:1117
+#: mod/settings.php:1102
 msgid ""
 "Anonymous visitors will only see your profile picture, your display name and"
 " the nickname you are using on your profile page. Your public posts and "
 "replies will still be accessible by other means."
 msgstr ""
 
-#: mod/settings.php:1121
+#: mod/settings.php:1106
 msgid "Allow friends to post to your profile page?"
 msgstr "Autoriser vos amis Ã  publier sur votre profil ?"
 
-#: mod/settings.php:1121
+#: mod/settings.php:1106
 msgid ""
 "Your contacts may write posts on your profile wall. These posts will be "
 "distributed to your contacts"
 msgstr ""
 
-#: mod/settings.php:1125
+#: mod/settings.php:1110
 msgid "Allow friends to tag your posts?"
 msgstr "Autoriser vos amis Ã  Ã©tiqueter vos publications?"
 
-#: mod/settings.php:1125
+#: mod/settings.php:1110
 msgid "Your contacts can add additional tags to your posts."
 msgstr ""
 
-#: mod/settings.php:1129
+#: mod/settings.php:1114
 msgid "Allow us to suggest you as a potential friend to new members?"
 msgstr "Autoriser les suggestions d'amis potentiels aux nouveaux arrivants?"
 
-#: mod/settings.php:1129
+#: mod/settings.php:1114
 msgid ""
 "If you like, Friendica may suggest new members to add you as a contact."
 msgstr ""
 
-#: mod/settings.php:1133
+#: mod/settings.php:1118
 msgid "Permit unknown people to send you private mail?"
 msgstr "Autoriser les messages privés d'inconnus?"
 
-#: mod/settings.php:1133
+#: mod/settings.php:1118
 msgid ""
 "Friendica network users may send you private messages even if they are not "
 "in your contact list."
 msgstr ""
 
-#: mod/settings.php:1137
+#: mod/settings.php:1122
 msgid "Profile is <strong>not published</strong>."
 msgstr "Ce profil n'est <strong>pas publié</strong>."
 
-#: mod/settings.php:1143
+#: mod/settings.php:1128
 #, php-format
 msgid "Your Identity Address is <strong>'%s'</strong> or '%s'."
 msgstr "L’adresse de votre profil est <strong>'%s'</strong> ou '%s'."
 
-#: mod/settings.php:1150
+#: mod/settings.php:1135
 msgid "Automatically expire posts after this many days:"
 msgstr "Les publications expirent automatiquement après (en jours) :"
 
-#: mod/settings.php:1150
+#: mod/settings.php:1135
 msgid "If empty, posts will not expire. Expired posts will be deleted"
 msgstr "Si ce champ est vide, les publications n'expireront pas. Les publications expirées seront supprimées"
 
-#: mod/settings.php:1151
+#: mod/settings.php:1136
 msgid "Advanced expiration settings"
 msgstr "Réglages avancés de l'expiration"
 
-#: mod/settings.php:1152
+#: mod/settings.php:1137
 msgid "Advanced Expiration"
 msgstr "Expiration (avancé)"
 
-#: mod/settings.php:1153
+#: mod/settings.php:1138
 msgid "Expire posts:"
 msgstr "Faire expirer les publications :"
 
-#: mod/settings.php:1154
+#: mod/settings.php:1139
 msgid "Expire personal notes:"
 msgstr "Faire expirer les notes personnelles :"
 
-#: mod/settings.php:1155
+#: mod/settings.php:1140
 msgid "Expire starred posts:"
 msgstr "Faire expirer les publications marqués :"
 
-#: mod/settings.php:1156
+#: mod/settings.php:1141
 msgid "Expire photos:"
 msgstr "Faire expirer les photos :"
 
-#: mod/settings.php:1157
+#: mod/settings.php:1142
 msgid "Only expire posts by others:"
 msgstr "Faire expirer seulement les publications des autres:"
 
-#: mod/settings.php:1187
+#: mod/settings.php:1172
 msgid "Account Settings"
 msgstr "Compte"
 
-#: mod/settings.php:1195
+#: mod/settings.php:1180
 msgid "Password Settings"
 msgstr "Réglages de mot de passe"
 
-#: mod/settings.php:1197
+#: mod/settings.php:1181 src/Module/Register.php:130
+msgid "New Password:"
+msgstr "Nouveau mot de passe :"
+
+#: mod/settings.php:1181
+msgid ""
+"Allowed characters are a-z, A-Z, 0-9 and special characters except white "
+"spaces, accentuated letters and colon (:)."
+msgstr ""
+
+#: mod/settings.php:1182 src/Module/Register.php:131
+msgid "Confirm:"
+msgstr "Confirmer :"
+
+#: mod/settings.php:1182
 msgid "Leave password fields blank unless changing"
 msgstr "Laissez les champs de mot de passe vierges, sauf si vous désirez les changer"
 
-#: mod/settings.php:1198
+#: mod/settings.php:1183
 msgid "Current Password:"
 msgstr "Mot de passe actuel :"
 
-#: mod/settings.php:1198 mod/settings.php:1199
+#: mod/settings.php:1183 mod/settings.php:1184
 msgid "Your current password to confirm the changes"
 msgstr "Votre mot de passe actuel pour confirmer les modifications"
 
-#: mod/settings.php:1199
+#: mod/settings.php:1184
 msgid "Password:"
 msgstr "Mot de passe :"
 
-#: mod/settings.php:1203
+#: mod/settings.php:1188
 msgid "Basic Settings"
 msgstr "Réglages de base"
 
-#: mod/settings.php:1204 src/Model/Profile.php:751
+#: mod/settings.php:1189 src/Model/Profile.php:751
 msgid "Full Name:"
 msgstr "Nom complet :"
 
-#: mod/settings.php:1205
+#: mod/settings.php:1190
 msgid "Email Address:"
 msgstr "Adresse courriel :"
 
-#: mod/settings.php:1206
+#: mod/settings.php:1191
 msgid "Your Timezone:"
 msgstr "Votre fuseau horaire :"
 
-#: mod/settings.php:1207
+#: mod/settings.php:1192
 msgid "Your Language:"
 msgstr "Votre langue :"
 
-#: mod/settings.php:1207
+#: mod/settings.php:1192
 msgid ""
 "Set the language we use to show you friendica interface and to send you "
 "emails"
 msgstr "Détermine la langue que nous utilisons pour afficher votre interface Friendica et pour vous envoyer des courriels"
 
-#: mod/settings.php:1208
+#: mod/settings.php:1193
 msgid "Default Post Location:"
 msgstr "Emplacement de publication par défaut:"
 
-#: mod/settings.php:1209
+#: mod/settings.php:1194
 msgid "Use Browser Location:"
 msgstr "Utiliser la localisation géographique du navigateur:"
 
-#: mod/settings.php:1212
+#: mod/settings.php:1197
 msgid "Security and Privacy Settings"
 msgstr "Réglages de sécurité et vie privée"
 
-#: mod/settings.php:1214
+#: mod/settings.php:1199
 msgid "Maximum Friend Requests/Day:"
 msgstr "Nombre maximal de requêtes d'amitié par jour :"
 
-#: mod/settings.php:1214 mod/settings.php:1243
+#: mod/settings.php:1199 mod/settings.php:1228
 msgid "(to prevent spam abuse)"
 msgstr "(pour limiter l'impact du spam)"
 
-#: mod/settings.php:1215
+#: mod/settings.php:1200
 msgid "Default Post Permissions"
 msgstr "Permissions de publication par défaut"
 
-#: mod/settings.php:1216
+#: mod/settings.php:1201
 msgid "(click to open/close)"
 msgstr "(cliquer pour ouvrir/fermer)"
 
-#: mod/settings.php:1226
+#: mod/settings.php:1211
 msgid "Default Private Post"
 msgstr "Message privé par défaut"
 
-#: mod/settings.php:1227
+#: mod/settings.php:1212
 msgid "Default Public Post"
 msgstr "Message publique par défaut"
 
-#: mod/settings.php:1231
+#: mod/settings.php:1216
 msgid "Default Permissions for New Posts"
 msgstr "Permissions par défaut pour les nouvelles publications"
 
-#: mod/settings.php:1243
+#: mod/settings.php:1228
 msgid "Maximum private messages per day from unknown people:"
 msgstr "Maximum de messages privés d'inconnus par jour :"
 
-#: mod/settings.php:1246
+#: mod/settings.php:1231
 msgid "Notification Settings"
 msgstr "Réglages de notification"
 
-#: mod/settings.php:1247
+#: mod/settings.php:1232
 msgid "Send a notification email when:"
 msgstr "Envoyer un courriel de notification quand:"
 
-#: mod/settings.php:1248
+#: mod/settings.php:1233
 msgid "You receive an introduction"
 msgstr "Vous recevez une introduction"
 
-#: mod/settings.php:1249
+#: mod/settings.php:1234
 msgid "Your introductions are confirmed"
 msgstr "Vos introductions sont confirmées"
 
-#: mod/settings.php:1250
+#: mod/settings.php:1235
 msgid "Someone writes on your profile wall"
 msgstr "Quelqu'un Ã©crit sur votre mur"
 
-#: mod/settings.php:1251
+#: mod/settings.php:1236
 msgid "Someone writes a followup comment"
 msgstr "Quelqu'un vous commente"
 
-#: mod/settings.php:1252
+#: mod/settings.php:1237
 msgid "You receive a private message"
 msgstr "Vous recevez un message privé"
 
-#: mod/settings.php:1253
+#: mod/settings.php:1238
 msgid "You receive a friend suggestion"
 msgstr "Vous avez reçu une suggestion d'ami"
 
-#: mod/settings.php:1254
+#: mod/settings.php:1239
 msgid "You are tagged in a post"
 msgstr "Vous avez Ã©té Ã©tiqueté dans une publication"
 
-#: mod/settings.php:1255
+#: mod/settings.php:1240
 msgid "You are poked/prodded/etc. in a post"
 msgstr "Vous avez Ã©té sollicité dans une publication"
 
-#: mod/settings.php:1257
+#: mod/settings.php:1242
 msgid "Activate desktop notifications"
 msgstr "Activer les notifications de bureau"
 
-#: mod/settings.php:1257
+#: mod/settings.php:1242
 msgid "Show desktop popup on new notifications"
 msgstr "Afficher dans des pop-ups les nouvelles notifications"
 
-#: mod/settings.php:1259
+#: mod/settings.php:1244
 msgid "Text-only notification emails"
 msgstr "Courriels de notification en format texte"
 
-#: mod/settings.php:1261
+#: mod/settings.php:1246
 msgid "Send text only notification emails, without the html part"
 msgstr "Envoyer le texte des courriels de notification, sans la composante html"
 
-#: mod/settings.php:1263
+#: mod/settings.php:1248
 msgid "Show detailled notifications"
 msgstr "Notifications détaillées"
 
-#: mod/settings.php:1265
+#: mod/settings.php:1250
 msgid ""
 "Per default, notifications are condensed to a single notification per item. "
 "When enabled every notification is displayed."
 msgstr ""
 
-#: mod/settings.php:1267
+#: mod/settings.php:1252
 msgid "Advanced Account/Page Type Settings"
 msgstr "Paramètres avancés de compte/page"
 
-#: mod/settings.php:1268
+#: mod/settings.php:1253
 msgid "Change the behaviour of this account for special situations"
 msgstr "Modifier le comportement de ce compte dans certaines situations"
 
-#: mod/settings.php:1271
+#: mod/settings.php:1256
 msgid "Relocate"
 msgstr "Relocaliser"
 
-#: mod/settings.php:1272
+#: mod/settings.php:1257
 msgid ""
 "If you have moved this profile from another server, and some of your "
 "contacts don't receive your updates, try pushing this button."
 msgstr "Si vous avez migré ce profil depuis un autre serveur et que vos contacts ne reçoivent plus vos mises Ã  jour, essayez ce bouton."
 
-#: mod/settings.php:1273
+#: mod/settings.php:1258
 msgid "Resend relocate message to contacts"
 msgstr "Renvoyer un message de relocalisation aux contacts."
 
-#: mod/subthread.php:106
+#: mod/subthread.php:104
 #, php-format
 msgid "%1$s is following %2$s's %3$s"
 msgstr "%1$s suit les %3$s de %2$s"
@@ -6545,11 +6467,11 @@ msgid ""
 "hours."
 msgstr "Aucune suggestion. Si ce site est récent, merci de recommencer dans 24h."
 
-#: mod/suggest.php:88 mod/suggest.php:108
+#: mod/suggest.php:89 mod/suggest.php:109
 msgid "Ignore/Hide"
 msgstr "Ignorer/cacher"
 
-#: mod/suggest.php:118 src/Content/Widget.php:68 view/theme/vier/theme.php:204
+#: mod/suggest.php:119 view/theme/vier/theme.php:204 src/Content/Widget.php:66
 msgid "Friend Suggestions"
 msgstr "Suggestions d'amitiés/contacts"
 
@@ -6557,11 +6479,11 @@ msgstr "Suggestions d'amitiés/contacts"
 msgid "Tag(s) removed"
 msgstr ""
 
-#: mod/tagrm.php:99
+#: mod/tagrm.php:101
 msgid "Remove Item Tag"
 msgstr "Enlever l'étiquette de l'élément"
 
-#: mod/tagrm.php:101
+#: mod/tagrm.php:103
 msgid "Select a tag to remove: "
 msgstr "Sélectionner une Ã©tiquette Ã  supprimer :"
 
@@ -6590,6 +6512,16 @@ msgstr "Exportez votre compte, vos infos, vos contacts et toutes vos publication
 msgid "User imports on closed servers can only be done by an administrator."
 msgstr ""
 
+#: mod/uimport.php:39 src/Module/Register.php:59
+msgid ""
+"This site has exceeded the number of allowed daily account registrations. "
+"Please try again tomorrow."
+msgstr "Le nombre d'inscriptions quotidiennes pour ce site a Ã©té dépassé. Merci de réessayer demain."
+
+#: mod/uimport.php:54 src/Module/Register.php:141
+msgid "Import"
+msgstr "Importer"
+
 #: mod/uimport.php:56
 msgid "Move account"
 msgstr "Migrer le compte"
@@ -6633,57 +6565,85 @@ msgstr ""
 msgid "Contact unfollowed"
 msgstr ""
 
-#: mod/unfollow.php:117 src/Module/Contact.php:576
+#: mod/unfollow.php:118 src/Module/Contact.php:570
 msgid "Disconnect/Unfollow"
 msgstr "Se déconnecter/Ne plus suivre"
 
 #: mod/update_community.php:23 mod/update_contact.php:23
 #: mod/update_display.php:24 mod/update_network.php:33 mod/update_notes.php:36
-#: mod/update_profile.php:35
+#: mod/update_profile.php:34
 msgid "[Embedded content - reload page to view]"
 msgstr "[Ccontenu incorporé - rechargez la page pour le voir]"
 
-#: mod/videos.php:134
+#: mod/videos.php:97
 msgid "Do you really want to delete this video?"
 msgstr "Voulez-vous vraiment supprimer cette vidéo?"
 
-#: mod/videos.php:139
+#: mod/videos.php:102
 msgid "Delete Video"
 msgstr "Supprimer la vidéo"
 
-#: mod/videos.php:201
+#: mod/videos.php:152
 msgid "No videos selected"
 msgstr "Pas de vidéo sélectionné"
 
-#: mod/videos.php:372 src/Model/Item.php:3430
+#: mod/videos.php:309 src/Model/Item.php:3435
 msgid "View Video"
 msgstr "Regarder la vidéo"
 
-#: mod/videos.php:387
+#: mod/videos.php:324
 msgid "Recent Videos"
 msgstr "Vidéos récente"
 
-#: mod/videos.php:389
+#: mod/videos.php:326
 msgid "Upload New Videos"
 msgstr "Téléversé une nouvelle vidéo"
 
-#: mod/viewcontacts.php:97
+#: mod/viewcontacts.php:78
 msgid "No contacts."
 msgstr "Aucun contact."
 
-#: mod/viewcontacts.php:113 src/Module/Contact.php:609
-#: src/Module/Contact.php:1029
+#: mod/viewcontacts.php:94 src/Module/Contact.php:603
+#: src/Module/Contact.php:1024
 #, php-format
 msgid "Visit %s's profile [%s]"
 msgstr "Visiter le profil de %s [%s]"
 
-#: mod/viewcontacts.php:132 src/Content/Nav.php:200 src/Content/Nav.php:266
-#: src/Content/Text/HTML.php:978 src/Model/Profile.php:980
-#: src/Model/Profile.php:983 src/Module/Contact.php:816
-#: src/Module/Contact.php:886 view/theme/frio/theme.php:284
+#: mod/viewcontacts.php:114 view/theme/frio/theme.php:273
+#: src/Content/Text/HTML.php:911 src/Content/Nav.php:203
+#: src/Content/Nav.php:269 src/Model/Profile.php:980 src/Model/Profile.php:983
+#: src/Module/Contact.php:811 src/Module/Contact.php:881
 msgid "Contacts"
 msgstr "Contacts"
 
+#: mod/wall_attach.php:26 mod/wall_attach.php:33 mod/wall_attach.php:85
+#: mod/wall_upload.php:42 mod/wall_upload.php:58 mod/wall_upload.php:116
+#: mod/wall_upload.php:167 mod/wall_upload.php:170
+msgid "Invalid request."
+msgstr "Requête invalide."
+
+#: mod/wall_attach.php:103
+msgid "Sorry, maybe your upload is bigger than the PHP configuration allows"
+msgstr "Désolé, il semble que votre fichier est plus important que ce que la configuration de PHP autorise"
+
+#: mod/wall_attach.php:103
+msgid "Or - did you try to upload an empty file?"
+msgstr "Ou â€” auriez-vous essayé de télécharger un fichier vide ?"
+
+#: mod/wall_attach.php:114
+#, php-format
+msgid "File exceeds size limit of %s"
+msgstr "La taille du fichier dépasse la limite de %s"
+
+#: mod/wall_attach.php:129
+msgid "File upload failed."
+msgstr "Le téléversement a Ã©choué."
+
+#: mod/wall_upload.php:243 src/Object/Image.php:967 src/Object/Image.php:983
+#: src/Object/Image.php:991 src/Object/Image.php:1016
+msgid "Wall Photos"
+msgstr "Photos du mur"
+
 #: mod/wallmessage.php:52 mod/wallmessage.php:115
 #, php-format
 msgid "Number of daily wall messages for %s exceeded. Message failed."
@@ -6704,2522 +6664,2902 @@ msgid ""
 "your site allow private mail from unknown senders."
 msgstr "Si vous souhaitez que %s réponde, merci de vérifier vos réglages pour autoriser les messages privés venant d'inconnus."
 
-#: mod/wall_attach.php:28 mod/wall_attach.php:35 mod/wall_attach.php:90
-#: mod/wall_upload.php:41 mod/wall_upload.php:57 mod/wall_upload.php:115
-#: mod/wall_upload.php:166 mod/wall_upload.php:169
-msgid "Invalid request."
-msgstr "Requête invalide."
-
-#: mod/wall_attach.php:108
-msgid "Sorry, maybe your upload is bigger than the PHP configuration allows"
-msgstr "Désolé, il semble que votre fichier est plus important que ce que la configuration de PHP autorise"
+#: view/theme/duepuntozero/config.php:55 src/Model/User.php:684
+msgid "default"
+msgstr "défaut"
 
-#: mod/wall_attach.php:108
-msgid "Or - did you try to upload an empty file?"
-msgstr "Ou â€” auriez-vous essayé de télécharger un fichier vide ?"
+#: view/theme/duepuntozero/config.php:56
+msgid "greenzero"
+msgstr "greenzero"
 
-#: mod/wall_attach.php:119
-#, php-format
-msgid "File exceeds size limit of %s"
-msgstr "La taille du fichier dépasse la limite de %s"
+#: view/theme/duepuntozero/config.php:57
+msgid "purplezero"
+msgstr "purplezero"
 
-#: mod/wall_attach.php:143 mod/wall_attach.php:159
-msgid "File upload failed."
-msgstr "Le téléversement a Ã©choué."
+#: view/theme/duepuntozero/config.php:58
+msgid "easterbunny"
+msgstr "easterbunny"
 
-#: mod/wall_upload.php:242 src/Object/Image.php:968 src/Object/Image.php:984
-#: src/Object/Image.php:992 src/Object/Image.php:1017
-msgid "Wall Photos"
-msgstr "Photos du mur"
+#: view/theme/duepuntozero/config.php:59
+msgid "darkzero"
+msgstr "darkzero"
 
-#: src/App.php:790
-msgid "Delete this item?"
-msgstr "Effacer cet Ã©lément?"
+#: view/theme/duepuntozero/config.php:60
+msgid "comix"
+msgstr "comix"
 
-#: src/App.php:792
-msgid "show fewer"
-msgstr "montrer moins"
+#: view/theme/duepuntozero/config.php:61
+msgid "slackr"
+msgstr "slackr"
 
-#: src/App.php:834
-msgid "toggle mobile"
-msgstr "activ. mobile"
+#: view/theme/duepuntozero/config.php:75
+msgid "Variations"
+msgstr "Variations"
 
-#: src/App.php:1383
-msgid "No system theme config value set."
-msgstr ""
+#: view/theme/frio/php/Image.php:24
+msgid "Top Banner"
+msgstr "Bannière du haut"
 
-#: src/BaseModule.php:133
+#: view/theme/frio/php/Image.php:24
 msgid ""
-"The form security token was not correct. This probably happened because the "
-"form has been opened for too long (>3 hours) before submitting it."
-msgstr "Le jeton de sécurité du formulaire n'est pas correct. Ceci veut probablement dire que le formulaire est resté ouvert trop longtemps (plus de 3 heures) avant d'être validé."
-
-#: src/Content/ContactSelector.php:57
-msgid "Frequently"
-msgstr ""
+"Resize image to the width of the screen and show background color below on "
+"long pages."
+msgstr "Redimensionner l'image Ã  la largeur de l'écran et combler en dessous avec la couleur d'arrière plan."
 
-#: src/Content/ContactSelector.php:58
-msgid "Hourly"
-msgstr ""
+#: view/theme/frio/php/Image.php:25
+msgid "Full screen"
+msgstr "Plein Ã©cran"
 
-#: src/Content/ContactSelector.php:59
-msgid "Twice daily"
-msgstr ""
+#: view/theme/frio/php/Image.php:25
+msgid ""
+"Resize image to fill entire screen, clipping either the right or the bottom."
+msgstr "Agrandir l'image pour remplir l'écran, jusqu'à toucher le bord droit ou le bas de l'écran."
 
-#: src/Content/ContactSelector.php:60
-msgid "Daily"
-msgstr ""
+#: view/theme/frio/php/Image.php:26
+msgid "Single row mosaic"
+msgstr "Mosaïque sur un rang"
 
-#: src/Content/ContactSelector.php:61
-msgid "Weekly"
-msgstr ""
+#: view/theme/frio/php/Image.php:26
+msgid ""
+"Resize image to repeat it on a single row, either vertical or horizontal."
+msgstr "Redimensionner l'image pour la dupliquer sur un seul rang, vertical ou horizontal."
 
-#: src/Content/ContactSelector.php:62
-msgid "Monthly"
-msgstr ""
+#: view/theme/frio/php/Image.php:27
+msgid "Mosaic"
+msgstr "Mosaïque"
 
-#: src/Content/ContactSelector.php:81
-msgid "DFRN"
-msgstr ""
+#: view/theme/frio/php/Image.php:27
+msgid "Repeat image to fill the screen."
+msgstr "Dupliquer l'image pour couvrir l'écran."
 
-#: src/Content/ContactSelector.php:82
-msgid "OStatus"
-msgstr ""
+#: view/theme/frio/config.php:103
+msgid "Custom"
+msgstr "Personnalisé"
 
-#: src/Content/ContactSelector.php:83
-msgid "RSS/Atom"
-msgstr ""
+#: view/theme/frio/config.php:115
+msgid "Note"
+msgstr "Remarque"
 
-#: src/Content/ContactSelector.php:86
-msgid "Zot!"
-msgstr ""
+#: view/theme/frio/config.php:115
+msgid "Check image permissions if all users are allowed to see the image"
+msgstr "Vérifier que tous les utilisateurs du site sont autorisés Ã  voir l'image."
 
-#: src/Content/ContactSelector.php:87
-msgid "LinkedIn"
-msgstr ""
+#: view/theme/frio/config.php:122
+msgid "Select color scheme"
+msgstr "Choisir le schéma de couleurs"
 
-#: src/Content/ContactSelector.php:88
-msgid "XMPP/IM"
-msgstr ""
+#: view/theme/frio/config.php:123
+msgid "Navigation bar background color"
+msgstr "Couleur d'arrière-plan de la barre de navigation"
 
-#: src/Content/ContactSelector.php:89
-msgid "MySpace"
-msgstr ""
+#: view/theme/frio/config.php:124
+msgid "Navigation bar icon color "
+msgstr "Couleur des icônes de la barre de navigation"
 
-#: src/Content/ContactSelector.php:90
-msgid "Google+"
-msgstr ""
+#: view/theme/frio/config.php:125
+msgid "Link color"
+msgstr "Couleur des liens"
 
-#: src/Content/ContactSelector.php:91
-msgid "pump.io"
-msgstr ""
+#: view/theme/frio/config.php:126
+msgid "Set the background color"
+msgstr "Couleur d'arrière-plan"
 
-#: src/Content/ContactSelector.php:92
-msgid "Twitter"
-msgstr ""
+#: view/theme/frio/config.php:127
+msgid "Content background opacity"
+msgstr "Opacité du contenu d'arrière-plan"
 
-#: src/Content/ContactSelector.php:93
-msgid "Diaspora Connector"
-msgstr ""
+#: view/theme/frio/config.php:128
+msgid "Set the background image"
+msgstr "Image d'arrière-plan"
 
-#: src/Content/ContactSelector.php:94
-msgid "GNU Social Connector"
-msgstr ""
+#: view/theme/frio/config.php:129
+msgid "Background image style"
+msgstr "Style de l'image de fond"
 
-#: src/Content/ContactSelector.php:95
-msgid "ActivityPub"
-msgstr ""
+#: view/theme/frio/config.php:134
+msgid "Login page background image"
+msgstr "Image de fond de la page de login"
 
-#: src/Content/ContactSelector.php:96
-msgid "pnut"
-msgstr ""
+#: view/theme/frio/config.php:138
+msgid "Login page background color"
+msgstr "Couleur d'arrière-plan de la page de login"
 
-#: src/Content/ContactSelector.php:148
-msgid "Male"
-msgstr ""
+#: view/theme/frio/config.php:138
+msgid "Leave background image and color empty for theme defaults"
+msgstr "Laisser l'image et la couleur de fond vides pour les paramètres par défaut du thème"
 
-#: src/Content/ContactSelector.php:148
-msgid "Female"
-msgstr ""
+#: view/theme/frio/theme.php:239
+msgid "Guest"
+msgstr "Invité"
 
-#: src/Content/ContactSelector.php:148
-msgid "Currently Male"
-msgstr ""
+#: view/theme/frio/theme.php:244
+msgid "Visitor"
+msgstr "Visiteur"
 
-#: src/Content/ContactSelector.php:148
-msgid "Currently Female"
-msgstr ""
+#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
+#: src/Module/Login.php:321
+msgid "Logout"
+msgstr "Se déconnecter"
 
-#: src/Content/ContactSelector.php:148
-msgid "Mostly Male"
-msgstr ""
+#: view/theme/frio/theme.php:259 src/Content/Nav.php:153
+msgid "End this session"
+msgstr "Mettre fin Ã  cette session"
 
-#: src/Content/ContactSelector.php:148
-msgid "Mostly Female"
-msgstr ""
+#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
+#: src/Model/Profile.php:901 src/Module/Contact.php:652
+#: src/Module/Contact.php:853
+msgid "Status"
+msgstr "Statut"
 
-#: src/Content/ContactSelector.php:148
-msgid "Transgender"
-msgstr ""
+#: view/theme/frio/theme.php:262 src/Content/Nav.php:156
+#: src/Content/Nav.php:242
+msgid "Your posts and conversations"
+msgstr "Vos publications et conversations"
 
-#: src/Content/ContactSelector.php:148
-msgid "Intersex"
-msgstr ""
+#: view/theme/frio/theme.php:263 src/Content/Nav.php:157
+msgid "Your profile page"
+msgstr "Votre page de profil"
 
-#: src/Content/ContactSelector.php:148
-msgid "Transsexual"
-msgstr ""
+#: view/theme/frio/theme.php:264 src/Content/Nav.php:158
+msgid "Your photos"
+msgstr "Vos photos"
 
-#: src/Content/ContactSelector.php:148
-msgid "Hermaphrodite"
-msgstr ""
+#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
+#: src/Model/Profile.php:925 src/Model/Profile.php:928
+msgid "Videos"
+msgstr "Vidéos"
 
-#: src/Content/ContactSelector.php:148
-msgid "Neuter"
-msgstr ""
+#: view/theme/frio/theme.php:265 src/Content/Nav.php:159
+msgid "Your videos"
+msgstr "Vos vidéos"
 
-#: src/Content/ContactSelector.php:148
-msgid "Non-specific"
-msgstr "Non-spécifique"
+#: view/theme/frio/theme.php:266 src/Content/Nav.php:160
+msgid "Your events"
+msgstr "Vos Ã©vénements"
 
-#: src/Content/ContactSelector.php:148
-msgid "Other"
-msgstr "Autre"
+#: view/theme/frio/theme.php:269 src/Content/Nav.php:239
+msgid "Conversations from your friends"
+msgstr "Conversations de vos amis"
 
-#: src/Content/ContactSelector.php:170
-msgid "Males"
-msgstr "Hommes"
+#: view/theme/frio/theme.php:270 src/Content/Nav.php:226
+#: src/Model/Profile.php:940 src/Model/Profile.php:951
+msgid "Events and Calendar"
+msgstr "Événements et agenda"
 
-#: src/Content/ContactSelector.php:170
-msgid "Females"
-msgstr "Femmes"
+#: view/theme/frio/theme.php:271 src/Content/Nav.php:252
+msgid "Private mail"
+msgstr "Messages privés"
 
-#: src/Content/ContactSelector.php:170
-msgid "Gay"
-msgstr "Gay"
+#: view/theme/frio/theme.php:272 src/Content/Nav.php:263
+msgid "Account settings"
+msgstr "Compte"
 
-#: src/Content/ContactSelector.php:170
-msgid "Lesbian"
-msgstr "Lesbienne"
+#: view/theme/frio/theme.php:273 src/Content/Nav.php:269
+msgid "Manage/edit friends and contacts"
+msgstr "Gérer/éditer les amitiés et contacts"
 
-#: src/Content/ContactSelector.php:170
-msgid "No Preference"
-msgstr "Sans préférence"
+#: view/theme/quattro/config.php:77
+msgid "Alignment"
+msgstr "Alignement"
 
-#: src/Content/ContactSelector.php:170
-msgid "Bisexual"
-msgstr "Bisexuel"
+#: view/theme/quattro/config.php:77
+msgid "Left"
+msgstr "Gauche"
 
-#: src/Content/ContactSelector.php:170
-msgid "Autosexual"
-msgstr "Auto-sexuel"
+#: view/theme/quattro/config.php:77
+msgid "Center"
+msgstr "Centre"
 
-#: src/Content/ContactSelector.php:170
-msgid "Abstinent"
-msgstr "Abstinent"
+#: view/theme/quattro/config.php:78
+msgid "Color scheme"
+msgstr "Palette de couleurs"
 
-#: src/Content/ContactSelector.php:170
-msgid "Virgin"
-msgstr "Vierge"
+#: view/theme/quattro/config.php:79
+msgid "Posts font size"
+msgstr "Taille de texte des publications"
 
-#: src/Content/ContactSelector.php:170
-msgid "Deviant"
-msgstr "Déviant"
+#: view/theme/quattro/config.php:80
+msgid "Textareas font size"
+msgstr "Taille de police des zones de texte"
 
-#: src/Content/ContactSelector.php:170
-msgid "Fetish"
-msgstr "Fétichiste"
+#: view/theme/vier/config.php:76
+msgid "Comma separated list of helper forums"
+msgstr "Liste de forums d'aide, séparés par des virgules"
 
-#: src/Content/ContactSelector.php:170
-msgid "Oodles"
-msgstr "Oodles"
+#: view/theme/vier/config.php:116 src/Core/ACL.php:301
+msgid "don't show"
+msgstr "cacher"
 
-#: src/Content/ContactSelector.php:170
-msgid "Nonsexual"
-msgstr "Non-sexuel"
+#: view/theme/vier/config.php:116 src/Core/ACL.php:300
+msgid "show"
+msgstr "montrer"
 
-#: src/Content/ContactSelector.php:192
-msgid "Single"
-msgstr "Célibataire"
+#: view/theme/vier/config.php:123
+msgid "Set style"
+msgstr "Définir le style"
 
-#: src/Content/ContactSelector.php:192
-msgid "Lonely"
-msgstr "Esseulé"
+#: view/theme/vier/config.php:124
+msgid "Community Pages"
+msgstr "Pages de Communauté"
 
-#: src/Content/ContactSelector.php:192
-msgid "Available"
-msgstr "Disponible"
+#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
+msgid "Community Profiles"
+msgstr "Profils communautaires"
 
-#: src/Content/ContactSelector.php:192
-msgid "Unavailable"
-msgstr "Indisponible"
+#: view/theme/vier/config.php:126
+msgid "Help or @NewHere ?"
+msgstr "Aide ou @NewHere?"
 
-#: src/Content/ContactSelector.php:192
-msgid "Has crush"
-msgstr "Attiré par quelqu'un"
+#: view/theme/vier/config.php:127 view/theme/vier/theme.php:373
+msgid "Connect Services"
+msgstr "Connecter des services"
 
-#: src/Content/ContactSelector.php:192
-msgid "Infatuated"
-msgstr "Entiché"
-
-#: src/Content/ContactSelector.php:192
-msgid "Dating"
-msgstr "Dans une relation"
-
-#: src/Content/ContactSelector.php:192
-msgid "Unfaithful"
-msgstr "Infidèle"
+#: view/theme/vier/config.php:128
+msgid "Find Friends"
+msgstr "Trouver des amis"
 
-#: src/Content/ContactSelector.php:192
-msgid "Sex Addict"
-msgstr "Accro au sexe"
+#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
+msgid "Last users"
+msgstr "Derniers utilisateurs"
 
-#: src/Content/ContactSelector.php:192 src/Model/User.php:618
-msgid "Friends"
-msgstr "Amis"
+#: view/theme/vier/theme.php:199 src/Content/Widget.php:61
+msgid "Find People"
+msgstr "Trouver des personnes"
 
-#: src/Content/ContactSelector.php:192
-msgid "Friends/Benefits"
-msgstr "Amis par intérêt"
+#: view/theme/vier/theme.php:200 src/Content/Widget.php:62
+msgid "Enter name or interest"
+msgstr "Entrez un nom ou un centre d'intérêt"
 
-#: src/Content/ContactSelector.php:192
-msgid "Casual"
-msgstr "Casual"
+#: view/theme/vier/theme.php:202 src/Content/Widget.php:64
+msgid "Examples: Robert Morgenstein, Fishing"
+msgstr "Exemples : Robert Morgenstein, Pêche"
 
-#: src/Content/ContactSelector.php:192
-msgid "Engaged"
-msgstr "Fiancé"
+#: view/theme/vier/theme.php:205 src/Content/Widget.php:67
+msgid "Similar Interests"
+msgstr "Intérêts similaires"
 
-#: src/Content/ContactSelector.php:192
-msgid "Married"
-msgstr "Marié"
+#: view/theme/vier/theme.php:206 src/Content/Widget.php:68
+msgid "Random Profile"
+msgstr "Profil au hasard"
 
-#: src/Content/ContactSelector.php:192
-msgid "Imaginarily married"
-msgstr "Se croit marié"
+#: view/theme/vier/theme.php:207 src/Content/Widget.php:69
+msgid "Invite Friends"
+msgstr "Inviter des amis"
 
-#: src/Content/ContactSelector.php:192
-msgid "Partners"
-msgstr "Partenaire"
+#: view/theme/vier/theme.php:210 src/Content/Widget.php:72
+msgid "Local Directory"
+msgstr "Annuaire local"
 
-#: src/Content/ContactSelector.php:192
-msgid "Cohabiting"
-msgstr "En cohabitation"
+#: view/theme/vier/theme.php:250 src/Content/Text/HTML.php:914
+#: src/Content/ForumManager.php:130 src/Content/Nav.php:207
+msgid "Forums"
+msgstr "Forums"
 
-#: src/Content/ContactSelector.php:192
-msgid "Common law"
-msgstr "Marié \"de fait\"/\"sui juris\" (concubin)"
+#: view/theme/vier/theme.php:252 src/Content/ForumManager.php:132
+msgid "External link to forum"
+msgstr "Lien sortant vers le forum"
 
-#: src/Content/ContactSelector.php:192
-msgid "Happy"
-msgstr "Heureux"
+#: view/theme/vier/theme.php:288
+msgid "Quick Start"
+msgstr "Démarrage rapide"
 
-#: src/Content/ContactSelector.php:192
-msgid "Not looking"
-msgstr "Pas intéressé"
+#: src/Core/Console/ArchiveContact.php:65
+#, php-format
+msgid "Could not find any unarchived contact entry for this URL (%s)"
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Swinger"
-msgstr "Échangiste"
+#: src/Core/Console/ArchiveContact.php:70
+msgid "The contact entries have been archived"
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Betrayed"
-msgstr "Trahi(e)"
+#: src/Core/Console/NewPassword.php:72
+msgid "Enter new password: "
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Separated"
-msgstr "Séparé"
+#: src/Core/Console/PostUpdate.php:50
+#, php-format
+msgid "Post update version number has been set to %s."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Unstable"
-msgstr "Instable"
+#: src/Core/Console/PostUpdate.php:58
+msgid "Check for pending update actions."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Divorced"
-msgstr "Divorcé"
+#: src/Core/Console/PostUpdate.php:60
+msgid "Done."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Imaginarily divorced"
-msgstr "Se croit divorcé"
+#: src/Core/Console/PostUpdate.php:62
+msgid "Execute pending post updates."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Widowed"
-msgstr "Veuf/Veuve"
+#: src/Core/Console/PostUpdate.php:68
+msgid "All pending post updates are done."
+msgstr ""
 
-#: src/Content/ContactSelector.php:192
-msgid "Uncertain"
-msgstr "Incertain"
+#: src/Core/ACL.php:287
+msgid "Post to Email"
+msgstr "Publier aux courriels"
 
-#: src/Content/ContactSelector.php:192
-msgid "It's complicated"
-msgstr "C'est compliqué"
+#: src/Core/ACL.php:293
+msgid "Hide your profile details from unknown viewers?"
+msgstr "Cacher les détails du profil aux visiteurs inconnus?"
 
-#: src/Content/ContactSelector.php:192
-msgid "Don't care"
-msgstr "S'en désintéresse"
+#: src/Core/ACL.php:292
+#, php-format
+msgid "Connectors disabled, since \"%s\" is enabled."
+msgstr "Les connecteurs sont désactivés parce que \"%s\" est activé."
 
-#: src/Content/ContactSelector.php:192
-msgid "Ask me"
-msgstr "Me demander"
+#: src/Core/ACL.php:299
+msgid "Visible to everybody"
+msgstr "Visible par tout le monde"
 
-#: src/Content/Feature.php:79
-msgid "General Features"
-msgstr "Fonctions générales"
+#: src/Core/ACL.php:311
+msgid "Close"
+msgstr "Fermer"
 
-#: src/Content/Feature.php:81
-msgid "Multiple Profiles"
-msgstr "Profils multiples"
+#: src/Core/Authentication.php:87
+msgid "Welcome "
+msgstr "Bienvenue "
 
-#: src/Content/Feature.php:81
-msgid "Ability to create multiple profiles"
-msgstr "Possibilité de créer plusieurs profils"
+#: src/Core/Authentication.php:88
+msgid "Please upload a profile photo."
+msgstr "Merci d'illustrer votre profil d'une image."
 
-#: src/Content/Feature.php:82
-msgid "Photo Location"
-msgstr "Lieu de prise de la photo"
+#: src/Core/Authentication.php:90
+msgid "Welcome back "
+msgstr "Bienvenue Ã  nouveau, "
 
-#: src/Content/Feature.php:82
+#: src/Core/Installer.php:162
 msgid ""
-"Photo metadata is normally stripped. This extracts the location (if present)"
-" prior to stripping metadata and links it to a map."
-msgstr "Les métadonnées des photos sont normalement retirées. Ceci permet de sauver l'emplacement (si présent) et de positionner la photo sur une carte."
-
-#: src/Content/Feature.php:83
-msgid "Export Public Calendar"
-msgstr "Exporter le Calendrier Public"
+"The database configuration file \"config/local.config.php\" could not be "
+"written. Please use the enclosed text to create a configuration file in your"
+" web server root."
+msgstr ""
 
-#: src/Content/Feature.php:83
-msgid "Ability for visitors to download the public calendar"
-msgstr "Les visiteurs peuvent télécharger le calendrier public"
+#: src/Core/Installer.php:181
+msgid ""
+"You may need to import the file \"database.sql\" manually using phpmyadmin "
+"or mysql."
+msgstr "Vous pourriez avoir besoin d'importer le fichier \"database.sql\" manuellement au moyen de phpmyadmin ou de la commande mysql."
 
-#: src/Content/Feature.php:88
-msgid "Post Composition Features"
-msgstr "Caractéristiques de composition de publication"
+#: src/Core/Installer.php:182 src/Module/Install.php:132
+#: src/Module/Install.php:263
+msgid "Please see the file \"INSTALL.txt\"."
+msgstr "Référez-vous au fichier \"INSTALL.txt\"."
 
-#: src/Content/Feature.php:89
-msgid "Auto-mention Forums"
-msgstr "Mentionner automatiquement les Forums"
+#: src/Core/Installer.php:243
+msgid "Could not find a command line version of PHP in the web server PATH."
+msgstr "Impossible de trouver la version \"ligne de commande\" de PHP dans le PATH du serveur web."
 
-#: src/Content/Feature.php:89
+#: src/Core/Installer.php:244
 msgid ""
-"Add/remove mention when a forum page is selected/deselected in ACL window."
-msgstr "Ajoute/retire une mention quand une page forum est sélectionnée/désélectionnée lors du choix des destinataires d'une publication."
-
-#: src/Content/Feature.php:94
-msgid "Network Sidebar"
+"If you don't have a command line version of PHP installed on your server, "
+"you will not be able to run the background processing. See <a "
+"href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-"
+"up-the-worker'>'Setup the worker'</a>"
 msgstr ""
 
-#: src/Content/Feature.php:95
-msgid "Ability to select posts by date ranges"
-msgstr "Capacité de sélectionner les publications par intervalles de dates"
+#: src/Core/Installer.php:248
+msgid "PHP executable path"
+msgstr "Chemin vers l'exécutable de PHP"
 
-#: src/Content/Feature.php:96
-msgid "Protocol Filter"
-msgstr ""
+#: src/Core/Installer.php:248
+msgid ""
+"Enter full path to php executable. You can leave this blank to continue the "
+"installation."
+msgstr "Entrez le chemin (absolu) vers l'exécutable 'php'. Vous pouvez laisser cette ligne vide pour continuer l'installation."
 
-#: src/Content/Feature.php:96
-msgid "Enable widget to display Network posts only from selected protocols"
-msgstr ""
+#: src/Core/Installer.php:253
+msgid "Command line PHP"
+msgstr "Version \"ligne de commande\" de PHP"
 
-#: src/Content/Feature.php:101
-msgid "Network Tabs"
-msgstr "Onglets Réseau"
+#: src/Core/Installer.php:262
+msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
+msgstr "L'executable PHP n'est pas le binaire php client (c'est peut Ãªtre la version cgi-fcgi)"
 
-#: src/Content/Feature.php:102
-msgid "Network New Tab"
-msgstr "Nouvel onglet réseaux"
+#: src/Core/Installer.php:263
+msgid "Found PHP version: "
+msgstr "Version de PHP :"
 
-#: src/Content/Feature.php:102
-msgid "Enable tab to display only new Network posts (from the last 12 hours)"
-msgstr "Activer l'onglet pour afficher seulement les publications du réseau (dans les 12 dernières heures)"
+#: src/Core/Installer.php:265
+msgid "PHP cli binary"
+msgstr "PHP cli binary"
 
-#: src/Content/Feature.php:103
-msgid "Network Shared Links Tab"
-msgstr "Onglet réseau partagé"
+#: src/Core/Installer.php:278
+msgid ""
+"The command line version of PHP on your system does not have "
+"\"register_argc_argv\" enabled."
+msgstr "La version \"ligne de commande\" de PHP de votre système n'a pas \"register_argc_argv\" d'activé."
 
-#: src/Content/Feature.php:103
-msgid "Enable tab to display only Network posts with links in them"
-msgstr "Activer l'onglet pour afficher seulement les publications du réseau contenant des liens"
+#: src/Core/Installer.php:279
+msgid "This is required for message delivery to work."
+msgstr "Ceci est requis pour que la livraison des messages fonctionne."
 
-#: src/Content/Feature.php:108
-msgid "Post/Comment Tools"
-msgstr "Outils de publication/commentaire"
+#: src/Core/Installer.php:284
+msgid "PHP register_argc_argv"
+msgstr "PHP register_argc_argv"
 
-#: src/Content/Feature.php:109
-msgid "Post Categories"
-msgstr "Catégories des publications"
+#: src/Core/Installer.php:316
+msgid ""
+"Error: the \"openssl_pkey_new\" function on this system is not able to "
+"generate encryption keys"
+msgstr "Erreur: la fonction \"openssl_pkey_new\" de ce système ne permet pas de générer des clés de chiffrement"
 
-#: src/Content/Feature.php:109
-msgid "Add categories to your posts"
-msgstr "Ajouter des catégories Ã  vos publications"
+#: src/Core/Installer.php:317
+msgid ""
+"If running under Windows, please see "
+"\"http://www.php.net/manual/en/openssl.installation.php\"."
+msgstr "Si vous utilisez Windows, merci de vous réferer Ã  \"http://www.php.net/manual/en/openssl.installation.php\"."
 
-#: src/Content/Feature.php:114
-msgid "Advanced Profile Settings"
-msgstr "Paramètres Avancés du Profil"
+#: src/Core/Installer.php:320
+msgid "Generate encryption keys"
+msgstr "Générer les clés de chiffrement"
 
-#: src/Content/Feature.php:115
-msgid "List Forums"
-msgstr "Liste des forums"
+#: src/Core/Installer.php:371
+msgid ""
+"Error: Apache webserver mod-rewrite module is required but not installed."
+msgstr "Erreur : Le module \"rewrite\" du serveur web Apache est requis mais pas installé."
 
-#: src/Content/Feature.php:115
-msgid "Show visitors public community forums at the Advanced Profile Page"
-msgstr "Montrer les forums communautaires aux visiteurs sur la Page de profil avancé"
+#: src/Core/Installer.php:376
+msgid "Apache mod_rewrite module"
+msgstr "Module mod_rewrite Apache"
 
-#: src/Content/Feature.php:116
-msgid "Tag Cloud"
+#: src/Core/Installer.php:382
+msgid "Error: PDO or MySQLi PHP module required but not installed."
 msgstr ""
 
-#: src/Content/Feature.php:116
-msgid "Provide a personal tag cloud on your profile page"
+#: src/Core/Installer.php:387
+msgid "Error: The MySQL driver for PDO is not installed."
 msgstr ""
 
-#: src/Content/Feature.php:117
-msgid "Display Membership Date"
+#: src/Core/Installer.php:391
+msgid "PDO or MySQLi PHP module"
 msgstr ""
 
-#: src/Content/Feature.php:117
-msgid "Display membership date in profile"
-msgstr ""
+#: src/Core/Installer.php:399
+msgid "Error, XML PHP module required but not installed."
+msgstr "Erreur : le module PHP XML requis est absent."
 
-#: src/Content/ForumManager.php:128 src/Content/Nav.php:204
-#: src/Content/Text/HTML.php:981 view/theme/vier/theme.php:253
-msgid "Forums"
-msgstr "Forums"
+#: src/Core/Installer.php:403
+msgid "XML PHP module"
+msgstr "Module PHP XML"
 
-#: src/Content/ForumManager.php:130 view/theme/vier/theme.php:255
-msgid "External link to forum"
-msgstr "Lien sortant vers le forum"
+#: src/Core/Installer.php:406
+msgid "libCurl PHP module"
+msgstr "Module libCurl de PHP"
 
-#: src/Content/Nav.php:72
-msgid "Nothing new here"
-msgstr "Rien de neuf ici"
+#: src/Core/Installer.php:407
+msgid "Error: libCURL PHP module required but not installed."
+msgstr "Erreur : Le module PHP \"libCURL\" est requis mais pas installé."
 
-#: src/Content/Nav.php:76
-msgid "Clear notifications"
-msgstr "Effacer les notifications"
-
-#: src/Content/Nav.php:77 src/Content/Text/HTML.php:970
-msgid "@name, !forum, #tags, content"
-msgstr "@nom, !forum, #tags, contenu"
+#: src/Core/Installer.php:413
+msgid "GD graphics PHP module"
+msgstr "Module GD (graphiques) de PHP"
 
-#: src/Content/Nav.php:150 src/Module/Login.php:321
-#: view/theme/frio/theme.php:270
-msgid "Logout"
-msgstr "Se déconnecter"
+#: src/Core/Installer.php:414
+msgid ""
+"Error: GD graphics PHP module with JPEG support required but not installed."
+msgstr "Erreur : Le module PHP \"GD\" disposant du support JPEG est requis mais pas installé."
 
-#: src/Content/Nav.php:150 view/theme/frio/theme.php:270
-msgid "End this session"
-msgstr "Mettre fin Ã  cette session"
+#: src/Core/Installer.php:420
+msgid "OpenSSL PHP module"
+msgstr "Module OpenSSL de PHP"
 
-#: src/Content/Nav.php:153 src/Model/Profile.php:901
-#: src/Module/Contact.php:659 src/Module/Contact.php:858
-#: view/theme/frio/theme.php:273
-msgid "Status"
-msgstr "Statut"
+#: src/Core/Installer.php:421
+msgid "Error: openssl PHP module required but not installed."
+msgstr "Erreur : Le module PHP \"openssl\" est requis mais pas installé."
 
-#: src/Content/Nav.php:153 src/Content/Nav.php:239
-#: view/theme/frio/theme.php:273
-msgid "Your posts and conversations"
-msgstr "Vos publications et conversations"
+#: src/Core/Installer.php:427
+msgid "mb_string PHP module"
+msgstr "Module mb_string de PHP"
 
-#: src/Content/Nav.php:154 view/theme/frio/theme.php:274
-msgid "Your profile page"
-msgstr "Votre page de profil"
+#: src/Core/Installer.php:428
+msgid "Error: mb_string PHP module required but not installed."
+msgstr "Erreur : le module PHP mb_string est requis mais pas installé."
 
-#: src/Content/Nav.php:155 view/theme/frio/theme.php:275
-msgid "Your photos"
-msgstr "Vos photos"
+#: src/Core/Installer.php:434
+msgid "iconv PHP module"
+msgstr ""
 
-#: src/Content/Nav.php:156 src/Model/Profile.php:925 src/Model/Profile.php:928
-#: view/theme/frio/theme.php:276
-msgid "Videos"
-msgstr "Vidéos"
+#: src/Core/Installer.php:435
+msgid "Error: iconv PHP module required but not installed."
+msgstr "Erreur : Le module PHP iconv requis est absent."
 
-#: src/Content/Nav.php:156 view/theme/frio/theme.php:276
-msgid "Your videos"
-msgstr "Vos vidéos"
+#: src/Core/Installer.php:441
+msgid "POSIX PHP module"
+msgstr ""
 
-#: src/Content/Nav.php:157 view/theme/frio/theme.php:277
-msgid "Your events"
-msgstr "Vos Ã©vénements"
+#: src/Core/Installer.php:442
+msgid "Error: POSIX PHP module required but not installed."
+msgstr ""
 
-#: src/Content/Nav.php:158
-msgid "Personal notes"
-msgstr "Notes personnelles"
+#: src/Core/Installer.php:448
+msgid "JSON PHP module"
+msgstr ""
 
-#: src/Content/Nav.php:158
-msgid "Your personal notes"
-msgstr "Vos notes personnelles"
+#: src/Core/Installer.php:449
+msgid "Error: JSON PHP module required but not installed."
+msgstr ""
 
-#: src/Content/Nav.php:167
-msgid "Sign in"
-msgstr "Se connecter"
+#: src/Core/Installer.php:472
+msgid ""
+"The web installer needs to be able to create a file called "
+"\"local.config.php\" in the \"config\" folder of your web server and it is "
+"unable to do so."
+msgstr ""
 
-#: src/Content/Nav.php:177 src/Content/Nav.php:239
-#: src/Core/NotificationsManager.php:194
-msgid "Home"
-msgstr "Profil"
+#: src/Core/Installer.php:473
+msgid ""
+"This is most often a permission setting, as the web server may not be able "
+"to write files in your folder - even if you can."
+msgstr "Le plus souvent, il s'agit d'un problème de permission. Le serveur web peut ne pas Ãªtre capable d'écrire dans votre répertoire - alors que vous-même le pouvez."
 
-#: src/Content/Nav.php:177
-msgid "Home Page"
-msgstr "Page d'accueil"
+#: src/Core/Installer.php:474
+msgid ""
+"At the end of this procedure, we will give you a text to save in a file "
+"named local.config.php in your Friendica \"config\" folder."
+msgstr ""
 
-#: src/Content/Nav.php:181
-msgid "Create an account"
-msgstr "Créer un compte"
+#: src/Core/Installer.php:475
+msgid ""
+"You can alternatively skip this procedure and perform a manual installation."
+" Please see the file \"INSTALL.txt\" for instructions."
+msgstr "Vous pouvez Ã©galement sauter cette Ã©tape et procéder Ã  une installation manuelle. Pour cela, merci de lire le fichier \"INSTALL.txt\"."
 
-#: src/Content/Nav.php:187
-msgid "Help and documentation"
-msgstr "Aide et documentation"
+#: src/Core/Installer.php:478
+msgid "config/local.config.php is writable"
+msgstr ""
 
-#: src/Content/Nav.php:191
-msgid "Apps"
-msgstr "Applications"
+#: src/Core/Installer.php:498
+msgid ""
+"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
+"compiles templates to PHP to speed up rendering."
+msgstr "Friendica utilise le moteur de modèles Smarty3 pour le rendu d'affichage web. Smarty3 compile les modèles en PHP pour accélérer le rendu."
 
-#: src/Content/Nav.php:191
-msgid "Addon applications, utilities, games"
-msgstr "Applications supplémentaires, utilitaires, jeux"
+#: src/Core/Installer.php:499
+msgid ""
+"In order to store these compiled templates, the web server needs to have "
+"write access to the directory view/smarty3/ under the Friendica top level "
+"folder."
+msgstr "Pour pouvoir stocker ces modèles compilés, le serveur internet doit avoir accès au droit d'écriture pour le répertoire view/smarty3/ sous le dossier racine de Friendica."
 
-#: src/Content/Nav.php:195
-msgid "Search site content"
-msgstr "Rechercher dans le contenu du site"
+#: src/Core/Installer.php:500
+msgid ""
+"Please ensure that the user that your web server runs as (e.g. www-data) has"
+" write access to this folder."
+msgstr "Veuillez vous assurer que l'utilisateur qui exécute votre serveur internet (p. ex. www-data) détient le droit d'accès en Ã©criture sur ce dossier."
 
-#: src/Content/Nav.php:198 src/Content/Text/HTML.php:976
-msgid "Full Text"
-msgstr "Texte Entier"
+#: src/Core/Installer.php:501
+msgid ""
+"Note: as a security measure, you should give the web server write access to "
+"view/smarty3/ only--not the template files (.tpl) that it contains."
+msgstr "Note: pour plus de sécurité, vous devriez ne donner le droit d'accès en Ã©criture qu'à view/smarty3/ et pas aux fichiers modèles (.tpl) qu'il contient."
 
-#: src/Content/Nav.php:199 src/Content/Text/HTML.php:977
-#: src/Content/Widget/TagCloud.php:55
-msgid "Tags"
-msgstr "Tags"
+#: src/Core/Installer.php:504
+msgid "view/smarty3 is writable"
+msgstr "view/smarty3 est autorisé Ã  l Ã©criture"
 
-#: src/Content/Nav.php:219
-msgid "Community"
-msgstr "Communauté"
+#: src/Core/Installer.php:533
+msgid ""
+"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist"
+" to .htaccess."
+msgstr ""
 
-#: src/Content/Nav.php:219
-msgid "Conversations on this and other servers"
+#: src/Core/Installer.php:535
+msgid "Error message from Curl when fetching"
 msgstr ""
 
-#: src/Content/Nav.php:223 src/Model/Profile.php:940 src/Model/Profile.php:951
-#: view/theme/frio/theme.php:281
-msgid "Events and Calendar"
-msgstr "Événements et agenda"
+#: src/Core/Installer.php:540
+msgid "Url rewrite is working"
+msgstr "La réécriture d'URL fonctionne."
 
-#: src/Content/Nav.php:226
-msgid "Directory"
-msgstr "Annuaire"
+#: src/Core/Installer.php:569
+msgid "ImageMagick PHP extension is not installed"
+msgstr "L'extension PHP ImageMagick n'est pas installée"
 
-#: src/Content/Nav.php:226
-msgid "People directory"
-msgstr "Annuaire des utilisateurs"
+#: src/Core/Installer.php:571
+msgid "ImageMagick PHP extension is installed"
+msgstr "L’extension PHP ImageMagick est installée"
 
-#: src/Content/Nav.php:228
-msgid "Information about this friendica instance"
-msgstr "Information au sujet de cette instance de friendica"
+#: src/Core/Installer.php:573 tests/src/Core/InstallerTest.php:329
+#: tests/src/Core/InstallerTest.php:355
+msgid "ImageMagick supports GIF"
+msgstr "ImageMagick supporte le format GIF"
 
-#: src/Content/Nav.php:231
-msgid "Terms of Service of this Friendica instance"
-msgstr ""
+#: src/Core/Installer.php:595
+msgid "Could not connect to database."
+msgstr "Impossible de se connecter Ã  la base."
 
-#: src/Content/Nav.php:236 view/theme/frio/theme.php:280
-msgid "Conversations from your friends"
-msgstr "Conversations de vos amis"
+#: src/Core/Installer.php:602
+msgid "Database already in use."
+msgstr "Base de données déjà en cours d'utilisation."
 
-#: src/Content/Nav.php:237
-msgid "Network Reset"
-msgstr "Réinitialiser le réseau"
+#: src/Core/L10n.php:368 src/Model/Event.php:398
+msgid "Tuesday"
+msgstr "Mardi"
 
-#: src/Content/Nav.php:237
-msgid "Load Network page with no filters"
-msgstr "Chargement des pages du réseau sans filtre"
+#: src/Core/L10n.php:368 src/Model/Event.php:399
+msgid "Wednesday"
+msgstr "Mercredi"
 
-#: src/Content/Nav.php:243 src/Core/NotificationsManager.php:201
-msgid "Introductions"
-msgstr "Introductions"
+#: src/Core/L10n.php:368 src/Model/Event.php:400
+msgid "Thursday"
+msgstr "Jeudi"
 
-#: src/Content/Nav.php:243
-msgid "Friend Requests"
-msgstr "Demande d'amitié"
+#: src/Core/L10n.php:368 src/Model/Event.php:401
+msgid "Friday"
+msgstr "Vendredi"
 
-#: src/Content/Nav.php:245
-msgid "See all notifications"
-msgstr "Voir toutes les notifications"
+#: src/Core/L10n.php:368 src/Model/Event.php:402
+msgid "Saturday"
+msgstr "Samedi"
 
-#: src/Content/Nav.php:246
-msgid "Mark all system notifications seen"
-msgstr "Marquer toutes les notifications système comme 'vues'"
+#: src/Core/L10n.php:372 src/Model/Event.php:417
+msgid "January"
+msgstr "Janvier"
 
-#: src/Content/Nav.php:249 view/theme/frio/theme.php:282
-msgid "Private mail"
-msgstr "Messages privés"
+#: src/Core/L10n.php:372 src/Model/Event.php:418
+msgid "February"
+msgstr "Février"
 
-#: src/Content/Nav.php:250
-msgid "Inbox"
-msgstr "Messages entrants"
+#: src/Core/L10n.php:372 src/Model/Event.php:419
+msgid "March"
+msgstr "Mars"
 
-#: src/Content/Nav.php:251
-msgid "Outbox"
-msgstr "Messages sortants"
+#: src/Core/L10n.php:372 src/Model/Event.php:420
+msgid "April"
+msgstr "Avril"
 
-#: src/Content/Nav.php:255
-msgid "Manage"
-msgstr "Gérer"
+#: src/Core/L10n.php:372 src/Core/L10n.php:391 src/Model/Event.php:408
+msgid "May"
+msgstr "Mai"
 
-#: src/Content/Nav.php:255
-msgid "Manage other pages"
-msgstr "Gérer les autres pages"
+#: src/Core/L10n.php:372 src/Model/Event.php:421
+msgid "June"
+msgstr "Juin"
 
-#: src/Content/Nav.php:260 view/theme/frio/theme.php:283
-msgid "Account settings"
-msgstr "Compte"
+#: src/Core/L10n.php:372 src/Model/Event.php:422
+msgid "July"
+msgstr "Juillet"
 
-#: src/Content/Nav.php:263
-msgid "Manage/Edit Profiles"
-msgstr "Gérer/Éditer les profiles"
+#: src/Core/L10n.php:372 src/Model/Event.php:423
+msgid "August"
+msgstr "Août"
 
-#: src/Content/Nav.php:266 view/theme/frio/theme.php:284
-msgid "Manage/edit friends and contacts"
-msgstr "Gérer/éditer les amitiés et contacts"
+#: src/Core/L10n.php:372 src/Model/Event.php:424
+msgid "September"
+msgstr "Septembre"
 
-#: src/Content/Nav.php:271
-msgid "Site setup and configuration"
-msgstr "Démarrage et configuration du site"
+#: src/Core/L10n.php:372 src/Model/Event.php:425
+msgid "October"
+msgstr "Octobre"
 
-#: src/Content/Nav.php:274
-msgid "Navigation"
-msgstr "Navigation"
+#: src/Core/L10n.php:372 src/Model/Event.php:426
+msgid "November"
+msgstr "Novembre"
 
-#: src/Content/Nav.php:274
-msgid "Site map"
-msgstr "Carte du site"
+#: src/Core/L10n.php:372 src/Model/Event.php:427
+msgid "December"
+msgstr "Décembre"
 
-#: src/Content/OEmbed.php:257
-msgid "Embedding disabled"
-msgstr "Incorporation désactivée"
+#: src/Core/L10n.php:387 src/Model/Event.php:389
+msgid "Mon"
+msgstr "Lun"
 
-#: src/Content/OEmbed.php:377
-msgid "Embedded content"
-msgstr "Contenu incorporé"
+#: src/Core/L10n.php:387 src/Model/Event.php:390
+msgid "Tue"
+msgstr "Mar"
 
-#: src/Content/Pager.php:166
-msgid "newer"
-msgstr "Plus récent"
+#: src/Core/L10n.php:387 src/Model/Event.php:391
+msgid "Wed"
+msgstr "Mer"
 
-#: src/Content/Pager.php:171
-msgid "older"
-msgstr "Plus ancien"
+#: src/Core/L10n.php:387 src/Model/Event.php:392
+msgid "Thu"
+msgstr "Jeu"
 
-#: src/Content/Pager.php:210
-msgid "first"
-msgstr "premier"
+#: src/Core/L10n.php:387 src/Model/Event.php:393
+msgid "Fri"
+msgstr "Ven"
 
-#: src/Content/Pager.php:215
-msgid "prev"
-msgstr "précédent"
+#: src/Core/L10n.php:387 src/Model/Event.php:394
+msgid "Sat"
+msgstr "Sam"
 
-#: src/Content/Pager.php:270
-msgid "next"
-msgstr "suivant"
+#: src/Core/L10n.php:387 src/Model/Event.php:388
+msgid "Sun"
+msgstr "Dim"
 
-#: src/Content/Pager.php:275
-msgid "last"
-msgstr "dernier"
+#: src/Core/L10n.php:391 src/Model/Event.php:404
+msgid "Jan"
+msgstr "Jan"
 
-#: src/Content/Text/BBCode.php:426
-msgid "view full size"
-msgstr "voir en pleine taille"
+#: src/Core/L10n.php:391 src/Model/Event.php:405
+msgid "Feb"
+msgstr "Fév"
 
-#: src/Content/Text/BBCode.php:858 src/Content/Text/BBCode.php:1583
-#: src/Content/Text/BBCode.php:1584
-msgid "Image/photo"
-msgstr "Image/photo"
+#: src/Core/L10n.php:391 src/Model/Event.php:406
+msgid "Mar"
+msgstr "Mar"
 
-#: src/Content/Text/BBCode.php:961
-#, php-format
-msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
-msgstr "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
+#: src/Core/L10n.php:391 src/Model/Event.php:407
+msgid "Apr"
+msgstr "Avr"
 
-#: src/Content/Text/BBCode.php:1510 src/Content/Text/BBCode.php:1532
-msgid "$1 wrote:"
-msgstr "$1 a Ã©crit :"
-
-#: src/Content/Text/BBCode.php:1594 src/Content/Text/BBCode.php:1595
-msgid "Encrypted content"
-msgstr "Contenu chiffré"
+#: src/Core/L10n.php:391 src/Model/Event.php:410
+msgid "Jul"
+msgstr "Jul"
 
-#: src/Content/Text/BBCode.php:1702
-msgid "Invalid source protocol"
-msgstr ""
+#: src/Core/L10n.php:391 src/Model/Event.php:411
+msgid "Aug"
+msgstr "Aoû"
 
-#: src/Content/Text/BBCode.php:1713
-msgid "Invalid link protocol"
+#: src/Core/L10n.php:391
+msgid "Sep"
 msgstr ""
 
-#: src/Content/Text/HTML.php:797
-msgid "Loading more entries..."
-msgstr "Chargement de résultats supplémentaires..."
-
-#: src/Content/Text/HTML.php:798
-msgid "The end"
-msgstr "Fin"
-
-#: src/Content/Text/HTML.php:838
-msgid "No contacts"
-msgstr "Aucun contact"
-
-#: src/Content/Text/HTML.php:865
-#, php-format
-msgid "%d Contact"
-msgid_plural "%d Contacts"
-msgstr[0] "%d contact"
-msgstr[1] "%d contacts"
-
-#: src/Content/Text/HTML.php:878
-msgid "View Contacts"
-msgstr "Voir les contacts"
-
-#: src/Content/Text/HTML.php:961
-msgid "Follow"
-msgstr "S'abonner"
-
-#: src/Content/Text/HTML.php:1016 src/Model/Item.php:3480
-#: src/Model/Item.php:3491
-msgid "Click to open/close"
-msgstr "Cliquer pour ouvrir/fermer"
-
-#: src/Content/Widget/CalendarExport.php:66
-msgid "Export"
-msgstr "Exporter"
-
-#: src/Content/Widget/CalendarExport.php:67
-msgid "Export calendar as ical"
-msgstr "Exporter au format iCal"
+#: src/Core/L10n.php:391 src/Model/Event.php:413
+msgid "Oct"
+msgstr "Oct"
 
-#: src/Content/Widget/CalendarExport.php:68
-msgid "Export calendar as csv"
-msgstr "Exporter au format CSV"
+#: src/Core/L10n.php:391 src/Model/Event.php:414
+msgid "Nov"
+msgstr "Nov"
 
-#: src/Content/Widget.php:37
-msgid "Add New Contact"
-msgstr "Ajouter un nouveau contact"
+#: src/Core/L10n.php:391 src/Model/Event.php:415
+msgid "Dec"
+msgstr "Déc"
 
-#: src/Content/Widget.php:38
-msgid "Enter address or web location"
-msgstr "Entrez son adresse ou sa localisation web"
+#: src/Core/L10n.php:410
+msgid "poke"
+msgstr "titiller"
 
-#: src/Content/Widget.php:39
-msgid "Example: bob@example.com, http://example.com/barbara"
-msgstr "Exemple : bob@example.com, http://example.com/barbara"
+#: src/Core/L10n.php:410
+msgid "poked"
+msgstr "a titillé"
 
-#: src/Content/Widget.php:57
-#, php-format
-msgid "%d invitation available"
-msgid_plural "%d invitations available"
-msgstr[0] "%d invitation disponible"
-msgstr[1] "%d invitations disponibles"
+#: src/Core/L10n.php:411
+msgid "ping"
+msgstr "attirer l'attention"
 
-#: src/Content/Widget.php:63 view/theme/vier/theme.php:199
-msgid "Find People"
-msgstr "Trouver des personnes"
+#: src/Core/L10n.php:411
+msgid "pinged"
+msgstr "a attiré l'attention de"
 
-#: src/Content/Widget.php:64 view/theme/vier/theme.php:200
-msgid "Enter name or interest"
-msgstr "Entrez un nom ou un centre d'intérêt"
+#: src/Core/L10n.php:412
+msgid "prod"
+msgstr "aiguillonner"
 
-#: src/Content/Widget.php:66 view/theme/vier/theme.php:202
-msgid "Examples: Robert Morgenstein, Fishing"
-msgstr "Exemples : Robert Morgenstein, Pêche"
+#: src/Core/L10n.php:412
+msgid "prodded"
+msgstr "a aiguillonné"
 
-#: src/Content/Widget.php:69 view/theme/vier/theme.php:205
-msgid "Similar Interests"
-msgstr "Intérêts similaires"
+#: src/Core/L10n.php:413
+msgid "slap"
+msgstr "gifler"
 
-#: src/Content/Widget.php:70 view/theme/vier/theme.php:206
-msgid "Random Profile"
-msgstr "Profil au hasard"
+#: src/Core/L10n.php:413
+msgid "slapped"
+msgstr "a giflé"
 
-#: src/Content/Widget.php:71 view/theme/vier/theme.php:207
-msgid "Invite Friends"
-msgstr "Inviter des amis"
+#: src/Core/L10n.php:414
+msgid "finger"
+msgstr "tripoter"
 
-#: src/Content/Widget.php:74 view/theme/vier/theme.php:210
-msgid "Local Directory"
-msgstr "Annuaire local"
+#: src/Core/L10n.php:414
+msgid "fingered"
+msgstr "a tripoté"
 
-#: src/Content/Widget.php:158
-msgid "Protocols"
-msgstr ""
+#: src/Core/L10n.php:415
+msgid "rebuff"
+msgstr "rabrouer"
 
-#: src/Content/Widget.php:161
-msgid "All Protocols"
-msgstr ""
+#: src/Core/L10n.php:415
+msgid "rebuffed"
+msgstr "a rabroué"
 
-#: src/Content/Widget.php:196
-msgid "Saved Folders"
-msgstr "Dossiers sauvegardés"
+#: src/Core/NotificationsManager.php:175
+msgid "System"
+msgstr "Système"
 
-#: src/Content/Widget.php:199 src/Content/Widget.php:239
-msgid "Everything"
-msgstr "Tout"
+#: src/Core/NotificationsManager.php:196 src/Content/Nav.php:180
+#: src/Content/Nav.php:242
+msgid "Home"
+msgstr "Profil"
 
-#: src/Content/Widget.php:236
-msgid "Categories"
-msgstr "Catégories"
+#: src/Core/NotificationsManager.php:203 src/Content/Nav.php:246
+msgid "Introductions"
+msgstr "Introductions"
 
-#: src/Content/Widget.php:303
+#: src/Core/NotificationsManager.php:265 src/Core/NotificationsManager.php:277
 #, php-format
-msgid "%d contact in common"
-msgid_plural "%d contacts in common"
-msgstr[0] "%d contact en commun"
-msgstr[1] "%d contacts en commun"
+msgid "%s commented on %s's post"
+msgstr "%s a commenté la publication de %s"
 
-#: src/Core/ACL.php:285
-msgid "Post to Email"
-msgstr "Publier aux courriels"
+#: src/Core/NotificationsManager.php:276
+#, php-format
+msgid "%s created a new post"
+msgstr "%s a créé une nouvelle publication"
 
-#: src/Core/ACL.php:291
-msgid "Hide your profile details from unknown viewers?"
-msgstr "Cacher les détails du profil aux visiteurs inconnus?"
+#: src/Core/NotificationsManager.php:290
+#, php-format
+msgid "%s liked %s's post"
+msgstr "%s a aimé la publication de %s"
 
-#: src/Core/ACL.php:290
+#: src/Core/NotificationsManager.php:303
 #, php-format
-msgid "Connectors disabled, since \"%s\" is enabled."
-msgstr "Les connecteurs sont désactivés parce que \"%s\" est activé."
+msgid "%s disliked %s's post"
+msgstr "%s n'a pas aimé la publication de %s"
 
-#: src/Core/ACL.php:297
-msgid "Visible to everybody"
-msgstr "Visible par tout le monde"
+#: src/Core/NotificationsManager.php:316
+#, php-format
+msgid "%s is attending %s's event"
+msgstr "%s participe Ã  l'événement de %s"
 
-#: src/Core/ACL.php:298 view/theme/vier/config.php:116
-msgid "show"
-msgstr "montrer"
+#: src/Core/NotificationsManager.php:329
+#, php-format
+msgid "%s is not attending %s's event"
+msgstr "%s ne participe pas Ã  l'événement de %s"
 
-#: src/Core/ACL.php:299 view/theme/vier/config.php:116
-msgid "don't show"
-msgstr "cacher"
+#: src/Core/NotificationsManager.php:342
+#, php-format
+msgid "%s may attend %s's event"
+msgstr "%s participera peut-être Ã  l'événement de %s"
 
-#: src/Core/ACL.php:309
-msgid "Close"
-msgstr "Fermer"
+#: src/Core/NotificationsManager.php:375
+#, php-format
+msgid "%s is now friends with %s"
+msgstr "%s est désormais ami(e) avec %s"
 
-#: src/Core/Authentication.php:89
-msgid "Welcome "
-msgstr "Bienvenue "
+#: src/Core/NotificationsManager.php:651
+msgid "Friend Suggestion"
+msgstr "Suggestion d'amitié/contact"
 
-#: src/Core/Authentication.php:90
-msgid "Please upload a profile photo."
-msgstr "Merci d'illustrer votre profil d'une image."
+#: src/Core/NotificationsManager.php:685
+msgid "Friend/Connect Request"
+msgstr "Demande de connexion/relation"
 
-#: src/Core/Authentication.php:92
-msgid "Welcome back "
-msgstr "Bienvenue Ã  nouveau, "
+#: src/Core/NotificationsManager.php:685
+msgid "New Follower"
+msgstr "Nouvel abonné"
 
-#: src/Core/Console/ArchiveContact.php:66
-#, php-format
-msgid "Could not find any unarchived contact entry for this URL (%s)"
+#: src/Core/System.php:137
+msgid "Error 400 - Bad Request"
 msgstr ""
 
-#: src/Core/Console/ArchiveContact.php:71
-msgid "The contact entries have been archived"
+#: src/Core/System.php:138
+msgid "Error 401 - Unauthorized"
 msgstr ""
 
-#: src/Core/Console/NewPassword.php:73
-msgid "Enter new password: "
+#: src/Core/System.php:139
+msgid "Error 403 - Forbidden"
 msgstr ""
 
-#: src/Core/Console/NewPassword.php:78 src/Model/User.php:315
-msgid "Password can't be empty"
+#: src/Core/System.php:140
+msgid "Error 404 - Not Found"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:50
-#, php-format
-msgid "Post update version number has been set to %s."
+#: src/Core/System.php:141
+msgid "Error 500 - Internal Server Error"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:58
-msgid "Check for pending update actions."
+#: src/Core/System.php:142
+msgid "Error 503 - Service Unavailable"
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:60
-msgid "Done."
+#: src/Core/System.php:150
+msgid ""
+"The server cannot or will not process the request due to an apparent client "
+"error."
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:62
-msgid "Execute pending post updates."
+#: src/Core/System.php:151
+msgid ""
+"Authentication is required and has failed or has not yet been provided."
 msgstr ""
 
-#: src/Core/Console/PostUpdate.php:68
-msgid "All pending post updates are done."
+#: src/Core/System.php:152
+msgid ""
+"The request was valid, but the server is refusing action. The user might not"
+" have the necessary permissions for a resource, or may need an account."
 msgstr ""
 
-#: src/Core/Installer.php:160
+#: src/Core/System.php:153
 msgid ""
-"The database configuration file \"config/local.config.php\" could not be "
-"written. Please use the enclosed text to create a configuration file in your"
-" web server root."
+"The requested resource could not be found but may be available in the "
+"future."
 msgstr ""
 
-#: src/Core/Installer.php:176
+#: src/Core/System.php:154
 msgid ""
-"You may need to import the file \"database.sql\" manually using phpmyadmin "
-"or mysql."
-msgstr "Vous pourriez avoir besoin d'importer le fichier \"database.sql\" manuellement au moyen de phpmyadmin ou de la commande mysql."
+"An unexpected condition was encountered and no more specific message is "
+"suitable."
+msgstr ""
 
-#: src/Core/Installer.php:177 src/Module/Install.php:134
-#: src/Module/Install.php:264
-msgid "Please see the file \"INSTALL.txt\"."
-msgstr "Référez-vous au fichier \"INSTALL.txt\"."
+#: src/Core/System.php:155
+msgid ""
+"The server is currently unavailable (because it is overloaded or down for "
+"maintenance). Please try again later."
+msgstr ""
 
-#: src/Core/Installer.php:239
-msgid "Could not find a command line version of PHP in the web server PATH."
-msgstr "Impossible de trouver la version \"ligne de commande\" de PHP dans le PATH du serveur web."
+#: src/Core/Update.php:168
+#, php-format
+msgid "Update %s failed. See error logs."
+msgstr "Mise-à-jour %s Ã©chouée. Voir les journaux d'erreur."
 
-#: src/Core/Installer.php:240
+#: src/Core/Update.php:225
+#, php-format
 msgid ""
-"If you don't have a command line version of PHP installed on your server, "
-"you will not be able to run the background processing. See <a "
-"href='https://github.com/friendica/friendica/blob/master/doc/Install.md#set-"
-"up-the-worker'>'Setup the worker'</a>"
+"\n"
+"\t\t\t\tThe friendica developers released update %s recently,\n"
+"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
+"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n"
+"\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
 msgstr ""
 
-#: src/Core/Installer.php:244
-msgid "PHP executable path"
-msgstr "Chemin vers l'exécutable de PHP"
+#: src/Core/Update.php:231
+#, php-format
+msgid ""
+"The error message is\n"
+"[pre]%s[/pre]"
+msgstr "Le message d’erreur est\n[pre]%s[/pre]"
 
-#: src/Core/Installer.php:244
+#: src/Core/Update.php:260
+#, php-format
 msgid ""
-"Enter full path to php executable. You can leave this blank to continue the "
-"installation."
-msgstr "Entrez le chemin (absolu) vers l'exécutable 'php'. Vous pouvez laisser cette ligne vide pour continuer l'installation."
+"\n"
+"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
+msgstr ""
 
-#: src/Core/Installer.php:249
-msgid "Command line PHP"
-msgstr "Version \"ligne de commande\" de PHP"
+#: src/Core/UserImport.php:103
+msgid "Error decoding account file"
+msgstr "Une erreur a Ã©té détecté en décodant un fichier utilisateur"
 
-#: src/Core/Installer.php:258
-msgid "PHP executable is not the php cli binary (could be cgi-fgci version)"
-msgstr "L'executable PHP n'est pas le binaire php client (c'est peut Ãªtre la version cgi-fcgi)"
+#: src/Core/UserImport.php:109
+msgid "Error! No version data in file! This is not a Friendica account file?"
+msgstr "Erreur ! Pas de ficher de version existant ! ÃŠtes vous sur un compte Friendica ?"
 
-#: src/Core/Installer.php:259
-msgid "Found PHP version: "
-msgstr "Version de PHP :"
+#: src/Core/UserImport.php:117
+#, php-format
+msgid "User '%s' already exists on this server!"
+msgstr "L'utilisateur '%s' existe déjà sur ce serveur!"
 
-#: src/Core/Installer.php:261
-msgid "PHP cli binary"
-msgstr "PHP cli binary"
+#: src/Core/UserImport.php:153
+msgid "User creation error"
+msgstr "Erreur de création d'utilisateur"
 
-#: src/Core/Installer.php:274
-msgid ""
-"The command line version of PHP on your system does not have "
-"\"register_argc_argv\" enabled."
-msgstr "La version \"ligne de commande\" de PHP de votre système n'a pas \"register_argc_argv\" d'activé."
+#: src/Core/UserImport.php:171
+msgid "User profile creation error"
+msgstr "Erreur de création du profil utilisateur"
 
-#: src/Core/Installer.php:275
-msgid "This is required for message delivery to work."
-msgstr "Ceci est requis pour que la livraison des messages fonctionne."
+#: src/Core/UserImport.php:215
+#, php-format
+msgid "%d contact not imported"
+msgid_plural "%d contacts not imported"
+msgstr[0] "%d contacts non importés"
+msgstr[1] "%d contacts non importés"
 
-#: src/Core/Installer.php:280
-msgid "PHP register_argc_argv"
-msgstr "PHP register_argc_argv"
+#: src/Core/UserImport.php:280
+msgid "Done. You can now login with your username and password"
+msgstr "Action réalisée. Vous pouvez désormais vous connecter avec votre nom d'utilisateur et votre mot de passe"
 
-#: src/Core/Installer.php:312
-msgid ""
-"Error: the \"openssl_pkey_new\" function on this system is not able to "
-"generate encryption keys"
-msgstr "Erreur: la fonction \"openssl_pkey_new\" de ce système ne permet pas de générer des clés de chiffrement"
+#: src/Util/Temporal.php:147 src/Model/Profile.php:771
+msgid "Birthday:"
+msgstr "Anniversaire :"
 
-#: src/Core/Installer.php:313
-msgid ""
-"If running under Windows, please see "
-"\"http://www.php.net/manual/en/openssl.installation.php\"."
-msgstr "Si vous utilisez Windows, merci de vous réferer Ã  \"http://www.php.net/manual/en/openssl.installation.php\"."
+#: src/Util/Temporal.php:151
+msgid "YYYY-MM-DD or MM-DD"
+msgstr "AAAA-MM-JJ ou MM-JJ"
 
-#: src/Core/Installer.php:316
-msgid "Generate encryption keys"
-msgstr "Générer les clés de chiffrement"
+#: src/Util/Temporal.php:298
+msgid "never"
+msgstr "jamais"
 
-#: src/Core/Installer.php:367
-msgid ""
-"Error: Apache webserver mod-rewrite module is required but not installed."
-msgstr "Erreur : Le module \"rewrite\" du serveur web Apache est requis mais pas installé."
+#: src/Util/Temporal.php:305
+msgid "less than a second ago"
+msgstr "il y a moins d'une seconde"
 
-#: src/Core/Installer.php:372
-msgid "Apache mod_rewrite module"
-msgstr "Module mod_rewrite Apache"
+#: src/Util/Temporal.php:313
+msgid "year"
+msgstr "an"
 
-#: src/Core/Installer.php:378
-msgid "Error: PDO or MySQLi PHP module required but not installed."
-msgstr ""
+#: src/Util/Temporal.php:313
+msgid "years"
+msgstr "ans"
 
-#: src/Core/Installer.php:383
-msgid "Error: The MySQL driver for PDO is not installed."
-msgstr ""
+#: src/Util/Temporal.php:314
+msgid "months"
+msgstr "mois"
 
-#: src/Core/Installer.php:387
-msgid "PDO or MySQLi PHP module"
-msgstr ""
+#: src/Util/Temporal.php:315
+msgid "weeks"
+msgstr "semaines"
 
-#: src/Core/Installer.php:395
-msgid "Error, XML PHP module required but not installed."
-msgstr "Erreur : le module PHP XML requis est absent."
+#: src/Util/Temporal.php:316
+msgid "days"
+msgstr "jours"
 
-#: src/Core/Installer.php:399
-msgid "XML PHP module"
-msgstr "Module PHP XML"
+#: src/Util/Temporal.php:317
+msgid "hour"
+msgstr "heure"
 
-#: src/Core/Installer.php:402
-msgid "libCurl PHP module"
-msgstr "Module libCurl de PHP"
+#: src/Util/Temporal.php:317
+msgid "hours"
+msgstr "heures"
 
-#: src/Core/Installer.php:403
-msgid "Error: libCURL PHP module required but not installed."
-msgstr "Erreur : Le module PHP \"libCURL\" est requis mais pas installé."
+#: src/Util/Temporal.php:318
+msgid "minute"
+msgstr "minute"
 
-#: src/Core/Installer.php:409
-msgid "GD graphics PHP module"
-msgstr "Module GD (graphiques) de PHP"
+#: src/Util/Temporal.php:318
+msgid "minutes"
+msgstr "minutes"
 
-#: src/Core/Installer.php:410
-msgid ""
-"Error: GD graphics PHP module with JPEG support required but not installed."
-msgstr "Erreur : Le module PHP \"GD\" disposant du support JPEG est requis mais pas installé."
+#: src/Util/Temporal.php:319
+msgid "second"
+msgstr "seconde"
 
-#: src/Core/Installer.php:416
-msgid "OpenSSL PHP module"
-msgstr "Module OpenSSL de PHP"
+#: src/Util/Temporal.php:319
+msgid "seconds"
+msgstr "secondes"
 
-#: src/Core/Installer.php:417
-msgid "Error: openssl PHP module required but not installed."
-msgstr "Erreur : Le module PHP \"openssl\" est requis mais pas installé."
+#: src/Util/Temporal.php:329
+#, php-format
+msgid "in %1$d %2$s"
+msgstr ""
 
-#: src/Core/Installer.php:423
-msgid "mb_string PHP module"
-msgstr "Module mb_string de PHP"
+#: src/Util/Temporal.php:332
+#, php-format
+msgid "%1$d %2$s ago"
+msgstr "il y a %1$d %2$s "
 
-#: src/Core/Installer.php:424
-msgid "Error: mb_string PHP module required but not installed."
-msgstr "Erreur : le module PHP mb_string est requis mais pas installé."
+#: src/Content/Text/BBCode.php:429
+msgid "view full size"
+msgstr "voir en pleine taille"
 
-#: src/Core/Installer.php:430
-msgid "iconv PHP module"
-msgstr ""
+#: src/Content/Text/BBCode.php:863 src/Content/Text/BBCode.php:1596
+#: src/Content/Text/BBCode.php:1597
+msgid "Image/photo"
+msgstr "Image/photo"
 
-#: src/Core/Installer.php:431
-msgid "Error: iconv PHP module required but not installed."
-msgstr "Erreur : Le module PHP iconv requis est absent."
+#: src/Content/Text/BBCode.php:967
+#, php-format
+msgid "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
+msgstr "<a href=\"%1$s\" target=\"_blank\">%2$s</a> %3$s"
 
-#: src/Core/Installer.php:437
-msgid "POSIX PHP module"
-msgstr ""
+#: src/Content/Text/BBCode.php:1523 src/Content/Text/BBCode.php:1545
+msgid "$1 wrote:"
+msgstr "$1 a Ã©crit :"
 
-#: src/Core/Installer.php:438
-msgid "Error: POSIX PHP module required but not installed."
-msgstr ""
+#: src/Content/Text/BBCode.php:1607 src/Content/Text/BBCode.php:1608
+msgid "Encrypted content"
+msgstr "Contenu chiffré"
 
-#: src/Core/Installer.php:461
-msgid ""
-"The web installer needs to be able to create a file called "
-"\"local.config.php\" in the \"config\" folder of your web server and it is "
-"unable to do so."
+#: src/Content/Text/BBCode.php:1715
+msgid "Invalid source protocol"
 msgstr ""
 
-#: src/Core/Installer.php:462
-msgid ""
-"This is most often a permission setting, as the web server may not be able "
-"to write files in your folder - even if you can."
-msgstr "Le plus souvent, il s'agit d'un problème de permission. Le serveur web peut ne pas Ãªtre capable d'écrire dans votre répertoire - alors que vous-même le pouvez."
-
-#: src/Core/Installer.php:463
-msgid ""
-"At the end of this procedure, we will give you a text to save in a file "
-"named local.config.php in your Friendica \"config\" folder."
+#: src/Content/Text/BBCode.php:1726
+msgid "Invalid link protocol"
 msgstr ""
 
-#: src/Core/Installer.php:464
-msgid ""
-"You can alternatively skip this procedure and perform a manual installation."
-" Please see the file \"INSTALL.txt\" for instructions."
-msgstr "Vous pouvez Ã©galement sauter cette Ã©tape et procéder Ã  une installation manuelle. Pour cela, merci de lire le fichier \"INSTALL.txt\"."
+#: src/Content/Text/HTML.php:800
+msgid "Loading more entries..."
+msgstr "Chargement de résultats supplémentaires..."
 
-#: src/Core/Installer.php:467
-msgid "config/local.config.php is writable"
-msgstr ""
+#: src/Content/Text/HTML.php:801
+msgid "The end"
+msgstr "Fin"
 
-#: src/Core/Installer.php:487
-msgid ""
-"Friendica uses the Smarty3 template engine to render its web views. Smarty3 "
-"compiles templates to PHP to speed up rendering."
-msgstr "Friendica utilise le moteur de modèles Smarty3 pour le rendu d'affichage web. Smarty3 compile les modèles en PHP pour accélérer le rendu."
+#: src/Content/Text/HTML.php:894
+msgid "Follow"
+msgstr "S'abonner"
 
-#: src/Core/Installer.php:488
-msgid ""
-"In order to store these compiled templates, the web server needs to have "
-"write access to the directory view/smarty3/ under the Friendica top level "
-"folder."
-msgstr "Pour pouvoir stocker ces modèles compilés, le serveur internet doit avoir accès au droit d'écriture pour le répertoire view/smarty3/ sous le dossier racine de Friendica."
+#: src/Content/Text/HTML.php:903 src/Content/Nav.php:79
+msgid "@name, !forum, #tags, content"
+msgstr "@nom, !forum, #tags, contenu"
 
-#: src/Core/Installer.php:489
-msgid ""
-"Please ensure that the user that your web server runs as (e.g. www-data) has"
-" write access to this folder."
-msgstr "Veuillez vous assurer que l'utilisateur qui exécute votre serveur internet (p. ex. www-data) détient le droit d'accès en Ã©criture sur ce dossier."
+#: src/Content/Text/HTML.php:909 src/Content/Nav.php:201
+msgid "Full Text"
+msgstr "Texte Entier"
 
-#: src/Core/Installer.php:490
-msgid ""
-"Note: as a security measure, you should give the web server write access to "
-"view/smarty3/ only--not the template files (.tpl) that it contains."
-msgstr "Note: pour plus de sécurité, vous devriez ne donner le droit d'accès en Ã©criture qu'à view/smarty3/ et pas aux fichiers modèles (.tpl) qu'il contient."
+#: src/Content/Text/HTML.php:910 src/Content/Widget/TagCloud.php:54
+#: src/Content/Nav.php:202
+msgid "Tags"
+msgstr "Tags"
 
-#: src/Core/Installer.php:493
-msgid "view/smarty3 is writable"
-msgstr "view/smarty3 est autorisé Ã  l Ã©criture"
+#: src/Content/Text/HTML.php:951 src/Model/Item.php:3485
+#: src/Model/Item.php:3496
+msgid "Click to open/close"
+msgstr "Cliquer pour ouvrir/fermer"
 
-#: src/Core/Installer.php:521
-msgid ""
-"Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist"
-" to .htaccess."
-msgstr ""
+#: src/Content/Widget/CalendarExport.php:64
+msgid "Export"
+msgstr "Exporter"
 
-#: src/Core/Installer.php:523
-msgid "Error message from Curl when fetching"
-msgstr ""
+#: src/Content/Widget/CalendarExport.php:65
+msgid "Export calendar as ical"
+msgstr "Exporter au format iCal"
 
-#: src/Core/Installer.php:528
-msgid "Url rewrite is working"
-msgstr "La réécriture d'URL fonctionne."
+#: src/Content/Widget/CalendarExport.php:66
+msgid "Export calendar as csv"
+msgstr "Exporter au format CSV"
 
-#: src/Core/Installer.php:557
-msgid "ImageMagick PHP extension is not installed"
-msgstr "L'extension PHP ImageMagick n'est pas installée"
+#: src/Content/Widget/ContactBlock.php:58
+msgid "No contacts"
+msgstr "Aucun contact"
 
-#: src/Core/Installer.php:559
-msgid "ImageMagick PHP extension is installed"
-msgstr "L’extension PHP ImageMagick est installée"
+#: src/Content/Widget/ContactBlock.php:90
+#, php-format
+msgid "%d Contact"
+msgid_plural "%d Contacts"
+msgstr[0] "%d contact"
+msgstr[1] "%d contacts"
 
-#: src/Core/Installer.php:561 tests/src/Core/InstallerTest.php:308
-#: tests/src/Core/InstallerTest.php:332
-msgid "ImageMagick supports GIF"
-msgstr "ImageMagick supporte le format GIF"
+#: src/Content/Widget/ContactBlock.php:109
+msgid "View Contacts"
+msgstr "Voir les contacts"
 
-#: src/Core/Installer.php:583
-msgid "Could not connect to database."
-msgstr "Impossible de se connecter Ã  la base."
+#: src/Content/ContactSelector.php:58
+msgid "Frequently"
+msgstr ""
 
-#: src/Core/Installer.php:590
-msgid "Database already in use."
-msgstr "Base de données déjà en cours d'utilisation."
+#: src/Content/ContactSelector.php:59
+msgid "Hourly"
+msgstr ""
 
-#: src/Core/L10n.php:359 src/Model/Event.php:398
-msgid "Tuesday"
-msgstr "Mardi"
+#: src/Content/ContactSelector.php:60
+msgid "Twice daily"
+msgstr ""
 
-#: src/Core/L10n.php:359 src/Model/Event.php:399
-msgid "Wednesday"
-msgstr "Mercredi"
+#: src/Content/ContactSelector.php:61
+msgid "Daily"
+msgstr ""
 
-#: src/Core/L10n.php:359 src/Model/Event.php:400
-msgid "Thursday"
-msgstr "Jeudi"
+#: src/Content/ContactSelector.php:62
+msgid "Weekly"
+msgstr ""
 
-#: src/Core/L10n.php:359 src/Model/Event.php:401
-msgid "Friday"
-msgstr "Vendredi"
+#: src/Content/ContactSelector.php:63
+msgid "Monthly"
+msgstr ""
 
-#: src/Core/L10n.php:359 src/Model/Event.php:402
-msgid "Saturday"
-msgstr "Samedi"
+#: src/Content/ContactSelector.php:83
+msgid "DFRN"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:417
-msgid "January"
-msgstr "Janvier"
+#: src/Content/ContactSelector.php:84
+msgid "OStatus"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:418
-msgid "February"
-msgstr "Février"
+#: src/Content/ContactSelector.php:85
+msgid "RSS/Atom"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:419
-msgid "March"
-msgstr "Mars"
+#: src/Content/ContactSelector.php:88
+msgid "Zot!"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:420
-msgid "April"
-msgstr "Avril"
+#: src/Content/ContactSelector.php:89
+msgid "LinkedIn"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Core/L10n.php:382 src/Model/Event.php:408
-#: src/Model/Event.php:421
-msgid "May"
-msgstr "Mai"
+#: src/Content/ContactSelector.php:90
+msgid "XMPP/IM"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:422
-msgid "June"
-msgstr "Juin"
+#: src/Content/ContactSelector.php:91
+msgid "MySpace"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:423
-msgid "July"
-msgstr "Juillet"
+#: src/Content/ContactSelector.php:92
+msgid "Google+"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:424
-msgid "August"
-msgstr "Août"
+#: src/Content/ContactSelector.php:93
+msgid "pump.io"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:425
-msgid "September"
-msgstr "Septembre"
+#: src/Content/ContactSelector.php:94
+msgid "Twitter"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:426
-msgid "October"
-msgstr "Octobre"
+#: src/Content/ContactSelector.php:95
+msgid "Diaspora Connector"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:427
-msgid "November"
-msgstr "Novembre"
+#: src/Content/ContactSelector.php:96
+msgid "GNU Social Connector"
+msgstr ""
 
-#: src/Core/L10n.php:363 src/Model/Event.php:428
-msgid "December"
-msgstr "Décembre"
+#: src/Content/ContactSelector.php:97
+msgid "ActivityPub"
+msgstr ""
 
-#: src/Core/L10n.php:378 src/Model/Event.php:389
-msgid "Mon"
-msgstr "Lun"
+#: src/Content/ContactSelector.php:98
+msgid "pnut"
+msgstr ""
 
-#: src/Core/L10n.php:378 src/Model/Event.php:390
-msgid "Tue"
-msgstr "Mar"
+#: src/Content/ContactSelector.php:154
+msgid "Male"
+msgstr ""
 
-#: src/Core/L10n.php:378 src/Model/Event.php:391
-msgid "Wed"
-msgstr "Mer"
+#: src/Content/ContactSelector.php:155
+msgid "Female"
+msgstr ""
 
-#: src/Core/L10n.php:378 src/Model/Event.php:392
-msgid "Thu"
-msgstr "Jeu"
+#: src/Content/ContactSelector.php:156
+msgid "Currently Male"
+msgstr ""
 
-#: src/Core/L10n.php:378 src/Model/Event.php:393
-msgid "Fri"
-msgstr "Ven"
+#: src/Content/ContactSelector.php:157
+msgid "Currently Female"
+msgstr ""
 
-#: src/Core/L10n.php:378 src/Model/Event.php:394
-msgid "Sat"
-msgstr "Sam"
+#: src/Content/ContactSelector.php:158
+msgid "Mostly Male"
+msgstr ""
 
-#: src/Core/L10n.php:378 src/Model/Event.php:388
-msgid "Sun"
-msgstr "Dim"
+#: src/Content/ContactSelector.php:159
+msgid "Mostly Female"
+msgstr ""
 
-#: src/Core/L10n.php:382 src/Model/Event.php:404
-msgid "Jan"
-msgstr "Jan"
+#: src/Content/ContactSelector.php:160
+msgid "Transgender"
+msgstr ""
 
-#: src/Core/L10n.php:382 src/Model/Event.php:405
-msgid "Feb"
-msgstr "Fév"
+#: src/Content/ContactSelector.php:161
+msgid "Intersex"
+msgstr ""
 
-#: src/Core/L10n.php:382 src/Model/Event.php:406
-msgid "Mar"
-msgstr "Mar"
+#: src/Content/ContactSelector.php:162
+msgid "Transsexual"
+msgstr ""
 
-#: src/Core/L10n.php:382 src/Model/Event.php:407
-msgid "Apr"
-msgstr "Avr"
+#: src/Content/ContactSelector.php:163
+msgid "Hermaphrodite"
+msgstr ""
 
-#: src/Core/L10n.php:382 src/Model/Event.php:410
-msgid "Jul"
-msgstr "Jul"
+#: src/Content/ContactSelector.php:164
+msgid "Neuter"
+msgstr ""
 
-#: src/Core/L10n.php:382 src/Model/Event.php:411
-msgid "Aug"
-msgstr "Aoû"
+#: src/Content/ContactSelector.php:165
+msgid "Non-specific"
+msgstr "Non-spécifique"
 
-#: src/Core/L10n.php:382
-msgid "Sep"
-msgstr ""
+#: src/Content/ContactSelector.php:166
+msgid "Other"
+msgstr "Autre"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:413
-msgid "Oct"
-msgstr "Oct"
+#: src/Content/ContactSelector.php:194
+msgid "Males"
+msgstr "Hommes"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:414
-msgid "Nov"
-msgstr "Nov"
+#: src/Content/ContactSelector.php:195
+msgid "Females"
+msgstr "Femmes"
 
-#: src/Core/L10n.php:382 src/Model/Event.php:415
-msgid "Dec"
-msgstr "Déc"
+#: src/Content/ContactSelector.php:196
+msgid "Gay"
+msgstr "Gay"
 
-#: src/Core/L10n.php:400
-msgid "poke"
-msgstr "titiller"
+#: src/Content/ContactSelector.php:197
+msgid "Lesbian"
+msgstr "Lesbienne"
 
-#: src/Core/L10n.php:400
-msgid "poked"
-msgstr "a titillé"
+#: src/Content/ContactSelector.php:198
+msgid "No Preference"
+msgstr "Sans préférence"
 
-#: src/Core/L10n.php:401
-msgid "ping"
-msgstr "attirer l'attention"
+#: src/Content/ContactSelector.php:199
+msgid "Bisexual"
+msgstr "Bisexuel"
 
-#: src/Core/L10n.php:401
-msgid "pinged"
-msgstr "a attiré l'attention de"
+#: src/Content/ContactSelector.php:200
+msgid "Autosexual"
+msgstr "Auto-sexuel"
 
-#: src/Core/L10n.php:402
-msgid "prod"
-msgstr "aiguillonner"
+#: src/Content/ContactSelector.php:201
+msgid "Abstinent"
+msgstr "Abstinent"
 
-#: src/Core/L10n.php:402
-msgid "prodded"
-msgstr "a aiguillonné"
+#: src/Content/ContactSelector.php:202
+msgid "Virgin"
+msgstr "Vierge"
 
-#: src/Core/L10n.php:403
-msgid "slap"
-msgstr "gifler"
+#: src/Content/ContactSelector.php:203
+msgid "Deviant"
+msgstr "Déviant"
 
-#: src/Core/L10n.php:403
-msgid "slapped"
-msgstr "a giflé"
+#: src/Content/ContactSelector.php:204
+msgid "Fetish"
+msgstr "Fétichiste"
 
-#: src/Core/L10n.php:404
-msgid "finger"
-msgstr "tripoter"
+#: src/Content/ContactSelector.php:205
+msgid "Oodles"
+msgstr "Oodles"
 
-#: src/Core/L10n.php:404
-msgid "fingered"
-msgstr "a tripoté"
+#: src/Content/ContactSelector.php:206
+msgid "Nonsexual"
+msgstr "Non-sexuel"
 
-#: src/Core/L10n.php:405
-msgid "rebuff"
-msgstr "rabrouer"
+#: src/Content/ContactSelector.php:232
+msgid "Single"
+msgstr "Célibataire"
 
-#: src/Core/L10n.php:405
-msgid "rebuffed"
-msgstr "a rabroué"
+#: src/Content/ContactSelector.php:233
+msgid "Lonely"
+msgstr "Esseulé"
 
-#: src/Core/NotificationsManager.php:173
-msgid "System"
-msgstr "Système"
+#: src/Content/ContactSelector.php:234
+msgid "Available"
+msgstr "Disponible"
 
-#: src/Core/NotificationsManager.php:263 src/Core/NotificationsManager.php:275
-#, php-format
-msgid "%s commented on %s's post"
-msgstr "%s a commenté la publication de %s"
+#: src/Content/ContactSelector.php:235
+msgid "Unavailable"
+msgstr "Indisponible"
 
-#: src/Core/NotificationsManager.php:274
-#, php-format
-msgid "%s created a new post"
-msgstr "%s a créé une nouvelle publication"
+#: src/Content/ContactSelector.php:236
+msgid "Has crush"
+msgstr "Attiré par quelqu'un"
 
-#: src/Core/NotificationsManager.php:288
-#, php-format
-msgid "%s liked %s's post"
-msgstr "%s a aimé la publication de %s"
+#: src/Content/ContactSelector.php:237
+msgid "Infatuated"
+msgstr "Entiché"
 
-#: src/Core/NotificationsManager.php:301
-#, php-format
-msgid "%s disliked %s's post"
-msgstr "%s n'a pas aimé la publication de %s"
+#: src/Content/ContactSelector.php:238
+msgid "Dating"
+msgstr "Dans une relation"
 
-#: src/Core/NotificationsManager.php:314
-#, php-format
-msgid "%s is attending %s's event"
-msgstr "%s participe Ã  l'événement de %s"
+#: src/Content/ContactSelector.php:239
+msgid "Unfaithful"
+msgstr "Infidèle"
 
-#: src/Core/NotificationsManager.php:327
-#, php-format
-msgid "%s is not attending %s's event"
-msgstr "%s ne participe pas Ã  l'événement de %s"
+#: src/Content/ContactSelector.php:240
+msgid "Sex Addict"
+msgstr "Accro au sexe"
 
-#: src/Core/NotificationsManager.php:340
-#, php-format
-msgid "%s may attend %s's event"
-msgstr "%s participera peut-être Ã  l'événement de %s"
+#: src/Content/ContactSelector.php:241 src/Model/User.php:701
+msgid "Friends"
+msgstr "Amis"
 
-#: src/Core/NotificationsManager.php:373
-#, php-format
-msgid "%s is now friends with %s"
-msgstr "%s est désormais ami(e) avec %s"
+#: src/Content/ContactSelector.php:242
+msgid "Friends/Benefits"
+msgstr "Amis par intérêt"
 
-#: src/Core/NotificationsManager.php:639
-msgid "Friend Suggestion"
-msgstr "Suggestion d'amitié/contact"
+#: src/Content/ContactSelector.php:243
+msgid "Casual"
+msgstr "Casual"
 
-#: src/Core/NotificationsManager.php:673
-msgid "Friend/Connect Request"
-msgstr "Demande de connexion/relation"
+#: src/Content/ContactSelector.php:244
+msgid "Engaged"
+msgstr "Fiancé"
 
-#: src/Core/NotificationsManager.php:673
-msgid "New Follower"
-msgstr "Nouvel abonné"
+#: src/Content/ContactSelector.php:245
+msgid "Married"
+msgstr "Marié"
 
-#: src/Core/Update.php:157
-#, php-format
-msgid "Update %s failed. See error logs."
-msgstr "Mise-à-jour %s Ã©chouée. Voir les journaux d'erreur."
+#: src/Content/ContactSelector.php:246
+msgid "Imaginarily married"
+msgstr "Se croit marié"
 
-#: src/Core/Update.php:213
-#, php-format
-msgid ""
-"\n"
-"\t\t\t\tThe friendica developers released update %s recently,\n"
-"\t\t\t\tbut when I tried to install it, something went terribly wrong.\n"
-"\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n"
-"\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."
-msgstr ""
+#: src/Content/ContactSelector.php:247
+msgid "Partners"
+msgstr "Partenaire"
 
-#: src/Core/Update.php:219
-#, php-format
-msgid ""
-"The error message is\n"
-"[pre]%s[/pre]"
-msgstr "Le message d’erreur est\n[pre]%s[/pre]"
+#: src/Content/ContactSelector.php:248
+msgid "Cohabiting"
+msgstr "En cohabitation"
 
-#: src/Core/Update.php:248
-#, php-format
-msgid ""
-"\n"
-"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
-msgstr ""
+#: src/Content/ContactSelector.php:249
+msgid "Common law"
+msgstr "Marié \"de fait\"/\"sui juris\" (concubin)"
 
-#: src/Core/UserImport.php:103
-msgid "Error decoding account file"
-msgstr "Une erreur a Ã©té détecté en décodant un fichier utilisateur"
+#: src/Content/ContactSelector.php:250
+msgid "Happy"
+msgstr "Heureux"
 
-#: src/Core/UserImport.php:109
-msgid "Error! No version data in file! This is not a Friendica account file?"
-msgstr "Erreur ! Pas de ficher de version existant ! ÃŠtes vous sur un compte Friendica ?"
+#: src/Content/ContactSelector.php:251
+msgid "Not looking"
+msgstr "Pas intéressé"
 
-#: src/Core/UserImport.php:117
-#, php-format
-msgid "User '%s' already exists on this server!"
-msgstr "L'utilisateur '%s' existe déjà sur ce serveur!"
-
-#: src/Core/UserImport.php:153
-msgid "User creation error"
-msgstr "Erreur de création d'utilisateur"
-
-#: src/Core/UserImport.php:171
-msgid "User profile creation error"
-msgstr "Erreur de création du profil utilisateur"
+#: src/Content/ContactSelector.php:252
+msgid "Swinger"
+msgstr "Échangiste"
 
-#: src/Core/UserImport.php:215
-#, php-format
-msgid "%d contact not imported"
-msgid_plural "%d contacts not imported"
-msgstr[0] "%d contacts non importés"
-msgstr[1] "%d contacts non importés"
+#: src/Content/ContactSelector.php:253
+msgid "Betrayed"
+msgstr "Trahi(e)"
 
-#: src/Core/UserImport.php:280
-msgid "Done. You can now login with your username and password"
-msgstr "Action réalisée. Vous pouvez désormais vous connecter avec votre nom d'utilisateur et votre mot de passe"
+#: src/Content/ContactSelector.php:254
+msgid "Separated"
+msgstr "Séparé"
 
-#: src/Database/DBStructure.php:45
-msgid "There are no tables on MyISAM."
-msgstr ""
+#: src/Content/ContactSelector.php:255
+msgid "Unstable"
+msgstr "Instable"
 
-#: src/Database/DBStructure.php:153
-#, php-format
-msgid ""
-"\n"
-"Error %d occurred during database update:\n"
-"%s\n"
-msgstr "\nErreur %d survenue durant la mise Ã  jour de la base de données :\n%s\n"
+#: src/Content/ContactSelector.php:256
+msgid "Divorced"
+msgstr "Divorcé"
 
-#: src/Database/DBStructure.php:156
-msgid "Errors encountered performing database changes: "
-msgstr ""
+#: src/Content/ContactSelector.php:257
+msgid "Imaginarily divorced"
+msgstr "Se croit divorcé"
 
-#: src/Database/DBStructure.php:172
-#, php-format
-msgid "%s: Database update"
-msgstr ""
+#: src/Content/ContactSelector.php:258
+msgid "Widowed"
+msgstr "Veuf/Veuve"
 
-#: src/Database/DBStructure.php:435
-#, php-format
-msgid "%s: updating %s table."
-msgstr ""
+#: src/Content/ContactSelector.php:259
+msgid "Uncertain"
+msgstr "Incertain"
 
-#: src/LegacyModule.php:29
-#, php-format
-msgid "Legacy module file not found: %s"
-msgstr ""
+#: src/Content/ContactSelector.php:260
+msgid "It's complicated"
+msgstr "C'est compliqué"
 
-#: src/Model/Contact.php:955
-msgid "Drop Contact"
-msgstr "Supprimer le contact"
+#: src/Content/ContactSelector.php:261
+msgid "Don't care"
+msgstr "S'en désintéresse"
 
-#: src/Model/Contact.php:1418
-msgid "Organisation"
-msgstr ""
+#: src/Content/ContactSelector.php:262
+msgid "Ask me"
+msgstr "Me demander"
 
-#: src/Model/Contact.php:1422
-msgid "News"
-msgstr "Nouvelles"
+#: src/Content/Feature.php:82
+msgid "General Features"
+msgstr "Fonctions générales"
 
-#: src/Model/Contact.php:1426
-msgid "Forum"
-msgstr "Forum"
+#: src/Content/Feature.php:84
+msgid "Multiple Profiles"
+msgstr "Profils multiples"
 
-#: src/Model/Contact.php:1608
-msgid "Connect URL missing."
-msgstr "URL de connexion manquante."
+#: src/Content/Feature.php:84
+msgid "Ability to create multiple profiles"
+msgstr "Possibilité de créer plusieurs profils"
 
-#: src/Model/Contact.php:1617
-msgid ""
-"The contact could not be added. Please check the relevant network "
-"credentials in your Settings -> Social Networks page."
-msgstr ""
+#: src/Content/Feature.php:85
+msgid "Photo Location"
+msgstr "Lieu de prise de la photo"
 
-#: src/Model/Contact.php:1656
+#: src/Content/Feature.php:85
 msgid ""
-"This site is not configured to allow communications with other networks."
-msgstr "Ce site n'est pas configuré pour dialoguer avec d'autres réseaux."
+"Photo metadata is normally stripped. This extracts the location (if present)"
+" prior to stripping metadata and links it to a map."
+msgstr "Les métadonnées des photos sont normalement retirées. Ceci permet de sauver l'emplacement (si présent) et de positionner la photo sur une carte."
 
-#: src/Model/Contact.php:1657 src/Model/Contact.php:1671
-msgid "No compatible communication protocols or feeds were discovered."
-msgstr "Aucun protocole de communication ni aucun flux n'a pu Ãªtre découvert."
+#: src/Content/Feature.php:86
+msgid "Export Public Calendar"
+msgstr "Exporter le Calendrier Public"
 
-#: src/Model/Contact.php:1669
-msgid "The profile address specified does not provide adequate information."
-msgstr "L'adresse de profil indiquée ne fournit par les informations adéquates."
+#: src/Content/Feature.php:86
+msgid "Ability for visitors to download the public calendar"
+msgstr "Les visiteurs peuvent télécharger le calendrier public"
 
-#: src/Model/Contact.php:1674
-msgid "An author or name was not found."
-msgstr "Aucun auteur ou nom d'auteur n'a pu Ãªtre trouvé."
+#: src/Content/Feature.php:91
+msgid "Post Composition Features"
+msgstr "Caractéristiques de composition de publication"
 
-#: src/Model/Contact.php:1677
-msgid "No browser URL could be matched to this address."
-msgstr "Aucune URL de navigation ne correspond Ã  cette adresse."
+#: src/Content/Feature.php:92
+msgid "Auto-mention Forums"
+msgstr "Mentionner automatiquement les Forums"
 
-#: src/Model/Contact.php:1680
+#: src/Content/Feature.php:92
 msgid ""
-"Unable to match @-style Identity Address with a known protocol or email "
-"contact."
-msgstr "Impossible de faire correspondre l'adresse d'identité en \"@\" avec un protocole connu ou un contact courriel."
+"Add/remove mention when a forum page is selected/deselected in ACL window."
+msgstr "Ajoute/retire une mention quand une page forum est sélectionnée/désélectionnée lors du choix des destinataires d'une publication."
 
-#: src/Model/Contact.php:1681
-msgid "Use mailto: in front of address to force email check."
-msgstr "Utilisez mailto: en face d'une adresse pour l'obliger Ã  Ãªtre reconnue comme courriel."
+#: src/Content/Feature.php:93
+msgid "Explicit Mentions"
+msgstr ""
 
-#: src/Model/Contact.php:1687
+#: src/Content/Feature.php:93
 msgid ""
-"The profile address specified belongs to a network which has been disabled "
-"on this site."
-msgstr "L'adresse de profil spécifiée correspond Ã  un réseau qui a Ã©té désactivé sur ce site."
+"Add explicit mentions to comment box for manual control over who gets "
+"mentioned in replies."
+msgstr ""
 
-#: src/Model/Contact.php:1692
-msgid ""
-"Limited profile. This person will be unable to receive direct/personal "
-"notifications from you."
-msgstr "Profil limité. Cette personne ne sera pas capable de recevoir des notifications directes/personnelles de votre part."
+#: src/Content/Feature.php:98
+msgid "Network Sidebar"
+msgstr ""
 
-#: src/Model/Contact.php:1743
-msgid "Unable to retrieve contact information."
-msgstr "Impossible de récupérer les informations du contact."
+#: src/Content/Feature.php:99
+msgid "Ability to select posts by date ranges"
+msgstr "Capacité de sélectionner les publications par intervalles de dates"
 
-#: src/Model/Event.php:63 src/Model/Event.php:80 src/Model/Event.php:437
-#: src/Model/Event.php:912
-msgid "Starts:"
-msgstr "Débute :"
+#: src/Content/Feature.php:100
+msgid "Protocol Filter"
+msgstr ""
 
-#: src/Model/Event.php:66 src/Model/Event.php:86 src/Model/Event.php:438
-#: src/Model/Event.php:916
-msgid "Finishes:"
-msgstr "Finit :"
+#: src/Content/Feature.php:100
+msgid "Enable widget to display Network posts only from selected protocols"
+msgstr ""
 
-#: src/Model/Event.php:386
-msgid "all-day"
-msgstr "toute la journée"
+#: src/Content/Feature.php:105
+msgid "Network Tabs"
+msgstr "Onglets Réseau"
 
-#: src/Model/Event.php:409
-msgid "Jun"
-msgstr "Jun"
+#: src/Content/Feature.php:106
+msgid "Network New Tab"
+msgstr "Nouvel onglet réseaux"
 
-#: src/Model/Event.php:412
-msgid "Sept"
-msgstr "Sep"
+#: src/Content/Feature.php:106
+msgid "Enable tab to display only new Network posts (from the last 12 hours)"
+msgstr "Activer l'onglet pour afficher seulement les publications du réseau (dans les 12 dernières heures)"
 
-#: src/Model/Event.php:435
-msgid "No events to display"
-msgstr "Pas d'événement Ã  afficher"
+#: src/Content/Feature.php:107
+msgid "Network Shared Links Tab"
+msgstr "Onglet réseau partagé"
 
-#: src/Model/Event.php:559
-msgid "l, F j"
-msgstr "l, F j"
+#: src/Content/Feature.php:107
+msgid "Enable tab to display only Network posts with links in them"
+msgstr "Activer l'onglet pour afficher seulement les publications du réseau contenant des liens"
 
-#: src/Model/Event.php:590
-msgid "Edit event"
-msgstr "Editer l'événement"
+#: src/Content/Feature.php:112
+msgid "Post/Comment Tools"
+msgstr "Outils de publication/commentaire"
 
-#: src/Model/Event.php:591
-msgid "Duplicate event"
-msgstr "Dupliquer l'événement"
+#: src/Content/Feature.php:113
+msgid "Post Categories"
+msgstr "Catégories des publications"
 
-#: src/Model/Event.php:592
-msgid "Delete event"
-msgstr "Supprimer l'événement"
+#: src/Content/Feature.php:113
+msgid "Add categories to your posts"
+msgstr "Ajouter des catégories Ã  vos publications"
 
-#: src/Model/Event.php:624 src/Model/Item.php:3529 src/Model/Item.php:3536
-msgid "link to source"
-msgstr "lien original"
+#: src/Content/Feature.php:118
+msgid "Advanced Profile Settings"
+msgstr "Paramètres Avancés du Profil"
 
-#: src/Model/Event.php:845
-msgid "D g:i A"
-msgstr ""
+#: src/Content/Feature.php:119
+msgid "List Forums"
+msgstr "Liste des forums"
 
-#: src/Model/Event.php:846
-msgid "g:i A"
+#: src/Content/Feature.php:119
+msgid "Show visitors public community forums at the Advanced Profile Page"
+msgstr "Montrer les forums communautaires aux visiteurs sur la Page de profil avancé"
+
+#: src/Content/Feature.php:120
+msgid "Tag Cloud"
 msgstr ""
 
-#: src/Model/Event.php:931 src/Model/Event.php:933
-msgid "Show map"
-msgstr "Montrer la carte"
+#: src/Content/Feature.php:120
+msgid "Provide a personal tag cloud on your profile page"
+msgstr ""
 
-#: src/Model/Event.php:932
-msgid "Hide map"
-msgstr "Cacher la carte"
+#: src/Content/Feature.php:121
+msgid "Display Membership Date"
+msgstr ""
 
-#: src/Model/Event.php:1022
-#, php-format
-msgid "%s's birthday"
-msgstr "Anniversaire de %s's"
+#: src/Content/Feature.php:121
+msgid "Display membership date in profile"
+msgstr ""
 
-#: src/Model/Event.php:1023
-#, php-format
-msgid "Happy Birthday %s"
-msgstr "Joyeux anniversaire, %s !"
+#: src/Content/Nav.php:74
+msgid "Nothing new here"
+msgstr "Rien de neuf ici"
 
-#: src/Model/FileTag.php:255
-msgid "Item filed"
-msgstr "Élément classé"
+#: src/Content/Nav.php:78
+msgid "Clear notifications"
+msgstr "Effacer les notifications"
 
-#: src/Model/Group.php:47
-msgid ""
-"A deleted group with this name was revived. Existing item permissions "
-"<strong>may</strong> apply to this group and any future members. If this is "
-"not what you intended, please create another group with a different name."
-msgstr "Un groupe supprimé a Ã©té recréé. Les permissions existantes <strong>pourraient</strong> s'appliquer Ã  ce groupe et aux futurs membres. Si ce n'est pas le comportement attendu, merci de re-créer un autre groupe sous un autre nom."
+#: src/Content/Nav.php:161
+msgid "Personal notes"
+msgstr "Notes personnelles"
 
-#: src/Model/Group.php:333
-msgid "Default privacy group for new contacts"
-msgstr "Paramètres de confidentialité par défaut pour les nouveaux contacts"
+#: src/Content/Nav.php:161
+msgid "Your personal notes"
+msgstr "Vos notes personnelles"
 
-#: src/Model/Group.php:366
-msgid "Everybody"
-msgstr "Tout le monde"
+#: src/Content/Nav.php:170
+msgid "Sign in"
+msgstr "Se connecter"
 
-#: src/Model/Group.php:386
-msgid "edit"
-msgstr "éditer"
+#: src/Content/Nav.php:180
+msgid "Home Page"
+msgstr "Page d'accueil"
 
-#: src/Model/Group.php:415
-msgid "Edit group"
-msgstr "Editer groupe"
+#: src/Content/Nav.php:184 src/Module/Login.php:293
+#: src/Module/Register.php:136
+msgid "Register"
+msgstr "S'inscrire"
 
-#: src/Model/Group.php:418
-msgid "Create a new group"
-msgstr "Créer un nouveau groupe"
+#: src/Content/Nav.php:184
+msgid "Create an account"
+msgstr "Créer un compte"
 
-#: src/Model/Group.php:420
-msgid "Edit groups"
-msgstr "Modifier les groupes"
+#: src/Content/Nav.php:190
+msgid "Help and documentation"
+msgstr "Aide et documentation"
 
-#: src/Model/Item.php:3267
-msgid "activity"
-msgstr "activité"
+#: src/Content/Nav.php:194
+msgid "Apps"
+msgstr "Applications"
 
-#: src/Model/Item.php:3269 src/Object/Post.php:446 src/Object/Post.php:458
-msgid "comment"
-msgid_plural "comments"
-msgstr[0] ""
-msgstr[1] "commentaire"
+#: src/Content/Nav.php:194
+msgid "Addon applications, utilities, games"
+msgstr "Applications supplémentaires, utilitaires, jeux"
 
-#: src/Model/Item.php:3272
-msgid "post"
-msgstr "publication"
+#: src/Content/Nav.php:198
+msgid "Search site content"
+msgstr "Rechercher dans le contenu du site"
 
-#: src/Model/Item.php:3368
-#, php-format
-msgid "Content warning: %s"
-msgstr "Avertissement de contenu: %s"
+#: src/Content/Nav.php:222
+msgid "Community"
+msgstr "Communauté"
 
-#: src/Model/Item.php:3447
-msgid "bytes"
-msgstr "octets"
+#: src/Content/Nav.php:222
+msgid "Conversations on this and other servers"
+msgstr ""
 
-#: src/Model/Item.php:3523
-msgid "View on separate page"
-msgstr "Voir dans une nouvelle page"
+#: src/Content/Nav.php:229
+msgid "Directory"
+msgstr "Annuaire"
 
-#: src/Model/Item.php:3524
-msgid "view on separate page"
-msgstr "voir dans une nouvelle page"
+#: src/Content/Nav.php:229
+msgid "People directory"
+msgstr "Annuaire des utilisateurs"
 
-#: src/Model/Mail.php:40 src/Model/Mail.php:172
-msgid "[no subject]"
-msgstr "[pas de sujet]"
+#: src/Content/Nav.php:231
+msgid "Information about this friendica instance"
+msgstr "Information au sujet de cette instance de friendica"
 
-#: src/Model/Profile.php:114
-msgid "Requested account is not available."
-msgstr "Le compte demandé n'est pas disponible."
+#: src/Content/Nav.php:234
+msgid "Terms of Service of this Friendica instance"
+msgstr ""
 
-#: src/Model/Profile.php:180 src/Model/Profile.php:416
-#: src/Model/Profile.php:872
-msgid "Edit profile"
-msgstr "Editer le profil"
+#: src/Content/Nav.php:240
+msgid "Network Reset"
+msgstr "Réinitialiser le réseau"
 
-#: src/Model/Profile.php:350
-msgid "Atom feed"
-msgstr "Flux Atom"
+#: src/Content/Nav.php:240
+msgid "Load Network page with no filters"
+msgstr "Chargement des pages du réseau sans filtre"
 
-#: src/Model/Profile.php:389
-msgid "Manage/edit profiles"
-msgstr "Gérer/éditer les profils"
+#: src/Content/Nav.php:246
+msgid "Friend Requests"
+msgstr "Demande d'amitié"
 
-#: src/Model/Profile.php:441 src/Module/Contact.php:652
-msgid "XMPP:"
-msgstr "XMPP"
+#: src/Content/Nav.php:248
+msgid "See all notifications"
+msgstr "Voir toutes les notifications"
 
-#: src/Model/Profile.php:567 src/Model/Profile.php:665
-msgid "g A l F d"
-msgstr "g A | F d"
+#: src/Content/Nav.php:249
+msgid "Mark all system notifications seen"
+msgstr "Marquer toutes les notifications système comme 'vues'"
 
-#: src/Model/Profile.php:568
-msgid "F d"
-msgstr "F d"
+#: src/Content/Nav.php:253
+msgid "Inbox"
+msgstr "Messages entrants"
 
-#: src/Model/Profile.php:630 src/Model/Profile.php:716
-msgid "[today]"
-msgstr "[aujourd'hui]"
+#: src/Content/Nav.php:254
+msgid "Outbox"
+msgstr "Messages sortants"
 
-#: src/Model/Profile.php:641
-msgid "Birthday Reminders"
-msgstr "Rappels d'anniversaires"
+#: src/Content/Nav.php:258
+msgid "Manage"
+msgstr "Gérer"
 
-#: src/Model/Profile.php:642
-msgid "Birthdays this week:"
-msgstr "Anniversaires cette semaine :"
+#: src/Content/Nav.php:258
+msgid "Manage other pages"
+msgstr "Gérer les autres pages"
 
-#: src/Model/Profile.php:703
-msgid "[No description]"
-msgstr "[Sans description]"
+#: src/Content/Nav.php:266
+msgid "Manage/Edit Profiles"
+msgstr "Gérer/Éditer les profiles"
 
-#: src/Model/Profile.php:730
-msgid "Event Reminders"
-msgstr "Rappels d'événements"
+#: src/Content/Nav.php:274
+msgid "Site setup and configuration"
+msgstr "Démarrage et configuration du site"
 
-#: src/Model/Profile.php:731
-msgid "Upcoming events the next 7 days:"
-msgstr ""
+#: src/Content/Nav.php:277
+msgid "Navigation"
+msgstr "Navigation"
 
-#: src/Model/Profile.php:754
-msgid "Member since:"
-msgstr ""
+#: src/Content/Nav.php:277
+msgid "Site map"
+msgstr "Carte du site"
 
-#: src/Model/Profile.php:762
-msgid "j F, Y"
-msgstr "j F, Y"
+#: src/Content/OEmbed.php:256
+msgid "Embedding disabled"
+msgstr "Incorporation désactivée"
 
-#: src/Model/Profile.php:763
-msgid "j F"
-msgstr "j F"
+#: src/Content/OEmbed.php:379
+msgid "Embedded content"
+msgstr "Contenu incorporé"
 
-#: src/Model/Profile.php:771 src/Util/Temporal.php:149
-msgid "Birthday:"
-msgstr "Anniversaire :"
+#: src/Content/Pager.php:153
+msgid "newer"
+msgstr "Plus récent"
 
-#: src/Model/Profile.php:778
-msgid "Age:"
-msgstr "Age :"
+#: src/Content/Pager.php:158
+msgid "older"
+msgstr "Plus ancien"
 
-#: src/Model/Profile.php:791
-#, php-format
-msgid "for %1$d %2$s"
-msgstr "depuis %1$d %2$s"
+#: src/Content/Pager.php:203
+msgid "prev"
+msgstr "précédent"
 
-#: src/Model/Profile.php:815
-msgid "Religion:"
-msgstr "Religion :"
+#: src/Content/Pager.php:263
+msgid "last"
+msgstr "dernier"
 
-#: src/Model/Profile.php:823
-msgid "Hobbies/Interests:"
-msgstr "Passe-temps/Centres d'intérêt :"
+#: src/Content/Widget.php:35
+msgid "Add New Contact"
+msgstr "Ajouter un nouveau contact"
 
-#: src/Model/Profile.php:835
-msgid "Contact information and Social Networks:"
-msgstr "Coordonnées/Réseaux sociaux :"
+#: src/Content/Widget.php:36
+msgid "Enter address or web location"
+msgstr "Entrez son adresse ou sa localisation web"
 
-#: src/Model/Profile.php:839
-msgid "Musical interests:"
-msgstr "Goûts musicaux :"
+#: src/Content/Widget.php:37
+msgid "Example: bob@example.com, http://example.com/barbara"
+msgstr "Exemple : bob@example.com, http://example.com/barbara"
 
-#: src/Model/Profile.php:843
-msgid "Books, literature:"
-msgstr "Lectures :"
+#: src/Content/Widget.php:55
+#, php-format
+msgid "%d invitation available"
+msgid_plural "%d invitations available"
+msgstr[0] "%d invitation disponible"
+msgstr[1] "%d invitations disponibles"
 
-#: src/Model/Profile.php:847
-msgid "Television:"
-msgstr "Télévision :"
+#: src/Content/Widget.php:158
+msgid "Protocols"
+msgstr ""
 
-#: src/Model/Profile.php:851
-msgid "Film/dance/culture/entertainment:"
-msgstr "Cinéma/Danse/Culture/Divertissement :"
+#: src/Content/Widget.php:161
+msgid "All Protocols"
+msgstr ""
 
-#: src/Model/Profile.php:855
-msgid "Love/Romance:"
-msgstr "Amour/Romance :"
+#: src/Content/Widget.php:198
+msgid "Saved Folders"
+msgstr "Dossiers sauvegardés"
 
-#: src/Model/Profile.php:859
-msgid "Work/employment:"
-msgstr "Activité professionnelle/Occupation :"
+#: src/Content/Widget.php:201 src/Content/Widget.php:243
+msgid "Everything"
+msgstr "Tout"
 
-#: src/Model/Profile.php:863
-msgid "School/education:"
-msgstr "Études/Formation :"
+#: src/Content/Widget.php:240
+msgid "Categories"
+msgstr "Catégories"
 
-#: src/Model/Profile.php:868
-msgid "Forums:"
-msgstr "Forums :"
+#: src/Content/Widget.php:324
+#, php-format
+msgid "%d contact in common"
+msgid_plural "%d contacts in common"
+msgstr[0] "%d contact en commun"
+msgstr[1] "%d contacts en commun"
 
-#: src/Model/Profile.php:912 src/Module/Contact.php:877
-msgid "Profile Details"
-msgstr "Détails du profil"
+#: src/Database/DBStructure.php:47
+msgid "There are no tables on MyISAM."
+msgstr ""
 
-#: src/Model/Profile.php:962
-msgid "Only You Can See This"
-msgstr "Vous seul pouvez voir Ã§a"
+#: src/Database/DBStructure.php:71
+#, php-format
+msgid ""
+"\n"
+"Error %d occurred during database update:\n"
+"%s\n"
+msgstr "\nErreur %d survenue durant la mise Ã  jour de la base de données :\n%s\n"
 
-#: src/Model/Profile.php:970 src/Model/Profile.php:973
-msgid "Tips for New Members"
-msgstr "Conseils aux nouveaux venus"
+#: src/Database/DBStructure.php:74
+msgid "Errors encountered performing database changes: "
+msgstr ""
 
-#: src/Model/Profile.php:1135
+#: src/Database/DBStructure.php:263
 #, php-format
-msgid "OpenWebAuth: %1$s welcomes %2$s"
+msgid "%s: Database update"
 msgstr ""
 
-#: src/Model/User.php:207
-msgid "Login failed"
+#: src/Database/DBStructure.php:524
+#, php-format
+msgid "%s: updating %s table."
 msgstr ""
 
-#: src/Model/User.php:238
-msgid "Not enough information to authenticate"
+#: src/Model/Contact.php:1037
+msgid "Drop Contact"
+msgstr "Supprimer le contact"
+
+#: src/Model/Contact.php:1509
+msgid "Organisation"
 msgstr ""
 
-#: src/Model/User.php:430
-msgid "An invitation is required."
-msgstr "Une invitation est requise."
+#: src/Model/Contact.php:1513
+msgid "News"
+msgstr "Nouvelles"
 
-#: src/Model/User.php:434
-msgid "Invitation could not be verified."
-msgstr "L'invitation fournie n'a pu Ãªtre validée."
+#: src/Model/Contact.php:1517
+msgid "Forum"
+msgstr "Forum"
 
-#: src/Model/User.php:441
-msgid "Invalid OpenID url"
-msgstr "Adresse OpenID invalide"
+#: src/Model/Contact.php:1707
+msgid "Connect URL missing."
+msgstr "URL de connexion manquante."
 
-#: src/Model/User.php:454 src/Module/Login.php:108
+#: src/Model/Contact.php:1716
 msgid ""
-"We encountered a problem while logging in with the OpenID you provided. "
-"Please check the correct spelling of the ID."
-msgstr "Nous avons eu un souci avec l'OpenID que vous avez fourni. Merci de vérifier qu'il est correctement Ã©crit."
-
-#: src/Model/User.php:454 src/Module/Login.php:108
-msgid "The error message was:"
-msgstr "Le message d'erreur Ã©tait :"
-
-#: src/Model/User.php:460
-msgid "Please enter the required information."
-msgstr "Entrez les informations requises."
+"The contact could not be added. Please check the relevant network "
+"credentials in your Settings -> Social Networks page."
+msgstr ""
 
-#: src/Model/User.php:476
-#, php-format
+#: src/Model/Contact.php:1755
 msgid ""
-"system.username_min_length (%s) and system.username_max_length (%s) are "
-"excluding each other, swapping values."
-msgstr ""
+"This site is not configured to allow communications with other networks."
+msgstr "Ce site n'est pas configuré pour dialoguer avec d'autres réseaux."
 
-#: src/Model/User.php:483
-#, php-format
-msgid "Username should be at least %s character."
-msgid_plural "Username should be at least %s characters."
-msgstr[0] ""
-msgstr[1] ""
+#: src/Model/Contact.php:1756 src/Model/Contact.php:1769
+msgid "No compatible communication protocols or feeds were discovered."
+msgstr "Aucun protocole de communication ni aucun flux n'a pu Ãªtre découvert."
 
-#: src/Model/User.php:487
-#, php-format
-msgid "Username should be at most %s character."
-msgid_plural "Username should be at most %s characters."
-msgstr[0] ""
-msgstr[1] ""
+#: src/Model/Contact.php:1767
+msgid "The profile address specified does not provide adequate information."
+msgstr "L'adresse de profil indiquée ne fournit par les informations adéquates."
 
-#: src/Model/User.php:495
-msgid "That doesn't appear to be your full (First Last) name."
-msgstr "Ceci ne semble pas Ãªtre votre nom complet (Prénom Nom)."
+#: src/Model/Contact.php:1772
+msgid "An author or name was not found."
+msgstr "Aucun auteur ou nom d'auteur n'a pu Ãªtre trouvé."
 
-#: src/Model/User.php:500
-msgid "Your email domain is not among those allowed on this site."
-msgstr "Votre domaine de courriel n'est pas autorisé sur ce site."
+#: src/Model/Contact.php:1775
+msgid "No browser URL could be matched to this address."
+msgstr "Aucune URL de navigation ne correspond Ã  cette adresse."
 
-#: src/Model/User.php:504
-msgid "Not a valid email address."
-msgstr "Ceci n'est pas une adresse courriel valide."
+#: src/Model/Contact.php:1778
+msgid ""
+"Unable to match @-style Identity Address with a known protocol or email "
+"contact."
+msgstr "Impossible de faire correspondre l'adresse d'identité en \"@\" avec un protocole connu ou un contact courriel."
 
-#: src/Model/User.php:507
-msgid "The nickname was blocked from registration by the nodes admin."
-msgstr ""
+#: src/Model/Contact.php:1779
+msgid "Use mailto: in front of address to force email check."
+msgstr "Utilisez mailto: en face d'une adresse pour l'obliger Ã  Ãªtre reconnue comme courriel."
 
-#: src/Model/User.php:511 src/Model/User.php:519
-msgid "Cannot use that email."
-msgstr "Impossible d'utiliser ce courriel."
+#: src/Model/Contact.php:1785
+msgid ""
+"The profile address specified belongs to a network which has been disabled "
+"on this site."
+msgstr "L'adresse de profil spécifiée correspond Ã  un réseau qui a Ã©té désactivé sur ce site."
 
-#: src/Model/User.php:526
-msgid "Your nickname can only contain a-z, 0-9 and _."
-msgstr ""
+#: src/Model/Contact.php:1790
+msgid ""
+"Limited profile. This person will be unable to receive direct/personal "
+"notifications from you."
+msgstr "Profil limité. Cette personne ne sera pas capable de recevoir des notifications directes/personnelles de votre part."
 
-#: src/Model/User.php:533 src/Model/User.php:590
-msgid "Nickname is already registered. Please choose another."
-msgstr "Pseudo déjà utilisé. Merci d'en choisir un autre."
+#: src/Model/Contact.php:1843
+msgid "Unable to retrieve contact information."
+msgstr "Impossible de récupérer les informations du contact."
 
-#: src/Model/User.php:543
-msgid "SERIOUS ERROR: Generation of security keys failed."
-msgstr "ERREUR FATALE : La génération des clés de sécurité a Ã©choué."
+#: src/Model/Event.php:61 src/Model/Event.php:78 src/Model/Event.php:436
+#: src/Model/Event.php:916
+msgid "Starts:"
+msgstr "Débute :"
 
-#: src/Model/User.php:577 src/Model/User.php:581
-msgid "An error occurred during registration. Please try again."
-msgstr "Une erreur est survenue lors de l'inscription. Merci de recommencer."
+#: src/Model/Event.php:64 src/Model/Event.php:84 src/Model/Event.php:437
+#: src/Model/Event.php:920
+msgid "Finishes:"
+msgstr "Finit :"
 
-#: src/Model/User.php:601 view/theme/duepuntozero/config.php:55
-msgid "default"
-msgstr "défaut"
+#: src/Model/Event.php:386
+msgid "all-day"
+msgstr "toute la journée"
 
-#: src/Model/User.php:606
-msgid "An error occurred creating your default profile. Please try again."
-msgstr "Une erreur est survenue lors de la création de votre profil par défaut. Merci de recommencer."
+#: src/Model/Event.php:409
+msgid "Jun"
+msgstr "Jun"
 
-#: src/Model/User.php:613
-msgid "An error occurred creating your self contact. Please try again."
-msgstr ""
+#: src/Model/Event.php:412
+msgid "Sept"
+msgstr "Sep"
 
-#: src/Model/User.php:622
-msgid ""
-"An error occurred creating your default contact group. Please try again."
-msgstr ""
+#: src/Model/Event.php:434
+msgid "No events to display"
+msgstr "Pas d'événement Ã  afficher"
 
-#: src/Model/User.php:697
-#, php-format
-msgid ""
-"\n"
-"\t\t\tDear %1$s,\n"
-"\t\t\t\tThank you for registering at %2$s. Your account is pending for approval by the administrator.\n"
-"\n"
-"\t\t\tYour login details are as follows:\n"
-"\n"
-"\t\t\tSite Location:\t%3$s\n"
-"\t\t\tLogin Name:\t\t%4$s\n"
-"\t\t\tPassword:\t\t%5$s\n"
-"\t\t"
-msgstr ""
+#: src/Model/Event.php:562
+msgid "l, F j"
+msgstr "l, F j"
 
-#: src/Model/User.php:714
-#, php-format
-msgid "Registration at %s"
-msgstr ""
+#: src/Model/Event.php:593
+msgid "Edit event"
+msgstr "Editer l'événement"
 
-#: src/Model/User.php:732
-#, php-format
-msgid ""
-"\n"
-"\t\t\tDear %1$s,\n"
-"\t\t\t\tThank you for registering at %2$s. Your account has been created.\n"
-"\t\t"
+#: src/Model/Event.php:594
+msgid "Duplicate event"
+msgstr "Dupliquer l'événement"
+
+#: src/Model/Event.php:595
+msgid "Delete event"
+msgstr "Supprimer l'événement"
+
+#: src/Model/Event.php:627 src/Model/Item.php:3536 src/Model/Item.php:3543
+msgid "link to source"
+msgstr "lien original"
+
+#: src/Model/Event.php:849
+msgid "D g:i A"
 msgstr ""
 
-#: src/Model/User.php:738
-#, php-format
-msgid ""
-"\n"
-"\t\t\tThe login details are as follows:\n"
-"\n"
-"\t\t\tSite Location:\t%3$s\n"
-"\t\t\tLogin Name:\t\t%1$s\n"
-"\t\t\tPassword:\t\t%5$s\n"
-"\n"
-"\t\t\tYou may change your password from your account \"Settings\" page after logging\n"
-"\t\t\tin.\n"
-"\n"
-"\t\t\tPlease take a few moments to review the other account settings on that page.\n"
-"\n"
-"\t\t\tYou may also wish to add some basic information to your default profile\n"
-"\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n"
-"\n"
-"\t\t\tWe recommend setting your full name, adding a profile photo,\n"
-"\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n"
-"\t\t\tperhaps what country you live in; if you do not wish to be more specific\n"
-"\t\t\tthan that.\n"
-"\n"
-"\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n"
-"\t\t\tIf you are new and do not know anybody here, they may help\n"
-"\t\t\tyou to make some new and interesting friends.\n"
-"\n"
-"\t\t\tIf you ever want to delete your account, you can do so at %3$s/removeme\n"
-"\n"
-"\t\t\tThank you and welcome to %2$s."
+#: src/Model/Event.php:850
+msgid "g:i A"
 msgstr ""
 
-#: src/Module/Contact.php:171
-#, php-format
-msgid "%d contact edited."
-msgid_plural "%d contacts edited."
-msgstr[0] "%d contact mis Ã  jour."
-msgstr[1] "%d contacts mis Ã  jour."
+#: src/Model/Event.php:935 src/Model/Event.php:937
+msgid "Show map"
+msgstr "Montrer la carte"
 
-#: src/Module/Contact.php:196 src/Module/Contact.php:379
-msgid "Could not access contact record."
-msgstr "Impossible d'accéder Ã  l'enregistrement du contact."
+#: src/Model/Event.php:936
+msgid "Hide map"
+msgstr "Cacher la carte"
 
-#: src/Module/Contact.php:206
-msgid "Could not locate selected profile."
-msgstr "Impossible de localiser le profil séléctionné."
+#: src/Model/Event.php:1028
+#, php-format
+msgid "%s's birthday"
+msgstr "Anniversaire de %s's"
 
-#: src/Module/Contact.php:238
-msgid "Contact updated."
-msgstr "Contact mis Ã  jour."
+#: src/Model/Event.php:1029
+#, php-format
+msgid "Happy Birthday %s"
+msgstr "Joyeux anniversaire, %s !"
 
-#: src/Module/Contact.php:400
-msgid "Contact has been blocked"
-msgstr "Le contact a Ã©té bloqué"
+#: src/Model/FileTag.php:256
+msgid "Item filed"
+msgstr "Élément classé"
 
-#: src/Module/Contact.php:400
-msgid "Contact has been unblocked"
-msgstr "Le contact n'est plus bloqué"
+#: src/Model/Group.php:43
+msgid ""
+"A deleted group with this name was revived. Existing item permissions "
+"<strong>may</strong> apply to this group and any future members. If this is "
+"not what you intended, please create another group with a different name."
+msgstr "Un groupe supprimé a Ã©té recréé. Les permissions existantes <strong>pourraient</strong> s'appliquer Ã  ce groupe et aux futurs membres. Si ce n'est pas le comportement attendu, merci de re-créer un autre groupe sous un autre nom."
 
-#: src/Module/Contact.php:410
-msgid "Contact has been ignored"
-msgstr "Le contact a Ã©té ignoré"
+#: src/Model/Group.php:338
+msgid "Default privacy group for new contacts"
+msgstr "Paramètres de confidentialité par défaut pour les nouveaux contacts"
 
-#: src/Module/Contact.php:410
-msgid "Contact has been unignored"
-msgstr "Le contact n'est plus ignoré"
+#: src/Model/Group.php:370
+msgid "Everybody"
+msgstr "Tout le monde"
 
-#: src/Module/Contact.php:420
-msgid "Contact has been archived"
-msgstr "Contact archivé"
+#: src/Model/Group.php:390
+msgid "edit"
+msgstr "éditer"
 
-#: src/Module/Contact.php:420
-msgid "Contact has been unarchived"
-msgstr "Contact désarchivé"
+#: src/Model/Group.php:419
+msgid "Edit group"
+msgstr "Editer groupe"
 
-#: src/Module/Contact.php:444
-msgid "Drop contact"
-msgstr "Supprimer contact"
+#: src/Model/Group.php:422
+msgid "Create a new group"
+msgstr "Créer un nouveau groupe"
 
-#: src/Module/Contact.php:447 src/Module/Contact.php:825
-msgid "Do you really want to delete this contact?"
-msgstr "Voulez-vous vraiment supprimer ce contact?"
+#: src/Model/Group.php:424
+msgid "Edit groups"
+msgstr "Modifier les groupes"
 
-#: src/Module/Contact.php:461
-msgid "Contact has been removed."
-msgstr "Ce contact a Ã©té retiré."
+#: src/Model/Item.php:3269
+msgid "activity"
+msgstr "activité"
 
-#: src/Module/Contact.php:492
-#, php-format
-msgid "You are mutual friends with %s"
-msgstr "Vous Ãªtes ami (et réciproquement) avec %s"
+#: src/Model/Item.php:3271 src/Object/Post.php:457 src/Object/Post.php:469
+msgid "comment"
+msgid_plural "comments"
+msgstr[0] ""
+msgstr[1] "commentaire"
 
-#: src/Module/Contact.php:497
-#, php-format
-msgid "You are sharing with %s"
-msgstr "Vous partagez avec %s"
+#: src/Model/Item.php:3274
+msgid "post"
+msgstr "publication"
 
-#: src/Module/Contact.php:502
+#: src/Model/Item.php:3373
 #, php-format
-msgid "%s is sharing with you"
-msgstr "%s partage avec vous"
+msgid "Content warning: %s"
+msgstr "Avertissement de contenu: %s"
 
-#: src/Module/Contact.php:526
-msgid "Private communications are not available for this contact."
-msgstr "Les communications privées ne sont pas disponibles pour ce contact."
+#: src/Model/Item.php:3452
+msgid "bytes"
+msgstr "octets"
 
-#: src/Module/Contact.php:528
-msgid "Never"
-msgstr "Jamais"
+#: src/Model/Item.php:3530
+msgid "View on separate page"
+msgstr "Voir dans une nouvelle page"
 
-#: src/Module/Contact.php:531
-msgid "(Update was successful)"
-msgstr "(Mise Ã  jour effectuée avec succès)"
+#: src/Model/Item.php:3531
+msgid "view on separate page"
+msgstr "voir dans une nouvelle page"
 
-#: src/Module/Contact.php:531
-msgid "(Update was not successful)"
-msgstr "(Échec de la mise Ã  jour)"
+#: src/Model/Mail.php:40 src/Model/Mail.php:175
+msgid "[no subject]"
+msgstr "[pas de sujet]"
 
-#: src/Module/Contact.php:533 src/Module/Contact.php:1063
-msgid "Suggest friends"
-msgstr "Suggérer amitié/contact"
+#: src/Model/Profile.php:115
+msgid "Requested account is not available."
+msgstr "Le compte demandé n'est pas disponible."
 
-#: src/Module/Contact.php:537
-#, php-format
-msgid "Network type: %s"
-msgstr "Type de réseau %s"
+#: src/Model/Profile.php:133
+msgid "Requested profile is not available."
+msgstr "Le profil demandé n'est pas disponible."
 
-#: src/Module/Contact.php:542
-msgid "Communications lost with this contact!"
-msgstr "Communications perdues avec ce contact !"
+#: src/Model/Profile.php:181 src/Model/Profile.php:425
+#: src/Model/Profile.php:872
+msgid "Edit profile"
+msgstr "Editer le profil"
 
-#: src/Module/Contact.php:548
-msgid "Fetch further information for feeds"
-msgstr "Chercher plus d'informations pour les flux"
+#: src/Model/Profile.php:359
+msgid "Atom feed"
+msgstr "Flux Atom"
 
-#: src/Module/Contact.php:550
-msgid ""
-"Fetch information like preview pictures, title and teaser from the feed "
-"item. You can activate this if the feed doesn't contain much text. Keywords "
-"are taken from the meta header in the feed item and are posted as hash tags."
-msgstr ""
+#: src/Model/Profile.php:398
+msgid "Manage/edit profiles"
+msgstr "Gérer/éditer les profils"
 
-#: src/Module/Contact.php:553
-msgid "Fetch information"
-msgstr "Récupérer informations"
+#: src/Model/Profile.php:450 src/Module/Contact.php:645
+msgid "XMPP:"
+msgstr "XMPP"
 
-#: src/Module/Contact.php:554
-msgid "Fetch keywords"
-msgstr ""
+#: src/Model/Profile.php:573 src/Model/Profile.php:671
+msgid "g A l F d"
+msgstr "g A | F d"
 
-#: src/Module/Contact.php:555
-msgid "Fetch information and keywords"
-msgstr "Récupérer informations"
+#: src/Model/Profile.php:574
+msgid "F d"
+msgstr "F d"
 
-#: src/Module/Contact.php:587
-msgid "Profile Visibility"
-msgstr "Visibilité du profil"
+#: src/Model/Profile.php:636 src/Model/Profile.php:722
+msgid "[today]"
+msgstr "[aujourd'hui]"
 
-#: src/Module/Contact.php:588
-msgid "Contact Information / Notes"
-msgstr "Informations de contact / Notes"
+#: src/Model/Profile.php:647
+msgid "Birthday Reminders"
+msgstr "Rappels d'anniversaires"
 
-#: src/Module/Contact.php:589
-msgid "Contact Settings"
-msgstr "Paramètres du Contact"
+#: src/Model/Profile.php:648
+msgid "Birthdays this week:"
+msgstr "Anniversaires cette semaine :"
 
-#: src/Module/Contact.php:598
-msgid "Contact"
-msgstr "Contact"
+#: src/Model/Profile.php:709
+msgid "[No description]"
+msgstr "[Sans description]"
 
-#: src/Module/Contact.php:602
-#, php-format
-msgid ""
-"Please choose the profile you would like to display to %s when viewing your "
-"profile securely."
-msgstr "Merci de choisir le profil que vous souhaitez montrer Ã  %s lorsqu'il vous rend visite de manière sécurisée."
+#: src/Model/Profile.php:736
+msgid "Event Reminders"
+msgstr "Rappels d'événements"
 
-#: src/Module/Contact.php:604
-msgid "Their personal note"
+#: src/Model/Profile.php:737
+msgid "Upcoming events the next 7 days:"
 msgstr ""
 
-#: src/Module/Contact.php:606
-msgid "Edit contact notes"
-msgstr "Éditer les notes des contacts"
-
-#: src/Module/Contact.php:610
-msgid "Block/Unblock contact"
-msgstr "Bloquer/débloquer ce contact"
-
-#: src/Module/Contact.php:611
-msgid "Ignore contact"
-msgstr "Ignorer ce contact"
+#: src/Model/Profile.php:754
+msgid "Member since:"
+msgstr ""
 
-#: src/Module/Contact.php:612
-msgid "Repair URL settings"
-msgstr "Réglages de réparation des URL"
+#: src/Model/Profile.php:762
+msgid "j F, Y"
+msgstr "j F, Y"
 
-#: src/Module/Contact.php:613
-msgid "View conversations"
-msgstr "Voir les conversations"
+#: src/Model/Profile.php:763
+msgid "j F"
+msgstr "j F"
 
-#: src/Module/Contact.php:618
-msgid "Last update:"
-msgstr "Dernière mise-à-jour :"
+#: src/Model/Profile.php:778
+msgid "Age:"
+msgstr "Age :"
 
-#: src/Module/Contact.php:620
-msgid "Update public posts"
-msgstr "Mettre Ã  jour les publications publiques:"
+#: src/Model/Profile.php:791
+#, php-format
+msgid "for %1$d %2$s"
+msgstr "depuis %1$d %2$s"
 
-#: src/Module/Contact.php:622 src/Module/Contact.php:1073
-msgid "Update now"
-msgstr "Mettre Ã  jour"
+#: src/Model/Profile.php:815
+msgid "Religion:"
+msgstr "Religion :"
 
-#: src/Module/Contact.php:628 src/Module/Contact.php:830
-#: src/Module/Contact.php:1090
-msgid "Unignore"
-msgstr "Ne plus ignorer"
+#: src/Model/Profile.php:823
+msgid "Hobbies/Interests:"
+msgstr "Passe-temps/Centres d'intérêt :"
 
-#: src/Module/Contact.php:632
-msgid "Currently blocked"
-msgstr "Actuellement bloqué"
+#: src/Model/Profile.php:835
+msgid "Contact information and Social Networks:"
+msgstr "Coordonnées/Réseaux sociaux :"
 
-#: src/Module/Contact.php:633
-msgid "Currently ignored"
-msgstr "Actuellement ignoré"
+#: src/Model/Profile.php:839
+msgid "Musical interests:"
+msgstr "Goûts musicaux :"
 
-#: src/Module/Contact.php:634
-msgid "Currently archived"
-msgstr "Actuellement archivé"
+#: src/Model/Profile.php:843
+msgid "Books, literature:"
+msgstr "Lectures :"
 
-#: src/Module/Contact.php:635
-msgid "Awaiting connection acknowledge"
-msgstr ""
+#: src/Model/Profile.php:847
+msgid "Television:"
+msgstr "Télévision :"
 
-#: src/Module/Contact.php:636
-msgid ""
-"Replies/likes to your public posts <strong>may</strong> still be visible"
-msgstr "Les réponses et \"j'aime\" Ã  vos publications publiques <strong>peuvent</strong> Ãªtre toujours visibles"
+#: src/Model/Profile.php:851
+msgid "Film/dance/culture/entertainment:"
+msgstr "Cinéma/Danse/Culture/Divertissement :"
 
-#: src/Module/Contact.php:637
-msgid "Notification for new posts"
-msgstr "Notification des nouvelles publications"
+#: src/Model/Profile.php:855
+msgid "Love/Romance:"
+msgstr "Amour/Romance :"
 
-#: src/Module/Contact.php:637
-msgid "Send a notification of every new post of this contact"
-msgstr "Envoyer une notification de chaque nouveau message en provenance de ce contact"
+#: src/Model/Profile.php:859
+msgid "Work/employment:"
+msgstr "Activité professionnelle/Occupation :"
 
-#: src/Module/Contact.php:640
-msgid "Blacklisted keywords"
-msgstr "Mots-clés sur la liste noire"
+#: src/Model/Profile.php:863
+msgid "School/education:"
+msgstr "Études/Formation :"
 
-#: src/Module/Contact.php:640
-msgid ""
-"Comma separated list of keywords that should not be converted to hashtags, "
-"when \"Fetch information and keywords\" is selected"
-msgstr "Liste de mots-clés separés par des virgules qui ne doivent pas Ãªtre converti en mots-dièse quand  Â« Récupérer informations et mots-clés Â» est sélectionné."
+#: src/Model/Profile.php:868
+msgid "Forums:"
+msgstr "Forums :"
 
-#: src/Module/Contact.php:657
-msgid "Actions"
-msgstr "Actions"
+#: src/Model/Profile.php:912 src/Module/Contact.php:872
+msgid "Profile Details"
+msgstr "Détails du profil"
 
-#: src/Module/Contact.php:703
-msgid "Suggestions"
-msgstr "Suggestions"
+#: src/Model/Profile.php:962
+msgid "Only You Can See This"
+msgstr "Vous seul pouvez voir Ã§a"
 
-#: src/Module/Contact.php:706
-msgid "Suggest potential friends"
-msgstr "Suggérer des amis potentiels"
+#: src/Model/Profile.php:970 src/Model/Profile.php:973
+msgid "Tips for New Members"
+msgstr "Conseils aux nouveaux venus"
 
-#: src/Module/Contact.php:714
-msgid "Show all contacts"
-msgstr "Montrer tous les contacts"
+#: src/Model/Profile.php:1150
+#, php-format
+msgid "OpenWebAuth: %1$s welcomes %2$s"
+msgstr ""
 
-#: src/Module/Contact.php:719
-msgid "Unblocked"
-msgstr "Non-bloqués"
+#: src/Model/Storage/Database.php:36
+#, php-format
+msgid "Database storage failed to update %s"
+msgstr ""
 
-#: src/Module/Contact.php:722
-msgid "Only show unblocked contacts"
-msgstr "Ne montrer que les contacts non-bloqués"
+#: src/Model/Storage/Database.php:43
+msgid "Database storage failed to insert data"
+msgstr ""
 
-#: src/Module/Contact.php:727
-msgid "Blocked"
-msgstr "Bloqués"
+#: src/Model/Storage/Filesystem.php:63
+#, php-format
+msgid "Filesystem storage failed to create \"%s\". Check you write permissions."
+msgstr ""
 
-#: src/Module/Contact.php:730
-msgid "Only show blocked contacts"
-msgstr "Ne montrer que les contacts bloqués"
+#: src/Model/Storage/Filesystem.php:105
+#, php-format
+msgid ""
+"Filesystem storage failed to save data to \"%s\". Check your write "
+"permissions"
+msgstr ""
 
-#: src/Module/Contact.php:735
-msgid "Ignored"
-msgstr "Ignorés"
+#: src/Model/Storage/Filesystem.php:126
+msgid "Storage base path"
+msgstr ""
 
-#: src/Module/Contact.php:738
-msgid "Only show ignored contacts"
-msgstr "Ne montrer que les contacts ignorés"
+#: src/Model/Storage/Filesystem.php:128
+msgid ""
+"Folder where uploaded files are saved. For maximum security, This should be "
+"a path outside web server folder tree"
+msgstr ""
 
-#: src/Module/Contact.php:743
-msgid "Archived"
-msgstr "Archivés"
+#: src/Model/Storage/Filesystem.php:138
+msgid "Enter a valid existing folder"
+msgstr ""
 
-#: src/Module/Contact.php:746
-msgid "Only show archived contacts"
-msgstr "Ne montrer que les contacts archivés"
+#: src/Model/User.php:270
+msgid "Login failed"
+msgstr ""
 
-#: src/Module/Contact.php:751
-msgid "Hidden"
-msgstr "Cachés"
+#: src/Model/User.php:301
+msgid "Not enough information to authenticate"
+msgstr ""
 
-#: src/Module/Contact.php:754
-msgid "Only show hidden contacts"
-msgstr "Ne montrer que les contacts masqués"
+#: src/Model/User.php:379
+msgid "Password can't be empty"
+msgstr ""
 
-#: src/Module/Contact.php:762
-msgid "Organize your contact groups"
+#: src/Model/User.php:398
+msgid "Empty passwords are not allowed."
 msgstr ""
 
-#: src/Module/Contact.php:820
-msgid "Search your contacts"
-msgstr "Rechercher dans vos contacts"
+#: src/Model/User.php:402
+msgid ""
+"The new password has been exposed in a public data dump, please choose "
+"another."
+msgstr ""
 
-#: src/Module/Contact.php:831 src/Module/Contact.php:1099
-msgid "Archive"
-msgstr "Archiver"
+#: src/Model/User.php:408
+msgid ""
+"The password can't contain accentuated letters, white spaces or colons (:)"
+msgstr ""
 
-#: src/Module/Contact.php:831 src/Module/Contact.php:1099
-msgid "Unarchive"
-msgstr "Désarchiver"
+#: src/Model/User.php:508
+msgid "Passwords do not match. Password unchanged."
+msgstr "Les mots de passe ne correspondent pas. Aucun changement appliqué."
 
-#: src/Module/Contact.php:834
-msgid "Batch Actions"
-msgstr "Actions multiples"
+#: src/Model/User.php:515
+msgid "An invitation is required."
+msgstr "Une invitation est requise."
 
-#: src/Module/Contact.php:861
-msgid "Conversations started by this contact"
-msgstr ""
+#: src/Model/User.php:519
+msgid "Invitation could not be verified."
+msgstr "L'invitation fournie n'a pu Ãªtre validée."
 
-#: src/Module/Contact.php:866
-msgid "Posts and Comments"
-msgstr ""
+#: src/Model/User.php:526
+msgid "Invalid OpenID url"
+msgstr "Adresse OpenID invalide"
 
-#: src/Module/Contact.php:889
-msgid "View all contacts"
-msgstr "Voir tous les contacts"
+#: src/Model/User.php:539 src/Module/Login.php:106
+msgid ""
+"We encountered a problem while logging in with the OpenID you provided. "
+"Please check the correct spelling of the ID."
+msgstr "Nous avons eu un souci avec l'OpenID que vous avez fourni. Merci de vérifier qu'il est correctement Ã©crit."
 
-#: src/Module/Contact.php:900
-msgid "View all common friends"
-msgstr "Voir tous les amis communs"
+#: src/Model/User.php:539 src/Module/Login.php:106
+msgid "The error message was:"
+msgstr "Le message d'erreur Ã©tait :"
 
-#: src/Module/Contact.php:910
-msgid "Advanced Contact Settings"
-msgstr "Réglages avancés du contact"
+#: src/Model/User.php:545
+msgid "Please enter the required information."
+msgstr "Entrez les informations requises."
 
-#: src/Module/Contact.php:996
-msgid "Mutual Friendship"
-msgstr "Relation réciproque"
+#: src/Model/User.php:559
+#, php-format
+msgid ""
+"system.username_min_length (%s) and system.username_max_length (%s) are "
+"excluding each other, swapping values."
+msgstr ""
 
-#: src/Module/Contact.php:1001
-msgid "is a fan of yours"
-msgstr "Vous suit"
+#: src/Model/User.php:566
+#, php-format
+msgid "Username should be at least %s character."
+msgid_plural "Username should be at least %s characters."
+msgstr[0] ""
+msgstr[1] ""
 
-#: src/Module/Contact.php:1006
-msgid "you are a fan of"
-msgstr "Vous le/la suivez"
+#: src/Model/User.php:570
+#, php-format
+msgid "Username should be at most %s character."
+msgid_plural "Username should be at most %s characters."
+msgstr[0] ""
+msgstr[1] ""
 
-#: src/Module/Contact.php:1030
-msgid "Edit contact"
-msgstr "Éditer le contact"
+#: src/Model/User.php:578
+msgid "That doesn't appear to be your full (First Last) name."
+msgstr "Ceci ne semble pas Ãªtre votre nom complet (Prénom Nom)."
 
-#: src/Module/Contact.php:1084
-msgid "Toggle Blocked status"
-msgstr "(dés)activer l'état \"bloqué\""
+#: src/Model/User.php:583
+msgid "Your email domain is not among those allowed on this site."
+msgstr "Votre domaine de courriel n'est pas autorisé sur ce site."
 
-#: src/Module/Contact.php:1092
-msgid "Toggle Ignored status"
-msgstr "(dés)activer l'état \"ignoré\""
+#: src/Model/User.php:587
+msgid "Not a valid email address."
+msgstr "Ceci n'est pas une adresse courriel valide."
 
-#: src/Module/Contact.php:1101
-msgid "Toggle Archive status"
-msgstr "(dés)activer l'état \"archivé\""
+#: src/Model/User.php:590
+msgid "The nickname was blocked from registration by the nodes admin."
+msgstr ""
 
-#: src/Module/Contact.php:1109
-msgid "Delete contact"
-msgstr "Effacer ce contact"
+#: src/Model/User.php:594 src/Model/User.php:602
+msgid "Cannot use that email."
+msgstr "Impossible d'utiliser ce courriel."
 
-#: src/Module/Install.php:120
-msgid "Friendica Communications Server - Setup"
+#: src/Model/User.php:609
+msgid "Your nickname can only contain a-z, 0-9 and _."
 msgstr ""
 
-#: src/Module/Install.php:131
-msgid "System check"
+#: src/Model/User.php:616 src/Model/User.php:673
+msgid "Nickname is already registered. Please choose another."
+msgstr "Pseudo déjà utilisé. Merci d'en choisir un autre."
+
+#: src/Model/User.php:626
+msgid "SERIOUS ERROR: Generation of security keys failed."
+msgstr "ERREUR FATALE : La génération des clés de sécurité a Ã©choué."
+
+#: src/Model/User.php:660 src/Model/User.php:664
+msgid "An error occurred during registration. Please try again."
+msgstr "Une erreur est survenue lors de l'inscription. Merci de recommencer."
+
+#: src/Model/User.php:689
+msgid "An error occurred creating your default profile. Please try again."
+msgstr "Une erreur est survenue lors de la création de votre profil par défaut. Merci de recommencer."
+
+#: src/Model/User.php:696
+msgid "An error occurred creating your self contact. Please try again."
+msgstr ""
+
+#: src/Model/User.php:705
+msgid ""
+"An error occurred creating your default contact group. Please try again."
+msgstr ""
+
+#: src/Model/User.php:781
+#, php-format
+msgid ""
+"\n"
+"\t\t\tDear %1$s,\n"
+"\t\t\t\tThank you for registering at %2$s. Your account is pending for approval by the administrator.\n"
+"\n"
+"\t\t\tYour login details are as follows:\n"
+"\n"
+"\t\t\tSite Location:\t%3$s\n"
+"\t\t\tLogin Name:\t\t%4$s\n"
+"\t\t\tPassword:\t\t%5$s\n"
+"\t\t"
+msgstr ""
+
+#: src/Model/User.php:798
+#, php-format
+msgid "Registration at %s"
+msgstr ""
+
+#: src/Model/User.php:817
+#, php-format
+msgid ""
+"\n"
+"\t\t\tDear %1$s,\n"
+"\t\t\t\tThank you for registering at %2$s. Your account has been created.\n"
+"\t\t"
+msgstr ""
+
+#: src/Model/User.php:823
+#, php-format
+msgid ""
+"\n"
+"\t\t\tThe login details are as follows:\n"
+"\n"
+"\t\t\tSite Location:\t%3$s\n"
+"\t\t\tLogin Name:\t\t%1$s\n"
+"\t\t\tPassword:\t\t%5$s\n"
+"\n"
+"\t\t\tYou may change your password from your account \"Settings\" page after logging\n"
+"\t\t\tin.\n"
+"\n"
+"\t\t\tPlease take a few moments to review the other account settings on that page.\n"
+"\n"
+"\t\t\tYou may also wish to add some basic information to your default profile\n"
+"\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n"
+"\n"
+"\t\t\tWe recommend setting your full name, adding a profile photo,\n"
+"\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n"
+"\t\t\tperhaps what country you live in; if you do not wish to be more specific\n"
+"\t\t\tthan that.\n"
+"\n"
+"\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n"
+"\t\t\tIf you are new and do not know anybody here, they may help\n"
+"\t\t\tyou to make some new and interesting friends.\n"
+"\n"
+"\t\t\tIf you ever want to delete your account, you can do so at %3$s/removeme\n"
+"\n"
+"\t\t\tThank you and welcome to %2$s."
+msgstr ""
+
+#: src/Protocol/Diaspora.php:2496
+msgid "Sharing notification from Diaspora network"
+msgstr "Notification de partage du réseau Diaspora"
+
+#: src/Protocol/Diaspora.php:3613
+msgid "Attachments:"
+msgstr "Pièces jointes : "
+
+#: src/Protocol/OStatus.php:1302 src/Module/Profile.php:102
+#: src/Module/Profile.php:105
+#, php-format
+msgid "%s's timeline"
+msgstr ""
+
+#: src/Protocol/OStatus.php:1306 src/Module/Profile.php:103
+#, php-format
+msgid "%s's posts"
+msgstr ""
+
+#: src/Protocol/OStatus.php:1309 src/Module/Profile.php:104
+#, php-format
+msgid "%s's comments"
+msgstr ""
+
+#: src/Protocol/OStatus.php:1866
+#, php-format
+msgid "%s is now following %s."
+msgstr "%s suit désormais %s."
+
+#: src/Protocol/OStatus.php:1867
+msgid "following"
+msgstr "following"
+
+#: src/Protocol/OStatus.php:1870
+#, php-format
+msgid "%s stopped following %s."
+msgstr "%s ne suit plus %s."
+
+#: src/Protocol/OStatus.php:1871
+msgid "stopped following"
+msgstr "retiré de la liste de suivi"
+
+#: src/Worker/Delivery.php:453
+msgid "(no subject)"
+msgstr "(sans titre)"
+
+#: src/Module/Attach.php:36 src/Module/Attach.php:48
+msgid "Item was not found."
+msgstr "Element introuvable."
+
+#: src/Module/Contact.php:166
+#, php-format
+msgid "%d contact edited."
+msgid_plural "%d contacts edited."
+msgstr[0] "%d contact mis Ã  jour."
+msgstr[1] "%d contacts mis Ã  jour."
+
+#: src/Module/Contact.php:191 src/Module/Contact.php:374
+msgid "Could not access contact record."
+msgstr "Impossible d'accéder Ã  l'enregistrement du contact."
+
+#: src/Module/Contact.php:201
+msgid "Could not locate selected profile."
+msgstr "Impossible de localiser le profil séléctionné."
+
+#: src/Module/Contact.php:233
+msgid "Contact updated."
+msgstr "Contact mis Ã  jour."
+
+#: src/Module/Contact.php:395
+msgid "Contact has been blocked"
+msgstr "Le contact a Ã©té bloqué"
+
+#: src/Module/Contact.php:395
+msgid "Contact has been unblocked"
+msgstr "Le contact n'est plus bloqué"
+
+#: src/Module/Contact.php:405
+msgid "Contact has been ignored"
+msgstr "Le contact a Ã©té ignoré"
+
+#: src/Module/Contact.php:405
+msgid "Contact has been unignored"
+msgstr "Le contact n'est plus ignoré"
+
+#: src/Module/Contact.php:415
+msgid "Contact has been archived"
+msgstr "Contact archivé"
+
+#: src/Module/Contact.php:415
+msgid "Contact has been unarchived"
+msgstr "Contact désarchivé"
+
+#: src/Module/Contact.php:439
+msgid "Drop contact"
+msgstr "Supprimer contact"
+
+#: src/Module/Contact.php:442 src/Module/Contact.php:820
+msgid "Do you really want to delete this contact?"
+msgstr "Voulez-vous vraiment supprimer ce contact?"
+
+#: src/Module/Contact.php:456
+msgid "Contact has been removed."
+msgstr "Ce contact a Ã©té retiré."
+
+#: src/Module/Contact.php:486
+#, php-format
+msgid "You are mutual friends with %s"
+msgstr "Vous Ãªtes ami (et réciproquement) avec %s"
+
+#: src/Module/Contact.php:491
+#, php-format
+msgid "You are sharing with %s"
+msgstr "Vous partagez avec %s"
+
+#: src/Module/Contact.php:496
+#, php-format
+msgid "%s is sharing with you"
+msgstr "%s partage avec vous"
+
+#: src/Module/Contact.php:520
+msgid "Private communications are not available for this contact."
+msgstr "Les communications privées ne sont pas disponibles pour ce contact."
+
+#: src/Module/Contact.php:522
+msgid "Never"
+msgstr "Jamais"
+
+#: src/Module/Contact.php:525
+msgid "(Update was successful)"
+msgstr "(Mise Ã  jour effectuée avec succès)"
+
+#: src/Module/Contact.php:525
+msgid "(Update was not successful)"
+msgstr "(Échec de la mise Ã  jour)"
+
+#: src/Module/Contact.php:527 src/Module/Contact.php:1058
+msgid "Suggest friends"
+msgstr "Suggérer amitié/contact"
+
+#: src/Module/Contact.php:531
+#, php-format
+msgid "Network type: %s"
+msgstr "Type de réseau %s"
+
+#: src/Module/Contact.php:536
+msgid "Communications lost with this contact!"
+msgstr "Communications perdues avec ce contact !"
+
+#: src/Module/Contact.php:542
+msgid "Fetch further information for feeds"
+msgstr "Chercher plus d'informations pour les flux"
+
+#: src/Module/Contact.php:544
+msgid ""
+"Fetch information like preview pictures, title and teaser from the feed "
+"item. You can activate this if the feed doesn't contain much text. Keywords "
+"are taken from the meta header in the feed item and are posted as hash tags."
+msgstr ""
+
+#: src/Module/Contact.php:547
+msgid "Fetch information"
+msgstr "Récupérer informations"
+
+#: src/Module/Contact.php:548
+msgid "Fetch keywords"
+msgstr ""
+
+#: src/Module/Contact.php:549
+msgid "Fetch information and keywords"
+msgstr "Récupérer informations"
+
+#: src/Module/Contact.php:581
+msgid "Profile Visibility"
+msgstr "Visibilité du profil"
+
+#: src/Module/Contact.php:582
+msgid "Contact Information / Notes"
+msgstr "Informations de contact / Notes"
+
+#: src/Module/Contact.php:583
+msgid "Contact Settings"
+msgstr "Paramètres du Contact"
+
+#: src/Module/Contact.php:592
+msgid "Contact"
+msgstr "Contact"
+
+#: src/Module/Contact.php:596
+#, php-format
+msgid ""
+"Please choose the profile you would like to display to %s when viewing your "
+"profile securely."
+msgstr "Merci de choisir le profil que vous souhaitez montrer Ã  %s lorsqu'il vous rend visite de manière sécurisée."
+
+#: src/Module/Contact.php:598
+msgid "Their personal note"
+msgstr ""
+
+#: src/Module/Contact.php:600
+msgid "Edit contact notes"
+msgstr "Éditer les notes des contacts"
+
+#: src/Module/Contact.php:604
+msgid "Block/Unblock contact"
+msgstr "Bloquer/débloquer ce contact"
+
+#: src/Module/Contact.php:605
+msgid "Ignore contact"
+msgstr "Ignorer ce contact"
+
+#: src/Module/Contact.php:606
+msgid "Repair URL settings"
+msgstr "Réglages de réparation des URL"
+
+#: src/Module/Contact.php:607
+msgid "View conversations"
+msgstr "Voir les conversations"
+
+#: src/Module/Contact.php:612
+msgid "Last update:"
+msgstr "Dernière mise-à-jour :"
+
+#: src/Module/Contact.php:614
+msgid "Update public posts"
+msgstr "Mettre Ã  jour les publications publiques:"
+
+#: src/Module/Contact.php:616 src/Module/Contact.php:1068
+msgid "Update now"
+msgstr "Mettre Ã  jour"
+
+#: src/Module/Contact.php:622 src/Module/Contact.php:825
+#: src/Module/Contact.php:1085
+msgid "Unignore"
+msgstr "Ne plus ignorer"
+
+#: src/Module/Contact.php:626
+msgid "Currently blocked"
+msgstr "Actuellement bloqué"
+
+#: src/Module/Contact.php:627
+msgid "Currently ignored"
+msgstr "Actuellement ignoré"
+
+#: src/Module/Contact.php:628
+msgid "Currently archived"
+msgstr "Actuellement archivé"
+
+#: src/Module/Contact.php:629
+msgid "Awaiting connection acknowledge"
+msgstr ""
+
+#: src/Module/Contact.php:630
+msgid ""
+"Replies/likes to your public posts <strong>may</strong> still be visible"
+msgstr "Les réponses et \"j'aime\" Ã  vos publications publiques <strong>peuvent</strong> Ãªtre toujours visibles"
+
+#: src/Module/Contact.php:631
+msgid "Notification for new posts"
+msgstr "Notification des nouvelles publications"
+
+#: src/Module/Contact.php:631
+msgid "Send a notification of every new post of this contact"
+msgstr "Envoyer une notification de chaque nouveau message en provenance de ce contact"
+
+#: src/Module/Contact.php:633
+msgid "Blacklisted keywords"
+msgstr "Mots-clés sur la liste noire"
+
+#: src/Module/Contact.php:633
+msgid ""
+"Comma separated list of keywords that should not be converted to hashtags, "
+"when \"Fetch information and keywords\" is selected"
+msgstr "Liste de mots-clés separés par des virgules qui ne doivent pas Ãªtre converti en mots-dièse quand  Â« Récupérer informations et mots-clés Â» est sélectionné."
+
+#: src/Module/Contact.php:650
+msgid "Actions"
+msgstr "Actions"
+
+#: src/Module/Contact.php:696
+msgid "Suggestions"
+msgstr "Suggestions"
+
+#: src/Module/Contact.php:699
+msgid "Suggest potential friends"
+msgstr "Suggérer des amis potentiels"
+
+#: src/Module/Contact.php:707
+msgid "Show all contacts"
+msgstr "Montrer tous les contacts"
+
+#: src/Module/Contact.php:712
+msgid "Unblocked"
+msgstr "Non-bloqués"
+
+#: src/Module/Contact.php:715
+msgid "Only show unblocked contacts"
+msgstr "Ne montrer que les contacts non-bloqués"
+
+#: src/Module/Contact.php:720
+msgid "Blocked"
+msgstr "Bloqués"
+
+#: src/Module/Contact.php:723
+msgid "Only show blocked contacts"
+msgstr "Ne montrer que les contacts bloqués"
+
+#: src/Module/Contact.php:728
+msgid "Ignored"
+msgstr "Ignorés"
+
+#: src/Module/Contact.php:731
+msgid "Only show ignored contacts"
+msgstr "Ne montrer que les contacts ignorés"
+
+#: src/Module/Contact.php:736
+msgid "Archived"
+msgstr "Archivés"
+
+#: src/Module/Contact.php:739
+msgid "Only show archived contacts"
+msgstr "Ne montrer que les contacts archivés"
+
+#: src/Module/Contact.php:744
+msgid "Hidden"
+msgstr "Cachés"
+
+#: src/Module/Contact.php:747
+msgid "Only show hidden contacts"
+msgstr "Ne montrer que les contacts masqués"
+
+#: src/Module/Contact.php:755
+msgid "Organize your contact groups"
+msgstr ""
+
+#: src/Module/Contact.php:815
+msgid "Search your contacts"
+msgstr "Rechercher dans vos contacts"
+
+#: src/Module/Contact.php:826 src/Module/Contact.php:1094
+msgid "Archive"
+msgstr "Archiver"
+
+#: src/Module/Contact.php:826 src/Module/Contact.php:1094
+msgid "Unarchive"
+msgstr "Désarchiver"
+
+#: src/Module/Contact.php:829
+msgid "Batch Actions"
+msgstr "Actions multiples"
+
+#: src/Module/Contact.php:856
+msgid "Conversations started by this contact"
+msgstr ""
+
+#: src/Module/Contact.php:861
+msgid "Posts and Comments"
+msgstr ""
+
+#: src/Module/Contact.php:884
+msgid "View all contacts"
+msgstr "Voir tous les contacts"
+
+#: src/Module/Contact.php:895
+msgid "View all common friends"
+msgstr "Voir tous les amis communs"
+
+#: src/Module/Contact.php:905
+msgid "Advanced Contact Settings"
+msgstr "Réglages avancés du contact"
+
+#: src/Module/Contact.php:991
+msgid "Mutual Friendship"
+msgstr "Relation réciproque"
+
+#: src/Module/Contact.php:996
+msgid "is a fan of yours"
+msgstr "Vous suit"
+
+#: src/Module/Contact.php:1001
+msgid "you are a fan of"
+msgstr "Vous le/la suivez"
+
+#: src/Module/Contact.php:1025
+msgid "Edit contact"
+msgstr "Éditer le contact"
+
+#: src/Module/Contact.php:1079
+msgid "Toggle Blocked status"
+msgstr "(dés)activer l'état \"bloqué\""
+
+#: src/Module/Contact.php:1087
+msgid "Toggle Ignored status"
+msgstr "(dés)activer l'état \"ignoré\""
+
+#: src/Module/Contact.php:1096
+msgid "Toggle Archive status"
+msgstr "(dés)activer l'état \"archivé\""
+
+#: src/Module/Contact.php:1104
+msgid "Delete contact"
+msgstr "Effacer ce contact"
+
+#: src/Module/Install.php:118
+msgid "Friendica Communications Server - Setup"
+msgstr ""
+
+#: src/Module/Install.php:129
+msgid "System check"
 msgstr "Vérifications système"
 
-#: src/Module/Install.php:136
+#: src/Module/Install.php:134
 msgid "Check again"
 msgstr "Vérifier Ã  nouveau"
 
-#: src/Module/Install.php:153
+#: src/Module/Install.php:151
 msgid "Database connection"
 msgstr "Connexion Ã  la base de données"
 
-#: src/Module/Install.php:154
+#: src/Module/Install.php:152
 msgid ""
 "In order to install Friendica we need to know how to connect to your "
 "database."
 msgstr "Pour installer Friendica, nous avons besoin de savoir comment contacter votre base de données."
 
-#: src/Module/Install.php:155
+#: src/Module/Install.php:153
 msgid ""
 "Please contact your hosting provider or site administrator if you have "
 "questions about these settings."
 msgstr "Merci de vous tourner vers votre hébergeur et/ou administrateur pour toute question concernant ces réglages."
 
-#: src/Module/Install.php:156
+#: src/Module/Install.php:154
 msgid ""
 "The database you specify below should already exist. If it does not, please "
 "create it before continuing."
 msgstr "La base de données que vous spécifierez doit exister. Si ce n'est pas encore le cas, merci de la créer avant de continuer."
 
-#: src/Module/Install.php:159
+#: src/Module/Install.php:157
 msgid "Database Server Name"
 msgstr "Serveur de base de données"
 
-#: src/Module/Install.php:164
+#: src/Module/Install.php:162
 msgid "Database Login Name"
 msgstr "Nom d'utilisateur de la base"
 
-#: src/Module/Install.php:170
+#: src/Module/Install.php:168
 msgid "Database Login Password"
 msgstr "Mot de passe de la base"
 
-#: src/Module/Install.php:172
+#: src/Module/Install.php:170
 msgid "For security reasons the password must not be empty"
 msgstr "Pour des raisons de sécurité, le mot de passe ne peut pas Ãªtre vide."
 
-#: src/Module/Install.php:175
+#: src/Module/Install.php:173
 msgid "Database Name"
 msgstr "Nom de la base"
 
-#: src/Module/Install.php:180 src/Module/Install.php:216
+#: src/Module/Install.php:178 src/Module/Install.php:214
 msgid "Site administrator email address"
 msgstr "Adresse Ã©lectronique de l'administrateur du site"
 
-#: src/Module/Install.php:182 src/Module/Install.php:216
+#: src/Module/Install.php:180 src/Module/Install.php:214
 msgid ""
 "Your account email address must match this in order to use the web admin "
 "panel."
 msgstr "Votre adresse Ã©lectronique doit correspondre Ã  celle-ci pour pouvoir utiliser l'interface d'administration."
 
-#: src/Module/Install.php:186 src/Module/Install.php:217
+#: src/Module/Install.php:184 src/Module/Install.php:215
 msgid "Please select a default timezone for your website"
 msgstr "Sélectionner un fuseau horaire par défaut pour votre site"
 
-#: src/Module/Install.php:210
+#: src/Module/Install.php:208
 msgid "Site settings"
 msgstr "Réglages du site"
 
-#: src/Module/Install.php:219
+#: src/Module/Install.php:217
 msgid "System Language:"
 msgstr "Langue système :"
 
-#: src/Module/Install.php:221
+#: src/Module/Install.php:219
 msgid ""
 "Set the default language for your Friendica installation interface and to "
 "send emails."
 msgstr "Définit la langue par défaut pour l'interface de votre instance Friendica et les mails envoyés."
 
-#: src/Module/Install.php:233
+#: src/Module/Install.php:231
 msgid "Your Friendica site database has been installed."
 msgstr "La base de données de votre site Friendica a bien Ã©té installée."
 
-#: src/Module/Install.php:241
+#: src/Module/Install.php:239
 msgid "Installation finished"
 msgstr ""
 
-#: src/Module/Install.php:262
+#: src/Module/Install.php:261
 msgid "<h1>What next</h1>"
 msgstr "<h1>Ensuite</h1>"
 
-#: src/Module/Install.php:263
+#: src/Module/Install.php:262
 msgid ""
 "IMPORTANT: You will need to [manually] setup a scheduled task for the "
 "worker."
 msgstr "IMPORTANT: vous devrez ajouter [manuellement] une tâche planifiée pour le 'worker'."
 
-#: src/Module/Install.php:266
+#: src/Module/Install.php:265
 #, php-format
 msgid ""
 "Go to your new Friendica node <a href=\"%s/register\">registration page</a> "
@@ -9227,7 +9567,7 @@ msgid ""
 " administrator email. This will allow you to enter the site admin panel."
 msgstr ""
 
-#: src/Module/Itemsource.php:33
+#: src/Module/Itemsource.php:41
 msgid "Item Guid"
 msgstr ""
 
@@ -9267,442 +9607,298 @@ msgstr "Politique de confidentialité du site internet"
 msgid "privacy policy"
 msgstr "politique de confidentialité"
 
-#: src/Module/Logout.php:29
+#: src/Module/Logout.php:27
 msgid "Logged out."
 msgstr "Déconnecté."
 
-#: src/Module/Proxy.php:136
+#: src/Module/Proxy.php:73
 msgid "Bad Request."
 msgstr ""
 
-#: src/Module/Tos.php:35 src/Module/Tos.php:75
+#: src/Module/Register.php:83
 msgid ""
-"At the time of registration, and for providing communications between the "
-"user account and their contacts, the user has to provide a display name (pen"
-" name), an username (nickname) and a working email address. The names will "
-"be accessible on the profile page of the account by any visitor of the page,"
-" even if other profile details are not displayed. The email address will "
-"only be used to send the user notifications about interactions, but wont be "
-"visibly displayed. The listing of an account in the node's user directory or"
-" the global user directory is optional and can be controlled in the user "
-"settings, it is not necessary for communication."
+"You may (optionally) fill in this form via OpenID by supplying your OpenID "
+"and clicking \"Register\"."
 msgstr ""
 
-#: src/Module/Tos.php:36 src/Module/Tos.php:76
+#: src/Module/Register.php:84
 msgid ""
-"This data is required for communication and is passed on to the nodes of the"
-" communication partners and is stored there. Users can enter additional "
-"private data that may be transmitted to the communication partners accounts."
-msgstr ""
+"If you are not familiar with OpenID, please leave that field blank and fill "
+"in the rest of the items."
+msgstr "Si vous n'êtes pas familier avec OpenID, laissez ce champ vide et remplissez le reste."
 
-#: src/Module/Tos.php:37 src/Module/Tos.php:77
-#, php-format
-msgid ""
-"At any point in time a logged in user can export their account data from the"
-" <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants "
-"to delete their account they can do so at <a "
-"href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will "
-"be permanent. Deletion of the data will also be requested from the nodes of "
-"the communication partners."
-msgstr ""
+#: src/Module/Register.php:85
+msgid "Your OpenID (optional): "
+msgstr "Votre OpenID (facultatif): "
 
-#: src/Module/Tos.php:40 src/Module/Tos.php:74
-msgid "Privacy Statement"
-msgstr ""
+#: src/Module/Register.php:94
+msgid "Include your profile in member directory?"
+msgstr "Inclure votre profil dans l'annuaire des membres?"
 
-#: src/Object/Post.php:134
-msgid "This entry was edited"
-msgstr "Cette entrée a Ã©té Ã©ditée"
+#: src/Module/Register.php:117
+msgid "Note for the admin"
+msgstr "Commentaire pour l'administrateur"
 
-#: src/Object/Post.php:197
-msgid "Delete locally"
-msgstr ""
+#: src/Module/Register.php:117
+msgid "Leave a message for the admin, why you want to join this node"
+msgstr "Indiquez Ã  l'administrateur les raisons de votre inscription Ã  cette instance."
 
-#: src/Object/Post.php:200
-msgid "Delete globally"
-msgstr ""
+#: src/Module/Register.php:118
+msgid "Membership on this site is by invitation only."
+msgstr "L'inscription Ã  ce site se fait uniquement sur invitation."
 
-#: src/Object/Post.php:200
-msgid "Remove locally"
+#: src/Module/Register.php:119
+msgid "Your invitation code: "
 msgstr ""
 
-#: src/Object/Post.php:214
-msgid "save to folder"
-msgstr "sauver vers dossier"
-
-#: src/Object/Post.php:249
-msgid "I will attend"
-msgstr "Je vais participer"
-
-#: src/Object/Post.php:249
-msgid "I will not attend"
-msgstr "Je ne vais pas participer"
-
-#: src/Object/Post.php:249
-msgid "I might attend"
-msgstr "Je vais peut-être participer"
-
-#: src/Object/Post.php:277
-msgid "ignore thread"
-msgstr "ignorer le fil"
-
-#: src/Object/Post.php:278
-msgid "unignore thread"
-msgstr "Ne plus ignorer le fil"
-
-#: src/Object/Post.php:279
-msgid "toggle ignore status"
-msgstr "Ignorer le statut"
-
-#: src/Object/Post.php:290
-msgid "add star"
-msgstr "mettre en avant"
-
-#: src/Object/Post.php:291
-msgid "remove star"
-msgstr "ne plus mettre en avant"
-
-#: src/Object/Post.php:292
-msgid "toggle star status"
-msgstr "mettre en avant"
-
-#: src/Object/Post.php:295
-msgid "starred"
-msgstr "mis en avant"
-
-#: src/Object/Post.php:299
-msgid "add tag"
-msgstr "ajouter une Ã©tiquette"
-
-#: src/Object/Post.php:310
-msgid "like"
-msgstr "aime"
-
-#: src/Object/Post.php:311
-msgid "dislike"
-msgstr "n'aime pas"
-
-#: src/Object/Post.php:314
-msgid "Share this"
-msgstr "Partager"
-
-#: src/Object/Post.php:314
-msgid "share"
-msgstr "partager"
-
-#: src/Object/Post.php:381
-msgid "to"
-msgstr "à"
-
-#: src/Object/Post.php:382
-msgid "via"
-msgstr "via"
-
-#: src/Object/Post.php:383
-msgid "Wall-to-Wall"
-msgstr "Inter-mur"
-
-#: src/Object/Post.php:384
-msgid "via Wall-To-Wall:"
-msgstr "en Inter-mur :"
-
-#: src/Object/Post.php:444
-#, php-format
-msgid "%d comment"
-msgid_plural "%d comments"
-msgstr[0] "%d commentaire"
-msgstr[1] "%d commentaires"
-
-#: src/Protocol/Diaspora.php:2434
-msgid "Sharing notification from Diaspora network"
-msgstr "Notification de partage du réseau Diaspora"
-
-#: src/Protocol/Diaspora.php:3528
-msgid "Attachments:"
-msgstr "Pièces jointes : "
-
-#: src/Protocol/OStatus.php:1839
-#, php-format
-msgid "%s is now following %s."
-msgstr "%s suit désormais %s."
-
-#: src/Protocol/OStatus.php:1840
-msgid "following"
-msgstr "following"
-
-#: src/Protocol/OStatus.php:1843
-#, php-format
-msgid "%s stopped following %s."
-msgstr "%s ne suit plus %s."
-
-#: src/Protocol/OStatus.php:1844
-msgid "stopped following"
-msgstr "retiré de la liste de suivi"
-
-#: src/Util/Temporal.php:153
-msgid "YYYY-MM-DD or MM-DD"
-msgstr "AAAA-MM-JJ ou MM-JJ"
-
-#: src/Util/Temporal.php:296
-msgid "never"
-msgstr "jamais"
-
-#: src/Util/Temporal.php:303
-msgid "less than a second ago"
-msgstr "il y a moins d'une seconde"
-
-#: src/Util/Temporal.php:311
-msgid "year"
-msgstr "an"
-
-#: src/Util/Temporal.php:311
-msgid "years"
-msgstr "ans"
-
-#: src/Util/Temporal.php:312
-msgid "months"
-msgstr "mois"
-
-#: src/Util/Temporal.php:313
-msgid "weeks"
-msgstr "semaines"
-
-#: src/Util/Temporal.php:314
-msgid "days"
-msgstr "jours"
-
-#: src/Util/Temporal.php:315
-msgid "hour"
-msgstr "heure"
-
-#: src/Util/Temporal.php:315
-msgid "hours"
-msgstr "heures"
-
-#: src/Util/Temporal.php:316
-msgid "minute"
-msgstr "minute"
-
-#: src/Util/Temporal.php:316
-msgid "minutes"
-msgstr "minutes"
+#: src/Module/Register.php:127
+msgid "Your Full Name (e.g. Joe Smith, real or real-looking): "
+msgstr "Votre nom complet (p. ex. Michel Dupont):"
 
-#: src/Util/Temporal.php:317
-msgid "second"
-msgstr "seconde"
+#: src/Module/Register.php:128
+msgid ""
+"Your Email Address: (Initial information will be send there, so this has to "
+"be an existing address.)"
+msgstr "Votre courriel : (Des informations de connexion vont Ãªtre envoyées Ã  cette adresse; elle doit exister)."
 
-#: src/Util/Temporal.php:317
-msgid "seconds"
-msgstr "secondes"
+#: src/Module/Register.php:130
+msgid "Leave empty for an auto generated password."
+msgstr "Laisser ce champ libre pour obtenir un mot de passe généré automatiquement."
 
-#: src/Util/Temporal.php:327
+#: src/Module/Register.php:132
 #, php-format
-msgid "in %1$d %2$s"
+msgid ""
+"Choose a profile nickname. This must begin with a text character. Your "
+"profile address on this site will then be \"<strong>nickname@%s</strong>\"."
 msgstr ""
 
-#: src/Util/Temporal.php:330
-#, php-format
-msgid "%1$d %2$s ago"
-msgstr "il y a %1$d %2$s "
+#: src/Module/Register.php:133
+msgid "Choose a nickname: "
+msgstr "Choisir un pseudo : "
 
-#: src/Worker/Delivery.php:433
-msgid "(no subject)"
-msgstr "(sans titre)"
+#: src/Module/Register.php:142
+msgid "Import your profile to this friendica instance"
+msgstr "Importer votre profile dans cette instance de friendica"
 
-#: update.php:195
-#, php-format
-msgid "%s: Updating author-id and owner-id in item and thread table. "
+#: src/Module/Register.php:150
+msgid "Note: This node explicitly contains adult content"
 msgstr ""
 
-#: update.php:241
-#, php-format
-msgid "%s: Updating post-type."
-msgstr ""
+#: src/Module/Register.php:243
+msgid ""
+"Registration successful. Please check your email for further instructions."
+msgstr "Inscription réussie. Vérifiez vos emails pour la suite des instructions."
 
-#: view/theme/duepuntozero/config.php:56
-msgid "greenzero"
-msgstr "greenzero"
+#: src/Module/Register.php:247
+#, php-format
+msgid ""
+"Failed to send email message. Here your accout details:<br> login: %s<br> "
+"password: %s<br><br>You can change your password after login."
+msgstr "Impossible d’envoyer le courriel de confirmation. Voici vos informations de connexion:<br> identifiant : %s<br> mot de passe : %s<br><br>Vous pourrez changer votre mot de passe une fois connecté."
 
-#: view/theme/duepuntozero/config.php:57
-msgid "purplezero"
-msgstr "purplezero"
+#: src/Module/Register.php:254
+msgid "Registration successful."
+msgstr "Inscription réussie."
 
-#: view/theme/duepuntozero/config.php:58
-msgid "easterbunny"
-msgstr "easterbunny"
+#: src/Module/Register.php:259
+msgid "Your registration can not be processed."
+msgstr "Votre inscription ne peut Ãªtre traitée."
 
-#: view/theme/duepuntozero/config.php:59
-msgid "darkzero"
-msgstr "darkzero"
+#: src/Module/Register.php:305
+msgid "Your registration is pending approval by the site owner."
+msgstr "Votre inscription attend une validation du propriétaire du site."
 
-#: view/theme/duepuntozero/config.php:60
-msgid "comix"
-msgstr "comix"
+#: src/Module/Tos.php:35 src/Module/Tos.php:77
+msgid ""
+"At the time of registration, and for providing communications between the "
+"user account and their contacts, the user has to provide a display name (pen"
+" name), an username (nickname) and a working email address. The names will "
+"be accessible on the profile page of the account by any visitor of the page,"
+" even if other profile details are not displayed. The email address will "
+"only be used to send the user notifications about interactions, but wont be "
+"visibly displayed. The listing of an account in the node's user directory or"
+" the global user directory is optional and can be controlled in the user "
+"settings, it is not necessary for communication."
+msgstr ""
 
-#: view/theme/duepuntozero/config.php:61
-msgid "slackr"
-msgstr "slackr"
+#: src/Module/Tos.php:36 src/Module/Tos.php:78
+msgid ""
+"This data is required for communication and is passed on to the nodes of the"
+" communication partners and is stored there. Users can enter additional "
+"private data that may be transmitted to the communication partners accounts."
+msgstr ""
 
-#: view/theme/duepuntozero/config.php:75
-msgid "Variations"
-msgstr "Variations"
+#: src/Module/Tos.php:37 src/Module/Tos.php:79
+#, php-format
+msgid ""
+"At any point in time a logged in user can export their account data from the"
+" <a href=\"%1$s/settings/uexport\">account settings</a>. If the user wants "
+"to delete their account they can do so at <a "
+"href=\"%1$s/removeme\">%1$s/removeme</a>. The deletion of the account will "
+"be permanent. Deletion of the data will also be requested from the nodes of "
+"the communication partners."
+msgstr ""
 
-#: view/theme/frio/config.php:103
-msgid "Custom"
-msgstr "Personnalisé"
+#: src/Module/Tos.php:40 src/Module/Tos.php:76
+msgid "Privacy Statement"
+msgstr ""
 
-#: view/theme/frio/config.php:115
-msgid "Note"
-msgstr "Remarque"
+#: src/Object/Post.php:136
+msgid "This entry was edited"
+msgstr "Cette entrée a Ã©té Ã©ditée"
 
-#: view/theme/frio/config.php:115
-msgid "Check image permissions if all users are allowed to see the image"
-msgstr "Vérifier que tous les utilisateurs du site sont autorisés Ã  voir l'image."
+#: src/Object/Post.php:198
+msgid "Delete locally"
+msgstr ""
 
-#: view/theme/frio/config.php:122
-msgid "Select color scheme"
-msgstr "Choisir le schéma de couleurs"
+#: src/Object/Post.php:201
+msgid "Delete globally"
+msgstr ""
 
-#: view/theme/frio/config.php:123
-msgid "Navigation bar background color"
-msgstr "Couleur d'arrière-plan de la barre de navigation"
+#: src/Object/Post.php:201
+msgid "Remove locally"
+msgstr ""
 
-#: view/theme/frio/config.php:124
-msgid "Navigation bar icon color "
-msgstr "Couleur des icônes de la barre de navigation"
+#: src/Object/Post.php:215
+msgid "save to folder"
+msgstr "sauver vers dossier"
 
-#: view/theme/frio/config.php:125
-msgid "Link color"
-msgstr "Couleur des liens"
+#: src/Object/Post.php:250
+msgid "I will attend"
+msgstr "Je vais participer"
 
-#: view/theme/frio/config.php:126
-msgid "Set the background color"
-msgstr "Couleur d'arrière-plan"
+#: src/Object/Post.php:250
+msgid "I will not attend"
+msgstr "Je ne vais pas participer"
 
-#: view/theme/frio/config.php:127
-msgid "Content background opacity"
-msgstr "Opacité du contenu d'arrière-plan"
+#: src/Object/Post.php:250
+msgid "I might attend"
+msgstr "Je vais peut-être participer"
 
-#: view/theme/frio/config.php:128
-msgid "Set the background image"
-msgstr "Image d'arrière-plan"
+#: src/Object/Post.php:278
+msgid "ignore thread"
+msgstr "ignorer le fil"
 
-#: view/theme/frio/config.php:129
-msgid "Background image style"
-msgstr "Style de l'image de fond"
+#: src/Object/Post.php:279
+msgid "unignore thread"
+msgstr "Ne plus ignorer le fil"
 
-#: view/theme/frio/config.php:134
-msgid "Login page background image"
-msgstr "Image de fond de la page de login"
+#: src/Object/Post.php:280
+msgid "toggle ignore status"
+msgstr "Ignorer le statut"
 
-#: view/theme/frio/config.php:138
-msgid "Login page background color"
-msgstr "Couleur d'arrière-plan de la page de login"
+#: src/Object/Post.php:291
+msgid "add star"
+msgstr "mettre en avant"
 
-#: view/theme/frio/config.php:138
-msgid "Leave background image and color empty for theme defaults"
-msgstr "Laisser l'image et la couleur de fond vides pour les paramètres par défaut du thème"
+#: src/Object/Post.php:292
+msgid "remove star"
+msgstr "ne plus mettre en avant"
 
-#: view/theme/frio/php/Image.php:24
-msgid "Top Banner"
-msgstr "Bannière du haut"
+#: src/Object/Post.php:293
+msgid "toggle star status"
+msgstr "mettre en avant"
 
-#: view/theme/frio/php/Image.php:24
-msgid ""
-"Resize image to the width of the screen and show background color below on "
-"long pages."
-msgstr "Redimensionner l'image Ã  la largeur de l'écran et combler en dessous avec la couleur d'arrière plan."
+#: src/Object/Post.php:296
+msgid "starred"
+msgstr "mis en avant"
 
-#: view/theme/frio/php/Image.php:25
-msgid "Full screen"
-msgstr "Plein Ã©cran"
+#: src/Object/Post.php:300
+msgid "add tag"
+msgstr "ajouter une Ã©tiquette"
 
-#: view/theme/frio/php/Image.php:25
-msgid ""
-"Resize image to fill entire screen, clipping either the right or the bottom."
-msgstr "Agrandir l'image pour remplir l'écran, jusqu'à toucher le bord droit ou le bas de l'écran."
+#: src/Object/Post.php:311
+msgid "like"
+msgstr "aime"
 
-#: view/theme/frio/php/Image.php:26
-msgid "Single row mosaic"
-msgstr "Mosaïque sur un rang"
+#: src/Object/Post.php:312
+msgid "dislike"
+msgstr "n'aime pas"
 
-#: view/theme/frio/php/Image.php:26
-msgid ""
-"Resize image to repeat it on a single row, either vertical or horizontal."
-msgstr "Redimensionner l'image pour la dupliquer sur un seul rang, vertical ou horizontal."
+#: src/Object/Post.php:315
+msgid "Share this"
+msgstr "Partager"
 
-#: view/theme/frio/php/Image.php:27
-msgid "Mosaic"
-msgstr "Mosaïque"
+#: src/Object/Post.php:315
+msgid "share"
+msgstr "partager"
 
-#: view/theme/frio/php/Image.php:27
-msgid "Repeat image to fill the screen."
-msgstr "Dupliquer l'image pour couvrir l'écran."
+#: src/Object/Post.php:382
+msgid "to"
+msgstr "à"
 
-#: view/theme/frio/theme.php:252
-msgid "Guest"
-msgstr "Invité"
+#: src/Object/Post.php:383
+msgid "via"
+msgstr "via"
 
-#: view/theme/frio/theme.php:257
-msgid "Visitor"
-msgstr "Visiteur"
+#: src/Object/Post.php:384
+msgid "Wall-to-Wall"
+msgstr "Inter-mur"
 
-#: view/theme/quattro/config.php:77
-msgid "Alignment"
-msgstr "Alignement"
+#: src/Object/Post.php:385
+msgid "via Wall-To-Wall:"
+msgstr "en Inter-mur :"
 
-#: view/theme/quattro/config.php:77
-msgid "Left"
-msgstr "Gauche"
+#: src/Object/Post.php:432
+msgid "Notifier task is pending"
+msgstr ""
 
-#: view/theme/quattro/config.php:77
-msgid "Center"
-msgstr "Centre"
+#: src/Object/Post.php:433
+msgid "Delivery to remote servers is pending"
+msgstr ""
 
-#: view/theme/quattro/config.php:78
-msgid "Color scheme"
-msgstr "Palette de couleurs"
+#: src/Object/Post.php:434
+msgid "Delivery to remote servers is underway"
+msgstr ""
 
-#: view/theme/quattro/config.php:79
-msgid "Posts font size"
-msgstr "Taille de texte des publications"
+#: src/Object/Post.php:435
+msgid "Delivery to remote servers is mostly done"
+msgstr ""
 
-#: view/theme/quattro/config.php:80
-msgid "Textareas font size"
-msgstr "Taille de police des zones de texte"
+#: src/Object/Post.php:436
+msgid "Delivery to remote servers is done"
+msgstr ""
 
-#: view/theme/vier/config.php:76
-msgid "Comma separated list of helper forums"
-msgstr "Liste de forums d'aide, séparés par des virgules"
+#: src/Object/Post.php:455
+#, php-format
+msgid "%d comment"
+msgid_plural "%d comments"
+msgstr[0] "%d commentaire"
+msgstr[1] "%d commentaires"
 
-#: view/theme/vier/config.php:123
-msgid "Set style"
-msgstr "Définir le style"
+#: src/App.php:665
+msgid "Delete this item?"
+msgstr "Effacer cet Ã©lément?"
 
-#: view/theme/vier/config.php:124
-msgid "Community Pages"
-msgstr "Pages de Communauté"
+#: src/App.php:667
+msgid "show fewer"
+msgstr "montrer moins"
 
-#: view/theme/vier/config.php:125 view/theme/vier/theme.php:151
-msgid "Community Profiles"
-msgstr "Profils communautaires"
+#: src/App.php:709
+msgid "toggle mobile"
+msgstr "activ. mobile"
 
-#: view/theme/vier/config.php:126
-msgid "Help or @NewHere ?"
-msgstr "Aide ou @NewHere?"
+#: src/App.php:1077
+msgid "No system theme config value set."
+msgstr ""
 
-#: view/theme/vier/config.php:127 view/theme/vier/theme.php:388
-msgid "Connect Services"
-msgstr "Connecter des services"
+#: src/BaseModule.php:133
+msgid ""
+"The form security token was not correct. This probably happened because the "
+"form has been opened for too long (>3 hours) before submitting it."
+msgstr "Le jeton de sécurité du formulaire n'est pas correct. Ceci veut probablement dire que le formulaire est resté ouvert trop longtemps (plus de 3 heures) avant d'être validé."
 
-#: view/theme/vier/config.php:128
-msgid "Find Friends"
-msgstr "Trouver des amis"
+#: src/LegacyModule.php:30
+#, php-format
+msgid "Legacy module file not found: %s"
+msgstr ""
 
-#: view/theme/vier/config.php:129 view/theme/vier/theme.php:181
-msgid "Last users"
-msgstr "Derniers utilisateurs"
+#: update.php:217
+#, php-format
+msgid "%s: Updating author-id and owner-id in item and thread table. "
+msgstr ""
 
-#: view/theme/vier/theme.php:291
-msgid "Quick Start"
-msgstr "Démarrage rapide"
+#: update.php:272
+#, php-format
+msgid "%s: Updating post-type."
+msgstr ""
index 3e4b22afa8d9cd25f34133df4ed57168cabcd932..6f4943a978bb259205bdfa46bcb778282fad386a 100644 (file)
@@ -11,8 +11,8 @@ $a->strings["Daily posting limit of %d post reached. The post was rejected."] =
        1 => "Limite quotidienne de %dpublications atteinte.  La publication a Ã©té rejetée.",
 ];
 $a->strings["Weekly posting limit of %d post reached. The post was rejected."] = [
-       0 => "",
-       1 => "",
+       0 => "Limite hebdomadaire d'%d unique publication atteinte, votre soumission a Ã©té rejetée.",
+       1 => "Limite hebdomadaire de %d publications atteinte, votre soumission a Ã©té rejetée.",
 ];
 $a->strings["Monthly posting limit of %d post reached. The post was rejected."] = "La limite mensuelle de%d publication est atteinte. Votre publication a Ã©té rejetée.";
 $a->strings["Profile Photos"] = "Photos du profil";
@@ -135,18 +135,22 @@ $a->strings["%1\$s sent you a new private message at %2\$s."] = "%1\$s vous a en
 $a->strings["a private message"] = "un message privé";
 $a->strings["%1\$s sent you %2\$s."] = "%1\$s vous a envoyé %2\$s.";
 $a->strings["Please visit %s to view and/or reply to your private messages."] = "Merci de visiter %s pour voir vos messages privés et/ou y répondre.";
+$a->strings["%1\$s tagged you on [url=%2\$s]a %3\$s[/url]"] = "%1\$s vous a mentionné•e sur [url=%2\$s]un•e %3\$s[/url]";
 $a->strings["%1\$s commented on [url=%2\$s]a %3\$s[/url]"] = "%1\$s a commenté sur [url=%2\$s]un %3\$s[/url]";
+$a->strings["%1\$s tagged you on [url=%2\$s]%3\$s's %4\$s[/url]"] = "%1\$s vous a mentionné•e sur [url=%2\$s]un•e %4\$s de %3\$s [/url]";
 $a->strings["%1\$s commented on [url=%2\$s]%3\$s's %4\$s[/url]"] = "%1\$s a commenté sur [url=%2\$s]le %4\$s de %3\$s[/url]";
+$a->strings["%1\$s tagged you on [url=%2\$s]your %3\$s[/url]"] = "%1\$s vous a mentionné•e sur [url=%2\$s]votre %3\$s[/url]";
 $a->strings["%1\$s commented on [url=%2\$s]your %3\$s[/url]"] = "%1\$s commented on [url=%2\$s]your %3\$s[/url]";
+$a->strings["%1\$s tagged you on [url=%2\$s]their %3\$s[/url]"] = "%1\$s vous a mentionné•e sur [url=%2\$s]leur %3\$s[/url]";
+$a->strings["%1\$s commented on [url=%2\$s]their %3\$s[/url]"] = "%1\$s a commenté sur [url=%2\$s]leur %3\$s[/url]";
+$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica:Notification] %s vous a Ã©tiqueté";
+$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s vous a Ã©tiqueté sur %2\$s";
 $a->strings["[Friendica:Notify] Comment to conversation #%1\$d by %2\$s"] = "[Friendica:Notification] Commentaire de %2\$s sur la conversation #%1\$d";
 $a->strings["%s commented on an item/conversation you have been following."] = "%s a commenté un Ã©lément que vous suivez.";
 $a->strings["Please visit %s to view and/or reply to the conversation."] = "Merci de visiter %s pour voir la conversation et/ou y répondre.";
 $a->strings["[Friendica:Notify] %s posted to your profile wall"] = "[Friendica:Notification] %s a posté sur votre mur";
 $a->strings["%1\$s posted to your profile wall at %2\$s"] = "%1\$s a publié sur votre mur Ã  %2\$s";
 $a->strings["%1\$s posted to [url=%2\$s]your wall[/url]"] = "%1\$s a posté sur [url=%2\$s]votre mur[/url]";
-$a->strings["[Friendica:Notify] %s tagged you"] = "[Friendica:Notification] %s vous a Ã©tiqueté";
-$a->strings["%1\$s tagged you at %2\$s"] = "%1\$s vous a Ã©tiqueté sur %2\$s";
-$a->strings["%1\$s [url=%2\$s]tagged you[/url]."] = "%1\$s [url=%2\$s]vous a Ã©tiqueté[/url].";
 $a->strings["[Friendica:Notify] %s shared a new post"] = "[Friendica:Notification] %s partage une nouvelle publication";
 $a->strings["%1\$s shared a new post at %2\$s"] = "%1\$s a partagé une nouvelle publication sur %2\$s";
 $a->strings["%1\$s [url=%2\$s]shared a post[/url]."] = "%1\$s [url=%2\$s]partage une publication[/url].";
@@ -183,7 +187,7 @@ $a->strings["[Friendica System Notify]"] = "[Friendica Notification Sytème]";
 $a->strings["registration request"] = "demande d'inscription";
 $a->strings["You've received a registration request from '%1\$s' at %2\$s"] = "Vous avez reçu une demande d'inscription de %1\$s sur %2\$s";
 $a->strings["You've received a [url=%1\$s]registration request[/url] from %2\$s."] = "%2\$s vous a envoyé une [url=%1\$s]demande de création de compte[/url].";
-$a->strings["Full Name:\t%s\nSite Location:\t%s\nLogin Name:\t%s (%s)"] = "";
+$a->strings["Full Name:\t%s\nSite Location:\t%s\nLogin Name:\t%s (%s)"] = "Nom complet :\t%s\nAdresse du site :\t%s\nIdentifiant :\t%s (%s)";
 $a->strings["Please visit %s to approve or reject the request."] = "Veuillez visiter %s pour approuver ou rejeter la demande.";
 $a->strings["Item not found."] = "Élément introuvable.";
 $a->strings["Do you really want to delete this item?"] = "Voulez-vous vraiment supprimer cet Ã©lément ?";
@@ -191,9 +195,13 @@ $a->strings["Yes"] = "Oui";
 $a->strings["Permission denied."] = "Permission refusée.";
 $a->strings["Archives"] = "Archives";
 $a->strings["show more"] = "montrer plus";
+$a->strings["You must be logged in to use addons. "] = "Vous devez Ãªtre connecté pour utiliser les greffons.";
+$a->strings["Applications"] = "Applications";
+$a->strings["No installed applications."] = "Pas d'application installée.";
+$a->strings["System down for maintenance"] = "Système indisponible pour cause de maintenance";
 $a->strings["Theme settings updated."] = "Réglages du thème sauvés.";
 $a->strings["Information"] = "Information";
-$a->strings["Overview"] = "";
+$a->strings["Overview"] = "Synthèse";
 $a->strings["Federation Statistics"] = "Statistiques Federation";
 $a->strings["Configuration"] = "Configuration";
 $a->strings["Site"] = "Site";
@@ -205,29 +213,29 @@ $a->strings["Terms of Service"] = "Conditions de service";
 $a->strings["Database"] = "Base de données";
 $a->strings["DB updates"] = "Mise-à-jour de la base";
 $a->strings["Inspect Queue"] = "Inspecter la file d'attente";
-$a->strings["Inspect Deferred Workers"] = "";
-$a->strings["Inspect worker Queue"] = "";
+$a->strings["Inspect Deferred Workers"] = "Tâches de fond reportées";
+$a->strings["Inspect worker Queue"] = "Tâches de fond en attente";
 $a->strings["Tools"] = "Outils";
 $a->strings["Contact Blocklist"] = "Liste de contacts bloqués";
 $a->strings["Server Blocklist"] = "Serveurs bloqués";
 $a->strings["Delete Item"] = "Supprimer un Ã©lément";
 $a->strings["Logs"] = "Journaux";
 $a->strings["View Logs"] = "Voir les logs";
-$a->strings["Diagnostics"] = "";
-$a->strings["PHP Info"] = "";
+$a->strings["Diagnostics"] = "Diagnostics";
+$a->strings["PHP Info"] = "PHP Info";
 $a->strings["probe address"] = "Tester une adresse";
 $a->strings["check webfinger"] = "vérification de webfinger";
 $a->strings["Admin"] = "Admin";
-$a->strings["Addon Features"] = "";
+$a->strings["Addon Features"] = "Fonctionnalités des addons";
 $a->strings["User registrations waiting for confirmation"] = "Inscriptions en attente de confirmation";
 $a->strings["Administration"] = "Administration";
-$a->strings["Display Terms of Service"] = "";
-$a->strings["Enable the Terms of Service page. If this is enabled a link to the terms will be added to the registration form and the general information page."] = "";
-$a->strings["Display Privacy Statement"] = "";
-$a->strings["Show some informations regarding the needed information to operate the node according e.g. to <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."] = "";
-$a->strings["Privacy Statement Preview"] = "";
-$a->strings["The Terms of Service"] = "";
-$a->strings["Enter the Terms of Service for your node here. You can use BBCode. Headers of sections should be [h2] and below."] = "";
+$a->strings["Display Terms of Service"] = "Afficher les Conditions d'Utilisation";
+$a->strings["Enable the Terms of Service page. If this is enabled a link to the terms will be added to the registration form and the general information page."] = "Active la page de Conditions d'Utilisation. Un lien vers cette page est ajouté dans le formulaire d'inscription et la page A Propos.";
+$a->strings["Display Privacy Statement"] = "Afficher la Politique de Confidentialité";
+$a->strings["Show some informations regarding the needed information to operate the node according e.g. to <a href=\"%s\" target=\"_blank\">EU-GDPR</a>."] = "Affiche les informations légales nécessaires pour publier un site Friendica en accord avec le <a href=\"%s\" target=\"_blank\">RGPD européen</a> par exemple.";
+$a->strings["Privacy Statement Preview"] = "Aperçu de la Politique de Confidentialité";
+$a->strings["The Terms of Service"] = "Conditions d'Utilisation";
+$a->strings["Enter the Terms of Service for your node here. You can use BBCode. Headers of sections should be [h2] and below."] = "Saisissez les Conditions d'Utilisations de votre site. Les BBCodes sont disponibles, les titres commencent Ã  [h2].";
 $a->strings["Save Settings"] = "Sauvegarder les paramètres";
 $a->strings["Blocked domain"] = "Domaine bloqué";
 $a->strings["The blocked domain"] = "Domaine bloqué";
@@ -248,31 +256,31 @@ $a->strings["Delete entry from blocklist"] = "Supprimer l'entrée de la liste no
 $a->strings["Delete entry from blocklist?"] = "Supprimer l'entrée de la liste noire ?";
 $a->strings["Server added to blocklist."] = "Serveur ajouté Ã  la liste noire.";
 $a->strings["Site blocklist updated."] = "Liste noire mise Ã  jour.";
-$a->strings["The contact has been blocked from the node"] = "";
-$a->strings["Could not find any contact entry for this URL (%s)"] = "";
+$a->strings["The contact has been blocked from the node"] = "Le profile distant a Ã©té bloqué";
+$a->strings["Could not find any contact entry for this URL (%s)"] = "Aucun profil distant n'a Ã©té trouvé Ã  cette URL (%s)";
 $a->strings["%s contact unblocked"] = [
-       0 => "",
-       1 => "",
+       0 => "%s contact débloqué",
+       1 => "%s profiles distants débloqués",
 ];
-$a->strings["Remote Contact Blocklist"] = "";
-$a->strings["This page allows you to prevent any message from a remote contact to reach your node."] = "";
-$a->strings["Block Remote Contact"] = "";
+$a->strings["Remote Contact Blocklist"] = "Liste des profiles distants bloqués";
+$a->strings["This page allows you to prevent any message from a remote contact to reach your node."] = "Cette page vous permet de refuser toutes les publications d'un profile distant sur votre site.";
+$a->strings["Block Remote Contact"] = "Bloquer le profile distant";
 $a->strings["select all"] = "tout sélectionner";
-$a->strings["select none"] = "";
+$a->strings["select none"] = "Sélectionner tous";
 $a->strings["Block"] = "Bloquer";
 $a->strings["Unblock"] = "Débloquer";
-$a->strings["No remote contact is blocked from this node."] = "";
-$a->strings["Blocked Remote Contacts"] = "";
-$a->strings["Block New Remote Contact"] = "";
-$a->strings["Photo"] = "";
+$a->strings["No remote contact is blocked from this node."] = "Aucun profil distant n'est bloqué";
+$a->strings["Blocked Remote Contacts"] = "Profils distants bloqués";
+$a->strings["Block New Remote Contact"] = "Bloquer un nouveau profil distant";
+$a->strings["Photo"] = "Photo";
 $a->strings["Name"] = "Nom";
 $a->strings["Address"] = "Adresse";
 $a->strings["Profile URL"] = "URL du Profil";
 $a->strings["%s total blocked contact"] = [
-       0 => "",
-       1 => "",
+       0 => "%s profil distant bloqué",
+       1 => "%s profils distans bloqués",
 ];
-$a->strings["URL of the remote contact to block."] = "";
+$a->strings["URL of the remote contact to block."] = "URL du profil distant Ã  bloquer.";
 $a->strings["Delete this Item"] = "Supprimer l'élément";
 $a->strings["On this page you can delete an item from your node. If the item is a top level posting, the entire thread will be deleted."] = "Sur cette page, vous pouvez supprimer un Ã©lément de votre noeud. Si cet Ã©lément est le premier post d'un fil de discussion, le fil de discussion entier sera supprimé.";
 $a->strings["You need to know the GUID of the item. You can find it e.g. by looking at the display URL. The last part of http://example.com/display/123456 is the GUID, here 123456."] = "Vous devez connaître le GUID de l'élément. Vous pouvez le trouver en sélectionnant l'élément puis en lisant l'URL. La dernière partie de l'URL est le GUID. Exemple: http://example.com/display/123456 a pour GUID: 123456.";
@@ -282,7 +290,7 @@ $a->strings["Item marked for deletion."] = "L'élément va Ãªtre supprimé.";
 $a->strings["unknown"] = "inconnu";
 $a->strings["This page offers you some numbers to the known part of the federated social network your Friendica node is part of. These numbers are not complete but only reflect the part of the network your node is aware of."] = "Cette page montre quelques statistiques de la partie connue du réseau social fédéré dont votre instance Friendica fait partie. Ces chiffres sont partiels et ne reflètent que la portion du réseau dont votre instance a connaissance.";
 $a->strings["The <em>Auto Discovered Contact Directory</em> feature is not enabled, it will improve the data displayed here."] = "En activant la fonctionnalité <em>Répertoire de Contacts Découverts Automatiquement</em>, cela améliorera la qualité des chiffres présentés ici.";
-$a->strings["Currently this node is aware of %d nodes with %d registered users from the following platforms:"] = "";
+$a->strings["Currently this node is aware of %d nodes with %d registered users from the following platforms:"] = "Ce site a connaissance de %d sites distants totalisant %d utilisateurs répartis entre les plate-formes suivantes :";
 $a->strings["ID"] = "ID";
 $a->strings["Recipient Name"] = "Nom du destinataire";
 $a->strings["Recipient Profile"] = "Profil du destinataire";
@@ -290,40 +298,41 @@ $a->strings["Network"] = "Réseau";
 $a->strings["Created"] = "Créé";
 $a->strings["Last Tried"] = "Dernier essai";
 $a->strings["This page lists the content of the queue for outgoing postings. These are postings the initial delivery failed for. They will be resend later and eventually deleted if the delivery fails permanently."] = "Cette page présente le contenu de la file d'attente pour les publications sortantes. Ce sont des messages dont la première livraison a Ã©choué. Ils seront réenvoyés plus tard et Ã©ventuellement supprimés si l'envoi Ã©choue de façon permanente.";
-$a->strings["Inspect Deferred Worker Queue"] = "";
-$a->strings["This page lists the deferred worker jobs. This are jobs that couldn't be executed at the first time."] = "";
-$a->strings["Inspect Worker Queue"] = "";
-$a->strings["This page lists the currently queued worker jobs. These jobs are handled by the worker cronjob you've set up during install."] = "";
-$a->strings["Job Parameters"] = "";
-$a->strings["Priority"] = "";
-$a->strings["Your DB still runs with MyISAM tables. You should change the engine type to InnoDB. As Friendica will use InnoDB only features in the future, you should change this! See <a href=\"%s\">here</a> for a guide that may be helpful converting the table engines. You may also use the command <tt>php bin/console.php dbstructure toinnodb</tt> of your Friendica installation for an automatic conversion.<br />"] = "";
+$a->strings["Inspect Deferred Worker Queue"] = "Détail des tâches de fond reportées";
+$a->strings["This page lists the deferred worker jobs. This are jobs that couldn't be executed at the first time."] = "Cette page détaille les tâches de fond reportées après avoir Ã©choué une première fois.";
+$a->strings["Inspect Worker Queue"] = "Détail des tâches de fond en attente";
+$a->strings["This page lists the currently queued worker jobs. These jobs are handled by the worker cronjob you've set up during install."] = "Cette page détaille les tâches de fond en attente. Elles seront traitées lors de la prochaine exécution de la tâche planifiée que vous avez définie lors de l'installation.";
+$a->strings["Job Parameters"] = "Paramètres de la tâche";
+$a->strings["Priority"] = "Priorité";
+$a->strings["Your DB still runs with MyISAM tables. You should change the engine type to InnoDB. As Friendica will use InnoDB only features in the future, you should change this! See <a href=\"%s\">here</a> for a guide that may be helpful converting the table engines. You may also use the command <tt>php bin/console.php dbstructure toinnodb</tt> of your Friendica installation for an automatic conversion.<br />"] = "<br />Votre base de donnée comporte des tables MYISAM. Vous devriez changer pour InnoDB car il est prévu d'utiliser des fonctionnalités spécifiques Ã  InnoDB Ã  l'avenir. Veuillez consulter <a href=\"%s\">ce guide de conversion</a> pour mettre Ã  jour votre base de donnée. Vous pouvez Ã©galement exécuter la commande <tt>php bin/console.php dbstructure toinnodb</tt> Ã  la racine de votre répertoire Friendica pour une conversion automatique.";
 $a->strings["There is a new version of Friendica available for download. Your current version is %1\$s, upstream version is %2\$s"] = "Une nouvelle version de Friendica est disponible. Votre version est %1\$s, la nouvelle version est %2\$s";
-$a->strings["The database update failed. Please run \"php bin/console.php dbstructure update\" from the command line and have a look at the errors that might appear."] = "";
+$a->strings["The database update failed. Please run \"php bin/console.php dbstructure update\" from the command line and have a look at the errors that might appear."] = "La mise Ã  jour automatique de la base de donnée a Ã©choué. Veuillez exécuter la commande <code>php bin/console.php dbstructure update</code> depuis votre répertoire Friendica et noter les erreurs potentielles.";
 $a->strings["The worker was never executed. Please check your database structure!"] = "Le 'worker' n'a pas encore Ã©té exécuté. Vérifiez la structure de votre base de données.";
 $a->strings["The last worker execution was on %s UTC. This is older than one hour. Please check your crontab settings."] = "La dernière exécution du 'worker' s'est déroulée Ã  %s, c'est-à-dire il y a plus d'une heure. Vérifiez les réglages de crontab.";
-$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>.htconfig.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "";
-$a->strings["<a href=\"%s\">%s</a> is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See <a href=\"%s\">the installation page</a> for help."] = "";
+$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>.htconfig.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "La configuration de votre site Friendica est maintenant stockée dans le fichier <code>config/local.config.php</code>, veuillez copier le fichier <code>config/local-sample.config.php</code> et transférer votre configuration depuis le fichier <code>.htconfig.php</code>. Veuillez consulter <a href=\"%s\">la page d'aide de configuration (en anglais)</a> pour vous aider dans la transition.";
+$a->strings["Friendica's configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from <code>config/local.ini.php</code>. See <a href=\"%s\">the Config help page</a> for help with the transition."] = "La configuration de votre site Friendica est maintenant stockée dans le fichier <code>config/local.config.php</code>, veuillez copier le fichier <code>config/local-sample.config.php</code> et transférer votre configuration depuis le fichier <code>config/local.ini.php</code>. Veuillez consulter <a href=\"%s\">la page d'aide de configuration (en anglais)</a> pour vous aider dans la transition.";
+$a->strings["<a href=\"%s\">%s</a> is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See <a href=\"%s\">the installation page</a> for help."] = "<a href=\"%s\">%s</a> n'est pas accessible sur votre site. C'est un problème de configuration sévère qui empêche toute communication avec les serveurs distants. Veuillez consulter <a href=\"%s\">la page d'aide Ã  l'installation</a> (en anglais) pour plus d'information.";
 $a->strings["Normal Account"] = "Compte normal";
-$a->strings["Automatic Follower Account"] = "";
-$a->strings["Public Forum Account"] = "";
+$a->strings["Automatic Follower Account"] = "Profile Resuivant";
+$a->strings["Public Forum Account"] = "Forum public";
 $a->strings["Automatic Friend Account"] = "Compte auto-amical";
 $a->strings["Blog Account"] = "Compte de blog";
-$a->strings["Private Forum Account"] = "";
+$a->strings["Private Forum Account"] = "Forum privé";
 $a->strings["Message queues"] = "Files d'attente des messages";
-$a->strings["Server Settings"] = "";
+$a->strings["Server Settings"] = "Paramètres du site";
 $a->strings["Summary"] = "Résumé";
 $a->strings["Registered users"] = "Utilisateurs inscrits";
 $a->strings["Pending registrations"] = "Inscriptions en attente";
 $a->strings["Version"] = "Version";
-$a->strings["Active addons"] = "";
+$a->strings["Active addons"] = "Add-ons actifs";
 $a->strings["Can not parse base url. Must have at least <scheme>://<domain>"] = "Impossible d'analyser l'URL de base. Doit contenir au moins <scheme>://<domain>";
 $a->strings["Site settings updated."] = "Réglages du site mis-à-jour.";
 $a->strings["No special theme for mobile devices"] = "Pas de thème particulier pour les terminaux mobiles";
-$a->strings["No community page for local users"] = "";
+$a->strings["No community page for local users"] = "Pas de page communauté pour les utilisateurs enregistrés";
 $a->strings["No community page"] = "Aucune page de communauté";
 $a->strings["Public postings from users of this site"] = "Publications publiques des utilisateurs de ce site";
-$a->strings["Public postings from the federated network"] = "";
-$a->strings["Public postings from local users and the federated network"] = "";
+$a->strings["Public postings from the federated network"] = "Publications publiques du réseau fédéré";
+$a->strings["Public postings from local users and the federated network"] = "Publications publiques des utilisateurs du site et du réseau fédéré";
 $a->strings["Disabled"] = "Désactivé";
 $a->strings["Users, Global Contacts"] = "Utilisateurs, Contacts Globaux";
 $a->strings["Users, Global Contacts/fallback"] = "Utilisateurs, Contacts Globaux/alternative";
@@ -341,7 +350,8 @@ $a->strings["Self-signed certificate, use SSL for local links only (discouraged)
 $a->strings["Don't check"] = "Ne pas rechercher";
 $a->strings["check the stable version"] = "Rechercher les versions stables";
 $a->strings["check the development version"] = "Rechercher les versions de développement";
-$a->strings["Republish users to directory"] = "";
+$a->strings["Database (legacy)"] = "Base de donnée (historique)";
+$a->strings["Republish users to directory"] = "Republier les utilisateurs sur le répertoire";
 $a->strings["Registration"] = "Inscription";
 $a->strings["File upload"] = "Téléversement de fichier";
 $a->strings["Policies"] = "Politiques";
@@ -349,9 +359,9 @@ $a->strings["Advanced"] = "Avancé";
 $a->strings["Auto Discovered Contact Directory"] = "Répertoire de Contacts Découverts Automatiquement";
 $a->strings["Performance"] = "Performance";
 $a->strings["Worker"] = "Worker";
-$a->strings["Message Relay"] = "";
-$a->strings["Relocate Instance"] = "";
-$a->strings["Warning! Advanced function. Could make this server unreachable."] = "";
+$a->strings["Message Relay"] = "Relai de publication";
+$a->strings["Relocate Instance"] = "Déménager le site";
+$a->strings["Warning! Advanced function. Could make this server unreachable."] = "Attention! Cette fonctionnalité avancée peut rendre votre site inaccessible.";
 $a->strings["Site name"] = "Nom du site";
 $a->strings["Host name"] = "Nom de la machine hôte";
 $a->strings["Sender Email"] = "Courriel de l'émetteur";
@@ -362,7 +372,7 @@ $a->strings["Link to an icon that will be used for browsers."] = "Lien vers une
 $a->strings["Touch icon"] = "Icône pour systèmes tactiles";
 $a->strings["Link to an icon that will be used for tablets and mobiles."] = "Lien vers une icône qui sera utilisée pour les tablettes et les mobiles.";
 $a->strings["Additional Info"] = "Informations supplémentaires";
-$a->strings["For public servers: you can add additional information here that will be listed at %s/servers."] = "";
+$a->strings["For public servers: you can add additional information here that will be listed at %s/servers."] = "Description publique destinée au <a href=\"%s\">répertoire global de sites Friendica</a>.";
 $a->strings["System language"] = "Langue du système";
 $a->strings["System theme"] = "Thème du système";
 $a->strings["Default system theme - may be over-ridden by user profiles - <a href='#' id='cnftheme'>change theme settings</a>"] = "Thème par défaut sur ce site - peut Ãªtre changé au niveau du profile utilisateur - <a href='#' id='cnftheme'>changer les réglages du thème</a>";
@@ -376,6 +386,8 @@ $a->strings["Hide help entry from navigation menu"] = "Cacher l'aide du menu de
 $a->strings["Hides the menu entry for the Help pages from the navigation menu. You can still access it calling /help directly."] = "Cacher du menu de navigation l'entrée vers les pages d'aide. Vous pouvez toujours y accéder en tapant directement /help.";
 $a->strings["Single user instance"] = "Instance mono-utilisateur";
 $a->strings["Make this instance multi-user or single-user for the named user"] = "Transformer cette en instance en multi-utilisateur ou mono-utilisateur pour cet l'utilisateur.";
+$a->strings["File storage backend"] = "Destination du stockage de fichier";
+$a->strings["The backend used to store uploaded data. If you change the storage backend, you can manually move the existing files. If you do not do so, the files uploaded before the change will still be available at the old backend. Please see <a href=\"/help/Settings#1_2_3_1\">the settings documentation</a> for more information about the choices and the moving procedure."] = "La destination du stockage des fichiers. Si vous changez cette destination, vous pouvez migrer les fichiers existants. Si vous ne le faites pas, ils resteront accessibles Ã  leur emplacement actuel. Veuillez consulter <a href=\"/help/Settings#1_2_3_1\">la page d'aide Ã  la Configuration</a> (en anglais) pour plus d'information sur les choix possibles et la procédure de migration.";
 $a->strings["Maximum image size"] = "Taille maximale des images";
 $a->strings["Maximum size in bytes of uploaded images. Default is 0, which means no limits."] = "Taille maximale des images envoyées (en octets). 0 par défaut, c'est Ã  dire \"aucune limite\".";
 $a->strings["Maximum image length"] = "Longueur maximale des images";
@@ -386,24 +398,24 @@ $a->strings["Register policy"] = "Politique d'inscription";
 $a->strings["Maximum Daily Registrations"] = "Inscriptions maximum par jour";
 $a->strings["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."] = "Si les inscriptions sont permises ci-dessus, ceci fixe le nombre maximum d'inscriptions de nouveaux utilisateurs acceptées par jour. Si les inscriptions ne sont pas ouvertes, ce paramètre n'a aucun effet.";
 $a->strings["Register text"] = "Texte d'inscription";
-$a->strings["Will be displayed prominently on the registration page. You can use BBCode here."] = "";
-$a->strings["Forbidden Nicknames"] = "";
-$a->strings["Comma separated list of nicknames that are forbidden from registration. Preset is a list of role names according RFC 2142."] = "";
+$a->strings["Will be displayed prominently on the registration page. You can use BBCode here."] = "Ce texte est affiché sur la page d'inscription. Les BBCodes sont autorisés.";
+$a->strings["Forbidden Nicknames"] = "Identifiants réservés";
+$a->strings["Comma separated list of nicknames that are forbidden from registration. Preset is a list of role names according RFC 2142."] = "Liste d'identifiants réservés séparés par des virgules. Ces identifiants ne peuvent pas Ãªtre utilisés pour s'enregistrer. La liste de base provient de la RFC 2142.";
 $a->strings["Accounts abandoned after x days"] = "Les comptes sont abandonnés après x jours";
 $a->strings["Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit."] = "Pour ne pas gaspiller les ressources système, on cesse d'interroger les sites distants pour les comptes abandonnés. Mettre 0 pour désactiver cette fonction.";
 $a->strings["Allowed friend domains"] = "Domaines autorisés";
 $a->strings["Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains"] = "Une liste de domaines, séparés par des virgules, autorisés Ã  Ã©tablir des relations avec les utilisateurs de ce site. Les '*' sont acceptés. Laissez vide pour autoriser tous les domaines";
 $a->strings["Allowed email domains"] = "Domaines courriel autorisés";
 $a->strings["Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains"] = "Liste de domaines - séparés par des virgules - dont les adresses e-mail sont autorisées Ã  s'inscrire sur ce site. Les '*' sont acceptées. Laissez vide pour autoriser tous les domaines";
-$a->strings["No OEmbed rich content"] = "";
-$a->strings["Don't show the rich content (e.g. embedded PDF), except from the domains listed below."] = "";
-$a->strings["Allowed OEmbed domains"] = "";
-$a->strings["Comma separated list of domains which oembed content is allowed to be displayed. Wildcards are accepted."] = "";
+$a->strings["No OEmbed rich content"] = "Désactiver le texte riche avec OEmbed";
+$a->strings["Don't show the rich content (e.g. embedded PDF), except from the domains listed below."] = "Evite le contenu riche avec OEmbed (comme un document PDF incrusté), sauf provenant des domaines autorisés listés ci-après.";
+$a->strings["Allowed OEmbed domains"] = "Domaines autorisés pour OEmbed";
+$a->strings["Comma separated list of domains which oembed content is allowed to be displayed. Wildcards are accepted."] = "Liste de noms de domaine séparés par des virgules. Ces domaines peuvent afficher du contenu riche avec OEmbed.";
 $a->strings["Block public"] = "Interdire la publication globale";
 $a->strings["Check to block public access to all otherwise public personal pages on this site unless you are currently logged in."] = "Cocher pour bloquer les accès anonymes (non-connectés) Ã  tout sauf aux pages personnelles publiques.";
 $a->strings["Force publish"] = "Forcer la publication globale";
 $a->strings["Check to force all profiles on this site to be listed in the site directory."] = "Cocher pour publier obligatoirement tous les profils locaux dans l'annuaire du site.";
-$a->strings["Enabling this may violate privacy laws like the GDPR"] = "";
+$a->strings["Enabling this may violate privacy laws like the GDPR"] = "Activer cette option peut potentiellement enfreindre les lois sur la protection de la vie privée comme le RGPD.";
 $a->strings["Global directory URL"] = "URL de l'annuaire global";
 $a->strings["URL to the global directory. If this is not set, the global directory is completely unavailable to the application."] = "URL de l'annuaire global. Si ce champ n'est pas défini, l'annuaire global sera complètement indisponible pour l'application.";
 $a->strings["Private posts by default for new users"] = "Publications privées par défaut pour les nouveaux utilisateurs";
@@ -414,22 +426,22 @@ $a->strings["Disallow public access to addons listed in the apps menu."] = "Inte
 $a->strings["Checking this box will restrict addons listed in the apps menu to members only."] = "Cocher cette case restreint la liste des greffons dans le menu des applications seulement aux membres.";
 $a->strings["Don't embed private images in posts"] = "Ne pas miniaturiser les images privées dans les publications";
 $a->strings["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."] = "Ne remplacez pas les images privées hébergées localement dans les publications avec une image attaché en copie, car cela signifie que le contact qui reçoit les publications contenant ces photos privées devra s’authentifier pour charger chaque image, ce qui peut prendre du temps.";
-$a->strings["Explicit Content"] = "";
-$a->strings["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 node information and might be used, e.g. by the global directory, to filter your node from listings of nodes to join. Additionally a note about this will be shown at the user registration page."] = "";
+$a->strings["Explicit Content"] = "Contenu adulte";
+$a->strings["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 node information and might be used, e.g. by the global directory, to filter your node from listings of nodes to join. Additionally a note about this will be shown at the user registration page."] = "Activez cette option si votre site est principalement utilisé pour publier du contenu adulte. Cette information est publique et peut Ãªtre utilisée pour filtrer votre site dans le répertoire de site global. Elle est Ã©galement affichée sur la page d'inscription.";
 $a->strings["Allow Users to set remote_self"] = "Autoriser les utilisateurs Ã  définir remote_self";
 $a->strings["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."] = "Cocher cette case, permet Ã  chaque utilisateur de marquer chaque contact comme un remote_self dans la boîte de dialogue de réparation des contacts. Activer cette fonction Ã  un contact engendre la réplique de toutes les publications d'un contact dans le flux d'activités des utilisateurs.";
 $a->strings["Block multiple registrations"] = "Interdire les inscriptions multiples";
 $a->strings["Disallow users to register additional accounts for use as pages."] = "Ne pas permettre l'inscription de comptes multiples comme des pages.";
-$a->strings["OpenID support"] = "Support OpenID";
-$a->strings["OpenID support for registration and logins."] = "Supporter OpenID pour les inscriptions et connexions.";
-$a->strings["Fullname check"] = "Vérification du \"Prénom Nom\"";
-$a->strings["Force users to register with a space between firstname and lastname in Full name, as an antispam measure"] = "Imposer l'utilisation d'un espace entre le prénom et le nom (dans le Nom complet), pour limiter les abus";
-$a->strings["Community pages for visitors"] = "";
-$a->strings["Which community pages should be available for visitors. Local users always see both pages."] = "";
+$a->strings["Disable OpenID"] = "Désactiver OpenID";
+$a->strings["Disable OpenID support for registration and logins."] = "Désactive OpenID pour l'inscription et l'identification.";
+$a->strings["No Fullname check"] = "Désactiver l'obligation de nom complet";
+$a->strings["Allow users to register without a space between the first name and the last name in their full name."] = "Supprime l'obligation d'avoir au moins un espace dans le nom complet des utilisateurs pour séparer leur prénom et nom de famille.";
+$a->strings["Community pages for visitors"] = "Affichage de la page communauté pour les utilisateurs anonymes";
+$a->strings["Which community pages should be available for visitors. Local users always see both pages."] = "Quelles pages communauté sont disponibles pour les utilisateurs anonymes.";
 $a->strings["Posts per user on community page"] = "Nombre de publications par utilisateur sur la page de la communauté (n'est pas valide pour ";
 $a->strings["The maximum number of posts per user on the community page. (Not valid for 'Global Community')"] = "Nombre maximal de publications par utilisateurs sur la page de la communauté (ne s'applique pas pour Â« Communauté globale Â»).";
-$a->strings["Enable OStatus support"] = "Activer le support d'OStatus";
-$a->strings["Provide built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed."] = "Fourni nativement la compatibilité avec OStatus (StatusNet, GNU Social etc.). Touts les communications utilisant OStatus sont public, des avertissements liés Ã  la vie privée seront affichés si utile.";
+$a->strings["Disable OStatus support"] = "Désactiver OStatus";
+$a->strings["Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed."] = "Désactive le support natif d'OStatus (StatusNet, GNU Social, etc...). Toutes les communications via OStatus sont publiques, donc des avertissements de protection de vie privée sont régulièrement affichés.";
 $a->strings["Only import OStatus/ActivityPub threads from our contacts"] = "";
 $a->strings["Normally we import every content from our OStatus and ActivityPub contacts. With this option we only store threads that are started by a contact that is known on our system."] = "";
 $a->strings["OStatus support can only be enabled if threading is enabled."] = "Le support OStatus ne peut Ãªtre activé que si l'imbrication des commentaires est activée.";
@@ -459,7 +471,7 @@ $a->strings["If enabled, the global contacts are checked periodically for missin
 $a->strings["Days between requery"] = "Nombre de jours entre les requêtes";
 $a->strings["Number of days after which a server is requeried for his contacts."] = "Nombre de jours avant qu'une requête de contacts soient envoyée Ã  nouveau Ã  un serveur.";
 $a->strings["Discover contacts from other servers"] = "Découvrir des contacts des autres serveurs";
-$a->strings["Periodically query other servers for contacts. You can choose between 'users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommened setting is 'Users, Global Contacts'."] = "";
+$a->strings["Periodically query other servers for contacts. You can choose between 'users': the users on the remote system, 'Global Contacts': active contacts that are known on the system. The fallback is meant for Redmatrix servers and older friendica servers, where global contacts weren't available. The fallback increases the server load, so the recommended setting is 'Users, Global Contacts'."] = "";
 $a->strings["Timeframe for fetching global contacts"] = "Fréquence de récupération des contacts globaux";
 $a->strings["When the discovery is activated, this value defines the timeframe for the activity of the global contacts that are fetched from other servers."] = "Quand la découverte de contacts est activée, cette valeur détermine la fréquence de récupération des données des contacts globaux présents sur d'autres serveurs.";
 $a->strings["Search the local directory"] = "Chercher dans le répertoire local";
@@ -557,6 +569,7 @@ $a->strings["Personal Page"] = "Page personnelle";
 $a->strings["Organisation Page"] = "";
 $a->strings["News Page"] = "Page d'informations";
 $a->strings["Community Forum"] = "";
+$a->strings["Relay"] = "";
 $a->strings["Email"] = "Courriel";
 $a->strings["Register date"] = "Date d'inscription";
 $a->strings["Last login"] = "Dernière connexion";
@@ -574,7 +587,7 @@ $a->strings["User blocked"] = "";
 $a->strings["Site admin"] = "Administration du Site";
 $a->strings["Account expired"] = "Compte expiré";
 $a->strings["New User"] = "Nouvel utilisateur";
-$a->strings["Delete in"] = "";
+$a->strings["Permanent deletion"] = "";
 $a->strings["Selected users will be deleted!\\n\\nEverything these users had posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "Les utilisateurs sélectionnés vont Ãªtre supprimés!\\n\\nTout ce qu'ils ont posté sur ce site sera définitivement effacé!\\n\\nÊtes-vous certain?";
 $a->strings["The user {0} will be deleted!\\n\\nEverything this user has posted on this site will be permanently deleted!\\n\\nAre you sure?"] = "L'utilisateur {0} va Ãªtre supprimé!\\n\\nTout ce qu'il a posté sur ce site sera définitivement perdu!\\n\\nÊtes-vous certain?";
 $a->strings["Name of the new user."] = "Nom du nouvel utilisateur.";
@@ -620,11 +633,6 @@ $a->strings["Return to your app and insert this Securty Code:"] = "Retournez Ã 
 $a->strings["Please login to continue."] = "Merci de vous connecter pour continuer.";
 $a->strings["Do you want to authorize this application to access your posts and contacts, and/or create new posts for you?"] = "Voulez-vous autoriser cette application Ã  accéder Ã  vos publications et contacts, et/ou Ã  créer des billets Ã  votre place?";
 $a->strings["No"] = "Non";
-$a->strings["You must be logged in to use addons. "] = "Vous devez Ãªtre connecté pour utiliser les greffons.";
-$a->strings["Applications"] = "Applications";
-$a->strings["No installed applications."] = "Pas d'application installée.";
-$a->strings["Item not available."] = "Elément non disponible.";
-$a->strings["Item was not found."] = "Element introuvable.";
 $a->strings["Source input"] = "";
 $a->strings["BBCode::toPlaintext"] = "";
 $a->strings["BBCode::convert (raw HTML)"] = "";
@@ -634,6 +642,8 @@ $a->strings["BBCode::toMarkdown"] = "";
 $a->strings["BBCode::toMarkdown => Markdown::convert"] = "";
 $a->strings["BBCode::toMarkdown => Markdown::toBBCode"] = "";
 $a->strings["BBCode::toMarkdown =>  Markdown::convert => HTML::toBBCode"] = "";
+$a->strings["Item Body"] = "";
+$a->strings["Item Tags"] = "";
 $a->strings["Source input (Diaspora format)"] = "";
 $a->strings["Markdown::convert (raw HTML)"] = "";
 $a->strings["Markdown::convert"] = "";
@@ -698,6 +708,7 @@ $a->strings["Mark this contact as remote_self, this will cause friendica to repo
 $a->strings["Account Nickname"] = "Pseudo du compte";
 $a->strings["@Tagname - overrides Name/Nickname"] = "@NomEtiquette - prend le pas sur Nom/Pseudo";
 $a->strings["Account URL"] = "URL du compte";
+$a->strings["Account URL Alias"] = "";
 $a->strings["Friend Request URL"] = "Echec du téléversement de l'image.";
 $a->strings["Friend Confirm URL"] = "Accès public refusé.";
 $a->strings["Notification Endpoint URL"] = "Aucune photo sélectionnée";
@@ -825,7 +836,6 @@ $a->strings["Upload"] = "Téléverser";
 $a->strings["Files"] = "Fichiers";
 $a->strings["You must be logged in to use this module"] = "";
 $a->strings["Source URL"] = "";
-$a->strings["Not Found"] = "Non trouvé";
 $a->strings["- select -"] = "- choisir -";
 $a->strings["The contact could not be added."] = "";
 $a->strings["You already added this contact."] = "Vous avez déjà ajouté ce contact.";
@@ -869,6 +879,7 @@ $a->strings["Add contact to group"] = "";
 $a->strings["No profile"] = "Aucun profil";
 $a->strings["Help:"] = "Aide :";
 $a->strings["Help"] = "Aide";
+$a->strings["Not Found"] = "Non trouvé";
 $a->strings["Welcome to %s"] = "Bienvenue sur %s";
 $a->strings["Total invitation limit exceeded."] = "La limite d'invitation totale est Ã©xédée.";
 $a->strings["%s : Not a valid email address."] = "%s : Adresse de courriel invalide.";
@@ -928,12 +939,12 @@ $a->strings["Your password may be changed from the <em>Settings</em> page after
 $a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tYour password has been changed as requested. Please retain this\n\t\t\tinformation for your records (or change your password immediately to\n\t\t\tsomething that you will remember).\n\t\t"] = "";
 $a->strings["\n\t\t\tYour login details are as follows:\n\n\t\t\tSite Location:\t%1\$s\n\t\t\tLogin Name:\t%2\$s\n\t\t\tPassword:\t%3\$s\n\n\t\t\tYou may change that password from your account settings page after logging in.\n\t\t"] = "";
 $a->strings["Your password has been changed at %s"] = "Votre mot de passe a Ã©té modifié Ã  %s";
-$a->strings["System down for maintenance"] = "Système indisponible pour cause de maintenance";
 $a->strings["Manage Identities and/or Pages"] = "Gérer les identités et/ou les pages";
 $a->strings["Toggle between different identities or community/group pages which share your account details or which you have been granted \"manage\" permissions"] = "Basculez entre les différentes identités ou pages (groupes/communautés) qui se partagent votre compte ou que vous avez Ã©té autorisé Ã  gérer.";
 $a->strings["Select an identity to manage: "] = "Choisir une identité Ã  gérer: ";
 $a->strings["No keywords to match. Please add keywords to your default profile."] = "Aucun mot-clé en correspondance. Merci d'ajouter des mots-clés Ã  votre profil par défaut.";
-$a->strings["is interested in:"] = "s'intéresse Ã  :";
+$a->strings["first"] = "premier";
+$a->strings["next"] = "suivant";
 $a->strings["Profile Match"] = "Correpondance de profils";
 $a->strings["New Message"] = "Nouveau message";
 $a->strings["No recipient selected."] = "Pas de destinataire sélectionné.";
@@ -1118,7 +1129,6 @@ $a->strings["Comment"] = "Commenter";
 $a->strings["Map"] = "Carte";
 $a->strings["View Album"] = "Voir l'album";
 $a->strings["{0} wants to be your friend"] = "{0} souhaite Ãªtre votre ami(e)";
-$a->strings["{0} sent you a message"] = "{0} vous a envoyé un message";
 $a->strings["{0} requested registration"] = "{0} a demandé Ã  s'inscrire";
 $a->strings["Poke/Prod"] = "Solliciter";
 $a->strings["poke, prod or do other things to somebody"] = "solliciter (poke/...) quelqu'un";
@@ -1126,10 +1136,19 @@ $a->strings["Recipient"] = "Destinataire";
 $a->strings["Choose what you wish to do to recipient"] = "Choisissez ce que vous voulez faire au destinataire";
 $a->strings["Make this post private"] = "Rendez ce message privé";
 $a->strings["Only logged in users are permitted to perform a probing."] = "";
-$a->strings["Requested profile is not available."] = "Le profil demandé n'est pas disponible.";
-$a->strings["%s's timeline"] = "";
-$a->strings["%s's posts"] = "";
-$a->strings["%s's comments"] = "";
+$a->strings["Image uploaded but image cropping failed."] = "Image envoyée, mais impossible de la retailler.";
+$a->strings["Image size reduction [%s] failed."] = "Réduction de la taille de l'image [%s] Ã©chouée.";
+$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Rechargez la page avec la touche Maj pressée, ou bien effacez le cache du navigateur, si d'aventure la nouvelle photo n'apparaissait pas immédiatement.";
+$a->strings["Unable to process image"] = "Impossible de traiter l'image";
+$a->strings["Upload File:"] = "Fichier Ã  téléverser :";
+$a->strings["Select a profile:"] = "Choisir un profil :";
+$a->strings["or"] = "ou";
+$a->strings["skip this step"] = "ignorer cette Ã©tape";
+$a->strings["select a photo from your photo albums"] = "choisissez une photo depuis vos albums";
+$a->strings["Crop Image"] = "(Re)cadrer l'image";
+$a->strings["Please adjust the image cropping for optimum viewing."] = "Ajustez le cadre de l'image pour une visualisation optimale.";
+$a->strings["Done Editing"] = "Édition terminée";
+$a->strings["Image uploaded successfully."] = "Image téléversée avec succès.";
 $a->strings["Profile deleted."] = "Profil supprimé.";
 $a->strings["Profile-"] = "Profil-";
 $a->strings["New profile created."] = "Nouveau profil créé.";
@@ -1210,48 +1229,10 @@ $a->strings["visible to everybody"] = "visible par tous";
 $a->strings["Edit/Manage Profiles"] = "Editer / gérer les profils";
 $a->strings["Change profile photo"] = "Changer de photo de profil";
 $a->strings["Create New Profile"] = "Créer un nouveau profil";
-$a->strings["Image uploaded but image cropping failed."] = "Image envoyée, mais impossible de la retailler.";
-$a->strings["Image size reduction [%s] failed."] = "Réduction de la taille de l'image [%s] Ã©chouée.";
-$a->strings["Shift-reload the page or clear browser cache if the new photo does not display immediately."] = "Rechargez la page avec la touche Maj pressée, ou bien effacez le cache du navigateur, si d'aventure la nouvelle photo n'apparaissait pas immédiatement.";
-$a->strings["Unable to process image"] = "Impossible de traiter l'image";
-$a->strings["Upload File:"] = "Fichier Ã  téléverser :";
-$a->strings["Select a profile:"] = "Choisir un profil :";
-$a->strings["or"] = "ou";
-$a->strings["skip this step"] = "ignorer cette Ã©tape";
-$a->strings["select a photo from your photo albums"] = "choisissez une photo depuis vos albums";
-$a->strings["Crop Image"] = "(Re)cadrer l'image";
-$a->strings["Please adjust the image cropping for optimum viewing."] = "Ajustez le cadre de l'image pour une visualisation optimale.";
-$a->strings["Done Editing"] = "Édition terminée";
-$a->strings["Image uploaded successfully."] = "Image téléversée avec succès.";
 $a->strings["Invalid profile identifier."] = "Identifiant de profil invalide.";
 $a->strings["Profile Visibility Editor"] = "Éditer la visibilité du profil";
 $a->strings["Visible To"] = "Visible par";
 $a->strings["All Contacts (with secure profile access)"] = "Tous les contacts (ayant un accès sécurisé)";
-$a->strings["Registration successful. Please check your email for further instructions."] = "Inscription réussie. Vérifiez vos emails pour la suite des instructions.";
-$a->strings["Failed to send email message. Here your accout details:<br> login: %s<br> password: %s<br><br>You can change your password after login."] = "Impossible d’envoyer le courriel de confirmation. Voici vos informations de connexion:<br> identifiant : %s<br> mot de passe : %s<br><br>Vous pourrez changer votre mot de passe une fois connecté.";
-$a->strings["Registration successful."] = "Inscription réussie.";
-$a->strings["Your registration can not be processed."] = "Votre inscription ne peut Ãªtre traitée.";
-$a->strings["Your registration is pending approval by the site owner."] = "Votre inscription attend une validation du propriétaire du site.";
-$a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "Le nombre d'inscriptions quotidiennes pour ce site a Ã©té dépassé. Merci de réessayer demain.";
-$a->strings["You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking 'Register'."] = "Vous pouvez (si vous le souhaitez) remplir ce formulaire via OpenID. Fournissez votre OpenID et cliquez \"S'inscrire\".";
-$a->strings["If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."] = "Si vous n'êtes pas familier avec OpenID, laissez ce champ vide et remplissez le reste.";
-$a->strings["Your OpenID (optional): "] = "Votre OpenID (facultatif): ";
-$a->strings["Include your profile in member directory?"] = "Inclure votre profil dans l'annuaire des membres?";
-$a->strings["Note for the admin"] = "Commentaire pour l'administrateur";
-$a->strings["Leave a message for the admin, why you want to join this node"] = "Indiquez Ã  l'administrateur les raisons de votre inscription Ã  cette instance.";
-$a->strings["Membership on this site is by invitation only."] = "L'inscription Ã  ce site se fait uniquement sur invitation.";
-$a->strings["Your invitation code: "] = "";
-$a->strings["Your Full Name (e.g. Joe Smith, real or real-looking): "] = "Votre nom complet (p. ex. Michel Dupont):";
-$a->strings["Your Email Address: (Initial information will be send there, so this has to be an existing address.)"] = "Votre courriel : (Des informations de connexion vont Ãªtre envoyées Ã  cette adresse; elle doit exister).";
-$a->strings["New Password:"] = "Nouveau mot de passe :";
-$a->strings["Leave empty for an auto generated password."] = "Laisser ce champ libre pour obtenir un mot de passe généré automatiquement.";
-$a->strings["Confirm:"] = "Confirmer :";
-$a->strings["Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be '<strong>nickname@%s</strong>'."] = "";
-$a->strings["Choose a nickname: "] = "Choisir un pseudo : ";
-$a->strings["Register"] = "S'inscrire";
-$a->strings["Import"] = "Importer";
-$a->strings["Import your profile to this friendica instance"] = "Importer votre profile dans cette instance de friendica";
-$a->strings["Note: This node explicitly contains adult content"] = "";
 $a->strings["Account approved."] = "Inscription validée.";
 $a->strings["Registration revoked for %s"] = "Inscription révoquée pour %s";
 $a->strings["Please login."] = "Merci de vous connecter.";
@@ -1283,12 +1264,10 @@ $a->strings["Failed to connect with email account using the settings provided."]
 $a->strings["Email settings updated."] = "Réglages de courriel mis Ã  jour.";
 $a->strings["Features updated"] = "Fonctionnalités mises Ã  jour";
 $a->strings["Relocate message has been send to your contacts"] = "Un message de relocalisation a Ã©té envoyé Ã  vos contacts.";
-$a->strings["Passwords do not match. Password unchanged."] = "Les mots de passe ne correspondent pas. Aucun changement appliqué.";
-$a->strings["Empty passwords are not allowed. Password unchanged."] = "Les mots de passe vides sont interdits. Aucun changement appliqué.";
-$a->strings["The new password has been exposed in a public data dump, please choose another."] = "";
-$a->strings["Wrong password."] = "Mauvais mot de passe.";
-$a->strings["Password changed."] = "Mot de passe changé.";
+$a->strings["Passwords do not match."] = "";
 $a->strings["Password update failed. Please try again."] = "Le changement de mot de passe a Ã©choué. Merci de recommencer.";
+$a->strings["Password changed."] = "Mot de passe changé.";
+$a->strings["Password unchanged."] = "";
 $a->strings[" Please use a shorter name."] = " Merci d'utiliser un nom plus court.";
 $a->strings[" Name too short."] = " Nom trop court.";
 $a->strings["Wrong Password"] = "Mauvais mot de passe";
@@ -1417,6 +1396,9 @@ $a->strings["Expire photos:"] = "Faire expirer les photos :";
 $a->strings["Only expire posts by others:"] = "Faire expirer seulement les publications des autres:";
 $a->strings["Account Settings"] = "Compte";
 $a->strings["Password Settings"] = "Réglages de mot de passe";
+$a->strings["New Password:"] = "Nouveau mot de passe :";
+$a->strings["Allowed characters are a-z, A-Z, 0-9 and special characters except white spaces, accentuated letters and colon (:)."] = "";
+$a->strings["Confirm:"] = "Confirmer :";
 $a->strings["Leave password fields blank unless changing"] = "Laissez les champs de mot de passe vierges, sauf si vous désirez les changer";
 $a->strings["Current Password:"] = "Mot de passe actuel :";
 $a->strings["Your current password to confirm the changes"] = "Votre mot de passe actuel pour confirmer les modifications";
@@ -1472,6 +1454,8 @@ $a->strings["Export your account info and contacts. Use this to make a backup of
 $a->strings["Export all"] = "Tout exporter";
 $a->strings["Export your accout info, contacts and all your items as json. Could be a very big file, and could take a lot of time. Use this to make a full backup of your account (photos are not exported)"] = "Exportez votre compte, vos infos, vos contacts et toutes vos publications (en JSON). Le fichier résultant peut Ãªtre extrêmement volumineux, et sa production peut durer longtemps. Vous pourrez l'utiliser pour faire une sauvegarde complète (à part les photos).";
 $a->strings["User imports on closed servers can only be done by an administrator."] = "";
+$a->strings["This site has exceeded the number of allowed daily account registrations. Please try again tomorrow."] = "Le nombre d'inscriptions quotidiennes pour ce site a Ã©té dépassé. Merci de réessayer demain.";
+$a->strings["Import"] = "Importer";
 $a->strings["Move account"] = "Migrer le compte";
 $a->strings["You can import an account from another Friendica server."] = "Vous pouvez importer un compte d'un autre serveur Friendica.";
 $a->strings["You need to export your account from the old server and upload it here. We will recreate your old account here with all your contacts. We will try also to inform your friends that you moved here."] = "Vous devez exporter votre compte Ã  partir de l'ancien serveur et le téléverser ici. Nous recréerons votre ancien compte ici avec tous vos contacts. Nous tenterons Ã©galement d'informer vos amis que vous avez déménagé ici.";
@@ -1492,132 +1476,48 @@ $a->strings["Upload New Videos"] = "Téléversé une nouvelle vidéo";
 $a->strings["No contacts."] = "Aucun contact.";
 $a->strings["Visit %s's profile [%s]"] = "Visiter le profil de %s [%s]";
 $a->strings["Contacts"] = "Contacts";
-$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Nombre de messages de mur quotidiens pour %s dépassé. Ã‰chec du message.";
-$a->strings["Unable to check your home location."] = "Impossible de vérifier votre localisation.";
-$a->strings["No recipient."] = "Pas de destinataire.";
-$a->strings["If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders."] = "Si vous souhaitez que %s réponde, merci de vérifier vos réglages pour autoriser les messages privés venant d'inconnus.";
 $a->strings["Invalid request."] = "Requête invalide.";
 $a->strings["Sorry, maybe your upload is bigger than the PHP configuration allows"] = "Désolé, il semble que votre fichier est plus important que ce que la configuration de PHP autorise";
 $a->strings["Or - did you try to upload an empty file?"] = "Ou â€” auriez-vous essayé de télécharger un fichier vide ?";
 $a->strings["File exceeds size limit of %s"] = "La taille du fichier dépasse la limite de %s";
 $a->strings["File upload failed."] = "Le téléversement a Ã©choué.";
 $a->strings["Wall Photos"] = "Photos du mur";
-$a->strings["Delete this item?"] = "Effacer cet Ã©lément?";
-$a->strings["show fewer"] = "montrer moins";
-$a->strings["toggle mobile"] = "activ. mobile";
-$a->strings["No system theme config value set."] = "";
-$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "Le jeton de sécurité du formulaire n'est pas correct. Ceci veut probablement dire que le formulaire est resté ouvert trop longtemps (plus de 3 heures) avant d'être validé.";
-$a->strings["Frequently"] = "";
-$a->strings["Hourly"] = "";
-$a->strings["Twice daily"] = "";
-$a->strings["Daily"] = "";
-$a->strings["Weekly"] = "";
-$a->strings["Monthly"] = "";
-$a->strings["DFRN"] = "";
-$a->strings["OStatus"] = "";
-$a->strings["RSS/Atom"] = "";
-$a->strings["Zot!"] = "";
-$a->strings["LinkedIn"] = "";
-$a->strings["XMPP/IM"] = "";
-$a->strings["MySpace"] = "";
-$a->strings["Google+"] = "";
-$a->strings["pump.io"] = "";
-$a->strings["Twitter"] = "";
-$a->strings["Diaspora Connector"] = "";
-$a->strings["GNU Social Connector"] = "";
-$a->strings["ActivityPub"] = "";
-$a->strings["pnut"] = "";
-$a->strings["Male"] = "";
-$a->strings["Female"] = "";
-$a->strings["Currently Male"] = "";
-$a->strings["Currently Female"] = "";
-$a->strings["Mostly Male"] = "";
-$a->strings["Mostly Female"] = "";
-$a->strings["Transgender"] = "";
-$a->strings["Intersex"] = "";
-$a->strings["Transsexual"] = "";
-$a->strings["Hermaphrodite"] = "";
-$a->strings["Neuter"] = "";
-$a->strings["Non-specific"] = "Non-spécifique";
-$a->strings["Other"] = "Autre";
-$a->strings["Males"] = "Hommes";
-$a->strings["Females"] = "Femmes";
-$a->strings["Gay"] = "Gay";
-$a->strings["Lesbian"] = "Lesbienne";
-$a->strings["No Preference"] = "Sans préférence";
-$a->strings["Bisexual"] = "Bisexuel";
-$a->strings["Autosexual"] = "Auto-sexuel";
-$a->strings["Abstinent"] = "Abstinent";
-$a->strings["Virgin"] = "Vierge";
-$a->strings["Deviant"] = "Déviant";
-$a->strings["Fetish"] = "Fétichiste";
-$a->strings["Oodles"] = "Oodles";
-$a->strings["Nonsexual"] = "Non-sexuel";
-$a->strings["Single"] = "Célibataire";
-$a->strings["Lonely"] = "Esseulé";
-$a->strings["Available"] = "Disponible";
-$a->strings["Unavailable"] = "Indisponible";
-$a->strings["Has crush"] = "Attiré par quelqu'un";
-$a->strings["Infatuated"] = "Entiché";
-$a->strings["Dating"] = "Dans une relation";
-$a->strings["Unfaithful"] = "Infidèle";
-$a->strings["Sex Addict"] = "Accro au sexe";
-$a->strings["Friends"] = "Amis";
-$a->strings["Friends/Benefits"] = "Amis par intérêt";
-$a->strings["Casual"] = "Casual";
-$a->strings["Engaged"] = "Fiancé";
-$a->strings["Married"] = "Marié";
-$a->strings["Imaginarily married"] = "Se croit marié";
-$a->strings["Partners"] = "Partenaire";
-$a->strings["Cohabiting"] = "En cohabitation";
-$a->strings["Common law"] = "Marié \"de fait\"/\"sui juris\" (concubin)";
-$a->strings["Happy"] = "Heureux";
-$a->strings["Not looking"] = "Pas intéressé";
-$a->strings["Swinger"] = "Échangiste";
-$a->strings["Betrayed"] = "Trahi(e)";
-$a->strings["Separated"] = "Séparé";
-$a->strings["Unstable"] = "Instable";
-$a->strings["Divorced"] = "Divorcé";
-$a->strings["Imaginarily divorced"] = "Se croit divorcé";
-$a->strings["Widowed"] = "Veuf/Veuve";
-$a->strings["Uncertain"] = "Incertain";
-$a->strings["It's complicated"] = "C'est compliqué";
-$a->strings["Don't care"] = "S'en désintéresse";
-$a->strings["Ask me"] = "Me demander";
-$a->strings["General Features"] = "Fonctions générales";
-$a->strings["Multiple Profiles"] = "Profils multiples";
-$a->strings["Ability to create multiple profiles"] = "Possibilité de créer plusieurs profils";
-$a->strings["Photo Location"] = "Lieu de prise de la photo";
-$a->strings["Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map."] = "Les métadonnées des photos sont normalement retirées. Ceci permet de sauver l'emplacement (si présent) et de positionner la photo sur une carte.";
-$a->strings["Export Public Calendar"] = "Exporter le Calendrier Public";
-$a->strings["Ability for visitors to download the public calendar"] = "Les visiteurs peuvent télécharger le calendrier public";
-$a->strings["Post Composition Features"] = "Caractéristiques de composition de publication";
-$a->strings["Auto-mention Forums"] = "Mentionner automatiquement les Forums";
-$a->strings["Add/remove mention when a forum page is selected/deselected in ACL window."] = "Ajoute/retire une mention quand une page forum est sélectionnée/désélectionnée lors du choix des destinataires d'une publication.";
-$a->strings["Network Sidebar"] = "";
-$a->strings["Ability to select posts by date ranges"] = "Capacité de sélectionner les publications par intervalles de dates";
-$a->strings["Protocol Filter"] = "";
-$a->strings["Enable widget to display Network posts only from selected protocols"] = "";
-$a->strings["Network Tabs"] = "Onglets Réseau";
-$a->strings["Network New Tab"] = "Nouvel onglet réseaux";
-$a->strings["Enable tab to display only new Network posts (from the last 12 hours)"] = "Activer l'onglet pour afficher seulement les publications du réseau (dans les 12 dernières heures)";
-$a->strings["Network Shared Links Tab"] = "Onglet réseau partagé";
-$a->strings["Enable tab to display only Network posts with links in them"] = "Activer l'onglet pour afficher seulement les publications du réseau contenant des liens";
-$a->strings["Post/Comment Tools"] = "Outils de publication/commentaire";
-$a->strings["Post Categories"] = "Catégories des publications";
-$a->strings["Add categories to your posts"] = "Ajouter des catégories Ã  vos publications";
-$a->strings["Advanced Profile Settings"] = "Paramètres Avancés du Profil";
-$a->strings["List Forums"] = "Liste des forums";
-$a->strings["Show visitors public community forums at the Advanced Profile Page"] = "Montrer les forums communautaires aux visiteurs sur la Page de profil avancé";
-$a->strings["Tag Cloud"] = "";
-$a->strings["Provide a personal tag cloud on your profile page"] = "";
-$a->strings["Display Membership Date"] = "";
-$a->strings["Display membership date in profile"] = "";
-$a->strings["Forums"] = "Forums";
-$a->strings["External link to forum"] = "Lien sortant vers le forum";
-$a->strings["Nothing new here"] = "Rien de neuf ici";
-$a->strings["Clear notifications"] = "Effacer les notifications";
-$a->strings["@name, !forum, #tags, content"] = "@nom, !forum, #tags, contenu";
+$a->strings["Number of daily wall messages for %s exceeded. Message failed."] = "Nombre de messages de mur quotidiens pour %s dépassé. Ã‰chec du message.";
+$a->strings["Unable to check your home location."] = "Impossible de vérifier votre localisation.";
+$a->strings["No recipient."] = "Pas de destinataire.";
+$a->strings["If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders."] = "Si vous souhaitez que %s réponde, merci de vérifier vos réglages pour autoriser les messages privés venant d'inconnus.";
+$a->strings["default"] = "défaut";
+$a->strings["greenzero"] = "greenzero";
+$a->strings["purplezero"] = "purplezero";
+$a->strings["easterbunny"] = "easterbunny";
+$a->strings["darkzero"] = "darkzero";
+$a->strings["comix"] = "comix";
+$a->strings["slackr"] = "slackr";
+$a->strings["Variations"] = "Variations";
+$a->strings["Top Banner"] = "Bannière du haut";
+$a->strings["Resize image to the width of the screen and show background color below on long pages."] = "Redimensionner l'image Ã  la largeur de l'écran et combler en dessous avec la couleur d'arrière plan.";
+$a->strings["Full screen"] = "Plein Ã©cran";
+$a->strings["Resize image to fill entire screen, clipping either the right or the bottom."] = "Agrandir l'image pour remplir l'écran, jusqu'à toucher le bord droit ou le bas de l'écran.";
+$a->strings["Single row mosaic"] = "Mosaïque sur un rang";
+$a->strings["Resize image to repeat it on a single row, either vertical or horizontal."] = "Redimensionner l'image pour la dupliquer sur un seul rang, vertical ou horizontal.";
+$a->strings["Mosaic"] = "Mosaïque";
+$a->strings["Repeat image to fill the screen."] = "Dupliquer l'image pour couvrir l'écran.";
+$a->strings["Custom"] = "Personnalisé";
+$a->strings["Note"] = "Remarque";
+$a->strings["Check image permissions if all users are allowed to see the image"] = "Vérifier que tous les utilisateurs du site sont autorisés Ã  voir l'image.";
+$a->strings["Select color scheme"] = "Choisir le schéma de couleurs";
+$a->strings["Navigation bar background color"] = "Couleur d'arrière-plan de la barre de navigation";
+$a->strings["Navigation bar icon color "] = "Couleur des icônes de la barre de navigation";
+$a->strings["Link color"] = "Couleur des liens";
+$a->strings["Set the background color"] = "Couleur d'arrière-plan";
+$a->strings["Content background opacity"] = "Opacité du contenu d'arrière-plan";
+$a->strings["Set the background image"] = "Image d'arrière-plan";
+$a->strings["Background image style"] = "Style de l'image de fond";
+$a->strings["Login page background image"] = "Image de fond de la page de login";
+$a->strings["Login page background color"] = "Couleur d'arrière-plan de la page de login";
+$a->strings["Leave background image and color empty for theme defaults"] = "Laisser l'image et la couleur de fond vides pour les paramètres par défaut du thème";
+$a->strings["Guest"] = "Invité";
+$a->strings["Visitor"] = "Visiteur";
 $a->strings["Logout"] = "Se déconnecter";
 $a->strings["End this session"] = "Mettre fin Ã  cette session";
 $a->strings["Status"] = "Statut";
@@ -1627,78 +1527,27 @@ $a->strings["Your photos"] = "Vos photos";
 $a->strings["Videos"] = "Vidéos";
 $a->strings["Your videos"] = "Vos vidéos";
 $a->strings["Your events"] = "Vos Ã©vénements";
-$a->strings["Personal notes"] = "Notes personnelles";
-$a->strings["Your personal notes"] = "Vos notes personnelles";
-$a->strings["Sign in"] = "Se connecter";
-$a->strings["Home"] = "Profil";
-$a->strings["Home Page"] = "Page d'accueil";
-$a->strings["Create an account"] = "Créer un compte";
-$a->strings["Help and documentation"] = "Aide et documentation";
-$a->strings["Apps"] = "Applications";
-$a->strings["Addon applications, utilities, games"] = "Applications supplémentaires, utilitaires, jeux";
-$a->strings["Search site content"] = "Rechercher dans le contenu du site";
-$a->strings["Full Text"] = "Texte Entier";
-$a->strings["Tags"] = "Tags";
-$a->strings["Community"] = "Communauté";
-$a->strings["Conversations on this and other servers"] = "";
+$a->strings["Conversations from your friends"] = "Conversations de vos amis";
 $a->strings["Events and Calendar"] = "Événements et agenda";
-$a->strings["Directory"] = "Annuaire";
-$a->strings["People directory"] = "Annuaire des utilisateurs";
-$a->strings["Information about this friendica instance"] = "Information au sujet de cette instance de friendica";
-$a->strings["Terms of Service of this Friendica instance"] = "";
-$a->strings["Conversations from your friends"] = "Conversations de vos amis";
-$a->strings["Network Reset"] = "Réinitialiser le réseau";
-$a->strings["Load Network page with no filters"] = "Chargement des pages du réseau sans filtre";
-$a->strings["Introductions"] = "Introductions";
-$a->strings["Friend Requests"] = "Demande d'amitié";
-$a->strings["See all notifications"] = "Voir toutes les notifications";
-$a->strings["Mark all system notifications seen"] = "Marquer toutes les notifications système comme 'vues'";
 $a->strings["Private mail"] = "Messages privés";
-$a->strings["Inbox"] = "Messages entrants";
-$a->strings["Outbox"] = "Messages sortants";
-$a->strings["Manage"] = "Gérer";
-$a->strings["Manage other pages"] = "Gérer les autres pages";
 $a->strings["Account settings"] = "Compte";
-$a->strings["Manage/Edit Profiles"] = "Gérer/Éditer les profiles";
 $a->strings["Manage/edit friends and contacts"] = "Gérer/éditer les amitiés et contacts";
-$a->strings["Site setup and configuration"] = "Démarrage et configuration du site";
-$a->strings["Navigation"] = "Navigation";
-$a->strings["Site map"] = "Carte du site";
-$a->strings["Embedding disabled"] = "Incorporation désactivée";
-$a->strings["Embedded content"] = "Contenu incorporé";
-$a->strings["newer"] = "Plus récent";
-$a->strings["older"] = "Plus ancien";
-$a->strings["first"] = "premier";
-$a->strings["prev"] = "précédent";
-$a->strings["next"] = "suivant";
-$a->strings["last"] = "dernier";
-$a->strings["view full size"] = "voir en pleine taille";
-$a->strings["Image/photo"] = "Image/photo";
-$a->strings["<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s"] = "<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s";
-$a->strings["$1 wrote:"] = "$1 a Ã©crit :";
-$a->strings["Encrypted content"] = "Contenu chiffré";
-$a->strings["Invalid source protocol"] = "";
-$a->strings["Invalid link protocol"] = "";
-$a->strings["Loading more entries..."] = "Chargement de résultats supplémentaires...";
-$a->strings["The end"] = "Fin";
-$a->strings["No contacts"] = "Aucun contact";
-$a->strings["%d Contact"] = [
-       0 => "%d contact",
-       1 => "%d contacts",
-];
-$a->strings["View Contacts"] = "Voir les contacts";
-$a->strings["Follow"] = "S'abonner";
-$a->strings["Click to open/close"] = "Cliquer pour ouvrir/fermer";
-$a->strings["Export"] = "Exporter";
-$a->strings["Export calendar as ical"] = "Exporter au format iCal";
-$a->strings["Export calendar as csv"] = "Exporter au format CSV";
-$a->strings["Add New Contact"] = "Ajouter un nouveau contact";
-$a->strings["Enter address or web location"] = "Entrez son adresse ou sa localisation web";
-$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Exemple : bob@example.com, http://example.com/barbara";
-$a->strings["%d invitation available"] = [
-       0 => "%d invitation disponible",
-       1 => "%d invitations disponibles",
-];
+$a->strings["Alignment"] = "Alignement";
+$a->strings["Left"] = "Gauche";
+$a->strings["Center"] = "Centre";
+$a->strings["Color scheme"] = "Palette de couleurs";
+$a->strings["Posts font size"] = "Taille de texte des publications";
+$a->strings["Textareas font size"] = "Taille de police des zones de texte";
+$a->strings["Comma separated list of helper forums"] = "Liste de forums d'aide, séparés par des virgules";
+$a->strings["don't show"] = "cacher";
+$a->strings["show"] = "montrer";
+$a->strings["Set style"] = "Définir le style";
+$a->strings["Community Pages"] = "Pages de Communauté";
+$a->strings["Community Profiles"] = "Profils communautaires";
+$a->strings["Help or @NewHere ?"] = "Aide ou @NewHere?";
+$a->strings["Connect Services"] = "Connecter des services";
+$a->strings["Find Friends"] = "Trouver des amis";
+$a->strings["Last users"] = "Derniers utilisateurs";
 $a->strings["Find People"] = "Trouver des personnes";
 $a->strings["Enter name or interest"] = "Entrez un nom ou un centre d'intérêt";
 $a->strings["Examples: Robert Morgenstein, Fishing"] = "Exemples : Robert Morgenstein, Pêche";
@@ -1706,34 +1555,25 @@ $a->strings["Similar Interests"] = "Intérêts similaires";
 $a->strings["Random Profile"] = "Profil au hasard";
 $a->strings["Invite Friends"] = "Inviter des amis";
 $a->strings["Local Directory"] = "Annuaire local";
-$a->strings["Protocols"] = "";
-$a->strings["All Protocols"] = "";
-$a->strings["Saved Folders"] = "Dossiers sauvegardés";
-$a->strings["Everything"] = "Tout";
-$a->strings["Categories"] = "Catégories";
-$a->strings["%d contact in common"] = [
-       0 => "%d contact en commun",
-       1 => "%d contacts en commun",
-];
-$a->strings["Post to Email"] = "Publier aux courriels";
-$a->strings["Hide your profile details from unknown viewers?"] = "Cacher les détails du profil aux visiteurs inconnus?";
-$a->strings["Connectors disabled, since \"%s\" is enabled."] = "Les connecteurs sont désactivés parce que \"%s\" est activé.";
-$a->strings["Visible to everybody"] = "Visible par tout le monde";
-$a->strings["show"] = "montrer";
-$a->strings["don't show"] = "cacher";
-$a->strings["Close"] = "Fermer";
-$a->strings["Welcome "] = "Bienvenue ";
-$a->strings["Please upload a profile photo."] = "Merci d'illustrer votre profil d'une image.";
-$a->strings["Welcome back "] = "Bienvenue Ã  nouveau, ";
+$a->strings["Forums"] = "Forums";
+$a->strings["External link to forum"] = "Lien sortant vers le forum";
+$a->strings["Quick Start"] = "Démarrage rapide";
 $a->strings["Could not find any unarchived contact entry for this URL (%s)"] = "";
 $a->strings["The contact entries have been archived"] = "";
 $a->strings["Enter new password: "] = "";
-$a->strings["Password can't be empty"] = "";
 $a->strings["Post update version number has been set to %s."] = "";
 $a->strings["Check for pending update actions."] = "";
 $a->strings["Done."] = "";
 $a->strings["Execute pending post updates."] = "";
 $a->strings["All pending post updates are done."] = "";
+$a->strings["Post to Email"] = "Publier aux courriels";
+$a->strings["Hide your profile details from unknown viewers?"] = "Cacher les détails du profil aux visiteurs inconnus?";
+$a->strings["Connectors disabled, since \"%s\" is enabled."] = "Les connecteurs sont désactivés parce que \"%s\" est activé.";
+$a->strings["Visible to everybody"] = "Visible par tout le monde";
+$a->strings["Close"] = "Fermer";
+$a->strings["Welcome "] = "Bienvenue ";
+$a->strings["Please upload a profile photo."] = "Merci d'illustrer votre profil d'une image.";
+$a->strings["Welcome back "] = "Bienvenue Ã  nouveau, ";
 $a->strings["The database configuration file \"config/local.config.php\" could not be written. Please use the enclosed text to create a configuration file in your web server root."] = "";
 $a->strings["You may need to import the file \"database.sql\" manually using phpmyadmin or mysql."] = "Vous pourriez avoir besoin d'importer le fichier \"database.sql\" manuellement au moyen de phpmyadmin ou de la commande mysql.";
 $a->strings["Please see the file \"INSTALL.txt\"."] = "Référez-vous au fichier \"INSTALL.txt\".";
@@ -1770,6 +1610,8 @@ $a->strings["iconv PHP module"] = "";
 $a->strings["Error: iconv PHP module required but not installed."] = "Erreur : Le module PHP iconv requis est absent.";
 $a->strings["POSIX PHP module"] = "";
 $a->strings["Error: POSIX PHP module required but not installed."] = "";
+$a->strings["JSON PHP module"] = "";
+$a->strings["Error: JSON PHP module required but not installed."] = "";
 $a->strings["The web installer needs to be able to create a file called \"local.config.php\" in the \"config\" folder of your web server and it is unable to do so."] = "";
 $a->strings["This is most often a permission setting, as the web server may not be able to write files in your folder - even if you can."] = "Le plus souvent, il s'agit d'un problème de permission. Le serveur web peut ne pas Ãªtre capable d'écrire dans votre répertoire - alors que vous-même le pouvez.";
 $a->strings["At the end of this procedure, we will give you a text to save in a file named local.config.php in your Friendica \"config\" folder."] = "";
@@ -1835,6 +1677,8 @@ $a->strings["fingered"] = "a tripoté";
 $a->strings["rebuff"] = "rabrouer";
 $a->strings["rebuffed"] = "a rabroué";
 $a->strings["System"] = "Système";
+$a->strings["Home"] = "Profil";
+$a->strings["Introductions"] = "Introductions";
 $a->strings["%s commented on %s's post"] = "%s a commenté la publication de %s";
 $a->strings["%s created a new post"] = "%s a créé une nouvelle publication";
 $a->strings["%s liked %s's post"] = "%s a aimé la publication de %s";
@@ -1846,6 +1690,18 @@ $a->strings["%s is now friends with %s"] = "%s est désormais ami(e) avec %s";
 $a->strings["Friend Suggestion"] = "Suggestion d'amitié/contact";
 $a->strings["Friend/Connect Request"] = "Demande de connexion/relation";
 $a->strings["New Follower"] = "Nouvel abonné";
+$a->strings["Error 400 - Bad Request"] = "";
+$a->strings["Error 401 - Unauthorized"] = "";
+$a->strings["Error 403 - Forbidden"] = "";
+$a->strings["Error 404 - Not Found"] = "";
+$a->strings["Error 500 - Internal Server Error"] = "";
+$a->strings["Error 503 - Service Unavailable"] = "";
+$a->strings["The server cannot or will not process the request due to an apparent client error."] = "";
+$a->strings["Authentication is required and has failed or has not yet been provided."] = "";
+$a->strings["The request was valid, but the server is refusing action. The user might not have the necessary permissions for a resource, or may need an account."] = "";
+$a->strings["The requested resource could not be found but may be available in the future."] = "";
+$a->strings["An unexpected condition was encountered and no more specific message is suitable."] = "";
+$a->strings["The server is currently unavailable (because it is overloaded or down for maintenance). Please try again later."] = "";
 $a->strings["Update %s failed. See error logs."] = "Mise-à-jour %s Ã©chouée. Voir les journaux d'erreur.";
 $a->strings["\n\t\t\t\tThe friendica developers released update %s recently,\n\t\t\t\tbut when I tried to install it, something went terribly wrong.\n\t\t\t\tThis needs to be fixed soon and I can't do it alone. Please contact a\n\t\t\t\tfriendica developer if you can not help me on your own. My database might be invalid."] = "";
 $a->strings["The error message is\n[pre]%s[/pre]"] = "Le message d’erreur est\n[pre]%s[/pre]";
@@ -1860,12 +1716,212 @@ $a->strings["%d contact not imported"] = [
        1 => "%d contacts non importés",
 ];
 $a->strings["Done. You can now login with your username and password"] = "Action réalisée. Vous pouvez désormais vous connecter avec votre nom d'utilisateur et votre mot de passe";
+$a->strings["Birthday:"] = "Anniversaire :";
+$a->strings["YYYY-MM-DD or MM-DD"] = "AAAA-MM-JJ ou MM-JJ";
+$a->strings["never"] = "jamais";
+$a->strings["less than a second ago"] = "il y a moins d'une seconde";
+$a->strings["year"] = "an";
+$a->strings["years"] = "ans";
+$a->strings["months"] = "mois";
+$a->strings["weeks"] = "semaines";
+$a->strings["days"] = "jours";
+$a->strings["hour"] = "heure";
+$a->strings["hours"] = "heures";
+$a->strings["minute"] = "minute";
+$a->strings["minutes"] = "minutes";
+$a->strings["second"] = "seconde";
+$a->strings["seconds"] = "secondes";
+$a->strings["in %1\$d %2\$s"] = "";
+$a->strings["%1\$d %2\$s ago"] = "il y a %1\$d %2\$s ";
+$a->strings["view full size"] = "voir en pleine taille";
+$a->strings["Image/photo"] = "Image/photo";
+$a->strings["<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s"] = "<a href=\"%1\$s\" target=\"_blank\">%2\$s</a> %3\$s";
+$a->strings["$1 wrote:"] = "$1 a Ã©crit :";
+$a->strings["Encrypted content"] = "Contenu chiffré";
+$a->strings["Invalid source protocol"] = "";
+$a->strings["Invalid link protocol"] = "";
+$a->strings["Loading more entries..."] = "Chargement de résultats supplémentaires...";
+$a->strings["The end"] = "Fin";
+$a->strings["Follow"] = "S'abonner";
+$a->strings["@name, !forum, #tags, content"] = "@nom, !forum, #tags, contenu";
+$a->strings["Full Text"] = "Texte Entier";
+$a->strings["Tags"] = "Tags";
+$a->strings["Click to open/close"] = "Cliquer pour ouvrir/fermer";
+$a->strings["Export"] = "Exporter";
+$a->strings["Export calendar as ical"] = "Exporter au format iCal";
+$a->strings["Export calendar as csv"] = "Exporter au format CSV";
+$a->strings["No contacts"] = "Aucun contact";
+$a->strings["%d Contact"] = [
+       0 => "%d contact",
+       1 => "%d contacts",
+];
+$a->strings["View Contacts"] = "Voir les contacts";
+$a->strings["Frequently"] = "";
+$a->strings["Hourly"] = "";
+$a->strings["Twice daily"] = "";
+$a->strings["Daily"] = "";
+$a->strings["Weekly"] = "";
+$a->strings["Monthly"] = "";
+$a->strings["DFRN"] = "";
+$a->strings["OStatus"] = "";
+$a->strings["RSS/Atom"] = "";
+$a->strings["Zot!"] = "";
+$a->strings["LinkedIn"] = "";
+$a->strings["XMPP/IM"] = "";
+$a->strings["MySpace"] = "";
+$a->strings["Google+"] = "";
+$a->strings["pump.io"] = "";
+$a->strings["Twitter"] = "";
+$a->strings["Diaspora Connector"] = "";
+$a->strings["GNU Social Connector"] = "";
+$a->strings["ActivityPub"] = "";
+$a->strings["pnut"] = "";
+$a->strings["Male"] = "";
+$a->strings["Female"] = "";
+$a->strings["Currently Male"] = "";
+$a->strings["Currently Female"] = "";
+$a->strings["Mostly Male"] = "";
+$a->strings["Mostly Female"] = "";
+$a->strings["Transgender"] = "";
+$a->strings["Intersex"] = "";
+$a->strings["Transsexual"] = "";
+$a->strings["Hermaphrodite"] = "";
+$a->strings["Neuter"] = "";
+$a->strings["Non-specific"] = "Non-spécifique";
+$a->strings["Other"] = "Autre";
+$a->strings["Males"] = "Hommes";
+$a->strings["Females"] = "Femmes";
+$a->strings["Gay"] = "Gay";
+$a->strings["Lesbian"] = "Lesbienne";
+$a->strings["No Preference"] = "Sans préférence";
+$a->strings["Bisexual"] = "Bisexuel";
+$a->strings["Autosexual"] = "Auto-sexuel";
+$a->strings["Abstinent"] = "Abstinent";
+$a->strings["Virgin"] = "Vierge";
+$a->strings["Deviant"] = "Déviant";
+$a->strings["Fetish"] = "Fétichiste";
+$a->strings["Oodles"] = "Oodles";
+$a->strings["Nonsexual"] = "Non-sexuel";
+$a->strings["Single"] = "Célibataire";
+$a->strings["Lonely"] = "Esseulé";
+$a->strings["Available"] = "Disponible";
+$a->strings["Unavailable"] = "Indisponible";
+$a->strings["Has crush"] = "Attiré par quelqu'un";
+$a->strings["Infatuated"] = "Entiché";
+$a->strings["Dating"] = "Dans une relation";
+$a->strings["Unfaithful"] = "Infidèle";
+$a->strings["Sex Addict"] = "Accro au sexe";
+$a->strings["Friends"] = "Amis";
+$a->strings["Friends/Benefits"] = "Amis par intérêt";
+$a->strings["Casual"] = "Casual";
+$a->strings["Engaged"] = "Fiancé";
+$a->strings["Married"] = "Marié";
+$a->strings["Imaginarily married"] = "Se croit marié";
+$a->strings["Partners"] = "Partenaire";
+$a->strings["Cohabiting"] = "En cohabitation";
+$a->strings["Common law"] = "Marié \"de fait\"/\"sui juris\" (concubin)";
+$a->strings["Happy"] = "Heureux";
+$a->strings["Not looking"] = "Pas intéressé";
+$a->strings["Swinger"] = "Échangiste";
+$a->strings["Betrayed"] = "Trahi(e)";
+$a->strings["Separated"] = "Séparé";
+$a->strings["Unstable"] = "Instable";
+$a->strings["Divorced"] = "Divorcé";
+$a->strings["Imaginarily divorced"] = "Se croit divorcé";
+$a->strings["Widowed"] = "Veuf/Veuve";
+$a->strings["Uncertain"] = "Incertain";
+$a->strings["It's complicated"] = "C'est compliqué";
+$a->strings["Don't care"] = "S'en désintéresse";
+$a->strings["Ask me"] = "Me demander";
+$a->strings["General Features"] = "Fonctions générales";
+$a->strings["Multiple Profiles"] = "Profils multiples";
+$a->strings["Ability to create multiple profiles"] = "Possibilité de créer plusieurs profils";
+$a->strings["Photo Location"] = "Lieu de prise de la photo";
+$a->strings["Photo metadata is normally stripped. This extracts the location (if present) prior to stripping metadata and links it to a map."] = "Les métadonnées des photos sont normalement retirées. Ceci permet de sauver l'emplacement (si présent) et de positionner la photo sur une carte.";
+$a->strings["Export Public Calendar"] = "Exporter le Calendrier Public";
+$a->strings["Ability for visitors to download the public calendar"] = "Les visiteurs peuvent télécharger le calendrier public";
+$a->strings["Post Composition Features"] = "Caractéristiques de composition de publication";
+$a->strings["Auto-mention Forums"] = "Mentionner automatiquement les Forums";
+$a->strings["Add/remove mention when a forum page is selected/deselected in ACL window."] = "Ajoute/retire une mention quand une page forum est sélectionnée/désélectionnée lors du choix des destinataires d'une publication.";
+$a->strings["Explicit Mentions"] = "";
+$a->strings["Add explicit mentions to comment box for manual control over who gets mentioned in replies."] = "";
+$a->strings["Network Sidebar"] = "";
+$a->strings["Ability to select posts by date ranges"] = "Capacité de sélectionner les publications par intervalles de dates";
+$a->strings["Protocol Filter"] = "";
+$a->strings["Enable widget to display Network posts only from selected protocols"] = "";
+$a->strings["Network Tabs"] = "Onglets Réseau";
+$a->strings["Network New Tab"] = "Nouvel onglet réseaux";
+$a->strings["Enable tab to display only new Network posts (from the last 12 hours)"] = "Activer l'onglet pour afficher seulement les publications du réseau (dans les 12 dernières heures)";
+$a->strings["Network Shared Links Tab"] = "Onglet réseau partagé";
+$a->strings["Enable tab to display only Network posts with links in them"] = "Activer l'onglet pour afficher seulement les publications du réseau contenant des liens";
+$a->strings["Post/Comment Tools"] = "Outils de publication/commentaire";
+$a->strings["Post Categories"] = "Catégories des publications";
+$a->strings["Add categories to your posts"] = "Ajouter des catégories Ã  vos publications";
+$a->strings["Advanced Profile Settings"] = "Paramètres Avancés du Profil";
+$a->strings["List Forums"] = "Liste des forums";
+$a->strings["Show visitors public community forums at the Advanced Profile Page"] = "Montrer les forums communautaires aux visiteurs sur la Page de profil avancé";
+$a->strings["Tag Cloud"] = "";
+$a->strings["Provide a personal tag cloud on your profile page"] = "";
+$a->strings["Display Membership Date"] = "";
+$a->strings["Display membership date in profile"] = "";
+$a->strings["Nothing new here"] = "Rien de neuf ici";
+$a->strings["Clear notifications"] = "Effacer les notifications";
+$a->strings["Personal notes"] = "Notes personnelles";
+$a->strings["Your personal notes"] = "Vos notes personnelles";
+$a->strings["Sign in"] = "Se connecter";
+$a->strings["Home Page"] = "Page d'accueil";
+$a->strings["Register"] = "S'inscrire";
+$a->strings["Create an account"] = "Créer un compte";
+$a->strings["Help and documentation"] = "Aide et documentation";
+$a->strings["Apps"] = "Applications";
+$a->strings["Addon applications, utilities, games"] = "Applications supplémentaires, utilitaires, jeux";
+$a->strings["Search site content"] = "Rechercher dans le contenu du site";
+$a->strings["Community"] = "Communauté";
+$a->strings["Conversations on this and other servers"] = "";
+$a->strings["Directory"] = "Annuaire";
+$a->strings["People directory"] = "Annuaire des utilisateurs";
+$a->strings["Information about this friendica instance"] = "Information au sujet de cette instance de friendica";
+$a->strings["Terms of Service of this Friendica instance"] = "";
+$a->strings["Network Reset"] = "Réinitialiser le réseau";
+$a->strings["Load Network page with no filters"] = "Chargement des pages du réseau sans filtre";
+$a->strings["Friend Requests"] = "Demande d'amitié";
+$a->strings["See all notifications"] = "Voir toutes les notifications";
+$a->strings["Mark all system notifications seen"] = "Marquer toutes les notifications système comme 'vues'";
+$a->strings["Inbox"] = "Messages entrants";
+$a->strings["Outbox"] = "Messages sortants";
+$a->strings["Manage"] = "Gérer";
+$a->strings["Manage other pages"] = "Gérer les autres pages";
+$a->strings["Manage/Edit Profiles"] = "Gérer/Éditer les profiles";
+$a->strings["Site setup and configuration"] = "Démarrage et configuration du site";
+$a->strings["Navigation"] = "Navigation";
+$a->strings["Site map"] = "Carte du site";
+$a->strings["Embedding disabled"] = "Incorporation désactivée";
+$a->strings["Embedded content"] = "Contenu incorporé";
+$a->strings["newer"] = "Plus récent";
+$a->strings["older"] = "Plus ancien";
+$a->strings["prev"] = "précédent";
+$a->strings["last"] = "dernier";
+$a->strings["Add New Contact"] = "Ajouter un nouveau contact";
+$a->strings["Enter address or web location"] = "Entrez son adresse ou sa localisation web";
+$a->strings["Example: bob@example.com, http://example.com/barbara"] = "Exemple : bob@example.com, http://example.com/barbara";
+$a->strings["%d invitation available"] = [
+       0 => "%d invitation disponible",
+       1 => "%d invitations disponibles",
+];
+$a->strings["Protocols"] = "";
+$a->strings["All Protocols"] = "";
+$a->strings["Saved Folders"] = "Dossiers sauvegardés";
+$a->strings["Everything"] = "Tout";
+$a->strings["Categories"] = "Catégories";
+$a->strings["%d contact in common"] = [
+       0 => "%d contact en commun",
+       1 => "%d contacts en commun",
+];
 $a->strings["There are no tables on MyISAM."] = "";
 $a->strings["\nError %d occurred during database update:\n%s\n"] = "\nErreur %d survenue durant la mise Ã  jour de la base de données :\n%s\n";
 $a->strings["Errors encountered performing database changes: "] = "";
 $a->strings["%s: Database update"] = "";
 $a->strings["%s: updating %s table."] = "";
-$a->strings["Legacy module file not found: %s"] = "";
 $a->strings["Drop Contact"] = "Supprimer le contact";
 $a->strings["Organisation"] = "";
 $a->strings["News"] = "Nouvelles";
@@ -1919,6 +1975,7 @@ $a->strings["View on separate page"] = "Voir dans une nouvelle page";
 $a->strings["view on separate page"] = "voir dans une nouvelle page";
 $a->strings["[no subject]"] = "[pas de sujet]";
 $a->strings["Requested account is not available."] = "Le compte demandé n'est pas disponible.";
+$a->strings["Requested profile is not available."] = "Le profil demandé n'est pas disponible.";
 $a->strings["Edit profile"] = "Editer le profil";
 $a->strings["Atom feed"] = "Flux Atom";
 $a->strings["Manage/edit profiles"] = "Gérer/éditer les profils";
@@ -1934,7 +1991,6 @@ $a->strings["Upcoming events the next 7 days:"] = "";
 $a->strings["Member since:"] = "";
 $a->strings["j F, Y"] = "j F, Y";
 $a->strings["j F"] = "j F";
-$a->strings["Birthday:"] = "Anniversaire :";
 $a->strings["Age:"] = "Age :";
 $a->strings["for %1\$d %2\$s"] = "depuis %1\$d %2\$s";
 $a->strings["Religion:"] = "Religion :";
@@ -1952,8 +2008,20 @@ $a->strings["Profile Details"] = "Détails du profil";
 $a->strings["Only You Can See This"] = "Vous seul pouvez voir Ã§a";
 $a->strings["Tips for New Members"] = "Conseils aux nouveaux venus";
 $a->strings["OpenWebAuth: %1\$s welcomes %2\$s"] = "";
+$a->strings["Database storage failed to update %s"] = "";
+$a->strings["Database storage failed to insert data"] = "";
+$a->strings["Filesystem storage failed to create \"%s\". Check you write permissions."] = "";
+$a->strings["Filesystem storage failed to save data to \"%s\". Check your write permissions"] = "";
+$a->strings["Storage base path"] = "";
+$a->strings["Folder where uploaded files are saved. For maximum security, This should be a path outside web server folder tree"] = "";
+$a->strings["Enter a valid existing folder"] = "";
 $a->strings["Login failed"] = "";
 $a->strings["Not enough information to authenticate"] = "";
+$a->strings["Password can't be empty"] = "";
+$a->strings["Empty passwords are not allowed."] = "";
+$a->strings["The new password has been exposed in a public data dump, please choose another."] = "";
+$a->strings["The password can't contain accentuated letters, white spaces or colons (:)"] = "";
+$a->strings["Passwords do not match. Password unchanged."] = "Les mots de passe ne correspondent pas. Aucun changement appliqué.";
 $a->strings["An invitation is required."] = "Une invitation est requise.";
 $a->strings["Invitation could not be verified."] = "L'invitation fournie n'a pu Ãªtre validée.";
 $a->strings["Invalid OpenID url"] = "Adresse OpenID invalide";
@@ -1978,7 +2046,6 @@ $a->strings["Your nickname can only contain a-z, 0-9 and _."] = "";
 $a->strings["Nickname is already registered. Please choose another."] = "Pseudo déjà utilisé. Merci d'en choisir un autre.";
 $a->strings["SERIOUS ERROR: Generation of security keys failed."] = "ERREUR FATALE : La génération des clés de sécurité a Ã©choué.";
 $a->strings["An error occurred during registration. Please try again."] = "Une erreur est survenue lors de l'inscription. Merci de recommencer.";
-$a->strings["default"] = "défaut";
 $a->strings["An error occurred creating your default profile. Please try again."] = "Une erreur est survenue lors de la création de votre profil par défaut. Merci de recommencer.";
 $a->strings["An error occurred creating your self contact. Please try again."] = "";
 $a->strings["An error occurred creating your default contact group. Please try again."] = "";
@@ -1986,6 +2053,17 @@ $a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Yo
 $a->strings["Registration at %s"] = "";
 $a->strings["\n\t\t\tDear %1\$s,\n\t\t\t\tThank you for registering at %2\$s. Your account has been created.\n\t\t"] = "";
 $a->strings["\n\t\t\tThe login details are as follows:\n\n\t\t\tSite Location:\t%3\$s\n\t\t\tLogin Name:\t\t%1\$s\n\t\t\tPassword:\t\t%5\$s\n\n\t\t\tYou may change your password from your account \"Settings\" page after logging\n\t\t\tin.\n\n\t\t\tPlease take a few moments to review the other account settings on that page.\n\n\t\t\tYou may also wish to add some basic information to your default profile\n\t\t\t(on the \"Profiles\" page) so that other people can easily find you.\n\n\t\t\tWe recommend setting your full name, adding a profile photo,\n\t\t\tadding some profile \"keywords\" (very useful in making new friends) - and\n\t\t\tperhaps what country you live in; if you do not wish to be more specific\n\t\t\tthan that.\n\n\t\t\tWe fully respect your right to privacy, and none of these items are necessary.\n\t\t\tIf you are new and do not know anybody here, they may help\n\t\t\tyou to make some new and interesting friends.\n\n\t\t\tIf you ever want to delete your account, you can do so at %3\$s/removeme\n\n\t\t\tThank you and welcome to %2\$s."] = "";
+$a->strings["Sharing notification from Diaspora network"] = "Notification de partage du réseau Diaspora";
+$a->strings["Attachments:"] = "Pièces jointes : ";
+$a->strings["%s's timeline"] = "";
+$a->strings["%s's posts"] = "";
+$a->strings["%s's comments"] = "";
+$a->strings["%s is now following %s."] = "%s suit désormais %s.";
+$a->strings["following"] = "following";
+$a->strings["%s stopped following %s."] = "%s ne suit plus %s.";
+$a->strings["stopped following"] = "retiré de la liste de suivi";
+$a->strings["(no subject)"] = "(sans titre)";
+$a->strings["Item was not found."] = "Element introuvable.";
 $a->strings["%d contact edited."] = [
        0 => "%d contact mis Ã  jour.",
        1 => "%d contacts mis Ã  jour.",
@@ -2108,6 +2186,26 @@ $a->strings["Website Privacy Policy"] = "Politique de confidentialité du site i
 $a->strings["privacy policy"] = "politique de confidentialité";
 $a->strings["Logged out."] = "Déconnecté.";
 $a->strings["Bad Request."] = "";
+$a->strings["You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking \"Register\"."] = "";
+$a->strings["If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items."] = "Si vous n'êtes pas familier avec OpenID, laissez ce champ vide et remplissez le reste.";
+$a->strings["Your OpenID (optional): "] = "Votre OpenID (facultatif): ";
+$a->strings["Include your profile in member directory?"] = "Inclure votre profil dans l'annuaire des membres?";
+$a->strings["Note for the admin"] = "Commentaire pour l'administrateur";
+$a->strings["Leave a message for the admin, why you want to join this node"] = "Indiquez Ã  l'administrateur les raisons de votre inscription Ã  cette instance.";
+$a->strings["Membership on this site is by invitation only."] = "L'inscription Ã  ce site se fait uniquement sur invitation.";
+$a->strings["Your invitation code: "] = "";
+$a->strings["Your Full Name (e.g. Joe Smith, real or real-looking): "] = "Votre nom complet (p. ex. Michel Dupont):";
+$a->strings["Your Email Address: (Initial information will be send there, so this has to be an existing address.)"] = "Votre courriel : (Des informations de connexion vont Ãªtre envoyées Ã  cette adresse; elle doit exister).";
+$a->strings["Leave empty for an auto generated password."] = "Laisser ce champ libre pour obtenir un mot de passe généré automatiquement.";
+$a->strings["Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be \"<strong>nickname@%s</strong>\"."] = "";
+$a->strings["Choose a nickname: "] = "Choisir un pseudo : ";
+$a->strings["Import your profile to this friendica instance"] = "Importer votre profile dans cette instance de friendica";
+$a->strings["Note: This node explicitly contains adult content"] = "";
+$a->strings["Registration successful. Please check your email for further instructions."] = "Inscription réussie. Vérifiez vos emails pour la suite des instructions.";
+$a->strings["Failed to send email message. Here your accout details:<br> login: %s<br> password: %s<br><br>You can change your password after login."] = "Impossible d’envoyer le courriel de confirmation. Voici vos informations de connexion:<br> identifiant : %s<br> mot de passe : %s<br><br>Vous pourrez changer votre mot de passe une fois connecté.";
+$a->strings["Registration successful."] = "Inscription réussie.";
+$a->strings["Your registration can not be processed."] = "Votre inscription ne peut Ãªtre traitée.";
+$a->strings["Your registration is pending approval by the site owner."] = "Votre inscription attend une validation du propriétaire du site.";
 $a->strings["At the time of registration, and for providing communications between the user account and their contacts, the user has to provide a display name (pen name), an username (nickname) and a working email address. The names will be accessible on the profile page of the account by any visitor of the page, even if other profile details are not displayed. The email address will only be used to send the user notifications about interactions, but wont be visibly displayed. The listing of an account in the node's user directory or the global user directory is optional and can be controlled in the user settings, it is not necessary for communication."] = "";
 $a->strings["This data is required for communication and is passed on to the nodes of the communication partners and is stored there. Users can enter additional private data that may be transmitted to the communication partners accounts."] = "";
 $a->strings["At any point in time a logged in user can export their account data from the <a href=\"%1\$s/settings/uexport\">account settings</a>. If the user wants to delete their account they can do so at <a href=\"%1\$s/removeme\">%1\$s/removeme</a>. The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners."] = "";
@@ -2136,78 +2234,20 @@ $a->strings["to"] = "à";
 $a->strings["via"] = "via";
 $a->strings["Wall-to-Wall"] = "Inter-mur";
 $a->strings["via Wall-To-Wall:"] = "en Inter-mur :";
+$a->strings["Notifier task is pending"] = "";
+$a->strings["Delivery to remote servers is pending"] = "";
+$a->strings["Delivery to remote servers is underway"] = "";
+$a->strings["Delivery to remote servers is mostly done"] = "";
+$a->strings["Delivery to remote servers is done"] = "";
 $a->strings["%d comment"] = [
        0 => "%d commentaire",
        1 => "%d commentaires",
 ];
-$a->strings["Sharing notification from Diaspora network"] = "Notification de partage du réseau Diaspora";
-$a->strings["Attachments:"] = "Pièces jointes : ";
-$a->strings["%s is now following %s."] = "%s suit désormais %s.";
-$a->strings["following"] = "following";
-$a->strings["%s stopped following %s."] = "%s ne suit plus %s.";
-$a->strings["stopped following"] = "retiré de la liste de suivi";
-$a->strings["YYYY-MM-DD or MM-DD"] = "AAAA-MM-JJ ou MM-JJ";
-$a->strings["never"] = "jamais";
-$a->strings["less than a second ago"] = "il y a moins d'une seconde";
-$a->strings["year"] = "an";
-$a->strings["years"] = "ans";
-$a->strings["months"] = "mois";
-$a->strings["weeks"] = "semaines";
-$a->strings["days"] = "jours";
-$a->strings["hour"] = "heure";
-$a->strings["hours"] = "heures";
-$a->strings["minute"] = "minute";
-$a->strings["minutes"] = "minutes";
-$a->strings["second"] = "seconde";
-$a->strings["seconds"] = "secondes";
-$a->strings["in %1\$d %2\$s"] = "";
-$a->strings["%1\$d %2\$s ago"] = "il y a %1\$d %2\$s ";
-$a->strings["(no subject)"] = "(sans titre)";
+$a->strings["Delete this item?"] = "Effacer cet Ã©lément?";
+$a->strings["show fewer"] = "montrer moins";
+$a->strings["toggle mobile"] = "activ. mobile";
+$a->strings["No system theme config value set."] = "";
+$a->strings["The form security token was not correct. This probably happened because the form has been opened for too long (>3 hours) before submitting it."] = "Le jeton de sécurité du formulaire n'est pas correct. Ceci veut probablement dire que le formulaire est resté ouvert trop longtemps (plus de 3 heures) avant d'être validé.";
+$a->strings["Legacy module file not found: %s"] = "";
 $a->strings["%s: Updating author-id and owner-id in item and thread table. "] = "";
 $a->strings["%s: Updating post-type."] = "";
-$a->strings["greenzero"] = "greenzero";
-$a->strings["purplezero"] = "purplezero";
-$a->strings["easterbunny"] = "easterbunny";
-$a->strings["darkzero"] = "darkzero";
-$a->strings["comix"] = "comix";
-$a->strings["slackr"] = "slackr";
-$a->strings["Variations"] = "Variations";
-$a->strings["Custom"] = "Personnalisé";
-$a->strings["Note"] = "Remarque";
-$a->strings["Check image permissions if all users are allowed to see the image"] = "Vérifier que tous les utilisateurs du site sont autorisés Ã  voir l'image.";
-$a->strings["Select color scheme"] = "Choisir le schéma de couleurs";
-$a->strings["Navigation bar background color"] = "Couleur d'arrière-plan de la barre de navigation";
-$a->strings["Navigation bar icon color "] = "Couleur des icônes de la barre de navigation";
-$a->strings["Link color"] = "Couleur des liens";
-$a->strings["Set the background color"] = "Couleur d'arrière-plan";
-$a->strings["Content background opacity"] = "Opacité du contenu d'arrière-plan";
-$a->strings["Set the background image"] = "Image d'arrière-plan";
-$a->strings["Background image style"] = "Style de l'image de fond";
-$a->strings["Login page background image"] = "Image de fond de la page de login";
-$a->strings["Login page background color"] = "Couleur d'arrière-plan de la page de login";
-$a->strings["Leave background image and color empty for theme defaults"] = "Laisser l'image et la couleur de fond vides pour les paramètres par défaut du thème";
-$a->strings["Top Banner"] = "Bannière du haut";
-$a->strings["Resize image to the width of the screen and show background color below on long pages."] = "Redimensionner l'image Ã  la largeur de l'écran et combler en dessous avec la couleur d'arrière plan.";
-$a->strings["Full screen"] = "Plein Ã©cran";
-$a->strings["Resize image to fill entire screen, clipping either the right or the bottom."] = "Agrandir l'image pour remplir l'écran, jusqu'à toucher le bord droit ou le bas de l'écran.";
-$a->strings["Single row mosaic"] = "Mosaïque sur un rang";
-$a->strings["Resize image to repeat it on a single row, either vertical or horizontal."] = "Redimensionner l'image pour la dupliquer sur un seul rang, vertical ou horizontal.";
-$a->strings["Mosaic"] = "Mosaïque";
-$a->strings["Repeat image to fill the screen."] = "Dupliquer l'image pour couvrir l'écran.";
-$a->strings["Guest"] = "Invité";
-$a->strings["Visitor"] = "Visiteur";
-$a->strings["Alignment"] = "Alignement";
-$a->strings["Left"] = "Gauche";
-$a->strings["Center"] = "Centre";
-$a->strings["Color scheme"] = "Palette de couleurs";
-$a->strings["Posts font size"] = "Taille de texte des publications";
-$a->strings["Textareas font size"] = "Taille de police des zones de texte";
-$a->strings["Comma separated list of helper forums"] = "Liste de forums d'aide, séparés par des virgules";
-$a->strings["Set style"] = "Définir le style";
-$a->strings["Community Pages"] = "Pages de Communauté";
-$a->strings["Community Profiles"] = "Profils communautaires";
-$a->strings["Help or @NewHere ?"] = "Aide ou @NewHere?";
-$a->strings["Connect Services"] = "Connecter des services";
-$a->strings["Find Friends"] = "Trouver des amis";
-$a->strings["Last users"] = "Derniers utilisateurs";
-$a->strings["Quick Start"] = "Démarrage rapide";
index 4c9fe1298e2a92521668e60828c3f225e3224432..14b1074dc954518c48ba2994b83c5e8c8ea4d643 100644 (file)
@@ -7,9 +7,8 @@
        </ul>
 {{/if}}
 
-
 <div id="directory-search-wrapper">
-       <form id="directory-search-form" action="directory" method="get" >
+       <form id="directory-search-form" action="{{$search_mod}}" method="get" >
                <span class="dirsearch-desc">{{$desc nofilter}}</span>
                <input type="text" name="search" id="directory-search" class="search-input" onfocus="this.select();" value="{{$search}}" />
                <input type="submit" name="submit" id="directory-search-submit" value="{{$submit}}" class="button" />
index fa0088b8b667dcd60c096a8717d941d50ae5ba05..e02e4e4da2ede06fccbf8b67c0ab7c10b258c0f6 100644 (file)
@@ -88,7 +88,6 @@
                $("#comment-edit-text-" + id).putCursorAtEnd();
                $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
                $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-               $("#comment-edit-text-" + id).focus();
                $("#mod-cmnt-wrap-" + id).show();
                openMenu("comment-edit-submit-wrapper-" + id);
                return true;
                $(obj).val("");
        }
 
-       window.showMore = "{{$showmore}}";
-       window.showFewer = "{{$showfewer}}";
-
        function showHideCommentBox(id) {
                if ($("#comment-edit-form-" + id).is(":visible")) {
                        $("#comment-edit-form-" + id).hide();
index bf0c99d3a2148bfc9523c13527447907180ba686..f169b09212a8c5df75c55e5bbe17e6c86790b952 100644 (file)
@@ -42,7 +42,7 @@ function enableOnUser(){
 </script>
 <script type="text/javascript" src="{{$baseurl}}/view/js/ajaxupload.js" ></script>
 <script>
-       var ispublic = '{{$ispublic}}';
+       var ispublic = '{{$ispublic nofilter}}';
 
 
        $(document).ready(function() {
index 16fcb568d855073be1d1810b8e2954ab0007d061..88fd067c8ca3e05f11162917734c58e35d549f3e 100644 (file)
@@ -2,7 +2,7 @@
 
 <script>
 
-       var ispublic = "{{$ispublic}}";
+       var ispublic = "{{$ispublic nofilter}}";
 
 
        $(document).ready(function() {
index a5558ddce720ca388877eb37d0f0ef5afb91f40f..f1229a5aa581dd97ec8c0fb19abc3d0eda3c08d7 100644 (file)
@@ -1,7 +1,7 @@
 
 
 <script>
-       var ispublic = "{{$ispublic}}";
+       var ispublic = "{{$ispublic nofilter}}";
 
 
        $(document).ready(function() {
index b3ed2af02686edd1472c40cf716d4102dbed0daf..01cd7559f188fe57f6982c0a4104084f89827b21 100644 (file)
@@ -1,7 +1,12 @@
 
 {{if $item.comment_firstcollapsed}}
-       <div class="hide-comments-outer">
-       <span id="hide-comments-total-{{$item.id}}" class="hide-comments-total">{{$item.num_comments}}</span> <span id="hide-comments-{{$item.id}}" class="hide-comments fakelink" onclick="showHideComments({{$item.id}});">{{$item.hide_text}}</span>
+       <div class="hide-comments-outer fakelink" onclick="showHideComments({{$item.id}});">
+               <span id="hide-comments-total-{{$item.id}}" class="hide-comments-total">
+                       {{$item.num_comments}} - {{$item.show_text}}
+               </span>
+               <span id="hide-comments-{{$item.id}}" class="hide-comments" style="display: none">
+                       {{$item.num_comments}} - {{$item.hide_text}}
+               </span>
        </div>
        <div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
 {{/if}}
index f213123fb6c89c0d869da950fec69098d3a93656..fa3b3d03fb161eaca5ce72962e188893dce2be55 100644 (file)
@@ -375,9 +375,6 @@ header #site-location {
 header #banner {
     position: fixed;
     top: 0px;
-/*    width: 33%;
-    margin-left: 33%;
-    margin-right: 33%;*/
     left:49%;
     right: 49%;
     z-index: 1040;
@@ -393,8 +390,6 @@ header #banner {
 }
 header #banner #logo-img,
 .navbar-brand #logo-img {
-    /*mask: url('network#m1');*/
-    /*mask-image: url('img/friendica-25.png');*/
     -webkit-mask-image: url('img/friendica-25.png');
     background-color: $nav_icon_color;
     height: 25px;
@@ -1669,7 +1664,13 @@ aside .panel-body {
 
 /* wall items */
 .wall-item-container {
-    position: relative;
+    background-color: rgba(0, 0, 0, 0.03);
+    padding: 0.5em;
+    border-top: 1px solid rgba(255, 255, 255, 0.8);
+}
+
+.wall-item-container .media {
+    margin-top: 0;
 }
 
 /* wall items contact photo */
@@ -1914,12 +1915,13 @@ code > .hl-main {
 
 /* item social action buttons */
 .wall-item-actions {
-    margin-top: 15px;
+    display: flex;
+    margin: .5em 0;
+    justify-content: space-between;
 }
-.wall-item-actions, .wall-item-actions a, .wall-item-actions button {
+.wall-item-actions a, .wall-item-actions button {
     font-size: 13px;
     color: #555;
-    margin-bottom: 0;
 }
 .wall-item-actions .active {
     font-weight: bold;
@@ -2013,9 +2015,10 @@ code > .hl-main {
     position: relative!important;
     margin-top: 0;
 }
-.hide-comments-outer-wrapper {
-/*    text-align: center;
-    margin-top: -18px;*/
+.hide-comments-outer {
+    background-color: rgba(0, 0, 0, 0.03);
+    padding: 0.5em;
+    border-radius: 0.5em 0.5em 0 0;
 }
 .hide-comments-total {
     cursor: pointer;
@@ -2024,21 +2027,37 @@ code > .hl-main {
 /*
 * Comment Box
 */
-.thread_level_2 .wall-item-comment-wrapper {
-    padding-right: 5px;
+
+.comment-fake-form,
+.wall-item-comment-wrapper {
+    padding: 10px;
+    border-top: 1px solid rgba(255, 255, 255, 0.8);
+    background-color: rgba(0, 0, 0, 0.03);
+    border-radius: 0 0 10px 10px;
 }
-.comment-edit-submit-wrapper {
-    margin-bottom: 25px;
+
+.comment-fake-form {
+    border-color: #d9d9d9;
 }
-.comment-edit-submit-wrapper a,
-.comment-edit-submit-wrapper a:hover {
-    padding-top: 5px !important;
-    padding-bottom: 5px !important;
+.comment-fake-form textarea {
+    resize: none;
 }
-.comment-icon-list > li > .icon,
-.comment-icon-list > li > .icon:hover {
-    color: #555;
-    background-color: transparent;
+
+.comment-container .wall-item-comment-wrapper {
+    margin-top: 0.5em;
+}
+
+.comment-edit-form textarea {
+    resize: vertical;
+}
+
+.comment-edit-submit-wrapper {
+    text-align: right;
+}
+
+.comment-icon-list {
+    display: flex;
+    justify-content: space-between;
 }
 
 /* acpopup  + textcompletion*/
@@ -2101,8 +2120,8 @@ img.acpopup-img {
 .wall-item-container.thread_level_5,
 .wall-item-container.thread_level_6,
 .wall-item-container.thread_level_7 {
-  margin-left: 15px;
-
+    margin-left: 15px;
+    margin-right: -0.5em;
 }
 /* Menubar Tabs */
 section > .tabbar-wrapper {
@@ -2291,7 +2310,7 @@ ul.dropdown-menu li:hover {
 .generic-page-wrapper, .profile_photo-content-wrapper, .videos-content-wrapper,
  .suggest-content-wrapper, .common-content-wrapper, .help-content-wrapper,
 .allfriends-content-wrapper, .match-content-wrapper, .dirfind-content-wrapper,
-.directory-content-wrapper, .manage-content-wrapper, .notes-content-wrapper,
+.manage-content-wrapper, .notes-content-wrapper,
 .message-content-wrapper, .apps-content-wrapper,
 #adminpage, .delegate-content-wrapper, .uexport-content-wrapper,
 .viewcontacts-content-wrapper, .dfrn_request-content-wrapper,
@@ -3595,4 +3614,12 @@ section .profile-match-wrapper {
        .form-control {
                font-size: 16px;
        }
+
+    .wall-item-container.thread_level_3,
+    .wall-item-container.thread_level_4,
+    .wall-item-container.thread_level_5,
+    .wall-item-container.thread_level_6,
+    .wall-item-container.thread_level_7 {
+        margin-left: 5px;
+    }
 }
index e0c06af581f134ce8a7e9750beab82d0c0488336..93d7fe8cee5c0a3e81eb10246e7513ab0aea2d64 100644 (file)
@@ -82,7 +82,8 @@ function insertFormatting(BBcode, id) {
        if (tmpStr == '') {
                $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
                $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-               openMenu("comment-edit-submit-wrapper-" + id);
+               closeMenu("comment-fake-form-" + id);
+               openMenu("item-comments-" + id);
        }
 
        textarea = document.getElementById("comment-edit-text-" + id);
@@ -134,115 +135,99 @@ function cmtBbClose(id) {
        $("#comment-edit-bb-" + id).hide();
 }
 
-function commentExpand(id) {
-       $("#comment-edit-text-" + id).putCursorAtEnd();
-       $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-       $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-       $("#comment-edit-text-" + id).focus();
+function commentExpand(id)
+{
        $("#mod-cmnt-wrap-" + id).show();
-       openMenu("comment-edit-submit-wrapper-" + id);
+       closeMenu("comment-fake-form-" + id);
+       openMenu("item-comments-" + id);
+       $("#comment-edit-text-" + id)
+               .putCursorAtEnd()
+               .addClass("comment-edit-text-full")
+               .removeClass("comment-edit-text-empty");
+
        return true;
 }
 
-function commentClose(obj, id) {
-       if (obj.value == '') {
-               $("#comment-edit-text-" + id).removeClass("comment-edit-text-full");
-               $("#comment-edit-text-" + id).addClass("comment-edit-text-empty");
+function commentClose(obj, id)
+{
+       if (obj.value === '' || obj.value === obj.dataset.default) {
+               $("#comment-edit-text-" + id)
+                       .removeClass("comment-edit-text-full")
+                       .addClass("comment-edit-text-empty");
                $("#mod-cmnt-wrap-" + id).hide();
-               closeMenu("comment-edit-submit-wrapper-" + id);
+               openMenu("comment-fake-form-" + id);
+               closeMenu("item-comments-" + id);
                return true;
        }
        return false;
 }
 
 function showHideCommentBox(id) {
-       if ($('#comment-edit-form-' + id).is(':visible')) {
-               $('#comment-edit-form-' + id).hide();
+       var $el = $('#comment-edit-form-' + id);
+       if ($el.is(':visible')) {
+               $el.hide();
        } else {
-               $('#comment-edit-form-' + id).show();
+               $el.show();
        }
 }
 
 function commentOpenUI(obj, id) {
-       $("#comment-edit-text-" + id).addClass("comment-edit-text-full").removeClass("comment-edit-text-empty");
-       // Choose an arbitrary tab index that's greater than what we're using in jot (3 of them)
-       // The submit button gets tabindex + 1
-       $("#comment-edit-text-" + id).attr('tabindex', '9');
-       $("#comment-edit-submit-" + id).attr('tabindex', '10');
-       $("#comment-edit-submit-wrapper-" + id).show();
+       closeMenu("comment-fake-form-" + id);
+       openMenu("item-comments-" + id);
+       $("#comment-edit-text-" + id)
+               .putCursorAtEnd()
+               .addClass("comment-edit-text-full").removeClass("comment-edit-text-empty")
+               .attr('tabindex', '9');         // Choose an arbitrary tab index that's greater than what we're using in jot (3 of them)
+       $("#comment-edit-submit-" + id).attr('tabindex', '10'); // The submit button gets tabindex + 1
        // initialize autosize for this comment
        autosize($("#comment-edit-text-" + id + ".text-autosize"));
 }
 
 function commentCloseUI(obj, id) {
-       if (obj.value === '') {
-               $("#comment-edit-text-" + id).removeClass("comment-edit-text-full").addClass("comment-edit-text-empty");
-               $("#comment-edit-text-" + id).removeAttr('tabindex');
+       if (obj.value === '' || obj.value === obj.dataset.default) {
+               $("#comment-edit-text-" + id)
+                       .removeClass("comment-edit-text-full").addClass("comment-edit-text-empty")
+                       .removeAttr('tabindex');
                $("#comment-edit-submit-" + id).removeAttr('tabindex');
-               $("#comment-edit-submit-wrapper-" + id).hide();
+               openMenu("comment-fake-form-" + id);
+               closeMenu("item-comments-" + id);
                // destroy the automatic textarea resizing
                autosize.destroy($("#comment-edit-text-" + id + ".text-autosize"));
        }
 }
 
 function jotTextOpenUI(obj) {
-       if (obj.value == '') {
-               $(".modal-body #profile-jot-text").addClass("profile-jot-text-full").removeClass("profile-jot-text-empty");
+       if (obj.value === '' || obj.value === obj.dataset.default) {
+               var $el = $(".modal-body #profile-jot-text");
+               $el.addClass("profile-jot-text-full").removeClass("profile-jot-text-empty");
                // initiale autosize for the jot
-               autosize($(".modal-body #profile-jot-text"));
+               autosize($el);
        }
 }
 
 function jotTextCloseUI(obj) {
-       if (obj.value === '') {
-               $(".modal-body #profile-jot-text").removeClass("profile-jot-text-full").addClass("profile-jot-text-empty");
+       if (obj.value === '' || obj.value === obj.dataset.default) {
+               var $el = $(".modal-body #profile-jot-text");
+               $el.removeClass("profile-jot-text-full").addClass("profile-jot-text-empty");
                // destroy the automatic textarea resizing
-               autosize.destroy($(".modal-body #profile-jot-text"));
+               autosize.destroy($el);
        }
 }
 
 function commentOpen(obj, id) {
-       if (obj.value == '') {
-               $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-               $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
+       if (obj.value === '' || obj.value === obj.dataset.default) {
+               $("#comment-edit-text-" + id)
+                       .putCursorAtEnd()
+                       .addClass("comment-edit-text-full")
+                       .removeClass("comment-edit-text-empty");
                $("#mod-cmnt-wrap-" + id).show();
-               openMenu("comment-edit-submit-wrapper-" + id);
+               closeMenu("comment-fake-form-" + id);
+               openMenu("item-comments-" + id);
                return true;
        }
        return false;
 }
 
-function commentInsert(obj, id) {
-       var tmpStr = $("#comment-edit-text-" + id).val();
-       if (tmpStr == '') {
-               $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-               $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-               openMenu("comment-edit-submit-wrapper-" + id);
-       }
-       var ins = $(obj).html();
-       ins = ins.replace('&lt;', '<');
-       ins = ins.replace('&gt;', '>');
-       ins = ins.replace('&amp;', '&');
-       ins = ins.replace('&quot;', '"');
-       $("#comment-edit-text-" + id).val(tmpStr + ins);
-}
-
-function qCommentInsert(obj, id) {
-       var tmpStr = $("#comment-edit-text-" + id).val();
-       if (tmpStr == '') {
-               $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-               $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-               openMenu("comment-edit-submit-wrapper-" + id);
-       }
-       var ins = $(obj).val();
-       ins = ins.replace('&lt;', '<');
-       ins = ins.replace('&gt;', '>');
-       ins = ins.replace('&amp;', '&');
-       ins = ins.replace('&quot;', '"');
-       $("#comment-edit-text-" + id).val(tmpStr + ins);
-       $(obj).val('');
-}
-
 function confirmDelete() {
        return confirm(aStr.delitem);
 }
index 0965f3a3e88caa71841300a96fe0fcef8c0a6c80..83623bf34214a93fbd9ce3ee3a8a3b8a69fbf0da 100644 (file)
@@ -388,19 +388,6 @@ function showHide(theID) {
        }
 }
 
-function showHideComments(id) {
-       if( $('#collapsed-comments-' + id).is(':visible')) {
-               $('#collapsed-comments-' + id).slideUp();
-               $('#hide-comments-' + id).html(window.showMore);
-               $('#hide-comments-total-' + id).show();
-       }
-       else {
-               $('#collapsed-comments-' + id).slideDown();
-               $('#hide-comments-' + id).html(window.showFewer);
-               $('#hide-comments-total-' + id).hide();
-       }
-}
-
 // Show & hide event map in the network stream by button click.
 function showHideEventMap(elm) {
        // Get the id of the map element - it should be provided through
index d8bffa9c645c4ff048b0b329a2927f7e32d2d4e9..5fada9dd4802dc51d0e19aa17aebdbf6e4deea46 100644 (file)
@@ -2,9 +2,9 @@
 /**
  * @file view/theme/frio/style.php
  */
+
 use Friendica\Core\Config;
 use Friendica\Core\PConfig;
-use Friendica\Model\Profile;
 
 require_once 'view/theme/frio/php/PHPColors/Color.php';
 
index 4edc8f473e5059a04df30de8f3c4d31794d20120..98b3c4563632f1e203e5fc61c803bbde1b663607 100644 (file)
@@ -1,10 +1,10 @@
 
 {{if $threaded}}
-<div class="comment-wwedit-wrapper threaded" id="comment-edit-wrapper-{{$id}}" style="display: block;">
+<div class="comment-wwedit-wrapper threaded" id="comment-edit-wrapper-{{$id}}">
 {{else}}
-<div class="comment-wwedit-wrapper" id="comment-edit-wrapper-{{$id}}" style="display: block;">
+<div class="comment-wwedit-wrapper" id="comment-edit-wrapper-{{$id}}">
 {{/if}}
-       <form class="comment-edit-form" style="display: block;" data-item-id="{{$id}}" id="comment-edit-form-{{$id}}" action="item" method="post" onsubmit="post_comment({{$id}}); return false;">
+       <form class="comment-edit-form" data-item-id="{{$id}}" id="comment-edit-form-{{$id}}" action="item" method="post" onsubmit="post_comment({{$id}}); return false;">
                <input type="hidden" name="type" value="{{$type}}" />
                <input type="hidden" name="profile_uid" value="{{$profile_uid}}" />
                <input type="hidden" name="parent" value="{{$parent}}" />
                <input type="hidden" name="preview" id="comment-preview-inp-{{$id}}" value="0" />
                <input type="hidden" name="post_id_random" value="{{$rand_num}}" />
 
-               <div class="bb form-group">
-                       <textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty form-control text-autosize" name="body" placeholder="{{$comment}}" onFocus="commentOpenUI(this,{{$id}});">{{$default}}</textarea>
-               </div>
-               {{if $qcomment}}
+               <p class="comment-edit-bb-{{$id}} comment-icon-list">
+                       <span>
+                               <button type="button" class="btn btn-sm icon bb-img" style="cursor: pointer;" aria-label="{{$edimg}}" title="{{$edimg}}" data-role="insert-formatting" data-bbcode="img" data-id="{{$id}}">
+                                       <i class="fa fa-picture-o"></i>
+                               </button>
+                               <button type="button" class="btn btn-sm icon bb-attach" style="cursor: pointer;" aria-label="{{$edattach}}" title="{{$edattach}}" ondragenter="return commentLinkDrop(event, {{$id}});" ondragover="return commentLinkDrop(event, {{$id}});" ondrop="commentLinkDropper(event);" onclick="commentGetLink({{$id}}, '{{$prompttext}}');">
+                                       <i class="fa fa-paperclip"></i>
+                               </button>
+                       </span>
+                       <span>
+                               <button type="button" class="btn btn-sm icon bb-url" style="cursor: pointer;" aria-label="{{$edurl}}" title="{{$edurl}}" onclick="insertFormatting('url',{{$id}});">
+                                       <i class="fa fa-link"></i>
+                               </button>
+                               <button type="button" class="btn btn-sm icon underline" style="cursor: pointer;" aria-label="{{$eduline}}" title="{{$eduline}}" onclick="insertFormatting('u',{{$id}});">
+                                       <i class="fa fa-underline"></i>
+                               </button>
+                               <button type="button" class="btn btn-sm icon italic" style="cursor: pointer;" aria-label="{{$editalic}}" title="{{$editalic}}" onclick="insertFormatting('i',{{$id}});">
+                                       <i class="fa fa-italic"></i>
+                               </button>
+                               <button type="button" class="btn btn-sm icon bold" style="cursor: pointer;" aria-label="{{$edbold}}" title="{{$edbold}}" onclick="insertFormatting('b',{{$id}});">
+                                       <i class="fa fa-bold"></i>
+                               </button>
+                               <button type="button" class="btn btn-sm icon quote" style="cursor: pointer;" aria-label="{{$edquote}}" title="{{$edquote}}" onclick="insertFormatting('quote',{{$id}});">
+                                       <i class="fa fa-quote-left"></i>
+                               </button>
+                       </span>
+               </p>
+               <p>
+                       <textarea id="comment-edit-text-{{$id}}" class="comment-edit-text-empty form-control text-autosize" name="body" placeholder="{{$comment}}" rows="3" data-default="{{$default}}">{{$default}}</textarea>
+               </p>
+{{if $qcomment}}
+               <p>
                        <select id="qcomment-select-{{$id}}" name="qcomment-{{$id}}" class="qcomment" onchange="qCommentInsert(this,{{$id}});">
-                       <option value=""></option>
-               {{foreach $qcomment as $qc}}
-                       <option value="{{$qc}}">{{$qc}}</option>
-               {{/foreach}}
+                               <option value=""></option>
+       {{foreach $qcomment as $qc}}
+                               <option value="{{$qc}}">{{$qc}}</option>
+       {{/foreach}}
                        </select>
-               {{/if}}
+               </p>
+{{/if}}
 
-               <div class="comment-edit-text-end clear"></div>
-               <div class="comment-edit-submit-wrapper" id="comment-edit-submit-wrapper-{{$id}}" style="display: none;">
+               <p class="comment-edit-submit-wrapper">
+{{if $preview}}
+                       <button type="button" class="btn btn-defaul btn-sm" onclick="preview_comment({{$id}});" id="comment-edit-preview-link-{{$id}}"><i class="fa fa-eye"></i> {{$preview}}</button>
+{{/if}}
                        <button type="submit" class="btn btn-primary btn-sm" id="comment-edit-submit-{{$id}}" name="submit"><i class="fa fa-envelope"></i> {{$submit}}</button>
-                       {{if $preview}}
-                               <button type="button" class="btn btn-defaul btn-sm" onclick="preview_comment({{$id}});" id="comment-edit-preview-link-{{$id}}"><i class="fa fa-eye"></i> {{$preview}}</button>
-                       {{/if}}
-                       <ul class="comment-edit-bb-{{$id}} comment-icon-list nav nav-pills pull-right">
-                               <li>
-                                       <button type="button" class="btn-link icon bb-img" style="cursor: pointer;" aria-label="{{$edimg}}" title="{{$edimg}}" data-role="insert-formatting" data-bbcode="img" data-id="{{$id}}">
-                                               <i class="fa fa-picture-o"></i>
-                                       </button>
-                               </li>
-                               <li>
-                                       <button type="button" class="btn-link icon bb-url" style="cursor: pointer;" aria-label="{{$edurl}}" title="{{$edurl}}" onclick="insertFormatting('url',{{$id}});">
-                                               <i class="fa fa-link"></i>
-                                       </button>
-                               </li>
-                               <li>
-                                       <button type="button" class="btn-link icon" style="cursor: pointer;" aria-label="{{$edattach}}" title="{{$edattach}}" ondragenter="return commentLinkDrop(event, {{$id}});" ondragover="return commentLinkDrop(event, {{$id}});" ondrop="commentLinkDropper(event);" onclick="commentGetLink({{$id}}, '{{$prompttext}}');">
-                                               <i class="fa fa-paperclip"></i>
-                                       </button>
-                               </li>
-                               <li>
-                                       <button type="button" class="btn-link icon underline" style="cursor: pointer;" aria-label="{{$eduline}}" title="{{$eduline}}" onclick="insertFormatting('u',{{$id}});">
-                                               <i class="fa fa-underline"></i>
-                                       </button>
-                               </li>
-                               <li>
-                                       <button type="button" class="btn-link icon italic" style="cursor: pointer;" aria-label="{{$editalic}}" title="{{$editalic}}" onclick="insertFormatting('i',{{$id}});">
-                                               <i class="fa fa-italic"></i>
-                                       </button>
-                               </li>
-                               <li>
-                                       <button type="button" class="btn-link icon bold" style="cursor: pointer;" aria-label="{{$edbold}}" title="{{$edbold}}" onclick="insertFormatting('b',{{$id}});">
-                                               <i class="fa fa-bold"></i>
-                                       </button>
-                               </li>
-                               <li>
-                                       <button type="button" class="btn-link icon quote" style="cursor: pointer;" aria-label="{{$edquote}}" title="{{$edquote}}" onclick="insertFormatting('quote',{{$id}});">
-                                               <i class="fa fa-quote-left"></i>
-                                       </button>
-                               </li>
-                       </ul>
-               </div>
+               </p>
 
                <div class="comment-edit-end clear"></div>
        </form>
        <div id="comment-edit-preview-{{$id}}" class="comment-edit-preview" style="display:none;"></div>
 </div>
+
index 98ec3f5e2f8d54505f38830edb68992f68a44a1d..36812916d6dce4b42470f6aa9cee2f2cd07fa5b8 100644 (file)
@@ -1,40 +1,41 @@
 
-{{if $gdirpath}}
-<ul class="list-unstyled pull-right">
-       <li><div id="global-directory-link"><a href="{{$gdirpath}}">{{$globaldir}}</a></div></li>
-</ul>
-{{/if}}
-
-{{include file="section_title.tpl"}}
-
-
-{{* The search input field to search for contacts *}}
-<div id="directory-search-wrapper">
-       <form id="directory-search-form" class="navbar-form" role="search" action="directory" method="get" >
-               <div class="row">
-                       <div class="col-md-2"></div>
-                       <div class="col-md-8 ">
-                               <div class="form-group form-group-search">
-                                       <input type="text" name="search" id="directory-search" class="search-input form-control form-search" onfocus="this.select();" value="{{$search}}" placeholder="{{$desc nofilter}}"/>
-                                       <button class="btn btn-default btn-sm form-button-search" type="submit" id="directory-search-submit">{{$submit}}</button>
+<div class="generic-page-wrapper">
+       {{if $gdirpath}}
+       <ul class="list-unstyled pull-right">
+               <li><div id="global-directory-link"><a href="{{$gdirpath}}">{{$globaldir}}</a></div></li>
+       </ul>
+       {{/if}}
+
+       {{include file="section_title.tpl"}}
+
+       {{* The search input field to search for contacts *}}
+       <div id="directory-search-wrapper">
+               <form id="directory-search-form" class="navbar-form" role="search" action="{{$search_mod}}" method="get" >
+                       <div class="row">
+                               <div class="col-md-2"></div>
+                               <div class="col-md-8 ">
+                                       <div class="form-group form-group-search">
+                                               <input type="text" name="search" id="directory-search" class="search-input form-control form-search" onfocus="this.select();" value="{{$search}}" placeholder="{{$desc nofilter}}"/>
+                                               <button class="btn btn-default btn-sm form-button-search" type="submit" id="directory-search-submit">{{$submit}}</button>
+                                       </div>
                                </div>
+                               <div class="col-md-2"></div>
                        </div>
-                       <div class="col-md-2"></div>
-               </div>
-       </form>
-</div>
+               </form>
+       </div>
 
-<hr>
+       <hr>
 
-<div id="directory-search-end" class="clear"></div>
+       <div id="directory-search-end" class="clear"></div>
 
-{{* format each contact with the contact_template.tpl *}}
-<ul id="viewcontact_wrapper" class="viewcontact_wrapper media-list">
-{{foreach $contacts as $contact}}
-       <li>{{include file="contact_template.tpl"}}</li>
-{{/foreach}}
-</ul>
+       {{* format each contact with the contact_template.tpl *}}
+       <ul id="viewcontact_wrapper" class="viewcontact_wrapper media-list">
+       {{foreach $contacts as $contact}}
+               <li>{{include file="contact_template.tpl"}}</li>
+       {{/foreach}}
+       </ul>
 
-<div class="directory-end" ></div>
+       <div class="directory-end" ></div>
 
-{{$paginate nofilter}}
+       {{$paginate nofilter}}
+</div>
index e1805f744fae554db27fcba2ad162c1bbf54ed7f..b3c632b3d15ae6a3e02629dbc42842257a59bc13 100644 (file)
 {{/if}}
 <script type="text/javascript" src="view/theme/frio/js/textedit.js"></script>
 
-<script type="text/javascript">
-       window.showMore = "{{$showmore}}";
-       window.showFewer = "{{$showfewer}}";
-</script>
-
 {{* Include the strings which are needed for some js functions (e.g. translation)
 They are loaded into the html <head> so that js functions can use them *}}
 {{include file="js_strings.tpl"}}
index ac59caed8e16dd18ff32052ce925088d41caed70..db2c9afeb912c46239418e3f1964e7c3c3788ee6 100644 (file)
@@ -40,7 +40,7 @@
 </script>
 
 <script type="text/javascript">
-       var ispublic = '{{$ispublic}}';
+       var ispublic = '{{$ispublic nofilter}}';
        aStr.linkurl = '{{$linkurl}}';
 
 
index 37a8e04966e77b0d819f98b66956f92dd0a34a4d..965245aea644b267e50f9ef55ea3fe2f8fa65666 100644 (file)
@@ -1,5 +1,5 @@
 
 <script type="text/javascript" src="view/theme/frio/js/mod_photos.js"></script>
 <script type="text/javascript">
-       var ispublic = "{{$ispublic}}";
+       var ispublic = "{{$ispublic nofilter}}";
 </script>
index c6f90ac05d63dce6d584201d1dfb38f1e1af5c85..3b3f64a0d4f6b95d33f9f3f91a72719a498e8c94 100644 (file)
                        </div>
                        <!-- ./TODO -->
 
-                       <div class="wall-item-actions">
+                       <p class="wall-item-actions">
                                {{* Action buttons to interact with the item (like: like, dislike, share and so on *}}
-                               <div class="wall-item-actions-left pull-left">
+                               <span class="wall-item-actions-left">
                                        <!--comment this out to try something different {{if $item.threaded}}{{if $item.comment}}
                                        <div id="button-reply" class="pull-left">
                                                <button type="button" class="btn-link" id="comment-{{$item.id}}" onclick="openClose('item-comments-{{$item.id}}'); commentExpand({{$item.id}});"><i class="fa fa-reply" title="{{$item.switchcomment}}"></i> </span>
                                                {{/if}}
                                        {{/if}}
                                        <img id="like-rotator-{{$item.id}}" class="like-rotator" src="images/rotator.gif" alt="{{$item.wait}}" title="{{$item.wait}}" style="display: none;" />
-                               </div>
+                               </span>
 
 
-                               <div class="wall-item-actions-right pull-right">
+                               <span class="wall-item-actions-right">
                                        {{* Event attendance buttons *}}
-                                       {{if $item.isevent}}
-                                       <div class="vote-event">
+                               {{if $item.isevent}}
+                                       <span class="vote-event">
                                                <button type="button" class="btn btn-defaultbutton-event{{if $item.responses.attendyes.self}} active" aria-pressed="true{{/if}}" id="attendyes-{{$item.id}}" title="{{$item.attend.0}}" onclick="doLikeAction({{$item.id}}, 'attendyes');"><i class="fa fa-check" aria-hidden="true"><span class="sr-only">{{$item.attend.0}}</span></i></button>
                                                <button type="button" class="btn btn-defaultbutton-event{{if $item.responses.attendno.self}} active" aria-pressed="true{{/if}}" id="attendno-{{$item.id}}" title="{{$item.attend.1}}" onclick="doLikeAction({{$item.id}}, 'attendno');"><i class="fa fa-times" aria-hidden="true"><span class="sr-only">{{$item.attend.1}}</span></i></button>
                                                <button type="button" class="btn btn-defaultbutton-event{{if $item.responses.attendmaybe.self}} active" aria-pressed="true{{/if}}" id="attendmaybe-{{$item.id}}" title="{{$item.attend.2}}" onclick="doLikeAction({{$item.id}}, 'attendmaybe');"><i class="fa fa-question" aria-hidden="true"><span class="sr-only">{{$item.attend.2}}</span></i></button>
-                                       </div>
-                                       {{/if}}
+                                       </span>
+                               {{/if}}
 
-                                       <div class="pull-right checkbox">
-                                               {{if $item.drop.pagedrop}}
+                                       <span class="pull-right checkbox">
+                               {{if $item.drop.pagedrop}}
                                                <input type="checkbox" title="{{$item.drop.select}}" name="itemselected[]" id="checkbox-{{$item.id}}" class="item-select" value="{{$item.id}}" />
                                                <label for="checkbox-{{$item.id}}"></label>
-                                               {{/if}}
-                                       </div>
-                               </div>
-                               <div class="clearfix"></div>
-                       </div><!--./wall-item-actions-->
+                               {{/if}}
+                                       </span>
+                               </span>
+                       </p><!--./wall-item-actions-->
 
                                        {{* Display likes, dislike and attendance stats *}}
                        {{if $item.responses}}
diff --git a/view/theme/frio/templates/voting_fakelink.tpl b/view/theme/frio/templates/voting_fakelink.tpl
new file mode 100644 (file)
index 0000000..b55f8fa
--- /dev/null
@@ -0,0 +1,2 @@
+
+<p>{{$phrase nofilter}}</p>
index c149b58a515edabedab9fc051469d09eb653614d..1fb12212537cdef1b10f18b4f2d161845623aa3d 100644 (file)
@@ -20,7 +20,7 @@ as the value of $top_child_total (this is done at the end of this file)
 {{/if}}
 
 {{if $item.thread_level==2 && $top_child_nr==1}}
-<div class="comment-container well well-sm"> <!--top-child-begin-->
+<div class="comment-container"> <!--top-child-begin-->
 {{/if}}
 {{* end of hacky part to count childrens *}}
 
@@ -41,12 +41,15 @@ as the value of $top_child_total (this is done at the end of this file)
        {{if $item.thread_level<3}}
                <div class="hide-comments-outer-wrapper">
                        <div class="hide-comments-outer fakelink" onclick="showHideComments({{$item.id}});">
-                               <span id="hide-comments-total-{{$item.id}}"
-                                       class="hide-comments-total">{{$item.num_comments}}</span>
-                               <span id="hide-comments-{{$item.id}}"
-                                       class="hide-comments">{{$item.hide_text}}</span>
+                               <span id="hide-comments-total-{{$item.id}}" class="hide-comments-total">
+                                       <i class="fa fa-caret-right" aria-hidden="true"></i>
+                                       {{$item.num_comments}} - {{$item.show_text}}
+                               </span>
+                               <span id="hide-comments-{{$item.id}}" class="hide-comments" style="display: none">
+                                       <i class="fa fa-caret-down" aria-hidden="true"></i>
+                                       {{$item.num_comments}} - {{$item.hide_text}}
+                               </span>
                        </div>
-                       <hr />
                </div>
                <div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
        {{else}}
@@ -305,9 +308,9 @@ as the value of $top_child_total (this is done at the end of this file)
                <!-- ./TODO -->
 
                <!-- <hr /> -->
-               <div class="wall-item-actions">
+               <p class="wall-item-actions">
                        {{* Action buttons to interact with the item (like: like, dislike, share and so on *}}
-                       <div class="wall-item-actions-left pull-left">
+                       <span class="wall-item-actions-left">
                                <!--comment this out to try something different {{if $item.threaded}}{{if $item.comment}}
                                <div id="button-reply" class="pull-left">
                                        <button type="button" class="btn-link" id="comment-{{$item.id}}" onclick="openClose('item-comments-{{$item.id}}'); commentExpand({{$item.id}});"><i class="fa fa-reply" title="{{$item.switchcomment}}"></i> </span>
@@ -335,7 +338,7 @@ as the value of $top_child_total (this is done at the end of this file)
 
                                {{* Button to open the comment text field *}}
                                {{if $item.comment}}
-                               <button type="button" class="btn-link button-comments" id="comment-{{$item.id}}" title="{{$item.switchcomment}}" {{if $item.thread_level != 1}}onclick="openClose('item-comments-{{$item.id}}'); commentExpand({{$item.id}});" {{else}} onclick="showHide('item-comments-{{$item.id}}'); commentExpand({{$item.id}});"{{/if}}><i class="fa fa-commenting" aria-hidden="true"></i>&nbsp;{{$item.switchcomment}}</button>
+                               <button type="button" class="btn-link button-comments" id="comment-{{$item.id}}" title="{{$item.switchcomment}}" {{if $item.thread_level != 1}}onclick="openClose('item-comments-{{$item.id}}'); commentExpand({{$item.id}});" {{else}} onclick="openClose('item-comments-{{$item.id}}'); commentExpand({{$item.id}});"{{/if}}><i class="fa fa-commenting" aria-hidden="true"></i>&nbsp;{{$item.switchcomment}}</button>
                                {{/if}}
 
                                {{* Button for sharing the item *}}
@@ -348,27 +351,26 @@ as the value of $top_child_total (this is done at the end of this file)
                                        {{/if}}
                                {{/if}}
                                <img id="like-rotator-{{$item.id}}" class="like-rotator" src="images/rotator.gif" alt="{{$item.wait}}" title="{{$item.wait}}" style="display: none;" />
-                       </div>
+                       </span>
 
-                       <div class="wall-item-actions-right pull-right">
+                       <span class="wall-item-actions-right">
                                {{* Event attendance buttons *}}
-                               {{if $item.isevent}}
-                               <div class="vote-event">
+                       {{if $item.isevent}}
+                               <span class="vote-event">
                                        <button type="button" class="btn btn-xs btn-default button-event{{if $item.responses.attendyes.self}} active" aria-pressed="true{{/if}}" id="attendyes-{{$item.id}}" title="{{$item.attend.0}}" onclick="doLikeAction({{$item.id}},'attendyes');"><i class="fa fa-check" aria-hidden="true"><span class="sr-only">{{$item.attend.0}}</span></i></button>
                                        <button type="button" class="btn btn-xs btn-default button-event{{if $item.responses.attendno.self}} active" aria-pressed="true{{/if}}" id="attendno-{{$item.id}}" title="{{$item.attend.1}}" onclick="doLikeAction({{$item.id}},'attendno');"><i class="fa fa-times" aria-hidden="true"><span class="sr-only">{{$item.attend.1}}</span></i></button>
                                        <button type="button" class="btn btn-xs btn-default button-event{{if $item.responses.attendmaybe.self}} active" aria-pressed="true{{/if}}" id="attendmaybe-{{$item.id}}" title="{{$item.attend.2}}" onclick="doLikeAction({{$item.id}},'attendmaybe');"><i class="fa fa-question" aria-hidden="true"><span class="sr-only">{{$item.attend.2}}</span></i></button>
-                               </div>
-                               {{/if}}
+                               </span>
+                       {{/if}}
 
-                               <div class="pull-right checkbox">
-                                       {{if $item.drop.pagedrop}}
+                               <span class="pull-right checkbox">
+                       {{if $item.drop.pagedrop}}
                                        <input type="checkbox" title="{{$item.drop.select}}" name="itemselected[]" id="checkbox-{{$item.id}}" class="item-select" value="{{$item.id}}" />
                                        <label for="checkbox-{{$item.id}}"></label>
-                               {{/if}}
-                               </div>
-                       </div>
-                       <div class="clearfix"></div>
-               </div><!--./wall-item-actions-->
+                       {{/if}}
+                               </span>
+                       </span>
+               </p><!--./wall-item-actions-->
 
                <div class="wall-item-links"></div>
 
@@ -381,20 +383,17 @@ as the value of $top_child_total (this is done at the end of this file)
                        </div>
                {{/if}}
 
+               {{* Insert comment box of threaded children *}}
+               {{if $item.threaded && $item.comment && $item.indent==comment}}
+                       <div class="wall-item-comment-wrapper" id="item-comments-{{$item.id}}" data-display="block" style="display: none;">
+                               {{$item.comment nofilter}}
+                       </div>
+               {{/if}}
+
                {{if $item.thread_level!=1}}
                </div><!--./media-body from for comments-->
-               <hr />
                {{/if}}
 
-
-               {{* Insert comment box of threaded children *}}
-               {{if $item.threaded}}{{if $item.comment}}{{if $item.indent==comment}}
-               <div class="wall-item-comment-wrapper" id="item-comments-{{$item.id}}" style="display: none;">
-                       {{$item.comment nofilter}}
-               </div>
-               {{/if}}{{/if}}{{/if}}
-
-
                {{foreach $item.children as $child}}
                        {{*
                        {{if $child.type == tag}}
@@ -409,33 +408,22 @@ as the value of $top_child_total (this is done at the end of this file)
                {{* Insert the comment box of the top level post at the bottom of the thread.
                        Display this comment box if there are any comments. If not hide it. In this
                        case it could be opend with the "comment" button *}}
-               {{if $item.total_comments_num}}
-                       {{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}}
-                               <div class="wall-item-comment-wrapper well well-small" id="item-comments-{{$item.id}}">{{$item.comment nofilter}}</div>
-                       {{/if}}{{/if}}{{/if}}
-
-                       {{if $item.flatten}}
-                               <div class="wall-item-comment-wrapper well well-small" id="item-comments-{{$item.id}}">{{$item.comment nofilter}}</div>
-                       {{/if}}
-               {{else}}
-                       {{if $item.threaded}}{{if $item.comment}}{{if $item.thread_level==1}}
-                               <div class="wall-item-comment-wrapper well well-small" id="item-comments-{{$item.id}}" style="display: none;">{{$item.comment nofilter}}</div>
-                       {{/if}}{{/if}}{{/if}}
-
-                       {{if $item.flatten}}
-                               <div class="wall-item-comment-wrapper well well-small" id="item-comments-{{$item.id}}" style="display: none;">{{$item.comment nofilter}}</div>
+               {{if $item.comment && $item.thread_level==1}}
+                       {{if $item.total_comments_num}}
+                       <div class="comment-fake-form" id="comment-fake-form-{{$item.id}}">
+                               <textarea id="comment-fake-text-{{$item.id}}" class="comment-fake-text-empty form-control" placeholder="{{$item.reply_label}}" onFocus="commentOpenUI(this, {{$item.id}});"  rows="1"></textarea>
+                       </div>
                        {{/if}}
+                       <div class="wall-item-comment-wrapper well well-small" id="item-comments-{{$item.id}}" data-display="block" style="display: none">{{$item.comment nofilter}}</div>
                {{/if}}
        </div><!-- /media -->
 </div><!-- ./panel-body or ./wall-item-container -->
 
-
 {{if $mode == display}}
 {{else}}
 {{if $item.comment_lastcollapsed}}</div>{{/if}}
 {{/if}}
 
-
 {{* close the comment-container div if no more thread_level = 2 children are left *}}
 {{if $item.thread_level==2 && $top_child_nr==$top_child_total}}
 </div><!--./comment-container-->
index 1d2295278b91f2dad1a8c8c82c4e69d53f063e70..a80aabf4b47202b8c2d1e1d76138f11f829d317d 100644 (file)
@@ -1,19 +1,13 @@
 {{if $mode == display}}
 {{else}}
 {{if $item.comment_firstcollapsed}}
-       <div class="hide-comments-outer">
-               <span id="hide-comments-total-{{$item.id}}"
-                       class="hide-comments-total">{{$item.num_comments}}</span>
-                       <span id="hide-comments-{{$item.id}}"
-                               class="hide-comments fakelink"
-                               onclick="showHideComments({{$item.id}});">{{$item.hide_text}}</span>
-                       {{if $item.thread_level==3}} -
-                       <span id="hide-thread-{{$item}}-id"
-                               class="fakelink"
-                               onclick="showThread({{$item.id}});">expand</span> /
-                       <span id="hide-thread-{{$item}}-id"
-                               class="fakelink"
-                               onclick="hideThread({{$item.id}});">collapse</span> thread{{/if}}
+       <div class="hide-comments-outer fakelink" onclick="showHideComments({{$item.id}});">
+               <span id="hide-comments-total-{{$item.id}}" class="hide-comments-total">
+                       {{$item.num_comments}} - {{$item.show_text}}
+               </span>
+               <span id="hide-comments-{{$item.id}}" class="hide-comments" style="display: none">
+                       {{$item.num_comments}} - {{$item.hide_text}}
+               </span>
        </div>
        <div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
 {{/if}}
index 632481ce59260178b0177940c7f2b52de2e4f63e..b549f1840ddf625bc55f182a0f26af57d968a38e 100644 (file)
@@ -52,7 +52,7 @@ function enableOnUser(){
 </script>
 
 <script>
-       var ispublic = '{{$ispublic}}';
+       var ispublic = '{{$ispublic nofilter}}';
 
        $(document).ready(function() {
 
index a7e0f201090ac62858420ffe51029320a6654021..08ff557670e9a12edbba650b6f6e3f7751d468e3 100644 (file)
@@ -1,8 +1,12 @@
 
 {{if $item.comment_firstcollapsed}}
-       <div class="hide-comments-outer">
-               <span id="hide-comments-total-{{$item.id}}" class="hide-comments-total">{{$item.num_comments}}</span>
-               <span id="hide-comments-{{$item.id}}" class="hide-comments fakelink" onclick="showHideComments({{$item.id}});">{{$item.hide_text}}</span>
+       <div class="hide-comments-outer fakelink" onclick="showHideComments({{$item.id}});">
+               <span id="hide-comments-total-{{$item.id}}" class="hide-comments-total">
+                       {{$item.num_comments}} - {{$item.show_text}}
+               </span>
+               <span id="hide-comments-{{$item.id}}" class="hide-comments" style="display: none">
+                       {{$item.num_comments}} - {{$item.hide_text}}
+               </span>
        </div>
        <div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
 {{/if}}
index 21ebcea38f56769944ac1e4f2e7d1fd13a1c339f..37e01f75a40898465eb28d25410c15b7cc0755f1 100644 (file)
@@ -2,12 +2,13 @@
 {{else}}
 {{if $item.comment_firstcollapsed}}
        {{if $item.thread_level<3}}
-               <div class="hide-comments-outer">
-                       <span id="hide-comments-total-{{$item.id}}"
-                               class="hide-comments-total">{{$item.num_comments}}</span>
-                       <span id="hide-comments-{{$item.id}}"
-                               class="hide-comments fakelink"
-                               onclick="showHideComments({{$item.id}});">{{$item.hide_text}}</span>
+               <div class="hide-comments-outer fakelink" onclick="showHideComments({{$item.id}});">
+                       <span id="hide-comments-total-{{$item.id}}" class="hide-comments-total">
+                               {{$item.num_comments}} - {{$item.show_text}}
+                       </span>
+                       <span id="hide-comments-{{$item.id}}" class="hide-comments" style="display: none">
+                               {{$item.num_comments}} - {{$item.hide_text}}
+                       </span>
                </div>
                <div id="collapsed-comments-{{$item.id}}" class="collapsed-comments" style="display: none;">
        {{else}}