';
diff --git a/mod/redir.php b/mod/redir.php
index 4c687e40d..990ebc194 100644
--- a/mod/redir.php
+++ b/mod/redir.php
@@ -30,7 +30,7 @@ function redir_init(App $a) {
$fields = ['id', 'uid', 'nurl', 'url', 'addr', 'name', 'network', 'poll', 'issued-id', 'dfrn-id', 'duplex', 'pending'];
$contact = DBA::selectFirst('contact', $fields, ['id' => $cid, 'uid' => [0, local_user()]]);
if (!DBA::isResult($contact)) {
- notice(L10n::t('Contact not found.'));
+ notice(DI::l10n()->t('Contact not found.'));
DI::baseUrl()->redirect();
}
@@ -120,7 +120,7 @@ function redir_init(App $a) {
$a->redirect($url);
}
- notice(L10n::t('Contact not found.'));
+ notice(DI::l10n()->t('Contact not found.'));
DI::baseUrl()->redirect();
}
@@ -135,7 +135,7 @@ function redir_magic($a, $cid, $url)
if (!DBA::isResult($contact)) {
Logger::info('Contact not found', ['id' => $cid]);
// Shouldn't happen under normal conditions
- notice(L10n::t('Contact not found.'));
+ notice(DI::l10n()->t('Contact not found.'));
if (!empty($url)) {
System::externalRedirect($url);
} else {
diff --git a/mod/regmod.php b/mod/regmod.php
index 49845e873..4cdd03845 100644
--- a/mod/regmod.php
+++ b/mod/regmod.php
@@ -47,7 +47,7 @@ function user_allow($hash)
);
if ($res) {
- info(L10n::t('Account approved.') . EOL);
+ info(DI::l10n()->t('Account approved.') . EOL);
return true;
}
}
@@ -71,19 +71,19 @@ function user_deny($hash)
Register::deleteByHash($register['hash']);
- notice(L10n::t('Registration revoked for %s', $user['username']) . EOL);
+ notice(DI::l10n()->t('Registration revoked for %s', $user['username']) . EOL);
return true;
}
function regmod_content(App $a)
{
if (!local_user()) {
- info(L10n::t('Please login.') . EOL);
+ info(DI::l10n()->t('Please login.') . EOL);
return Login::form(DI::args()->getQueryString(), intval(Config::get('config', 'register_policy')) === \Friendica\Module\Register::CLOSED ? 0 : 1);
}
if (!is_site_admin() || !empty($_SESSION['submanage'])) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return '';
}
diff --git a/mod/removeme.php b/mod/removeme.php
index ecf65c04c..85b0eaa11 100644
--- a/mod/removeme.php
+++ b/mod/removeme.php
@@ -44,9 +44,9 @@ function removeme_post(App $a)
}
notification([
'type' => SYSTEM_EMAIL,
- 'subject' => L10n::t('[Friendica System Notify]') . ' ' . L10n::t('User deleted their account'),
- 'preamble' => L10n::t('On your Friendica node an user deleted their account. Please ensure that their data is removed from the backups.'),
- 'body' => L10n::t('The user id is %d', local_user()),
+ 'subject' => DI::l10n()->t('[Friendica System Notify]') . ' ' . DI::l10n()->t('User deleted their account'),
+ 'preamble' => DI::l10n()->t('On your Friendica node an user deleted their account. Please ensure that their data is removed from the backups.'),
+ 'body' => DI::l10n()->t('The user id is %d', local_user()),
'to_email' => $admin['email'],
'to_name' => $admin['username'],
'uid' => $admin['uid'],
@@ -82,10 +82,10 @@ function removeme_content(App $a)
$o = Renderer::replaceMacros($tpl, [
'$basedir' => DI::baseUrl()->get(),
'$hash' => $hash,
- '$title' => L10n::t('Remove My Account'),
- '$desc' => L10n::t('This will completely remove your account. Once this has been done it is not recoverable.'),
- '$passwd' => L10n::t('Please enter your password for verification:'),
- '$submit' => L10n::t('Remove My Account')
+ '$title' => DI::l10n()->t('Remove My Account'),
+ '$desc' => DI::l10n()->t('This will completely remove your account. Once this has been done it is not recoverable.'),
+ '$passwd' => DI::l10n()->t('Please enter your password for verification:'),
+ '$submit' => DI::l10n()->t('Remove My Account')
]);
return $o;
diff --git a/mod/repair_ostatus.php b/mod/repair_ostatus.php
index a4ba0b72e..8ae9f3b26 100644
--- a/mod/repair_ostatus.php
+++ b/mod/repair_ostatus.php
@@ -13,12 +13,12 @@ use Friendica\Model\Contact;
function repair_ostatus_content(App $a) {
if (! local_user()) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
DI::baseUrl()->redirect('ostatus_repair');
// NOTREACHED
}
- $o = "
".L10n::t("Resubscribing to OStatus contacts")." ";
+ $o = "
".DI::l10n()->t("Resubscribing to OStatus contacts")." ";
$uid = local_user();
@@ -32,7 +32,7 @@ function repair_ostatus_content(App $a) {
intval(Contact::SHARING));
if (!DBA::isResult($r)) {
- return ($o . L10n::t("Error"));
+ return ($o . DI::l10n()->t("Error"));
}
$total = $r[0]["total"];
@@ -47,13 +47,13 @@ function repair_ostatus_content(App $a) {
intval(Contact::SHARING), $counter++);
if (!DBA::isResult($r)) {
- $o .= L10n::t("Done");
+ $o .= DI::l10n()->t("Done");
return $o;
}
$o .= "
".$counter."/".$total.": ".$r[0]["url"]."
";
- $o .= "
".L10n::t("Keep this window open until done.")."
";
+ $o .= "
".DI::l10n()->t("Keep this window open until done.")."
";
Contact::createFromProbe($uid, $r[0]["url"], true);
diff --git a/mod/settings.php b/mod/settings.php
index 8213fda7c..412748aab 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -47,7 +47,7 @@ function get_theme_config_file($theme)
function settings_init(App $a)
{
if (!local_user()) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -55,12 +55,12 @@ function settings_init(App $a)
$tpl = Renderer::getMarkupTemplate('settings/head.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
- '$ispublic' => L10n::t('everybody')
+ '$ispublic' => DI::l10n()->t('everybody')
]);
$tabs = [
[
- 'label' => L10n::t('Account'),
+ 'label' => DI::l10n()->t('Account'),
'url' => 'settings',
'selected' => (($a->argc == 1) && ($a->argv[0] === 'settings')?'active':''),
'accesskey' => 'o',
@@ -68,14 +68,14 @@ function settings_init(App $a)
];
$tabs[] = [
- 'label' => L10n::t('Two-factor authentication'),
+ 'label' => DI::l10n()->t('Two-factor authentication'),
'url' => 'settings/2fa',
'selected' => (($a->argc > 1) && ($a->argv[1] === '2fa') ? 'active' : ''),
'accesskey' => 'o',
];
$tabs[] = [
- 'label' => L10n::t('Profiles'),
+ 'label' => DI::l10n()->t('Profiles'),
'url' => 'profiles',
'selected' => (($a->argc == 1) && ($a->argv[0] === 'profiles')?'active':''),
'accesskey' => 'p',
@@ -83,7 +83,7 @@ function settings_init(App $a)
if (Feature::get()) {
$tabs[] = [
- 'label' => L10n::t('Additional features'),
+ 'label' => DI::l10n()->t('Additional features'),
'url' => 'settings/features',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'features') ? 'active' : ''),
'accesskey' => 't',
@@ -91,49 +91,49 @@ function settings_init(App $a)
}
$tabs[] = [
- 'label' => L10n::t('Display'),
+ 'label' => DI::l10n()->t('Display'),
'url' => 'settings/display',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'display')?'active':''),
'accesskey' => 'i',
];
$tabs[] = [
- 'label' => L10n::t('Social Networks'),
+ 'label' => DI::l10n()->t('Social Networks'),
'url' => 'settings/connectors',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'connectors')?'active':''),
'accesskey' => 'w',
];
$tabs[] = [
- 'label' => L10n::t('Addons'),
+ 'label' => DI::l10n()->t('Addons'),
'url' => 'settings/addon',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'addon')?'active':''),
'accesskey' => 'l',
];
$tabs[] = [
- 'label' => L10n::t('Delegations'),
+ 'label' => DI::l10n()->t('Delegations'),
'url' => 'settings/delegation',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'delegation')?'active':''),
'accesskey' => 'd',
];
$tabs[] = [
- 'label' => L10n::t('Connected apps'),
+ 'label' => DI::l10n()->t('Connected apps'),
'url' => 'settings/oauth',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'oauth')?'active':''),
'accesskey' => 'b',
];
$tabs[] = [
- 'label' => L10n::t('Export personal data'),
+ 'label' => DI::l10n()->t('Export personal data'),
'url' => 'settings/userexport',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'userexport')?'active':''),
'accesskey' => 'e',
];
$tabs[] = [
- 'label' => L10n::t('Remove account'),
+ 'label' => DI::l10n()->t('Remove account'),
'url' => 'removeme',
'selected' => (($a->argc == 1) && ($a->argv[0] === 'removeme')?'active':''),
'accesskey' => 'r',
@@ -142,7 +142,7 @@ function settings_init(App $a)
$tabtpl = Renderer::getMarkupTemplate("generic_links_widget.tpl");
DI::page()['aside'] = Renderer::replaceMacros($tabtpl, [
- '$title' => L10n::t('Settings'),
+ '$title' => DI::l10n()->t('Settings'),
'$class' => 'settings-widget',
'$items' => $tabs,
]);
@@ -160,7 +160,7 @@ function settings_post(App $a)
}
if (count($a->user) && !empty($a->user['uid']) && $a->user['uid'] != local_user()) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -185,9 +185,9 @@ function settings_post(App $a)
$icon = $_POST['icon'] ?? '';
if ($name == "" || $key == "" || $secret == "") {
- notice(L10n::t("Missing some important data!"));
+ notice(DI::l10n()->t("Missing some important data!"));
} else {
- if ($_POST['submit'] == L10n::t("Update")) {
+ if ($_POST['submit'] == DI::l10n()->t("Update")) {
q("UPDATE clients SET
client_id='%s',
pw='%s',
@@ -295,12 +295,12 @@ function settings_post(App $a)
unset($dcrpass);
if (!$mbox) {
$failed = true;
- notice(L10n::t('Failed to connect with email account using the settings provided.') . EOL);
+ notice(DI::l10n()->t('Failed to connect with email account using the settings provided.') . EOL);
}
}
}
if (!$failed) {
- info(L10n::t('Email settings updated.') . EOL);
+ info(DI::l10n()->t('Email settings updated.') . EOL);
}
}
}
@@ -316,7 +316,7 @@ function settings_post(App $a)
DI::pConfig()->set(local_user(), 'feature', substr($k, 8), ((intval($v)) ? 1 : 0));
}
}
- info(L10n::t('Features updated') . EOL);
+ info(DI::l10n()->t('Features updated') . EOL);
return;
}
@@ -377,7 +377,7 @@ function settings_post(App $a)
DBA::update('user', ['theme' => $theme], ['uid' => local_user()]);
}
} else {
- notice(L10n::t('The theme you chose isn\'t available.'));
+ notice(DI::l10n()->t('The theme you chose isn\'t available.'));
}
Hook::callAll('display_settings_post', $_POST);
@@ -393,7 +393,7 @@ function settings_post(App $a)
// was there an error
if ($_FILES['importcontact-filename']['error'] > 0) {
Logger::notice('Contact CSV file upload error');
- info(L10n::t('Contact CSV file upload error'));
+ info(DI::l10n()->t('Contact CSV file upload error'));
} else {
$csvArray = array_map('str_getcsv', file($_FILES['importcontact-filename']['tmp_name']));
// import contacts
@@ -407,7 +407,7 @@ function settings_post(App $a)
$arr = Contact::createFromProbe($_SESSION['uid'], $csvRow[0], '', false);
}
}
- info(L10n::t('Importing Contacts done'));
+ info(DI::l10n()->t('Importing Contacts done'));
// delete temp file
unlink($filename);
}
@@ -416,7 +416,7 @@ function settings_post(App $a)
if (!empty($_POST['resend_relocate'])) {
Worker::add(PRIORITY_HIGH, 'Notifier', Delivery::RELOCATION, local_user());
- info(L10n::t("Relocate message has been send to your contacts"));
+ info(DI::l10n()->t("Relocate message has been send to your contacts"));
DI::baseUrl()->redirect('settings');
}
@@ -428,7 +428,7 @@ function settings_post(App $a)
try {
if ($newpass != $confirm) {
- throw new Exception(L10n::t('Passwords do not match.'));
+ throw new Exception(DI::l10n()->t('Passwords do not match.'));
}
// check if the old password was supplied correctly before changing it to the new value
@@ -436,13 +436,13 @@ function settings_post(App $a)
$result = User::updatePassword(local_user(), $newpass);
if (!DBA::isResult($result)) {
- throw new Exception(L10n::t('Password update failed. Please try again.'));
+ throw new Exception(DI::l10n()->t('Password update failed. Please try again.'));
}
- info(L10n::t('Password changed.'));
+ info(DI::l10n()->t('Password changed.'));
} catch (Exception $e) {
notice($e->getMessage());
- notice(L10n::t('Password unchanged.'));
+ notice(DI::l10n()->t('Password unchanged.'));
}
}
@@ -524,28 +524,28 @@ function settings_post(App $a)
if ($username != $a->user['username']) {
if (strlen($username) > 40) {
- $err .= L10n::t(' Please use a shorter name.');
+ $err .= DI::l10n()->t(' Please use a shorter name.');
}
if (strlen($username) < 3) {
- $err .= L10n::t(' Name too short.');
+ $err .= DI::l10n()->t(' Name too short.');
}
}
if ($email != $a->user['email']) {
// check for the correct password
if (!User::authenticate(intval(local_user()), $_POST['mpassword'])) {
- $err .= L10n::t('Wrong Password') . EOL;
+ $err .= DI::l10n()->t('Wrong Password') . EOL;
$email = $a->user['email'];
}
// check the email is valid
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
- $err .= L10n::t('Invalid email.');
+ $err .= DI::l10n()->t('Invalid email.');
}
// ensure new email is not the admin mail
if (Config::get('config', 'admin_email')) {
$adminlist = explode(",", str_replace(" ", "", strtolower(Config::get('config', 'admin_email'))));
if (in_array(strtolower($email), $adminlist)) {
- $err .= L10n::t('Cannot change to that email.');
+ $err .= DI::l10n()->t('Cannot change to that email.');
$email = $a->user['email'];
}
}
@@ -582,10 +582,10 @@ function settings_post(App $a)
$hidewall = 1;
if (!$str_contact_allow && !$str_group_allow && !$str_contact_deny && !$str_group_deny) {
if ($def_gid) {
- info(L10n::t('Private forum has no privacy permissions. Using default privacy group.'). EOL);
+ info(DI::l10n()->t('Private forum has no privacy permissions. Using default privacy group.'). EOL);
$str_group_allow = '<' . $def_gid . '>';
} else {
- notice(L10n::t('Private forum has no privacy permissions and no default privacy group.') . EOL);
+ notice(DI::l10n()->t('Private forum has no privacy permissions and no default privacy group.') . EOL);
}
}
}
@@ -602,7 +602,7 @@ function settings_post(App $a)
}
if (DBA::update('user', $fields, ['uid' => local_user()])) {
- info(L10n::t('Settings updated.') . EOL);
+ info(DI::l10n()->t('Settings updated.') . EOL);
}
// clear session language
@@ -647,12 +647,12 @@ function settings_content(App $a)
Nav::setSelected('settings');
if (!local_user()) {
- //notice(L10n::t('Permission denied.') . EOL);
+ //notice(DI::l10n()->t('Permission denied.') . EOL);
return Login::form();
}
if (!empty($_SESSION['submanage'])) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -661,14 +661,14 @@ function settings_content(App $a)
$tpl = Renderer::getMarkupTemplate('settings/oauth_edit.tpl');
$o .= Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseModule::getFormSecurityToken("settings_oauth"),
- '$title' => L10n::t('Add application'),
- '$submit' => L10n::t('Save Settings'),
- '$cancel' => L10n::t('Cancel'),
- '$name' => ['name', L10n::t('Name'), '', ''],
- '$key' => ['key', L10n::t('Consumer Key'), '', ''],
- '$secret' => ['secret', L10n::t('Consumer Secret'), '', ''],
- '$redirect' => ['redirect', L10n::t('Redirect'), '', ''],
- '$icon' => ['icon', L10n::t('Icon url'), '', ''],
+ '$title' => DI::l10n()->t('Add application'),
+ '$submit' => DI::l10n()->t('Save Settings'),
+ '$cancel' => DI::l10n()->t('Cancel'),
+ '$name' => ['name', DI::l10n()->t('Name'), '', ''],
+ '$key' => ['key', DI::l10n()->t('Consumer Key'), '', ''],
+ '$secret' => ['secret', DI::l10n()->t('Consumer Secret'), '', ''],
+ '$redirect' => ['redirect', DI::l10n()->t('Redirect'), '', ''],
+ '$icon' => ['icon', DI::l10n()->t('Icon url'), '', ''],
]);
return $o;
}
@@ -679,7 +679,7 @@ function settings_content(App $a)
local_user());
if (!DBA::isResult($r)) {
- notice(L10n::t("You can't edit this application."));
+ notice(DI::l10n()->t("You can't edit this application."));
return;
}
$app = $r[0];
@@ -687,14 +687,14 @@ function settings_content(App $a)
$tpl = Renderer::getMarkupTemplate('settings/oauth_edit.tpl');
$o .= Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseModule::getFormSecurityToken("settings_oauth"),
- '$title' => L10n::t('Add application'),
- '$submit' => L10n::t('Update'),
- '$cancel' => L10n::t('Cancel'),
- '$name' => ['name', L10n::t('Name'), $app['name'] , ''],
- '$key' => ['key', L10n::t('Consumer Key'), $app['client_id'], ''],
- '$secret' => ['secret', L10n::t('Consumer Secret'), $app['pw'], ''],
- '$redirect' => ['redirect', L10n::t('Redirect'), $app['redirect_uri'], ''],
- '$icon' => ['icon', L10n::t('Icon url'), $app['icon'], ''],
+ '$title' => DI::l10n()->t('Add application'),
+ '$submit' => DI::l10n()->t('Update'),
+ '$cancel' => DI::l10n()->t('Cancel'),
+ '$name' => ['name', DI::l10n()->t('Name'), $app['name'] , ''],
+ '$key' => ['key', DI::l10n()->t('Consumer Key'), $app['client_id'], ''],
+ '$secret' => ['secret', DI::l10n()->t('Consumer Secret'), $app['pw'], ''],
+ '$redirect' => ['redirect', DI::l10n()->t('Redirect'), $app['redirect_uri'], ''],
+ '$icon' => ['icon', DI::l10n()->t('Icon url'), $app['icon'], ''],
]);
return $o;
}
@@ -720,13 +720,13 @@ function settings_content(App $a)
$o .= Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseModule::getFormSecurityToken("settings_oauth"),
'$baseurl' => DI::baseUrl()->get(true),
- '$title' => L10n::t('Connected Apps'),
- '$add' => L10n::t('Add application'),
- '$edit' => L10n::t('Edit'),
- '$delete' => L10n::t('Delete'),
- '$consumerkey' => L10n::t('Client key starts with'),
- '$noname' => L10n::t('No name'),
- '$remove' => L10n::t('Remove authorization'),
+ '$title' => DI::l10n()->t('Connected Apps'),
+ '$add' => DI::l10n()->t('Add application'),
+ '$edit' => DI::l10n()->t('Edit'),
+ '$delete' => DI::l10n()->t('Delete'),
+ '$consumerkey' => DI::l10n()->t('Client key starts with'),
+ '$noname' => DI::l10n()->t('No name'),
+ '$remove' => DI::l10n()->t('Remove authorization'),
'$apps' => $r,
]);
return $o;
@@ -737,7 +737,7 @@ function settings_content(App $a)
$r = q("SELECT * FROM `hook` WHERE `hook` = 'addon_settings' ");
if (!DBA::isResult($r)) {
- $settings_addons = L10n::t('No Addon settings configured');
+ $settings_addons = DI::l10n()->t('No Addon settings configured');
}
Hook::callAll('addon_settings', $settings_addons);
@@ -746,7 +746,7 @@ function settings_content(App $a)
$tpl = Renderer::getMarkupTemplate('settings/addons.tpl');
$o .= Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseModule::getFormSecurityToken("settings_addon"),
- '$title' => L10n::t('Addon Settings'),
+ '$title' => DI::l10n()->t('Addon Settings'),
'$settings_addons' => $settings_addons
]);
return $o;
@@ -760,16 +760,16 @@ function settings_content(App $a)
$arr[$fname] = [];
$arr[$fname][0] = $fdata[0];
foreach (array_slice($fdata,1) as $f) {
- $arr[$fname][1][] = ['feature_' .$f[0], $f[1],((intval(Feature::isEnabled(local_user(), $f[0]))) ? "1" : ''), $f[2],[L10n::t('Off'), L10n::t('On')]];
+ $arr[$fname][1][] = ['feature_' .$f[0], $f[1],((intval(Feature::isEnabled(local_user(), $f[0]))) ? "1" : ''), $f[2],[DI::l10n()->t('Off'), DI::l10n()->t('On')]];
}
}
$tpl = Renderer::getMarkupTemplate('settings/features.tpl');
$o .= Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseModule::getFormSecurityToken("settings_features"),
- '$title' => L10n::t('Additional Features'),
+ '$title' => DI::l10n()->t('Additional Features'),
'$features' => $arr,
- '$submit' => L10n::t('Save Settings'),
+ '$submit' => DI::l10n()->t('Save Settings'),
]);
return $o;
}
@@ -792,8 +792,8 @@ function settings_content(App $a)
Hook::callAll('connector_settings', $settings_connectors);
if (is_site_admin()) {
- $diasp_enabled = L10n::t('Built-in support for %s connectivity is %s', L10n::t('Diaspora'), ((Config::get('system', 'diaspora_enabled')) ? L10n::t('enabled') : L10n::t('disabled')));
- $ostat_enabled = L10n::t('Built-in support for %s connectivity is %s', L10n::t("GNU Social \x28OStatus\x29"), ((Config::get('system', 'ostatus_disabled')) ? L10n::t('disabled') : L10n::t('enabled')));
+ $diasp_enabled = DI::l10n()->t('Built-in support for %s connectivity is %s', DI::l10n()->t('Diaspora'), ((Config::get('system', 'diaspora_enabled')) ? DI::l10n()->t('enabled') : DI::l10n()->t('disabled')));
+ $ostat_enabled = DI::l10n()->t('Built-in support for %s connectivity is %s', DI::l10n()->t("GNU Social \x28OStatus\x29"), ((Config::get('system', 'ostatus_disabled')) ? DI::l10n()->t('disabled') : DI::l10n()->t('enabled')));
} else {
$diasp_enabled = "";
$ostat_enabled = "";
@@ -824,50 +824,50 @@ function settings_content(App $a)
$tpl = Renderer::getMarkupTemplate('settings/connectors.tpl');
- $mail_disabled_message = ($mail_disabled ? L10n::t('Email access is disabled on this site.') : '');
+ $mail_disabled_message = ($mail_disabled ? DI::l10n()->t('Email access is disabled on this site.') : '');
$ssl_options = ['TLS' => 'TLS', 'SSL' => 'SSL'];
if (Config::get('system', 'insecure_imap')) {
- $ssl_options['notls'] = L10n::t('None');
+ $ssl_options['notls'] = DI::l10n()->t('None');
}
$o .= Renderer::replaceMacros($tpl, [
'$form_security_token' => BaseModule::getFormSecurityToken("settings_connectors"),
- '$title' => L10n::t('Social Networks'),
+ '$title' => DI::l10n()->t('Social Networks'),
'$diasp_enabled' => $diasp_enabled,
'$ostat_enabled' => $ostat_enabled,
- '$general_settings' => L10n::t('General Social Media Settings'),
- '$accept_only_sharer' => ['accept_only_sharer', L10n::t('Accept only top level posts by contacts you follow'), $accept_only_sharer, L10n::t('The system does an auto completion of threads when a comment arrives. This has got the side effect that you can receive posts that had been started by a non-follower but had been commented by someone you follow. This setting deactivates this behaviour. When activated, you strictly only will receive posts from people you really do follow.')],
- '$disable_cw' => ['disable_cw', L10n::t('Disable Content Warning'), $disable_cw, L10n::t('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.')],
- '$no_intelligent_shortening' => ['no_intelligent_shortening', L10n::t('Disable intelligent shortening'), $no_intelligent_shortening, L10n::t('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.')],
- '$attach_link_title' => ['attach_link_title', L10n::t('Attach the link title'), $attach_link_title, L10n::t('When activated, the title of the attached link will be added as a title on posts to Diaspora. This is mostly helpful with "remote-self" contacts that share feed content.')],
- '$ostatus_autofriend' => ['snautofollow', L10n::t("Automatically follow any GNU Social \x28OStatus\x29 followers/mentioners"), $ostatus_autofriend, L10n::t('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.')],
- '$default_group' => Group::displayGroupSelection(local_user(), $default_group, L10n::t("Default group for OStatus contacts")),
- '$legacy_contact' => ['legacy_contact', L10n::t('Your legacy GNU Social account'), $legacy_contact, L10n::t("If you enter your old GNU Social/Statusnet account name here \x28in the format user@domain.tld\x29, your contacts will be added automatically. The field will be emptied when done.")],
+ '$general_settings' => DI::l10n()->t('General Social Media Settings'),
+ '$accept_only_sharer' => ['accept_only_sharer', DI::l10n()->t('Accept only top level posts by contacts you follow'), $accept_only_sharer, DI::l10n()->t('The system does an auto completion of threads when a comment arrives. This has got the side effect that you can receive posts that had been started by a non-follower but had been commented by someone you follow. This setting deactivates this behaviour. When activated, you strictly only will receive posts from people you really do follow.')],
+ '$disable_cw' => ['disable_cw', DI::l10n()->t('Disable Content Warning'), $disable_cw, DI::l10n()->t('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.')],
+ '$no_intelligent_shortening' => ['no_intelligent_shortening', DI::l10n()->t('Disable intelligent shortening'), $no_intelligent_shortening, DI::l10n()->t('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.')],
+ '$attach_link_title' => ['attach_link_title', DI::l10n()->t('Attach the link title'), $attach_link_title, DI::l10n()->t('When activated, the title of the attached link will be added as a title on posts to Diaspora. This is mostly helpful with "remote-self" contacts that share feed content.')],
+ '$ostatus_autofriend' => ['snautofollow', DI::l10n()->t("Automatically follow any GNU Social \x28OStatus\x29 followers/mentioners"), $ostatus_autofriend, DI::l10n()->t('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.')],
+ '$default_group' => Group::displayGroupSelection(local_user(), $default_group, DI::l10n()->t("Default group for OStatus contacts")),
+ '$legacy_contact' => ['legacy_contact', DI::l10n()->t('Your legacy GNU Social account'), $legacy_contact, DI::l10n()->t("If you enter your old GNU Social/Statusnet account name here \x28in the format user@domain.tld\x29, your contacts will be added automatically. The field will be emptied when done.")],
'$repair_ostatus_url' => DI::baseUrl() . '/repair_ostatus',
- '$repair_ostatus_text' => L10n::t('Repair OStatus subscriptions'),
+ '$repair_ostatus_text' => DI::l10n()->t('Repair OStatus subscriptions'),
'$settings_connectors' => $settings_connectors,
- '$h_imap' => L10n::t('Email/Mailbox Setup'),
- '$imap_desc' => L10n::t("If you wish to communicate with email contacts using this service \x28optional\x29, please specify how to connect to your mailbox."),
- '$imap_lastcheck' => ['imap_lastcheck', L10n::t('Last successful email check:'), $mail_chk, ''],
+ '$h_imap' => DI::l10n()->t('Email/Mailbox Setup'),
+ '$imap_desc' => DI::l10n()->t("If you wish to communicate with email contacts using this service \x28optional\x29, please specify how to connect to your mailbox."),
+ '$imap_lastcheck' => ['imap_lastcheck', DI::l10n()->t('Last successful email check:'), $mail_chk, ''],
'$mail_disabled' => $mail_disabled_message,
- '$mail_server' => ['mail_server', L10n::t('IMAP server name:'), $mail_server, ''],
- '$mail_port' => ['mail_port', L10n::t('IMAP port:'), $mail_port, ''],
- '$mail_ssl' => ['mail_ssl', L10n::t('Security:'), strtoupper($mail_ssl), '', $ssl_options],
- '$mail_user' => ['mail_user', L10n::t('Email login name:'), $mail_user, ''],
- '$mail_pass' => ['mail_pass', L10n::t('Email password:'), '', ''],
- '$mail_replyto' => ['mail_replyto', L10n::t('Reply-to address:'), $mail_replyto, 'Optional'],
- '$mail_pubmail' => ['mail_pubmail', L10n::t('Send public posts to all email contacts:'), $mail_pubmail, ''],
- '$mail_action' => ['mail_action', L10n::t('Action after import:'), $mail_action, '', [0 => L10n::t('None'), 1 => L10n::t('Delete'), 2 => L10n::t('Mark as seen'), 3 => L10n::t('Move to folder')]],
- '$mail_movetofolder' => ['mail_movetofolder', L10n::t('Move to folder:'), $mail_movetofolder, ''],
- '$submit' => L10n::t('Save Settings'),
+ '$mail_server' => ['mail_server', DI::l10n()->t('IMAP server name:'), $mail_server, ''],
+ '$mail_port' => ['mail_port', DI::l10n()->t('IMAP port:'), $mail_port, ''],
+ '$mail_ssl' => ['mail_ssl', DI::l10n()->t('Security:'), strtoupper($mail_ssl), '', $ssl_options],
+ '$mail_user' => ['mail_user', DI::l10n()->t('Email login name:'), $mail_user, ''],
+ '$mail_pass' => ['mail_pass', DI::l10n()->t('Email password:'), '', ''],
+ '$mail_replyto' => ['mail_replyto', DI::l10n()->t('Reply-to address:'), $mail_replyto, 'Optional'],
+ '$mail_pubmail' => ['mail_pubmail', DI::l10n()->t('Send public posts to all email contacts:'), $mail_pubmail, ''],
+ '$mail_action' => ['mail_action', DI::l10n()->t('Action after import:'), $mail_action, '', [0 => DI::l10n()->t('None'), 1 => DI::l10n()->t('Delete'), 2 => DI::l10n()->t('Mark as seen'), 3 => DI::l10n()->t('Move to folder')]],
+ '$mail_movetofolder' => ['mail_movetofolder', DI::l10n()->t('Move to folder:'), $mail_movetofolder, ''],
+ '$submit' => DI::l10n()->t('Save Settings'),
]);
Hook::callAll('display_settings', $o);
@@ -890,7 +890,7 @@ function settings_content(App $a)
$allowed_themes = Theme::getAllowedList();
$themes = [];
- $mobile_themes = ["---" => L10n::t('No special theme for mobile devices')];
+ $mobile_themes = ["---" => DI::l10n()->t('No special theme for mobile devices')];
foreach ($allowed_themes as $theme) {
$is_experimental = file_exists('view/theme/' . $theme . '/experimental');
$is_unsupported = file_exists('view/theme/' . $theme . '/unsupported');
@@ -898,9 +898,9 @@ function settings_content(App $a)
if (!$is_experimental || ($is_experimental && (Config::get('experimentals', 'exp_themes')==1 || is_null(Config::get('experimentals', 'exp_themes'))))) {
$theme_name = ucfirst($theme);
if ($is_unsupported) {
- $theme_name = L10n::t('%s - (Unsupported)', $theme_name);
+ $theme_name = DI::l10n()->t('%s - (Unsupported)', $theme_name);
} elseif ($is_experimental) {
- $theme_name = L10n::t('%s - (Experimental)', $theme_name);
+ $theme_name = DI::l10n()->t('%s - (Experimental)', $theme_name);
}
if ($is_mobile) {
@@ -928,7 +928,7 @@ function settings_content(App $a)
$nosmile = DI::pConfig()->get(local_user(), 'system', 'no_smilies', 0);
$first_day_of_week = DI::pConfig()->get(local_user(), 'system', 'first_day_of_week', 0);
- $weekdays = [0 => L10n::t("Sunday"), 1 => L10n::t("Monday")];
+ $weekdays = [0 => DI::l10n()->t("Sunday"), 1 => DI::l10n()->t("Monday")];
$noinfo = DI::pConfig()->get(local_user(), 'system', 'ignore_info', 0);
$infinite_scroll = DI::pConfig()->get(local_user(), 'system', 'infinite_scroll', 0);
@@ -944,31 +944,31 @@ function settings_content(App $a)
$tpl = Renderer::getMarkupTemplate('settings/display.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$ptitle' => L10n::t('Display Settings'),
+ '$ptitle' => DI::l10n()->t('Display Settings'),
'$form_security_token' => BaseModule::getFormSecurityToken("settings_display"),
- '$submit' => L10n::t('Save Settings'),
+ '$submit' => DI::l10n()->t('Save Settings'),
'$baseurl' => DI::baseUrl()->get(true),
'$uid' => local_user(),
- '$theme' => ['theme', L10n::t('Display Theme:'), $theme_selected, '', $themes, true],
- '$mobile_theme' => ['mobile_theme', L10n::t('Mobile Theme:'), $mobile_theme_selected, '', $mobile_themes, false],
- '$nowarn_insecure' => ['nowarn_insecure', L10n::t('Suppress warning of insecure networks'), $nowarn_insecure, L10n::t("Should the system suppress the warning that the current group contains members of networks that can't receive non public postings.")],
- '$ajaxint' => ['browser_update', L10n::t("Update browser every xx seconds"), $browser_update, L10n::t('Minimum of 10 seconds. Enter -1 to disable it.')],
- '$itemspage_network' => ['itemspage_network', L10n::t("Number of items to display per page:"), $itemspage_network, L10n::t('Maximum of 100 items')],
- '$itemspage_mobile_network' => ['itemspage_mobile_network', L10n::t("Number of items to display per page when viewed from mobile device:"), $itemspage_mobile_network, L10n::t('Maximum of 100 items')],
- '$nosmile' => ['nosmile', L10n::t("Don't show emoticons"), $nosmile, ''],
- '$calendar_title' => L10n::t('Calendar'),
- '$first_day_of_week' => ['first_day_of_week', L10n::t('Beginning of week:'), $first_day_of_week, '', $weekdays, false],
- '$noinfo' => ['noinfo', L10n::t("Don't show notices"), $noinfo, ''],
- '$infinite_scroll' => ['infinite_scroll', L10n::t("Infinite scroll"), $infinite_scroll, ''],
- '$no_auto_update' => ['no_auto_update', L10n::t("Automatic updates only at the top of the network page"), $no_auto_update, L10n::t('When disabled, the network page is updated all the time, which could be confusing while reading.')],
- '$bandwidth_saver' => ['bandwidth_saver', L10n::t('Bandwidth Saver Mode'), $bandwidth_saver, L10n::t('When enabled, embedded content is not displayed on automatic updates, they only show on page reload.')],
- '$no_smart_threading' => ['no_smart_threading', L10n::t('Disable Smart Threading'), $no_smart_threading, L10n::t('Disable the automatic suppression of extraneous thread indentation.')],
+ '$theme' => ['theme', DI::l10n()->t('Display Theme:'), $theme_selected, '', $themes, true],
+ '$mobile_theme' => ['mobile_theme', DI::l10n()->t('Mobile Theme:'), $mobile_theme_selected, '', $mobile_themes, false],
+ '$nowarn_insecure' => ['nowarn_insecure', DI::l10n()->t('Suppress warning of insecure networks'), $nowarn_insecure, DI::l10n()->t("Should the system suppress the warning that the current group contains members of networks that can't receive non public postings.")],
+ '$ajaxint' => ['browser_update', DI::l10n()->t("Update browser every xx seconds"), $browser_update, DI::l10n()->t('Minimum of 10 seconds. Enter -1 to disable it.')],
+ '$itemspage_network' => ['itemspage_network', DI::l10n()->t("Number of items to display per page:"), $itemspage_network, DI::l10n()->t('Maximum of 100 items')],
+ '$itemspage_mobile_network' => ['itemspage_mobile_network', DI::l10n()->t("Number of items to display per page when viewed from mobile device:"), $itemspage_mobile_network, DI::l10n()->t('Maximum of 100 items')],
+ '$nosmile' => ['nosmile', DI::l10n()->t("Don't show emoticons"), $nosmile, ''],
+ '$calendar_title' => DI::l10n()->t('Calendar'),
+ '$first_day_of_week' => ['first_day_of_week', DI::l10n()->t('Beginning of week:'), $first_day_of_week, '', $weekdays, false],
+ '$noinfo' => ['noinfo', DI::l10n()->t("Don't show notices"), $noinfo, ''],
+ '$infinite_scroll' => ['infinite_scroll', DI::l10n()->t("Infinite scroll"), $infinite_scroll, ''],
+ '$no_auto_update' => ['no_auto_update', DI::l10n()->t("Automatic updates only at the top of the network page"), $no_auto_update, DI::l10n()->t('When disabled, the network page is updated all the time, which could be confusing while reading.')],
+ '$bandwidth_saver' => ['bandwidth_saver', DI::l10n()->t('Bandwidth Saver Mode'), $bandwidth_saver, DI::l10n()->t('When enabled, embedded content is not displayed on automatic updates, they only show on page reload.')],
+ '$no_smart_threading' => ['no_smart_threading', DI::l10n()->t('Disable Smart Threading'), $no_smart_threading, DI::l10n()->t('Disable the automatic suppression of extraneous thread indentation.')],
- '$d_tset' => L10n::t('General Theme Settings'),
- '$d_ctset' => L10n::t('Custom Theme Settings'),
- '$d_cset' => L10n::t('Content Settings'),
- 'stitle' => L10n::t('Theme settings'),
+ '$d_tset' => DI::l10n()->t('General Theme Settings'),
+ '$d_ctset' => DI::l10n()->t('Custom Theme Settings'),
+ '$d_cset' => DI::l10n()->t('Content Settings'),
+ 'stitle' => DI::l10n()->t('Theme settings'),
'$theme_config' => $theme_config,
]);
@@ -982,7 +982,7 @@ function settings_content(App $a)
$profile = DBA::selectFirst('profile', [], ['is-default' => true, 'uid' => local_user()]);
if (!DBA::isResult($profile)) {
- notice(L10n::t('Unable to find your profile. Please contact your admin.') . EOL);
+ notice(DI::l10n()->t('Unable to find your profile. Please contact your admin.') . EOL);
return;
}
@@ -1021,49 +1021,49 @@ function settings_content(App $a)
$pageset_tpl = Renderer::getMarkupTemplate('settings/pagetypes.tpl');
$pagetype = Renderer::replaceMacros($pageset_tpl, [
- '$account_types' => L10n::t("Account Types"),
- '$user' => L10n::t("Personal Page Subtypes"),
- '$community' => L10n::t("Community Forum Subtypes"),
+ '$account_types' => DI::l10n()->t("Account Types"),
+ '$user' => DI::l10n()->t("Personal Page Subtypes"),
+ '$community' => DI::l10n()->t("Community Forum Subtypes"),
'$account_type' => $a->user['account-type'],
'$type_person' => User::ACCOUNT_TYPE_PERSON,
'$type_organisation' => User::ACCOUNT_TYPE_ORGANISATION,
'$type_news' => User::ACCOUNT_TYPE_NEWS,
'$type_community' => User::ACCOUNT_TYPE_COMMUNITY,
- '$account_person' => ['account-type', L10n::t('Personal Page'), User::ACCOUNT_TYPE_PERSON,
- L10n::t('Account for a personal profile.'),
+ '$account_person' => ['account-type', DI::l10n()->t('Personal Page'), User::ACCOUNT_TYPE_PERSON,
+ DI::l10n()->t('Account for a personal profile.'),
($a->user['account-type'] == User::ACCOUNT_TYPE_PERSON)],
- '$account_organisation' => ['account-type', L10n::t('Organisation Page'), User::ACCOUNT_TYPE_ORGANISATION,
- L10n::t('Account for an organisation that automatically approves contact requests as "Followers".'),
+ '$account_organisation' => ['account-type', DI::l10n()->t('Organisation Page'), User::ACCOUNT_TYPE_ORGANISATION,
+ DI::l10n()->t('Account for an organisation that automatically approves contact requests as "Followers".'),
($a->user['account-type'] == User::ACCOUNT_TYPE_ORGANISATION)],
- '$account_news' => ['account-type', L10n::t('News Page'), User::ACCOUNT_TYPE_NEWS,
- L10n::t('Account for a news reflector that automatically approves contact requests as "Followers".'),
+ '$account_news' => ['account-type', DI::l10n()->t('News Page'), User::ACCOUNT_TYPE_NEWS,
+ DI::l10n()->t('Account for a news reflector that automatically approves contact requests as "Followers".'),
($a->user['account-type'] == User::ACCOUNT_TYPE_NEWS)],
- '$account_community' => ['account-type', L10n::t('Community Forum'), User::ACCOUNT_TYPE_COMMUNITY,
- L10n::t('Account for community discussions.'),
+ '$account_community' => ['account-type', DI::l10n()->t('Community Forum'), User::ACCOUNT_TYPE_COMMUNITY,
+ DI::l10n()->t('Account for community discussions.'),
($a->user['account-type'] == User::ACCOUNT_TYPE_COMMUNITY)],
- '$page_normal' => ['page-flags', L10n::t('Normal Account Page'), User::PAGE_FLAGS_NORMAL,
- L10n::t('Account for a regular personal profile that requires manual approval of "Friends" and "Followers".'),
+ '$page_normal' => ['page-flags', DI::l10n()->t('Normal Account Page'), User::PAGE_FLAGS_NORMAL,
+ DI::l10n()->t('Account for a regular personal profile that requires manual approval of "Friends" and "Followers".'),
($a->user['page-flags'] == User::PAGE_FLAGS_NORMAL)],
- '$page_soapbox' => ['page-flags', L10n::t('Soapbox Page'), User::PAGE_FLAGS_SOAPBOX,
- L10n::t('Account for a public profile that automatically approves contact requests as "Followers".'),
+ '$page_soapbox' => ['page-flags', DI::l10n()->t('Soapbox Page'), User::PAGE_FLAGS_SOAPBOX,
+ DI::l10n()->t('Account for a public profile that automatically approves contact requests as "Followers".'),
($a->user['page-flags'] == User::PAGE_FLAGS_SOAPBOX)],
- '$page_community' => ['page-flags', L10n::t('Public Forum'), User::PAGE_FLAGS_COMMUNITY,
- L10n::t('Automatically approves all contact requests.'),
+ '$page_community' => ['page-flags', DI::l10n()->t('Public Forum'), User::PAGE_FLAGS_COMMUNITY,
+ DI::l10n()->t('Automatically approves all contact requests.'),
($a->user['page-flags'] == User::PAGE_FLAGS_COMMUNITY)],
- '$page_freelove' => ['page-flags', L10n::t('Automatic Friend Page'), User::PAGE_FLAGS_FREELOVE,
- L10n::t('Account for a popular profile that automatically approves contact requests as "Friends".'),
+ '$page_freelove' => ['page-flags', DI::l10n()->t('Automatic Friend Page'), User::PAGE_FLAGS_FREELOVE,
+ DI::l10n()->t('Account for a popular profile that automatically approves contact requests as "Friends".'),
($a->user['page-flags'] == User::PAGE_FLAGS_FREELOVE)],
- '$page_prvgroup' => ['page-flags', L10n::t('Private Forum [Experimental]'), User::PAGE_FLAGS_PRVGROUP,
- L10n::t('Requires manual approval of contact requests.'),
+ '$page_prvgroup' => ['page-flags', DI::l10n()->t('Private Forum [Experimental]'), User::PAGE_FLAGS_PRVGROUP,
+ DI::l10n()->t('Requires manual approval of contact requests.'),
($a->user['page-flags'] == User::PAGE_FLAGS_PRVGROUP)],
@@ -1074,7 +1074,7 @@ function settings_content(App $a)
if ($noid) {
$openid_field = false;
} else {
- $openid_field = ['openid_url', L10n::t('OpenID:'), $openid, L10n::t("\x28Optional\x29 Allow this OpenID to login to this account."), "", "readonly", "url"];
+ $openid_field = ['openid_url', DI::l10n()->t('OpenID:'), $openid, DI::l10n()->t("\x28Optional\x29 Allow this OpenID to login to this account."), "", "readonly", "url"];
}
$opt_tpl = Renderer::getMarkupTemplate("field_yesno.tpl");
@@ -1082,64 +1082,64 @@ function settings_content(App $a)
$profile_in_dir = '
';
} else {
$profile_in_dir = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['profile_in_directory', L10n::t('Publish your default profile in your local site directory?'), $profile['publish'], L10n::t('Your profile will be published in this node\'s
local directory . Your profile details may be publicly visible depending on the system settings.', DI::baseUrl().'/directory'), [L10n::t('No'), L10n::t('Yes')]]
+ '$field' => ['profile_in_directory', DI::l10n()->t('Publish your default profile in your local site directory?'), $profile['publish'], DI::l10n()->t('Your profile will be published in this node\'s
local directory . Your profile details may be publicly visible depending on the system settings.', DI::baseUrl().'/directory'), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]]
]);
}
if (strlen(Config::get('system', 'directory'))) {
$profile_in_net_dir = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['profile_in_netdirectory', L10n::t('Publish your default profile in the global social directory?'), $profile['net-publish'], L10n::t('Your profile will be published in the global friendica directories (e.g.
%s ). Your profile will be visible in public.', Config::get('system', 'directory'), Config::get('system', 'directory')) . " " . L10n::t("This setting also determines whether Friendica will inform search engines that your profile should be indexed or not. Third-party search engines may or may not respect this setting."), [L10n::t('No'), L10n::t('Yes')]]
+ '$field' => ['profile_in_netdirectory', DI::l10n()->t('Publish your default profile in the global social directory?'), $profile['net-publish'], DI::l10n()->t('Your profile will be published in the global friendica directories (e.g.
%s ). Your profile will be visible in public.', Config::get('system', 'directory'), Config::get('system', 'directory')) . " " . DI::l10n()->t("This setting also determines whether Friendica will inform search engines that your profile should be indexed or not. Third-party search engines may or may not respect this setting."), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]]
]);
} else {
$profile_in_net_dir = '';
}
$hide_friends = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['hide-friends', L10n::t('Hide your contact/friend list from viewers of your default profile?'), $profile['hide-friends'], L10n::t('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'), [L10n::t('No'), L10n::t('Yes')]],
+ '$field' => ['hide-friends', DI::l10n()->t('Hide your contact/friend list from viewers of your default profile?'), $profile['hide-friends'], DI::l10n()->t('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'), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
]);
$hide_wall = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['hidewall', L10n::t('Hide your profile details from anonymous viewers?'), $a->user['hidewall'], L10n::t('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.'), [L10n::t('No'), L10n::t('Yes')]],
+ '$field' => ['hidewall', DI::l10n()->t('Hide your profile details from anonymous viewers?'), $a->user['hidewall'], DI::l10n()->t('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.'), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
]);
$blockwall = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['blockwall', L10n::t('Allow friends to post to your profile page?'), (intval($a->user['blockwall']) ? '0' : '1'), L10n::t('Your contacts may write posts on your profile wall. These posts will be distributed to your contacts'), [L10n::t('No'), L10n::t('Yes')]],
+ '$field' => ['blockwall', DI::l10n()->t('Allow friends to post to your profile page?'), (intval($a->user['blockwall']) ? '0' : '1'), DI::l10n()->t('Your contacts may write posts on your profile wall. These posts will be distributed to your contacts'), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
]);
$blocktags = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['blocktags', L10n::t('Allow friends to tag your posts?'), (intval($a->user['blocktags']) ? '0' : '1'), L10n::t('Your contacts can add additional tags to your posts.'), [L10n::t('No'), L10n::t('Yes')]],
+ '$field' => ['blocktags', DI::l10n()->t('Allow friends to tag your posts?'), (intval($a->user['blocktags']) ? '0' : '1'), DI::l10n()->t('Your contacts can add additional tags to your posts.'), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
]);
$suggestme = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['suggestme', L10n::t('Allow us to suggest you as a potential friend to new members?'), $suggestme, L10n::t('If you like, Friendica may suggest new members to add you as a contact.'), [L10n::t('No'), L10n::t('Yes')]],
+ '$field' => ['suggestme', DI::l10n()->t('Allow us to suggest you as a potential friend to new members?'), $suggestme, DI::l10n()->t('If you like, Friendica may suggest new members to add you as a contact.'), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
]);
$unkmail = Renderer::replaceMacros($opt_tpl, [
- '$field' => ['unkmail', L10n::t('Permit unknown people to send you private mail?'), $unkmail, L10n::t('Friendica network users may send you private messages even if they are not in your contact list.'), [L10n::t('No'), L10n::t('Yes')]],
+ '$field' => ['unkmail', DI::l10n()->t('Permit unknown people to send you private mail?'), $unkmail, DI::l10n()->t('Friendica network users may send you private messages even if they are not in your contact list.'), [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
]);
if (!$profile['publish'] && !$profile['net-publish']) {
- info(L10n::t('Profile is
not published .') . EOL);
+ info(DI::l10n()->t('Profile is
not published .') . EOL);
}
$tpl_addr = Renderer::getMarkupTemplate('settings/nick_set.tpl');
$prof_addr = Renderer::replaceMacros($tpl_addr,[
- '$desc' => L10n::t("Your Identity Address is
'%s' or '%s'.", $nickname . '@' . DI::baseUrl()->getHostname() . DI::baseUrl()->getUrlPath(), DI::baseUrl() . '/profile/' . $nickname),
+ '$desc' => DI::l10n()->t("Your Identity Address is
'%s' or '%s'.", $nickname . '@' . DI::baseUrl()->getHostname() . DI::baseUrl()->getUrlPath(), DI::baseUrl() . '/profile/' . $nickname),
'$basepath' => DI::baseUrl()->getHostname()
]);
$stpl = Renderer::getMarkupTemplate('settings/settings.tpl');
$expire_arr = [
- 'days' => ['expire', L10n::t("Automatically expire posts after this many days:"), $expire, L10n::t('If empty, posts will not expire. Expired posts will be deleted')],
- 'advanced' => L10n::t('Advanced expiration settings'),
- 'label' => L10n::t('Advanced Expiration'),
- 'items' => ['expire_items', L10n::t("Expire posts:"), $expire_items, '', [L10n::t('No'), L10n::t('Yes')]],
- 'notes' => ['expire_notes', L10n::t("Expire personal notes:"), $expire_notes, '', [L10n::t('No'), L10n::t('Yes')]],
- 'starred' => ['expire_starred', L10n::t("Expire starred posts:"), $expire_starred, '', [L10n::t('No'), L10n::t('Yes')]],
- 'photos' => ['expire_photos', L10n::t("Expire photos:"), $expire_photos, '', [L10n::t('No'), L10n::t('Yes')]],
- 'network_only' => ['expire_network_only', L10n::t("Only expire posts by others:"), $expire_network_only, '', [L10n::t('No'), L10n::t('Yes')]],
+ 'days' => ['expire', DI::l10n()->t("Automatically expire posts after this many days:"), $expire, DI::l10n()->t('If empty, posts will not expire. Expired posts will be deleted')],
+ 'advanced' => DI::l10n()->t('Advanced expiration settings'),
+ 'label' => DI::l10n()->t('Advanced Expiration'),
+ 'items' => ['expire_items', DI::l10n()->t("Expire posts:"), $expire_items, '', [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
+ 'notes' => ['expire_notes', DI::l10n()->t("Expire personal notes:"), $expire_notes, '', [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
+ 'starred' => ['expire_starred', DI::l10n()->t("Expire starred posts:"), $expire_starred, '', [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
+ 'photos' => ['expire_photos', DI::l10n()->t("Expire photos:"), $expire_photos, '', [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
+ 'network_only' => ['expire_network_only', DI::l10n()->t("Only expire posts by others:"), $expire_network_only, '', [DI::l10n()->t('No'), DI::l10n()->t('Yes')]],
];
$group_select = Group::displayGroupSelection(local_user(), $a->user['def_gid']);
@@ -1169,52 +1169,52 @@ function settings_content(App $a)
/// @TODO Fix indending (or so)
$o .= Renderer::replaceMacros($stpl, [
- '$ptitle' => L10n::t('Account Settings'),
+ '$ptitle' => DI::l10n()->t('Account Settings'),
- '$submit' => L10n::t('Save Settings'),
+ '$submit' => DI::l10n()->t('Save Settings'),
'$baseurl' => DI::baseUrl()->get(true),
'$uid' => local_user(),
'$form_security_token' => BaseModule::getFormSecurityToken("settings"),
'$nickname_block' => $prof_addr,
- '$h_pass' => L10n::t('Password Settings'),
- '$password1'=> ['password', L10n::t('New Password:'), '', L10n::t('Allowed characters are a-z, A-Z, 0-9 and special characters except white spaces, accentuated letters and colon (:).')],
- '$password2'=> ['confirm', L10n::t('Confirm:'), '', L10n::t('Leave password fields blank unless changing')],
- '$password3'=> ['opassword', L10n::t('Current Password:'), '', L10n::t('Your current password to confirm the changes')],
- '$password4'=> ['mpassword', L10n::t('Password:'), '', L10n::t('Your current password to confirm the changes')],
+ '$h_pass' => DI::l10n()->t('Password Settings'),
+ '$password1'=> ['password', DI::l10n()->t('New Password:'), '', DI::l10n()->t('Allowed characters are a-z, A-Z, 0-9 and special characters except white spaces, accentuated letters and colon (:).')],
+ '$password2'=> ['confirm', DI::l10n()->t('Confirm:'), '', DI::l10n()->t('Leave password fields blank unless changing')],
+ '$password3'=> ['opassword', DI::l10n()->t('Current Password:'), '', DI::l10n()->t('Your current password to confirm the changes')],
+ '$password4'=> ['mpassword', DI::l10n()->t('Password:'), '', DI::l10n()->t('Your current password to confirm the changes')],
'$oid_enable' => (!Config::get('system', 'no_openid')),
'$openid' => $openid_field,
- '$delete_openid' => ['delete_openid', L10n::t('Delete OpenID URL'), false, ''],
+ '$delete_openid' => ['delete_openid', DI::l10n()->t('Delete OpenID URL'), false, ''],
- '$h_basic' => L10n::t('Basic Settings'),
- '$username' => ['username', L10n::t('Full Name:'), $username, ''],
- '$email' => ['email', L10n::t('Email Address:'), $email, '', '', '', 'email'],
- '$timezone' => ['timezone_select' , L10n::t('Your Timezone:'), Temporal::getTimezoneSelect($timezone), ''],
- '$language' => ['language', L10n::t('Your Language:'), $language, L10n::t('Set the language we use to show you friendica interface and to send you emails'), $lang_choices],
- '$defloc' => ['defloc', L10n::t('Default Post Location:'), $defloc, ''],
- '$allowloc' => ['allow_location', L10n::t('Use Browser Location:'), ($a->user['allow_location'] == 1), ''],
+ '$h_basic' => DI::l10n()->t('Basic Settings'),
+ '$username' => ['username', DI::l10n()->t('Full Name:'), $username, ''],
+ '$email' => ['email', DI::l10n()->t('Email Address:'), $email, '', '', '', 'email'],
+ '$timezone' => ['timezone_select' , DI::l10n()->t('Your Timezone:'), Temporal::getTimezoneSelect($timezone), ''],
+ '$language' => ['language', DI::l10n()->t('Your Language:'), $language, DI::l10n()->t('Set the language we use to show you friendica interface and to send you emails'), $lang_choices],
+ '$defloc' => ['defloc', DI::l10n()->t('Default Post Location:'), $defloc, ''],
+ '$allowloc' => ['allow_location', DI::l10n()->t('Use Browser Location:'), ($a->user['allow_location'] == 1), ''],
- '$h_prv' => L10n::t('Security and Privacy Settings'),
+ '$h_prv' => DI::l10n()->t('Security and Privacy Settings'),
- '$maxreq' => ['maxreq', L10n::t('Maximum Friend Requests/Day:'), $maxreq , L10n::t("\x28to prevent spam abuse\x29")],
- '$permissions' => L10n::t('Default Post Permissions'),
- '$permdesc' => L10n::t("\x28click to open/close\x29"),
+ '$maxreq' => ['maxreq', DI::l10n()->t('Maximum Friend Requests/Day:'), $maxreq , DI::l10n()->t("\x28to prevent spam abuse\x29")],
+ '$permissions' => DI::l10n()->t('Default Post Permissions'),
+ '$permdesc' => DI::l10n()->t("\x28click to open/close\x29"),
'$visibility' => $profile['net-publish'],
'$aclselect' => ACL::getFullSelectorHTML(DI::page(), $a->user),
'$suggestme' => $suggestme,
- '$blockwall'=> $blockwall, // array('blockwall', L10n::t('Allow friends to post to your profile page:'), !$blockwall, ''),
- '$blocktags'=> $blocktags, // array('blocktags', L10n::t('Allow friends to tag your posts:'), !$blocktags, ''),
+ '$blockwall'=> $blockwall, // array('blockwall', DI::l10n()->t('Allow friends to post to your profile page:'), !$blockwall, ''),
+ '$blocktags'=> $blocktags, // array('blocktags', DI::l10n()->t('Allow friends to tag your posts:'), !$blocktags, ''),
// ACL permissions box
- '$group_perms' => L10n::t('Show to Groups'),
- '$contact_perms' => L10n::t('Show to Contacts'),
- '$private' => L10n::t('Default Private Post'),
- '$public' => L10n::t('Default Public Post'),
+ '$group_perms' => DI::l10n()->t('Show to Groups'),
+ '$contact_perms' => DI::l10n()->t('Show to Contacts'),
+ '$private' => DI::l10n()->t('Default Private Post'),
+ '$public' => DI::l10n()->t('Default Public Post'),
'$is_private' => $private_post,
'$return_path' => $query_str,
'$public_link' => $public_post_link,
- '$settings_perms' => L10n::t('Default Permissions for New Posts'),
+ '$settings_perms' => DI::l10n()->t('Default Permissions for New Posts'),
'$group_select' => $group_select,
@@ -1226,41 +1226,41 @@ function settings_content(App $a)
'$hide_friends' => $hide_friends,
'$hide_wall' => $hide_wall,
'$unkmail' => $unkmail,
- '$cntunkmail' => ['cntunkmail', L10n::t('Maximum private messages per day from unknown people:'), $cntunkmail , L10n::t("\x28to prevent spam abuse\x29")],
+ '$cntunkmail' => ['cntunkmail', DI::l10n()->t('Maximum private messages per day from unknown people:'), $cntunkmail , DI::l10n()->t("\x28to prevent spam abuse\x29")],
- '$h_not' => L10n::t('Notification Settings'),
- '$lbl_not' => L10n::t('Send a notification email when:'),
- '$notify1' => ['notify1', L10n::t('You receive an introduction'), ($notify & NOTIFY_INTRO), NOTIFY_INTRO, ''],
- '$notify2' => ['notify2', L10n::t('Your introductions are confirmed'), ($notify & NOTIFY_CONFIRM), NOTIFY_CONFIRM, ''],
- '$notify3' => ['notify3', L10n::t('Someone writes on your profile wall'), ($notify & NOTIFY_WALL), NOTIFY_WALL, ''],
- '$notify4' => ['notify4', L10n::t('Someone writes a followup comment'), ($notify & NOTIFY_COMMENT), NOTIFY_COMMENT, ''],
- '$notify5' => ['notify5', L10n::t('You receive a private message'), ($notify & NOTIFY_MAIL), NOTIFY_MAIL, ''],
- '$notify6' => ['notify6', L10n::t('You receive a friend suggestion'), ($notify & NOTIFY_SUGGEST), NOTIFY_SUGGEST, ''],
- '$notify7' => ['notify7', L10n::t('You are tagged in a post'), ($notify & NOTIFY_TAGSELF), NOTIFY_TAGSELF, ''],
- '$notify8' => ['notify8', L10n::t('You are poked/prodded/etc. in a post'), ($notify & NOTIFY_POKE), NOTIFY_POKE, ''],
+ '$h_not' => DI::l10n()->t('Notification Settings'),
+ '$lbl_not' => DI::l10n()->t('Send a notification email when:'),
+ '$notify1' => ['notify1', DI::l10n()->t('You receive an introduction'), ($notify & NOTIFY_INTRO), NOTIFY_INTRO, ''],
+ '$notify2' => ['notify2', DI::l10n()->t('Your introductions are confirmed'), ($notify & NOTIFY_CONFIRM), NOTIFY_CONFIRM, ''],
+ '$notify3' => ['notify3', DI::l10n()->t('Someone writes on your profile wall'), ($notify & NOTIFY_WALL), NOTIFY_WALL, ''],
+ '$notify4' => ['notify4', DI::l10n()->t('Someone writes a followup comment'), ($notify & NOTIFY_COMMENT), NOTIFY_COMMENT, ''],
+ '$notify5' => ['notify5', DI::l10n()->t('You receive a private message'), ($notify & NOTIFY_MAIL), NOTIFY_MAIL, ''],
+ '$notify6' => ['notify6', DI::l10n()->t('You receive a friend suggestion'), ($notify & NOTIFY_SUGGEST), NOTIFY_SUGGEST, ''],
+ '$notify7' => ['notify7', DI::l10n()->t('You are tagged in a post'), ($notify & NOTIFY_TAGSELF), NOTIFY_TAGSELF, ''],
+ '$notify8' => ['notify8', DI::l10n()->t('You are poked/prodded/etc. in a post'), ($notify & NOTIFY_POKE), NOTIFY_POKE, ''],
- '$desktop_notifications' => ['desktop_notifications', L10n::t('Activate desktop notifications') , false, L10n::t('Show desktop popup on new notifications')],
+ '$desktop_notifications' => ['desktop_notifications', DI::l10n()->t('Activate desktop notifications') , false, DI::l10n()->t('Show desktop popup on new notifications')],
- '$email_textonly' => ['email_textonly', L10n::t('Text-only notification emails'),
+ '$email_textonly' => ['email_textonly', DI::l10n()->t('Text-only notification emails'),
DI::pConfig()->get(local_user(), 'system', 'email_textonly'),
- L10n::t('Send text only notification emails, without the html part')],
+ DI::l10n()->t('Send text only notification emails, without the html part')],
- '$detailed_notif' => ['detailed_notif', L10n::t('Show detailled notifications'),
+ '$detailed_notif' => ['detailed_notif', DI::l10n()->t('Show detailled notifications'),
DI::pConfig()->get(local_user(), 'system', 'detailed_notif'),
- L10n::t('Per default, notifications are condensed to a single notification per item. When enabled every notification is displayed.')],
+ DI::l10n()->t('Per default, notifications are condensed to a single notification per item. When enabled every notification is displayed.')],
- '$h_advn' => L10n::t('Advanced Account/Page Type Settings'),
- '$h_descadvn' => L10n::t('Change the behaviour of this account for special situations'),
+ '$h_advn' => DI::l10n()->t('Advanced Account/Page Type Settings'),
+ '$h_descadvn' => DI::l10n()->t('Change the behaviour of this account for special situations'),
'$pagetype' => $pagetype,
- '$importcontact' => L10n::t('Import Contacts'),
- '$importcontact_text' => L10n::t('Upload a CSV file that contains the handle of your followed accounts in the first column you exported from the old account.'),
- '$importcontact_button' => L10n::t('Upload File'),
+ '$importcontact' => DI::l10n()->t('Import Contacts'),
+ '$importcontact_text' => DI::l10n()->t('Upload a CSV file that contains the handle of your followed accounts in the first column you exported from the old account.'),
+ '$importcontact_button' => DI::l10n()->t('Upload File'),
'$importcontact_maxsize' => Config::get('system', 'max_csv_file_size', 30720),
- '$relocate' => L10n::t('Relocate'),
- '$relocate_text' => L10n::t("If you have moved this profile from another server, and some of your contacts don't receive your updates, try pushing this button."),
- '$relocate_button' => L10n::t("Resend relocate message to contacts"),
+ '$relocate' => DI::l10n()->t('Relocate'),
+ '$relocate_text' => DI::l10n()->t("If you have moved this profile from another server, and some of your contacts don't receive your updates, try pushing this button."),
+ '$relocate_button' => DI::l10n()->t("Resend relocate message to contacts"),
]);
diff --git a/mod/subthread.php b/mod/subthread.php
index 02d5cdcce..506843734 100644
--- a/mod/subthread.php
+++ b/mod/subthread.php
@@ -89,7 +89,7 @@ function subthread_content(App $a) {
$uri = Item::newURI($owner_uid);
- $post_type = (($item['resource-id']) ? L10n::t('photo') : L10n::t('status'));
+ $post_type = (($item['resource-id']) ? DI::l10n()->t('photo') : DI::l10n()->t('status'));
$objtype = (($item['resource-id']) ? Activity\ObjectType::IMAGE : Activity\ObjectType::NOTE );
$link = XML::escape('
' . "\n");
$body = $item['body'];
@@ -105,7 +105,7 @@ function subthread_content(App $a) {
$body
EOT;
- $bodyverb = L10n::t('%1$s is following %2$s\'s %3$s');
+ $bodyverb = DI::l10n()->t('%1$s is following %2$s\'s %3$s');
if (!isset($bodyverb)) {
return;
diff --git a/mod/suggest.php b/mod/suggest.php
index 31f02fa4c..ec8c9ce78 100644
--- a/mod/suggest.php
+++ b/mod/suggest.php
@@ -25,7 +25,7 @@ function suggest_post(App $a)
{
if (!empty($_POST['ignore']) && !empty($_POST['confirm'])) {
DBA::insert('gcign', ['uid' => local_user(), 'gcid' => $_POST['ignore']]);
- notice(L10n::t('Contact suggestion successfully ignored.'));
+ notice(DI::l10n()->t('Contact suggestion successfully ignored.'));
}
DI::baseUrl()->redirect('suggest');
@@ -36,7 +36,7 @@ function suggest_content(App $a)
$o = '';
if (! local_user()) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -49,7 +49,7 @@ function suggest_content(App $a)
$r = GContact::suggestionQuery(local_user());
if (! DBA::isResult($r)) {
- $o .= L10n::t('No suggestions available. If this is a new site, please try again in 24 hours.');
+ $o .= DI::l10n()->t('No suggestions available. If this is a new site, please try again in 24 hours.');
return $o;
}
@@ -68,12 +68,12 @@ function suggest_content(App $a)
return Renderer::replaceMacros(Renderer::getMarkupTemplate('confirm.tpl'), [
'$method' => 'post',
- '$message' => L10n::t('Do you really want to delete this suggestion?'),
+ '$message' => DI::l10n()->t('Do you really want to delete this suggestion?'),
'$extra_inputs' => $inputs,
- '$confirm' => L10n::t('Yes'),
+ '$confirm' => DI::l10n()->t('Yes'),
'$confirm_url' => $query['base'],
'$confirm_name' => 'confirm',
- '$cancel' => L10n::t('Cancel'),
+ '$cancel' => DI::l10n()->t('Cancel'),
]);
}
@@ -84,9 +84,9 @@ function suggest_content(App $a)
$connlnk = DI::baseUrl() . '/follow/?url=' . (($rr['connect']) ? $rr['connect'] : $rr['url']);
$ignlnk = DI::baseUrl() . '/suggest?ignore=' . $rr['id'];
$photo_menu = [
- 'profile' => [L10n::t("View Profile"), Contact::magicLink($rr["url"])],
- 'follow' => [L10n::t("Connect/Follow"), $connlnk],
- 'hide' => [L10n::t('Ignore/Hide'), $ignlnk]
+ 'profile' => [DI::l10n()->t("View Profile"), Contact::magicLink($rr["url"])],
+ 'follow' => [DI::l10n()->t("Connect/Follow"), $connlnk],
+ 'hide' => [DI::l10n()->t('Ignore/Hide'), $ignlnk]
];
$contact_details = Contact::getDetailsByURL($rr["url"], local_user(), $rr);
@@ -103,10 +103,10 @@ function suggest_content(App $a)
'account_type' => Contact::getAccountType($contact_details),
'ignlnk' => $ignlnk,
'ignid' => $rr['id'],
- 'conntxt' => L10n::t('Connect'),
+ 'conntxt' => DI::l10n()->t('Connect'),
'connlnk' => $connlnk,
'photo_menu' => $photo_menu,
- 'ignore' => L10n::t('Ignore/Hide'),
+ 'ignore' => DI::l10n()->t('Ignore/Hide'),
'network' => ContactSelector::networkToName($rr['network'], $rr['url']),
'id' => ++$id,
];
@@ -116,7 +116,7 @@ function suggest_content(App $a)
$tpl = Renderer::getMarkupTemplate('viewcontact_template.tpl');
$o .= Renderer::replaceMacros($tpl,[
- '$title' => L10n::t('Friend Suggestions'),
+ '$title' => DI::l10n()->t('Friend Suggestions'),
'$contacts' => $entries,
]);
diff --git a/mod/tagger.php b/mod/tagger.php
index a366976bd..38a13df9c 100644
--- a/mod/tagger.php
+++ b/mod/tagger.php
@@ -70,7 +70,7 @@ function tagger_content(App $a) {
$uri = Item::newURI($owner_uid);
$xterm = XML::escape($term);
- $post_type = (($item['resource-id']) ? L10n::t('photo') : L10n::t('status'));
+ $post_type = (($item['resource-id']) ? DI::l10n()->t('photo') : DI::l10n()->t('status'));
$targettype = (($item['resource-id']) ? Activity\ObjectType::IMAGE : Activity\ObjectType::NOTE );
$href = DI::baseUrl() . '/display/' . $item['guid'];
@@ -103,7 +103,7 @@ EOT;
EOT;
- $bodyverb = L10n::t('%1$s tagged %2$s\'s %3$s with %4$s');
+ $bodyverb = DI::l10n()->t('%1$s tagged %2$s\'s %3$s with %4$s');
if (!isset($bodyverb)) {
return;
diff --git a/mod/tagrm.php b/mod/tagrm.php
index 267ee718c..ebb9c5093 100644
--- a/mod/tagrm.php
+++ b/mod/tagrm.php
@@ -18,7 +18,7 @@ function tagrm_post(App $a)
DI::baseUrl()->redirect($_SESSION['photo_return']);
}
- if (!empty($_POST['submit']) && ($_POST['submit'] === L10n::t('Cancel'))) {
+ if (!empty($_POST['submit']) && ($_POST['submit'] === DI::l10n()->t('Cancel'))) {
DI::baseUrl()->redirect($_SESSION['photo_return']);
}
@@ -29,7 +29,7 @@ function tagrm_post(App $a)
$item_id = $_POST['item'] ?? 0;
update_tags($item_id, $tags);
- info(L10n::t('Tag(s) removed') . EOL);
+ info(DI::l10n()->t('Tag(s) removed') . EOL);
DI::baseUrl()->redirect($_SESSION['photo_return']);
// NOTREACHED
@@ -99,9 +99,9 @@ function tagrm_content(App $a)
DI::baseUrl()->redirect($_SESSION['photo_return']);
}
- $o .= '
' . L10n::t('Remove Item Tag') . ' ';
+ $o .= '
' . DI::l10n()->t('Remove Item Tag') . ' ';
- $o .= '
' . L10n::t('Select a tag to remove: ') . '
';
+ $o .= '
' . DI::l10n()->t('Select a tag to remove: ') . '
';
$o .= '
';
return $o;
diff --git a/mod/uimport.php b/mod/uimport.php
index 66201161a..7bc2702dd 100644
--- a/mod/uimport.php
+++ b/mod/uimport.php
@@ -14,7 +14,7 @@ use Friendica\Core\Renderer;
function uimport_post(App $a)
{
if ((Config::get('config', 'register_policy') != \Friendica\Module\Register::OPEN) && !is_site_admin()) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -27,7 +27,7 @@ function uimport_post(App $a)
function uimport_content(App $a)
{
if ((Config::get('config', 'register_policy') != \Friendica\Module\Register::OPEN) && !is_site_admin()) {
- notice(L10n::t('User imports on closed servers can only be done by an administrator.') . EOL);
+ notice(DI::l10n()->t('User imports on closed servers can only be done by an administrator.') . EOL);
return;
}
@@ -36,20 +36,20 @@ function uimport_content(App $a)
$r = q("select count(*) as total from user where register_date > UTC_TIMESTAMP - INTERVAL 1 day");
if ($r && $r[0]['total'] >= $max_dailies) {
Logger::log('max daily registrations exceeded.');
- notice(L10n::t('This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.') . EOL);
+ notice(DI::l10n()->t('This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.') . EOL);
return;
}
}
$tpl = Renderer::getMarkupTemplate("uimport.tpl");
return Renderer::replaceMacros($tpl, [
- '$regbutt' => L10n::t('Import'),
+ '$regbutt' => DI::l10n()->t('Import'),
'$import' => [
- 'title' => L10n::t("Move account"),
- 'intro' => L10n::t("You can import an account from another Friendica server."),
- 'instruct' => L10n::t("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."),
- 'warn' => L10n::t("This feature is experimental. We can't import contacts from the OStatus network \x28GNU Social/Statusnet\x29 or from Diaspora"),
- 'field' => ['accountfile', L10n::t('Account file'), '
', L10n::t('To export your account, go to "Settings->Export your personal data" and select "Export account"')],
+ 'title' => DI::l10n()->t("Move account"),
+ 'intro' => DI::l10n()->t("You can import an account from another Friendica server."),
+ 'instruct' => DI::l10n()->t("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."),
+ 'warn' => DI::l10n()->t("This feature is experimental. We can't import contacts from the OStatus network \x28GNU Social/Statusnet\x29 or from Diaspora"),
+ 'field' => ['accountfile', DI::l10n()->t('Account file'), '
', DI::l10n()->t('To export your account, go to "Settings->Export your personal data" and select "Export account"')],
],
]);
}
diff --git a/mod/unfollow.php b/mod/unfollow.php
index 280ca164e..96dc06ab0 100644
--- a/mod/unfollow.php
+++ b/mod/unfollow.php
@@ -19,7 +19,7 @@ function unfollow_post(App $a)
$base_return_path = 'contact';
if (!local_user()) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
DI::baseUrl()->redirect('login');
// NOTREACHED
}
@@ -33,7 +33,7 @@ function unfollow_post(App $a)
$contact = DBA::selectFirst('contact', [], $condition);
if (!DBA::isResult($contact)) {
- notice(L10n::t("You aren't following this contact."));
+ notice(DI::l10n()->t("You aren't following this contact."));
DI::baseUrl()->redirect($base_return_path);
// NOTREACHED
}
@@ -43,7 +43,7 @@ function unfollow_post(App $a)
}
if (!in_array($contact['network'], Protocol::NATIVE_SUPPORT)) {
- notice(L10n::t('Unfollowing is currently not supported by your network.'));
+ notice(DI::l10n()->t('Unfollowing is currently not supported by your network.'));
DI::baseUrl()->redirect($base_return_path . '/' . $contact['id']);
// NOTREACHED
}
@@ -64,7 +64,7 @@ function unfollow_post(App $a)
$return_path = $base_return_path . '/' . $contact['id'];
}
- info(L10n::t('Contact unfollowed'));
+ info(DI::l10n()->t('Contact unfollowed'));
DI::baseUrl()->redirect($return_path);
// NOTREACHED
}
@@ -74,7 +74,7 @@ function unfollow_content(App $a)
$base_return_path = 'contact';
if (!local_user()) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
DI::baseUrl()->redirect('login');
// NOTREACHED
}
@@ -89,13 +89,13 @@ function unfollow_content(App $a)
$contact = DBA::selectFirst('contact', ['url', 'network', 'addr', 'name'], $condition);
if (!DBA::isResult($contact)) {
- notice(L10n::t("You aren't following this contact."));
+ notice(DI::l10n()->t("You aren't following this contact."));
DI::baseUrl()->redirect($base_return_path);
// NOTREACHED
}
if (!in_array($contact['network'], Protocol::NATIVE_SUPPORT)) {
- notice(L10n::t('Unfollowing is currently not supported by your network.'));
+ notice(DI::l10n()->t('Unfollowing is currently not supported by your network.'));
DI::baseUrl()->redirect($base_return_path . '/' . $contact['id']);
// NOTREACHED
}
@@ -106,7 +106,7 @@ function unfollow_content(App $a)
$self = DBA::selectFirst('contact', ['url'], ['uid' => $uid, 'self' => true]);
if (!DBA::isResult($self)) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
DI::baseUrl()->redirect($base_return_path);
// NOTREACHED
}
@@ -115,7 +115,7 @@ function unfollow_content(App $a)
$_SESSION['fastlane'] = $contact['url'];
$o = Renderer::replaceMacros($tpl, [
- '$header' => L10n::t('Disconnect/Unfollow'),
+ '$header' => DI::l10n()->t('Disconnect/Unfollow'),
'$desc' => '',
'$pls_answer' => '',
'$does_know_you' => '',
@@ -125,16 +125,16 @@ function unfollow_content(App $a)
'$statusnet' => '',
'$diaspora' => '',
'$diasnote' => '',
- '$your_address' => L10n::t('Your Identity Address:'),
+ '$your_address' => DI::l10n()->t('Your Identity Address:'),
'$invite_desc' => '',
'$emailnet' => '',
- '$submit' => L10n::t('Submit Request'),
- '$cancel' => L10n::t('Cancel'),
+ '$submit' => DI::l10n()->t('Submit Request'),
+ '$cancel' => DI::l10n()->t('Cancel'),
'$nickname' => '',
'$name' => $contact['name'],
'$url' => $contact['url'],
'$zrl' => Contact::magicLink($contact['url']),
- '$url_label' => L10n::t('Profile URL'),
+ '$url_label' => DI::l10n()->t('Profile URL'),
'$myaddr' => $self['url'],
'$request' => $request,
'$keywords' => '',
@@ -144,7 +144,7 @@ function unfollow_content(App $a)
DI::page()['aside'] = '';
Profile::load($a, '', 0, Contact::getDetailsByURL($contact['url']));
- $o .= Renderer::replaceMacros(Renderer::getMarkupTemplate('section_title.tpl'), ['$title' => L10n::t('Status Messages and Posts')]);
+ $o .= Renderer::replaceMacros(Renderer::getMarkupTemplate('section_title.tpl'), ['$title' => DI::l10n()->t('Status Messages and Posts')]);
// Show last public posts
$o .= Contact::getPostsFromUrl($contact['url']);
diff --git a/mod/update_community.php b/mod/update_community.php
index 2f23bb7de..4f1cd263b 100644
--- a/mod/update_community.php
+++ b/mod/update_community.php
@@ -20,7 +20,7 @@ function update_community_content(App $a) {
}
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = "
".L10n::t("[Embedded content - reload page to view]")."
";
+ $replace = "
".DI::l10n()->t("[Embedded content - reload page to view]")."
";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_contact.php b/mod/update_contact.php
index 5092dd835..a347873da 100644
--- a/mod/update_contact.php
+++ b/mod/update_contact.php
@@ -20,7 +20,7 @@ function update_contact_content(App $a)
}
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = "
".L10n::t("[Embedded content - reload page to view]")."
";
+ $replace = "
".DI::l10n()->t("[Embedded content - reload page to view]")."
";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_display.php b/mod/update_display.php
index 569c76ab3..9d725fed2 100644
--- a/mod/update_display.php
+++ b/mod/update_display.php
@@ -21,7 +21,7 @@ function update_display_content(App $a)
$text = display_content($a, true, $profile_uid);
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = "
" . L10n::t("[Embedded content - reload page to view]") . "
";
+ $replace = "
" . DI::l10n()->t("[Embedded content - reload page to view]") . "
";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_network.php b/mod/update_network.php
index 2ae9ccb78..212b6a6b1 100644
--- a/mod/update_network.php
+++ b/mod/update_network.php
@@ -30,7 +30,7 @@ function update_network_content(App $a)
}
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = "
" . L10n::t("[Embedded content - reload page to view]") . "
";
+ $replace = "
" . DI::l10n()->t("[Embedded content - reload page to view]") . "
";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_notes.php b/mod/update_notes.php
index 989af976a..4027d4a33 100644
--- a/mod/update_notes.php
+++ b/mod/update_notes.php
@@ -33,7 +33,7 @@ function update_notes_content(App $a) {
$text = notes_content($a, $profile_uid);
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = "
".L10n::t("[Embedded content - reload page to view]")."
";
+ $replace = "
".DI::l10n()->t("[Embedded content - reload page to view]")."
";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_profile.php b/mod/update_profile.php
index 38802866d..8d94d34a1 100644
--- a/mod/update_profile.php
+++ b/mod/update_profile.php
@@ -31,7 +31,7 @@ function update_profile_content(App $a) {
$text = Profile::content([], $profile_uid);
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = "
".L10n::t("[Embedded content - reload page to view]")."
";
+ $replace = "
".DI::l10n()->t("[Embedded content - reload page to view]")."
";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/videos.php b/mod/videos.php
index ad3a27b00..368eec3c9 100644
--- a/mod/videos.php
+++ b/mod/videos.php
@@ -110,12 +110,12 @@ function videos_content(App $a)
if (Config::get('system', 'block_public') && !Session::isAuthenticated()) {
- notice(L10n::t('Public access denied.') . EOL);
+ notice(DI::l10n()->t('Public access denied.') . EOL);
return;
}
if (empty($a->data['user'])) {
- notice(L10n::t('No videos selected') . EOL );
+ notice(DI::l10n()->t('No videos selected') . EOL );
return;
}
@@ -163,7 +163,7 @@ function videos_content(App $a)
}
if ($a->data['user']['hidewall'] && (local_user() != $owner_uid) && !$remote_contact) {
- notice(L10n::t('Access to this item is restricted.') . EOL);
+ notice(DI::l10n()->t('Access to this item is restricted.') . EOL);
return;
}
@@ -233,14 +233,14 @@ function videos_content(App $a)
$videos[] = [
'id' => $rr['id'],
'link' => DI::baseUrl() . '/videos/' . $a->data['user']['nickname'] . '/video/' . $rr['hash'],
- 'title' => L10n::t('View Video'),
+ 'title' => DI::l10n()->t('View Video'),
'src' => DI::baseUrl() . '/attach/' . $rr['id'] . '?attachment=0',
'alt' => $alt_e,
'mime' => $rr['filetype'],
'album' => [
'link' => DI::baseUrl() . '/videos/' . $a->data['user']['nickname'] . '/album/' . bin2hex($rr['album']),
'name' => $name_e,
- 'alt' => L10n::t('View Album'),
+ 'alt' => DI::l10n()->t('View Album'),
],
];
}
@@ -248,9 +248,9 @@ function videos_content(App $a)
$tpl = Renderer::getMarkupTemplate('videos_recent.tpl');
$o .= Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Recent Videos'),
+ '$title' => DI::l10n()->t('Recent Videos'),
'$can_post' => $can_post,
- '$upload' => [L10n::t('Upload New Videos'), DI::baseUrl() . '/videos/' . $a->data['user']['nickname'] . '/upload'],
+ '$upload' => [DI::l10n()->t('Upload New Videos'), DI::baseUrl() . '/videos/' . $a->data['user']['nickname'] . '/upload'],
'$videos' => $videos,
'$delete_url' => (($can_post) ? DI::baseUrl() . '/videos/' . $a->data['user']['nickname'] : false)
]);
diff --git a/mod/wall_attach.php b/mod/wall_attach.php
index 0324a5581..a8f704cd9 100644
--- a/mod/wall_attach.php
+++ b/mod/wall_attach.php
@@ -24,14 +24,14 @@ function wall_attach_post(App $a) {
if (! DBA::isResult($r)) {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Invalid request.')]);
+ echo json_encode(['error' => DI::l10n()->t('Invalid request.')]);
exit();
}
return;
}
} else {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Invalid request.')]);
+ echo json_encode(['error' => DI::l10n()->t('Invalid request.')]);
exit();
}
@@ -60,16 +60,16 @@ function wall_attach_post(App $a) {
if (!$can_post) {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Permission denied.')]);
+ echo json_encode(['error' => DI::l10n()->t('Permission denied.')]);
exit();
}
- notice(L10n::t('Permission denied.') . EOL );
+ notice(DI::l10n()->t('Permission denied.') . EOL );
exit();
}
if (empty($_FILES['userfile'])) {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Invalid request.')]);
+ echo json_encode(['error' => DI::l10n()->t('Invalid request.')]);
}
exit();
}
@@ -87,7 +87,7 @@ function wall_attach_post(App $a) {
*/
if ($filesize <= 0) {
- $msg = L10n::t('Sorry, maybe your upload is bigger than the PHP configuration allows') . EOL .(L10n::t('Or - did you try to upload an empty file?'));
+ $msg = DI::l10n()->t('Sorry, maybe your upload is bigger than the PHP configuration allows') . EOL .(DI::l10n()->t('Or - did you try to upload an empty file?'));
if ($r_json) {
echo json_encode(['error' => $msg]);
} else {
@@ -98,7 +98,7 @@ function wall_attach_post(App $a) {
}
if ($maxfilesize && $filesize > $maxfilesize) {
- $msg = L10n::t('File exceeds size limit of %s', Strings::formatBytes($maxfilesize));
+ $msg = DI::l10n()->t('File exceeds size limit of %s', Strings::formatBytes($maxfilesize));
if ($r_json) {
echo json_encode(['error' => $msg]);
} else {
@@ -113,7 +113,7 @@ function wall_attach_post(App $a) {
@unlink($src);
if ($newid === false) {
- $msg = L10n::t('File upload failed.');
+ $msg = DI::l10n()->t('File upload failed.');
if ($r_json) {
echo json_encode(['error' => $msg]);
} else {
diff --git a/mod/wall_upload.php b/mod/wall_upload.php
index 5c5fd7f18..814a32fd4 100644
--- a/mod/wall_upload.php
+++ b/mod/wall_upload.php
@@ -40,7 +40,7 @@ function wall_upload_post(App $a, $desktopmode = true)
if (!DBA::isResult($r)) {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Invalid request.')]);
+ echo json_encode(['error' => DI::l10n()->t('Invalid request.')]);
exit();
}
return;
@@ -56,7 +56,7 @@ function wall_upload_post(App $a, $desktopmode = true)
}
} else {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Invalid request.')]);
+ echo json_encode(['error' => DI::l10n()->t('Invalid request.')]);
exit();
}
return;
@@ -92,16 +92,16 @@ function wall_upload_post(App $a, $desktopmode = true)
if (!$can_post) {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Permission denied.')]);
+ echo json_encode(['error' => DI::l10n()->t('Permission denied.')]);
exit();
}
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
exit();
}
if (empty($_FILES['userfile']) && empty($_FILES['media'])) {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Invalid request.')]);
+ echo json_encode(['error' => DI::l10n()->t('Invalid request.')]);
}
exit();
}
@@ -152,10 +152,10 @@ function wall_upload_post(App $a, $desktopmode = true)
if ($src == "") {
if ($r_json) {
- echo json_encode(['error' => L10n::t('Invalid request.')]);
+ echo json_encode(['error' => DI::l10n()->t('Invalid request.')]);
exit();
}
- notice(L10n::t('Invalid request.').EOL);
+ notice(DI::l10n()->t('Invalid request.').EOL);
exit();
}
@@ -183,7 +183,7 @@ function wall_upload_post(App $a, $desktopmode = true)
$maximagesize = Config::get('system', 'maximagesize');
if (($maximagesize) && ($filesize > $maximagesize)) {
- $msg = L10n::t('Image exceeds size limit of %s', Strings::formatBytes($maximagesize));
+ $msg = DI::l10n()->t('Image exceeds size limit of %s', Strings::formatBytes($maximagesize));
if ($r_json) {
echo json_encode(['error' => $msg]);
} else {
@@ -197,7 +197,7 @@ function wall_upload_post(App $a, $desktopmode = true)
$Image = new Image($imagedata, $filetype);
if (!$Image->isValid()) {
- $msg = L10n::t('Unable to process image.');
+ $msg = DI::l10n()->t('Unable to process image.');
if ($r_json) {
echo json_encode(['error' => $msg]);
} else {
@@ -228,7 +228,7 @@ function wall_upload_post(App $a, $desktopmode = true)
// If we don't have an album name use the Wall Photos album
if (!strlen($album)) {
- $album = L10n::t('Wall Photos');
+ $album = DI::l10n()->t('Wall Photos');
}
$defperm = '<' . $default_cid . '>';
@@ -236,7 +236,7 @@ function wall_upload_post(App $a, $desktopmode = true)
$r = Photo::store($Image, $page_owner_uid, $visitor, $resource_id, $filename, $album, 0, 0, $defperm);
if (!$r) {
- $msg = L10n::t('Image upload failed.');
+ $msg = DI::l10n()->t('Image upload failed.');
if ($r_json) {
echo json_encode(['error' => $msg]);
} else {
diff --git a/mod/wallmessage.php b/mod/wallmessage.php
index 1d7af7136..cf9759b71 100644
--- a/mod/wallmessage.php
+++ b/mod/wallmessage.php
@@ -16,7 +16,7 @@ function wallmessage_post(App $a) {
$replyto = Profile::getMyURL();
if (!$replyto) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -40,7 +40,7 @@ function wallmessage_post(App $a) {
$user = $r[0];
if (! intval($user['unkmail'])) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -49,7 +49,7 @@ function wallmessage_post(App $a) {
);
if ($r[0]['total'] > $user['cntunkmail']) {
- notice(L10n::t('Number of daily wall messages for %s exceeded. Message failed.', $user['username']));
+ notice(DI::l10n()->t('Number of daily wall messages for %s exceeded. Message failed.', $user['username']));
return;
}
@@ -57,19 +57,19 @@ function wallmessage_post(App $a) {
switch ($ret) {
case -1:
- notice(L10n::t('No recipient selected.') . EOL);
+ notice(DI::l10n()->t('No recipient selected.') . EOL);
break;
case -2:
- notice(L10n::t('Unable to check your home location.') . EOL);
+ notice(DI::l10n()->t('Unable to check your home location.') . EOL);
break;
case -3:
- notice(L10n::t('Message could not be sent.') . EOL);
+ notice(DI::l10n()->t('Message could not be sent.') . EOL);
break;
case -4:
- notice(L10n::t('Message collection failure.') . EOL);
+ notice(DI::l10n()->t('Message collection failure.') . EOL);
break;
default:
- info(L10n::t('Message sent.') . EOL);
+ info(DI::l10n()->t('Message sent.') . EOL);
}
DI::baseUrl()->redirect('profile/'.$user['nickname']);
@@ -79,14 +79,14 @@ function wallmessage_post(App $a) {
function wallmessage_content(App $a) {
if (!Profile::getMyURL()) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
$recipient = (($a->argc > 1) ? $a->argv[1] : '');
if (!$recipient) {
- notice(L10n::t('No recipient.') . EOL);
+ notice(DI::l10n()->t('No recipient.') . EOL);
return;
}
@@ -95,7 +95,7 @@ function wallmessage_content(App $a) {
);
if (! DBA::isResult($r)) {
- notice(L10n::t('No recipient.') . EOL);
+ notice(DI::l10n()->t('No recipient.') . EOL);
Logger::log('wallmessage: no recipient');
return;
}
@@ -103,7 +103,7 @@ function wallmessage_content(App $a) {
$user = $r[0];
if (!intval($user['unkmail'])) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
@@ -112,7 +112,7 @@ function wallmessage_content(App $a) {
);
if ($r[0]['total'] > $user['cntunkmail']) {
- notice(L10n::t('Number of daily wall messages for %s exceeded. Message failed.', $user['username']));
+ notice(DI::l10n()->t('Number of daily wall messages for %s exceeded. Message failed.', $user['username']));
return;
}
@@ -120,25 +120,25 @@ function wallmessage_content(App $a) {
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
'$baseurl' => DI::baseUrl()->get(true),
'$nickname' => $user['nickname'],
- '$linkurl' => L10n::t('Please enter a link URL:')
+ '$linkurl' => DI::l10n()->t('Please enter a link URL:')
]);
$tpl = Renderer::getMarkupTemplate('wallmessage.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$header' => L10n::t('Send Private Message'),
- '$subheader' => L10n::t('If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders.', $user['username']),
- '$to' => L10n::t('To:'),
- '$subject' => L10n::t('Subject:'),
+ '$header' => DI::l10n()->t('Send Private Message'),
+ '$subheader' => DI::l10n()->t('If you wish for %s to respond, please check that the privacy settings on your site allow private mail from unknown senders.', $user['username']),
+ '$to' => DI::l10n()->t('To:'),
+ '$subject' => DI::l10n()->t('Subject:'),
'$recipname' => $user['username'],
'$nickname' => $user['nickname'],
'$subjtxt' => $_REQUEST['subject'] ?? '',
'$text' => $_REQUEST['body'] ?? '',
'$readonly' => '',
- '$yourmessage'=> L10n::t('Your message:'),
+ '$yourmessage'=> DI::l10n()->t('Your message:'),
'$parent' => '',
- '$upload' => L10n::t('Upload photo'),
- '$insert' => L10n::t('Insert web link'),
- '$wait' => L10n::t('Please wait')
+ '$upload' => DI::l10n()->t('Upload photo'),
+ '$insert' => DI::l10n()->t('Insert web link'),
+ '$wait' => DI::l10n()->t('Please wait')
]);
return $o;
diff --git a/src/App/Router.php b/src/App/Router.php
index c9ba21bb3..968855acb 100644
--- a/src/App/Router.php
+++ b/src/App/Router.php
@@ -181,9 +181,9 @@ class Router
$moduleClass = $routeInfo[1];
$this->parameters = $routeInfo[2];
} elseif ($routeInfo[0] === Dispatcher::METHOD_NOT_ALLOWED) {
- throw new HTTPException\MethodNotAllowedException(L10n::t('Method not allowed for this module. Allowed method(s): %s', implode(', ', $routeInfo[1])));
+ throw new HTTPException\MethodNotAllowedException(DI::l10n()->t('Method not allowed for this module. Allowed method(s): %s', implode(', ', $routeInfo[1])));
} else {
- throw new HTTPException\NotFoundException(L10n::t('Page not found.'));
+ throw new HTTPException\NotFoundException(DI::l10n()->t('Page not found.'));
}
return $moduleClass;
diff --git a/src/BaseModule.php b/src/BaseModule.php
index a993a95ad..666496ba9 100644
--- a/src/BaseModule.php
+++ b/src/BaseModule.php
@@ -130,7 +130,7 @@ abstract class BaseModule
public static function getFormSecurityStandardErrorMessage()
{
- return L10n::t("The form security token was not correct. This probably happened because the form has been opened for too long \x28>3 hours\x29 before submitting it.") . EOL;
+ return DI::l10n()->t("The form security token was not correct. This probably happened because the form has been opened for too long \x28>3 hours\x29 before submitting it.") . EOL;
}
public static function checkFormSecurityTokenRedirectOnError($err_redirect, $typename = '', $formname = 'form_security_token')
diff --git a/src/Console/ArchiveContact.php b/src/Console/ArchiveContact.php
index 4055e4866..e7a1f540e 100644
--- a/src/Console/ArchiveContact.php
+++ b/src/Console/ArchiveContact.php
@@ -83,7 +83,7 @@ HELP;
$nurl = Strings::normaliseLink($this->getArgument(0));
if (!$this->dba->exists('contact', ['nurl' => $nurl, 'archive' => false])) {
- throw new RuntimeException(L10n::t('Could not find any unarchived contact entry for this URL (%s)', $nurl));
+ throw new RuntimeException(DI::l10n()->t('Could not find any unarchived contact entry for this URL (%s)', $nurl));
}
if ($this->dba->update('contact', ['archive' => true], ['nurl' => $nurl])) {
$this->out($this->l10n->t('The contact entries have been archived'));
diff --git a/src/Content/ContactSelector.php b/src/Content/ContactSelector.php
index faba6269f..f9d6b0494 100644
--- a/src/Content/ContactSelector.php
+++ b/src/Content/ContactSelector.php
@@ -55,12 +55,12 @@ class ContactSelector
$o .= "
" . "\r\n";
$rep = [
- 0 => L10n::t('Frequently'),
- 1 => L10n::t('Hourly'),
- 2 => L10n::t('Twice daily'),
- 3 => L10n::t('Daily'),
- 4 => L10n::t('Weekly'),
- 5 => L10n::t('Monthly')
+ 0 => DI::l10n()->t('Frequently'),
+ 1 => DI::l10n()->t('Hourly'),
+ 2 => DI::l10n()->t('Twice daily'),
+ 3 => DI::l10n()->t('Daily'),
+ 4 => DI::l10n()->t('Weekly'),
+ 5 => DI::l10n()->t('Monthly')
];
foreach ($rep as $k => $v) {
@@ -114,23 +114,23 @@ class ContactSelector
public static function networkToName($network, $profile = '', $protocol = '')
{
$nets = [
- Protocol::DFRN => L10n::t('DFRN'),
- Protocol::OSTATUS => L10n::t('OStatus'),
- Protocol::FEED => L10n::t('RSS/Atom'),
- Protocol::MAIL => L10n::t('Email'),
- Protocol::DIASPORA => L10n::t('Diaspora'),
- Protocol::ZOT => L10n::t('Zot!'),
- Protocol::LINKEDIN => L10n::t('LinkedIn'),
- Protocol::XMPP => L10n::t('XMPP/IM'),
- Protocol::MYSPACE => L10n::t('MySpace'),
- Protocol::GPLUS => L10n::t('Google+'),
- Protocol::PUMPIO => L10n::t('pump.io'),
- Protocol::TWITTER => L10n::t('Twitter'),
- Protocol::DISCOURSE => L10n::t('Discourse'),
- Protocol::DIASPORA2 => L10n::t('Diaspora Connector'),
- Protocol::STATUSNET => L10n::t('GNU Social Connector'),
- Protocol::ACTIVITYPUB => L10n::t('ActivityPub'),
- Protocol::PNUT => L10n::t('pnut'),
+ Protocol::DFRN => DI::l10n()->t('DFRN'),
+ Protocol::OSTATUS => DI::l10n()->t('OStatus'),
+ Protocol::FEED => DI::l10n()->t('RSS/Atom'),
+ Protocol::MAIL => DI::l10n()->t('Email'),
+ Protocol::DIASPORA => DI::l10n()->t('Diaspora'),
+ Protocol::ZOT => DI::l10n()->t('Zot!'),
+ Protocol::LINKEDIN => DI::l10n()->t('LinkedIn'),
+ Protocol::XMPP => DI::l10n()->t('XMPP/IM'),
+ Protocol::MYSPACE => DI::l10n()->t('MySpace'),
+ Protocol::GPLUS => DI::l10n()->t('Google+'),
+ Protocol::PUMPIO => DI::l10n()->t('pump.io'),
+ Protocol::TWITTER => DI::l10n()->t('Twitter'),
+ Protocol::DISCOURSE => DI::l10n()->t('Discourse'),
+ Protocol::DIASPORA2 => DI::l10n()->t('Diaspora Connector'),
+ Protocol::STATUSNET => DI::l10n()->t('GNU Social Connector'),
+ Protocol::ACTIVITYPUB => DI::l10n()->t('ActivityPub'),
+ Protocol::PNUT => DI::l10n()->t('pnut'),
];
Hook::callAll('network_to_name', $nets);
@@ -164,7 +164,7 @@ class ContactSelector
}
if (!empty($protocol) && ($protocol != $network)) {
- $networkname = L10n::t('%s (via %s)', $networkname, self::networkToName($protocol));
+ $networkname = DI::l10n()->t('%s (via %s)', $networkname, self::networkToName($protocol));
}
return $networkname;
@@ -233,21 +233,21 @@ class ContactSelector
{
$o = '';
$select = [
- '' => L10n::t('No answer'),
- 'Male' => L10n::t('Male'),
- 'Female' => L10n::t('Female'),
- 'Currently Male' => L10n::t('Currently Male'),
- 'Currently Female' => L10n::t('Currently Female'),
- 'Mostly Male' => L10n::t('Mostly Male'),
- 'Mostly Female' => L10n::t('Mostly Female'),
- 'Transgender' => L10n::t('Transgender'),
- 'Intersex' => L10n::t('Intersex'),
- 'Transsexual' => L10n::t('Transsexual'),
- 'Hermaphrodite' => L10n::t('Hermaphrodite'),
- 'Neuter' => L10n::t('Neuter'),
- 'Non-specific' => L10n::t('Non-specific'),
- 'Other' => L10n::t('Other'),
- 'Undecided' => L10n::t('Undecided'),
+ '' => DI::l10n()->t('No answer'),
+ 'Male' => DI::l10n()->t('Male'),
+ 'Female' => DI::l10n()->t('Female'),
+ 'Currently Male' => DI::l10n()->t('Currently Male'),
+ 'Currently Female' => DI::l10n()->t('Currently Female'),
+ 'Mostly Male' => DI::l10n()->t('Mostly Male'),
+ 'Mostly Female' => DI::l10n()->t('Mostly Female'),
+ 'Transgender' => DI::l10n()->t('Transgender'),
+ 'Intersex' => DI::l10n()->t('Intersex'),
+ 'Transsexual' => DI::l10n()->t('Transsexual'),
+ 'Hermaphrodite' => DI::l10n()->t('Hermaphrodite'),
+ 'Neuter' => DI::l10n()->t('Neuter'),
+ 'Non-specific' => DI::l10n()->t('Non-specific'),
+ 'Other' => DI::l10n()->t('Other'),
+ 'Undecided' => DI::l10n()->t('Undecided'),
];
Hook::callAll('gender_selector', $select);
@@ -273,20 +273,20 @@ class ContactSelector
{
$o = '';
$select = [
- '' => L10n::t('No answer'),
- 'Males' => L10n::t('Males'),
- 'Females' => L10n::t('Females'),
- 'Gay' => L10n::t('Gay'),
- 'Lesbian' => L10n::t('Lesbian'),
- 'No Preference' => L10n::t('No Preference'),
- 'Bisexual' => L10n::t('Bisexual'),
- 'Autosexual' => L10n::t('Autosexual'),
- 'Abstinent' => L10n::t('Abstinent'),
- 'Virgin' => L10n::t('Virgin'),
- 'Deviant' => L10n::t('Deviant'),
- 'Fetish' => L10n::t('Fetish'),
- 'Oodles' => L10n::t('Oodles'),
- 'Nonsexual' => L10n::t('Nonsexual'),
+ '' => DI::l10n()->t('No answer'),
+ 'Males' => DI::l10n()->t('Males'),
+ 'Females' => DI::l10n()->t('Females'),
+ 'Gay' => DI::l10n()->t('Gay'),
+ 'Lesbian' => DI::l10n()->t('Lesbian'),
+ 'No Preference' => DI::l10n()->t('No Preference'),
+ 'Bisexual' => DI::l10n()->t('Bisexual'),
+ 'Autosexual' => DI::l10n()->t('Autosexual'),
+ 'Abstinent' => DI::l10n()->t('Abstinent'),
+ 'Virgin' => DI::l10n()->t('Virgin'),
+ 'Deviant' => DI::l10n()->t('Deviant'),
+ 'Fetish' => DI::l10n()->t('Fetish'),
+ 'Oodles' => DI::l10n()->t('Oodles'),
+ 'Nonsexual' => DI::l10n()->t('Nonsexual'),
];
Hook::callAll('sexpref_selector', $select);
@@ -311,37 +311,37 @@ class ContactSelector
{
$o = '';
$select = [
- '' => L10n::t('No answer'),
- 'Single' => L10n::t('Single'),
- 'Lonely' => L10n::t('Lonely'),
- 'In a relation' => L10n::t('In a relation'),
- 'Has crush' => L10n::t('Has crush'),
- 'Infatuated' => L10n::t('Infatuated'),
- 'Dating' => L10n::t('Dating'),
- 'Unfaithful' => L10n::t('Unfaithful'),
- 'Sex Addict' => L10n::t('Sex Addict'),
- 'Friends' => L10n::t('Friends'),
- 'Friends/Benefits' => L10n::t('Friends/Benefits'),
- 'Casual' => L10n::t('Casual'),
- 'Engaged' => L10n::t('Engaged'),
- 'Married' => L10n::t('Married'),
- 'Imaginarily married' => L10n::t('Imaginarily married'),
- 'Partners' => L10n::t('Partners'),
- 'Cohabiting' => L10n::t('Cohabiting'),
- 'Common law' => L10n::t('Common law'),
- 'Happy' => L10n::t('Happy'),
- 'Not looking' => L10n::t('Not looking'),
- 'Swinger' => L10n::t('Swinger'),
- 'Betrayed' => L10n::t('Betrayed'),
- 'Separated' => L10n::t('Separated'),
- 'Unstable' => L10n::t('Unstable'),
- 'Divorced' => L10n::t('Divorced'),
- 'Imaginarily divorced' => L10n::t('Imaginarily divorced'),
- 'Widowed' => L10n::t('Widowed'),
- 'Uncertain' => L10n::t('Uncertain'),
- 'It\'s complicated' => L10n::t('It\'s complicated'),
- 'Don\'t care' => L10n::t('Don\'t care'),
- 'Ask me' => L10n::t('Ask me'),
+ '' => DI::l10n()->t('No answer'),
+ 'Single' => DI::l10n()->t('Single'),
+ 'Lonely' => DI::l10n()->t('Lonely'),
+ 'In a relation' => DI::l10n()->t('In a relation'),
+ 'Has crush' => DI::l10n()->t('Has crush'),
+ 'Infatuated' => DI::l10n()->t('Infatuated'),
+ 'Dating' => DI::l10n()->t('Dating'),
+ 'Unfaithful' => DI::l10n()->t('Unfaithful'),
+ 'Sex Addict' => DI::l10n()->t('Sex Addict'),
+ 'Friends' => DI::l10n()->t('Friends'),
+ 'Friends/Benefits' => DI::l10n()->t('Friends/Benefits'),
+ 'Casual' => DI::l10n()->t('Casual'),
+ 'Engaged' => DI::l10n()->t('Engaged'),
+ 'Married' => DI::l10n()->t('Married'),
+ 'Imaginarily married' => DI::l10n()->t('Imaginarily married'),
+ 'Partners' => DI::l10n()->t('Partners'),
+ 'Cohabiting' => DI::l10n()->t('Cohabiting'),
+ 'Common law' => DI::l10n()->t('Common law'),
+ 'Happy' => DI::l10n()->t('Happy'),
+ 'Not looking' => DI::l10n()->t('Not looking'),
+ 'Swinger' => DI::l10n()->t('Swinger'),
+ 'Betrayed' => DI::l10n()->t('Betrayed'),
+ 'Separated' => DI::l10n()->t('Separated'),
+ 'Unstable' => DI::l10n()->t('Unstable'),
+ 'Divorced' => DI::l10n()->t('Divorced'),
+ 'Imaginarily divorced' => DI::l10n()->t('Imaginarily divorced'),
+ 'Widowed' => DI::l10n()->t('Widowed'),
+ 'Uncertain' => DI::l10n()->t('Uncertain'),
+ 'It\'s complicated' => DI::l10n()->t('It\'s complicated'),
+ 'Don\'t care' => DI::l10n()->t('Don\'t care'),
+ 'Ask me' => DI::l10n()->t('Ask me'),
];
Hook::callAll('marital_selector', $select);
diff --git a/src/Content/Feature.php b/src/Content/Feature.php
index af821e6c7..563c0ab92 100644
--- a/src/Content/Feature.php
+++ b/src/Content/Feature.php
@@ -79,47 +79,47 @@ class Feature
// General
'general' => [
- L10n::t('General Features'),
- //array('expire', L10n::t('Content Expiration'), L10n::t('Remove old posts/comments after a period of time')),
- ['multi_profiles', L10n::t('Multiple Profiles'), L10n::t('Ability to create multiple profiles'), false, Config::get('feature_lock', 'multi_profiles', false)],
- ['photo_location', L10n::t('Photo Location'), L10n::t("Photo metadata is normally stripped. This extracts the location \x28if present\x29 prior to stripping metadata and links it to a map."), false, Config::get('feature_lock', 'photo_location', false)],
- ['export_calendar', L10n::t('Export Public Calendar'), L10n::t('Ability for visitors to download the public calendar'), false, Config::get('feature_lock', 'export_calendar', false)],
- ['trending_tags', L10n::t('Trending Tags'), L10n::t('Show a community page widget with a list of the most popular tags in recent public posts.'), false, Config::get('feature_lock', 'trending_tags', false)],
+ DI::l10n()->t('General Features'),
+ //array('expire', DI::l10n()->t('Content Expiration'), DI::l10n()->t('Remove old posts/comments after a period of time')),
+ ['multi_profiles', DI::l10n()->t('Multiple Profiles'), DI::l10n()->t('Ability to create multiple profiles'), false, Config::get('feature_lock', 'multi_profiles', false)],
+ ['photo_location', DI::l10n()->t('Photo Location'), DI::l10n()->t("Photo metadata is normally stripped. This extracts the location \x28if present\x29 prior to stripping metadata and links it to a map."), false, Config::get('feature_lock', 'photo_location', false)],
+ ['export_calendar', DI::l10n()->t('Export Public Calendar'), DI::l10n()->t('Ability for visitors to download the public calendar'), false, Config::get('feature_lock', 'export_calendar', false)],
+ ['trending_tags', DI::l10n()->t('Trending Tags'), DI::l10n()->t('Show a community page widget with a list of the most popular tags in recent public posts.'), false, Config::get('feature_lock', 'trending_tags', false)],
],
// Post composition
'composition' => [
- L10n::t('Post Composition Features'),
- ['aclautomention', L10n::t('Auto-mention Forums'), L10n::t('Add/remove mention when a forum page is selected/deselected in ACL window.'), false, Config::get('feature_lock', 'aclautomention', false)],
- ['explicit_mentions', L10n::t('Explicit Mentions'), L10n::t('Add explicit mentions to comment box for manual control over who gets mentioned in replies.'), false, Config::get('feature_lock', 'explicit_mentions', false)],
+ DI::l10n()->t('Post Composition Features'),
+ ['aclautomention', DI::l10n()->t('Auto-mention Forums'), DI::l10n()->t('Add/remove mention when a forum page is selected/deselected in ACL window.'), false, Config::get('feature_lock', 'aclautomention', false)],
+ ['explicit_mentions', DI::l10n()->t('Explicit Mentions'), DI::l10n()->t('Add explicit mentions to comment box for manual control over who gets mentioned in replies.'), false, Config::get('feature_lock', 'explicit_mentions', false)],
],
// Network sidebar widgets
'widgets' => [
- L10n::t('Network Sidebar'),
- ['archives', L10n::t('Archives'), L10n::t('Ability to select posts by date ranges'), false, Config::get('feature_lock', 'archives', false)],
- ['networks', L10n::t('Protocol Filter'), L10n::t('Enable widget to display Network posts only from selected protocols'), false, Config::get('feature_lock', 'networks', false)],
+ DI::l10n()->t('Network Sidebar'),
+ ['archives', DI::l10n()->t('Archives'), DI::l10n()->t('Ability to select posts by date ranges'), false, Config::get('feature_lock', 'archives', false)],
+ ['networks', DI::l10n()->t('Protocol Filter'), DI::l10n()->t('Enable widget to display Network posts only from selected protocols'), false, Config::get('feature_lock', 'networks', false)],
],
// Network tabs
'net_tabs' => [
- L10n::t('Network Tabs'),
- ['new_tab', L10n::t('Network New Tab'), L10n::t("Enable tab to display only new Network posts \x28from the last 12 hours\x29"), false, Config::get('feature_lock', 'new_tab', false)],
- ['link_tab', L10n::t('Network Shared Links Tab'), L10n::t('Enable tab to display only Network posts with links in them'), false, Config::get('feature_lock', 'link_tab', false)],
+ DI::l10n()->t('Network Tabs'),
+ ['new_tab', DI::l10n()->t('Network New Tab'), DI::l10n()->t("Enable tab to display only new Network posts \x28from the last 12 hours\x29"), false, Config::get('feature_lock', 'new_tab', false)],
+ ['link_tab', DI::l10n()->t('Network Shared Links Tab'), DI::l10n()->t('Enable tab to display only Network posts with links in them'), false, Config::get('feature_lock', 'link_tab', false)],
],
// Item tools
'tools' => [
- L10n::t('Post/Comment Tools'),
- ['categories', L10n::t('Post Categories'), L10n::t('Add categories to your posts'), false, Config::get('feature_lock', 'categories', false)],
+ DI::l10n()->t('Post/Comment Tools'),
+ ['categories', DI::l10n()->t('Post Categories'), DI::l10n()->t('Add categories to your posts'), false, Config::get('feature_lock', 'categories', false)],
],
// Advanced Profile Settings
'advanced_profile' => [
- L10n::t('Advanced Profile Settings'),
- ['forumlist_profile', L10n::t('List Forums'), L10n::t('Show visitors public community forums at the Advanced Profile Page'), false, Config::get('feature_lock', 'forumlist_profile', false)],
- ['tagadelic', L10n::t('Tag Cloud'), L10n::t('Provide a personal tag cloud on your profile page'), false, Config::get('feature_lock', 'tagadelic', false)],
- ['profile_membersince', L10n::t('Display Membership Date'), L10n::t('Display membership date in profile'), false, Config::get('feature_lock', 'profile_membersince', false)],
+ DI::l10n()->t('Advanced Profile Settings'),
+ ['forumlist_profile', DI::l10n()->t('List Forums'), DI::l10n()->t('Show visitors public community forums at the Advanced Profile Page'), false, Config::get('feature_lock', 'forumlist_profile', false)],
+ ['tagadelic', DI::l10n()->t('Tag Cloud'), DI::l10n()->t('Provide a personal tag cloud on your profile page'), false, Config::get('feature_lock', 'tagadelic', false)],
+ ['profile_membersince', DI::l10n()->t('Display Membership Date'), DI::l10n()->t('Display membership date in profile'), false, Config::get('feature_lock', 'profile_membersince', false)],
],
];
diff --git a/src/Content/ForumManager.php b/src/Content/ForumManager.php
index 0c34cb94d..7c2061c47 100644
--- a/src/Content/ForumManager.php
+++ b/src/Content/ForumManager.php
@@ -127,12 +127,12 @@ class ForumManager
$o .= Renderer::replaceMacros(
$tpl,
[
- '$title' => L10n::t('Forums'),
+ '$title' => DI::l10n()->t('Forums'),
'$forums' => $entries,
- '$link_desc' => L10n::t('External link to forum'),
+ '$link_desc' => DI::l10n()->t('External link to forum'),
'$total' => $total,
'$visible_forums' => $visible_forums,
- '$showmore' => L10n::t('show more')]
+ '$showmore' => DI::l10n()->t('show more')]
);
}
diff --git a/src/Content/Nav.php b/src/Content/Nav.php
index 2cb477102..30e4a1c08 100644
--- a/src/Content/Nav.php
+++ b/src/Content/Nav.php
@@ -71,12 +71,12 @@ class Nav
'$sitelocation' => $nav_info['sitelocation'],
'$nav' => $nav_info['nav'],
'$banner' => $nav_info['banner'],
- '$emptynotifications' => L10n::t('Nothing new here'),
+ '$emptynotifications' => DI::l10n()->t('Nothing new here'),
'$userinfo' => $nav_info['userinfo'],
'$sel' => self::$selected,
'$apps' => self::getAppMenu(),
- '$clear_notifs' => L10n::t('Clear notifications'),
- '$search_hint' => L10n::t('@name, !forum, #tags, content')
+ '$clear_notifs' => DI::l10n()->t('Clear notifications'),
+ '$search_hint' => DI::l10n()->t('@name, !forum, #tags, content')
]);
Hook::callAll('page_header', $nav);
@@ -149,19 +149,19 @@ class Nav
$userinfo = null;
if (Session::isAuthenticated()) {
- $nav['logout'] = ['logout', L10n::t('Logout'), '', L10n::t('End this session')];
+ $nav['logout'] = ['logout', DI::l10n()->t('Logout'), '', DI::l10n()->t('End this session')];
} else {
- $nav['login'] = ['login', L10n::t('Login'), (DI::module()->getName() == 'login' ? 'selected' : ''), L10n::t('Sign in')];
+ $nav['login'] = ['login', DI::l10n()->t('Login'), (DI::module()->getName() == 'login' ? 'selected' : ''), DI::l10n()->t('Sign in')];
}
if (local_user()) {
// user menu
- $nav['usermenu'][] = ['profile/' . $a->user['nickname'], L10n::t('Status'), '', L10n::t('Your posts and conversations')];
- $nav['usermenu'][] = ['profile/' . $a->user['nickname'] . '?tab=profile', L10n::t('Profile'), '', L10n::t('Your profile page')];
- $nav['usermenu'][] = ['photos/' . $a->user['nickname'], L10n::t('Photos'), '', L10n::t('Your photos')];
- $nav['usermenu'][] = ['videos/' . $a->user['nickname'], L10n::t('Videos'), '', L10n::t('Your videos')];
- $nav['usermenu'][] = ['events/', L10n::t('Events'), '', L10n::t('Your events')];
- $nav['usermenu'][] = ['notes/', L10n::t('Personal notes'), '', L10n::t('Your personal notes')];
+ $nav['usermenu'][] = ['profile/' . $a->user['nickname'], DI::l10n()->t('Status'), '', DI::l10n()->t('Your posts and conversations')];
+ $nav['usermenu'][] = ['profile/' . $a->user['nickname'] . '?tab=profile', DI::l10n()->t('Profile'), '', DI::l10n()->t('Your profile page')];
+ $nav['usermenu'][] = ['photos/' . $a->user['nickname'], DI::l10n()->t('Photos'), '', DI::l10n()->t('Your photos')];
+ $nav['usermenu'][] = ['videos/' . $a->user['nickname'], DI::l10n()->t('Videos'), '', DI::l10n()->t('Your videos')];
+ $nav['usermenu'][] = ['events/', DI::l10n()->t('Events'), '', DI::l10n()->t('Your events')];
+ $nav['usermenu'][] = ['notes/', DI::l10n()->t('Personal notes'), '', DI::l10n()->t('Your personal notes')];
// user info
$contact = DBA::selectFirst('contact', ['micro'], ['uid' => $a->user['uid'], 'self' => true]);
@@ -178,34 +178,34 @@ class Nav
}
if ((DI::module()->getName() != 'home') && (! (local_user()))) {
- $nav['home'] = [$homelink, L10n::t('Home'), '', L10n::t('Home Page')];
+ $nav['home'] = [$homelink, DI::l10n()->t('Home'), '', DI::l10n()->t('Home Page')];
}
if (intval(Config::get('config', 'register_policy')) === \Friendica\Module\Register::OPEN && !Session::isAuthenticated()) {
- $nav['register'] = ['register', L10n::t('Register'), '', L10n::t('Create an account')];
+ $nav['register'] = ['register', DI::l10n()->t('Register'), '', DI::l10n()->t('Create an account')];
}
$help_url = 'help';
if (!Config::get('system', 'hide_help')) {
- $nav['help'] = [$help_url, L10n::t('Help'), '', L10n::t('Help and documentation')];
+ $nav['help'] = [$help_url, DI::l10n()->t('Help'), '', DI::l10n()->t('Help and documentation')];
}
if (count(self::getAppMenu()) > 0) {
- $nav['apps'] = ['apps', L10n::t('Apps'), '', L10n::t('Addon applications, utilities, games')];
+ $nav['apps'] = ['apps', DI::l10n()->t('Apps'), '', DI::l10n()->t('Addon applications, utilities, games')];
}
if (local_user() || !Config::get('system', 'local_search')) {
- $nav['search'] = ['search', L10n::t('Search'), '', L10n::t('Search site content')];
+ $nav['search'] = ['search', DI::l10n()->t('Search'), '', DI::l10n()->t('Search site content')];
$nav['searchoption'] = [
- L10n::t('Full Text'),
- L10n::t('Tags'),
- L10n::t('Contacts')
+ DI::l10n()->t('Full Text'),
+ DI::l10n()->t('Tags'),
+ DI::l10n()->t('Contacts')
];
if (Config::get('system', 'poco_local_search')) {
- $nav['searchoption'][] = L10n::t('Forums');
+ $nav['searchoption'][] = DI::l10n()->t('Forums');
}
}
@@ -220,59 +220,59 @@ class Nav
if ((local_user() || Config::get('system', 'community_page_style') != CP_NO_COMMUNITY_PAGE) &&
!(Config::get('system', 'community_page_style') == CP_NO_INTERNAL_COMMUNITY)) {
- $nav['community'] = ['community', L10n::t('Community'), '', L10n::t('Conversations on this and other servers')];
+ $nav['community'] = ['community', DI::l10n()->t('Community'), '', DI::l10n()->t('Conversations on this and other servers')];
}
if (local_user()) {
- $nav['events'] = ['events', L10n::t('Events'), '', L10n::t('Events and Calendar')];
+ $nav['events'] = ['events', DI::l10n()->t('Events'), '', DI::l10n()->t('Events and Calendar')];
}
- $nav['directory'] = [$gdirpath, L10n::t('Directory'), '', L10n::t('People directory')];
+ $nav['directory'] = [$gdirpath, DI::l10n()->t('Directory'), '', DI::l10n()->t('People directory')];
- $nav['about'] = ['friendica', L10n::t('Information'), '', L10n::t('Information about this friendica instance')];
+ $nav['about'] = ['friendica', DI::l10n()->t('Information'), '', DI::l10n()->t('Information about this friendica instance')];
if (Config::get('system', 'tosdisplay')) {
- $nav['tos'] = ['tos', L10n::t('Terms of Service'), '', L10n::t('Terms of Service of this Friendica instance')];
+ $nav['tos'] = ['tos', DI::l10n()->t('Terms of Service'), '', DI::l10n()->t('Terms of Service of this Friendica instance')];
}
// The following nav links are only show to logged in users
if (local_user()) {
- $nav['network'] = ['network', L10n::t('Network'), '', L10n::t('Conversations from your friends')];
+ $nav['network'] = ['network', DI::l10n()->t('Network'), '', DI::l10n()->t('Conversations from your friends')];
- $nav['home'] = ['profile/' . $a->user['nickname'], L10n::t('Home'), '', L10n::t('Your posts and conversations')];
+ $nav['home'] = ['profile/' . $a->user['nickname'], DI::l10n()->t('Home'), '', DI::l10n()->t('Your posts and conversations')];
// Don't show notifications for public communities
if (Session::get('page_flags', '') != User::PAGE_FLAGS_COMMUNITY) {
- $nav['introductions'] = ['notifications/intros', L10n::t('Introductions'), '', L10n::t('Friend Requests')];
- $nav['notifications'] = ['notifications', L10n::t('Notifications'), '', L10n::t('Notifications')];
- $nav['notifications']['all'] = ['notifications/system', L10n::t('See all notifications'), '', ''];
- $nav['notifications']['mark'] = ['', L10n::t('Mark as seen'), '', L10n::t('Mark all system notifications seen')];
+ $nav['introductions'] = ['notifications/intros', DI::l10n()->t('Introductions'), '', DI::l10n()->t('Friend Requests')];
+ $nav['notifications'] = ['notifications', DI::l10n()->t('Notifications'), '', DI::l10n()->t('Notifications')];
+ $nav['notifications']['all'] = ['notifications/system', DI::l10n()->t('See all notifications'), '', ''];
+ $nav['notifications']['mark'] = ['', DI::l10n()->t('Mark as seen'), '', DI::l10n()->t('Mark all system notifications seen')];
}
- $nav['messages'] = ['message', L10n::t('Messages'), '', L10n::t('Private mail')];
- $nav['messages']['inbox'] = ['message', L10n::t('Inbox'), '', L10n::t('Inbox')];
- $nav['messages']['outbox'] = ['message/sent', L10n::t('Outbox'), '', L10n::t('Outbox')];
- $nav['messages']['new'] = ['message/new', L10n::t('New Message'), '', L10n::t('New Message')];
+ $nav['messages'] = ['message', DI::l10n()->t('Messages'), '', DI::l10n()->t('Private mail')];
+ $nav['messages']['inbox'] = ['message', DI::l10n()->t('Inbox'), '', DI::l10n()->t('Inbox')];
+ $nav['messages']['outbox'] = ['message/sent', DI::l10n()->t('Outbox'), '', DI::l10n()->t('Outbox')];
+ $nav['messages']['new'] = ['message/new', DI::l10n()->t('New Message'), '', DI::l10n()->t('New Message')];
if (is_array($a->identities) && count($a->identities) > 1) {
- $nav['delegation'] = ['delegation', L10n::t('Delegation'), '', L10n::t('Manage other pages')];
+ $nav['delegation'] = ['delegation', DI::l10n()->t('Delegation'), '', DI::l10n()->t('Manage other pages')];
}
- $nav['settings'] = ['settings', L10n::t('Settings'), '', L10n::t('Account settings')];
+ $nav['settings'] = ['settings', DI::l10n()->t('Settings'), '', DI::l10n()->t('Account settings')];
if (Feature::isEnabled(local_user(), 'multi_profiles')) {
- $nav['profiles'] = ['profiles', L10n::t('Profiles'), '', L10n::t('Manage/Edit Profiles')];
+ $nav['profiles'] = ['profiles', DI::l10n()->t('Profiles'), '', DI::l10n()->t('Manage/Edit Profiles')];
}
- $nav['contacts'] = ['contact', L10n::t('Contacts'), '', L10n::t('Manage/edit friends and contacts')];
+ $nav['contacts'] = ['contact', DI::l10n()->t('Contacts'), '', DI::l10n()->t('Manage/edit friends and contacts')];
}
// Show the link to the admin configuration page if user is admin
if (is_site_admin()) {
- $nav['admin'] = ['admin/', L10n::t('Admin'), '', L10n::t('Site setup and configuration')];
+ $nav['admin'] = ['admin/', DI::l10n()->t('Admin'), '', DI::l10n()->t('Site setup and configuration')];
}
- $nav['navigation'] = ['navigation/', L10n::t('Navigation'), '', L10n::t('Site map')];
+ $nav['navigation'] = ['navigation/', DI::l10n()->t('Navigation'), '', DI::l10n()->t('Site map')];
// Provide a banner/logo/whatever
$banner = Config::get('system', 'banner');
diff --git a/src/Content/OEmbed.php b/src/Content/OEmbed.php
index 64182c70e..3eceb21c2 100644
--- a/src/Content/OEmbed.php
+++ b/src/Content/OEmbed.php
@@ -251,7 +251,7 @@ class OEmbed
{
$stopoembed = Config::get("system", "no_oembed");
if ($stopoembed == true) {
- return preg_replace("/\[embed\](.+?)\[\/embed\]/is", "
" . L10n::t('Embedding disabled') . " : $1 ", $text);
+ return preg_replace("/\[embed\](.+?)\[\/embed\]/is", "
" . DI::l10n()->t('Embedding disabled') . " : $1 ", $text);
}
return preg_replace_callback("/\[embed\](.+?)\[\/embed\]/is", ['self', 'replaceCallback'], $text);
}
@@ -373,7 +373,7 @@ class OEmbed
$width = '100%';
$src = DI::baseUrl() . '/oembed/' . Strings::base64UrlEncode($src);
- return '
';
+ return '
';
}
/**
diff --git a/src/Content/Pager.php b/src/Content/Pager.php
index 327272e28..f8dace08c 100644
--- a/src/Content/Pager.php
+++ b/src/Content/Pager.php
@@ -150,12 +150,12 @@ class Pager
'class' => 'pager',
'prev' => [
'url' => Strings::ensureQueryParameter($this->baseQueryString . '&page=' . ($this->getPage() - 1)),
- 'text' => L10n::t('newer'),
+ 'text' => DI::l10n()->t('newer'),
'class' => 'previous' . ($this->getPage() == 1 ? ' disabled' : '')
],
'next' => [
'url' => Strings::ensureQueryParameter($this->baseQueryString . '&page=' . ($this->getPage() + 1)),
- 'text' => L10n::t('older'),
+ 'text' => DI::l10n()->t('older'),
'class' => 'next' . ($displayedItemCount < $this->getItemsPerPage() ? ' disabled' : '')
]
];
@@ -195,12 +195,12 @@ class Pager
if ($totalItemCount > $this->getItemsPerPage()) {
$data['first'] = [
'url' => Strings::ensureQueryParameter($this->baseQueryString . '&page=1'),
- 'text' => L10n::t('first'),
+ 'text' => DI::l10n()->t('first'),
'class' => $this->getPage() == 1 ? 'disabled' : ''
];
$data['prev'] = [
'url' => Strings::ensureQueryParameter($this->baseQueryString . '&page=' . ($this->getPage() - 1)),
- 'text' => L10n::t('prev'),
+ 'text' => DI::l10n()->t('prev'),
'class' => $this->getPage() == 1 ? 'disabled' : ''
];
@@ -255,12 +255,12 @@ class Pager
$data['next'] = [
'url' => Strings::ensureQueryParameter($this->baseQueryString . '&page=' . ($this->getPage() + 1)),
- 'text' => L10n::t('next'),
+ 'text' => DI::l10n()->t('next'),
'class' => $this->getPage() == $lastpage ? 'disabled' : ''
];
$data['last'] = [
'url' => Strings::ensureQueryParameter($this->baseQueryString . '&page=' . $lastpage),
- 'text' => L10n::t('last'),
+ 'text' => DI::l10n()->t('last'),
'class' => $this->getPage() == $lastpage ? 'disabled' : ''
];
}
diff --git a/src/Content/Text/BBCode.php b/src/Content/Text/BBCode.php
index c429a34d4..4a0a329b4 100644
--- a/src/Content/Text/BBCode.php
+++ b/src/Content/Text/BBCode.php
@@ -907,7 +907,7 @@ class BBCode
// it loops over the array starting from the first element and going sequentially
// to the last element
$newbody = str_replace('[$#saved_image' . $cnt . '#$]',
- '
', $newbody);
+ '
', $newbody);
$cnt++;
}
@@ -1024,7 +1024,7 @@ class BBCode
break;
case 4:
$headline = '
' . html_entity_decode('♲ ', ENT_QUOTES, 'UTF-8');
- $headline .= L10n::t('%2$s %3$s', $attributes['link'], $mention, $attributes['posted']);
+ $headline .= DI::l10n()->t('%2$s %3$s', $attributes['link'], $mention, $attributes['posted']);
$headline .= ':
' . "\n";
$text = ($is_quote_share? '
' : '') . $headline . '
' . trim($content) . ' ' . "\n";
@@ -1521,7 +1521,7 @@ class BBCode
$text = preg_replace("/\[font=(.*?)\](.*?)\[\/font\]/sm", "
$2 ", $text);
// Declare the format for [spoiler] layout
- $SpoilerLayout = '
' . L10n::t('Click to open/close') . ' $1';
+ $SpoilerLayout = '
' . DI::l10n()->t('Click to open/close') . ' $1';
// Check for [spoiler] text
// handle nested quotes
@@ -1552,7 +1552,7 @@ class BBCode
// Check for [quote=Author] text
- $t_wrote = L10n::t('$1 wrote:');
+ $t_wrote = DI::l10n()->t('$1 wrote:');
// handle nested quotes
$endlessloop = 0;
@@ -1603,12 +1603,12 @@ class BBCode
$text
);
- $text = preg_replace("/\[img\](.*?)\[\/img\]/ism", '
', $text);
- $text = preg_replace("/\[zmg\](.*?)\[\/zmg\]/ism", '
', $text);
+ $text = preg_replace("/\[img\](.*?)\[\/img\]/ism", '
', $text);
+ $text = preg_replace("/\[zmg\](.*?)\[\/zmg\]/ism", '
', $text);
- $text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism", '
', $text);
- $text = preg_replace("/\[crypt(.*?)\](.*?)\[\/crypt\]/ism", '
', $text);
- //$Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism", '
', $Text);
+ $text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism", '
', $text);
+ $text = preg_replace("/\[crypt(.*?)\](.*?)\[\/crypt\]/ism", '
', $text);
+ //$Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism", '
', $Text);
// Simplify "video" element
$text = preg_replace('(\[video.*?\ssrc\s?=\s?([^\s\]]+).*?\].*?\[/video\])ism', '[video]$1[/video]', $text);
@@ -1832,7 +1832,7 @@ class BBCode
array_walk($allowed_src_protocols, function(&$value) { $value = preg_quote($value, '#');});
$text = preg_replace('#<([^>]*?)(src)="(?!' . implode('|', $allowed_src_protocols) . ')(.*?)"(.*?)>#ism',
- '<$1$2=""$4 data-original-src="$3" class="invalid-src" title="' . L10n::t('Invalid source protocol') . '">', $text);
+ '<$1$2=""$4 data-original-src="$3" class="invalid-src" title="' . DI::l10n()->t('Invalid source protocol') . '">', $text);
// sanitize href attributes (only whitelisted protocols URLs)
// default value for backward compatibility
@@ -1847,7 +1847,7 @@ class BBCode
array_walk($allowed_link_protocols, function(&$value) { $value = preg_quote($value, '#');});
$regex = '#<([^>]*?)(href)="(?!' . implode('|', $allowed_link_protocols) . ')(.*?)"(.*?)>#ism';
- $text = preg_replace($regex, '<$1$2="javascript:void(0)"$4 data-original-href="$3" class="invalid-href" title="' . L10n::t('Invalid link protocol') . '">', $text);
+ $text = preg_replace($regex, '<$1$2="javascript:void(0)"$4 data-original-href="$3" class="invalid-href" title="' . DI::l10n()->t('Invalid link protocol') . '">', $text);
// Shared content
$text = self::convertShare(
diff --git a/src/Content/Text/HTML.php b/src/Content/Text/HTML.php
index 65d971489..1cd076139 100644
--- a/src/Content/Text/HTML.php
+++ b/src/Content/Text/HTML.php
@@ -799,8 +799,8 @@ class HTML
{
$tpl = Renderer::getMarkupTemplate("scroll_loader.tpl");
return Renderer::replaceMacros($tpl, [
- 'wait' => L10n::t('Loading more entries...'),
- 'end' => L10n::t('The end')
+ 'wait' => DI::l10n()->t('Loading more entries...'),
+ 'end' => DI::l10n()->t('The end')
]);
}
@@ -893,28 +893,28 @@ class HTML
if (strpos($s, '#') === 0) {
$mode = 'tag';
}
- $save_label = $mode === 'text' ? L10n::t('Save') : L10n::t('Follow');
+ $save_label = $mode === 'text' ? DI::l10n()->t('Save') : DI::l10n()->t('Follow');
$values = [
'$s' => $s,
'$q' => urlencode($s),
'$id' => $id,
- '$search_label' => L10n::t('Search'),
+ '$search_label' => DI::l10n()->t('Search'),
'$save_label' => $save_label,
- '$search_hint' => L10n::t('@name, !forum, #tags, content'),
+ '$search_hint' => DI::l10n()->t('@name, !forum, #tags, content'),
'$mode' => $mode,
'$return_url' => urlencode('search?q=' . urlencode($s)),
];
if (!$aside) {
$values['$search_options'] = [
- 'fulltext' => L10n::t('Full Text'),
- 'tags' => L10n::t('Tags'),
- 'contacts' => L10n::t('Contacts')
+ 'fulltext' => DI::l10n()->t('Full Text'),
+ 'tags' => DI::l10n()->t('Tags'),
+ 'contacts' => DI::l10n()->t('Contacts')
];
if (Config::get('system', 'poco_local_search')) {
- $values['$searchoption']['forums'] = L10n::t('Forums');
+ $values['$searchoption']['forums'] = DI::l10n()->t('Forums');
}
}
@@ -951,7 +951,7 @@ class HTML
$html = Renderer::replaceMacros($tpl, [
'$reasons' => $reasons,
'$rnd' => Strings::getRandomHex(8),
- '$openclose' => L10n::t('Click to open/close'),
+ '$openclose' => DI::l10n()->t('Click to open/close'),
'$html' => $html
]);
}
diff --git a/src/Content/Widget.php b/src/Content/Widget.php
index 2ae90ea76..7c412ae8f 100644
--- a/src/Content/Widget.php
+++ b/src/Content/Widget.php
@@ -34,11 +34,11 @@ class Widget
public static function follow($value = "")
{
return Renderer::replaceMacros(Renderer::getMarkupTemplate('widget/follow.tpl'), array(
- '$connect' => L10n::t('Add New Contact'),
- '$desc' => L10n::t('Enter address or web location'),
- '$hint' => L10n::t('Example: bob@example.com, http://example.com/barbara'),
+ '$connect' => DI::l10n()->t('Add New Contact'),
+ '$desc' => DI::l10n()->t('Enter address or web location'),
+ '$hint' => DI::l10n()->t('Example: bob@example.com, http://example.com/barbara'),
'$value' => $value,
- '$follow' => L10n::t('Connect')
+ '$follow' => DI::l10n()->t('Connect')
));
}
@@ -59,18 +59,18 @@ class Widget
}
$nv = [];
- $nv['findpeople'] = L10n::t('Find People');
- $nv['desc'] = L10n::t('Enter name or interest');
- $nv['label'] = L10n::t('Connect/Follow');
- $nv['hint'] = L10n::t('Examples: Robert Morgenstein, Fishing');
- $nv['findthem'] = L10n::t('Find');
- $nv['suggest'] = L10n::t('Friend Suggestions');
- $nv['similar'] = L10n::t('Similar Interests');
- $nv['random'] = L10n::t('Random Profile');
- $nv['inv'] = L10n::t('Invite Friends');
- $nv['directory'] = L10n::t('Global Directory');
+ $nv['findpeople'] = DI::l10n()->t('Find People');
+ $nv['desc'] = DI::l10n()->t('Enter name or interest');
+ $nv['label'] = DI::l10n()->t('Connect/Follow');
+ $nv['hint'] = DI::l10n()->t('Examples: Robert Morgenstein, Fishing');
+ $nv['findthem'] = DI::l10n()->t('Find');
+ $nv['suggest'] = DI::l10n()->t('Friend Suggestions');
+ $nv['similar'] = DI::l10n()->t('Similar Interests');
+ $nv['random'] = DI::l10n()->t('Random Profile');
+ $nv['inv'] = DI::l10n()->t('Invite Friends');
+ $nv['directory'] = DI::l10n()->t('Global Directory');
$nv['global_dir'] = $global_dir;
- $nv['local_directory'] = L10n::t('Local Directory');
+ $nv['local_directory'] = DI::l10n()->t('Local Directory');
$aside = [];
$aside['$nv'] = $nv;
@@ -191,16 +191,16 @@ class Widget
}
$options = [
- ['ref' => 'followers', 'name' => L10n::t('Followers')],
- ['ref' => 'following', 'name' => L10n::t('Following')],
- ['ref' => 'mutuals', 'name' => L10n::t('Mutual friends')],
+ ['ref' => 'followers', 'name' => DI::l10n()->t('Followers')],
+ ['ref' => 'following', 'name' => DI::l10n()->t('Following')],
+ ['ref' => 'mutuals', 'name' => DI::l10n()->t('Mutual friends')],
];
return self::filter(
'rel',
- L10n::t('Relationships'),
+ DI::l10n()->t('Relationships'),
'',
- L10n::t('All Contacts'),
+ DI::l10n()->t('All Contacts'),
$baseurl,
$options,
$selected
@@ -243,9 +243,9 @@ class Widget
return self::filter(
'nets',
- L10n::t('Protocols'),
+ DI::l10n()->t('Protocols'),
'',
- L10n::t('All Protocols'),
+ DI::l10n()->t('All Protocols'),
$baseurl,
$nets,
$selected
@@ -282,9 +282,9 @@ class Widget
return self::filter(
'file',
- L10n::t('Saved Folders'),
+ DI::l10n()->t('Saved Folders'),
'',
- L10n::t('Everything'),
+ DI::l10n()->t('Everything'),
$baseurl,
$terms,
$selected
@@ -321,9 +321,9 @@ class Widget
return self::filter(
'category',
- L10n::t('Categories'),
+ DI::l10n()->t('Categories'),
'',
- L10n::t('Everything'),
+ DI::l10n()->t('Everything'),
$baseurl,
$terms,
$selected
@@ -403,7 +403,7 @@ class Widget
'$uid' => $profile_uid,
'$cid' => (($cid) ? $cid : '0'),
'$linkmore' => (($t > 5) ? 'true' : ''),
- '$more' => L10n::t('show more'),
+ '$more' => DI::l10n()->t('show more'),
'$items' => $entries
]);
}
@@ -496,13 +496,13 @@ class Widget
$cutoff = array_key_exists($cutoff_year, $ret);
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('widget/posted_date.tpl'),[
- '$title' => L10n::t('Archives'),
+ '$title' => DI::l10n()->t('Archives'),
'$size' => $visible_years,
'$cutoff_year' => $cutoff_year,
'$cutoff' => $cutoff,
'$url' => $url,
'$dates' => $ret,
- '$showmore' => L10n::t('show more')
+ '$showmore' => DI::l10n()->t('show more')
]);
return $o;
diff --git a/src/Content/Widget/CalendarExport.php b/src/Content/Widget/CalendarExport.php
index ff3d3f4b8..293f9ae0e 100644
--- a/src/Content/Widget/CalendarExport.php
+++ b/src/Content/Widget/CalendarExport.php
@@ -62,9 +62,9 @@ class CalendarExport
$tpl = Renderer::getMarkupTemplate("widget/events.tpl");
$return = Renderer::replaceMacros($tpl, [
- '$etitle' => L10n::t("Export"),
- '$export_ical' => L10n::t("Export calendar as ical"),
- '$export_csv' => L10n::t("Export calendar as csv"),
+ '$etitle' => DI::l10n()->t("Export"),
+ '$export_ical' => DI::l10n()->t("Export calendar as ical"),
+ '$export_csv' => DI::l10n()->t("Export calendar as csv"),
'$user' => $user
]);
diff --git a/src/Content/Widget/ContactBlock.php b/src/Content/Widget/ContactBlock.php
index bd4d10fd3..67f8d9ac5 100644
--- a/src/Content/Widget/ContactBlock.php
+++ b/src/Content/Widget/ContactBlock.php
@@ -55,7 +55,7 @@ class ContactBlock
'network' => [Protocol::DFRN, Protocol::ACTIVITYPUB, Protocol::OSTATUS, Protocol::DIASPORA, Protocol::FEED],
]);
- $contacts_title = L10n::t('No contacts');
+ $contacts_title = DI::l10n()->t('No contacts');
$micropro = [];
@@ -106,7 +106,7 @@ class ContactBlock
$o = Renderer::replaceMacros($tpl, [
'$contacts' => $contacts_title,
'$nickname' => $profile['nickname'],
- '$viewcontacts' => L10n::t('View Contacts'),
+ '$viewcontacts' => DI::l10n()->t('View Contacts'),
'$micropro' => $micropro,
]);
diff --git a/src/Content/Widget/SavedSearches.php b/src/Content/Widget/SavedSearches.php
index 7f7c171e0..69d667caa 100644
--- a/src/Content/Widget/SavedSearches.php
+++ b/src/Content/Widget/SavedSearches.php
@@ -26,7 +26,7 @@ class SavedSearches
'id' => $saved_search['id'],
'term' => $saved_search['term'],
'encodedterm' => urlencode($saved_search['term']),
- 'delete' => L10n::t('Remove term'),
+ 'delete' => DI::l10n()->t('Remove term'),
'selected' => $search == $saved_search['term'],
];
}
@@ -34,7 +34,7 @@ class SavedSearches
$tpl = Renderer::getMarkupTemplate('widget/saved_searches.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Saved Searches'),
+ '$title' => DI::l10n()->t('Saved Searches'),
'$add' => '',
'$searchbox' => '',
'$saved' => $saved,
diff --git a/src/Content/Widget/TagCloud.php b/src/Content/Widget/TagCloud.php
index b29e62780..612ae792f 100644
--- a/src/Content/Widget/TagCloud.php
+++ b/src/Content/Widget/TagCloud.php
@@ -50,7 +50,7 @@ class TagCloud
$tpl = Renderer::getMarkupTemplate('widget/tagcloud.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Tags'),
+ '$title' => DI::l10n()->t('Tags'),
'$tags' => $tags
]);
}
diff --git a/src/Content/Widget/TrendingTags.php b/src/Content/Widget/TrendingTags.php
index 4ac8a1119..561dec00c 100644
--- a/src/Content/Widget/TrendingTags.php
+++ b/src/Content/Widget/TrendingTags.php
@@ -30,7 +30,7 @@ class TrendingTags
$tpl = Renderer::getMarkupTemplate('widget/trending_tags.tpl');
$o = Renderer::replaceMacros($tpl, [
'$title' => L10n::tt('Trending Tags (last %d hour)', 'Trending Tags (last %d hours)', $period),
- '$more' => L10n::t('More Trending Tags'),
+ '$more' => DI::l10n()->t('More Trending Tags'),
'$tags' => $tags,
]);
diff --git a/src/Core/ACL.php b/src/Core/ACL.php
index d4148d6ba..1757c50d7 100644
--- a/src/Core/ACL.php
+++ b/src/Core/ACL.php
@@ -266,14 +266,14 @@ class ACL
$acl_groups = [
[
'id' => Group::FOLLOWERS,
- 'name' => L10n::t('Followers'),
+ 'name' => DI::l10n()->t('Followers'),
'addr' => '',
'micro' => 'images/twopeople.png',
'type' => 'group',
],
[
'id' => Group::MUTUALS,
- 'name' => L10n::t('Mutuals'),
+ 'name' => DI::l10n()->t('Mutuals'),
'addr' => '',
'micro' => 'images/twopeople.png',
'type' => 'group',
@@ -363,7 +363,7 @@ class ACL
'type' => 'checkbox',
'field' => [
'pubmail_enable',
- L10n::t('Post to Email'),
+ DI::l10n()->t('Post to Email'),
$pubmail_enabled
]
];
@@ -381,16 +381,16 @@ class ACL
$tpl = Renderer::getMarkupTemplate('acl_selector.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$public_title' => L10n::t('Public'),
- '$public_desc' => L10n::t('This content will be shown to all your followers and can be seen in the community pages and by anyone with its link.'),
- '$custom_title' => L10n::t('Limited/Private'),
- '$custom_desc' => L10n::t('This content will be shown only to the people in the first box, to the exception of the people mentioned in the second box. It won\'t appear anywhere public.'),
- '$allow_label' => L10n::t('Show to:'),
- '$deny_label' => L10n::t('Except to:'),
- '$emailcc' => L10n::t('CC: email addresses'),
- '$emtitle' => L10n::t('Example: bob@example.com, mary@example.com'),
- '$jotnets_summary' => L10n::t('Connectors'),
- '$jotnets_disabled_label' => L10n::t('Connectors disabled, since "%s" is enabled.', L10n::t('Hide your profile details from unknown viewers?')),
+ '$public_title' => DI::l10n()->t('Public'),
+ '$public_desc' => DI::l10n()->t('This content will be shown to all your followers and can be seen in the community pages and by anyone with its link.'),
+ '$custom_title' => DI::l10n()->t('Limited/Private'),
+ '$custom_desc' => DI::l10n()->t('This content will be shown only to the people in the first box, to the exception of the people mentioned in the second box. It won\'t appear anywhere public.'),
+ '$allow_label' => DI::l10n()->t('Show to:'),
+ '$deny_label' => DI::l10n()->t('Except to:'),
+ '$emailcc' => DI::l10n()->t('CC: email addresses'),
+ '$emtitle' => DI::l10n()->t('Example: bob@example.com, mary@example.com'),
+ '$jotnets_summary' => DI::l10n()->t('Connectors'),
+ '$jotnets_disabled_label' => DI::l10n()->t('Connectors disabled, since "%s" is enabled.', DI::l10n()->t('Hide your profile details from unknown viewers?')),
'$visibility' => $visibility,
'$acl_contacts' => $acl_contacts,
'$acl_groups' => $acl_groups,
diff --git a/src/Core/Installer.php b/src/Core/Installer.php
index 8bdb00f04..3e790e2e3 100644
--- a/src/Core/Installer.php
+++ b/src/Core/Installer.php
@@ -159,7 +159,7 @@ class Installer
$result = file_put_contents($basepath . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'local.config.php', $txt);
if (!$result) {
- $this->addCheck(L10n::t('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.'), false, false, htmlentities($txt, ENT_COMPAT, 'UTF-8'));
+ $this->addCheck(DI::l10n()->t('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.'), false, false, htmlentities($txt, ENT_COMPAT, 'UTF-8'));
}
return $result;
@@ -178,8 +178,8 @@ class Installer
$result = DBStructure::update($basePath, false, true, true);
if ($result) {
- $txt = L10n::t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL;
- $txt .= L10n::t('Please see the file "INSTALL.txt".');
+ $txt = DI::l10n()->t('You may need to import the file "database.sql" manually using phpmyadmin or mysql.') . EOL;
+ $txt .= DI::l10n()->t('Please see the file "INSTALL.txt".');
$this->addCheck($txt, false, true, htmlentities($result, ENT_COMPAT, 'UTF-8'));
@@ -240,18 +240,18 @@ class Installer
$help = "";
if (!$passed) {
- $help .= L10n::t('Could not find a command line version of PHP in the web server PATH.') . EOL;
- $help .= L10n::t("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
'Setup the worker' ") . EOL;
+ $help .= DI::l10n()->t('Could not find a command line version of PHP in the web server PATH.') . EOL;
+ $help .= DI::l10n()->t("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
'Setup the worker' ") . EOL;
$help .= EOL . EOL;
$tpl = Renderer::getMarkupTemplate('field_input.tpl');
/// @todo Separate backend Installer class and presentation layer/view
$help .= Renderer::replaceMacros($tpl, [
- '$field' => ['config-php_path', L10n::t('PHP executable path'), $phppath, L10n::t('Enter full path to php executable. You can leave this blank to continue the installation.')],
+ '$field' => ['config-php_path', DI::l10n()->t('PHP executable path'), $phppath, DI::l10n()->t('Enter full path to php executable. You can leave this blank to continue the installation.')],
]);
$phppath = "";
}
- $this->addCheck(L10n::t('Command line PHP') . ($passed ? " (
$phppath )" : ""), $passed, false, $help);
+ $this->addCheck(DI::l10n()->t('Command line PHP') . ($passed ? " (
$phppath )" : ""), $passed, false, $help);
if ($passed) {
$cmd = "$phppath -v";
@@ -260,10 +260,10 @@ class Installer
list($result) = explode("\n", $result);
$help = "";
if (!$passed2) {
- $help .= L10n::t("PHP executable is not the php cli binary \x28could be cgi-fgci version\x29") . EOL;
- $help .= L10n::t('Found PHP version: ') . "
$result ";
+ $help .= DI::l10n()->t("PHP executable is not the php cli binary \x28could be cgi-fgci version\x29") . EOL;
+ $help .= DI::l10n()->t('Found PHP version: ') . "
$result ";
}
- $this->addCheck(L10n::t('PHP cli binary'), $passed2, true, $help);
+ $this->addCheck(DI::l10n()->t('PHP cli binary'), $passed2, true, $help);
} else {
// return if it was required
return !$required;
@@ -276,13 +276,13 @@ class Installer
$passed3 = $result == $str;
$help = "";
if (!$passed3) {
- $help .= L10n::t('The command line version of PHP on your system does not have "register_argc_argv" enabled.') . EOL;
- $help .= L10n::t('This is required for message delivery to work.');
+ $help .= DI::l10n()->t('The command line version of PHP on your system does not have "register_argc_argv" enabled.') . EOL;
+ $help .= DI::l10n()->t('This is required for message delivery to work.');
} else {
$this->phppath = $phppath;
}
- $this->addCheck(L10n::t('PHP register_argc_argv'), $passed3, true, $help);
+ $this->addCheck(DI::l10n()->t('PHP register_argc_argv'), $passed3, true, $help);
}
// passed2 & passed3 are required if first check passed
@@ -314,11 +314,11 @@ class Installer
// Get private key
if (!$res) {
- $help .= L10n::t('Error: the "openssl_pkey_new" function on this system is not able to generate encryption keys') . EOL;
- $help .= L10n::t('If running under Windows, please see "http://www.php.net/manual/en/openssl.installation.php".');
+ $help .= DI::l10n()->t('Error: the "openssl_pkey_new" function on this system is not able to generate encryption keys') . EOL;
+ $help .= DI::l10n()->t('If running under Windows, please see "http://www.php.net/manual/en/openssl.installation.php".');
$status = false;
}
- $this->addCheck(L10n::t('Generate encryption keys'), $res, true, $help);
+ $this->addCheck(DI::l10n()->t('Generate encryption keys'), $res, true, $help);
return $status;
}
@@ -370,27 +370,27 @@ class Installer
$status = true;
if (function_exists('apache_get_modules')) {
if (!in_array('mod_rewrite', apache_get_modules())) {
- $help = L10n::t('Error: Apache webserver mod-rewrite module is required but not installed.');
+ $help = DI::l10n()->t('Error: Apache webserver mod-rewrite module is required but not installed.');
$status = false;
$returnVal = false;
}
}
- $this->addCheck(L10n::t('Apache mod_rewrite module'), $status, true, $help);
+ $this->addCheck(DI::l10n()->t('Apache mod_rewrite module'), $status, true, $help);
$help = '';
$status = true;
if (!function_exists('mysqli_connect') && !class_exists('pdo')) {
$status = false;
- $help = L10n::t('Error: PDO or MySQLi PHP module required but not installed.');
+ $help = DI::l10n()->t('Error: PDO or MySQLi PHP module required but not installed.');
$returnVal = false;
} else {
if (!function_exists('mysqli_connect') && class_exists('pdo') && !in_array('mysql', \PDO::getAvailableDrivers())) {
$status = false;
- $help = L10n::t('Error: The MySQL driver for PDO is not installed.');
+ $help = DI::l10n()->t('Error: The MySQL driver for PDO is not installed.');
$returnVal = false;
}
}
- $this->addCheck(L10n::t('PDO or MySQLi PHP module'), $status, true, $help);
+ $this->addCheck(DI::l10n()->t('PDO or MySQLi PHP module'), $status, true, $help);
// check for XML DOM Documents being able to be generated
$help = '';
@@ -398,64 +398,64 @@ class Installer
try {
new DOMDocument();
} catch (Exception $e) {
- $help = L10n::t('Error, XML PHP module required but not installed.');
+ $help = DI::l10n()->t('Error, XML PHP module required but not installed.');
$status = false;
$returnVal = false;
}
- $this->addCheck(L10n::t('XML PHP module'), $status, true, $help);
+ $this->addCheck(DI::l10n()->t('XML PHP module'), $status, true, $help);
$status = $this->checkFunction('curl_init',
- L10n::t('libCurl PHP module'),
- L10n::t('Error: libCURL PHP module required but not installed.'),
+ DI::l10n()->t('libCurl PHP module'),
+ DI::l10n()->t('Error: libCURL PHP module required but not installed.'),
true
);
$returnVal = $returnVal ? $status : false;
$status = $this->checkFunction('imagecreatefromjpeg',
- L10n::t('GD graphics PHP module'),
- L10n::t('Error: GD graphics PHP module with JPEG support required but not installed.'),
+ DI::l10n()->t('GD graphics PHP module'),
+ DI::l10n()->t('Error: GD graphics PHP module with JPEG support required but not installed.'),
true
);
$returnVal = $returnVal ? $status : false;
$status = $this->checkFunction('openssl_public_encrypt',
- L10n::t('OpenSSL PHP module'),
- L10n::t('Error: openssl PHP module required but not installed.'),
+ DI::l10n()->t('OpenSSL PHP module'),
+ DI::l10n()->t('Error: openssl PHP module required but not installed.'),
true
);
$returnVal = $returnVal ? $status : false;
$status = $this->checkFunction('mb_strlen',
- L10n::t('mb_string PHP module'),
- L10n::t('Error: mb_string PHP module required but not installed.'),
+ DI::l10n()->t('mb_string PHP module'),
+ DI::l10n()->t('Error: mb_string PHP module required but not installed.'),
true
);
$returnVal = $returnVal ? $status : false;
$status = $this->checkFunction('iconv_strlen',
- L10n::t('iconv PHP module'),
- L10n::t('Error: iconv PHP module required but not installed.'),
+ DI::l10n()->t('iconv PHP module'),
+ DI::l10n()->t('Error: iconv PHP module required but not installed.'),
true
);
$returnVal = $returnVal ? $status : false;
$status = $this->checkFunction('posix_kill',
- L10n::t('POSIX PHP module'),
- L10n::t('Error: POSIX PHP module required but not installed.'),
+ DI::l10n()->t('POSIX PHP module'),
+ DI::l10n()->t('Error: POSIX PHP module required but not installed.'),
true
);
$returnVal = $returnVal ? $status : false;
$status = $this->checkFunction('json_encode',
- L10n::t('JSON PHP module'),
- L10n::t('Error: JSON PHP module required but not installed.'),
+ DI::l10n()->t('JSON PHP module'),
+ DI::l10n()->t('Error: JSON PHP module required but not installed.'),
true
);
$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.'),
+ DI::l10n()->t('File Information PHP module'),
+ DI::l10n()->t('Error: File Information PHP module required but not installed.'),
true
);
$returnVal = $returnVal ? $status : false;
@@ -478,13 +478,13 @@ class Installer
(!file_exists('config/local.config.php') && !is_writable('.'))) {
$status = false;
- $help = L10n::t('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.') . EOL;
- $help .= L10n::t('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.') . EOL;
- $help .= L10n::t('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.') . EOL;
- $help .= L10n::t('You can alternatively skip this procedure and perform a manual installation. Please see the file "INSTALL.txt" for instructions.') . EOL;
+ $help = DI::l10n()->t('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.') . EOL;
+ $help .= DI::l10n()->t('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.') . EOL;
+ $help .= DI::l10n()->t('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.') . EOL;
+ $help .= DI::l10n()->t('You can alternatively skip this procedure and perform a manual installation. Please see the file "INSTALL.txt" for instructions.') . EOL;
}
- $this->addCheck(L10n::t('config/local.config.php is writable'), $status, false, $help);
+ $this->addCheck(DI::l10n()->t('config/local.config.php is writable'), $status, false, $help);
// Local INI File is not required
return true;
@@ -504,13 +504,13 @@ class Installer
if (!is_writable('view/smarty3')) {
$status = false;
- $help = L10n::t('Friendica uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering.') . EOL;
- $help .= L10n::t('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.') . EOL;
- $help .= L10n::t("Please ensure that the user that your web server runs as \x28e.g. www-data\x29 has write access to this folder.") . EOL;
- $help .= L10n::t("Note: as a security measure, you should give the web server write access to view/smarty3/ only--not the template files \x28.tpl\x29 that it contains.") . EOL;
+ $help = DI::l10n()->t('Friendica uses the Smarty3 template engine to render its web views. Smarty3 compiles templates to PHP to speed up rendering.') . EOL;
+ $help .= DI::l10n()->t('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.') . EOL;
+ $help .= DI::l10n()->t("Please ensure that the user that your web server runs as \x28e.g. www-data\x29 has write access to this folder.") . EOL;
+ $help .= DI::l10n()->t("Note: as a security measure, you should give the web server write access to view/smarty3/ only--not the template files \x28.tpl\x29 that it contains.") . EOL;
}
- $this->addCheck(L10n::t('view/smarty3 is writable'), $status, true, $help);
+ $this->addCheck(DI::l10n()->t('view/smarty3 is writable'), $status, true, $help);
return $status;
}
@@ -539,14 +539,14 @@ class Installer
if ($fetchResult->getReturnCode() != 204) {
$status = false;
- $help = L10n::t('Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist to .htaccess.');
+ $help = DI::l10n()->t('Url rewrite in .htaccess is not working. Make sure you copied .htaccess-dist to .htaccess.');
$error_msg = [];
- $error_msg['head'] = L10n::t('Error message from Curl when fetching');
+ $error_msg['head'] = DI::l10n()->t('Error message from Curl when fetching');
$error_msg['url'] = $fetchResult->getRedirectUrl();
$error_msg['msg'] = $fetchResult->getError();
}
- $this->addCheck(L10n::t('Url rewrite is working'), $status, true, $help, $error_msg);
+ $this->addCheck(DI::l10n()->t('Url rewrite is working'), $status, true, $help, $error_msg);
} else {
// cannot check modrewrite if libcurl is not installed
/// @TODO Maybe issue warning here?
@@ -575,11 +575,11 @@ class Installer
}
}
if (!$imagick) {
- $this->addCheck(L10n::t('ImageMagick PHP extension is not installed'), $imagick, false, "");
+ $this->addCheck(DI::l10n()->t('ImageMagick PHP extension is not installed'), $imagick, false, "");
} else {
- $this->addCheck(L10n::t('ImageMagick PHP extension is installed'), $imagick, false, "");
+ $this->addCheck(DI::l10n()->t('ImageMagick PHP extension is installed'), $imagick, false, "");
if ($imagick) {
- $this->addCheck(L10n::t('ImageMagick supports GIF'), $gif, false, "");
+ $this->addCheck(DI::l10n()->t('ImageMagick supports GIF'), $gif, false, "");
}
}
@@ -601,12 +601,12 @@ class Installer
if ($dba->isConnected()) {
if (DBStructure::existsTable('user')) {
- $this->addCheck(L10n::t('Database already in use.'), false, true, '');
+ $this->addCheck(DI::l10n()->t('Database already in use.'), false, true, '');
return false;
}
} else {
- $this->addCheck(L10n::t('Could not connect to database.'), false, true, '');
+ $this->addCheck(DI::l10n()->t('Could not connect to database.'), false, true, '');
return false;
}
diff --git a/src/Core/L10n.php b/src/Core/L10n.php
index 2c8a9eef9..67c0e4774 100644
--- a/src/Core/L10n.php
+++ b/src/Core/L10n.php
@@ -43,9 +43,9 @@ class L10n
* string interpolation (sprintf) with additional optional arguments.
*
* Usages:
- * - L10n::t('This is an example')
- * - L10n::t('URL %s returned no result', $url)
- * - L10n::t('Current version: %s, new version: %s', $current_version, $new_version)
+ * - DI::l10n()->t('This is an example')
+ * - DI::l10n()->t('URL %s returned no result', $url)
+ * - DI::l10n()->t('Current version: %s, new version: %s', $current_version, $new_version)
*
* @param string $s
* @param array $vars Variables to interpolate in the translation string
diff --git a/src/Core/L10n/L10n.php b/src/Core/L10n/L10n.php
index ea19d16d0..6868b4503 100644
--- a/src/Core/L10n/L10n.php
+++ b/src/Core/L10n/L10n.php
@@ -217,9 +217,9 @@ class L10n
* string interpolation (sprintf) with additional optional arguments.
*
* Usages:
- * - L10n::t('This is an example')
- * - L10n::t('URL %s returned no result', $url)
- * - L10n::t('Current version: %s, new version: %s', $current_version, $new_version)
+ * - DI::l10n()->t('This is an example')
+ * - DI::l10n()->t('URL %s returned no result', $url)
+ * - DI::l10n()->t('Current version: %s, new version: %s', $current_version, $new_version)
*
* @param string $s
* @param array $vars Variables to interpolate in the translation string
diff --git a/src/Core/Update.php b/src/Core/Update.php
index 3fe19d0dd..24ca0a797 100644
--- a/src/Core/Update.php
+++ b/src/Core/Update.php
@@ -191,7 +191,7 @@ class Update
//send the administrator an e-mail
self::updateFailed(
$x,
- L10n::t('Update %s failed. See error logs.', $x)
+ DI::l10n()->t('Update %s failed. See error logs.', $x)
);
Logger::error('Update function ERROR.', ['function' => $funcname, 'retval' => $retval]);
DI::lock()->release('dbupdate_function');
@@ -305,7 +305,7 @@ class Update
'uid' => $admin['uid'],
'type' => SYSTEM_EMAIL,
'to_email' => $admin['email'],
- 'subject' => l10n::t('[Friendica Notify] Database update'),
+ 'subject' => DI::l10n()->t('[Friendica Notify] Database update'),
'preamble' => $preamble,
'body' => $preamble,
'language' => $lang]
diff --git a/src/Core/UserImport.php b/src/Core/UserImport.php
index a62ce4358..d48d179fa 100644
--- a/src/Core/UserImport.php
+++ b/src/Core/UserImport.php
@@ -104,13 +104,13 @@ class UserImport
$account = json_decode(file_get_contents($file['tmp_name']), true);
if ($account === null) {
- notice(L10n::t("Error decoding account file"));
+ notice(DI::l10n()->t("Error decoding account file"));
return;
}
if (empty($account['version'])) {
- notice(L10n::t("Error! No version data in file! This is not a Friendica account file?"));
+ notice(DI::l10n()->t("Error! No version data in file! This is not a Friendica account file?"));
return;
}
@@ -118,7 +118,7 @@ class UserImport
// check if username matches deleted account
if (DBA::exists('user', ['nickname' => $account['user']['nickname']])
|| DBA::exists('userd', ['username' => $account['user']['nickname']])) {
- notice(L10n::t("User '%s' already exists on this server!", $account['user']['nickname']));
+ notice(DI::l10n()->t("User '%s' already exists on this server!", $account['user']['nickname']));
return;
}
@@ -154,7 +154,7 @@ class UserImport
$r = self::dbImportAssoc('user', $account['user']);
if ($r === false) {
Logger::log("uimport:insert user : ERROR : " . DBA::errorMessage(), Logger::INFO);
- notice(L10n::t("User creation error"));
+ notice(DI::l10n()->t("User creation error"));
return;
}
$newuid = self::lastInsertId();
@@ -172,7 +172,7 @@ class UserImport
$r = self::dbImportAssoc('profile', $profile);
if ($r === false) {
Logger::log("uimport:insert profile " . $profile['profile-name'] . " : ERROR : " . DBA::errorMessage(), Logger::INFO);
- info(L10n::t("User profile creation error"));
+ info(DI::l10n()->t("User profile creation error"));
DBA::delete('user', ['uid' => $newuid]);
return;
}
@@ -281,7 +281,7 @@ class UserImport
// send relocate messages
Worker::add(PRIORITY_HIGH, 'Notifier', Delivery::RELOCATION, $newuid);
- info(L10n::t("Done. You can now login with your username and password"));
+ info(DI::l10n()->t("Done. You can now login with your username and password"));
DI::baseUrl()->redirect('login');
}
}
diff --git a/src/Database/DBStructure.php b/src/Database/DBStructure.php
index 410c6b57b..4c56263ab 100644
--- a/src/Database/DBStructure.php
+++ b/src/Database/DBStructure.php
@@ -45,7 +45,7 @@ class DBStructure
);
if (!DBA::isResult($tables)) {
- echo L10n::t('There are no tables on MyISAM.') . "\n";
+ echo DI::l10n()->t('There are no tables on MyISAM.') . "\n";
return;
}
@@ -69,10 +69,10 @@ class DBStructure
*/
private static function printUpdateError($message)
{
- echo L10n::t("\nError %d occurred during database update:\n%s\n",
+ echo DI::l10n()->t("\nError %d occurred during database update:\n%s\n",
DBA::errorNo(), DBA::errorMessage());
- return L10n::t('Errors encountered performing database changes: ') . $message . EOL;
+ return DI::l10n()->t('Errors encountered performing database changes: ') . $message . EOL;
}
public static function printStructure($basePath)
@@ -261,7 +261,7 @@ class DBStructure
{
if ($action && !$install) {
Config::set('system', 'maintenance', 1);
- Config::set('system', 'maintenance_reason', L10n::t('%s: Database update', DateTimeFormat::utcNow() . ' ' . date('e')));
+ Config::set('system', 'maintenance_reason', DI::l10n()->t('%s: Database update', DateTimeFormat::utcNow() . ' ' . date('e')));
}
$errors = '';
@@ -522,7 +522,7 @@ class DBStructure
if ($action) {
if (!$install) {
- Config::set('system', 'maintenance_reason', L10n::t('%s: updating %s table.', DateTimeFormat::utcNow() . ' ' . date('e'), $name));
+ Config::set('system', 'maintenance_reason', DI::l10n()->t('%s: updating %s table.', DateTimeFormat::utcNow() . ' ' . date('e'), $name));
}
// Ensure index conversion to unique removes duplicates
diff --git a/src/LegacyModule.php b/src/LegacyModule.php
index 9c22ec5d7..6a627e98b 100644
--- a/src/LegacyModule.php
+++ b/src/LegacyModule.php
@@ -27,7 +27,7 @@ class LegacyModule extends BaseModule
public static function setModuleFile($file_path)
{
if (!is_readable($file_path)) {
- throw new \Exception(Core\L10n::t('Legacy module file not found: %s', $file_path));
+ throw new \Exception(Core\DI::l10n()->t('Legacy module file not found: %s', $file_path));
}
self::$moduleName = basename($file_path, '.php');
diff --git a/src/Model/Contact.php b/src/Model/Contact.php
index 01dc0d012..d93b2469d 100644
--- a/src/Model/Contact.php
+++ b/src/Model/Contact.php
@@ -1207,7 +1207,7 @@ class Contact
if (empty($contact['uid']) || ($contact['uid'] != $uid)) {
if ($uid == 0) {
$profile_link = self::magicLink($contact['url']);
- $menu = ['profile' => [L10n::t('View Profile'), $profile_link, true]];
+ $menu = ['profile' => [DI::l10n()->t('View Profile'), $profile_link, true]];
return $menu;
}
@@ -1269,30 +1269,30 @@ class Contact
*/
if (empty($contact['uid'])) {
$menu = [
- 'profile' => [L10n::t('View Profile') , $profile_link , true],
- 'network' => [L10n::t('Network Posts') , $posts_link , false],
- 'edit' => [L10n::t('View Contact') , $contact_url , false],
- 'follow' => [L10n::t('Connect/Follow'), $follow_link , true],
- 'unfollow'=> [L10n::t('UnFollow') , $unfollow_link, true],
+ 'profile' => [DI::l10n()->t('View Profile') , $profile_link , true],
+ 'network' => [DI::l10n()->t('Network Posts') , $posts_link , false],
+ 'edit' => [DI::l10n()->t('View Contact') , $contact_url , false],
+ 'follow' => [DI::l10n()->t('Connect/Follow'), $follow_link , true],
+ 'unfollow'=> [DI::l10n()->t('UnFollow') , $unfollow_link, true],
];
} else {
$menu = [
- 'status' => [L10n::t('View Status') , $status_link , true],
- 'profile' => [L10n::t('View Profile') , $profile_link , true],
- 'photos' => [L10n::t('View Photos') , $photos_link , true],
- 'network' => [L10n::t('Network Posts') , $posts_link , false],
- 'edit' => [L10n::t('View Contact') , $contact_url , false],
- 'drop' => [L10n::t('Drop Contact') , $contact_drop_link, false],
- 'pm' => [L10n::t('Send PM') , $pm_url , false],
- 'poke' => [L10n::t('Poke') , $poke_link , false],
- 'follow' => [L10n::t('Connect/Follow'), $follow_link , true],
- 'unfollow'=> [L10n::t('UnFollow') , $unfollow_link , true],
+ 'status' => [DI::l10n()->t('View Status') , $status_link , true],
+ 'profile' => [DI::l10n()->t('View Profile') , $profile_link , true],
+ 'photos' => [DI::l10n()->t('View Photos') , $photos_link , true],
+ 'network' => [DI::l10n()->t('Network Posts') , $posts_link , false],
+ 'edit' => [DI::l10n()->t('View Contact') , $contact_url , false],
+ 'drop' => [DI::l10n()->t('Drop Contact') , $contact_drop_link, false],
+ 'pm' => [DI::l10n()->t('Send PM') , $pm_url , false],
+ 'poke' => [DI::l10n()->t('Poke') , $poke_link , false],
+ 'follow' => [DI::l10n()->t('Connect/Follow'), $follow_link , true],
+ 'unfollow'=> [DI::l10n()->t('UnFollow') , $unfollow_link , true],
];
if (!empty($contact['pending'])) {
$intro = DBA::selectFirst('intro', ['id'], ['contact-id' => $contact['id']]);
if (DBA::isResult($intro)) {
- $menu['follow'] = [L10n::t('Approve'), 'notifications/intros/' . $intro['id'], true];
+ $menu['follow'] = [DI::l10n()->t('Approve'), 'notifications/intros/' . $intro['id'], true];
}
}
}
@@ -1851,15 +1851,15 @@ class Contact
switch ($type) {
case self::TYPE_ORGANISATION:
- $account_type = L10n::t("Organisation");
+ $account_type = DI::l10n()->t("Organisation");
break;
case self::TYPE_NEWS:
- $account_type = L10n::t('News');
+ $account_type = DI::l10n()->t('News');
break;
case self::TYPE_COMMUNITY:
- $account_type = L10n::t("Forum");
+ $account_type = DI::l10n()->t("Forum");
break;
default:
@@ -2264,17 +2264,17 @@ class Contact
$url = str_replace('/#!/', '/', $url);
if (!Network::isUrlAllowed($url)) {
- $result['message'] = L10n::t('Disallowed profile URL.');
+ $result['message'] = DI::l10n()->t('Disallowed profile URL.');
return $result;
}
if (Network::isUrlBlocked($url)) {
- $result['message'] = L10n::t('Blocked domain');
+ $result['message'] = DI::l10n()->t('Blocked domain');
return $result;
}
if (!$url) {
- $result['message'] = L10n::t('Connect URL missing.');
+ $result['message'] = DI::l10n()->t('Connect URL missing.');
return $result;
}
@@ -2283,7 +2283,7 @@ class Contact
Hook::callAll('follow', $arr);
if (empty($arr)) {
- $result['message'] = L10n::t('The contact could not be added. Please check the relevant network credentials in your Settings -> Social Networks page.');
+ $result['message'] = DI::l10n()->t('The contact could not be added. Please check the relevant network credentials in your Settings -> Social Networks page.');
return $result;
}
@@ -2324,8 +2324,8 @@ class Contact
// NOTREACHED
}
} elseif (Config::get('system', 'dfrn_only') && ($ret['network'] != Protocol::DFRN)) {
- $result['message'] = L10n::t('This site is not configured to allow communications with other networks.') . EOL;
- $result['message'] .= L10n::t('No compatible communication protocols or feeds were discovered.') . EOL;
+ $result['message'] = DI::l10n()->t('This site is not configured to allow communications with other networks.') . EOL;
+ $result['message'] .= DI::l10n()->t('No compatible communication protocols or feeds were discovered.') . EOL;
return $result;
}
@@ -2336,30 +2336,30 @@ class Contact
// do we have enough information?
if (empty($ret['name']) || empty($ret['poll']) || (empty($ret['url']) && empty($ret['addr']))) {
- $result['message'] .= L10n::t('The profile address specified does not provide adequate information.') . EOL;
+ $result['message'] .= DI::l10n()->t('The profile address specified does not provide adequate information.') . EOL;
if (empty($ret['poll'])) {
- $result['message'] .= L10n::t('No compatible communication protocols or feeds were discovered.') . EOL;
+ $result['message'] .= DI::l10n()->t('No compatible communication protocols or feeds were discovered.') . EOL;
}
if (empty($ret['name'])) {
- $result['message'] .= L10n::t('An author or name was not found.') . EOL;
+ $result['message'] .= DI::l10n()->t('An author or name was not found.') . EOL;
}
if (empty($ret['url'])) {
- $result['message'] .= L10n::t('No browser URL could be matched to this address.') . EOL;
+ $result['message'] .= DI::l10n()->t('No browser URL could be matched to this address.') . EOL;
}
if (strpos($url, '@') !== false) {
- $result['message'] .= L10n::t('Unable to match @-style Identity Address with a known protocol or email contact.') . EOL;
- $result['message'] .= L10n::t('Use mailto: in front of address to force email check.') . EOL;
+ $result['message'] .= DI::l10n()->t('Unable to match @-style Identity Address with a known protocol or email contact.') . EOL;
+ $result['message'] .= DI::l10n()->t('Use mailto: in front of address to force email check.') . EOL;
}
return $result;
}
if ($protocol === Protocol::OSTATUS && Config::get('system', 'ostatus_disabled')) {
- $result['message'] .= L10n::t('The profile address specified belongs to a network which has been disabled on this site.') . EOL;
+ $result['message'] .= DI::l10n()->t('The profile address specified belongs to a network which has been disabled on this site.') . EOL;
$ret['notify'] = '';
}
if (!$ret['notify']) {
- $result['message'] .= L10n::t('Limited profile. This person will be unable to receive direct/personal notifications from you.') . EOL;
+ $result['message'] .= DI::l10n()->t('Limited profile. This person will be unable to receive direct/personal notifications from you.') . EOL;
}
$writeable = ((($protocol === Protocol::OSTATUS) && ($ret['notify'])) ? 1 : 0);
@@ -2420,7 +2420,7 @@ class Contact
$contact = DBA::selectFirst('contact', [], ['url' => $ret['url'], 'network' => $ret['network'], 'uid' => $uid]);
if (!DBA::isResult($contact)) {
- $result['message'] .= L10n::t('Unable to retrieve contact information.') . EOL;
+ $result['message'] .= DI::l10n()->t('Unable to retrieve contact information.') . EOL;
return $result;
}
@@ -2641,7 +2641,7 @@ class Contact
'to_email' => $user['email'],
'uid' => $user['uid'],
'link' => DI::baseUrl() . '/notifications/intro',
- 'source_name' => ((strlen(stripslashes($contact_record['name']))) ? stripslashes($contact_record['name']) : L10n::t('[Name Withheld]')),
+ 'source_name' => ((strlen(stripslashes($contact_record['name']))) ? stripslashes($contact_record['name']) : DI::l10n()->t('[Name Withheld]')),
'source_link' => $contact_record['url'],
'source_photo' => $contact_record['photo'],
'verb' => ($sharing ? Activity::FRIEND : Activity::FOLLOW),
diff --git a/src/Model/Event.php b/src/Model/Event.php
index 4055ca63b..6f309a339 100644
--- a/src/Model/Event.php
+++ b/src/Model/Event.php
@@ -31,7 +31,7 @@ class Event
return '';
}
- $bd_format = L10n::t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8 AM.
+ $bd_format = DI::l10n()->t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8 AM.
$event_start = L10n::getDay(
!empty($event['adjust']) ?
@@ -58,14 +58,14 @@ class Event
$o .= "
" . BBCode::convert(Strings::escapeHtml($event['desc']), false, $simple) . "
";
}
- $o .= "
" . L10n::t('Starts:') . " " . $event_start . "
";
+ $o .= "
" . DI::l10n()->t('Starts:') . " " . $event_start . "
";
if (!$event['nofinish']) {
- $o .= "
" . L10n::t('Finishes:') . " " . $event_end . "
";
+ $o .= "
" . DI::l10n()->t('Finishes:') . " " . $event_end . "
";
}
if (!empty($event['location'])) {
- $o .= "
" . L10n::t('Location:') . " " . BBCode::convert(Strings::escapeHtml($event['location']), false, $simple) . "
";
+ $o .= "
" . DI::l10n()->t('Location:') . " " . BBCode::convert(Strings::escapeHtml($event['location']), false, $simple) . "
";
}
return $o;
@@ -75,13 +75,13 @@ class Event
$o .= '
' . BBCode::convert(Strings::escapeHtml($event['summary']), false, $simple) . '
' . "\r\n";
- $o .= '
' . L10n::t('Starts:') . ' ' . DI::l10n()->t('Starts:') . ' ' . $event_start
. '
' . "\r\n";
if (!$event['nofinish']) {
- $o .= '
' . L10n::t('Finishes:') . ' ' . DI::l10n()->t('Finishes:') . ' ' . $event_end
. '
' . "\r\n";
@@ -92,7 +92,7 @@ class Event
}
if (!empty($event['location'])) {
- $o .= '
' . L10n::t('Location:') . ' '
+ $o .= '' . DI::l10n()->t('Location:') . ' '
. BBCode::convert(Strings::escapeHtml($event['location']), false, $simple)
. '
' . "\r\n";
@@ -382,59 +382,59 @@ class Event
$i18n = [
"firstDay" => $firstDay,
- "allday" => L10n::t("all-day"),
+ "allday" => DI::l10n()->t("all-day"),
- "Sun" => L10n::t("Sun"),
- "Mon" => L10n::t("Mon"),
- "Tue" => L10n::t("Tue"),
- "Wed" => L10n::t("Wed"),
- "Thu" => L10n::t("Thu"),
- "Fri" => L10n::t("Fri"),
- "Sat" => L10n::t("Sat"),
+ "Sun" => DI::l10n()->t("Sun"),
+ "Mon" => DI::l10n()->t("Mon"),
+ "Tue" => DI::l10n()->t("Tue"),
+ "Wed" => DI::l10n()->t("Wed"),
+ "Thu" => DI::l10n()->t("Thu"),
+ "Fri" => DI::l10n()->t("Fri"),
+ "Sat" => DI::l10n()->t("Sat"),
- "Sunday" => L10n::t("Sunday"),
- "Monday" => L10n::t("Monday"),
- "Tuesday" => L10n::t("Tuesday"),
- "Wednesday" => L10n::t("Wednesday"),
- "Thursday" => L10n::t("Thursday"),
- "Friday" => L10n::t("Friday"),
- "Saturday" => L10n::t("Saturday"),
+ "Sunday" => DI::l10n()->t("Sunday"),
+ "Monday" => DI::l10n()->t("Monday"),
+ "Tuesday" => DI::l10n()->t("Tuesday"),
+ "Wednesday" => DI::l10n()->t("Wednesday"),
+ "Thursday" => DI::l10n()->t("Thursday"),
+ "Friday" => DI::l10n()->t("Friday"),
+ "Saturday" => DI::l10n()->t("Saturday"),
- "Jan" => L10n::t("Jan"),
- "Feb" => L10n::t("Feb"),
- "Mar" => L10n::t("Mar"),
- "Apr" => L10n::t("Apr"),
- "May" => L10n::t("May"),
- "Jun" => L10n::t("Jun"),
- "Jul" => L10n::t("Jul"),
- "Aug" => L10n::t("Aug"),
- "Sep" => L10n::t("Sept"),
- "Oct" => L10n::t("Oct"),
- "Nov" => L10n::t("Nov"),
- "Dec" => L10n::t("Dec"),
+ "Jan" => DI::l10n()->t("Jan"),
+ "Feb" => DI::l10n()->t("Feb"),
+ "Mar" => DI::l10n()->t("Mar"),
+ "Apr" => DI::l10n()->t("Apr"),
+ "May" => DI::l10n()->t("May"),
+ "Jun" => DI::l10n()->t("Jun"),
+ "Jul" => DI::l10n()->t("Jul"),
+ "Aug" => DI::l10n()->t("Aug"),
+ "Sep" => DI::l10n()->t("Sept"),
+ "Oct" => DI::l10n()->t("Oct"),
+ "Nov" => DI::l10n()->t("Nov"),
+ "Dec" => DI::l10n()->t("Dec"),
- "January" => L10n::t("January"),
- "February" => L10n::t("February"),
- "March" => L10n::t("March"),
- "April" => L10n::t("April"),
- "June" => L10n::t("June"),
- "July" => L10n::t("July"),
- "August" => L10n::t("August"),
- "September" => L10n::t("September"),
- "October" => L10n::t("October"),
- "November" => L10n::t("November"),
- "December" => L10n::t("December"),
+ "January" => DI::l10n()->t("January"),
+ "February" => DI::l10n()->t("February"),
+ "March" => DI::l10n()->t("March"),
+ "April" => DI::l10n()->t("April"),
+ "June" => DI::l10n()->t("June"),
+ "July" => DI::l10n()->t("July"),
+ "August" => DI::l10n()->t("August"),
+ "September" => DI::l10n()->t("September"),
+ "October" => DI::l10n()->t("October"),
+ "November" => DI::l10n()->t("November"),
+ "December" => DI::l10n()->t("December"),
- "today" => L10n::t("today"),
- "month" => L10n::t("month"),
- "week" => L10n::t("week"),
- "day" => L10n::t("day"),
+ "today" => DI::l10n()->t("today"),
+ "month" => DI::l10n()->t("month"),
+ "week" => DI::l10n()->t("week"),
+ "day" => DI::l10n()->t("day"),
- "noevent" => L10n::t("No events to display"),
+ "noevent" => DI::l10n()->t("No events to display"),
- "dtstart_label" => L10n::t("Starts:"),
- "dtend_label" => L10n::t("Finishes:"),
- "location_label" => L10n::t("Location:")
+ "dtstart_label" => DI::l10n()->t("Starts:"),
+ "dtend_label" => DI::l10n()->t("Finishes:"),
+ "location_label" => DI::l10n()->t("Location:")
];
return $i18n;
@@ -558,7 +558,7 @@ class Event
$event_list = [];
$last_date = '';
- $fmt = L10n::t('l, F j');
+ $fmt = DI::l10n()->t('l, F j');
foreach ($event_result as $event) {
$item = Item::selectFirst(['plink', 'author-name', 'author-avatar', 'author-link'], ['id' => $event['itemid']]);
if (!DBA::isResult($item)) {
@@ -589,9 +589,9 @@ class Event
$copy = null;
$drop = null;
if (local_user() && local_user() == $event['uid'] && $event['type'] == 'event') {
- $edit = !$event['cid'] ? [DI::baseUrl() . '/events/event/' . $event['id'], L10n::t('Edit event') , '', ''] : null;
- $copy = !$event['cid'] ? [DI::baseUrl() . '/events/copy/' . $event['id'] , L10n::t('Duplicate event'), '', ''] : null;
- $drop = [DI::baseUrl() . '/events/drop/' . $event['id'] , L10n::t('Delete event') , '', ''];
+ $edit = !$event['cid'] ? [DI::baseUrl() . '/events/event/' . $event['id'], DI::l10n()->t('Edit event') , '', ''] : null;
+ $copy = !$event['cid'] ? [DI::baseUrl() . '/events/copy/' . $event['id'] , DI::l10n()->t('Duplicate event'), '', ''] : null;
+ $drop = [DI::baseUrl() . '/events/drop/' . $event['id'] , DI::l10n()->t('Delete event') , '', ''];
}
$title = BBCode::convert(Strings::escapeHtml($event['summary']));
@@ -623,7 +623,7 @@ class Event
'is_first' => $is_first,
'item' => $event,
'html' => $html,
- 'plink' => [$event['plink'], L10n::t('link to source'), '', ''],
+ 'plink' => [$event['plink'], DI::l10n()->t('link to source'), '', ''],
];
}
@@ -844,9 +844,9 @@ class Event
$finish = false;
// Set the different time formats.
- $dformat = L10n::t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8:01 AM.
- $dformat_short = L10n::t('D g:i A'); // Fri 8:01 AM.
- $tformat = L10n::t('g:i A'); // 8:01 AM.
+ $dformat = DI::l10n()->t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8:01 AM.
+ $dformat_short = DI::l10n()->t('D g:i A'); // Fri 8:01 AM.
+ $tformat = DI::l10n()->t('g:i A'); // 8:01 AM.
// Convert the time to different formats.
$dtstart_dt = L10n::getDay(
@@ -912,11 +912,11 @@ class Event
$return = Renderer::replaceMacros($tpl, [
'$id' => $item['event-id'],
'$title' => BBCode::convert($item['event-summary']),
- '$dtstart_label' => L10n::t('Starts:'),
+ '$dtstart_label' => DI::l10n()->t('Starts:'),
'$dtstart_title' => $dtstart_title,
'$dtstart_dt' => $dtstart_dt,
'$finish' => $finish,
- '$dtend_label' => L10n::t('Finishes:'),
+ '$dtend_label' => DI::l10n()->t('Finishes:'),
'$dtend_title' => $dtend_title,
'$dtend_dt' => $dtend_dt,
'$month_short' => $month_short,
@@ -930,10 +930,10 @@ class Event
'$author_link' => $profile_link,
'$author_avatar' => $item['author-avatar'],
'$description' => BBCode::convert($item['event-desc']),
- '$location_label' => L10n::t('Location:'),
- '$show_map_label' => L10n::t('Show map'),
- '$hide_map_label' => L10n::t('Hide map'),
- '$map_btn_label' => L10n::t('Show map'),
+ '$location_label' => DI::l10n()->t('Location:'),
+ '$show_map_label' => DI::l10n()->t('Show map'),
+ '$hide_map_label' => DI::l10n()->t('Hide map'),
+ '$map_btn_label' => DI::l10n()->t('Show map'),
'$location' => $location
]);
@@ -1024,8 +1024,8 @@ class Event
'cid' => $contact['id'],
'start' => DateTimeFormat::utc($birthday),
'finish' => DateTimeFormat::utc($birthday . ' + 1 day '),
- 'summary' => L10n::t('%s\'s birthday', $contact['name']),
- 'desc' => L10n::t('Happy Birthday %s', ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]'),
+ 'summary' => DI::l10n()->t('%s\'s birthday', $contact['name']),
+ 'desc' => DI::l10n()->t('Happy Birthday %s', ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]'),
'type' => 'birthday',
'adjust' => 0
];
diff --git a/src/Model/FileTag.php b/src/Model/FileTag.php
index c7941db05..662fdbdff 100644
--- a/src/Model/FileTag.php
+++ b/src/Model/FileTag.php
@@ -262,7 +262,7 @@ class FileTag
DI::pConfig()->set($uid, 'system', 'filetags', $saved . '[' . self::encode($file) . ']');
}
- info(L10n::t('Item filed'));
+ info(DI::l10n()->t('Item filed'));
}
return true;
diff --git a/src/Model/Group.php b/src/Model/Group.php
index 3d075f12e..a810fff67 100644
--- a/src/Model/Group.php
+++ b/src/Model/Group.php
@@ -73,7 +73,7 @@ class Group
$group = DBA::selectFirst('group', ['deleted'], ['id' => $gid]);
if (DBA::isResult($group) && $group['deleted']) {
DBA::update('group', ['deleted' => 0], ['id' => $gid]);
- notice(L10n::t('A deleted group with this name was revived. Existing item permissions may apply to this group and any future members. If this is not what you intended, please create another group with a different name.') . EOL);
+ notice(DI::l10n()->t('A deleted group with this name was revived. Existing item permissions may apply to this group and any future members. If this is not what you intended, please create another group with a different name.') . EOL);
}
return true;
}
@@ -422,7 +422,7 @@ class Group
Logger::info('Got groups', $display_groups);
if ($label == '') {
- $label = L10n::t('Default privacy group for new contacts');
+ $label = DI::l10n()->t('Default privacy group for new contacts');
}
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('group_selection.tpl'), [
@@ -454,7 +454,7 @@ class Group
$display_groups = [
[
- 'text' => L10n::t('Everybody'),
+ 'text' => DI::l10n()->t('Everybody'),
'id' => 0,
'selected' => (($group_id === 'everyone') ? 'group-selected' : ''),
'href' => $every,
@@ -473,7 +473,7 @@ class Group
if ($editmode == 'full') {
$groupedit = [
'href' => 'group/' . $group['id'],
- 'title' => L10n::t('edit'),
+ 'title' => DI::l10n()->t('edit'),
];
} else {
$groupedit = null;
@@ -498,17 +498,17 @@ class Group
$tpl = Renderer::getMarkupTemplate('group_side.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$add' => L10n::t('add'),
- '$title' => L10n::t('Groups'),
+ '$add' => DI::l10n()->t('add'),
+ '$title' => DI::l10n()->t('Groups'),
'$groups' => $display_groups,
'newgroup' => $editmode == 'extended' || $editmode == 'full' ? 1 : '',
'grouppage' => 'group/',
- '$edittext' => L10n::t('Edit group'),
- '$ungrouped' => $every === 'contact' ? L10n::t('Contacts not in any group') : '',
+ '$edittext' => DI::l10n()->t('Edit group'),
+ '$ungrouped' => $every === 'contact' ? DI::l10n()->t('Contacts not in any group') : '',
'$ungrouped_selected' => (($group_id === 'none') ? 'group-selected' : ''),
- '$createtext' => L10n::t('Create a new group'),
- '$creategroup' => L10n::t('Group Name: '),
- '$editgroupstext' => L10n::t('Edit groups'),
+ '$createtext' => DI::l10n()->t('Create a new group'),
+ '$creategroup' => DI::l10n()->t('Group Name: '),
+ '$editgroupstext' => DI::l10n()->t('Edit groups'),
'$form_security_token' => BaseModule::getFormSecurityToken('group_edit'),
]);
diff --git a/src/Model/Item.php b/src/Model/Item.php
index 62d6620bc..050e79de5 100644
--- a/src/Model/Item.php
+++ b/src/Model/Item.php
@@ -3388,16 +3388,16 @@ class Item
public static function postType($item)
{
if (!empty($item['event-id'])) {
- return L10n::t('event');
+ return DI::l10n()->t('event');
} elseif (!empty($item['resource-id'])) {
- return L10n::t('photo');
+ return DI::l10n()->t('photo');
} elseif (!empty($item['verb']) && $item['verb'] !== Activity::POST) {
- return L10n::t('activity');
+ return DI::l10n()->t('activity');
} elseif ($item['id'] != $item['parent']) {
- return L10n::t('comment');
+ return DI::l10n()->t('comment');
}
- return L10n::t('post');
+ return DI::l10n()->t('post');
}
/**
@@ -3520,7 +3520,7 @@ class Item
$filter_reasons = [];
if (!$is_preview && public_contact() != $item['author-id']) {
if (!empty($item['content-warning']) && (!local_user() || !DI::pConfig()->get(local_user(), 'system', 'disable_cw', false))) {
- $filter_reasons[] = L10n::t('Content warning: %s', $item['content-warning']);
+ $filter_reasons[] = DI::l10n()->t('Content warning: %s', $item['content-warning']);
}
$hook_data = [
@@ -3580,7 +3580,7 @@ class Item
$as .= Renderer::replaceMacros(Renderer::getMarkupTemplate('video_top.tpl'), [
'$video' => [
'id' => $id,
- 'title' => L10n::t('View Video'),
+ 'title' => DI::l10n()->t('View Video'),
'src' => $the_url,
'mime' => $mime,
],
@@ -3597,7 +3597,7 @@ class Item
}
$title = Strings::escapeHtml(trim(($mtch[4] ?? '') ?: $mtch[1]));
- $title .= ' ' . $mtch[2] . ' ' . L10n::t('bytes');
+ $title .= ' ' . $mtch[2] . ' ' . DI::l10n()->t('bytes');
$icon = '
';
$as .= '' . $icon . ' ';
@@ -3644,20 +3644,20 @@ class Item
$ret = [
'href' => "display/" . $item['guid'],
'orig' => "display/" . $item['guid'],
- 'title' => L10n::t('View on separate page'),
- 'orig_title' => L10n::t('view on separate page'),
+ 'title' => DI::l10n()->t('View on separate page'),
+ 'orig_title' => DI::l10n()->t('view on separate page'),
];
if (!empty($item['plink'])) {
$ret["href"] = DI::baseUrl()->remove($item['plink']);
- $ret["title"] = L10n::t('link to source');
+ $ret["title"] = DI::l10n()->t('link to source');
}
} elseif (!empty($item['plink']) && ($item['private'] != 1)) {
$ret = [
'href' => $item['plink'],
'orig' => $item['plink'],
- 'title' => L10n::t('link to source'),
+ 'title' => DI::l10n()->t('link to source'),
];
} else {
$ret = [];
diff --git a/src/Model/Mail.php b/src/Model/Mail.php
index 292d797b8..77bf39878 100644
--- a/src/Model/Mail.php
+++ b/src/Model/Mail.php
@@ -112,7 +112,7 @@ class Mail
}
if (!strlen($subject)) {
- $subject = L10n::t('[no subject]');
+ $subject = DI::l10n()->t('[no subject]');
}
$me = DBA::selectFirst('contact', [], ['uid' => local_user(), 'self' => true]);
@@ -247,7 +247,7 @@ class Mail
}
if (!strlen($subject)) {
- $subject = L10n::t('[no subject]');
+ $subject = DI::l10n()->t('[no subject]');
}
$guid = System::createUUID();
diff --git a/src/Model/Photo.php b/src/Model/Photo.php
index b29ac6564..461cddf29 100644
--- a/src/Model/Photo.php
+++ b/src/Model/Photo.php
@@ -551,7 +551,7 @@ class Photo
GROUP BY `album` ORDER BY `created` DESC",
intval($uid),
DBA::escape("Contact Photos"),
- DBA::escape(L10n::t("Contact Photos"))
+ DBA::escape(DI::l10n()->t("Contact Photos"))
);
} else {
// This query doesn't do the count and is much faster
@@ -560,7 +560,7 @@ class Photo
WHERE `uid` = %d AND `album` != '%s' AND `album` != '%s' $sql_extra",
intval($uid),
DBA::escape("Contact Photos"),
- DBA::escape(L10n::t("Contact Photos"))
+ DBA::escape(DI::l10n()->t("Contact Photos"))
);
}
DI::cache()->set($key, $albums, Duration::DAY);
diff --git a/src/Model/Profile.php b/src/Model/Profile.php
index b61633788..6699c8287 100644
--- a/src/Model/Profile.php
+++ b/src/Model/Profile.php
@@ -206,7 +206,7 @@ class Profile
DI::page()['aside'] .= Renderer::replaceMacros(
Renderer::getMarkupTemplate('profile_edlink.tpl'),
[
- '$editprofile' => L10n::t('Edit profile'),
+ '$editprofile' => DI::l10n()->t('Edit profile'),
'$profid' => $a->profile['id']
]
);
@@ -391,15 +391,15 @@ class Profile
// show edit profile to yourself
if (!$is_contact && $local_user_is_self) {
if (Feature::isEnabled(local_user(), 'multi_profiles')) {
- $profile['edit'] = [DI::baseUrl() . '/profiles', L10n::t('Profiles'), '', L10n::t('Manage/edit profiles')];
+ $profile['edit'] = [DI::baseUrl() . '/profiles', DI::l10n()->t('Profiles'), '', DI::l10n()->t('Manage/edit profiles')];
$r = q(
"SELECT * FROM `profile` WHERE `uid` = %d",
local_user()
);
$profile['menu'] = [
- 'chg_photo' => L10n::t('Change profile photo'),
- 'cr_new' => L10n::t('Create New Profile'),
+ 'chg_photo' => DI::l10n()->t('Change profile photo'),
+ 'cr_new' => DI::l10n()->t('Create New Profile'),
'entries' => [],
];
@@ -408,18 +408,18 @@ class Profile
$profile['menu']['entries'][] = [
'photo' => $rr['thumb'],
'id' => $rr['id'],
- 'alt' => L10n::t('Profile Image'),
+ 'alt' => DI::l10n()->t('Profile Image'),
'profile_name' => $rr['profile-name'],
'isdefault' => $rr['is-default'],
- 'visibile_to_everybody' => L10n::t('visible to everybody'),
- 'edit_visibility' => L10n::t('Edit visibility'),
+ 'visibile_to_everybody' => DI::l10n()->t('visible to everybody'),
+ 'edit_visibility' => DI::l10n()->t('Edit visibility'),
];
}
}
} else {
- $profile['edit'] = [DI::baseUrl() . '/profiles/' . $profile['id'], L10n::t('Edit profile'), '', L10n::t('Edit profile')];
+ $profile['edit'] = [DI::baseUrl() . '/profiles/' . $profile['id'], DI::l10n()->t('Edit profile'), '', DI::l10n()->t('Edit profile')];
$profile['menu'] = [
- 'chg_photo' => L10n::t('Change profile photo'),
+ 'chg_photo' => DI::l10n()->t('Change profile photo'),
'cr_new' => null,
'entries' => [],
];
@@ -436,14 +436,14 @@ class Profile
|| !empty($profile['postal-code'])
|| !empty($profile['country-name'])
) {
- $location = L10n::t('Location:');
+ $location = DI::l10n()->t('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;
- $xmpp = !empty($profile['xmpp']) ? L10n::t('XMPP:') : false;
+ $gender = !empty($profile['gender']) ? DI::l10n()->t('Gender:') : false;
+ $marital = !empty($profile['marital']) ? DI::l10n()->t('Status:') : false;
+ $homepage = !empty($profile['homepage']) ? DI::l10n()->t('Homepage:') : false;
+ $about = !empty($profile['about']) ? DI::l10n()->t('About:') : false;
+ $xmpp = !empty($profile['xmpp']) ? DI::l10n()->t('XMPP:') : false;
if ((!empty($profile['hidewall']) || $block) && !Session::isAuthenticated()) {
$location = $gender = $marital = $homepage = $about = false;
@@ -516,11 +516,11 @@ class Profile
}
if (isset($p['gender'])) {
- $p['gender'] = L10n::t($p['gender']);
+ $p['gender'] = DI::l10n()->t($p['gender']);
}
if (isset($p['marital'])) {
- $p['marital'] = L10n::t($p['marital']);
+ $p['marital'] = DI::l10n()->t($p['marital']);
}
if (isset($p['photo'])) {
@@ -533,13 +533,13 @@ class Profile
$o .= Renderer::replaceMacros($tpl, [
'$profile' => $p,
'$xmpp' => $xmpp,
- '$follow' => L10n::t('Follow'),
+ '$follow' => DI::l10n()->t('Follow'),
'$follow_link' => $follow_link,
- '$unfollow' => L10n::t('Unfollow'),
+ '$unfollow' => DI::l10n()->t('Unfollow'),
'$unfollow_link' => $unfollow_link,
- '$subscribe_feed' => L10n::t('Atom feed'),
+ '$subscribe_feed' => DI::l10n()->t('Atom feed'),
'$subscribe_feed_link' => $subscribe_feed_link,
- '$wallmessage' => L10n::t('Message'),
+ '$wallmessage' => DI::l10n()->t('Message'),
'$wallmessage_link' => $wallmessage_link,
'$account_type' => $account_type,
'$location' => $location,
@@ -547,7 +547,7 @@ class Profile
'$marital' => $marital,
'$homepage' => $homepage,
'$about' => $about,
- '$network' => L10n::t('Network:'),
+ '$network' => DI::l10n()->t('Network:'),
'$contacts' => $contact_count,
'$updated' => $updated,
'$diaspora' => $diaspora,
@@ -577,8 +577,8 @@ class Profile
* return $o;
*/
- $bd_format = L10n::t('g A l F d'); // 8 AM Friday January 18
- $bd_short = L10n::t('F d');
+ $bd_format = DI::l10n()->t('g A l F d'); // 8 AM Friday January 18
+ $bd_short = DI::l10n()->t('F d');
$cachekey = 'get_birthdays:' . local_user();
$r = DI::cache()->get($cachekey);
@@ -640,7 +640,7 @@ class Profile
$rr['link'] = Contact::magicLink($rr['url']);
$rr['title'] = $rr['name'];
- $rr['date'] = L10n::getDay(DateTimeFormat::convert($rr['start'], $a->timezone, 'UTC', $rr['adjust'] ? $bd_format : $bd_short)) . (($today) ? ' ' . L10n::t('[today]') : '');
+ $rr['date'] = L10n::getDay(DateTimeFormat::convert($rr['start'], $a->timezone, 'UTC', $rr['adjust'] ? $bd_format : $bd_short)) . (($today) ? ' ' . DI::l10n()->t('[today]') : '');
$rr['startime'] = null;
$rr['today'] = $today;
}
@@ -650,8 +650,8 @@ class Profile
return Renderer::replaceMacros($tpl, [
'$classtoday' => $classtoday,
'$count' => $total,
- '$event_reminders' => L10n::t('Birthday Reminders'),
- '$event_title' => L10n::t('Birthdays this week:'),
+ '$event_reminders' => DI::l10n()->t('Birthday Reminders'),
+ '$event_title' => DI::l10n()->t('Birthdays this week:'),
'$events' => $r,
'$lbr' => '{', // raw brackets mess up if/endif macro processing
'$rbr' => '}'
@@ -674,7 +674,7 @@ class Profile
* return $o;
*/
- $bd_format = L10n::t('g A l F d'); // 8 AM Friday January 18
+ $bd_format = DI::l10n()->t('g A l F d'); // 8 AM Friday January 18
$classtoday = '';
$condition = ["`uid` = ? AND `type` != 'birthday' AND `start` < ? AND `start` >= ?",
@@ -712,7 +712,7 @@ class Profile
$description = substr(strip_tags(BBCode::convert($rr['desc'])), 0, 32) . '... ';
if (!$description) {
- $description = L10n::t('[No description]');
+ $description = DI::l10n()->t('[No description]');
}
$strt = DateTimeFormat::convert($rr['start'], $rr['adjust'] ? $a->timezone : 'UTC');
@@ -725,7 +725,7 @@ class Profile
$rr['title'] = $title;
$rr['description'] = $description;
- $rr['date'] = L10n::getDay(DateTimeFormat::convert($rr['start'], $rr['adjust'] ? $a->timezone : 'UTC', 'UTC', $bd_format)) . (($today) ? ' ' . L10n::t('[today]') : '');
+ $rr['date'] = L10n::getDay(DateTimeFormat::convert($rr['start'], $rr['adjust'] ? $a->timezone : 'UTC', 'UTC', $bd_format)) . (($today) ? ' ' . DI::l10n()->t('[today]') : '');
$rr['startime'] = $strt;
$rr['today'] = $today;
@@ -738,8 +738,8 @@ class Profile
return Renderer::replaceMacros($tpl, [
'$classtoday' => $classtoday,
'$count' => count($r),
- '$event_reminders' => L10n::t('Event Reminders'),
- '$event_title' => L10n::t('Upcoming events the next 7 days:'),
+ '$event_reminders' => DI::l10n()->t('Event Reminders'),
+ '$event_title' => DI::l10n()->t('Upcoming events the next 7 days:'),
'$events' => $r,
]);
}
@@ -753,19 +753,19 @@ class Profile
$profile = [];
- $profile['fullname'] = [L10n::t('Full Name:'), $a->profile['name']];
+ $profile['fullname'] = [DI::l10n()->t('Full Name:'), $a->profile['name']];
if (Feature::isEnabled($uid, 'profile_membersince')) {
- $profile['membersince'] = [L10n::t('Member since:'), DateTimeFormat::local($a->profile['register_date'])];
+ $profile['membersince'] = [DI::l10n()->t('Member since:'), DateTimeFormat::local($a->profile['register_date'])];
}
if ($a->profile['gender']) {
- $profile['gender'] = [L10n::t('Gender:'), L10n::t($a->profile['gender'])];
+ $profile['gender'] = [DI::l10n()->t('Gender:'), DI::l10n()->t($a->profile['gender'])];
}
if (!empty($a->profile['dob']) && $a->profile['dob'] > DBA::NULL_DATE) {
- $year_bd_format = L10n::t('j F, Y');
- $short_bd_format = L10n::t('j F');
+ $year_bd_format = DI::l10n()->t('j F, Y');
+ $short_bd_format = DI::l10n()->t('j F');
$val = L10n::getDay(
intval($a->profile['dob']) ?
@@ -773,18 +773,18 @@ class Profile
: DateTimeFormat::utc('2001-' . substr($a->profile['dob'], 5) . ' 00:00 +00:00', $short_bd_format)
);
- $profile['birthday'] = [L10n::t('Birthday:'), $val];
+ $profile['birthday'] = [DI::l10n()->t('Birthday:'), $val];
}
if (!empty($a->profile['dob'])
&& $a->profile['dob'] > DBA::NULL_DATE
&& $age = Temporal::getAgeByTimezone($a->profile['dob'], $a->profile['timezone'], '')
) {
- $profile['age'] = [L10n::t('Age:'), $age];
+ $profile['age'] = [DI::l10n()->t('Age:'), $age];
}
if ($a->profile['marital']) {
- $profile['marital'] = [L10n::t('Status:'), L10n::t($a->profile['marital'])];
+ $profile['marital'] = [DI::l10n()->t('Status:'), DI::l10n()->t($a->profile['marital'])];
}
/// @TODO Maybe use x() here, plus below?
@@ -793,94 +793,94 @@ class Profile
}
if (strlen($a->profile['howlong']) && $a->profile['howlong'] > DBA::NULL_DATETIME) {
- $profile['howlong'] = Temporal::getRelativeDate($a->profile['howlong'], L10n::t('for %1$d %2$s'));
+ $profile['howlong'] = Temporal::getRelativeDate($a->profile['howlong'], DI::l10n()->t('for %1$d %2$s'));
}
if ($a->profile['sexual']) {
- $profile['sexual'] = [L10n::t('Sexual Preference:'), L10n::t($a->profile['sexual'])];
+ $profile['sexual'] = [DI::l10n()->t('Sexual Preference:'), DI::l10n()->t($a->profile['sexual'])];
}
if ($a->profile['homepage']) {
- $profile['homepage'] = [L10n::t('Homepage:'), HTML::toLink($a->profile['homepage'])];
+ $profile['homepage'] = [DI::l10n()->t('Homepage:'), HTML::toLink($a->profile['homepage'])];
}
if ($a->profile['hometown']) {
- $profile['hometown'] = [L10n::t('Hometown:'), HTML::toLink($a->profile['hometown'])];
+ $profile['hometown'] = [DI::l10n()->t('Hometown:'), HTML::toLink($a->profile['hometown'])];
}
if ($a->profile['pub_keywords']) {
- $profile['pub_keywords'] = [L10n::t('Tags:'), $a->profile['pub_keywords']];
+ $profile['pub_keywords'] = [DI::l10n()->t('Tags:'), $a->profile['pub_keywords']];
}
if ($a->profile['politic']) {
- $profile['politic'] = [L10n::t('Political Views:'), $a->profile['politic']];
+ $profile['politic'] = [DI::l10n()->t('Political Views:'), $a->profile['politic']];
}
if ($a->profile['religion']) {
- $profile['religion'] = [L10n::t('Religion:'), $a->profile['religion']];
+ $profile['religion'] = [DI::l10n()->t('Religion:'), $a->profile['religion']];
}
if ($txt = BBCode::convert($a->profile['about'])) {
- $profile['about'] = [L10n::t('About:'), $txt];
+ $profile['about'] = [DI::l10n()->t('About:'), $txt];
}
if ($txt = BBCode::convert($a->profile['interest'])) {
- $profile['interest'] = [L10n::t('Hobbies/Interests:'), $txt];
+ $profile['interest'] = [DI::l10n()->t('Hobbies/Interests:'), $txt];
}
if ($txt = BBCode::convert($a->profile['likes'])) {
- $profile['likes'] = [L10n::t('Likes:'), $txt];
+ $profile['likes'] = [DI::l10n()->t('Likes:'), $txt];
}
if ($txt = BBCode::convert($a->profile['dislikes'])) {
- $profile['dislikes'] = [L10n::t('Dislikes:'), $txt];
+ $profile['dislikes'] = [DI::l10n()->t('Dislikes:'), $txt];
}
if ($txt = BBCode::convert($a->profile['contact'])) {
- $profile['contact'] = [L10n::t('Contact information and Social Networks:'), $txt];
+ $profile['contact'] = [DI::l10n()->t('Contact information and Social Networks:'), $txt];
}
if ($txt = BBCode::convert($a->profile['music'])) {
- $profile['music'] = [L10n::t('Musical interests:'), $txt];
+ $profile['music'] = [DI::l10n()->t('Musical interests:'), $txt];
}
if ($txt = BBCode::convert($a->profile['book'])) {
- $profile['book'] = [L10n::t('Books, literature:'), $txt];
+ $profile['book'] = [DI::l10n()->t('Books, literature:'), $txt];
}
if ($txt = BBCode::convert($a->profile['tv'])) {
- $profile['tv'] = [L10n::t('Television:'), $txt];
+ $profile['tv'] = [DI::l10n()->t('Television:'), $txt];
}
if ($txt = BBCode::convert($a->profile['film'])) {
- $profile['film'] = [L10n::t('Film/dance/culture/entertainment:'), $txt];
+ $profile['film'] = [DI::l10n()->t('Film/dance/culture/entertainment:'), $txt];
}
if ($txt = BBCode::convert($a->profile['romance'])) {
- $profile['romance'] = [L10n::t('Love/Romance:'), $txt];
+ $profile['romance'] = [DI::l10n()->t('Love/Romance:'), $txt];
}
if ($txt = BBCode::convert($a->profile['work'])) {
- $profile['work'] = [L10n::t('Work/employment:'), $txt];
+ $profile['work'] = [DI::l10n()->t('Work/employment:'), $txt];
}
if ($txt = BBCode::convert($a->profile['education'])) {
- $profile['education'] = [L10n::t('School/education:'), $txt];
+ $profile['education'] = [DI::l10n()->t('School/education:'), $txt];
}
//show subcribed forum if it is enabled in the usersettings
if (Feature::isEnabled($uid, 'forumlist_profile')) {
- $profile['forumlist'] = [L10n::t('Forums:'), ForumManager::profileAdvanced($uid)];
+ $profile['forumlist'] = [DI::l10n()->t('Forums:'), ForumManager::profileAdvanced($uid)];
}
if ($a->profile['uid'] == local_user()) {
- $profile['edit'] = [DI::baseUrl() . '/profiles/' . $a->profile['id'], L10n::t('Edit profile'), '', L10n::t('Edit profile')];
+ $profile['edit'] = [DI::baseUrl() . '/profiles/' . $a->profile['id'], DI::l10n()->t('Edit profile'), '', DI::l10n()->t('Edit profile')];
}
return Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Profile'),
- '$basic' => L10n::t('Basic'),
- '$advanced' => L10n::t('Advanced'),
+ '$title' => DI::l10n()->t('Profile'),
+ '$basic' => DI::l10n()->t('Basic'),
+ '$advanced' => DI::l10n()->t('Advanced'),
'$profile' => $profile
]);
}
@@ -906,34 +906,34 @@ class Profile
$tabs = [
[
- 'label' => L10n::t('Status'),
+ 'label' => DI::l10n()->t('Status'),
'url' => $baseProfileUrl,
'sel' => !$current ? 'active' : '',
- 'title' => L10n::t('Status Messages and Posts'),
+ 'title' => DI::l10n()->t('Status Messages and Posts'),
'id' => 'status-tab',
'accesskey' => 'm',
],
[
- 'label' => L10n::t('Profile'),
+ 'label' => DI::l10n()->t('Profile'),
'url' => $baseProfileUrl . '/?tab=profile',
'sel' => $current == 'profile' ? 'active' : '',
- 'title' => L10n::t('Profile Details'),
+ 'title' => DI::l10n()->t('Profile Details'),
'id' => 'profile-tab',
'accesskey' => 'r',
],
[
- 'label' => L10n::t('Photos'),
+ 'label' => DI::l10n()->t('Photos'),
'url' => DI::baseUrl() . '/photos/' . $nickname,
'sel' => $current == 'photos' ? 'active' : '',
- 'title' => L10n::t('Photo Albums'),
+ 'title' => DI::l10n()->t('Photo Albums'),
'id' => 'photo-tab',
'accesskey' => 'h',
],
[
- 'label' => L10n::t('Videos'),
+ 'label' => DI::l10n()->t('Videos'),
'url' => DI::baseUrl() . '/videos/' . $nickname,
'sel' => $current == 'videos' ? 'active' : '',
- 'title' => L10n::t('Videos'),
+ 'title' => DI::l10n()->t('Videos'),
'id' => 'video-tab',
'accesskey' => 'v',
],
@@ -942,10 +942,10 @@ class Profile
// the calendar link for the full featured events calendar
if ($is_owner && $a->theme_events_in_profile) {
$tabs[] = [
- 'label' => L10n::t('Events'),
+ 'label' => DI::l10n()->t('Events'),
'url' => DI::baseUrl() . '/events',
'sel' => $current == 'events' ? 'active' : '',
- 'title' => L10n::t('Events and Calendar'),
+ 'title' => DI::l10n()->t('Events and Calendar'),
'id' => 'events-tab',
'accesskey' => 'e',
];
@@ -953,10 +953,10 @@ class Profile
// with the public events of the calendar owner
} elseif (!$is_owner) {
$tabs[] = [
- 'label' => L10n::t('Events'),
+ 'label' => DI::l10n()->t('Events'),
'url' => DI::baseUrl() . '/cal/' . $nickname,
'sel' => $current == 'cal' ? 'active' : '',
- 'title' => L10n::t('Events and Calendar'),
+ 'title' => DI::l10n()->t('Events and Calendar'),
'id' => 'events-tab',
'accesskey' => 'e',
];
@@ -964,10 +964,10 @@ class Profile
if ($is_owner) {
$tabs[] = [
- 'label' => L10n::t('Personal Notes'),
+ 'label' => DI::l10n()->t('Personal Notes'),
'url' => DI::baseUrl() . '/notes',
'sel' => $current == 'notes' ? 'active' : '',
- 'title' => L10n::t('Only You Can See This'),
+ 'title' => DI::l10n()->t('Only You Can See This'),
'id' => 'notes-tab',
'accesskey' => 't',
];
@@ -975,20 +975,20 @@ class Profile
if (!empty($_SESSION['new_member']) && $is_owner) {
$tabs[] = [
- 'label' => L10n::t('Tips for New Members'),
+ 'label' => DI::l10n()->t('Tips for New Members'),
'url' => DI::baseUrl() . '/newmember',
'sel' => false,
- 'title' => L10n::t('Tips for New Members'),
+ 'title' => DI::l10n()->t('Tips for New Members'),
'id' => 'newmember-tab',
];
}
if ($is_owner || empty($a->profile['hide-friends'])) {
$tabs[] = [
- 'label' => L10n::t('Contacts'),
+ 'label' => DI::l10n()->t('Contacts'),
'url' => $baseProfileUrl . '/contacts',
'sel' => $current == 'contacts' ? 'active' : '',
- 'title' => L10n::t('Contacts'),
+ 'title' => DI::l10n()->t('Contacts'),
'id' => 'viewcontacts-tab',
'accesskey' => 'k',
];
@@ -1171,7 +1171,7 @@ class Profile
$a->contact = $arr['visitor'];
- info(L10n::t('OpenWebAuth: %1$s welcomes %2$s', DI::baseUrl()->getHostname(), $visitor['name']));
+ info(DI::l10n()->t('OpenWebAuth: %1$s welcomes %2$s', DI::baseUrl()->getHostname(), $visitor['name']));
Logger::log('OpenWebAuth: auth success from ' . $visitor['addr'], Logger::DEBUG);
}
diff --git a/src/Model/User.php b/src/Model/User.php
index 53db36498..ffee6ede2 100644
--- a/src/Model/User.php
+++ b/src/Model/User.php
@@ -354,7 +354,7 @@ class User
return $user['uid'];
}
- throw new Exception(L10n::t('Login failed'));
+ throw new Exception(DI::l10n()->t('Login failed'));
}
/**
@@ -386,7 +386,7 @@ class User
|| !isset($user['password'])
|| !isset($user['legacy_password'])
) {
- throw new Exception(L10n::t('Not enough information to authenticate'));
+ throw new Exception(DI::l10n()->t('Not enough information to authenticate'));
}
} elseif (is_int($user_info) || is_string($user_info)) {
if (is_int($user_info)) {
@@ -412,7 +412,7 @@ class User
}
if (!DBA::isResult($user)) {
- throw new Exception(L10n::t('User not found'));
+ throw new Exception(DI::l10n()->t('User not found'));
}
}
@@ -480,7 +480,7 @@ class User
public static function hashPassword($password)
{
if (!trim($password)) {
- throw new Exception(L10n::t('Password can\'t be empty'));
+ throw new Exception(DI::l10n()->t('Password can\'t be empty'));
}
return password_hash($password, PASSWORD_DEFAULT);
@@ -499,17 +499,17 @@ class User
$password = trim($password);
if (empty($password)) {
- throw new Exception(L10n::t('Empty passwords are not allowed.'));
+ throw new Exception(DI::l10n()->t('Empty passwords are not allowed.'));
}
if (!Config::get('system', 'disable_password_exposed', false) && self::isPasswordExposed($password)) {
- throw new Exception(L10n::t('The new password has been exposed in a public data dump, please choose another.'));
+ throw new Exception(DI::l10n()->t('The new password has been exposed in a public data dump, please choose another.'));
}
$allowed_characters = '!"#$%&\'()*+,-./;<=>?@[\]^_`{|}~';
if (!preg_match('/^[a-z0-9' . preg_quote($allowed_characters, '/') . ']+$/i', $password)) {
- throw new Exception(L10n::t('The password can\'t contain accentuated letters, white spaces or colons (:)'));
+ throw new Exception(DI::l10n()->t('The password can\'t contain accentuated letters, white spaces or colons (:)'));
}
return self::updatePasswordHashed($uid, self::hashPassword($password));
@@ -608,18 +608,18 @@ class User
$netpublish = $publish && Config::get('system', 'directory');
if ($password1 != $confirm) {
- throw new Exception(L10n::t('Passwords do not match. Password unchanged.'));
+ throw new Exception(DI::l10n()->t('Passwords do not match. Password unchanged.'));
} elseif ($password1 != '') {
$password = $password1;
}
if ($using_invites) {
if (!$invite_id) {
- throw new Exception(L10n::t('An invitation is required.'));
+ throw new Exception(DI::l10n()->t('An invitation is required.'));
}
if (!Register::existsByHash($invite_id)) {
- throw new Exception(L10n::t('Invitation could not be verified.'));
+ throw new Exception(DI::l10n()->t('Invitation could not be verified.'));
}
}
@@ -627,7 +627,7 @@ class User
if (empty($username) || empty($email) || empty($nickname)) {
if ($openid_url) {
if (!Network::isUrlValid($openid_url)) {
- throw new Exception(L10n::t('Invalid OpenID url'));
+ throw new Exception(DI::l10n()->t('Invalid OpenID url'));
}
$_SESSION['register'] = 1;
$_SESSION['openid'] = $openid_url;
@@ -640,13 +640,13 @@ class User
try {
$authurl = $openid->authUrl();
} catch (Exception $e) {
- throw new Exception(L10n::t('We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID.') . EOL . EOL . L10n::t('The error message was:') . $e->getMessage(), 0, $e);
+ throw new Exception(DI::l10n()->t('We encountered a problem while logging in with the OpenID you provided. Please check the correct spelling of the ID.') . EOL . EOL . DI::l10n()->t('The error message was:') . $e->getMessage(), 0, $e);
}
System::externalRedirect($authurl);
// NOTREACHED
}
- throw new Exception(L10n::t('Please enter the required information.'));
+ throw new Exception(DI::l10n()->t('Please enter the required information.'));
}
if (!Network::isUrlValid($openid_url)) {
@@ -660,7 +660,7 @@ class User
$username_max_length = max(1, min(64, intval(Config::get('system', 'username_max_length', 48))));
if ($username_min_length > $username_max_length) {
- Logger::log(L10n::t('system.username_min_length (%s) and system.username_max_length (%s) are excluding each other, swapping values.', $username_min_length, $username_max_length), Logger::WARNING);
+ Logger::log(DI::l10n()->t('system.username_min_length (%s) and system.username_max_length (%s) are excluding each other, swapping values.', $username_min_length, $username_max_length), Logger::WARNING);
$tmp = $username_min_length;
$username_min_length = $username_max_length;
$username_max_length = $tmp;
@@ -679,23 +679,23 @@ class User
if (!$loose_reg) {
$username = mb_convert_case($username, MB_CASE_TITLE, 'UTF-8');
if (strpos($username, ' ') === false) {
- throw new Exception(L10n::t("That doesn't appear to be your full (First Last) name."));
+ throw new Exception(DI::l10n()->t("That doesn't appear to be your full (First Last) name."));
}
}
if (!Network::isEmailDomainAllowed($email)) {
- throw new Exception(L10n::t('Your email domain is not among those allowed on this site.'));
+ throw new Exception(DI::l10n()->t('Your email domain is not among those allowed on this site.'));
}
if (!filter_var($email, FILTER_VALIDATE_EMAIL) || !Network::isEmailDomainValid($email)) {
- throw new Exception(L10n::t('Not a valid email address.'));
+ throw new Exception(DI::l10n()->t('Not a valid email address.'));
}
if (self::isNicknameBlocked($nickname)) {
- throw new Exception(L10n::t('The nickname was blocked from registration by the nodes admin.'));
+ throw new Exception(DI::l10n()->t('The nickname was blocked from registration by the nodes admin.'));
}
if (Config::get('system', 'block_extended_register', false) && DBA::exists('user', ['email' => $email])) {
- throw new Exception(L10n::t('Cannot use that email.'));
+ throw new Exception(DI::l10n()->t('Cannot use that email.'));
}
// Disallow somebody creating an account using openid that uses the admin email address,
@@ -703,14 +703,14 @@ class User
if (Config::get('config', 'admin_email') && strlen($openid_url)) {
$adminlist = explode(',', str_replace(' ', '', strtolower(Config::get('config', 'admin_email'))));
if (in_array(strtolower($email), $adminlist)) {
- throw new Exception(L10n::t('Cannot use that email.'));
+ throw new Exception(DI::l10n()->t('Cannot use that email.'));
}
}
$nickname = $data['nickname'] = strtolower($nickname);
if (!preg_match('/^[a-z0-9][a-z0-9\_]*$/', $nickname)) {
- throw new Exception(L10n::t('Your nickname can only contain a-z, 0-9 and _.'));
+ throw new Exception(DI::l10n()->t('Your nickname can only contain a-z, 0-9 and _.'));
}
// Check existing and deleted accounts for this nickname.
@@ -718,7 +718,7 @@ class User
DBA::exists('user', ['nickname' => $nickname])
|| DBA::exists('userd', ['username' => $nickname])
) {
- throw new Exception(L10n::t('Nickname is already registered. Please choose another.'));
+ throw new Exception(DI::l10n()->t('Nickname is already registered. Please choose another.'));
}
$new_password = strlen($password) ? $password : User::generateNewPassword();
@@ -728,7 +728,7 @@ class User
$keys = Crypto::newKeypair(4096);
if ($keys === false) {
- throw new Exception(L10n::t('SERIOUS ERROR: Generation of security keys failed.'));
+ throw new Exception(DI::l10n()->t('SERIOUS ERROR: Generation of security keys failed.'));
}
$prvkey = $keys['prvkey'];
@@ -762,11 +762,11 @@ class User
$uid = DBA::lastInsertId();
$user = DBA::selectFirst('user', [], ['uid' => $uid]);
} else {
- throw new Exception(L10n::t('An error occurred during registration. Please try again.'));
+ throw new Exception(DI::l10n()->t('An error occurred during registration. Please try again.'));
}
if (!$uid) {
- throw new Exception(L10n::t('An error occurred during registration. Please try again.'));
+ throw new Exception(DI::l10n()->t('An error occurred during registration. Please try again.'));
}
// if somebody clicked submit twice very quickly, they could end up with two accounts
@@ -775,7 +775,7 @@ class User
if ($user_count > 1) {
DBA::delete('user', ['uid' => $uid]);
- throw new Exception(L10n::t('Nickname is already registered. Please choose another.'));
+ throw new Exception(DI::l10n()->t('Nickname is already registered. Please choose another.'));
}
$insert_result = DBA::insert('profile', [
@@ -786,28 +786,28 @@ class User
'publish' => $publish,
'is-default' => 1,
'net-publish' => $netpublish,
- 'profile-name' => L10n::t('default')
+ 'profile-name' => DI::l10n()->t('default')
]);
if (!$insert_result) {
DBA::delete('user', ['uid' => $uid]);
- throw new Exception(L10n::t('An error occurred creating your default profile. Please try again.'));
+ throw new Exception(DI::l10n()->t('An error occurred creating your default profile. Please try again.'));
}
// Create the self contact
if (!Contact::createSelfFromUserId($uid)) {
DBA::delete('user', ['uid' => $uid]);
- throw new Exception(L10n::t('An error occurred creating your self contact. Please try again.'));
+ throw new Exception(DI::l10n()->t('An error occurred creating your self contact. Please try again.'));
}
// Create a group with no members. This allows somebody to use it
// right away as a default group for new contacts.
- $def_gid = Group::create($uid, L10n::t('Friends'));
+ $def_gid = Group::create($uid, DI::l10n()->t('Friends'));
if (!$def_gid) {
DBA::delete('user', ['uid' => $uid]);
- throw new Exception(L10n::t('An error occurred creating your default contact group. Please try again.'));
+ throw new Exception(DI::l10n()->t('An error occurred creating your default contact group. Please try again.'));
}
$fields = ['def_gid' => $def_gid];
@@ -837,7 +837,7 @@ class User
$resource_id = Photo::newResource();
- $r = Photo::store($Image, $uid, 0, $resource_id, $filename, L10n::t('Profile Photos'), 4);
+ $r = Photo::store($Image, $uid, 0, $resource_id, $filename, DI::l10n()->t('Profile Photos'), 4);
if ($r === false) {
$photo_failure = true;
@@ -845,7 +845,7 @@ class User
$Image->scaleDown(80);
- $r = Photo::store($Image, $uid, 0, $resource_id, $filename, L10n::t('Profile Photos'), 5);
+ $r = Photo::store($Image, $uid, 0, $resource_id, $filename, DI::l10n()->t('Profile Photos'), 5);
if ($r === false) {
$photo_failure = true;
@@ -853,7 +853,7 @@ class User
$Image->scaleDown(48);
- $r = Photo::store($Image, $uid, 0, $resource_id, $filename, L10n::t('Profile Photos'), 6);
+ $r = Photo::store($Image, $uid, 0, $resource_id, $filename, DI::l10n()->t('Profile Photos'), 6);
if ($r === false) {
$photo_failure = true;
@@ -883,7 +883,7 @@ class User
*/
public static function sendRegisterPendingEmail($user, $sitename, $siteurl, $password)
{
- $body = Strings::deindent(L10n::t(
+ $body = Strings::deindent(DI::l10n()->t(
'
Dear %1$s,
Thank you for registering at %2$s. Your account is pending for approval by the administrator.
@@ -905,7 +905,7 @@ class User
'type' => SYSTEM_EMAIL,
'uid' => $user['uid'],
'to_email' => $user['email'],
- 'subject' => L10n::t('Registration at %s', $sitename),
+ 'subject' => DI::l10n()->t('Registration at %s', $sitename),
'body' => $body
]);
}
@@ -973,7 +973,7 @@ class User
'language' => $user['language'],
'type' => SYSTEM_EMAIL,
'to_email' => $user['email'],
- 'subject' => L10n::t('Registration details for %s', $sitename),
+ 'subject' => DI::l10n()->t('Registration details for %s', $sitename),
'preamble' => $preamble,
'body' => $body
]);
diff --git a/src/Module/Admin/Addons/Details.php b/src/Module/Admin/Addons/Details.php
index bc1925717..878b7c3e5 100644
--- a/src/Module/Admin/Addons/Details.php
+++ b/src/Module/Admin/Addons/Details.php
@@ -49,7 +49,7 @@ class Details extends BaseAdminModule
$addon = $a->argv[2];
$addon = Strings::sanitizeFilePathItem($addon);
if (!is_file("addon/$addon/$addon.php")) {
- notice(L10n::t('Addon not found.'));
+ notice(DI::l10n()->t('Addon not found.'));
Addon::uninstall($addon);
DI::baseUrl()->redirect('admin/addons');
}
@@ -60,10 +60,10 @@ class Details extends BaseAdminModule
// Toggle addon status
if (Addon::isEnabled($addon)) {
Addon::uninstall($addon);
- info(L10n::t('Addon %s disabled.', $addon));
+ info(DI::l10n()->t('Addon %s disabled.', $addon));
} else {
Addon::install($addon);
- info(L10n::t('Addon %s enabled.', $addon));
+ info(DI::l10n()->t('Addon %s enabled.', $addon));
}
Addon::saveEnabledList();
@@ -74,10 +74,10 @@ class Details extends BaseAdminModule
// display addon details
if (Addon::isEnabled($addon)) {
$status = 'on';
- $action = L10n::t('Disable');
+ $action = DI::l10n()->t('Disable');
} else {
$status = 'off';
- $action = L10n::t('Enable');
+ $action = DI::l10n()->t('Enable');
}
$readme = null;
@@ -97,18 +97,18 @@ class Details extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/addons/details.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Addons'),
- '$toggle' => L10n::t('Toggle'),
- '$settings' => L10n::t('Settings'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Addons'),
+ '$toggle' => DI::l10n()->t('Toggle'),
+ '$settings' => DI::l10n()->t('Settings'),
'$baseurl' => DI::baseUrl()->get(true),
'$addon' => $addon,
'$status' => $status,
'$action' => $action,
'$info' => Addon::getInfo($addon),
- '$str_author' => L10n::t('Author: '),
- '$str_maintainer' => L10n::t('Maintainer: '),
+ '$str_author' => DI::l10n()->t('Author: '),
+ '$str_maintainer' => DI::l10n()->t('Maintainer: '),
'$admin_form' => $admin_form,
'$function' => 'addons',
diff --git a/src/Module/Admin/Addons/Index.php b/src/Module/Admin/Addons/Index.php
index 511cb4475..48276aa5d 100644
--- a/src/Module/Admin/Addons/Index.php
+++ b/src/Module/Admin/Addons/Index.php
@@ -28,11 +28,11 @@ class Index extends BaseAdminModule
$addon = $_GET['addon'] ?? '';
if (Addon::isEnabled($addon)) {
Addon::uninstall($addon);
- info(L10n::t('Addon %s disabled.', $addon));
+ info(DI::l10n()->t('Addon %s disabled.', $addon));
} elseif (Addon::install($addon)) {
- info(L10n::t('Addon %s enabled.', $addon));
+ info(DI::l10n()->t('Addon %s enabled.', $addon));
} else {
- info(L10n::t('Addon %s failed to install.', $addon));
+ info(DI::l10n()->t('Addon %s failed to install.', $addon));
}
break;
@@ -46,15 +46,15 @@ class Index extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/addons/index.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Addons'),
- '$submit' => L10n::t('Save Settings'),
- '$reload' => L10n::t('Reload active addons'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Addons'),
+ '$submit' => DI::l10n()->t('Save Settings'),
+ '$reload' => DI::l10n()->t('Reload active addons'),
'$baseurl' => DI::baseUrl()->get(true),
'$function' => 'addons',
'$addons' => $addons,
'$pcount' => count($addons),
- '$noplugshint' => L10n::t('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', 'https://github.com/friendica/friendica-addons', 'http://addons.friendi.ca'),
+ '$noplugshint' => DI::l10n()->t('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', 'https://github.com/friendica/friendica-addons', 'http://addons.friendi.ca'),
'$form_security_token' => parent::getFormSecurityToken('admin_addons'),
]);
}
diff --git a/src/Module/Admin/Blocklist/Contact.php b/src/Module/Admin/Blocklist/Contact.php
index 7bcdef468..bb7868f95 100644
--- a/src/Module/Admin/Blocklist/Contact.php
+++ b/src/Module/Admin/Blocklist/Contact.php
@@ -26,9 +26,9 @@ class Contact extends BaseAdminModule
$contact_id = Model\Contact::getIdForURL($contact_url);
if ($contact_id) {
Model\Contact::block($contact_id, $block_reason);
- notice(L10n::t('The contact has been blocked from the node'));
+ notice(DI::l10n()->t('The contact has been blocked from the node'));
} else {
- notice(L10n::t('Could not find any contact entry for this URL (%s)', $contact_url));
+ notice(DI::l10n()->t('Could not find any contact entry for this URL (%s)', $contact_url));
}
}
@@ -57,19 +57,19 @@ class Contact extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/blocklist/contact.tpl');
$o = Renderer::replaceMacros($t, [
// strings //
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Remote Contact Blocklist'),
- '$description' => L10n::t('This page allows you to prevent any message from a remote contact to reach your node.'),
- '$submit' => L10n::t('Block Remote Contact'),
- '$select_all' => L10n::t('select all'),
- '$select_none' => L10n::t('select none'),
- '$block' => L10n::t('Block'),
- '$unblock' => L10n::t('Unblock'),
- '$no_data' => L10n::t('No remote contact is blocked from this node.'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Remote Contact Blocklist'),
+ '$description' => DI::l10n()->t('This page allows you to prevent any message from a remote contact to reach your node.'),
+ '$submit' => DI::l10n()->t('Block Remote Contact'),
+ '$select_all' => DI::l10n()->t('select all'),
+ '$select_none' => DI::l10n()->t('select none'),
+ '$block' => DI::l10n()->t('Block'),
+ '$unblock' => DI::l10n()->t('Unblock'),
+ '$no_data' => DI::l10n()->t('No remote contact is blocked from this node.'),
- '$h_contacts' => L10n::t('Blocked Remote Contacts'),
- '$h_newblock' => L10n::t('Block New Remote Contact'),
- '$th_contacts' => [L10n::t('Photo'), L10n::t('Name'), L10n::t('Reason')],
+ '$h_contacts' => DI::l10n()->t('Blocked Remote Contacts'),
+ '$h_newblock' => DI::l10n()->t('Block New Remote Contact'),
+ '$th_contacts' => [DI::l10n()->t('Photo'), DI::l10n()->t('Name'), DI::l10n()->t('Reason')],
'$form_security_token' => parent::getFormSecurityToken('admin_contactblock'),
@@ -79,8 +79,8 @@ class Contact extends BaseAdminModule
'$contacts' => $contacts,
'$total_contacts' => L10n::tt('%s total blocked contact', '%s total blocked contacts', $total),
'$paginate' => $pager->renderFull($total),
- '$contacturl' => ['contact_url', L10n::t('Profile URL'), '', L10n::t('URL of the remote contact to block.')],
- '$contact_block_reason' => ['contact_block_reason', L10n::t('Block Reason')],
+ '$contacturl' => ['contact_url', DI::l10n()->t('Profile URL'), '', DI::l10n()->t('URL of the remote contact to block.')],
+ '$contact_block_reason' => ['contact_block_reason', DI::l10n()->t('Block Reason')],
]);
return $o;
}
diff --git a/src/Module/Admin/Blocklist/Server.php b/src/Module/Admin/Blocklist/Server.php
index 43c6543e4..4ae395fc0 100644
--- a/src/Module/Admin/Blocklist/Server.php
+++ b/src/Module/Admin/Blocklist/Server.php
@@ -29,7 +29,7 @@ class Server extends BaseAdminModule
'reason' => Strings::escapeTags(trim($_POST['newentry_reason']))
];
Config::set('system', 'blocklist', $blocklist);
- info(L10n::t('Server domain pattern added to blocklist.') . EOL);
+ info(DI::l10n()->t('Server domain pattern added to blocklist.') . EOL);
} else {
// Edit the entries from blocklist
$blocklist = [];
@@ -45,7 +45,7 @@ class Server extends BaseAdminModule
}
}
Config::set('system', 'blocklist', $blocklist);
- info(L10n::t('Site blocklist updated.') . EOL);
+ info(DI::l10n()->t('Site blocklist updated.') . EOL);
}
DI::baseUrl()->redirect('admin/blocklist/server');
@@ -60,37 +60,37 @@ class Server extends BaseAdminModule
if (is_array($blocklist)) {
foreach ($blocklist as $id => $b) {
$blocklistform[] = [
- 'domain' => ["domain[$id]", L10n::t('Blocked server domain pattern'), $b['domain'], '', 'required', '', ''],
- 'reason' => ["reason[$id]", L10n::t("Reason for the block"), $b['reason'], '', 'required', '', ''],
- 'delete' => ["delete[$id]", L10n::t("Delete server domain pattern") . ' (' . $b['domain'] . ')', false, L10n::t("Check to delete this entry from the blocklist")]
+ 'domain' => ["domain[$id]", DI::l10n()->t('Blocked server domain pattern'), $b['domain'], '', 'required', '', ''],
+ 'reason' => ["reason[$id]", DI::l10n()->t("Reason for the block"), $b['reason'], '', 'required', '', ''],
+ 'delete' => ["delete[$id]", DI::l10n()->t("Delete server domain pattern") . ' (' . $b['domain'] . ')', false, DI::l10n()->t("Check to delete this entry from the blocklist")]
];
}
}
$t = Renderer::getMarkupTemplate('admin/blocklist/server.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Server Domain Pattern Blocklist'),
- '$intro' => L10n::t('This page can be used to define a blacklist of server domain patterns from the federated network that are not allowed to interact with your node. For each domain pattern you should also provide the reason why you block it.'),
- '$public' => L10n::t('The list of blocked server domain patterns will be made publically available on the /friendica page so that your users and people investigating communication problems can find the reason easily.'),
- '$syntax' => L10n::t('The server domain pattern syntax is case-insensitive shell wildcard, comprising the following special characters:
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Server Domain Pattern Blocklist'),
+ '$intro' => DI::l10n()->t('This page can be used to define a blacklist of server domain patterns from the federated network that are not allowed to interact with your node. For each domain pattern you should also provide the reason why you block it.'),
+ '$public' => DI::l10n()->t('The list of blocked server domain patterns will be made publically available on the /friendica page so that your users and people investigating communication problems can find the reason easily.'),
+ '$syntax' => DI::l10n()->t('The server domain pattern syntax is case-insensitive shell wildcard, comprising the following special characters:
*
: Any number of characters
?
: Any single character
[<char1><char2>...]
: char1 or char2
'),
- '$addtitle' => L10n::t('Add new entry to block list'),
- '$newdomain' => ['newentry_domain', L10n::t('Server Domain Pattern'), '', L10n::t('The domain pattern of the new server to add to the block list. Do not include the protocol.'), 'required', '', ''],
- '$newreason' => ['newentry_reason', L10n::t('Block reason'), '', L10n::t('The reason why you blocked this server domain pattern.'), 'required', '', ''],
- '$submit' => L10n::t('Add Entry'),
- '$savechanges' => L10n::t('Save changes to the blocklist'),
- '$currenttitle' => L10n::t('Current Entries in the Blocklist'),
- '$thurl' => L10n::t('Blocked server domain pattern'),
- '$threason' => L10n::t('Reason for the block'),
- '$delentry' => L10n::t('Delete entry from blocklist'),
+ '$addtitle' => DI::l10n()->t('Add new entry to block list'),
+ '$newdomain' => ['newentry_domain', DI::l10n()->t('Server Domain Pattern'), '', DI::l10n()->t('The domain pattern of the new server to add to the block list. Do not include the protocol.'), 'required', '', ''],
+ '$newreason' => ['newentry_reason', DI::l10n()->t('Block reason'), '', DI::l10n()->t('The reason why you blocked this server domain pattern.'), 'required', '', ''],
+ '$submit' => DI::l10n()->t('Add Entry'),
+ '$savechanges' => DI::l10n()->t('Save changes to the blocklist'),
+ '$currenttitle' => DI::l10n()->t('Current Entries in the Blocklist'),
+ '$thurl' => DI::l10n()->t('Blocked server domain pattern'),
+ '$threason' => DI::l10n()->t('Reason for the block'),
+ '$delentry' => DI::l10n()->t('Delete entry from blocklist'),
'$entries' => $blocklistform,
'$baseurl' => DI::baseUrl()->get(true),
- '$confirm_delete' => L10n::t('Delete entry from blocklist?'),
+ '$confirm_delete' => DI::l10n()->t('Delete entry from blocklist?'),
'$form_security_token' => parent::getFormSecurityToken("admin_blocklist")
]);
}
diff --git a/src/Module/Admin/DBSync.php b/src/Module/Admin/DBSync.php
index a0e70737e..4368e6eed 100644
--- a/src/Module/Admin/DBSync.php
+++ b/src/Module/Admin/DBSync.php
@@ -30,7 +30,7 @@ class DBSync extends BaseAdminModule
if (intval($curr) == $update) {
Config::set('system', 'build', intval($curr) + 1);
}
- info(L10n::t('Update has been marked successful') . EOL);
+ info(DI::l10n()->t('Update has been marked successful') . EOL);
}
DI::baseUrl()->redirect('admin/dbsync');
}
@@ -40,11 +40,11 @@ class DBSync extends BaseAdminModule
// @TODO Seems like a similar logic like Update::check()
$retval = DBStructure::update($a->getBasePath(), false, true);
if ($retval === '') {
- $o .= L10n::t("Database structure update %s was successfully applied.", DB_UPDATE_VERSION) . " ";
+ $o .= DI::l10n()->t("Database structure update %s was successfully applied.", DB_UPDATE_VERSION) . " ";
Config::set('database', 'last_successful_update', DB_UPDATE_VERSION);
Config::set('database', 'last_successful_update_time', time());
} else {
- $o .= L10n::t("Executing of database structure update %s failed with error: %s", DB_UPDATE_VERSION, $retval) . " ";
+ $o .= DI::l10n()->t("Executing of database structure update %s failed with error: %s", DB_UPDATE_VERSION, $retval) . " ";
}
if ($a->argv[2] === 'check') {
return $o;
@@ -61,15 +61,15 @@ class DBSync extends BaseAdminModule
$retval = $func();
if ($retval === Update::FAILED) {
- $o .= L10n::t("Executing %s failed with error: %s", $func, $retval);
+ $o .= DI::l10n()->t("Executing %s failed with error: %s", $func, $retval);
} elseif ($retval === Update::SUCCESS) {
- $o .= L10n::t('Update %s was successfully applied.', $func);
+ $o .= DI::l10n()->t('Update %s was successfully applied.', $func);
Config::set('database', $func, 'success');
} else {
- $o .= L10n::t('Update %s did not return a status. Unknown if it succeeded.', $func);
+ $o .= DI::l10n()->t('Update %s did not return a status. Unknown if it succeeded.', $func);
}
} else {
- $o .= L10n::t('There was no additional update function %s that needed to be called.', $func) . " ";
+ $o .= DI::l10n()->t('There was no additional update function %s that needed to be called.', $func) . " ";
Config::set('database', $func, 'success');
}
@@ -89,16 +89,16 @@ class DBSync extends BaseAdminModule
if (!count($failed)) {
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('admin/dbsync/structure_check.tpl'), [
'$base' => DI::baseUrl()->get(true),
- '$banner' => L10n::t('No failed updates.'),
- '$check' => L10n::t('Check database structure'),
+ '$banner' => DI::l10n()->t('No failed updates.'),
+ '$check' => DI::l10n()->t('Check database structure'),
]);
} else {
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('admin/dbsync/failed_updates.tpl'), [
'$base' => DI::baseUrl()->get(true),
- '$banner' => L10n::t('Failed Updates'),
- '$desc' => L10n::t('This does not include updates prior to 1139, which did not return a status.'),
- '$mark' => L10n::t("Mark success \x28if update was manually applied\x29"),
- '$apply' => L10n::t('Attempt to execute this update step automatically'),
+ '$banner' => DI::l10n()->t('Failed Updates'),
+ '$desc' => DI::l10n()->t('This does not include updates prior to 1139, which did not return a status.'),
+ '$mark' => DI::l10n()->t("Mark success \x28if update was manually applied\x29"),
+ '$apply' => DI::l10n()->t('Attempt to execute this update step automatically'),
'$failed' => $failed
]);
}
diff --git a/src/Module/Admin/Features.php b/src/Module/Admin/Features.php
index 7cc7932af..9171d70fe 100644
--- a/src/Module/Admin/Features.php
+++ b/src/Module/Admin/Features.php
@@ -56,8 +56,8 @@ class Features extends BaseAdminModule
foreach (array_slice($fdata, 1) as $f) {
$set = Config::get('feature', $f[0], $f[3]);
$arr[$fname][1][] = [
- ['feature_' . $f[0], $f[1], $set, $f[2], [L10n::t('Off'), L10n::t('On')]],
- ['featurelock_' . $f[0], L10n::t('Lock feature %s', $f[1]), (($f[4] !== false) ? "1" : ''), '', [L10n::t('Off'), L10n::t('On')]]
+ ['feature_' . $f[0], $f[1], $set, $f[2], [DI::l10n()->t('Off'), DI::l10n()->t('On')]],
+ ['featurelock_' . $f[0], DI::l10n()->t('Lock feature %s', $f[1]), (($f[4] !== false) ? "1" : ''), '', [DI::l10n()->t('Off'), DI::l10n()->t('On')]]
];
}
}
@@ -65,9 +65,9 @@ class Features extends BaseAdminModule
$tpl = Renderer::getMarkupTemplate('admin/features.tpl');
$o = Renderer::replaceMacros($tpl, [
'$form_security_token' => parent::getFormSecurityToken("admin_manage_features"),
- '$title' => L10n::t('Manage Additional Features'),
+ '$title' => DI::l10n()->t('Manage Additional Features'),
'$features' => $arr,
- '$submit' => L10n::t('Save Settings'),
+ '$submit' => DI::l10n()->t('Save Settings'),
]);
return $o;
diff --git a/src/Module/Admin/Federation.php b/src/Module/Admin/Federation.php
index db7781f0f..4d7407432 100644
--- a/src/Module/Admin/Federation.php
+++ b/src/Module/Admin/Federation.php
@@ -31,7 +31,7 @@ class Federation extends BaseAdminModule
'socialhome' => ['name' => 'SocialHome', 'color' => '#52056b'], // lilac from the Django Image used at the Socialhome homepage
'wordpress' => ['name' => 'WordPress', 'color' => '#016087'], // Background color of the homepage
'writefreely' => ['name' => 'WriteFreely', 'color' => '#292929'], // Font color of the homepage
- 'other' => ['name' => L10n::t('Other'), 'color' => '#F1007E'], // ActivityPub main color
+ 'other' => ['name' => DI::l10n()->t('Other'), 'color' => '#F1007E'], // ActivityPub main color
];
$platforms = array_keys($systems);
@@ -85,7 +85,7 @@ class Federation extends BaseAdminModule
if ($platform != $gserver['platform']) {
if ($platform == 'other') {
$versionCounts = $counts[$platform][1] ?? [];
- $versionCounts[] = ['version' => $gserver['platform'] ?: L10n::t('unknown'), 'total' => $gserver['total']];
+ $versionCounts[] = ['version' => $gserver['platform'] ?: DI::l10n()->t('unknown'), 'total' => $gserver['total']];
$gserver['version'] = '';
} else {
$versionCounts = array_merge($versionCounts, $counts[$platform][1] ?? []);
@@ -113,20 +113,20 @@ class Federation extends BaseAdminModule
DBA::close($gserver);
// some helpful text
- $intro = L10n::t('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.');
- $hint = L10n::t('The Auto Discovered Contact Directory feature is not enabled, it will improve the data displayed here.');
+ $intro = DI::l10n()->t('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.');
+ $hint = DI::l10n()->t('The Auto Discovered Contact Directory feature is not enabled, it will improve the data displayed here.');
// load the template, replace the macros and return the page content
$t = Renderer::getMarkupTemplate('admin/federation.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Federation Statistics'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Federation Statistics'),
'$intro' => $intro,
'$hint' => $hint,
'$autoactive' => Config::get('system', 'poco_completion'),
'$counts' => $counts,
'$version' => FRIENDICA_VERSION,
- '$legendtext' => L10n::t('Currently this node is aware of %d nodes with %d registered users from the following platforms:', $total, $users),
+ '$legendtext' => DI::l10n()->t('Currently this node is aware of %d nodes with %d registered users from the following platforms:', $total, $users),
]);
}
@@ -247,7 +247,7 @@ class Federation extends BaseAdminModule
// to the version string for the displayed list.
foreach ($versionCounts as $key => $value) {
if ($versionCounts[$key]['version'] == '') {
- $versionCounts[$key] = ['total' => $versionCounts[$key]['total'], 'version' => L10n::t('unknown')];
+ $versionCounts[$key] = ['total' => $versionCounts[$key]['total'], 'version' => DI::l10n()->t('unknown')];
}
}
diff --git a/src/Module/Admin/Item/Delete.php b/src/Module/Admin/Item/Delete.php
index 744a57f07..6ceb20c05 100644
--- a/src/Module/Admin/Item/Delete.php
+++ b/src/Module/Admin/Item/Delete.php
@@ -33,7 +33,7 @@ class Delete extends BaseAdminModule
Item::delete(['guid' => $guid]);
}
- info(L10n::t('Item marked for deletion.') . EOL);
+ info(DI::l10n()->t('Item marked for deletion.') . EOL);
DI::baseUrl()->redirect('admin/item/delete');
}
@@ -44,12 +44,12 @@ class Delete extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/item/delete.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Delete Item'),
- '$submit' => L10n::t('Delete this Item'),
- '$intro1' => L10n::t('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.'),
- '$intro2' => L10n::t('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.'),
- '$deleteitemguid' => ['deleteitemguid', L10n::t("GUID"), '', L10n::t("The GUID of the item you want to delete."), 'required', 'autofocus'],
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Delete Item'),
+ '$submit' => DI::l10n()->t('Delete this Item'),
+ '$intro1' => DI::l10n()->t('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.'),
+ '$intro2' => DI::l10n()->t('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.'),
+ '$deleteitemguid' => ['deleteitemguid', DI::l10n()->t("GUID"), '', DI::l10n()->t("The GUID of the item you want to delete."), 'required', 'autofocus'],
'$form_security_token' => parent::getFormSecurityToken("admin_deleteitem")
]);
}
diff --git a/src/Module/Admin/Item/Source.php b/src/Module/Admin/Item/Source.php
index 610f61aec..9bdcd9b7d 100644
--- a/src/Module/Admin/Item/Source.php
+++ b/src/Module/Admin/Item/Source.php
@@ -45,7 +45,7 @@ class Source extends BaseAdminModule
$tpl = Renderer::getMarkupTemplate('admin/item/source.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$guid' => ['guid', L10n::t('Item Guid'), $guid, ''],
+ '$guid' => ['guid', DI::l10n()->t('Item Guid'), $guid, ''],
'$source' => $source,
'$item_uri' => $item_uri,
'$item_id' => $item_id,
diff --git a/src/Module/Admin/Logs/Settings.php b/src/Module/Admin/Logs/Settings.php
index 21380af4a..f04057a98 100644
--- a/src/Module/Admin/Logs/Settings.php
+++ b/src/Module/Admin/Logs/Settings.php
@@ -25,7 +25,7 @@ class Settings extends BaseAdminModule
if (is_file($logfile) &&
!is_writeable($logfile)) {
- notice(L10n::t('The logfile \'%s\' is not writable. No logging possible', $logfile));
+ notice(DI::l10n()->t('The logfile \'%s\' is not writable. No logging possible', $logfile));
return;
}
@@ -34,7 +34,7 @@ class Settings extends BaseAdminModule
Config::set('system', 'loglevel', $loglevel);
}
- info(L10n::t("Log settings updated."));
+ info(DI::l10n()->t("Log settings updated."));
DI::baseUrl()->redirect('admin/logs');
}
@@ -51,27 +51,27 @@ class Settings extends BaseAdminModule
];
if (ini_get('log_errors')) {
- $phplogenabled = L10n::t('PHP log currently enabled.');
+ $phplogenabled = DI::l10n()->t('PHP log currently enabled.');
} else {
- $phplogenabled = L10n::t('PHP log currently disabled.');
+ $phplogenabled = DI::l10n()->t('PHP log currently disabled.');
}
$t = Renderer::getMarkupTemplate('admin/logs/settings.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Logs'),
- '$submit' => L10n::t('Save Settings'),
- '$clear' => L10n::t('Clear'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Logs'),
+ '$submit' => DI::l10n()->t('Save Settings'),
+ '$clear' => DI::l10n()->t('Clear'),
'$baseurl' => DI::baseUrl()->get(true),
'$logname' => Config::get('system', 'logfile'),
// see /help/smarty3-templates#1_1 on any Friendica node
- '$debugging' => ['debugging', L10n::t("Enable Debugging"), Config::get('system', 'debugging'), ""],
- '$logfile' => ['logfile', L10n::t("Log file"), Config::get('system', 'logfile'), L10n::t("Must be writable by web server. Relative to your Friendica top-level directory.")],
- '$loglevel' => ['loglevel', L10n::t("Log level"), Config::get('system', 'loglevel'), "", $log_choices],
+ '$debugging' => ['debugging', DI::l10n()->t("Enable Debugging"), Config::get('system', 'debugging'), ""],
+ '$logfile' => ['logfile', DI::l10n()->t("Log file"), Config::get('system', 'logfile'), DI::l10n()->t("Must be writable by web server. Relative to your Friendica top-level directory.")],
+ '$loglevel' => ['loglevel', DI::l10n()->t("Log level"), Config::get('system', 'loglevel'), "", $log_choices],
'$form_security_token' => parent::getFormSecurityToken("admin_logs"),
- '$phpheader' => L10n::t("PHP logging"),
- '$phphint' => L10n::t("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."),
+ '$phpheader' => DI::l10n()->t("PHP logging"),
+ '$phphint' => DI::l10n()->t("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."),
'$phplogcode' => "error_reporting(E_ERROR | E_WARNING | E_PARSE);\nini_set('error_log','php.out');\nini_set('log_errors','1');\nini_set('display_errors', '1');",
'$phplogenabled' => $phplogenabled,
]);
diff --git a/src/Module/Admin/Logs/View.php b/src/Module/Admin/Logs/View.php
index 51e083473..fe8bf614c 100644
--- a/src/Module/Admin/Logs/View.php
+++ b/src/Module/Admin/Logs/View.php
@@ -19,11 +19,11 @@ class View extends BaseAdminModule
$data = '';
if (!file_exists($f)) {
- $data = L10n::t('Error trying to open %1$s log file.\r\n Check to see if file %1$s exist and is readable.', $f);
+ $data = DI::l10n()->t('Error trying to open %1$s log file.\r\n Check to see if file %1$s exist and is readable.', $f);
} else {
$fp = fopen($f, 'r');
if (!$fp) {
- $data = L10n::t('Couldn\'t open %1$s log file.\r\n Check to see if file %1$s is readable.', $f);
+ $data = DI::l10n()->t('Couldn\'t open %1$s log file.\r\n Check to see if file %1$s is readable.', $f);
} else {
$fstat = fstat($fp);
$size = $fstat['size'];
@@ -43,8 +43,8 @@ class View extends BaseAdminModule
}
}
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('View Logs'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('View Logs'),
'$data' => $data,
'$logname' => Config::get('system', 'logfile')
]);
diff --git a/src/Module/Admin/Queue.php b/src/Module/Admin/Queue.php
index 0dfc553a9..c13edb3f3 100644
--- a/src/Module/Admin/Queue.php
+++ b/src/Module/Admin/Queue.php
@@ -32,12 +32,12 @@ class Queue extends BaseAdminModule
// get jobs from the workerqueue table
if ($deferred) {
$condition = ["NOT `done` AND `retrial` > ?", 0];
- $sub_title = L10n::t('Inspect Deferred Worker Queue');
- $info = L10n::t("This page lists the deferred worker jobs. This are jobs that couldn't be executed at the first time.");
+ $sub_title = DI::l10n()->t('Inspect Deferred Worker Queue');
+ $info = DI::l10n()->t("This page lists the deferred worker jobs. This are jobs that couldn't be executed at the first time.");
} else {
$condition = ["NOT `done` AND `retrial` = ?", 0];
- $sub_title = L10n::t('Inspect Worker Queue');
- $info = L10n::t('This page lists the currently queued worker jobs. These jobs are handled by the worker cronjob you\'ve set up during install.');
+ $sub_title = DI::l10n()->t('Inspect Worker Queue');
+ $info = DI::l10n()->t('This page lists the currently queued worker jobs. These jobs are handled by the worker cronjob you\'ve set up during install.');
}
// @TODO Move to Model\WorkerQueue::getEntries()
@@ -54,13 +54,13 @@ class Queue extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/queue.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
+ '$title' => DI::l10n()->t('Administration'),
'$page' => $sub_title,
'$count' => count($r),
- '$id_header' => L10n::t('ID'),
- '$param_header' => L10n::t('Job Parameters'),
- '$created_header' => L10n::t('Created'),
- '$prio_header' => L10n::t('Priority'),
+ '$id_header' => DI::l10n()->t('ID'),
+ '$param_header' => DI::l10n()->t('Job Parameters'),
+ '$created_header' => DI::l10n()->t('Created'),
+ '$prio_header' => DI::l10n()->t('Priority'),
'$info' => $info,
'$entries' => $r,
]);
diff --git a/src/Module/Admin/Site.php b/src/Module/Admin/Site.php
index 433cddf6f..aab66a722 100644
--- a/src/Module/Admin/Site.php
+++ b/src/Module/Admin/Site.php
@@ -48,7 +48,7 @@ class Site extends BaseAdminModule
$parsed = @parse_url($new_url);
if (!is_array($parsed) || empty($parsed['host']) || empty($parsed['scheme'])) {
- notice(L10n::t("Can not parse base url. Must have at least ://"));
+ notice(DI::l10n()->t("Can not parse base url. Must have at least ://"));
DI::baseUrl()->redirect('admin/site');
}
@@ -229,7 +229,7 @@ class Site extends BaseAdminModule
DI::baseUrl()->redirect('admin/site' . $active_panel);
}
} else {
- info(L10n::t('Invalid storage backend setting value.'));
+ info(DI::l10n()->t('Invalid storage backend setting value.'));
}
// Has the directory url changed? If yes, then resubmit the existing profiles there
@@ -404,7 +404,7 @@ class Site extends BaseAdminModule
Config::set('system', 'rino_encrypt' , $rino);
- info(L10n::t('Site settings updated.') . EOL);
+ info(DI::l10n()->t('Site settings updated.') . EOL);
DI::baseUrl()->redirect('admin/site' . $active_panel);
}
@@ -425,7 +425,7 @@ class Site extends BaseAdminModule
/* Installed themes */
$theme_choices = [];
$theme_choices_mobile = [];
- $theme_choices_mobile['---'] = L10n::t('No special theme for mobile devices');
+ $theme_choices_mobile['---'] = DI::l10n()->t('No special theme for mobile devices');
$files = glob('view/theme/*');
if (is_array($files)) {
$allowed_theme_list = Config::get('system', 'allowed_themes');
@@ -442,7 +442,7 @@ class Site extends BaseAdminModule
continue;
}
- $theme_name = ((file_exists($file . '/experimental')) ? L10n::t('%s - (Experimental)', $f) : $f);
+ $theme_name = ((file_exists($file . '/experimental')) ? DI::l10n()->t('%s - (Experimental)', $f) : $f);
if (file_exists($file . '/mobile')) {
$theme_choices_mobile[$f] = $theme_name;
@@ -454,31 +454,31 @@ class Site extends BaseAdminModule
/* Community page style */
$community_page_style_choices = [
- CP_NO_INTERNAL_COMMUNITY => L10n::t('No community page for local users'),
- CP_NO_COMMUNITY_PAGE => L10n::t('No community page'),
- CP_USERS_ON_SERVER => L10n::t('Public postings from users of this site'),
- CP_GLOBAL_COMMUNITY => L10n::t('Public postings from the federated network'),
- CP_USERS_AND_GLOBAL => L10n::t('Public postings from local users and the federated network')
+ CP_NO_INTERNAL_COMMUNITY => DI::l10n()->t('No community page for local users'),
+ CP_NO_COMMUNITY_PAGE => DI::l10n()->t('No community page'),
+ CP_USERS_ON_SERVER => DI::l10n()->t('Public postings from users of this site'),
+ CP_GLOBAL_COMMUNITY => DI::l10n()->t('Public postings from the federated network'),
+ CP_USERS_AND_GLOBAL => DI::l10n()->t('Public postings from local users and the federated network')
];
$poco_discovery_choices = [
- PortableContact::DISABLED => L10n::t('Disabled'),
- PortableContact::USERS => L10n::t('Users'),
- PortableContact::USERS_GCONTACTS => L10n::t('Users, Global Contacts'),
- PortableContact::USERS_GCONTACTS_FALLBACK => L10n::t('Users, Global Contacts/fallback'),
+ PortableContact::DISABLED => DI::l10n()->t('Disabled'),
+ PortableContact::USERS => DI::l10n()->t('Users'),
+ PortableContact::USERS_GCONTACTS => DI::l10n()->t('Users, Global Contacts'),
+ PortableContact::USERS_GCONTACTS_FALLBACK => DI::l10n()->t('Users, Global Contacts/fallback'),
];
$poco_discovery_since_choices = [
- '30' => L10n::t('One month'),
- '91' => L10n::t('Three months'),
- '182' => L10n::t('Half a year'),
- '365' => L10n::t('One year'),
+ '30' => DI::l10n()->t('One month'),
+ '91' => DI::l10n()->t('Three months'),
+ '182' => DI::l10n()->t('Half a year'),
+ '365' => DI::l10n()->t('One year'),
];
/* get user names to make the install a personal install of X */
// @TODO Move to Model\User::getNames()
$user_names = [];
- $user_names['---'] = L10n::t('Multi user instance');
+ $user_names['---'] = DI::l10n()->t('Multi user instance');
$usersStmt = DBA::select('user', ['username', 'nickname'], ['account_removed' => 0, 'account_expired' => 0]);
foreach (DBA::toArray($usersStmt) as $user) {
@@ -500,21 +500,21 @@ class Site extends BaseAdminModule
/* Register policy */
$register_choices = [
- Register::CLOSED => L10n::t('Closed'),
- Register::APPROVE => L10n::t('Requires approval'),
- Register::OPEN => L10n::t('Open')
+ Register::CLOSED => DI::l10n()->t('Closed'),
+ Register::APPROVE => DI::l10n()->t('Requires approval'),
+ Register::OPEN => DI::l10n()->t('Open')
];
$ssl_choices = [
- App\BaseURL::SSL_POLICY_NONE => L10n::t('No SSL policy, links will track page SSL state'),
- App\BaseURL::SSL_POLICY_FULL => L10n::t('Force all links to use SSL'),
- App\BaseURL::SSL_POLICY_SELFSIGN => L10n::t('Self-signed certificate, use SSL for local links only (discouraged)')
+ App\BaseURL::SSL_POLICY_NONE => DI::l10n()->t('No SSL policy, links will track page SSL state'),
+ App\BaseURL::SSL_POLICY_FULL => DI::l10n()->t('Force all links to use SSL'),
+ App\BaseURL::SSL_POLICY_SELFSIGN => DI::l10n()->t('Self-signed certificate, use SSL for local links only (discouraged)')
];
$check_git_version_choices = [
- 'none' => L10n::t('Don\'t check'),
- 'master' => L10n::t('check the stable version'),
- 'develop' => L10n::t('check the development version')
+ 'none' => DI::l10n()->t('Don\'t check'),
+ 'master' => DI::l10n()->t('check the stable version'),
+ 'develop' => DI::l10n()->t('check the development version')
];
$diaspora_able = (DI::baseUrl()->getUrlPath() == '');
@@ -531,7 +531,7 @@ class Site extends BaseAdminModule
// show legacy option only if it is the current backend:
// once changed can't be selected anymore
if ($current_storage_backend == null) {
- $available_storage_backends[''] = L10n::t('Database (legacy)');
+ $available_storage_backends[''] = DI::l10n()->t('Database (legacy)');
}
foreach (DI::storageManager()->listBackends() as $name => $class) {
@@ -554,121 +554,121 @@ class Site extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/site.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Site'),
- '$submit' => L10n::t('Save Settings'),
- '$republish' => L10n::t('Republish users to directory'),
- '$registration' => L10n::t('Registration'),
- '$upload' => L10n::t('File upload'),
- '$corporate' => L10n::t('Policies'),
- '$advanced' => L10n::t('Advanced'),
- '$portable_contacts' => L10n::t('Auto Discovered Contact Directory'),
- '$performance' => L10n::t('Performance'),
- '$worker_title' => L10n::t('Worker'),
- '$relay_title' => L10n::t('Message Relay'),
- '$relocate' => L10n::t('Relocate Instance'),
- '$relocate_warning' => L10n::t('Warning! Advanced function. Could make this server unreachable.'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Site'),
+ '$submit' => DI::l10n()->t('Save Settings'),
+ '$republish' => DI::l10n()->t('Republish users to directory'),
+ '$registration' => DI::l10n()->t('Registration'),
+ '$upload' => DI::l10n()->t('File upload'),
+ '$corporate' => DI::l10n()->t('Policies'),
+ '$advanced' => DI::l10n()->t('Advanced'),
+ '$portable_contacts' => DI::l10n()->t('Auto Discovered Contact Directory'),
+ '$performance' => DI::l10n()->t('Performance'),
+ '$worker_title' => DI::l10n()->t('Worker'),
+ '$relay_title' => DI::l10n()->t('Message Relay'),
+ '$relocate' => DI::l10n()->t('Relocate Instance'),
+ '$relocate_warning' => DI::l10n()->t('Warning! Advanced function. Could make this server unreachable.'),
'$baseurl' => DI::baseUrl()->get(true),
// name, label, value, help string, extra data...
- '$sitename' => ['sitename', L10n::t('Site name'), Config::get('config', 'sitename'), ''],
- '$sender_email' => ['sender_email', L10n::t('Sender Email'), Config::get('config', 'sender_email'), L10n::t('The email address your server shall use to send notification emails from.'), '', '', 'email'],
- '$banner' => ['banner', L10n::t('Banner/Logo'), $banner, ''],
- '$shortcut_icon' => ['shortcut_icon', L10n::t('Shortcut icon'), Config::get('system', 'shortcut_icon'), L10n::t('Link to an icon that will be used for browsers.')],
- '$touch_icon' => ['touch_icon', L10n::t('Touch icon'), Config::get('system', 'touch_icon'), L10n::t('Link to an icon that will be used for tablets and mobiles.')],
- '$additional_info' => ['additional_info', L10n::t('Additional Info'), $additional_info, L10n::t('For public servers: you can add additional information here that will be listed at %s/servers.', Search::getGlobalDirectory())],
- '$language' => ['language', L10n::t('System language'), Config::get('system', 'language'), '', $lang_choices],
- '$theme' => ['theme', L10n::t('System theme'), Config::get('system', 'theme'), L10n::t('Default system theme - may be over-ridden by user profiles - Change default theme settings '), $theme_choices],
- '$theme_mobile' => ['theme_mobile', L10n::t('Mobile system theme'), Config::get('system', 'mobile-theme', '---'), L10n::t('Theme for mobile devices'), $theme_choices_mobile],
- '$ssl_policy' => ['ssl_policy', L10n::t('SSL link policy'), (string)intval(Config::get('system', 'ssl_policy')), L10n::t('Determines whether generated links should be forced to use SSL'), $ssl_choices],
- '$force_ssl' => ['force_ssl', L10n::t('Force SSL'), Config::get('system', 'force_ssl'), L10n::t('Force all Non-SSL requests to SSL - Attention: on some systems it could lead to endless loops.')],
- '$hide_help' => ['hide_help', L10n::t('Hide help entry from navigation menu'), Config::get('system', 'hide_help'), L10n::t('Hides the menu entry for the Help pages from the navigation menu. You can still access it calling /help directly.')],
- '$singleuser' => ['singleuser', L10n::t('Single user instance'), Config::get('system', 'singleuser', '---'), L10n::t('Make this instance multi-user or single-user for the named user'), $user_names],
+ '$sitename' => ['sitename', DI::l10n()->t('Site name'), Config::get('config', 'sitename'), ''],
+ '$sender_email' => ['sender_email', DI::l10n()->t('Sender Email'), Config::get('config', 'sender_email'), DI::l10n()->t('The email address your server shall use to send notification emails from.'), '', '', 'email'],
+ '$banner' => ['banner', DI::l10n()->t('Banner/Logo'), $banner, ''],
+ '$shortcut_icon' => ['shortcut_icon', DI::l10n()->t('Shortcut icon'), Config::get('system', 'shortcut_icon'), DI::l10n()->t('Link to an icon that will be used for browsers.')],
+ '$touch_icon' => ['touch_icon', DI::l10n()->t('Touch icon'), Config::get('system', 'touch_icon'), DI::l10n()->t('Link to an icon that will be used for tablets and mobiles.')],
+ '$additional_info' => ['additional_info', DI::l10n()->t('Additional Info'), $additional_info, DI::l10n()->t('For public servers: you can add additional information here that will be listed at %s/servers.', Search::getGlobalDirectory())],
+ '$language' => ['language', DI::l10n()->t('System language'), Config::get('system', 'language'), '', $lang_choices],
+ '$theme' => ['theme', DI::l10n()->t('System theme'), Config::get('system', 'theme'), DI::l10n()->t('Default system theme - may be over-ridden by user profiles - Change default theme settings '), $theme_choices],
+ '$theme_mobile' => ['theme_mobile', DI::l10n()->t('Mobile system theme'), Config::get('system', 'mobile-theme', '---'), DI::l10n()->t('Theme for mobile devices'), $theme_choices_mobile],
+ '$ssl_policy' => ['ssl_policy', DI::l10n()->t('SSL link policy'), (string)intval(Config::get('system', 'ssl_policy')), DI::l10n()->t('Determines whether generated links should be forced to use SSL'), $ssl_choices],
+ '$force_ssl' => ['force_ssl', DI::l10n()->t('Force SSL'), Config::get('system', 'force_ssl'), DI::l10n()->t('Force all Non-SSL requests to SSL - Attention: on some systems it could lead to endless loops.')],
+ '$hide_help' => ['hide_help', DI::l10n()->t('Hide help entry from navigation menu'), Config::get('system', 'hide_help'), DI::l10n()->t('Hides the menu entry for the Help pages from the navigation menu. You can still access it calling /help directly.')],
+ '$singleuser' => ['singleuser', DI::l10n()->t('Single user instance'), Config::get('system', 'singleuser', '---'), DI::l10n()->t('Make this instance multi-user or single-user for the named user'), $user_names],
- '$storagebackend' => ['storagebackend', L10n::t('File storage backend'), $current_storage_backend, L10n::t('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 the settings documentation for more information about the choices and the moving procedure.'), $available_storage_backends],
+ '$storagebackend' => ['storagebackend', DI::l10n()->t('File storage backend'), $current_storage_backend, DI::l10n()->t('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 the settings documentation for more information about the choices and the moving procedure.'), $available_storage_backends],
'$storageform' => $storage_form,
- '$maximagesize' => ['maximagesize', L10n::t('Maximum image size'), Config::get('system', 'maximagesize'), L10n::t('Maximum size in bytes of uploaded images. Default is 0, which means no limits.')],
- '$maximagelength' => ['maximagelength', L10n::t('Maximum image length'), Config::get('system', 'max_image_length'), L10n::t('Maximum length in pixels of the longest side of uploaded images. Default is -1, which means no limits.')],
- '$jpegimagequality' => ['jpegimagequality', L10n::t('JPEG image quality'), Config::get('system', 'jpeg_quality'), L10n::t('Uploaded JPEGS will be saved at this quality setting [0-100]. Default is 100, which is full quality.')],
+ '$maximagesize' => ['maximagesize', DI::l10n()->t('Maximum image size'), Config::get('system', 'maximagesize'), DI::l10n()->t('Maximum size in bytes of uploaded images. Default is 0, which means no limits.')],
+ '$maximagelength' => ['maximagelength', DI::l10n()->t('Maximum image length'), Config::get('system', 'max_image_length'), DI::l10n()->t('Maximum length in pixels of the longest side of uploaded images. Default is -1, which means no limits.')],
+ '$jpegimagequality' => ['jpegimagequality', DI::l10n()->t('JPEG image quality'), Config::get('system', 'jpeg_quality'), DI::l10n()->t('Uploaded JPEGS will be saved at this quality setting [0-100]. Default is 100, which is full quality.')],
- '$register_policy' => ['register_policy', L10n::t('Register policy'), Config::get('config', 'register_policy'), '', $register_choices],
- '$daily_registrations' => ['max_daily_registrations', L10n::t('Maximum Daily Registrations'), Config::get('system', 'max_daily_registrations'), L10n::t('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.')],
- '$register_text' => ['register_text', L10n::t('Register text'), Config::get('config', 'register_text'), L10n::t('Will be displayed prominently on the registration page. You can use BBCode here.')],
- '$forbidden_nicknames' => ['forbidden_nicknames', L10n::t('Forbidden Nicknames'), Config::get('system', 'forbidden_nicknames'), L10n::t('Comma separated list of nicknames that are forbidden from registration. Preset is a list of role names according RFC 2142.')],
- '$abandon_days' => ['abandon_days', L10n::t('Accounts abandoned after x days'), Config::get('system', 'account_abandon_days'), L10n::t('Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit.')],
- '$allowed_sites' => ['allowed_sites', L10n::t('Allowed friend domains'), Config::get('system', 'allowed_sites'), L10n::t('Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains')],
- '$allowed_email' => ['allowed_email', L10n::t('Allowed email domains'), Config::get('system', 'allowed_email'), L10n::t('Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains')],
- '$no_oembed_rich_content' => ['no_oembed_rich_content', L10n::t('No OEmbed rich content'), Config::get('system', 'no_oembed_rich_content'), L10n::t('Don\'t show the rich content (e.g. embedded PDF), except from the domains listed below.')],
- '$allowed_oembed' => ['allowed_oembed', L10n::t('Allowed OEmbed domains'), Config::get('system', 'allowed_oembed'), L10n::t('Comma separated list of domains which oembed content is allowed to be displayed. Wildcards are accepted.')],
- '$block_public' => ['block_public', L10n::t('Block public'), Config::get('system', 'block_public'), L10n::t('Check to block public access to all otherwise public personal pages on this site unless you are currently logged in.')],
- '$force_publish' => ['publish_all', L10n::t('Force publish'), Config::get('system', 'publish_all'), L10n::t('Check to force all profiles on this site to be listed in the site directory.') . '' . L10n::t('Enabling this may violate privacy laws like the GDPR') . ' '],
- '$global_directory' => ['directory', L10n::t('Global directory URL'), Config::get('system', 'directory', 'https://dir.friendica.social'), L10n::t('URL to the global directory. If this is not set, the global directory is completely unavailable to the application.')],
- '$newuser_private' => ['newuser_private', L10n::t('Private posts by default for new users'), Config::get('system', 'newuser_private'), L10n::t('Set default post permissions for all new members to the default privacy group rather than public.')],
- '$enotify_no_content' => ['enotify_no_content', L10n::t('Don\'t include post content in email notifications'), Config::get('system', 'enotify_no_content'), L10n::t('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.')],
- '$private_addons' => ['private_addons', L10n::t('Disallow public access to addons listed in the apps menu.'), Config::get('config', 'private_addons'), L10n::t('Checking this box will restrict addons listed in the apps menu to members only.')],
- '$disable_embedded' => ['disable_embedded', L10n::t('Don\'t embed private images in posts'), Config::get('system', 'disable_embedded'), L10n::t('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.')],
- '$explicit_content' => ['explicit_content', L10n::t('Explicit Content'), Config::get('system', 'explicit_content', false), L10n::t('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.')],
- '$allow_users_remote_self'=> ['allow_users_remote_self', L10n::t('Allow Users to set remote_self'), Config::get('system', 'allow_users_remote_self'), L10n::t('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.')],
- '$no_multi_reg' => ['no_multi_reg', L10n::t('Block multiple registrations'), Config::get('system', 'block_extended_register'), L10n::t('Disallow users to register additional accounts for use as pages.')],
- '$no_openid' => ['no_openid', L10n::t('Disable OpenID'), Config::get('system', 'no_openid'), L10n::t('Disable OpenID support for registration and logins.')],
- '$no_regfullname' => ['no_regfullname', L10n::t('No Fullname check'), Config::get('system', 'no_regfullname'), L10n::t('Allow users to register without a space between the first name and the last name in their full name.')],
- '$community_page_style' => ['community_page_style', L10n::t('Community pages for visitors'), Config::get('system', 'community_page_style'), L10n::t('Which community pages should be available for visitors. Local users always see both pages.'), $community_page_style_choices],
- '$max_author_posts_community_page' => ['max_author_posts_community_page', L10n::t('Posts per user on community page'), Config::get('system', 'max_author_posts_community_page'), L10n::t('The maximum number of posts per user on the community page. (Not valid for "Global Community")')],
- '$ostatus_disabled' => ['ostatus_disabled', L10n::t('Disable OStatus support'), Config::get('system', 'ostatus_disabled'), L10n::t('Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed.')],
- '$ostatus_not_able' => L10n::t('OStatus support can only be enabled if threading is enabled.'),
+ '$register_policy' => ['register_policy', DI::l10n()->t('Register policy'), Config::get('config', 'register_policy'), '', $register_choices],
+ '$daily_registrations' => ['max_daily_registrations', DI::l10n()->t('Maximum Daily Registrations'), Config::get('system', 'max_daily_registrations'), DI::l10n()->t('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.')],
+ '$register_text' => ['register_text', DI::l10n()->t('Register text'), Config::get('config', 'register_text'), DI::l10n()->t('Will be displayed prominently on the registration page. You can use BBCode here.')],
+ '$forbidden_nicknames' => ['forbidden_nicknames', DI::l10n()->t('Forbidden Nicknames'), Config::get('system', 'forbidden_nicknames'), DI::l10n()->t('Comma separated list of nicknames that are forbidden from registration. Preset is a list of role names according RFC 2142.')],
+ '$abandon_days' => ['abandon_days', DI::l10n()->t('Accounts abandoned after x days'), Config::get('system', 'account_abandon_days'), DI::l10n()->t('Will not waste system resources polling external sites for abandonded accounts. Enter 0 for no time limit.')],
+ '$allowed_sites' => ['allowed_sites', DI::l10n()->t('Allowed friend domains'), Config::get('system', 'allowed_sites'), DI::l10n()->t('Comma separated list of domains which are allowed to establish friendships with this site. Wildcards are accepted. Empty to allow any domains')],
+ '$allowed_email' => ['allowed_email', DI::l10n()->t('Allowed email domains'), Config::get('system', 'allowed_email'), DI::l10n()->t('Comma separated list of domains which are allowed in email addresses for registrations to this site. Wildcards are accepted. Empty to allow any domains')],
+ '$no_oembed_rich_content' => ['no_oembed_rich_content', DI::l10n()->t('No OEmbed rich content'), Config::get('system', 'no_oembed_rich_content'), DI::l10n()->t('Don\'t show the rich content (e.g. embedded PDF), except from the domains listed below.')],
+ '$allowed_oembed' => ['allowed_oembed', DI::l10n()->t('Allowed OEmbed domains'), Config::get('system', 'allowed_oembed'), DI::l10n()->t('Comma separated list of domains which oembed content is allowed to be displayed. Wildcards are accepted.')],
+ '$block_public' => ['block_public', DI::l10n()->t('Block public'), Config::get('system', 'block_public'), DI::l10n()->t('Check to block public access to all otherwise public personal pages on this site unless you are currently logged in.')],
+ '$force_publish' => ['publish_all', DI::l10n()->t('Force publish'), Config::get('system', 'publish_all'), DI::l10n()->t('Check to force all profiles on this site to be listed in the site directory.') . '' . DI::l10n()->t('Enabling this may violate privacy laws like the GDPR') . ' '],
+ '$global_directory' => ['directory', DI::l10n()->t('Global directory URL'), Config::get('system', 'directory', 'https://dir.friendica.social'), DI::l10n()->t('URL to the global directory. If this is not set, the global directory is completely unavailable to the application.')],
+ '$newuser_private' => ['newuser_private', DI::l10n()->t('Private posts by default for new users'), Config::get('system', 'newuser_private'), DI::l10n()->t('Set default post permissions for all new members to the default privacy group rather than public.')],
+ '$enotify_no_content' => ['enotify_no_content', DI::l10n()->t('Don\'t include post content in email notifications'), Config::get('system', 'enotify_no_content'), DI::l10n()->t('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.')],
+ '$private_addons' => ['private_addons', DI::l10n()->t('Disallow public access to addons listed in the apps menu.'), Config::get('config', 'private_addons'), DI::l10n()->t('Checking this box will restrict addons listed in the apps menu to members only.')],
+ '$disable_embedded' => ['disable_embedded', DI::l10n()->t('Don\'t embed private images in posts'), Config::get('system', 'disable_embedded'), DI::l10n()->t('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.')],
+ '$explicit_content' => ['explicit_content', DI::l10n()->t('Explicit Content'), Config::get('system', 'explicit_content', false), DI::l10n()->t('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.')],
+ '$allow_users_remote_self'=> ['allow_users_remote_self', DI::l10n()->t('Allow Users to set remote_self'), Config::get('system', 'allow_users_remote_self'), DI::l10n()->t('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.')],
+ '$no_multi_reg' => ['no_multi_reg', DI::l10n()->t('Block multiple registrations'), Config::get('system', 'block_extended_register'), DI::l10n()->t('Disallow users to register additional accounts for use as pages.')],
+ '$no_openid' => ['no_openid', DI::l10n()->t('Disable OpenID'), Config::get('system', 'no_openid'), DI::l10n()->t('Disable OpenID support for registration and logins.')],
+ '$no_regfullname' => ['no_regfullname', DI::l10n()->t('No Fullname check'), Config::get('system', 'no_regfullname'), DI::l10n()->t('Allow users to register without a space between the first name and the last name in their full name.')],
+ '$community_page_style' => ['community_page_style', DI::l10n()->t('Community pages for visitors'), Config::get('system', 'community_page_style'), DI::l10n()->t('Which community pages should be available for visitors. Local users always see both pages.'), $community_page_style_choices],
+ '$max_author_posts_community_page' => ['max_author_posts_community_page', DI::l10n()->t('Posts per user on community page'), Config::get('system', 'max_author_posts_community_page'), DI::l10n()->t('The maximum number of posts per user on the community page. (Not valid for "Global Community")')],
+ '$ostatus_disabled' => ['ostatus_disabled', DI::l10n()->t('Disable OStatus support'), Config::get('system', 'ostatus_disabled'), DI::l10n()->t('Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All communications in OStatus are public, so privacy warnings will be occasionally displayed.')],
+ '$ostatus_not_able' => DI::l10n()->t('OStatus support can only be enabled if threading is enabled.'),
'$diaspora_able' => $diaspora_able,
- '$diaspora_not_able' => L10n::t('Diaspora support can\'t be enabled because Friendica was installed into a sub directory.'),
- '$diaspora_enabled' => ['diaspora_enabled', L10n::t('Enable Diaspora support'), Config::get('system', 'diaspora_enabled', $diaspora_able), L10n::t('Provide built-in Diaspora network compatibility.')],
- '$dfrn_only' => ['dfrn_only', L10n::t('Only allow Friendica contacts'), Config::get('system', 'dfrn_only'), L10n::t('All contacts must use Friendica protocols. All other built-in communication protocols disabled.')],
- '$verifyssl' => ['verifyssl', L10n::t('Verify SSL'), Config::get('system', 'verifyssl'), L10n::t('If you wish, you can turn on strict certificate checking. This will mean you cannot connect (at all) to self-signed SSL sites.')],
- '$proxyuser' => ['proxyuser', L10n::t('Proxy user'), Config::get('system', 'proxyuser'), ''],
- '$proxy' => ['proxy', L10n::t('Proxy URL'), Config::get('system', 'proxy'), ''],
- '$timeout' => ['timeout', L10n::t('Network timeout'), Config::get('system', 'curl_timeout', 60), L10n::t('Value is in seconds. Set to 0 for unlimited (not recommended).')],
- '$maxloadavg' => ['maxloadavg', L10n::t('Maximum Load Average'), Config::get('system', 'maxloadavg', 20), L10n::t('Maximum system load before delivery and poll processes are deferred - default %d.', 20)],
- '$maxloadavg_frontend' => ['maxloadavg_frontend', L10n::t('Maximum Load Average (Frontend)'), Config::get('system', 'maxloadavg_frontend', 50), L10n::t('Maximum system load before the frontend quits service - default 50.')],
- '$min_memory' => ['min_memory', L10n::t('Minimal Memory'), Config::get('system', 'min_memory', 0), L10n::t('Minimal free memory in MB for the worker. Needs access to /proc/meminfo - default 0 (deactivated).')],
- '$optimize_max_tablesize' => ['optimize_max_tablesize', L10n::t('Maximum table size for optimization'), $optimize_max_tablesize, L10n::t('Maximum table size (in MB) for the automatic optimization. Enter -1 to disable it.')],
- '$optimize_fragmentation' => ['optimize_fragmentation', L10n::t('Minimum level of fragmentation'), Config::get('system', 'optimize_fragmentation', 30), L10n::t('Minimum fragmenation level to start the automatic optimization - default value is 30%.')],
+ '$diaspora_not_able' => DI::l10n()->t('Diaspora support can\'t be enabled because Friendica was installed into a sub directory.'),
+ '$diaspora_enabled' => ['diaspora_enabled', DI::l10n()->t('Enable Diaspora support'), Config::get('system', 'diaspora_enabled', $diaspora_able), DI::l10n()->t('Provide built-in Diaspora network compatibility.')],
+ '$dfrn_only' => ['dfrn_only', DI::l10n()->t('Only allow Friendica contacts'), Config::get('system', 'dfrn_only'), DI::l10n()->t('All contacts must use Friendica protocols. All other built-in communication protocols disabled.')],
+ '$verifyssl' => ['verifyssl', DI::l10n()->t('Verify SSL'), Config::get('system', 'verifyssl'), DI::l10n()->t('If you wish, you can turn on strict certificate checking. This will mean you cannot connect (at all) to self-signed SSL sites.')],
+ '$proxyuser' => ['proxyuser', DI::l10n()->t('Proxy user'), Config::get('system', 'proxyuser'), ''],
+ '$proxy' => ['proxy', DI::l10n()->t('Proxy URL'), Config::get('system', 'proxy'), ''],
+ '$timeout' => ['timeout', DI::l10n()->t('Network timeout'), Config::get('system', 'curl_timeout', 60), DI::l10n()->t('Value is in seconds. Set to 0 for unlimited (not recommended).')],
+ '$maxloadavg' => ['maxloadavg', DI::l10n()->t('Maximum Load Average'), Config::get('system', 'maxloadavg', 20), DI::l10n()->t('Maximum system load before delivery and poll processes are deferred - default %d.', 20)],
+ '$maxloadavg_frontend' => ['maxloadavg_frontend', DI::l10n()->t('Maximum Load Average (Frontend)'), Config::get('system', 'maxloadavg_frontend', 50), DI::l10n()->t('Maximum system load before the frontend quits service - default 50.')],
+ '$min_memory' => ['min_memory', DI::l10n()->t('Minimal Memory'), Config::get('system', 'min_memory', 0), DI::l10n()->t('Minimal free memory in MB for the worker. Needs access to /proc/meminfo - default 0 (deactivated).')],
+ '$optimize_max_tablesize' => ['optimize_max_tablesize', DI::l10n()->t('Maximum table size for optimization'), $optimize_max_tablesize, DI::l10n()->t('Maximum table size (in MB) for the automatic optimization. Enter -1 to disable it.')],
+ '$optimize_fragmentation' => ['optimize_fragmentation', DI::l10n()->t('Minimum level of fragmentation'), Config::get('system', 'optimize_fragmentation', 30), DI::l10n()->t('Minimum fragmenation level to start the automatic optimization - default value is 30%.')],
- '$poco_completion' => ['poco_completion', L10n::t('Periodical check of global contacts'), Config::get('system', 'poco_completion'), L10n::t('If enabled, the global contacts are checked periodically for missing or outdated data and the vitality of the contacts and servers.')],
- '$poco_requery_days' => ['poco_requery_days', L10n::t('Days between requery'), Config::get('system', 'poco_requery_days'), L10n::t('Number of days after which a server is requeried for his contacts.')],
- '$poco_discovery' => ['poco_discovery', L10n::t('Discover contacts from other servers'), (string)intval(Config::get('system', 'poco_discovery')), L10n::t('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".'), $poco_discovery_choices],
- '$poco_discovery_since' => ['poco_discovery_since', L10n::t('Timeframe for fetching global contacts'), (string)intval(Config::get('system', 'poco_discovery_since')), L10n::t('When the discovery is activated, this value defines the timeframe for the activity of the global contacts that are fetched from other servers.'), $poco_discovery_since_choices],
- '$poco_local_search' => ['poco_local_search', L10n::t('Search the local directory'), Config::get('system', 'poco_local_search'), L10n::t('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.')],
+ '$poco_completion' => ['poco_completion', DI::l10n()->t('Periodical check of global contacts'), Config::get('system', 'poco_completion'), DI::l10n()->t('If enabled, the global contacts are checked periodically for missing or outdated data and the vitality of the contacts and servers.')],
+ '$poco_requery_days' => ['poco_requery_days', DI::l10n()->t('Days between requery'), Config::get('system', 'poco_requery_days'), DI::l10n()->t('Number of days after which a server is requeried for his contacts.')],
+ '$poco_discovery' => ['poco_discovery', DI::l10n()->t('Discover contacts from other servers'), (string)intval(Config::get('system', 'poco_discovery')), DI::l10n()->t('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".'), $poco_discovery_choices],
+ '$poco_discovery_since' => ['poco_discovery_since', DI::l10n()->t('Timeframe for fetching global contacts'), (string)intval(Config::get('system', 'poco_discovery_since')), DI::l10n()->t('When the discovery is activated, this value defines the timeframe for the activity of the global contacts that are fetched from other servers.'), $poco_discovery_since_choices],
+ '$poco_local_search' => ['poco_local_search', DI::l10n()->t('Search the local directory'), Config::get('system', 'poco_local_search'), DI::l10n()->t('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.')],
- '$nodeinfo' => ['nodeinfo', L10n::t('Publish server information'), Config::get('system', 'nodeinfo'), L10n::t('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 the-federation.info for details.')],
+ '$nodeinfo' => ['nodeinfo', DI::l10n()->t('Publish server information'), Config::get('system', 'nodeinfo'), DI::l10n()->t('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 the-federation.info for details.')],
- '$check_new_version_url' => ['check_new_version_url', L10n::t('Check upstream version'), Config::get('system', 'check_new_version_url'), L10n::t('Enables checking for new Friendica versions at github. If there is a new version, you will be informed in the admin panel overview.'), $check_git_version_choices],
- '$suppress_tags' => ['suppress_tags', L10n::t('Suppress Tags'), Config::get('system', 'suppress_tags'), L10n::t('Suppress showing a list of hashtags at the end of the posting.')],
- '$dbclean' => ['dbclean', L10n::t('Clean database'), Config::get('system', 'dbclean', false), L10n::t('Remove old remote items, orphaned database records and old content from some other helper tables.')],
- '$dbclean_expire_days' => ['dbclean_expire_days', L10n::t('Lifespan of remote items'), Config::get('system', 'dbclean-expire-days', 0), L10n::t('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.')],
- '$dbclean_unclaimed' => ['dbclean_unclaimed', L10n::t('Lifespan of unclaimed items'), Config::get('system', 'dbclean-expire-unclaimed', 90), L10n::t('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.')],
- '$dbclean_expire_conv' => ['dbclean_expire_conv', L10n::t('Lifespan of raw conversation data'), Config::get('system', 'dbclean_expire_conversation', 90), L10n::t('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.')],
- '$itemcache' => ['itemcache', L10n::t('Path to item cache'), Config::get('system', 'itemcache'), L10n::t('The item caches buffers generated bbcode and external images.')],
- '$itemcache_duration' => ['itemcache_duration', L10n::t('Cache duration in seconds'), Config::get('system', 'itemcache_duration'), L10n::t('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.')],
- '$max_comments' => ['max_comments', L10n::t('Maximum numbers of comments per post'), Config::get('system', 'max_comments'), L10n::t('How much comments should be shown for each post? Default value is 100.')],
- '$temppath' => ['temppath', L10n::t('Temp path'), Config::get('system', 'temppath'), L10n::t('If you have a restricted system where the webserver can\'t access the system temp path, enter another path here.')],
- '$proxy_disabled' => ['proxy_disabled', L10n::t('Disable picture proxy'), Config::get('system', 'proxy_disabled'), L10n::t('The picture proxy increases performance and privacy. It shouldn\'t be used on systems with very low bandwidth.')],
- '$only_tag_search' => ['only_tag_search', L10n::t('Only search in tags'), Config::get('system', 'only_tag_search'), L10n::t('On large systems the text search can slow down the system extremely.')],
+ '$check_new_version_url' => ['check_new_version_url', DI::l10n()->t('Check upstream version'), Config::get('system', 'check_new_version_url'), DI::l10n()->t('Enables checking for new Friendica versions at github. If there is a new version, you will be informed in the admin panel overview.'), $check_git_version_choices],
+ '$suppress_tags' => ['suppress_tags', DI::l10n()->t('Suppress Tags'), Config::get('system', 'suppress_tags'), DI::l10n()->t('Suppress showing a list of hashtags at the end of the posting.')],
+ '$dbclean' => ['dbclean', DI::l10n()->t('Clean database'), Config::get('system', 'dbclean', false), DI::l10n()->t('Remove old remote items, orphaned database records and old content from some other helper tables.')],
+ '$dbclean_expire_days' => ['dbclean_expire_days', DI::l10n()->t('Lifespan of remote items'), Config::get('system', 'dbclean-expire-days', 0), DI::l10n()->t('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.')],
+ '$dbclean_unclaimed' => ['dbclean_unclaimed', DI::l10n()->t('Lifespan of unclaimed items'), Config::get('system', 'dbclean-expire-unclaimed', 90), DI::l10n()->t('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.')],
+ '$dbclean_expire_conv' => ['dbclean_expire_conv', DI::l10n()->t('Lifespan of raw conversation data'), Config::get('system', 'dbclean_expire_conversation', 90), DI::l10n()->t('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.')],
+ '$itemcache' => ['itemcache', DI::l10n()->t('Path to item cache'), Config::get('system', 'itemcache'), DI::l10n()->t('The item caches buffers generated bbcode and external images.')],
+ '$itemcache_duration' => ['itemcache_duration', DI::l10n()->t('Cache duration in seconds'), Config::get('system', 'itemcache_duration'), DI::l10n()->t('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.')],
+ '$max_comments' => ['max_comments', DI::l10n()->t('Maximum numbers of comments per post'), Config::get('system', 'max_comments'), DI::l10n()->t('How much comments should be shown for each post? Default value is 100.')],
+ '$temppath' => ['temppath', DI::l10n()->t('Temp path'), Config::get('system', 'temppath'), DI::l10n()->t('If you have a restricted system where the webserver can\'t access the system temp path, enter another path here.')],
+ '$proxy_disabled' => ['proxy_disabled', DI::l10n()->t('Disable picture proxy'), Config::get('system', 'proxy_disabled'), DI::l10n()->t('The picture proxy increases performance and privacy. It shouldn\'t be used on systems with very low bandwidth.')],
+ '$only_tag_search' => ['only_tag_search', DI::l10n()->t('Only search in tags'), Config::get('system', 'only_tag_search'), DI::l10n()->t('On large systems the text search can slow down the system extremely.')],
- '$relocate_url' => ['relocate_url', L10n::t('New base url'), DI::baseUrl()->get(), L10n::t('Change base url for this server. Sends relocate message to all Friendica and Diaspora* contacts of all users.')],
+ '$relocate_url' => ['relocate_url', DI::l10n()->t('New base url'), DI::baseUrl()->get(), DI::l10n()->t('Change base url for this server. Sends relocate message to all Friendica and Diaspora* contacts of all users.')],
- '$rino' => ['rino', L10n::t('RINO Encryption'), intval(Config::get('system', 'rino_encrypt')), L10n::t('Encryption layer between nodes.'), [0 => L10n::t('Disabled'), 1 => L10n::t('Enabled')]],
+ '$rino' => ['rino', DI::l10n()->t('RINO Encryption'), intval(Config::get('system', 'rino_encrypt')), DI::l10n()->t('Encryption layer between nodes.'), [0 => DI::l10n()->t('Disabled'), 1 => DI::l10n()->t('Enabled')]],
- '$worker_queues' => ['worker_queues', L10n::t('Maximum number of parallel workers'), Config::get('system', 'worker_queues'), L10n::t('On shared hosters set this to %d. On larger systems, values of %d are great. Default value is %d.', 5, 20, 10)],
- '$worker_dont_fork' => ['worker_dont_fork', L10n::t('Don\'t use "proc_open" with the worker'), Config::get('system', 'worker_dont_fork'), L10n::t('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.')],
- '$worker_fastlane' => ['worker_fastlane', L10n::t('Enable fastlane'), Config::get('system', 'worker_fastlane'), L10n::t('When enabed, the fastlane mechanism starts an additional worker if processes with higher priority are blocked by processes of lower priority.')],
- '$worker_frontend' => ['worker_frontend', L10n::t('Enable frontend worker'), Config::get('system', 'frontend_worker'), L10n::t('When enabled the Worker process is triggered when backend access is performed (e.g. messages being delivered). 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.', DI::baseUrl()->get())],
+ '$worker_queues' => ['worker_queues', DI::l10n()->t('Maximum number of parallel workers'), Config::get('system', 'worker_queues'), DI::l10n()->t('On shared hosters set this to %d. On larger systems, values of %d are great. Default value is %d.', 5, 20, 10)],
+ '$worker_dont_fork' => ['worker_dont_fork', DI::l10n()->t('Don\'t use "proc_open" with the worker'), Config::get('system', 'worker_dont_fork'), DI::l10n()->t('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.')],
+ '$worker_fastlane' => ['worker_fastlane', DI::l10n()->t('Enable fastlane'), Config::get('system', 'worker_fastlane'), DI::l10n()->t('When enabed, the fastlane mechanism starts an additional worker if processes with higher priority are blocked by processes of lower priority.')],
+ '$worker_frontend' => ['worker_frontend', DI::l10n()->t('Enable frontend worker'), Config::get('system', 'frontend_worker'), DI::l10n()->t('When enabled the Worker process is triggered when backend access is performed (e.g. messages being delivered). 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.', DI::baseUrl()->get())],
- '$relay_subscribe' => ['relay_subscribe', L10n::t('Subscribe to relay'), Config::get('system', 'relay_subscribe'), L10n::t('Enables the receiving of public posts from the relay. They will be included in the search, subscribed tags and on the global community page.')],
- '$relay_server' => ['relay_server', L10n::t('Relay server'), Config::get('system', 'relay_server', 'https://relay.diasp.org'), L10n::t('Address of the relay server where public posts should be send to. For example https://relay.diasp.org')],
- '$relay_directly' => ['relay_directly', L10n::t('Direct relay transfer'), Config::get('system', 'relay_directly'), L10n::t('Enables the direct transfer to other servers without using the relay servers')],
- '$relay_scope' => ['relay_scope', L10n::t('Relay scope'), Config::get('system', 'relay_scope'), L10n::t('Can be "all" or "tags". "all" means that every public post should be received. "tags" means that only posts with selected tags should be received.'), ['' => L10n::t('Disabled'), 'all' => L10n::t('all'), 'tags' => L10n::t('tags')]],
- '$relay_server_tags' => ['relay_server_tags', L10n::t('Server tags'), Config::get('system', 'relay_server_tags'), L10n::t('Comma separated list of tags for the "tags" subscription.')],
- '$relay_user_tags' => ['relay_user_tags', L10n::t('Allow user tags'), Config::get('system', 'relay_user_tags', true), L10n::t('If enabled, the tags from the saved searches will used for the "tags" subscription in addition to the "relay_server_tags".')],
+ '$relay_subscribe' => ['relay_subscribe', DI::l10n()->t('Subscribe to relay'), Config::get('system', 'relay_subscribe'), DI::l10n()->t('Enables the receiving of public posts from the relay. They will be included in the search, subscribed tags and on the global community page.')],
+ '$relay_server' => ['relay_server', DI::l10n()->t('Relay server'), Config::get('system', 'relay_server', 'https://relay.diasp.org'), DI::l10n()->t('Address of the relay server where public posts should be send to. For example https://relay.diasp.org')],
+ '$relay_directly' => ['relay_directly', DI::l10n()->t('Direct relay transfer'), Config::get('system', 'relay_directly'), DI::l10n()->t('Enables the direct transfer to other servers without using the relay servers')],
+ '$relay_scope' => ['relay_scope', DI::l10n()->t('Relay scope'), Config::get('system', 'relay_scope'), DI::l10n()->t('Can be "all" or "tags". "all" means that every public post should be received. "tags" means that only posts with selected tags should be received.'), ['' => DI::l10n()->t('Disabled'), 'all' => DI::l10n()->t('all'), 'tags' => DI::l10n()->t('tags')]],
+ '$relay_server_tags' => ['relay_server_tags', DI::l10n()->t('Server tags'), Config::get('system', 'relay_server_tags'), DI::l10n()->t('Comma separated list of tags for the "tags" subscription.')],
+ '$relay_user_tags' => ['relay_user_tags', DI::l10n()->t('Allow user tags'), Config::get('system', 'relay_user_tags', true), DI::l10n()->t('If enabled, the tags from the saved searches will used for the "tags" subscription in addition to the "relay_server_tags".')],
'$form_security_token' => parent::getFormSecurityToken('admin_site'),
- '$relocate_button' => L10n::t('Start Relocation'),
+ '$relocate_button' => DI::l10n()->t('Start Relocation'),
]);
}
}
diff --git a/src/Module/Admin/Summary.php b/src/Module/Admin/Summary.php
index 6f304082a..50b513bfc 100644
--- a/src/Module/Admin/Summary.php
+++ b/src/Module/Admin/Summary.php
@@ -30,7 +30,7 @@ class Summary extends BaseAdminModule
// are there MyISAM tables in the DB? If so, trigger a warning message
$warningtext = [];
if (DBA::count(['information_schema' => 'tables'], ['engine' => 'myisam', 'table_schema' => DBA::databaseName()])) {
- $warningtext[] = L10n::t('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 here for a guide that may be helpful converting the table engines. You may also use the command php bin/console.php dbstructure toinnodb of your Friendica installation for an automatic conversion. ', 'https://dev.mysql.com/doc/refman/5.7/en/converting-tables-to-innodb.html');
+ $warningtext[] = DI::l10n()->t('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 here for a guide that may be helpful converting the table engines. You may also use the command php bin/console.php dbstructure toinnodb of your Friendica installation for an automatic conversion. ', 'https://dev.mysql.com/doc/refman/5.7/en/converting-tables-to-innodb.html');
}
// Check if github.com/friendica/master/VERSION is higher then
@@ -38,7 +38,7 @@ class Summary extends BaseAdminModule
if (Config::get('system', 'check_new_version_url', 'none') != 'none') {
$gitversion = Config::get('system', 'git_friendica_version');
if (version_compare(FRIENDICA_VERSION, $gitversion) < 0) {
- $warningtext[] = L10n::t('There is a new version of Friendica available for download. Your current version is %1$s, upstream version is %2$s', FRIENDICA_VERSION, $gitversion);
+ $warningtext[] = DI::l10n()->t('There is a new version of Friendica available for download. Your current version is %1$s, upstream version is %2$s', FRIENDICA_VERSION, $gitversion);
}
}
@@ -47,33 +47,33 @@ class Summary extends BaseAdminModule
}
if (Config::get('system', 'dbupdate') == DBStructure::UPDATE_FAILED) {
- $warningtext[] = L10n::t('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.');
+ $warningtext[] = DI::l10n()->t('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.');
}
if (Config::get('system', 'update') == Update::FAILED) {
- $warningtext[] = L10n::t('The last update failed. Please run "php bin/console.php dbstructure update" from the command line and have a look at the errors that might appear. (Some of the errors are possibly inside the logfile.)');
+ $warningtext[] = DI::l10n()->t('The last update failed. Please run "php bin/console.php dbstructure update" from the command line and have a look at the errors that might appear. (Some of the errors are possibly inside the logfile.)');
}
$last_worker_call = Config::get('system', 'last_worker_execution', false);
if (!$last_worker_call) {
- $warningtext[] = L10n::t('The worker was never executed. Please check your database structure!');
+ $warningtext[] = DI::l10n()->t('The worker was never executed. Please check your database structure!');
} elseif ((strtotime(DateTimeFormat::utcNow()) - strtotime($last_worker_call)) > 60 * 60) {
- $warningtext[] = L10n::t('The last worker execution was on %s UTC. This is older than one hour. Please check your crontab settings.', $last_worker_call);
+ $warningtext[] = DI::l10n()->t('The last worker execution was on %s UTC. This is older than one hour. Please check your crontab settings.', $last_worker_call);
}
// Legacy config file warning
if (file_exists('.htconfig.php')) {
- $warningtext[] = L10n::t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from .htconfig.php
. See the Config help page for help with the transition.', DI::baseUrl()->get() . '/help/Config');
+ $warningtext[] = DI::l10n()->t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from .htconfig.php
. See the Config help page for help with the transition.', DI::baseUrl()->get() . '/help/Config');
}
if (file_exists('config/local.ini.php')) {
- $warningtext[] = L10n::t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from config/local.ini.php
. See the Config help page for help with the transition.', DI::baseUrl()->get() . '/help/Config');
+ $warningtext[] = DI::l10n()->t('Friendica\'s configuration now is stored in config/local.config.php, please copy config/local-sample.config.php and move your config from config/local.ini.php
. See the Config help page for help with the transition.', DI::baseUrl()->get() . '/help/Config');
}
// Check server vitality
if (!self::checkSelfHostMeta()) {
$well_known = DI::baseUrl()->get() . '/.well-known/host-meta';
- $warningtext[] = L10n::t('%s is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See the installation page for help.',
+ $warningtext[] = DI::l10n()->t('%s is not reachable on your system. This is a severe configuration issue that prevents server to server communication. See the installation page for help.',
$well_known, $well_known, DI::baseUrl()->get() . '/help/Install');
}
@@ -91,7 +91,7 @@ class Summary extends BaseAdminModule
}
} catch (\Throwable $exception) {
- $warningtext[] = L10n::t('The logfile \'%s\' is not usable. No logging possible (error: \'%s\')', $file, $exception->getMessage());
+ $warningtext[] = DI::l10n()->t('The logfile \'%s\' is not usable. No logging possible (error: \'%s\')', $file, $exception->getMessage());
}
$file = Config::get('system', 'dlogfile');
@@ -106,7 +106,7 @@ class Summary extends BaseAdminModule
}
} catch (\Throwable $exception) {
- $warningtext[] = L10n::t('The debug logfile \'%s\' is not usable. No logging possible (error: \'%s\')', $file, $exception->getMessage());
+ $warningtext[] = DI::l10n()->t('The debug logfile \'%s\' is not usable. No logging possible (error: \'%s\')', $file, $exception->getMessage());
}
}
@@ -122,7 +122,7 @@ class Summary extends BaseAdminModule
'from' => $currBasepath,
'to' => $confBasepath,
]);
- $warningtext[] = L10n::t('Friendica\'s system.basepath was updated from \'%s\' to \'%s\'. Please remove the system.basepath from your db to avoid differences.',
+ $warningtext[] = DI::l10n()->t('Friendica\'s system.basepath was updated from \'%s\' to \'%s\'. Please remove the system.basepath from your db to avoid differences.',
$currBasepath,
$confBasepath);
} elseif (!is_dir($currBasepath)) {
@@ -130,7 +130,7 @@ class Summary extends BaseAdminModule
'from' => $currBasepath,
'to' => $confBasepath,
]);
- $warningtext[] = L10n::t('Friendica\'s current system.basepath \'%s\' is wrong and the config file \'%s\' isn\'t used.',
+ $warningtext[] = DI::l10n()->t('Friendica\'s current system.basepath \'%s\' is wrong and the config file \'%s\' isn\'t used.',
$currBasepath,
$confBasepath);
} else {
@@ -138,19 +138,19 @@ class Summary extends BaseAdminModule
'from' => $currBasepath,
'to' => $confBasepath,
]);
- $warningtext[] = L10n::t('Friendica\'s current system.basepath \'%s\' is not equal to the config file \'%s\'. Please fix your configuration.',
+ $warningtext[] = DI::l10n()->t('Friendica\'s current system.basepath \'%s\' is not equal to the config file \'%s\'. Please fix your configuration.',
$currBasepath,
$confBasepath);
}
}
$accounts = [
- [L10n::t('Normal Account'), 0],
- [L10n::t('Automatic Follower Account'), 0],
- [L10n::t('Public Forum Account'), 0],
- [L10n::t('Automatic Friend Account'), 0],
- [L10n::t('Blog Account'), 0],
- [L10n::t('Private Forum Account'), 0]
+ [DI::l10n()->t('Normal Account'), 0],
+ [DI::l10n()->t('Automatic Follower Account'), 0],
+ [DI::l10n()->t('Public Forum Account'), 0],
+ [DI::l10n()->t('Automatic Friend Account'), 0],
+ [DI::l10n()->t('Blog Account'), 0],
+ [DI::l10n()->t('Private Forum Account'), 0]
];
$users = 0;
@@ -170,13 +170,13 @@ class Summary extends BaseAdminModule
$workerqueue = DBA::count('workerqueue', ['NOT `done` AND `retrial` = ?', 0]);
// We can do better, but this is a quick queue status
- $queues = ['label' => L10n::t('Message queues'), 'deferred' => $deferred, 'workerq' => $workerqueue];
+ $queues = ['label' => DI::l10n()->t('Message queues'), 'deferred' => $deferred, 'workerq' => $workerqueue];
$variables = DBA::toArray(DBA::p('SHOW variables LIKE "max_allowed_packet"'));
$max_allowed_packet = $variables ? $variables[0]['Value'] : 0;
$server_settings = [
- 'label' => L10n::t('Server Settings'),
+ 'label' => DI::l10n()->t('Server Settings'),
'php' => [
'upload_max_filesize' => ini_get('upload_max_filesize'),
'post_max_size' => ini_get('post_max_size'),
@@ -189,17 +189,17 @@ class Summary extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/summary.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Summary'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Summary'),
'$queues' => $queues,
- '$users' => [L10n::t('Registered users'), $users],
+ '$users' => [DI::l10n()->t('Registered users'), $users],
'$accounts' => $accounts,
- '$pending' => [L10n::t('Pending registrations'), $pending],
- '$version' => [L10n::t('Version'), FRIENDICA_VERSION],
+ '$pending' => [DI::l10n()->t('Pending registrations'), $pending],
+ '$version' => [DI::l10n()->t('Version'), FRIENDICA_VERSION],
'$platform' => FRIENDICA_PLATFORM,
'$codename' => FRIENDICA_CODENAME,
'$build' => Config::get('system', 'build'),
- '$addons' => [L10n::t('Active addons'), Addon::getEnabledList()],
+ '$addons' => [DI::l10n()->t('Active addons'), Addon::getEnabledList()],
'$serversettings' => $server_settings,
'$warningtext' => $warningtext
]);
diff --git a/src/Module/Admin/Themes/Details.php b/src/Module/Admin/Themes/Details.php
index 2b573eec3..0c2529b92 100644
--- a/src/Module/Admin/Themes/Details.php
+++ b/src/Module/Admin/Themes/Details.php
@@ -30,7 +30,7 @@ class Details extends BaseAdminModule
}
}
- info(L10n::t('Theme settings updated.'));
+ info(DI::l10n()->t('Theme settings updated.'));
if (DI::mode()->isAjax()) {
return;
@@ -51,17 +51,17 @@ class Details extends BaseAdminModule
$theme = $a->argv[2];
$theme = Strings::sanitizeFilePathItem($theme);
if (!is_dir("view/theme/$theme")) {
- notice(L10n::t("Item not found."));
+ notice(DI::l10n()->t("Item not found."));
return '';
}
$isEnabled = in_array($theme, Theme::getAllowedList());
if ($isEnabled) {
$status = "on";
- $action = L10n::t("Disable");
+ $action = DI::l10n()->t("Disable");
} else {
$status = "off";
- $action = L10n::t("Enable");
+ $action = DI::l10n()->t("Enable");
}
if (!empty($_GET['action']) && $_GET['action'] == 'toggle') {
@@ -69,11 +69,11 @@ class Details extends BaseAdminModule
if ($isEnabled) {
Theme::uninstall($theme);
- info(L10n::t('Theme %s disabled.', $theme));
+ info(DI::l10n()->t('Theme %s disabled.', $theme));
} elseif (Theme::install($theme)) {
- info(L10n::t('Theme %s successfully enabled.', $theme));
+ info(DI::l10n()->t('Theme %s successfully enabled.', $theme));
} else {
- info(L10n::t('Theme %s failed to install.', $theme));
+ info(DI::l10n()->t('Theme %s failed to install.', $theme));
}
DI::baseUrl()->redirect('admin/themes/' . $theme);
@@ -95,17 +95,17 @@ class Details extends BaseAdminModule
}
}
- $screenshot = [Theme::getScreenshot($theme), L10n::t('Screenshot')];
+ $screenshot = [Theme::getScreenshot($theme), DI::l10n()->t('Screenshot')];
if (!stristr($screenshot[0], $theme)) {
$screenshot = null;
}
$t = Renderer::getMarkupTemplate('admin/addons/details.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Themes'),
- '$toggle' => L10n::t('Toggle'),
- '$settings' => L10n::t('Settings'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Themes'),
+ '$toggle' => DI::l10n()->t('Toggle'),
+ '$settings' => DI::l10n()->t('Settings'),
'$baseurl' => DI::baseUrl()->get(true),
'$addon' => $theme,
'$status' => $status,
@@ -113,8 +113,8 @@ class Details extends BaseAdminModule
'$info' => Theme::getInfo($theme),
'$function' => 'themes',
'$admin_form' => $admin_form,
- '$str_author' => L10n::t('Author: '),
- '$str_maintainer' => L10n::t('Maintainer: '),
+ '$str_author' => DI::l10n()->t('Author: '),
+ '$str_maintainer' => DI::l10n()->t('Maintainer: '),
'$screenshot' => $screenshot,
'$readme' => $readme,
diff --git a/src/Module/Admin/Themes/Embed.php b/src/Module/Admin/Themes/Embed.php
index fc0d3301b..3da022322 100644
--- a/src/Module/Admin/Themes/Embed.php
+++ b/src/Module/Admin/Themes/Embed.php
@@ -44,7 +44,7 @@ class Embed extends BaseAdminModule
}
}
- info(L10n::t('Theme settings updated.'));
+ info(DI::l10n()->t('Theme settings updated.'));
if (DI::mode()->isAjax()) {
return;
@@ -65,7 +65,7 @@ class Embed extends BaseAdminModule
$theme = $a->argv[2];
$theme = Strings::sanitizeFilePathItem($theme);
if (!is_dir("view/theme/$theme")) {
- notice(L10n::t('Unknown theme.'));
+ notice(DI::l10n()->t('Unknown theme.'));
return '';
}
diff --git a/src/Module/Admin/Themes/Index.php b/src/Module/Admin/Themes/Index.php
index dc848f93f..03794a155 100644
--- a/src/Module/Admin/Themes/Index.php
+++ b/src/Module/Admin/Themes/Index.php
@@ -39,17 +39,17 @@ class Index extends BaseAdminModule
if ($theme) {
$theme = Strings::sanitizeFilePathItem($theme);
if (!is_dir("view/theme/$theme")) {
- notice(L10n::t('Item not found.'));
+ notice(DI::l10n()->t('Item not found.'));
return '';
}
if (in_array($theme, Theme::getAllowedList())) {
Theme::uninstall($theme);
- info(L10n::t('Theme %s disabled.', $theme));
+ info(DI::l10n()->t('Theme %s disabled.', $theme));
} elseif (Theme::install($theme)) {
- info(L10n::t('Theme %s successfully enabled.', $theme));
+ info(DI::l10n()->t('Theme %s successfully enabled.', $theme));
} else {
- info(L10n::t('Theme %s failed to install.', $theme));
+ info(DI::l10n()->t('Theme %s failed to install.', $theme));
}
}
@@ -91,17 +91,17 @@ class Index extends BaseAdminModule
$t = Renderer::getMarkupTemplate('admin/addons/index.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Themes'),
- '$submit' => L10n::t('Save Settings'),
- '$reload' => L10n::t('Reload active themes'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Themes'),
+ '$submit' => DI::l10n()->t('Save Settings'),
+ '$reload' => DI::l10n()->t('Reload active themes'),
'$baseurl' => DI::baseUrl()->get(true),
'$function' => 'themes',
'$addons' => $addons,
'$pcount' => count($themes),
- '$noplugshint' => L10n::t('No themes found on the system. They should be placed in %1$s', '/view/themes
'),
- '$experimental' => L10n::t('[Experimental]'),
- '$unsupported' => L10n::t('[Unsupported]'),
+ '$noplugshint' => DI::l10n()->t('No themes found on the system. They should be placed in %1$s', '/view/themes
'),
+ '$experimental' => DI::l10n()->t('[Experimental]'),
+ '$unsupported' => DI::l10n()->t('[Unsupported]'),
'$form_security_token' => parent::getFormSecurityToken('admin_themes'),
]);
}
diff --git a/src/Module/Admin/Tos.php b/src/Module/Admin/Tos.php
index 5e434bc0d..158738fd8 100644
--- a/src/Module/Admin/Tos.php
+++ b/src/Module/Admin/Tos.php
@@ -28,7 +28,7 @@ class Tos extends BaseAdminModule
Config::set('system', 'tosprivstatement', $displayprivstatement);
Config::set('system', 'tostext', $tostext);
- info(L10n::t('The Terms of Service settings have been updated.'));
+ info(DI::l10n()->t('The Terms of Service settings have been updated.'));
DI::baseUrl()->redirect('admin/tos');
}
@@ -40,15 +40,15 @@ class Tos extends BaseAdminModule
$tos = new \Friendica\Module\Tos();
$t = Renderer::getMarkupTemplate('admin/tos.tpl');
return Renderer::replaceMacros($t, [
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Terms of Service'),
- '$displaytos' => ['displaytos', L10n::t('Display Terms of Service'), Config::get('system', 'tosdisplay'), L10n::t('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.')],
- '$displayprivstatement' => ['displayprivstatement', L10n::t('Display Privacy Statement'), Config::get('system', 'tosprivstatement'), L10n::t('Show some informations regarding the needed information to operate the node according e.g. to EU-GDPR .', 'https://en.wikipedia.org/wiki/General_Data_Protection_Regulation')],
- '$preview' => L10n::t('Privacy Statement Preview'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Terms of Service'),
+ '$displaytos' => ['displaytos', DI::l10n()->t('Display Terms of Service'), Config::get('system', 'tosdisplay'), DI::l10n()->t('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.')],
+ '$displayprivstatement' => ['displayprivstatement', DI::l10n()->t('Display Privacy Statement'), Config::get('system', 'tosprivstatement'), DI::l10n()->t('Show some informations regarding the needed information to operate the node according e.g. to EU-GDPR .', 'https://en.wikipedia.org/wiki/General_Data_Protection_Regulation')],
+ '$preview' => DI::l10n()->t('Privacy Statement Preview'),
'$privtext' => $tos->privacy_complete,
- '$tostext' => ['tostext', L10n::t('The Terms of Service'), Config::get('system', 'tostext'), L10n::t('Enter the Terms of Service for your node here. You can use BBCode. Headers of sections should be [h2] and below.')],
+ '$tostext' => ['tostext', DI::l10n()->t('The Terms of Service'), Config::get('system', 'tostext'), DI::l10n()->t('Enter the Terms of Service for your node here. You can use BBCode. Headers of sections should be [h2] and below.')],
'$form_security_token' => parent::getFormSecurityToken('admin_tos'),
- '$submit' => L10n::t('Save Settings'),
+ '$submit' => DI::l10n()->t('Save Settings'),
]);
}
}
diff --git a/src/Module/Admin/Users.php b/src/Module/Admin/Users.php
index b71f3f751..543562d9d 100644
--- a/src/Module/Admin/Users.php
+++ b/src/Module/Admin/Users.php
@@ -44,10 +44,10 @@ class Users extends BaseAdminModule
}
$user = $result['user'];
- $preamble = Strings::deindent(L10n::t('
+ $preamble = Strings::deindent(DI::l10n()->t('
Dear %1$s,
the administrator of %2$s has set up an account for you.'));
- $body = Strings::deindent(L10n::t('
+ $body = Strings::deindent(DI::l10n()->t('
The login details are as follows:
Site Location: %1$s
@@ -84,7 +84,7 @@ class Users extends BaseAdminModule
'to_name' => $user['username'],
'to_email' => $user['email'],
'uid' => $user['uid'],
- 'subject' => L10n::t('Registration details for %s', Config::get('config', 'sitename')),
+ 'subject' => DI::l10n()->t('Registration details for %s', Config::get('config', 'sitename')),
'preamble' => $preamble,
'body' => $body]);
}
@@ -106,7 +106,7 @@ class Users extends BaseAdminModule
if (local_user() != $uid) {
User::remove($uid);
} else {
- notice(L10n::t('You can\'t remove yourself'));
+ notice(DI::l10n()->t('You can\'t remove yourself'));
}
}
@@ -154,22 +154,22 @@ class Users extends BaseAdminModule
// delete user
User::remove($uid);
- notice(L10n::t('User "%s" deleted', $user['username']));
+ notice(DI::l10n()->t('User "%s" deleted', $user['username']));
} else {
- notice(L10n::t('You can\'t remove yourself'));
+ notice(DI::l10n()->t('You can\'t remove yourself'));
}
break;
case 'block':
parent::checkFormSecurityTokenRedirectOnError('/admin/users', 'admin_users', 't');
// @TODO Move this to Model\User:block([$uid]);
DBA::update('user', ['blocked' => 1], ['uid' => $uid]);
- notice(L10n::t('User "%s" blocked', $user['username']));
+ notice(DI::l10n()->t('User "%s" blocked', $user['username']));
break;
case 'unblock':
parent::checkFormSecurityTokenRedirectOnError('/admin/users', 'admin_users', 't');
// @TODO Move this to Model\User:unblock([$uid]);
DBA::update('user', ['blocked' => 0], ['uid' => $uid]);
- notice(L10n::t('User "%s" unblocked', $user['username']));
+ notice(DI::l10n()->t('User "%s" unblocked', $user['username']));
break;
}
@@ -218,18 +218,18 @@ class Users extends BaseAdminModule
$adminlist = explode(',', str_replace(' ', '', Config::get('config', 'admin_email')));
$_setup_users = function ($e) use ($adminlist) {
$page_types = [
- User::PAGE_FLAGS_NORMAL => L10n::t('Normal Account Page'),
- User::PAGE_FLAGS_SOAPBOX => L10n::t('Soapbox Page'),
- User::PAGE_FLAGS_COMMUNITY => L10n::t('Public Forum'),
- User::PAGE_FLAGS_FREELOVE => L10n::t('Automatic Friend Page'),
- User::PAGE_FLAGS_PRVGROUP => L10n::t('Private Forum')
+ User::PAGE_FLAGS_NORMAL => DI::l10n()->t('Normal Account Page'),
+ User::PAGE_FLAGS_SOAPBOX => DI::l10n()->t('Soapbox Page'),
+ User::PAGE_FLAGS_COMMUNITY => DI::l10n()->t('Public Forum'),
+ User::PAGE_FLAGS_FREELOVE => DI::l10n()->t('Automatic Friend Page'),
+ User::PAGE_FLAGS_PRVGROUP => DI::l10n()->t('Private Forum')
];
$account_types = [
- User::ACCOUNT_TYPE_PERSON => L10n::t('Personal Page'),
- User::ACCOUNT_TYPE_ORGANISATION => L10n::t('Organisation Page'),
- User::ACCOUNT_TYPE_NEWS => L10n::t('News Page'),
- User::ACCOUNT_TYPE_COMMUNITY => L10n::t('Community Forum'),
- User::ACCOUNT_TYPE_RELAY => L10n::t('Relay'),
+ User::ACCOUNT_TYPE_PERSON => DI::l10n()->t('Personal Page'),
+ User::ACCOUNT_TYPE_ORGANISATION => DI::l10n()->t('Organisation Page'),
+ User::ACCOUNT_TYPE_NEWS => DI::l10n()->t('News Page'),
+ User::ACCOUNT_TYPE_COMMUNITY => DI::l10n()->t('Community Forum'),
+ User::ACCOUNT_TYPE_RELAY => DI::l10n()->t('Relay'),
];
$e['page_flags_raw'] = $e['page-flags'];
@@ -268,38 +268,38 @@ class Users extends BaseAdminModule
}
}
- $th_users = array_map(null, [L10n::t('Name'), L10n::t('Email'), L10n::t('Register date'), L10n::t('Last login'), L10n::t('Last item'), L10n::t('Type')], $valid_orders);
+ $th_users = array_map(null, [DI::l10n()->t('Name'), DI::l10n()->t('Email'), DI::l10n()->t('Register date'), DI::l10n()->t('Last login'), DI::l10n()->t('Last item'), DI::l10n()->t('Type')], $valid_orders);
$t = Renderer::getMarkupTemplate('admin/users.tpl');
$o = Renderer::replaceMacros($t, [
// strings //
- '$title' => L10n::t('Administration'),
- '$page' => L10n::t('Users'),
- '$submit' => L10n::t('Add User'),
- '$select_all' => L10n::t('select all'),
- '$h_pending' => L10n::t('User registrations waiting for confirm'),
- '$h_deleted' => L10n::t('User waiting for permanent deletion'),
- '$th_pending' => [L10n::t('Request date'), L10n::t('Name'), L10n::t('Email')],
- '$no_pending' => L10n::t('No registrations.'),
- '$pendingnotetext' => L10n::t('Note from the user'),
- '$approve' => L10n::t('Approve'),
- '$deny' => L10n::t('Deny'),
- '$delete' => L10n::t('Delete'),
- '$block' => L10n::t('Block'),
- '$blocked' => L10n::t('User blocked'),
- '$unblock' => L10n::t('Unblock'),
- '$siteadmin' => L10n::t('Site admin'),
- '$accountexpired' => L10n::t('Account expired'),
+ '$title' => DI::l10n()->t('Administration'),
+ '$page' => DI::l10n()->t('Users'),
+ '$submit' => DI::l10n()->t('Add User'),
+ '$select_all' => DI::l10n()->t('select all'),
+ '$h_pending' => DI::l10n()->t('User registrations waiting for confirm'),
+ '$h_deleted' => DI::l10n()->t('User waiting for permanent deletion'),
+ '$th_pending' => [DI::l10n()->t('Request date'), DI::l10n()->t('Name'), DI::l10n()->t('Email')],
+ '$no_pending' => DI::l10n()->t('No registrations.'),
+ '$pendingnotetext' => DI::l10n()->t('Note from the user'),
+ '$approve' => DI::l10n()->t('Approve'),
+ '$deny' => DI::l10n()->t('Deny'),
+ '$delete' => DI::l10n()->t('Delete'),
+ '$block' => DI::l10n()->t('Block'),
+ '$blocked' => DI::l10n()->t('User blocked'),
+ '$unblock' => DI::l10n()->t('Unblock'),
+ '$siteadmin' => DI::l10n()->t('Site admin'),
+ '$accountexpired' => DI::l10n()->t('Account expired'),
- '$h_users' => L10n::t('Users'),
- '$h_newuser' => L10n::t('New User'),
- '$th_deleted' => [L10n::t('Name'), L10n::t('Email'), L10n::t('Register date'), L10n::t('Last login'), L10n::t('Last item'), L10n::t('Permanent deletion')],
+ '$h_users' => DI::l10n()->t('Users'),
+ '$h_newuser' => DI::l10n()->t('New User'),
+ '$th_deleted' => [DI::l10n()->t('Name'), DI::l10n()->t('Email'), DI::l10n()->t('Register date'), DI::l10n()->t('Last login'), DI::l10n()->t('Last item'), DI::l10n()->t('Permanent deletion')],
'$th_users' => $th_users,
'$order_users' => $order,
'$order_direction_users' => $order_direction,
- '$confirm_delete_multi' => L10n::t('Selected users will be deleted!\n\nEverything these users had posted on this site will be permanently deleted!\n\nAre you sure?'),
- '$confirm_delete' => L10n::t('The user {0} will be deleted!\n\nEverything this user has posted on this site will be permanently deleted!\n\nAre you sure?'),
+ '$confirm_delete_multi' => DI::l10n()->t('Selected users will be deleted!\n\nEverything these users had posted on this site will be permanently deleted!\n\nAre you sure?'),
+ '$confirm_delete' => DI::l10n()->t('The user {0} will be deleted!\n\nEverything this user has posted on this site will be permanently deleted!\n\nAre you sure?'),
'$form_security_token' => parent::getFormSecurityToken('admin_users'),
@@ -309,9 +309,9 @@ class Users extends BaseAdminModule
'$pending' => $pending,
'deleted' => $deleted,
'$users' => $users,
- '$newusername' => ['new_user_name', L10n::t('Name'), '', L10n::t('Name of the new user.')],
- '$newusernickname' => ['new_user_nickname', L10n::t('Nickname'), '', L10n::t('Nickname of the new user.')],
- '$newuseremail' => ['new_user_email', L10n::t('Email'), '', L10n::t('Email address of the new user.'), '', '', 'email'],
+ '$newusername' => ['new_user_name', DI::l10n()->t('Name'), '', DI::l10n()->t('Name of the new user.')],
+ '$newusernickname' => ['new_user_nickname', DI::l10n()->t('Nickname'), '', DI::l10n()->t('Nickname of the new user.')],
+ '$newuseremail' => ['new_user_email', DI::l10n()->t('Email'), '', DI::l10n()->t('Email address of the new user.'), '', '', 'email'],
]);
$o .= $pager->renderFull(DBA::count('user'));
diff --git a/src/Module/AllFriends.php b/src/Module/AllFriends.php
index e14561498..b9105c81d 100644
--- a/src/Module/AllFriends.php
+++ b/src/Module/AllFriends.php
@@ -33,7 +33,7 @@ class AllFriends extends BaseModule
}
if (!$cid) {
- throw new HTTPException\BadRequestException(L10n::t('Invalid contact.'));
+ throw new HTTPException\BadRequestException(DI::l10n()->t('Invalid contact.'));
}
$uid = $app->user['uid'];
@@ -41,7 +41,7 @@ class AllFriends extends BaseModule
$contact = Model\Contact::getContactForUser($cid, local_user(), ['name', 'url', 'photo', 'uid', 'id']);
if (empty($contact)) {
- throw new HTTPException\BadRequestException(L10n::t('Invalid contact.'));
+ throw new HTTPException\BadRequestException(DI::l10n()->t('Invalid contact.'));
}
DI::page()['aside'] = "";
@@ -53,7 +53,7 @@ class AllFriends extends BaseModule
$friends = Model\GContact::allFriends(local_user(), $cid, $pager->getStart(), $pager->getItemsPerPage());
if (empty($friends)) {
- return L10n::t('No friends to display.');
+ return DI::l10n()->t('No friends to display.');
}
$id = 0;
@@ -72,8 +72,8 @@ class AllFriends extends BaseModule
} else {
$connlnk = DI::baseUrl()->get() . '/follow/?url=' . $friend['url'];
$photoMenu = [
- 'profile' => [L10n::t('View Profile'), Model\Contact::magicLinkbyId($friend['id'], $friend['url'])],
- 'follow' => [L10n::t('Connect/Follow'), $connlnk]
+ 'profile' => [DI::l10n()->t('View Profile'), Model\Contact::magicLinkbyId($friend['id'], $friend['url'])],
+ 'follow' => [DI::l10n()->t('Connect/Follow'), $connlnk]
];
}
@@ -89,7 +89,7 @@ class AllFriends extends BaseModule
'account_type' => Model\Contact::getAccountType($contactDetails),
'network' => ContactSelector::networkToName($contactDetails['network'], $contactDetails['url']),
'photoMenu' => $photoMenu,
- 'conntxt' => L10n::t('Connect'),
+ 'conntxt' => DI::l10n()->t('Connect'),
'connlnk' => $connlnk,
'id' => ++$id,
];
diff --git a/src/Module/Apps.php b/src/Module/Apps.php
index d7cd0fc72..22585f86a 100644
--- a/src/Module/Apps.php
+++ b/src/Module/Apps.php
@@ -27,12 +27,12 @@ class Apps extends BaseModule
$apps = Nav::getAppMenu();
if (count($apps) == 0) {
- notice(L10n::t('No installed applications.') . EOL);
+ notice(DI::l10n()->t('No installed applications.') . EOL);
}
$tpl = Renderer::getMarkupTemplate('apps.tpl');
return Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Applications'),
+ '$title' => DI::l10n()->t('Applications'),
'$apps' => $apps,
]);
}
diff --git a/src/Module/Attach.php b/src/Module/Attach.php
index bad97b573..057b4a9aa 100644
--- a/src/Module/Attach.php
+++ b/src/Module/Attach.php
@@ -34,19 +34,19 @@ class Attach extends BaseModule
// Check for existence
$item = MAttach::exists(['id' => $item_id]);
if ($item === false) {
- throw new \Friendica\Network\HTTPException\NotFoundException(L10n::t('Item was not found.'));
+ throw new \Friendica\Network\HTTPException\NotFoundException(DI::l10n()->t('Item was not found.'));
}
// Now we'll fetch the item, if we have enough permisson
$item = MAttach::getByIdWithPermission($item_id);
if ($item === false) {
- throw new \Friendica\Network\HTTPException\ForbiddenException(L10n::t('Permission denied.'));
+ throw new \Friendica\Network\HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.'));
}
$data = MAttach::getData($item);
if (is_null($data)) {
Logger::log('NULL data for attachment with id ' . $item['id']);
- throw new \Friendica\Network\HTTPException\NotFoundException(L10n::t('Item was not found.'));
+ throw new \Friendica\Network\HTTPException\NotFoundException(DI::l10n()->t('Item was not found.'));
}
// Use quotes around the filename to prevent a "multiple Content-Disposition"
diff --git a/src/Module/Base/Api.php b/src/Module/Base/Api.php
index ac22822d0..2df9f0090 100644
--- a/src/Module/Base/Api.php
+++ b/src/Module/Base/Api.php
@@ -39,13 +39,13 @@ class Api extends BaseModule
public static function post(array $parameters = [])
{
if (!api_user()) {
- throw new HTTPException\UnauthorizedException(L10n::t('Permission denied.'));
+ throw new HTTPException\UnauthorizedException(DI::l10n()->t('Permission denied.'));
}
$a = DI::app();
if (!empty($a->user['uid']) && $a->user['uid'] != api_user()) {
- throw new HTTPException\ForbiddenException(L10n::t('Permission denied.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.'));
}
}
diff --git a/src/Module/BaseAdminModule.php b/src/Module/BaseAdminModule.php
index bbb633ab8..ea61a6172 100644
--- a/src/Module/BaseAdminModule.php
+++ b/src/Module/BaseAdminModule.php
@@ -52,13 +52,13 @@ abstract class BaseAdminModule extends BaseModule
public static function content(array $parameters = [])
{
if (!is_site_admin()) {
- notice(L10n::t('Please login to continue.'));
+ notice(DI::l10n()->t('Please login to continue.'));
Session::set('return_path', DI::args()->getQueryString());
DI::baseUrl()->redirect('login');
}
if (!empty($_SESSION['submanage'])) {
- throw new ForbiddenException(L10n::t('Submanaged account can\'t access the administation pages. Please log back in as the master account.'));
+ throw new ForbiddenException(DI::l10n()->t('Submanaged account can\'t access the administation pages. Please log back in as the master account.'));
}
// Header stuff
@@ -71,38 +71,38 @@ abstract class BaseAdminModule extends BaseModule
// array(url, name, extra css classes)
// not part of $aside to make the template more adjustable
$aside_sub = [
- 'information' => [L10n::t('Information'), [
- 'overview' => ['admin' , L10n::t('Overview') , 'overview'],
- 'federation' => ['admin/federation' , L10n::t('Federation Statistics') , 'federation']
+ 'information' => [DI::l10n()->t('Information'), [
+ 'overview' => ['admin' , DI::l10n()->t('Overview') , 'overview'],
+ 'federation' => ['admin/federation' , DI::l10n()->t('Federation Statistics') , 'federation']
]],
- 'configuration' => [L10n::t('Configuration'), [
- 'site' => ['admin/site' , L10n::t('Site') , 'site'],
- 'users' => ['admin/users' , L10n::t('Users') , 'users'],
- 'addons' => ['admin/addons' , L10n::t('Addons') , 'addons'],
- 'themes' => ['admin/themes' , L10n::t('Themes') , 'themes'],
- 'features' => ['admin/features' , L10n::t('Additional features') , 'features'],
- 'tos' => ['admin/tos' , L10n::t('Terms of Service') , 'tos'],
+ 'configuration' => [DI::l10n()->t('Configuration'), [
+ 'site' => ['admin/site' , DI::l10n()->t('Site') , 'site'],
+ 'users' => ['admin/users' , DI::l10n()->t('Users') , 'users'],
+ 'addons' => ['admin/addons' , DI::l10n()->t('Addons') , 'addons'],
+ 'themes' => ['admin/themes' , DI::l10n()->t('Themes') , 'themes'],
+ 'features' => ['admin/features' , DI::l10n()->t('Additional features') , 'features'],
+ 'tos' => ['admin/tos' , DI::l10n()->t('Terms of Service') , 'tos'],
]],
- 'database' => [L10n::t('Database'), [
- 'dbsync' => ['admin/dbsync' , L10n::t('DB updates') , 'dbsync'],
- 'deferred' => ['admin/queue/deferred', L10n::t('Inspect Deferred Workers'), 'deferred'],
- 'workerqueue' => ['admin/queue' , L10n::t('Inspect worker Queue') , 'workerqueue'],
+ 'database' => [DI::l10n()->t('Database'), [
+ 'dbsync' => ['admin/dbsync' , DI::l10n()->t('DB updates') , 'dbsync'],
+ 'deferred' => ['admin/queue/deferred', DI::l10n()->t('Inspect Deferred Workers'), 'deferred'],
+ 'workerqueue' => ['admin/queue' , DI::l10n()->t('Inspect worker Queue') , 'workerqueue'],
]],
- 'tools' => [L10n::t('Tools'), [
- 'contactblock' => ['admin/blocklist/contact', L10n::t('Contact Blocklist') , 'contactblock'],
- 'blocklist' => ['admin/blocklist/server' , L10n::t('Server Blocklist') , 'blocklist'],
- 'deleteitem' => ['admin/item/delete' , L10n::t('Delete Item') , 'deleteitem'],
+ 'tools' => [DI::l10n()->t('Tools'), [
+ 'contactblock' => ['admin/blocklist/contact', DI::l10n()->t('Contact Blocklist') , 'contactblock'],
+ 'blocklist' => ['admin/blocklist/server' , DI::l10n()->t('Server Blocklist') , 'blocklist'],
+ 'deleteitem' => ['admin/item/delete' , DI::l10n()->t('Delete Item') , 'deleteitem'],
]],
- 'logs' => [L10n::t('Logs'), [
- 'logsconfig' => ['admin/logs/', L10n::t('Logs') , 'logs'],
- 'logsview' => ['admin/logs/view' , L10n::t('View Logs') , 'viewlogs'],
+ 'logs' => [DI::l10n()->t('Logs'), [
+ 'logsconfig' => ['admin/logs/', DI::l10n()->t('Logs') , 'logs'],
+ 'logsview' => ['admin/logs/view' , DI::l10n()->t('View Logs') , 'viewlogs'],
]],
- 'diagnostics' => [L10n::t('Diagnostics'), [
- 'phpinfo' => ['admin/phpinfo' , L10n::t('PHP Info') , 'phpinfo'],
- 'probe' => ['probe' , L10n::t('probe address') , 'probe'],
- 'webfinger' => ['webfinger' , L10n::t('check webfinger') , 'webfinger'],
- 'itemsource' => ['admin/item/source' , L10n::t('Item Source') , 'itemsource'],
- 'babel' => ['babel' , L10n::t('Babel') , 'babel'],
+ 'diagnostics' => [DI::l10n()->t('Diagnostics'), [
+ 'phpinfo' => ['admin/phpinfo' , DI::l10n()->t('PHP Info') , 'phpinfo'],
+ 'probe' => ['probe' , DI::l10n()->t('probe address') , 'probe'],
+ 'webfinger' => ['webfinger' , DI::l10n()->t('check webfinger') , 'webfinger'],
+ 'itemsource' => ['admin/item/source' , DI::l10n()->t('Item Source') , 'itemsource'],
+ 'babel' => ['babel' , DI::l10n()->t('Babel') , 'babel'],
]],
];
@@ -110,9 +110,9 @@ abstract class BaseAdminModule extends BaseModule
DI::page()['aside'] .= Renderer::replaceMacros($t, [
'$admin' => ['addons_admin' => Addon::getAdminList()],
'$subpages' => $aside_sub,
- '$admtxt' => L10n::t('Admin'),
- '$plugadmtxt' => L10n::t('Addon Features'),
- '$h_pending' => L10n::t('User registrations waiting for confirmation'),
+ '$admtxt' => DI::l10n()->t('Admin'),
+ '$plugadmtxt' => DI::l10n()->t('Addon Features'),
+ '$h_pending' => DI::l10n()->t('User registrations waiting for confirmation'),
'$admurl' => 'admin/'
]);
diff --git a/src/Module/BaseSearchModule.php b/src/Module/BaseSearchModule.php
index 2c1b2dc8d..eeb04feeb 100644
--- a/src/Module/BaseSearchModule.php
+++ b/src/Module/BaseSearchModule.php
@@ -50,7 +50,7 @@ class BaseSearchModule extends BaseModule
if (strpos($search, '@') === 0) {
$search = substr($search, 1);
$type = Search::TYPE_PEOPLE;
- $header = L10n::t('People Search - %s', $search);
+ $header = DI::l10n()->t('People Search - %s', $search);
if (strrpos($search, '@') > 0) {
$results = Search::getContactsFromProbe($search);
@@ -60,7 +60,7 @@ class BaseSearchModule extends BaseModule
if (strpos($search, '!') === 0) {
$search = substr($search, 1);
$type = Search::TYPE_FORUM;
- $header = L10n::t('Forum Search - %s', $search);
+ $header = DI::l10n()->t('Forum Search - %s', $search);
}
$args = DI::args();
@@ -91,7 +91,7 @@ class BaseSearchModule extends BaseModule
protected static function printResult(ResultList $results, Pager $pager, $header = '')
{
if ($results->getTotal() == 0) {
- info(L10n::t('No matches'));
+ info(DI::l10n()->t('No matches'));
return '';
}
@@ -128,10 +128,10 @@ class BaseSearchModule extends BaseModule
}
} else {
$connLink = DI::baseUrl()->get() . '/follow/?url=' . $result->getUrl();
- $connTxt = L10n::t('Connect');
+ $connTxt = DI::l10n()->t('Connect');
- $photo_menu['profile'] = [L10n::t("View Profile"), Model\Contact::magicLink($result->getUrl())];
- $photo_menu['follow'] = [L10n::t("Connect/Follow"), $connLink];
+ $photo_menu['profile'] = [DI::l10n()->t("View Profile"), Model\Contact::magicLink($result->getUrl())];
+ $photo_menu['follow'] = [DI::l10n()->t("Connect/Follow"), $connLink];
}
$photo = str_replace("http:///photo/", Search::getGlobalDirectory() . "/photo/", $result->getPhoto());
diff --git a/src/Module/BaseSettingsModule.php b/src/Module/BaseSettingsModule.php
index 291ae8d0b..4a6b7b28e 100644
--- a/src/Module/BaseSettingsModule.php
+++ b/src/Module/BaseSettingsModule.php
@@ -16,27 +16,27 @@ class BaseSettingsModule extends BaseModule
$tpl = Renderer::getMarkupTemplate('settings/head.tpl');
DI::page()['htmlhead'] .= Renderer::replaceMacros($tpl, [
- '$ispublic' => L10n::t('everybody')
+ '$ispublic' => DI::l10n()->t('everybody')
]);
$tabs = [];
$tabs[] = [
- 'label' => L10n::t('Account'),
+ 'label' => DI::l10n()->t('Account'),
'url' => 'settings',
'selected' => (($a->argc == 1) && ($a->argv[0] === 'settings') ? 'active' : ''),
'accesskey' => 'o',
];
$tabs[] = [
- 'label' => L10n::t('Two-factor authentication'),
+ 'label' => DI::l10n()->t('Two-factor authentication'),
'url' => 'settings/2fa',
'selected' => (($a->argc > 1) && ($a->argv[1] === '2fa') ? 'active' : ''),
'accesskey' => 'o',
];
$tabs[] = [
- 'label' => L10n::t('Profiles'),
+ 'label' => DI::l10n()->t('Profiles'),
'url' => 'profiles',
'selected' => (($a->argc == 1) && ($a->argv[0] === 'profiles') ? 'active' : ''),
'accesskey' => 'p',
@@ -44,7 +44,7 @@ class BaseSettingsModule extends BaseModule
if (Feature::get()) {
$tabs[] = [
- 'label' => L10n::t('Additional features'),
+ 'label' => DI::l10n()->t('Additional features'),
'url' => 'settings/features',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'features') ? 'active' : ''),
'accesskey' => 't',
@@ -52,49 +52,49 @@ class BaseSettingsModule extends BaseModule
}
$tabs[] = [
- 'label' => L10n::t('Display'),
+ 'label' => DI::l10n()->t('Display'),
'url' => 'settings/display',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'display') ? 'active' : ''),
'accesskey' => 'i',
];
$tabs[] = [
- 'label' => L10n::t('Social Networks'),
+ 'label' => DI::l10n()->t('Social Networks'),
'url' => 'settings/connectors',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'connectors') ? 'active' : ''),
'accesskey' => 'w',
];
$tabs[] = [
- 'label' => L10n::t('Addons'),
+ 'label' => DI::l10n()->t('Addons'),
'url' => 'settings/addon',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'addon') ? 'active' : ''),
'accesskey' => 'l',
];
$tabs[] = [
- 'label' => L10n::t('Delegations'),
+ 'label' => DI::l10n()->t('Delegations'),
'url' => 'settings/delegation',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'delegation') ? 'active' : ''),
'accesskey' => 'd',
];
$tabs[] = [
- 'label' => L10n::t('Connected apps'),
+ 'label' => DI::l10n()->t('Connected apps'),
'url' => 'settings/oauth',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'oauth') ? 'active' : ''),
'accesskey' => 'b',
];
$tabs[] = [
- 'label' => L10n::t('Export personal data'),
+ 'label' => DI::l10n()->t('Export personal data'),
'url' => 'settings/userexport',
'selected' => (($a->argc > 1) && ($a->argv[1] === 'userexport') ? 'active' : ''),
'accesskey' => 'e',
];
$tabs[] = [
- 'label' => L10n::t('Remove account'),
+ 'label' => DI::l10n()->t('Remove account'),
'url' => 'removeme',
'selected' => (($a->argc == 1) && ($a->argv[0] === 'removeme') ? 'active' : ''),
'accesskey' => 'r',
@@ -103,7 +103,7 @@ class BaseSettingsModule extends BaseModule
$tabtpl = Renderer::getMarkupTemplate("generic_links_widget.tpl");
DI::page()['aside'] = Renderer::replaceMacros($tabtpl, [
- '$title' => L10n::t('Settings'),
+ '$title' => DI::l10n()->t('Settings'),
'$class' => 'settings-widget',
'$items' => $tabs,
]);
diff --git a/src/Module/Bookmarklet.php b/src/Module/Bookmarklet.php
index 5cd908488..a5d4801a9 100644
--- a/src/Module/Bookmarklet.php
+++ b/src/Module/Bookmarklet.php
@@ -24,7 +24,7 @@ class Bookmarklet extends BaseModule
$config = DI::config();
if (!local_user()) {
- $output = '' . L10n::t('Login') . ' ';
+ $output = '' . DI::l10n()->t('Login') . ' ';
$output .= Login::form(DI::args()->getQueryString(), intval($config->get('config', 'register_policy')) === Register::CLOSED ? false : true);
return $output;
}
@@ -34,7 +34,7 @@ class Bookmarklet extends BaseModule
if (!strstr($referer, $page)) {
if (empty($_REQUEST["url"])) {
- throw new HTTPException\BadRequestException(L10n::t('This page is missing a url parameter.'));
+ throw new HTTPException\BadRequestException(DI::l10n()->t('This page is missing a url parameter.'));
}
$content = add_page_info($_REQUEST["url"]);
@@ -56,7 +56,7 @@ class Bookmarklet extends BaseModule
$output = status_editor($app, $x, 0, false);
$output .= "";
} else {
- $output = '' . L10n::t('The post was created') . ' ';
+ $output = '' . DI::l10n()->t('The post was created') . ' ';
$output .= "";
}
diff --git a/src/Module/Contact.php b/src/Module/Contact.php
index d618e2486..183a1bd16 100644
--- a/src/Module/Contact.php
+++ b/src/Module/Contact.php
@@ -94,7 +94,7 @@ class Contact extends BaseModule
}
if (!DBA::exists('contact', ['id' => $contact_id, 'uid' => local_user(), 'deleted' => false])) {
- notice(L10n::t('Could not access contact record.') . EOL);
+ notice(DI::l10n()->t('Could not access contact record.') . EOL);
DI::baseUrl()->redirect('contact');
return; // NOTREACHED
}
@@ -104,7 +104,7 @@ class Contact extends BaseModule
$profile_id = intval($_POST['profile-assign'] ?? 0);
if ($profile_id) {
if (!DBA::exists('profile', ['id' => $profile_id, 'uid' => local_user()])) {
- notice(L10n::t('Could not locate selected profile.') . EOL);
+ notice(DI::l10n()->t('Could not locate selected profile.') . EOL);
return;
}
}
@@ -136,9 +136,9 @@ class Contact extends BaseModule
);
if (DBA::isResult($r)) {
- info(L10n::t('Contact updated.') . EOL);
+ info(DI::l10n()->t('Contact updated.') . EOL);
} else {
- notice(L10n::t('Failed to update contact record.') . EOL);
+ notice(DI::l10n()->t('Failed to update contact record.') . EOL);
}
$contact = DBA::selectFirst('contact', [], ['id' => $contact_id, 'uid' => local_user(), 'deleted' => false]);
@@ -311,13 +311,13 @@ class Contact extends BaseModule
'$url' => Model\Contact::magicLinkByContact($contact, $contact['url']),
'$addr' => $contact['addr'] ?? '',
'$network_link' => $network_link,
- '$network' => L10n::t('Network:'),
+ '$network' => DI::l10n()->t('Network:'),
'$account_type' => Model\Contact::getAccountType($contact),
- '$follow' => L10n::t('Follow'),
+ '$follow' => DI::l10n()->t('Follow'),
'$follow_link' => $follow_link,
- '$unfollow' => L10n::t('Unfollow'),
+ '$unfollow' => DI::l10n()->t('Unfollow'),
'$unfollow_link' => $unfollow_link,
- '$wallmessage' => L10n::t('Message'),
+ '$wallmessage' => DI::l10n()->t('Message'),
'$wallmessage_link' => $wallmessage_link,
]);
@@ -356,7 +356,7 @@ class Contact extends BaseModule
Nav::setSelected('contact');
if (!local_user()) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return Login::form();
}
@@ -371,7 +371,7 @@ class Contact extends BaseModule
$orig_record = DBA::selectFirst('contact', [], ['id' => $contact_id, 'uid' => [0, local_user()], 'self' => false, 'deleted' => false]);
if (!DBA::isResult($orig_record)) {
- throw new NotFoundException(L10n::t('Contact not found'));
+ throw new NotFoundException(DI::l10n()->t('Contact not found'));
}
if ($cmd === 'update' && ($orig_record['uid'] != 0)) {
@@ -390,7 +390,7 @@ class Contact extends BaseModule
self::blockContact($contact_id);
$blocked = Model\Contact::isBlockedByUser($contact_id, local_user());
- info(($blocked ? L10n::t('Contact has been blocked') : L10n::t('Contact has been unblocked')) . EOL);
+ info(($blocked ? DI::l10n()->t('Contact has been blocked') : DI::l10n()->t('Contact has been unblocked')) . EOL);
DI::baseUrl()->redirect('contact/' . $contact_id);
// NOTREACHED
@@ -400,7 +400,7 @@ class Contact extends BaseModule
self::ignoreContact($contact_id);
$ignored = Model\Contact::isIgnoredByUser($contact_id, local_user());
- info(($ignored ? L10n::t('Contact has been ignored') : L10n::t('Contact has been unignored')) . EOL);
+ info(($ignored ? DI::l10n()->t('Contact has been ignored') : DI::l10n()->t('Contact has been unignored')) . EOL);
DI::baseUrl()->redirect('contact/' . $contact_id);
// NOTREACHED
@@ -410,7 +410,7 @@ class Contact extends BaseModule
$r = self::archiveContact($contact_id, $orig_record);
if ($r) {
$archived = (($orig_record['archive']) ? 0 : 1);
- info((($archived) ? L10n::t('Contact has been archived') : L10n::t('Contact has been unarchived')) . EOL);
+ info((($archived) ? DI::l10n()->t('Contact has been archived') : DI::l10n()->t('Contact has been unarchived')) . EOL);
}
DI::baseUrl()->redirect('contact/' . $contact_id);
@@ -434,15 +434,15 @@ class Contact extends BaseModule
DI::page()['aside'] = '';
return Renderer::replaceMacros(Renderer::getMarkupTemplate('contact_drop_confirm.tpl'), [
- '$header' => L10n::t('Drop contact'),
+ '$header' => DI::l10n()->t('Drop contact'),
'$contact' => self::getContactTemplateVars($orig_record),
'$method' => 'get',
- '$message' => L10n::t('Do you really want to delete this contact?'),
+ '$message' => DI::l10n()->t('Do you really want to delete this contact?'),
'$extra_inputs' => $inputs,
- '$confirm' => L10n::t('Yes'),
+ '$confirm' => DI::l10n()->t('Yes'),
'$confirm_url' => $query['base'],
'$confirm_name' => 'confirmed',
- '$cancel' => L10n::t('Cancel'),
+ '$cancel' => DI::l10n()->t('Cancel'),
]);
}
// Now check how the user responded to the confirmation query
@@ -451,7 +451,7 @@ class Contact extends BaseModule
}
self::dropContact($orig_record);
- info(L10n::t('Contact has been removed.') . EOL);
+ info(DI::l10n()->t('Contact has been removed.') . EOL);
DI::baseUrl()->redirect('contact');
// NOTREACHED
@@ -481,17 +481,17 @@ class Contact extends BaseModule
switch ($contact['rel']) {
case Model\Contact::FRIEND:
$dir_icon = 'images/lrarrow.gif';
- $relation_text = L10n::t('You are mutual friends with %s');
+ $relation_text = DI::l10n()->t('You are mutual friends with %s');
break;
case Model\Contact::FOLLOWER;
$dir_icon = 'images/larrow.gif';
- $relation_text = L10n::t('You are sharing with %s');
+ $relation_text = DI::l10n()->t('You are sharing with %s');
break;
case Model\Contact::SHARING;
$dir_icon = 'images/rarrow.gif';
- $relation_text = L10n::t('%s is sharing with you');
+ $relation_text = DI::l10n()->t('%s is sharing with you');
break;
default:
@@ -515,36 +515,36 @@ class Contact extends BaseModule
$sparkle = '';
}
- $insecure = L10n::t('Private communications are not available for this contact.');
+ $insecure = DI::l10n()->t('Private communications are not available for this contact.');
- $last_update = (($contact['last-update'] <= DBA::NULL_DATETIME) ? L10n::t('Never') : DateTimeFormat::local($contact['last-update'], 'D, j M Y, g:i A'));
+ $last_update = (($contact['last-update'] <= DBA::NULL_DATETIME) ? DI::l10n()->t('Never') : DateTimeFormat::local($contact['last-update'], 'D, j M Y, g:i A'));
if ($contact['last-update'] > DBA::NULL_DATETIME) {
- $last_update .= ' ' . (($contact['last-update'] <= $contact['success_update']) ? L10n::t('(Update was successful)') : L10n::t('(Update was not successful)'));
+ $last_update .= ' ' . (($contact['last-update'] <= $contact['success_update']) ? DI::l10n()->t('(Update was successful)') : DI::l10n()->t('(Update was not successful)'));
}
- $lblsuggest = (($contact['network'] === Protocol::DFRN) ? L10n::t('Suggest friends') : '');
+ $lblsuggest = (($contact['network'] === Protocol::DFRN) ? DI::l10n()->t('Suggest friends') : '');
$poll_enabled = in_array($contact['network'], [Protocol::DFRN, Protocol::OSTATUS, Protocol::FEED, Protocol::MAIL]);
- $nettype = L10n::t('Network type: %s', ContactSelector::networkToName($contact['network'], $contact['url'], $contact['protocol']));
+ $nettype = DI::l10n()->t('Network type: %s', ContactSelector::networkToName($contact['network'], $contact['url'], $contact['protocol']));
// tabs
$tab_str = self::getTabsHTML($a, $contact, 3);
- $lost_contact = (($contact['archive'] && $contact['term-date'] > DBA::NULL_DATETIME && $contact['term-date'] < DateTimeFormat::utcNow()) ? L10n::t('Communications lost with this contact!') : '');
+ $lost_contact = (($contact['archive'] && $contact['term-date'] > DBA::NULL_DATETIME && $contact['term-date'] < DateTimeFormat::utcNow()) ? DI::l10n()->t('Communications lost with this contact!') : '');
$fetch_further_information = null;
if ($contact['network'] == Protocol::FEED) {
$fetch_further_information = [
'fetch_further_information',
- L10n::t('Fetch further information for feeds'),
+ DI::l10n()->t('Fetch further information for feeds'),
$contact['fetch_further_information'],
- L10n::t('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.'),
+ DI::l10n()->t('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.'),
[
- '0' => L10n::t('Disabled'),
- '1' => L10n::t('Fetch information'),
- '3' => L10n::t('Fetch keywords'),
- '2' => L10n::t('Fetch information and keywords')
+ '0' => DI::l10n()->t('Disabled'),
+ '1' => DI::l10n()->t('Fetch information'),
+ '3' => DI::l10n()->t('Fetch keywords'),
+ '2' => DI::l10n()->t('Fetch information and keywords')
]
];
}
@@ -563,9 +563,9 @@ class Contact extends BaseModule
$contact_actions = self::getContactActions($contact);
if ($contact['uid'] != 0) {
- $lbl_vis1 = L10n::t('Profile Visibility');
- $lbl_info1 = L10n::t('Contact Information / Notes');
- $contact_settings_label = L10n::t('Contact Settings');
+ $lbl_vis1 = DI::l10n()->t('Profile Visibility');
+ $lbl_info1 = DI::l10n()->t('Contact Information / Notes');
+ $contact_settings_label = DI::l10n()->t('Contact Settings');
} else {
$lbl_vis1 = null;
$lbl_info1 = null;
@@ -574,67 +574,67 @@ class Contact extends BaseModule
$tpl = Renderer::getMarkupTemplate('contact_edit.tpl');
$o .= Renderer::replaceMacros($tpl, [
- '$header' => L10n::t('Contact'),
+ '$header' => DI::l10n()->t('Contact'),
'$tab_str' => $tab_str,
- '$submit' => L10n::t('Submit'),
+ '$submit' => DI::l10n()->t('Submit'),
'$lbl_vis1' => $lbl_vis1,
- '$lbl_vis2' => L10n::t('Please choose the profile you would like to display to %s when viewing your profile securely.', $contact['name']),
+ '$lbl_vis2' => DI::l10n()->t('Please choose the profile you would like to display to %s when viewing your profile securely.', $contact['name']),
'$lbl_info1' => $lbl_info1,
- '$lbl_info2' => L10n::t('Their personal note'),
+ '$lbl_info2' => DI::l10n()->t('Their personal note'),
'$reason' => trim(Strings::escapeTags($contact['reason'])),
- '$infedit' => L10n::t('Edit contact notes'),
+ '$infedit' => DI::l10n()->t('Edit contact notes'),
'$common_link' => 'common/loc/' . local_user() . '/' . $contact['id'],
'$relation_text' => $relation_text,
- '$visit' => L10n::t('Visit %s\'s profile [%s]', $contact['name'], $contact['url']),
- '$blockunblock' => L10n::t('Block/Unblock contact'),
- '$ignorecont' => L10n::t('Ignore contact'),
- '$lblcrepair' => L10n::t('Repair URL settings'),
- '$lblrecent' => L10n::t('View conversations'),
+ '$visit' => DI::l10n()->t('Visit %s\'s profile [%s]', $contact['name'], $contact['url']),
+ '$blockunblock' => DI::l10n()->t('Block/Unblock contact'),
+ '$ignorecont' => DI::l10n()->t('Ignore contact'),
+ '$lblcrepair' => DI::l10n()->t('Repair URL settings'),
+ '$lblrecent' => DI::l10n()->t('View conversations'),
'$lblsuggest' => $lblsuggest,
'$nettype' => $nettype,
'$poll_interval' => $poll_interval,
'$poll_enabled' => $poll_enabled,
- '$lastupdtext' => L10n::t('Last update:'),
+ '$lastupdtext' => DI::l10n()->t('Last update:'),
'$lost_contact' => $lost_contact,
- '$updpub' => L10n::t('Update public posts'),
+ '$updpub' => DI::l10n()->t('Update public posts'),
'$last_update' => $last_update,
- '$udnow' => L10n::t('Update now'),
+ '$udnow' => DI::l10n()->t('Update now'),
'$profile_select' => $profile_select,
'$contact_id' => $contact['id'],
- '$block_text' => ($contact['blocked'] ? L10n::t('Unblock') : L10n::t('Block')),
- '$ignore_text' => ($contact['readonly'] ? L10n::t('Unignore') : L10n::t('Ignore')),
+ '$block_text' => ($contact['blocked'] ? DI::l10n()->t('Unblock') : DI::l10n()->t('Block')),
+ '$ignore_text' => ($contact['readonly'] ? DI::l10n()->t('Unignore') : DI::l10n()->t('Ignore')),
'$insecure' => (in_array($contact['network'], [Protocol::ACTIVITYPUB, Protocol::DFRN, Protocol::MAIL, Protocol::DIASPORA]) ? '' : $insecure),
'$info' => $contact['info'],
'$cinfo' => ['info', '', $contact['info'], ''],
- '$blocked' => ($contact['blocked'] ? L10n::t('Currently blocked') : ''),
- '$ignored' => ($contact['readonly'] ? L10n::t('Currently ignored') : ''),
- '$archived' => ($contact['archive'] ? L10n::t('Currently archived') : ''),
- '$pending' => ($contact['pending'] ? L10n::t('Awaiting connection acknowledge') : ''),
- '$hidden' => ['hidden', L10n::t('Hide this contact from others'), ($contact['hidden'] == 1), L10n::t('Replies/likes to your public posts may still be visible')],
- '$notify' => ['notify', L10n::t('Notification for new posts'), ($contact['notify_new_posts'] == 1), L10n::t('Send a notification of every new post of this contact')],
+ '$blocked' => ($contact['blocked'] ? DI::l10n()->t('Currently blocked') : ''),
+ '$ignored' => ($contact['readonly'] ? DI::l10n()->t('Currently ignored') : ''),
+ '$archived' => ($contact['archive'] ? DI::l10n()->t('Currently archived') : ''),
+ '$pending' => ($contact['pending'] ? DI::l10n()->t('Awaiting connection acknowledge') : ''),
+ '$hidden' => ['hidden', DI::l10n()->t('Hide this contact from others'), ($contact['hidden'] == 1), DI::l10n()->t('Replies/likes to your public posts may still be visible')],
+ '$notify' => ['notify', DI::l10n()->t('Notification for new posts'), ($contact['notify_new_posts'] == 1), DI::l10n()->t('Send a notification of every new post of this contact')],
'$fetch_further_information' => $fetch_further_information,
- '$ffi_keyword_blacklist' => ['ffi_keyword_blacklist', L10n::t('Blacklisted keywords'), $contact['ffi_keyword_blacklist'], L10n::t('Comma separated list of keywords that should not be converted to hashtags, when "Fetch information and keywords" is selected')],
+ '$ffi_keyword_blacklist' => ['ffi_keyword_blacklist', DI::l10n()->t('Blacklisted keywords'), $contact['ffi_keyword_blacklist'], DI::l10n()->t('Comma separated list of keywords that should not be converted to hashtags, when "Fetch information and keywords" is selected')],
'$photo' => $contact['photo'],
'$name' => $contact['name'],
'$dir_icon' => $dir_icon,
'$sparkle' => $sparkle,
'$url' => $url,
- '$profileurllabel'=> L10n::t('Profile URL'),
+ '$profileurllabel'=> DI::l10n()->t('Profile URL'),
'$profileurl' => $contact['url'],
'$account_type' => Model\Contact::getAccountType($contact),
'$location' => BBCode::convert($contact['location']),
- '$location_label' => L10n::t('Location:'),
+ '$location_label' => DI::l10n()->t('Location:'),
'$xmpp' => BBCode::convert($contact['xmpp']),
- '$xmpp_label' => L10n::t('XMPP:'),
+ '$xmpp_label' => DI::l10n()->t('XMPP:'),
'$about' => BBCode::convert($contact['about'], false),
- '$about_label' => L10n::t('About:'),
+ '$about_label' => DI::l10n()->t('About:'),
'$keywords' => $contact['keywords'],
- '$keywords_label' => L10n::t('Tags:'),
- '$contact_action_button' => L10n::t('Actions'),
+ '$keywords_label' => DI::l10n()->t('Tags:'),
+ '$contact_action_button' => DI::l10n()->t('Actions'),
'$contact_actions'=> $contact_actions,
- '$contact_status' => L10n::t('Status'),
+ '$contact_status' => DI::l10n()->t('Status'),
'$contact_settings_label' => $contact_settings_label,
- '$contact_profile_label' => L10n::t('Profile'),
+ '$contact_profile_label' => DI::l10n()->t('Profile'),
]);
$arr = ['contact' => $contact, 'output' => $o];
@@ -680,58 +680,58 @@ class Contact extends BaseModule
$tabs = [
[
- 'label' => L10n::t('All Contacts'),
+ 'label' => DI::l10n()->t('All Contacts'),
'url' => 'contact',
'sel' => !$type ? 'active' : '',
- 'title' => L10n::t('Show all contacts'),
+ 'title' => DI::l10n()->t('Show all contacts'),
'id' => 'showall-tab',
'accesskey' => 'l',
],
[
- 'label' => L10n::t('Pending'),
+ 'label' => DI::l10n()->t('Pending'),
'url' => 'contact/pending',
'sel' => $type == 'pending' ? 'active' : '',
- 'title' => L10n::t('Only show pending contacts'),
+ 'title' => DI::l10n()->t('Only show pending contacts'),
'id' => 'showpending-tab',
'accesskey' => 'p',
],
[
- 'label' => L10n::t('Blocked'),
+ 'label' => DI::l10n()->t('Blocked'),
'url' => 'contact/blocked',
'sel' => $type == 'blocked' ? 'active' : '',
- 'title' => L10n::t('Only show blocked contacts'),
+ 'title' => DI::l10n()->t('Only show blocked contacts'),
'id' => 'showblocked-tab',
'accesskey' => 'b',
],
[
- 'label' => L10n::t('Ignored'),
+ 'label' => DI::l10n()->t('Ignored'),
'url' => 'contact/ignored',
'sel' => $type == 'ignored' ? 'active' : '',
- 'title' => L10n::t('Only show ignored contacts'),
+ 'title' => DI::l10n()->t('Only show ignored contacts'),
'id' => 'showignored-tab',
'accesskey' => 'i',
],
[
- 'label' => L10n::t('Archived'),
+ 'label' => DI::l10n()->t('Archived'),
'url' => 'contact/archived',
'sel' => $type == 'archived' ? 'active' : '',
- 'title' => L10n::t('Only show archived contacts'),
+ 'title' => DI::l10n()->t('Only show archived contacts'),
'id' => 'showarchived-tab',
'accesskey' => 'y',
],
[
- 'label' => L10n::t('Hidden'),
+ 'label' => DI::l10n()->t('Hidden'),
'url' => 'contact/hidden',
'sel' => $type == 'hidden' ? 'active' : '',
- 'title' => L10n::t('Only show hidden contacts'),
+ 'title' => DI::l10n()->t('Only show hidden contacts'),
'id' => 'showhidden-tab',
'accesskey' => 'h',
],
[
- 'label' => L10n::t('Groups'),
+ 'label' => DI::l10n()->t('Groups'),
'url' => 'group',
'sel' => '',
- 'title' => L10n::t('Organize your contact groups'),
+ 'title' => DI::l10n()->t('Organize your contact groups'),
'id' => 'contactgroups-tab',
'accesskey' => 'e',
],
@@ -791,18 +791,18 @@ class Contact extends BaseModule
}
switch ($rel) {
- case 'followers': $header = L10n::t('Followers'); break;
- case 'following': $header = L10n::t('Following'); break;
- case 'mutuals': $header = L10n::t('Mutual friends'); break;
- default: $header = L10n::t('Contacts');
+ case 'followers': $header = DI::l10n()->t('Followers'); break;
+ case 'following': $header = DI::l10n()->t('Following'); break;
+ case 'mutuals': $header = DI::l10n()->t('Mutual friends'); break;
+ default: $header = DI::l10n()->t('Contacts');
}
switch ($type) {
- case 'pending': $header .= ' - ' . L10n::t('Pending'); break;
- case 'blocked': $header .= ' - ' . L10n::t('Blocked'); break;
- case 'hidden': $header .= ' - ' . L10n::t('Hidden'); break;
- case 'ignored': $header .= ' - ' . L10n::t('Ignored'); break;
- case 'archived': $header .= ' - ' . L10n::t('Archived'); break;
+ case 'pending': $header .= ' - ' . DI::l10n()->t('Pending'); break;
+ case 'blocked': $header .= ' - ' . DI::l10n()->t('Blocked'); break;
+ case 'hidden': $header .= ' - ' . DI::l10n()->t('Hidden'); break;
+ case 'ignored': $header .= ' - ' . DI::l10n()->t('Ignored'); break;
+ case 'archived': $header .= ' - ' . DI::l10n()->t('Archived'); break;
}
$header .= $nets ? ' - ' . ContactSelector::networkToName($nets) : '';
@@ -813,21 +813,21 @@ class Contact extends BaseModule
'$tabs' => $t,
'$total' => $total,
'$search' => $search_hdr,
- '$desc' => L10n::t('Search your contacts'),
- '$finding' => $searching ? L10n::t('Results for: %s', $search) : '',
- '$submit' => L10n::t('Find'),
+ '$desc' => DI::l10n()->t('Search your contacts'),
+ '$finding' => $searching ? DI::l10n()->t('Results for: %s', $search) : '',
+ '$submit' => DI::l10n()->t('Find'),
'$cmd' => DI::args()->getCommand(),
'$contacts' => $contacts,
- '$contact_drop_confirm' => L10n::t('Do you really want to delete this contact?'),
+ '$contact_drop_confirm' => DI::l10n()->t('Do you really want to delete this contact?'),
'multiselect' => 1,
'$batch_actions' => [
- 'contacts_batch_update' => L10n::t('Update'),
- 'contacts_batch_block' => L10n::t('Block') . '/' . L10n::t('Unblock'),
- 'contacts_batch_ignore' => L10n::t('Ignore') . '/' . L10n::t('Unignore'),
- 'contacts_batch_archive' => L10n::t('Archive') . '/' . L10n::t('Unarchive'),
- 'contacts_batch_drop' => L10n::t('Delete'),
+ 'contacts_batch_update' => DI::l10n()->t('Update'),
+ 'contacts_batch_block' => DI::l10n()->t('Block') . '/' . DI::l10n()->t('Unblock'),
+ 'contacts_batch_ignore' => DI::l10n()->t('Ignore') . '/' . DI::l10n()->t('Unignore'),
+ 'contacts_batch_archive' => DI::l10n()->t('Archive') . '/' . DI::l10n()->t('Unarchive'),
+ 'contacts_batch_drop' => DI::l10n()->t('Delete'),
],
- '$h_batch_actions' => L10n::t('Batch Actions'),
+ '$h_batch_actions' => DI::l10n()->t('Batch Actions'),
'$paginate' => $pager->renderFull($total),
]);
@@ -851,26 +851,26 @@ class Contact extends BaseModule
// tabs
$tabs = [
[
- 'label' => L10n::t('Status'),
+ 'label' => DI::l10n()->t('Status'),
'url' => "contact/" . $contact['id'] . "/conversations",
'sel' => (($active_tab == 1) ? 'active' : ''),
- 'title' => L10n::t('Conversations started by this contact'),
+ 'title' => DI::l10n()->t('Conversations started by this contact'),
'id' => 'status-tab',
'accesskey' => 'm',
],
[
- 'label' => L10n::t('Posts and Comments'),
+ 'label' => DI::l10n()->t('Posts and Comments'),
'url' => "contact/" . $contact['id'] . "/posts",
'sel' => (($active_tab == 2) ? 'active' : ''),
- 'title' => L10n::t('Status Messages and Posts'),
+ 'title' => DI::l10n()->t('Status Messages and Posts'),
'id' => 'posts-tab',
'accesskey' => 'p',
],
[
- 'label' => L10n::t('Profile'),
+ 'label' => DI::l10n()->t('Profile'),
'url' => "contact/" . $contact['id'],
'sel' => (($active_tab == 3) ? 'active' : ''),
- 'title' => L10n::t('Profile Details'),
+ 'title' => DI::l10n()->t('Profile Details'),
'id' => 'profile-tab',
'accesskey' => 'o',
]
@@ -879,10 +879,10 @@ class Contact extends BaseModule
// Show this tab only if there is visible friend list
$x = Model\GContact::countAllFriends(local_user(), $contact['id']);
if ($x) {
- $tabs[] = ['label' => L10n::t('Contacts'),
+ $tabs[] = ['label' => DI::l10n()->t('Contacts'),
'url' => "allfriends/" . $contact['id'],
'sel' => (($active_tab == 4) ? 'active' : ''),
- 'title' => L10n::t('View all contacts'),
+ 'title' => DI::l10n()->t('View all contacts'),
'id' => 'allfriends-tab',
'accesskey' => 't'];
}
@@ -890,20 +890,20 @@ class Contact extends BaseModule
// Show this tab only if there is visible common friend list
$common = Model\GContact::countCommonFriends(local_user(), $contact['id']);
if ($common) {
- $tabs[] = ['label' => L10n::t('Common Friends'),
+ $tabs[] = ['label' => DI::l10n()->t('Common Friends'),
'url' => "common/loc/" . local_user() . "/" . $contact['id'],
'sel' => (($active_tab == 5) ? 'active' : ''),
- 'title' => L10n::t('View all common friends'),
+ 'title' => DI::l10n()->t('View all common friends'),
'id' => 'common-loc-tab',
'accesskey' => 'd'
];
}
if (!empty($contact['uid'])) {
- $tabs[] = ['label' => L10n::t('Advanced'),
+ $tabs[] = ['label' => DI::l10n()->t('Advanced'),
'url' => 'crepair/' . $contact['id'],
'sel' => (($active_tab == 6) ? 'active' : ''),
- 'title' => L10n::t('Advanced Contact Settings'),
+ 'title' => DI::l10n()->t('Advanced Contact Settings'),
'id' => 'advanced-tab',
'accesskey' => 'r'
];
@@ -986,17 +986,17 @@ class Contact extends BaseModule
switch ($rr['rel']) {
case Model\Contact::FRIEND:
$dir_icon = 'images/lrarrow.gif';
- $alt_text = L10n::t('Mutual Friendship');
+ $alt_text = DI::l10n()->t('Mutual Friendship');
break;
case Model\Contact::FOLLOWER;
$dir_icon = 'images/larrow.gif';
- $alt_text = L10n::t('is a fan of yours');
+ $alt_text = DI::l10n()->t('is a fan of yours');
break;
case Model\Contact::SHARING;
$dir_icon = 'images/rarrow.gif';
- $alt_text = L10n::t('you are a fan of');
+ $alt_text = DI::l10n()->t('you are a fan of');
break;
default:
@@ -1014,22 +1014,22 @@ class Contact extends BaseModule
if ($rr['pending']) {
if (in_array($rr['rel'], [Model\Contact::FRIEND, Model\Contact::SHARING])) {
- $alt_text = L10n::t('Pending outgoing contact request');
+ $alt_text = DI::l10n()->t('Pending outgoing contact request');
} else {
- $alt_text = L10n::t('Pending incoming contact request');
+ $alt_text = DI::l10n()->t('Pending incoming contact request');
}
}
if ($rr['self']) {
$dir_icon = 'images/larrow.gif';
- $alt_text = L10n::t('This is you');
+ $alt_text = DI::l10n()->t('This is you');
$url = $rr['url'];
$sparkle = '';
}
return [
- 'img_hover' => L10n::t('Visit %s\'s profile [%s]', $rr['name'], $rr['url']),
- 'edit_hover'=> L10n::t('Edit contact'),
+ 'img_hover' => DI::l10n()->t('Visit %s\'s profile [%s]', $rr['name'], $rr['url']),
+ 'edit_hover'=> DI::l10n()->t('Edit contact'),
'photo_menu'=> Model\Contact::photoMenu($rr),
'id' => $rr['id'],
'alt_text' => $alt_text,
@@ -1062,7 +1062,7 @@ class Contact extends BaseModule
// Provide friend suggestion only for Friendica contacts
if ($contact['network'] === Protocol::DFRN) {
$contact_actions['suggest'] = [
- 'label' => L10n::t('Suggest friends'),
+ 'label' => DI::l10n()->t('Suggest friends'),
'url' => 'fsuggest/' . $contact['id'],
'title' => '',
'sel' => '',
@@ -1072,7 +1072,7 @@ class Contact extends BaseModule
if ($poll_enabled) {
$contact_actions['update'] = [
- 'label' => L10n::t('Update now'),
+ 'label' => DI::l10n()->t('Update now'),
'url' => 'contact/' . $contact['id'] . '/update',
'title' => '',
'sel' => '',
@@ -1081,34 +1081,34 @@ class Contact extends BaseModule
}
$contact_actions['block'] = [
- 'label' => (intval($contact['blocked']) ? L10n::t('Unblock') : L10n::t('Block')),
+ 'label' => (intval($contact['blocked']) ? DI::l10n()->t('Unblock') : DI::l10n()->t('Block')),
'url' => 'contact/' . $contact['id'] . '/block',
- 'title' => L10n::t('Toggle Blocked status'),
+ 'title' => DI::l10n()->t('Toggle Blocked status'),
'sel' => (intval($contact['blocked']) ? 'active' : ''),
'id' => 'toggle-block',
];
$contact_actions['ignore'] = [
- 'label' => (intval($contact['readonly']) ? L10n::t('Unignore') : L10n::t('Ignore')),
+ 'label' => (intval($contact['readonly']) ? DI::l10n()->t('Unignore') : DI::l10n()->t('Ignore')),
'url' => 'contact/' . $contact['id'] . '/ignore',
- 'title' => L10n::t('Toggle Ignored status'),
+ 'title' => DI::l10n()->t('Toggle Ignored status'),
'sel' => (intval($contact['readonly']) ? 'active' : ''),
'id' => 'toggle-ignore',
];
if ($contact['uid'] != 0) {
$contact_actions['archive'] = [
- 'label' => (intval($contact['archive']) ? L10n::t('Unarchive') : L10n::t('Archive')),
+ 'label' => (intval($contact['archive']) ? DI::l10n()->t('Unarchive') : DI::l10n()->t('Archive')),
'url' => 'contact/' . $contact['id'] . '/archive',
- 'title' => L10n::t('Toggle Archive status'),
+ 'title' => DI::l10n()->t('Toggle Archive status'),
'sel' => (intval($contact['archive']) ? 'active' : ''),
'id' => 'toggle-archive',
];
$contact_actions['delete'] = [
- 'label' => L10n::t('Delete'),
+ 'label' => DI::l10n()->t('Delete'),
'url' => 'contact/' . $contact['id'] . '/drop',
- 'title' => L10n::t('Delete contact'),
+ 'title' => DI::l10n()->t('Delete contact'),
'sel' => '',
'id' => 'delete',
];
diff --git a/src/Module/Credits.php b/src/Module/Credits.php
index c536dcaa5..9e0e4d4ea 100644
--- a/src/Module/Credits.php
+++ b/src/Module/Credits.php
@@ -22,8 +22,8 @@ class Credits extends BaseModule
$tpl = Renderer::getMarkupTemplate('credits.tpl');
return Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Credits'),
- '$thanks' => L10n::t('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!'),
+ '$title' => DI::l10n()->t('Credits'),
+ '$thanks' => DI::l10n()->t('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!'),
'$names' => $names,
]);
}
diff --git a/src/Module/Debug/Babel.php b/src/Module/Debug/Babel.php
index edd897be8..528e55344 100644
--- a/src/Module/Debug/Babel.php
+++ b/src/Module/Debug/Babel.php
@@ -29,58 +29,58 @@ class Babel extends BaseModule
case 'bbcode':
$bbcode = trim($_REQUEST['text']);
$results[] = [
- 'title' => L10n::t('Source input'),
+ 'title' => DI::l10n()->t('Source input'),
'content' => visible_whitespace($bbcode)
];
$plain = Text\BBCode::toPlaintext($bbcode, false);
$results[] = [
- 'title' => L10n::t('BBCode::toPlaintext'),
+ 'title' => DI::l10n()->t('BBCode::toPlaintext'),
'content' => visible_whitespace($plain)
];
$html = Text\BBCode::convert($bbcode);
$results[] = [
- 'title' => L10n::t('BBCode::convert (raw HTML)'),
+ 'title' => DI::l10n()->t('BBCode::convert (raw HTML)'),
'content' => visible_whitespace(htmlspecialchars($html))
];
$results[] = [
- 'title' => L10n::t('BBCode::convert'),
+ 'title' => DI::l10n()->t('BBCode::convert'),
'content' => $html
];
$bbcode2 = Text\HTML::toBBCode($html);
$results[] = [
- 'title' => L10n::t('BBCode::convert => HTML::toBBCode'),
+ 'title' => DI::l10n()->t('BBCode::convert => HTML::toBBCode'),
'content' => visible_whitespace($bbcode2)
];
$markdown = Text\BBCode::toMarkdown($bbcode);
$results[] = [
- 'title' => L10n::t('BBCode::toMarkdown'),
+ 'title' => DI::l10n()->t('BBCode::toMarkdown'),
'content' => visible_whitespace(htmlspecialchars($markdown))
];
$html2 = Text\Markdown::convert($markdown);
$results[] = [
- 'title' => L10n::t('BBCode::toMarkdown => Markdown::convert (raw HTML)'),
+ 'title' => DI::l10n()->t('BBCode::toMarkdown => Markdown::convert (raw HTML)'),
'content' => visible_whitespace(htmlspecialchars($html2))
];
$results[] = [
- 'title' => L10n::t('BBCode::toMarkdown => Markdown::convert'),
+ 'title' => DI::l10n()->t('BBCode::toMarkdown => Markdown::convert'),
'content' => $html2
];
$bbcode3 = Text\Markdown::toBBCode($markdown);
$results[] = [
- 'title' => L10n::t('BBCode::toMarkdown => Markdown::toBBCode'),
+ 'title' => DI::l10n()->t('BBCode::toMarkdown => Markdown::toBBCode'),
'content' => visible_whitespace($bbcode3)
];
$bbcode4 = Text\HTML::toBBCode($html2);
$results[] = [
- 'title' => L10n::t('BBCode::toMarkdown => Markdown::convert => HTML::toBBCode'),
+ 'title' => DI::l10n()->t('BBCode::toMarkdown => Markdown::convert => HTML::toBBCode'),
'content' => visible_whitespace($bbcode4)
];
@@ -91,88 +91,88 @@ class Babel extends BaseModule
Item::setHashtags($item);
$results[] = [
- 'title' => L10n::t('Item Body'),
+ 'title' => DI::l10n()->t('Item Body'),
'content' => visible_whitespace($item['body'])
];
$results[] = [
- 'title' => L10n::t('Item Tags'),
+ 'title' => DI::l10n()->t('Item Tags'),
'content' => $item['tag']
];
break;
case 'markdown':
$markdown = trim($_REQUEST['text']);
$results[] = [
- 'title' => L10n::t('Source input (Diaspora format)'),
+ 'title' => DI::l10n()->t('Source input (Diaspora format)'),
'content' => '' . htmlspecialchars($markdown) . ' '
];
$html = Text\Markdown::convert(html_entity_decode($markdown,ENT_COMPAT, 'UTF-8'));
$results[] = [
- 'title' => L10n::t('Markdown::convert (raw HTML)'),
+ 'title' => DI::l10n()->t('Markdown::convert (raw HTML)'),
'content' => visible_whitespace(htmlspecialchars($html))
];
$results[] = [
- 'title' => L10n::t('Markdown::convert'),
+ 'title' => DI::l10n()->t('Markdown::convert'),
'content' => $html
];
$bbcode = Text\Markdown::toBBCode(XML::unescape($markdown));
$results[] = [
- 'title' => L10n::t('Markdown::toBBCode'),
+ 'title' => DI::l10n()->t('Markdown::toBBCode'),
'content' => '' . $bbcode . ' '
];
break;
case 'html' :
$html = trim($_REQUEST['text']);
$results[] = [
- 'title' => L10n::t('Raw HTML input'),
+ 'title' => DI::l10n()->t('Raw HTML input'),
'content' => htmlspecialchars($html)
];
$results[] = [
- 'title' => L10n::t('HTML Input'),
+ 'title' => DI::l10n()->t('HTML Input'),
'content' => $html
];
$bbcode = Text\HTML::toBBCode($html);
$results[] = [
- 'title' => L10n::t('HTML::toBBCode'),
+ 'title' => DI::l10n()->t('HTML::toBBCode'),
'content' => visible_whitespace($bbcode)
];
$html2 = Text\BBCode::convert($bbcode);
$results[] = [
- 'title' => L10n::t('HTML::toBBCode => BBCode::convert'),
+ 'title' => DI::l10n()->t('HTML::toBBCode => BBCode::convert'),
'content' => $html2
];
$results[] = [
- 'title' => L10n::t('HTML::toBBCode => BBCode::convert (raw HTML)'),
+ 'title' => DI::l10n()->t('HTML::toBBCode => BBCode::convert (raw HTML)'),
'content' => htmlspecialchars($html2)
];
$bbcode2plain = Text\BBCode::toPlaintext($bbcode);
$results[] = [
- 'title' => L10n::t('HTML::toBBCode => BBCode::toPlaintext'),
+ 'title' => DI::l10n()->t('HTML::toBBCode => BBCode::toPlaintext'),
'content' => '' . $bbcode2plain . ' '
];
$markdown = Text\HTML::toMarkdown($html);
$results[] = [
- 'title' => L10n::t('HTML::toMarkdown'),
+ 'title' => DI::l10n()->t('HTML::toMarkdown'),
'content' => visible_whitespace($markdown)
];
$text = Text\HTML::toPlaintext($html, 0);
$results[] = [
- 'title' => L10n::t('HTML::toPlaintext'),
+ 'title' => DI::l10n()->t('HTML::toPlaintext'),
'content' => '' . $text . ' '
];
$text = Text\HTML::toPlaintext($html, 0, true);
$results[] = [
- 'title' => L10n::t('HTML::toPlaintext (compact)'),
+ 'title' => DI::l10n()->t('HTML::toPlaintext (compact)'),
'content' => '' . $text . ' '
];
}
@@ -180,10 +180,10 @@ class Babel extends BaseModule
$tpl = Renderer::getMarkupTemplate('babel.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$text' => ['text', L10n::t('Source text'), $_REQUEST['text'] ?? '', ''],
- '$type_bbcode' => ['type', L10n::t('BBCode'), 'bbcode', '', (($_REQUEST['type'] ?? '') ?: 'bbcode') == 'bbcode'],
- '$type_markdown' => ['type', L10n::t('Markdown'), 'markdown', '', (($_REQUEST['type'] ?? '') ?: 'bbcode') == 'markdown'],
- '$type_html' => ['type', L10n::t('HTML'), 'html', '', (($_REQUEST['type'] ?? '') ?: 'bbcode') == 'html'],
+ '$text' => ['text', DI::l10n()->t('Source text'), $_REQUEST['text'] ?? '', ''],
+ '$type_bbcode' => ['type', DI::l10n()->t('BBCode'), 'bbcode', '', (($_REQUEST['type'] ?? '') ?: 'bbcode') == 'bbcode'],
+ '$type_markdown' => ['type', DI::l10n()->t('Markdown'), 'markdown', '', (($_REQUEST['type'] ?? '') ?: 'bbcode') == 'markdown'],
+ '$type_html' => ['type', DI::l10n()->t('HTML'), 'html', '', (($_REQUEST['type'] ?? '') ?: 'bbcode') == 'html'],
'$results' => $results
]);
diff --git a/src/Module/Debug/Feed.php b/src/Module/Debug/Feed.php
index f3e8af0c5..d3c0639b7 100644
--- a/src/Module/Debug/Feed.php
+++ b/src/Module/Debug/Feed.php
@@ -18,7 +18,7 @@ class Feed extends BaseModule
public static function init(array $parameters = [])
{
if (!local_user()) {
- info(L10n::t('You must be logged in to use this module'));
+ info(DI::l10n()->t('You must be logged in to use this module'));
DI::baseUrl()->redirect();
}
}
@@ -44,7 +44,7 @@ class Feed extends BaseModule
$tpl = Renderer::getMarkupTemplate('feedtest.tpl');
return Renderer::replaceMacros($tpl, [
- '$url' => ['url', L10n::t('Source URL'), $_REQUEST['url'] ?? '', ''],
+ '$url' => ['url', DI::l10n()->t('Source URL'), $_REQUEST['url'] ?? '', ''],
'$result' => $result
]);
}
diff --git a/src/Module/Debug/ItemBody.php b/src/Module/Debug/ItemBody.php
index d32e1f6c2..388b497ec 100644
--- a/src/Module/Debug/ItemBody.php
+++ b/src/Module/Debug/ItemBody.php
@@ -16,7 +16,7 @@ class ItemBody extends BaseModule
public static function content(array $parameters = [])
{
if (!local_user()) {
- throw new HTTPException\UnauthorizedException(L10n::t('Access denied.'));
+ throw new HTTPException\UnauthorizedException(DI::l10n()->t('Access denied.'));
}
$app = DI::app();
@@ -25,7 +25,7 @@ class ItemBody extends BaseModule
$itemId = (($app->argc > 1) ? intval($app->argv[1]) : 0);
if (!$itemId) {
- throw new HTTPException\NotFoundException(L10n::t('Item not found.'));
+ throw new HTTPException\NotFoundException(DI::l10n()->t('Item not found.'));
}
$item = Item::selectFirst(['body'], ['uid' => local_user(), 'id' => $itemId]);
@@ -38,7 +38,7 @@ class ItemBody extends BaseModule
return str_replace("\n", ' ', $item['body']);
}
} else {
- throw new HTTPException\NotFoundException(L10n::t('Item not found.'));
+ throw new HTTPException\NotFoundException(DI::l10n()->t('Item not found.'));
}
}
}
diff --git a/src/Module/Debug/Localtime.php b/src/Module/Debug/Localtime.php
index d9e248979..5d2e22a6f 100644
--- a/src/Module/Debug/Localtime.php
+++ b/src/Module/Debug/Localtime.php
@@ -15,7 +15,7 @@ class Localtime extends BaseModule
{
$time = ($_REQUEST['time'] ?? '') ?: 'now';
- $bd_format = L10n::t('l F d, Y \@ g:i A');
+ $bd_format = DI::l10n()->t('l F d, Y \@ g:i A');
if (!empty($_POST['timezone'])) {
DI::app()->data['mod-localtime'] = DateTimeFormat::convert($time, $_POST['timezone'], 'UTC', $bd_format);
@@ -28,22 +28,22 @@ class Localtime extends BaseModule
$time = ($_REQUEST['time'] ?? '') ?: 'now';
- $output = '' . L10n::t('Time Conversion') . ' ';
- $output .= '' . L10n::t('Friendica provides this service for sharing events with other networks and friends in unknown timezones.') . '
';
- $output .= '' . L10n::t('UTC time: %s', $time) . '
';
+ $output = '' . DI::l10n()->t('Time Conversion') . ' ';
+ $output .= '' . DI::l10n()->t('Friendica provides this service for sharing events with other networks and friends in unknown timezones.') . '
';
+ $output .= '' . DI::l10n()->t('UTC time: %s', $time) . '
';
if (!empty($_REQUEST['timezone'])) {
- $output .= '' . L10n::t('Current timezone: %s', $_REQUEST['timezone']) . '
';
+ $output .= '' . DI::l10n()->t('Current timezone: %s', $_REQUEST['timezone']) . '
';
}
if (!empty($app->data['mod-localtime'])) {
- $output .= '' . L10n::t('Converted localtime: %s', $app->data['mod-localtime']) . '
';
+ $output .= '' . DI::l10n()->t('Converted localtime: %s', $app->data['mod-localtime']) . '
';
}
$output .= '';
+ $output .= ' ';
return $output;
}
diff --git a/src/Module/Debug/Probe.php b/src/Module/Debug/Probe.php
index 85c5f900f..b5380c536 100644
--- a/src/Module/Debug/Probe.php
+++ b/src/Module/Debug/Probe.php
@@ -16,8 +16,8 @@ class Probe extends BaseModule
public static function content(array $parameters = [])
{
if (!local_user()) {
- $e = new HTTPException\ForbiddenException(L10n::t('Only logged in users are permitted to perform a probing.'));
- $e->httpdesc = L10n::t('Public access denied.');
+ $e = new HTTPException\ForbiddenException(DI::l10n()->t('Only logged in users are permitted to perform a probing.'));
+ $e->httpdesc = DI::l10n()->t('Public access denied.');
throw $e;
}
@@ -32,7 +32,7 @@ class Probe extends BaseModule
$tpl = Renderer::getMarkupTemplate('probe.tpl');
return Renderer::replaceMacros($tpl, [
'$addr' => ['addr',
- L10n::t('Lookup address'),
+ DI::l10n()->t('Lookup address'),
$addr,
'',
'required'
diff --git a/src/Module/Debug/WebFinger.php b/src/Module/Debug/WebFinger.php
index 90da40bf0..ad3963cb9 100644
--- a/src/Module/Debug/WebFinger.php
+++ b/src/Module/Debug/WebFinger.php
@@ -15,8 +15,8 @@ class WebFinger extends BaseModule
public static function content(array $parameters = [])
{
if (!local_user()) {
- $e = new \Friendica\Network\HTTPException\ForbiddenException(L10n::t('Only logged in users are permitted to perform a probing.'));
- $e->httpdesc = L10n::t('Public access denied.');
+ $e = new \Friendica\Network\HTTPException\ForbiddenException(DI::l10n()->t('Only logged in users are permitted to perform a probing.'));
+ $e->httpdesc = DI::l10n()->t('Public access denied.');
throw $e;
}
diff --git a/src/Module/Delegation.php b/src/Module/Delegation.php
index cb2f24ce1..ef6a5edf9 100644
--- a/src/Module/Delegation.php
+++ b/src/Module/Delegation.php
@@ -96,7 +96,7 @@ class Delegation extends BaseModule
public static function content(array $parameters = [])
{
if (!local_user()) {
- throw new ForbiddenException(L10n::t('Permission denied.'));
+ throw new ForbiddenException(DI::l10n()->t('Permission denied.'));
}
$identities = DI::app()->identities;
@@ -125,11 +125,11 @@ class Delegation extends BaseModule
}
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('delegation.tpl'), [
- '$title' => L10n::t('Manage Identities and/or Pages'),
- '$desc' => L10n::t('Toggle between different identities or community/group pages which share your account details or which you have been granted "manage" permissions'),
- '$choose' => L10n::t('Select an identity to manage: '),
+ '$title' => DI::l10n()->t('Manage Identities and/or Pages'),
+ '$desc' => DI::l10n()->t('Toggle between different identities or community/group pages which share your account details or which you have been granted "manage" permissions'),
+ '$choose' => DI::l10n()->t('Select an identity to manage: '),
'$identities' => $identities,
- '$submit' => L10n::t('Submit'),
+ '$submit' => DI::l10n()->t('Submit'),
]);
return $o;
diff --git a/src/Module/Directory.php b/src/Module/Directory.php
index 41f275028..9dec1ca23 100644
--- a/src/Module/Directory.php
+++ b/src/Module/Directory.php
@@ -29,7 +29,7 @@ class Directory extends BaseModule
if (($config->get('system', 'block_public') && !Session::isAuthenticated()) ||
($config->get('system', 'block_local_dir') && !Session::isAuthenticated())) {
- throw new HTTPException\ForbiddenException(L10n::t('Public access denied.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Public access denied.'));
}
if (local_user()) {
@@ -57,7 +57,7 @@ class Directory extends BaseModule
$profiles = Profile::searchProfiles($pager->getStart(), $pager->getItemsPerPage(), $search);
if ($profiles['total'] === 0) {
- info(L10n::t('No entries (some entries may be hidden).') . EOL);
+ info(DI::l10n()->t('No entries (some entries may be hidden).') . EOL);
} else {
if (in_array('small', $app->argv)) {
$photo = 'thumb';
@@ -74,15 +74,15 @@ class Directory extends BaseModule
$output .= Renderer::replaceMacros($tpl, [
'$search' => $search,
- '$globaldir' => L10n::t('Global Directory'),
+ '$globaldir' => DI::l10n()->t('Global Directory'),
'$gDirPath' => $gDirPath,
- '$desc' => L10n::t('Find on this site'),
+ '$desc' => DI::l10n()->t('Find on this site'),
'$contacts' => $entries,
- '$finding' => L10n::t('Results for:'),
+ '$finding' => DI::l10n()->t('Results for:'),
'$findterm' => (strlen($search) ? $search : ""),
- '$title' => L10n::t('Site Directory'),
+ '$title' => DI::l10n()->t('Site Directory'),
'$search_mod' => 'directory',
- '$submit' => L10n::t('Find'),
+ '$submit' => DI::l10n()->t('Find'),
'$paginate' => $pager->renderFull($profiles['total']),
]);
@@ -133,20 +133,20 @@ class Directory extends BaseModule
|| !empty($profile['postal-code'])
|| !empty($profile['country-name'])
) {
- $location = L10n::t('Location:');
+ $location = DI::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);
+ $gender = (!empty($profile['gender']) ? DI::l10n()->t('Gender:') : false);
+ $marital = (!empty($profile['marital']) ? DI::l10n()->t('Status:') : false);
+ $homepage = (!empty($profile['homepage']) ? DI::l10n()->t('Homepage:') : false);
+ $about = (!empty($profile['about']) ? DI::l10n()->t('About:') : false);
$location_e = $location;
$photo_menu = [
- 'profile' => [L10n::t("View Profile"), Contact::magicLink($profile_link)]
+ 'profile' => [DI::l10n()->t("View Profile"), Contact::magicLink($profile_link)]
];
$entry = [
diff --git a/src/Module/Filer/SaveTag.php b/src/Module/Filer/SaveTag.php
index 0b6a41ae2..93cb5f5a8 100644
--- a/src/Module/Filer/SaveTag.php
+++ b/src/Module/Filer/SaveTag.php
@@ -17,7 +17,7 @@ class SaveTag extends BaseModule
public static function init(array $parameters = [])
{
if (!local_user()) {
- info(L10n::t('You must be logged in to use this module'));
+ info(DI::l10n()->t('You must be logged in to use this module'));
DI::baseUrl()->redirect();
}
}
@@ -36,7 +36,7 @@ class SaveTag extends BaseModule
if ($item_id && strlen($term)) {
// file item
Model\FileTag::saveFile(local_user(), $item_id, $term);
- info(L10n::t('Filetag %s saved to item', $term));
+ info(DI::l10n()->t('Filetag %s saved to item', $term));
}
// return filer dialog
@@ -45,8 +45,8 @@ class SaveTag extends BaseModule
$tpl = Renderer::getMarkupTemplate("filer_dialog.tpl");
echo Renderer::replaceMacros($tpl, [
- '$field' => ['term', L10n::t("Save to Folder:"), '', '', $filetags, L10n::t('- select -')],
- '$submit' => L10n::t('Save'),
+ '$field' => ['term', DI::l10n()->t("Save to Folder:"), '', '', $filetags, DI::l10n()->t('- select -')],
+ '$submit' => DI::l10n()->t('Save'),
]);
exit;
diff --git a/src/Module/FollowConfirm.php b/src/Module/FollowConfirm.php
index 2da2685b6..5ff618ae6 100644
--- a/src/Module/FollowConfirm.php
+++ b/src/Module/FollowConfirm.php
@@ -15,7 +15,7 @@ class FollowConfirm extends BaseModule
{
$uid = local_user();
if (!$uid) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return;
}
diff --git a/src/Module/Friendica.php b/src/Module/Friendica.php
index 53bb6eaf6..b48ad7f03 100644
--- a/src/Module/Friendica.php
+++ b/src/Module/Friendica.php
@@ -37,27 +37,27 @@ class Friendica extends BaseModule
}
}
$addon = [
- 'title' => L10n::t('Installed addons/apps:'),
+ 'title' => DI::l10n()->t('Installed addons/apps:'),
'list' => $sortedAddonList,
];
} else {
$addon = [
- 'title' => L10n::t('No installed addons/apps'),
+ 'title' => DI::l10n()->t('No installed addons/apps'),
];
}
$tos = ($config->get('system', 'tosdisplay')) ?
- L10n::t('Read about the Terms of Service of this node.', DI::baseUrl()->get()) :
+ DI::l10n()->t('Read about the Terms of Service of this node.', DI::baseUrl()->get()) :
'';
$blockList = $config->get('system', 'blocklist');
if (!empty($blockList)) {
$blocked = [
- 'title' => L10n::t('On this server the following remote servers are blocked.'),
+ 'title' => DI::l10n()->t('On this server the following remote servers are blocked.'),
'header' => [
- L10n::t('Blocked domain'),
- L10n::t('Reason for the block'),
+ DI::l10n()->t('Blocked domain'),
+ DI::l10n()->t('Reason for the block'),
],
'list' => $blockList,
];
@@ -72,14 +72,14 @@ class Friendica extends BaseModule
$tpl = Renderer::getMarkupTemplate('friendica.tpl');
return Renderer::replaceMacros($tpl, [
- 'about' => L10n::t('This is Friendica, version %s that is running at the web location %s. The database version is %s, the post update version is %s.',
+ 'about' => DI::l10n()->t('This is Friendica, version %s that is running at the web location %s. The database version is %s, the post update version is %s.',
'' . FRIENDICA_VERSION . ' ',
DI::baseUrl()->get(),
'' . DB_UPDATE_VERSION . ' ',
'' . $config->get('system', 'post_update_version') . ' '),
- 'friendica' => L10n::t('Please visit Friendi.ca to learn more about the Friendica project.'),
- 'bugs' => L10n::t('Bug reports and issues: please visit') . ' ' . '' . L10n::t('the bugtracker at github') . ' ',
- 'info' => L10n::t('Suggestions, praise, etc. - please email "info" at "friendi - dot - ca'),
+ 'friendica' => DI::l10n()->t('Please visit Friendi.ca to learn more about the Friendica project.'),
+ 'bugs' => DI::l10n()->t('Bug reports and issues: please visit') . ' ' . '' . DI::l10n()->t('the bugtracker at github') . ' ',
+ 'info' => DI::l10n()->t('Suggestions, praise, etc. - please email "info" at "friendi - dot - ca'),
'visible_addons' => $addon,
'tos' => $tos,
diff --git a/src/Module/Group.php b/src/Module/Group.php
index 6542cc74a..e9d4020ea 100644
--- a/src/Module/Group.php
+++ b/src/Module/Group.php
@@ -28,7 +28,7 @@ class Group extends BaseModule
}
if (!local_user()) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
DI::baseUrl()->redirect();
}
@@ -39,13 +39,13 @@ class Group extends BaseModule
$name = Strings::escapeTags(trim($_POST['groupname']));
$r = Model\Group::create(local_user(), $name);
if ($r) {
- info(L10n::t('Group created.'));
+ info(DI::l10n()->t('Group created.'));
$r = Model\Group::getIdByName(local_user(), $name);
if ($r) {
DI::baseUrl()->redirect('group/' . $r);
}
} else {
- notice(L10n::t('Could not create group.'));
+ notice(DI::l10n()->t('Could not create group.'));
}
DI::baseUrl()->redirect('group');
}
@@ -56,13 +56,13 @@ class Group extends BaseModule
$group = DBA::selectFirst('group', ['id', 'name'], ['id' => $a->argv[1], 'uid' => local_user()]);
if (!DBA::isResult($group)) {
- notice(L10n::t('Group not found.'));
+ notice(DI::l10n()->t('Group not found.'));
DI::baseUrl()->redirect('contact');
}
$groupname = Strings::escapeTags(trim($_POST['groupname']));
if (strlen($groupname) && ($groupname != $group['name'])) {
if (Model\Group::update($group['id'], $groupname)) {
- info(L10n::t('Group name changed.'));
+ info(DI::l10n()->t('Group name changed.'));
}
}
}
@@ -74,7 +74,7 @@ class Group extends BaseModule
$a = DI::app();
if (!local_user()) {
- throw new \Exception(L10n::t('Permission denied.'), 403);
+ throw new \Exception(DI::l10n()->t('Permission denied.'), 403);
}
// POST /group/123/add/123
@@ -84,38 +84,38 @@ class Group extends BaseModule
list($group_id, $command, $contact_id) = array_slice($a->argv, 1);
if (!Model\Group::exists($group_id, local_user())) {
- throw new \Exception(L10n::t('Unknown group.'), 404);
+ throw new \Exception(DI::l10n()->t('Unknown group.'), 404);
}
$contact = DBA::selectFirst('contact', ['deleted'], ['id' => $contact_id, 'uid' => local_user()]);
if (!DBA::isResult($contact)) {
- throw new \Exception(L10n::t('Contact not found.'), 404);
+ throw new \Exception(DI::l10n()->t('Contact not found.'), 404);
}
if ($contact['deleted']) {
- throw new \Exception(L10n::t('Contact is deleted.'), 410);
+ throw new \Exception(DI::l10n()->t('Contact is deleted.'), 410);
}
switch($command) {
case 'add':
if (!Model\Group::addMember($group_id, $contact_id)) {
- throw new \Exception(L10n::t('Unable to add the contact to the group.'), 500);
+ throw new \Exception(DI::l10n()->t('Unable to add the contact to the group.'), 500);
}
- $message = L10n::t('Contact successfully added to group.');
+ $message = DI::l10n()->t('Contact successfully added to group.');
break;
case 'remove':
if (!Model\Group::removeMember($group_id, $contact_id)) {
- throw new \Exception(L10n::t('Unable to remove the contact from the group.'), 500);
+ throw new \Exception(DI::l10n()->t('Unable to remove the contact from the group.'), 500);
}
- $message = L10n::t('Contact successfully removed from group.');
+ $message = DI::l10n()->t('Contact successfully removed from group.');
break;
default:
- throw new \Exception(L10n::t('Unknown group command.'), 400);
+ throw new \Exception(DI::l10n()->t('Unknown group command.'), 400);
}
} else {
- throw new \Exception(L10n::t('Bad request.'), 400);
+ throw new \Exception(DI::l10n()->t('Bad request.'), 400);
}
notice($message);
@@ -154,15 +154,15 @@ class Group extends BaseModule
$context = [
- '$submit' => L10n::t('Save Group'),
- '$submit_filter' => L10n::t('Filter'),
+ '$submit' => DI::l10n()->t('Save Group'),
+ '$submit_filter' => DI::l10n()->t('Filter'),
];
// @TODO: Replace with parameter from router
if (($a->argc == 2) && ($a->argv[1] === 'new')) {
return Renderer::replaceMacros($tpl, $context + [
- '$title' => L10n::t('Create a group of contacts/friends.'),
- '$gname' => ['groupname', L10n::t('Group Name: '), '', ''],
+ '$title' => DI::l10n()->t('Create a group of contacts/friends.'),
+ '$gname' => ['groupname', DI::l10n()->t('Group Name: '), '', ''],
'$gid' => 'new',
'$form_security_token' => BaseModule::getFormSecurityToken("group_edit"),
]);
@@ -177,7 +177,7 @@ class Group extends BaseModule
$nogroup = true;
$group = [
'id' => $id,
- 'name' => L10n::t('Contacts not in any group'),
+ 'name' => DI::l10n()->t('Contacts not in any group'),
];
$members = [];
@@ -185,7 +185,7 @@ class Group extends BaseModule
$context = $context + [
'$title' => $group['name'],
- '$gname' => ['groupname', L10n::t('Group Name: '), $group['name'], ''],
+ '$gname' => ['groupname', DI::l10n()->t('Group Name: '), $group['name'], ''],
'$gid' => $id,
'$editable' => 0,
];
@@ -198,14 +198,14 @@ class Group extends BaseModule
// @TODO: Replace with parameter from router
if (intval($a->argv[2])) {
if (!Model\Group::exists($a->argv[2], local_user())) {
- notice(L10n::t('Group not found.'));
+ notice(DI::l10n()->t('Group not found.'));
DI::baseUrl()->redirect('contact');
}
if (Model\Group::remove($a->argv[2])) {
- info(L10n::t('Group removed.'));
+ info(DI::l10n()->t('Group removed.'));
} else {
- notice(L10n::t('Unable to remove group.'));
+ notice(DI::l10n()->t('Unable to remove group.'));
}
}
DI::baseUrl()->redirect('group');
@@ -224,7 +224,7 @@ class Group extends BaseModule
if (($a->argc > 1) && intval($a->argv[1])) {
$group = DBA::selectFirst('group', ['id', 'name'], ['id' => $a->argv[1], 'uid' => local_user(), 'deleted' => false]);
if (!DBA::isResult($group)) {
- notice(L10n::t('Group not found.'));
+ notice(DI::l10n()->t('Group not found.'));
DI::baseUrl()->redirect('contact');
}
@@ -256,17 +256,17 @@ class Group extends BaseModule
$drop_tpl = Renderer::getMarkupTemplate('group_drop.tpl');
$drop_txt = Renderer::replaceMacros($drop_tpl, [
'$id' => $group['id'],
- '$delete' => L10n::t('Delete Group'),
+ '$delete' => DI::l10n()->t('Delete Group'),
'$form_security_token' => BaseModule::getFormSecurityToken("group_drop"),
]);
$context = $context + [
'$title' => $group['name'],
- '$gname' => ['groupname', L10n::t('Group Name: '), $group['name'], ''],
+ '$gname' => ['groupname', DI::l10n()->t('Group Name: '), $group['name'], ''],
'$gid' => $group['id'],
'$drop' => $drop_txt,
'$form_security_token' => BaseModule::getFormSecurityToken('group_edit'),
- '$edit_name' => L10n::t('Edit Group Name'),
+ '$edit_name' => DI::l10n()->t('Edit Group Name'),
'$editable' => 1,
];
}
@@ -276,10 +276,10 @@ class Group extends BaseModule
}
$groupeditor = [
- 'label_members' => L10n::t('Members'),
+ 'label_members' => DI::l10n()->t('Members'),
'members' => [],
- 'label_contacts' => L10n::t('All Contacts'),
- 'group_is_empty' => L10n::t('Group is empty'),
+ 'label_contacts' => DI::l10n()->t('All Contacts'),
+ 'group_is_empty' => DI::l10n()->t('Group is empty'),
'contacts' => [],
];
@@ -292,7 +292,7 @@ class Group extends BaseModule
$entry['label'] = 'members';
$entry['photo_menu'] = '';
$entry['change_member'] = [
- 'title' => L10n::t("Remove contact from group"),
+ 'title' => DI::l10n()->t("Remove contact from group"),
'gid' => $group['id'],
'cid' => $member['id'],
'sec_token' => $sec_token
@@ -312,7 +312,7 @@ class Group extends BaseModule
['order' => ['name']]
);
$contacts = DBA::toArray($contacts_stmt);
- $context['$desc'] = L10n::t('Click on a contact to add or remove.');
+ $context['$desc'] = DI::l10n()->t('Click on a contact to add or remove.');
}
if (DBA::isResult($contacts)) {
@@ -326,7 +326,7 @@ class Group extends BaseModule
if (!$nogroup) {
$entry['change_member'] = [
- 'title' => L10n::t("Add contact to group"),
+ 'title' => DI::l10n()->t("Add contact to group"),
'gid' => $group['id'],
'cid' => $member['id'],
'sec_token' => $sec_token
diff --git a/src/Module/HTTPException/MethodNotAllowed.php b/src/Module/HTTPException/MethodNotAllowed.php
index b4f9e9766..f75bdd8ca 100644
--- a/src/Module/HTTPException/MethodNotAllowed.php
+++ b/src/Module/HTTPException/MethodNotAllowed.php
@@ -10,6 +10,6 @@ class MethodNotAllowed extends BaseModule
{
public static function content(array $parameters = [])
{
- throw new HTTPException\MethodNotAllowedException(L10n::t('Method Not Allowed.'));
+ throw new HTTPException\MethodNotAllowedException(DI::l10n()->t('Method Not Allowed.'));
}
}
diff --git a/src/Module/HTTPException/PageNotFound.php b/src/Module/HTTPException/PageNotFound.php
index c79d9c277..6c2395b0e 100644
--- a/src/Module/HTTPException/PageNotFound.php
+++ b/src/Module/HTTPException/PageNotFound.php
@@ -10,6 +10,6 @@ class PageNotFound extends BaseModule
{
public static function content(array $parameters = [])
{
- throw new HTTPException\NotFoundException(L10n::t('Page not found.'));
+ throw new HTTPException\NotFoundException(DI::l10n()->t('Page not found.'));
}
}
diff --git a/src/Module/Help.php b/src/Module/Help.php
index b18500a10..061ab2a43 100644
--- a/src/Module/Help.php
+++ b/src/Module/Help.php
@@ -41,14 +41,14 @@ class Help extends BaseModule
$title = basename($path);
$filename = $path;
$text = self::loadDocFile('doc/' . $path . '.md', $lang);
- DI::page()['title'] = L10n::t('Help:') . ' ' . str_replace('-', ' ', Strings::escapeTags($title));
+ DI::page()['title'] = DI::l10n()->t('Help:') . ' ' . str_replace('-', ' ', Strings::escapeTags($title));
}
$home = self::loadDocFile('doc/Home.md', $lang);
if (!$text) {
$text = $home;
$filename = "Home";
- DI::page()['title'] = L10n::t('Help');
+ DI::page()['title'] = DI::l10n()->t('Help');
} else {
DI::page()['aside'] = Markdown::convert($home, false);
}
diff --git a/src/Module/Home.php b/src/Module/Home.php
index 77eec34c4..6ce025208 100644
--- a/src/Module/Home.php
+++ b/src/Module/Home.php
@@ -33,7 +33,7 @@ class Home extends BaseModule
}
$customHome = '';
- $defaultHeader = ($config->get('config', 'sitename') ? L10n::t('Welcome to %s', $config->get('config', 'sitename')) : '');
+ $defaultHeader = ($config->get('config', 'sitename') ? DI::l10n()->t('Welcome to %s', $config->get('config', 'sitename')) : '');
$homeFilePath = $app->getBasePath() . '/home.html';
$cssFilePath = $app->getBasePath() . '/home.css';
diff --git a/src/Module/Install.php b/src/Module/Install.php
index 537338da1..4b0809e1f 100644
--- a/src/Module/Install.php
+++ b/src/Module/Install.php
@@ -156,7 +156,7 @@ class Install extends BaseModule
$output = '';
- $install_title = L10n::t('Friendica Communications Server - Setup');
+ $install_title = DI::l10n()->t('Friendica Communications Server - Setup');
switch (self::$currentWizardStep) {
case self::SYSTEM_CHECK:
@@ -167,49 +167,49 @@ class Install extends BaseModule
$tpl = Renderer::getMarkupTemplate('install_checks.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
- '$pass' => L10n::t('System check'),
+ '$pass' => DI::l10n()->t('System check'),
'$checks' => self::$installer->getChecks(),
'$passed' => $status,
- '$see_install' => L10n::t('Please see the file "INSTALL.txt".'),
- '$next' => L10n::t('Next'),
- '$reload' => L10n::t('Check again'),
+ '$see_install' => DI::l10n()->t('Please see the file "INSTALL.txt".'),
+ '$next' => DI::l10n()->t('Next'),
+ '$reload' => DI::l10n()->t('Check again'),
'$php_path' => $php_path,
]);
break;
case self::BASE_CONFIG:
$ssl_choices = [
- App\BaseURL::SSL_POLICY_NONE => L10n::t("No SSL policy, links will track page SSL state"),
- App\BaseURL::SSL_POLICY_FULL => L10n::t("Force all links to use SSL"),
- App\BaseURL::SSL_POLICY_SELFSIGN => L10n::t("Self-signed certificate, use SSL for local links only \x28discouraged\x29")
+ App\BaseURL::SSL_POLICY_NONE => DI::l10n()->t("No SSL policy, links will track page SSL state"),
+ App\BaseURL::SSL_POLICY_FULL => DI::l10n()->t("Force all links to use SSL"),
+ App\BaseURL::SSL_POLICY_SELFSIGN => DI::l10n()->t("Self-signed certificate, use SSL for local links only \x28discouraged\x29")
];
$tpl = Renderer::getMarkupTemplate('install_base.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
- '$pass' => L10n::t('Base settings'),
+ '$pass' => DI::l10n()->t('Base settings'),
'$ssl_policy' => ['system-ssl_policy',
- L10n::t("SSL link policy"),
+ DI::l10n()->t("SSL link policy"),
$configCache->get('system', 'ssl_policy'),
- L10n::t("Determines whether generated links should be forced to use SSL"),
+ DI::l10n()->t("Determines whether generated links should be forced to use SSL"),
$ssl_choices],
'$hostname' => ['config-hostname',
- L10n::t('Host name'),
+ DI::l10n()->t('Host name'),
$configCache->get('config', 'hostname'),
- L10n::t('Overwrite this field in case the determinated hostname isn\'t right, otherweise leave it as is.'),
+ DI::l10n()->t('Overwrite this field in case the determinated hostname isn\'t right, otherweise leave it as is.'),
'required'],
'$basepath' => ['system-basepath',
- L10n::t("Base path to installation"),
+ DI::l10n()->t("Base path to installation"),
$configCache->get('system', 'basepath'),
- L10n::t("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."),
+ DI::l10n()->t("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."),
'required'],
'$urlpath' => ['system-urlpath',
- L10n::t('Sub path of the URL'),
+ DI::l10n()->t('Sub path of the URL'),
$configCache->get('system', 'urlpath'),
- L10n::t('Overwrite this field in case the sub path determination isn\'t right, otherwise leave it as is. Leaving this field blank means the installation is at the base URL without sub path.'),
+ DI::l10n()->t('Overwrite this field in case the sub path determination isn\'t right, otherwise leave it as is. Leaving this field blank means the installation is at the base URL without sub path.'),
''],
'$php_path' => $configCache->get('config', 'php_path'),
- '$submit' => L10n::t('Submit'),
+ '$submit' => DI::l10n()->t('Submit'),
]);
break;
@@ -217,39 +217,39 @@ class Install extends BaseModule
$tpl = Renderer::getMarkupTemplate('install_db.tpl');
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
- '$pass' => L10n::t('Database connection'),
- '$info_01' => L10n::t('In order to install Friendica we need to know how to connect to your database.'),
- '$info_02' => L10n::t('Please contact your hosting provider or site administrator if you have questions about these settings.'),
- '$info_03' => L10n::t('The database you specify below should already exist. If it does not, please create it before continuing.'),
+ '$pass' => DI::l10n()->t('Database connection'),
+ '$info_01' => DI::l10n()->t('In order to install Friendica we need to know how to connect to your database.'),
+ '$info_02' => DI::l10n()->t('Please contact your hosting provider or site administrator if you have questions about these settings.'),
+ '$info_03' => DI::l10n()->t('The database you specify below should already exist. If it does not, please create it before continuing.'),
'checks' => self::$installer->getChecks(),
'$hostname' => $configCache->get('config', 'hostname'),
'$ssl_policy' => $configCache->get('system', 'ssl_policy'),
'$basepath' => $configCache->get('system', 'basepath'),
'$urlpath' => $configCache->get('system', 'urlpath'),
'$dbhost' => ['database-hostname',
- L10n::t('Database Server Name'),
+ DI::l10n()->t('Database Server Name'),
$configCache->get('database', 'hostname'),
'',
'required'],
'$dbuser' => ['database-username',
- L10n::t('Database Login Name'),
+ DI::l10n()->t('Database Login Name'),
$configCache->get('database', 'username'),
'',
'required',
'autofocus'],
'$dbpass' => ['database-password',
- L10n::t('Database Login Password'),
+ DI::l10n()->t('Database Login Password'),
$configCache->get('database', 'password'),
- L10n::t("For security reasons the password must not be empty"),
+ DI::l10n()->t("For security reasons the password must not be empty"),
'required'],
'$dbdata' => ['database-database',
- L10n::t('Database Name'),
+ DI::l10n()->t('Database Name'),
$configCache->get('database', 'database'),
'',
'required'],
- '$lbl_10' => L10n::t('Please select a default timezone for your website'),
+ '$lbl_10' => DI::l10n()->t('Please select a default timezone for your website'),
'$php_path' => $configCache->get('config', 'php_path'),
- '$submit' => L10n::t('Submit')
+ '$submit' => DI::l10n()->t('Submit')
]);
break;
@@ -261,7 +261,7 @@ class Install extends BaseModule
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
'$checks' => self::$installer->getChecks(),
- '$pass' => L10n::t('Site settings'),
+ '$pass' => DI::l10n()->t('Site settings'),
'$hostname' => $configCache->get('config', 'hostname'),
'$ssl_policy' => $configCache->get('system', 'ssl_policy'),
'$basepath' => $configCache->get('system', 'basepath'),
@@ -271,21 +271,21 @@ class Install extends BaseModule
'$dbpass' => $configCache->get('database', 'password'),
'$dbdata' => $configCache->get('database', 'database'),
'$adminmail' => ['config-admin_email',
- L10n::t('Site administrator email address'),
+ DI::l10n()->t('Site administrator email address'),
$configCache->get('config', 'admin_email'),
- L10n::t('Your account email address must match this in order to use the web admin panel.'),
+ DI::l10n()->t('Your account email address must match this in order to use the web admin panel.'),
'required', 'autofocus', 'email'],
'$timezone' => Temporal::getTimezoneField('system-default_timezone',
- L10n::t('Please select a default timezone for your website'),
+ DI::l10n()->t('Please select a default timezone for your website'),
$configCache->get('system', 'default_timezone'),
''),
'$language' => ['system-language',
- L10n::t('System Language:'),
+ DI::l10n()->t('System Language:'),
$configCache->get('system', 'language'),
- L10n::t('Set the default language for your Friendica installation interface and to send emails.'),
+ DI::l10n()->t('Set the default language for your Friendica installation interface and to send emails.'),
$lang_choices],
'$php_path' => $configCache->get('config', 'php_path'),
- '$submit' => L10n::t('Submit')
+ '$submit' => DI::l10n()->t('Submit')
]);
break;
@@ -294,7 +294,7 @@ class Install extends BaseModule
if (count(self::$installer->getChecks()) == 0) {
$txt = '';
- $txt .= L10n::t('Your Friendica site database has been installed.') . EOL;
+ $txt .= DI::l10n()->t('Your Friendica site database has been installed.') . EOL;
$db_return_text .= $txt;
}
@@ -302,7 +302,7 @@ class Install extends BaseModule
$output .= Renderer::replaceMacros($tpl, [
'$title' => $install_title,
'$checks' => self::$installer->getChecks(),
- '$pass' => L10n::t('Installation finished'),
+ '$pass' => DI::l10n()->t('Installation finished'),
'$text' => $db_return_text . self::whatNext(),
]);
@@ -322,11 +322,11 @@ class Install extends BaseModule
{
$baseurl = DI::baseUrl()->get();
return
- L10n::t('
What next ')
- . "" . L10n::t('IMPORTANT: You will need to [manually] setup a scheduled task for the worker.')
- . L10n::t('Please see the file "INSTALL.txt".')
+ DI::l10n()->t('
What next ')
+ . "" . DI::l10n()->t('IMPORTANT: You will need to [manually] setup a scheduled task for the worker.')
+ . DI::l10n()->t('Please see the file "INSTALL.txt".')
. "
"
- . L10n::t('Go to your new Friendica node registration page 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.', $baseurl)
+ . DI::l10n()->t('Go to your new Friendica node registration page 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.', $baseurl)
. "
";
}
diff --git a/src/Module/Invite.php b/src/Module/Invite.php
index b06efc5a2..cdc5ac637 100644
--- a/src/Module/Invite.php
+++ b/src/Module/Invite.php
@@ -19,7 +19,7 @@ class Invite extends BaseModule
public static function post(array $parameters = [])
{
if (!local_user()) {
- throw new HTTPException\ForbiddenException(L10n::t('Permission denied.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.'));
}
self::checkFormSecurityTokenRedirectOnError('/', 'send_invite');
@@ -34,7 +34,7 @@ class Invite extends BaseModule
$current_invites = intval(DI::pConfig()->get(local_user(), 'system', 'sent_invites'));
if ($current_invites > $max_invites) {
- throw new HTTPException\ForbiddenException(L10n::t('Total invitation limit exceeded.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Total invitation limit exceeded.'));
}
@@ -57,7 +57,7 @@ class Invite extends BaseModule
$recipient = trim($recipient);
if (!filter_var($recipient, FILTER_VALIDATE_EMAIL)) {
- notice(L10n::t('%s : Not a valid email address.', $recipient) . EOL);
+ notice(DI::l10n()->t('%s : Not a valid email address.', $recipient) . EOL);
continue;
}
@@ -84,7 +84,7 @@ class Invite extends BaseModule
$res = mail(
$recipient,
- Email::encodeHeader(L10n::t('Please join us on Friendica'), 'UTF-8'),
+ Email::encodeHeader(DI::l10n()->t('Please join us on Friendica'), 'UTF-8'),
$nmessage,
$additional_headers);
@@ -93,11 +93,11 @@ class Invite extends BaseModule
$current_invites++;
DI::pConfig()->set(local_user(), 'system', 'sent_invites', $current_invites);
if ($current_invites > $max_invites) {
- notice(L10n::t('Invitation limit exceeded. Please contact your site administrator.') . EOL);
+ notice(DI::l10n()->t('Invitation limit exceeded. Please contact your site administrator.') . EOL);
return;
}
} else {
- notice(L10n::t('%s : Message delivery failed.', $recipient) . EOL);
+ notice(DI::l10n()->t('%s : Message delivery failed.', $recipient) . EOL);
}
}
@@ -107,7 +107,7 @@ class Invite extends BaseModule
public static function content(array $parameters = [])
{
if (!local_user()) {
- throw new HTTPException\ForbiddenException(L10n::t('Permission denied.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.'));
}
$app = DI::app();
@@ -119,42 +119,42 @@ class Invite extends BaseModule
$inviteOnly = true;
$x = DI::pConfig()->get(local_user(), 'system', 'invites_remaining');
if ((!$x) && (!is_site_admin())) {
- throw new HTTPException\ForbiddenException(L10n::t('You have no more invitations available'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('You have no more invitations available'));
}
}
$dirLocation = $config->get('system', 'directory');
if (strlen($dirLocation)) {
if ($config->get('config', 'register_policy') === Register::CLOSED) {
- $linkTxt = L10n::t('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.', $dirLocation . '/servers');
+ $linkTxt = DI::l10n()->t('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.', $dirLocation . '/servers');
} else {
- $linkTxt = L10n::t('To accept this invitation, please visit and register at %s or any other public Friendica website.', DI::baseUrl()->get())
- . "\r\n" . "\r\n" . L10n::t('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.', $dirLocation . '/servers');
+ $linkTxt = DI::l10n()->t('To accept this invitation, please visit and register at %s or any other public Friendica website.', DI::baseUrl()->get())
+ . "\r\n" . "\r\n" . DI::l10n()->t('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.', $dirLocation . '/servers');
}
} else { // there is no global directory URL defined
if ($config->get('config', 'register_policy') === Register::CLOSED) {
- return L10n::t('Our apologies. This system is not currently configured to connect with other public sites or invite members.');
+ return DI::l10n()->t('Our apologies. This system is not currently configured to connect with other public sites or invite members.');
} else {
- $linkTxt = L10n::t('To accept this invitation, please visit and register at %s.', DI::baseUrl()->get()
- . "\r\n" . "\r\n" . L10n::t('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.'));
+ $linkTxt = DI::l10n()->t('To accept this invitation, please visit and register at %s.', DI::baseUrl()->get()
+ . "\r\n" . "\r\n" . DI::l10n()->t('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.'));
}
}
$tpl = Renderer::getMarkupTemplate('invite.tpl');
return Renderer::replaceMacros($tpl, [
'$form_security_token' => self::getFormSecurityToken('send_invite'),
- '$title' => L10n::t('Send invitations'),
- '$recipients' => ['recipients', L10n::t('Enter email addresses, one per line:')],
+ '$title' => DI::l10n()->t('Send invitations'),
+ '$recipients' => ['recipients', DI::l10n()->t('Enter email addresses, one per line:')],
'$message' => [
'message',
- L10n::t('Your message:'),
- L10n::t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n"
+ DI::l10n()->t('Your message:'),
+ DI::l10n()->t('You are cordially invited to join me and other close friends on Friendica - and help us to create a better social web.') . "\r\n" . "\r\n"
. $linkTxt
- . "\r\n" . "\r\n" . (($inviteOnly) ? L10n::t('You will need to supply this invitation code: $invite_code') . "\r\n" . "\r\n" : '') . L10n::t('Once you have registered, please connect with me via my profile page at:')
+ . "\r\n" . "\r\n" . (($inviteOnly) ? DI::l10n()->t('You will need to supply this invitation code: $invite_code') . "\r\n" . "\r\n" : '') . DI::l10n()->t('Once you have registered, please connect with me via my profile page at:')
. "\r\n" . "\r\n" . DI::baseUrl()->get() . '/profile/' . $app->user['nickname']
- . "\r\n" . "\r\n" . L10n::t('For more information about the Friendica project and why we feel it is important, please visit http://friendi.ca') . "\r\n" . "\r\n",
+ . "\r\n" . "\r\n" . DI::l10n()->t('For more information about the Friendica project and why we feel it is important, please visit http://friendi.ca') . "\r\n" . "\r\n",
],
- '$submit' => L10n::t('Submit')
+ '$submit' => DI::l10n()->t('Submit')
]);
}
}
diff --git a/src/Module/Item/Compose.php b/src/Module/Item/Compose.php
index d30b0d86f..c033f097d 100644
--- a/src/Module/Item/Compose.php
+++ b/src/Module/Item/Compose.php
@@ -25,7 +25,7 @@ class Compose extends BaseModule
require_once 'mod/item.php';
item_post(DI::app());
} else {
- notice(L10n::t('Please enter a post body.'));
+ notice(DI::l10n()->t('Please enter a post body.'));
}
}
@@ -38,7 +38,7 @@ class Compose extends BaseModule
$a = DI::app();
if ($a->getCurrentTheme() !== 'frio') {
- throw new NotImplementedException(L10n::t('This feature is only available with the frio theme.'));
+ throw new NotImplementedException(DI::l10n()->t('This feature is only available with the frio theme.'));
}
/// @TODO Retrieve parameter from router
@@ -65,7 +65,7 @@ class Compose extends BaseModule
switch ($posttype) {
case Item::PT_PERSONAL_NOTE:
- $compose_title = L10n::t('Compose new personal note');
+ $compose_title = DI::l10n()->t('Compose new personal note');
$type = 'note';
$doesFederate = false;
$contact_allow_list = [$a->contact['id']];
@@ -74,7 +74,7 @@ class Compose extends BaseModule
$group_deny_list = [];
break;
default:
- $compose_title = L10n::t('Compose new post');
+ $compose_title = DI::l10n()->t('Compose new post');
$type = 'post';
$doesFederate = true;
@@ -114,33 +114,33 @@ class Compose extends BaseModule
$tpl = Renderer::getMarkupTemplate('item/compose.tpl');
return Renderer::replaceMacros($tpl, [
'$compose_title'=> $compose_title,
- '$visibility_title'=> L10n::t('Visibility'),
+ '$visibility_title'=> DI::l10n()->t('Visibility'),
'$id' => 0,
'$posttype' => $posttype,
'$type' => $type,
'$wall' => $wall,
'$default' => '',
'$mylink' => DI::baseUrl()->remove($a->contact['url']),
- '$mytitle' => L10n::t('This is you'),
+ '$mytitle' => DI::l10n()->t('This is you'),
'$myphoto' => DI::baseUrl()->remove($a->contact['thumb']),
- '$submit' => L10n::t('Submit'),
- '$edbold' => L10n::t('Bold'),
- '$editalic' => L10n::t('Italic'),
- '$eduline' => L10n::t('Underline'),
- '$edquote' => L10n::t('Quote'),
- '$edcode' => L10n::t('Code'),
- '$edimg' => L10n::t('Image'),
- '$edurl' => L10n::t('Link'),
- '$edattach' => L10n::t('Link or Media'),
- '$prompttext' => L10n::t('Please enter a image/video/audio/webpage URL:'),
- '$preview' => L10n::t('Preview'),
- '$location_set' => L10n::t('Set your location'),
- '$location_clear' => L10n::t('Clear the location'),
- '$location_unavailable' => L10n::t('Location services are unavailable on your device'),
- '$location_disabled' => L10n::t('Location services are disabled. Please check the website\'s permissions on your device'),
- '$wait' => L10n::t('Please wait'),
- '$placeholdertitle' => L10n::t('Set title'),
- '$placeholdercategory' => (Feature::isEnabled(local_user(),'categories') ? L10n::t('Categories (comma-separated list)') : ''),
+ '$submit' => DI::l10n()->t('Submit'),
+ '$edbold' => DI::l10n()->t('Bold'),
+ '$editalic' => DI::l10n()->t('Italic'),
+ '$eduline' => DI::l10n()->t('Underline'),
+ '$edquote' => DI::l10n()->t('Quote'),
+ '$edcode' => DI::l10n()->t('Code'),
+ '$edimg' => DI::l10n()->t('Image'),
+ '$edurl' => DI::l10n()->t('Link'),
+ '$edattach' => DI::l10n()->t('Link or Media'),
+ '$prompttext' => DI::l10n()->t('Please enter a image/video/audio/webpage URL:'),
+ '$preview' => DI::l10n()->t('Preview'),
+ '$location_set' => DI::l10n()->t('Set your location'),
+ '$location_clear' => DI::l10n()->t('Clear the location'),
+ '$location_unavailable' => DI::l10n()->t('Location services are unavailable on your device'),
+ '$location_disabled' => DI::l10n()->t('Location services are disabled. Please check the website\'s permissions on your device'),
+ '$wait' => DI::l10n()->t('Please wait'),
+ '$placeholdertitle' => DI::l10n()->t('Set title'),
+ '$placeholdercategory' => (Feature::isEnabled(local_user(),'categories') ? DI::l10n()->t('Categories (comma-separated list)') : ''),
'$title' => $title,
'$category' => $category,
@@ -153,7 +153,7 @@ class Compose extends BaseModule
'$group_deny' => implode(',', $group_deny_list),
'$jotplugins' => $jotplugins,
- '$sourceapp' => L10n::t($a->sourcename),
+ '$sourceapp' => DI::l10n()->t($a->sourcename),
'$rand_num' => Crypto::randomDigits(12),
'$acl_selector' => ACL::getFullSelectorHTML(DI::page(), $a->user, $doesFederate, [
'allow_cid' => $contact_allow_list,
diff --git a/src/Module/Maintenance.php b/src/Module/Maintenance.php
index bee9ab53f..09cdb02da 100644
--- a/src/Module/Maintenance.php
+++ b/src/Module/Maintenance.php
@@ -25,7 +25,7 @@ class Maintenance extends BaseModule
}
$exception = new HTTPException\ServiceUnavailableException($reason);
- $exception->httpdesc = L10n::t('System down for maintenance');
+ $exception->httpdesc = DI::l10n()->t('System down for maintenance');
throw $exception;
}
}
diff --git a/src/Module/Notifications/Notify.php b/src/Module/Notifications/Notify.php
index bb52ce812..7aeb1c226 100644
--- a/src/Module/Notifications/Notify.php
+++ b/src/Module/Notifications/Notify.php
@@ -16,7 +16,7 @@ class Notify extends BaseModule
public static function init(array $parameters = [])
{
if (!local_user()) {
- throw new HTTPException\UnauthorizedException(L10n::t('Permission denied.'));
+ throw new HTTPException\UnauthorizedException(DI::l10n()->t('Permission denied.'));
}
}
diff --git a/src/Module/Photo.php b/src/Module/Photo.php
index 47ab051ad..cc341bad2 100644
--- a/src/Module/Photo.php
+++ b/src/Module/Photo.php
@@ -85,7 +85,7 @@ class Photo extends BaseModule
if (is_null($img) || !$img->isValid()) {
Logger::log("Invalid photo with id {$photo["id"]}.");
- throw new \Friendica\Network\HTTPException\InternalServerErrorException(L10n::t('Invalid photo with id %s.', $photo["id"]));
+ throw new \Friendica\Network\HTTPException\InternalServerErrorException(DI::l10n()->t('Invalid photo with id %s.', $photo["id"]));
}
// if customsize is set and image is not a gif, resize it
diff --git a/src/Module/Profile.php b/src/Module/Profile.php
index 3dc35cb2d..77033741c 100644
--- a/src/Module/Profile.php
+++ b/src/Module/Profile.php
@@ -114,10 +114,10 @@ class Profile extends BaseModule
$page['htmlhead'] .= ' ' . "\n";
}
- $page['htmlhead'] .= ' ' . "\n";
- $page['htmlhead'] .= ' ' . "\n";
- $page['htmlhead'] .= ' ' . "\n";
- $page['htmlhead'] .= ' ' . "\n";
+ $page['htmlhead'] .= ' ' . "\n";
+ $page['htmlhead'] .= ' ' . "\n";
+ $page['htmlhead'] .= ' ' . "\n";
+ $page['htmlhead'] .= ' ' . "\n";
$uri = urlencode('acct:' . $a->profile['nickname'] . '@' . DI::baseUrl()->getHostname() . (DI::baseUrl()->getUrlPath() ? '/' . DI::baseUrl()->getUrlPath() : ''));
$page['htmlhead'] .= ' ' . "\n";
header('Link: <' . DI::baseUrl() . '/xrd/?uri=' . $uri . '>; rel="lrdd"; type="application/xrd+xml"', false);
@@ -169,7 +169,7 @@ class Profile extends BaseModule
$last_updated_key = "profile:" . $a->profile['profile_uid'] . ":" . local_user() . ":" . $remote_contact;
if (!empty($a->profile['hidewall']) && !$is_owner && !$remote_contact) {
- notice(L10n::t('Access to this profile has been restricted.') . EOL);
+ notice(DI::l10n()->t('Access to this profile has been restricted.') . EOL);
return '';
}
diff --git a/src/Module/Profile/Contacts.php b/src/Module/Profile/Contacts.php
index f848945bc..afde70e34 100644
--- a/src/Module/Profile/Contacts.php
+++ b/src/Module/Profile/Contacts.php
@@ -22,7 +22,7 @@ class Contacts extends BaseModule
public static function content(array $parameters = [])
{
if (Config::get('system', 'block_public') && !Session::isAuthenticated()) {
- throw new \Friendica\Network\HTTPException\NotFoundException(L10n::t('User not found.'));
+ throw new \Friendica\Network\HTTPException\NotFoundException(DI::l10n()->t('User not found.'));
}
$a = DI::app();
@@ -35,7 +35,7 @@ class Contacts extends BaseModule
$user = DBA::selectFirst('user', [], ['nickname' => $nickname, 'blocked' => false]);
if (!DBA::isResult($user)) {
- throw new \Friendica\Network\HTTPException\NotFoundException(L10n::t('User not found.'));
+ throw new \Friendica\Network\HTTPException\NotFoundException(DI::l10n()->t('User not found.'));
}
$a->profile_uid = $user['uid'];
@@ -48,7 +48,7 @@ class Contacts extends BaseModule
$o = Profile::getTabs($a, 'contacts', $is_owner, $nickname);
if (!count($a->profile) || $a->profile['hide-friends']) {
- notice(L10n::t('Permission denied.') . EOL);
+ notice(DI::l10n()->t('Permission denied.') . EOL);
return $o;
}
@@ -76,7 +76,7 @@ class Contacts extends BaseModule
$contacts_stmt = DBA::select('contact', [], $condition, $params);
if (!DBA::isResult($contacts_stmt)) {
- info(L10n::t('No contacts.') . EOL);
+ info(DI::l10n()->t('No contacts.') . EOL);
return $o;
}
@@ -91,7 +91,7 @@ class Contacts extends BaseModule
$contacts[] = [
'id' => $contact['id'],
- 'img_hover' => L10n::t('Visit %s\'s profile [%s]', $contact_details['name'], $contact['url']),
+ 'img_hover' => DI::l10n()->t('Visit %s\'s profile [%s]', $contact_details['name'], $contact['url']),
'photo_menu' => Contact::photoMenu($contact),
'thumb' => ProxyUtils::proxifyUrl($contact_details['thumb'], false, ProxyUtils::SIZE_THUMB),
'name' => substr($contact_details['name'], 0, 20),
@@ -123,10 +123,10 @@ class Contacts extends BaseModule
'$nickname' => $nickname,
'$type' => $type,
- '$all_label' => L10n::t('All contacts'),
- '$followers_label' => L10n::t('Followers'),
- '$following_label' => L10n::t('Following'),
- '$mutuals_label' => L10n::t('Mutual friends'),
+ '$all_label' => DI::l10n()->t('All contacts'),
+ '$followers_label' => DI::l10n()->t('Followers'),
+ '$following_label' => DI::l10n()->t('Following'),
+ '$mutuals_label' => DI::l10n()->t('Mutual friends'),
'$contacts' => $contacts,
'$paginate' => $pager->renderFull($total),
diff --git a/src/Module/Register.php b/src/Module/Register.php
index 215def13e..dfe0a534f 100644
--- a/src/Module/Register.php
+++ b/src/Module/Register.php
@@ -42,20 +42,20 @@ class Register extends BaseModule
$block = Config::get('system', 'block_extended_register');
if (local_user() && $block) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
return '';
}
if (local_user()) {
$user = DBA::selectFirst('user', ['parent-uid'], ['uid' => local_user()]);
if (!empty($user['parent-uid'])) {
- notice(L10n::t('Only parent users can create additional accounts.'));
+ notice(DI::l10n()->t('Only parent users can create additional accounts.'));
return '';
}
}
if (!local_user() && (intval(Config::get('config', 'register_policy')) === self::CLOSED)) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
return '';
}
@@ -64,7 +64,7 @@ class Register extends BaseModule
$count = DBA::count('user', ['`register_date` > UTC_TIMESTAMP - INTERVAL 1 day']);
if ($count >= $max_dailies) {
Logger::log('max daily registrations exceeded.');
- notice(L10n::t('This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.'));
+ notice(DI::l10n()->t('This site has exceeded the number of allowed daily account registrations. Please try again tomorrow.'));
return '';
}
}
@@ -81,9 +81,9 @@ class Register extends BaseModule
$fillext = '';
$oidlabel = '';
} else {
- $fillwith = L10n::t('You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking "Register".');
- $fillext = L10n::t('If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items.');
- $oidlabel = L10n::t('Your OpenID (optional): ');
+ $fillwith = DI::l10n()->t('You may (optionally) fill in this form via OpenID by supplying your OpenID and clicking "Register".');
+ $fillext = DI::l10n()->t('If you are not familiar with OpenID, please leave that field blank and fill in the rest of the items.');
+ $oidlabel = DI::l10n()->t('Your OpenID (optional): ');
}
if (Config::get('system', 'publish_all')) {
@@ -92,11 +92,11 @@ class Register extends BaseModule
$publish_tpl = Renderer::getMarkupTemplate('profile_publish.tpl');
$profile_publish = Renderer::replaceMacros($publish_tpl, [
'$instance' => 'reg',
- '$pubdesc' => L10n::t('Include your profile in member directory?'),
+ '$pubdesc' => DI::l10n()->t('Include your profile in member directory?'),
'$yes_selected' => '',
'$no_selected' => ' checked="checked"',
- '$str_yes' => L10n::t('Yes'),
- '$str_no' => L10n::t('No'),
+ '$str_yes' => DI::l10n()->t('Yes'),
+ '$str_no' => DI::l10n()->t('No'),
]);
}
@@ -115,42 +115,42 @@ class Register extends BaseModule
$o = Renderer::replaceMacros($tpl, [
'$invitations' => Config::get('system', 'invitation_only'),
'$permonly' => intval(Config::get('config', 'register_policy')) === self::APPROVE,
- '$permonlybox' => ['permonlybox', L10n::t('Note for the admin'), '', L10n::t('Leave a message for the admin, why you want to join this node'), 'required'],
- '$invite_desc' => L10n::t('Membership on this site is by invitation only.'),
- '$invite_label' => L10n::t('Your invitation code: '),
+ '$permonlybox' => ['permonlybox', DI::l10n()->t('Note for the admin'), '', DI::l10n()->t('Leave a message for the admin, why you want to join this node'), 'required'],
+ '$invite_desc' => DI::l10n()->t('Membership on this site is by invitation only.'),
+ '$invite_label' => DI::l10n()->t('Your invitation code: '),
'$invite_id' => $invite_id,
- '$regtitle' => L10n::t('Registration'),
+ '$regtitle' => DI::l10n()->t('Registration'),
'$registertext' => BBCode::convert(Config::get('config', 'register_text', '')),
'$fillwith' => $fillwith,
'$fillext' => $fillext,
'$oidlabel' => $oidlabel,
'$openid' => $openid_url,
- '$namelabel' => L10n::t('Your Full Name (e.g. Joe Smith, real or real-looking): '),
- '$addrlabel' => L10n::t('Your Email Address: (Initial information will be send there, so this has to be an existing address.)'),
- '$addrlabel2' => L10n::t('Please repeat your e-mail address:'),
+ '$namelabel' => DI::l10n()->t('Your Full Name (e.g. Joe Smith, real or real-looking): '),
+ '$addrlabel' => DI::l10n()->t('Your Email Address: (Initial information will be send there, so this has to be an existing address.)'),
+ '$addrlabel2' => DI::l10n()->t('Please repeat your e-mail address:'),
'$ask_password' => $ask_password,
- '$password1' => ['password1', L10n::t('New Password:'), '', L10n::t('Leave empty for an auto generated password.')],
- '$password2' => ['confirm', L10n::t('Confirm:'), '', ''],
- '$nickdesc' => L10n::t('Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be "nickname@%s ".', DI::baseUrl()->getHostname()),
- '$nicklabel' => L10n::t('Choose a nickname: '),
+ '$password1' => ['password1', DI::l10n()->t('New Password:'), '', DI::l10n()->t('Leave empty for an auto generated password.')],
+ '$password2' => ['confirm', DI::l10n()->t('Confirm:'), '', ''],
+ '$nickdesc' => DI::l10n()->t('Choose a profile nickname. This must begin with a text character. Your profile address on this site will then be "nickname@%s ".', DI::baseUrl()->getHostname()),
+ '$nicklabel' => DI::l10n()->t('Choose a nickname: '),
'$photo' => $photo,
'$publish' => $profile_publish,
- '$regbutt' => L10n::t('Register'),
+ '$regbutt' => DI::l10n()->t('Register'),
'$username' => $username,
'$email' => $email,
'$nickname' => $nickname,
'$sitename' => DI::baseUrl()->getHostname(),
- '$importh' => L10n::t('Import'),
- '$importt' => L10n::t('Import your profile to this friendica instance'),
+ '$importh' => DI::l10n()->t('Import'),
+ '$importt' => DI::l10n()->t('Import your profile to this friendica instance'),
'$showtoslink' => Config::get('system', 'tosdisplay'),
- '$tostext' => L10n::t('Terms of Service'),
+ '$tostext' => DI::l10n()->t('Terms of Service'),
'$showprivstatement' => Config::get('system', 'tosprivstatement'),
'$privstatement'=> $tos->privacy_complete,
'$form_security_token' => BaseModule::getFormSecurityToken('register'),
'$explicit_content' => Config::get('system', 'explicit_content', false),
- '$explicit_content_note' => L10n::t('Note: This node explicitly contains adult content'),
+ '$explicit_content_note' => DI::l10n()->t('Note: This node explicitly contains adult content'),
'$additional' => !empty(local_user()),
- '$parent_password' => ['parent_password', L10n::t('Parent Password:'), '', L10n::t('Please enter the password of the parent account to legitimize your request.')]
+ '$parent_password' => ['parent_password', DI::l10n()->t('Parent Password:'), '', DI::l10n()->t('Please enter the password of the parent account to legitimize your request.')]
]);
@@ -175,19 +175,19 @@ class Register extends BaseModule
$additional_account = false;
if (!local_user() && !empty($arr['post']['parent_password'])) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
return;
} elseif (local_user() && !empty($arr['post']['parent_password'])) {
try {
Model\User::getIdFromPasswordAuthentication(local_user(), $arr['post']['parent_password']);
} catch (\Exception $ex) {
- notice(L10n::t("Password doesn't match."));
+ notice(DI::l10n()->t("Password doesn't match."));
$regdata = ['nickname' => $arr['post']['nickname'], 'username' => $arr['post']['username']];
DI::baseUrl()->redirect('register?' . http_build_query($regdata));
}
$additional_account = true;
} elseif (local_user()) {
- notice(L10n::t('Please enter your password.'));
+ notice(DI::l10n()->t('Please enter your password.'));
$regdata = ['nickname' => $arr['post']['nickname'], 'username' => $arr['post']['username']];
DI::baseUrl()->redirect('register?' . http_build_query($regdata));
}
@@ -214,7 +214,7 @@ class Register extends BaseModule
case self::CLOSED:
default:
if (empty($_SESSION['authenticated']) && empty($_SESSION['administrator'])) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
return;
}
$blocked = 1;
@@ -229,7 +229,7 @@ class Register extends BaseModule
// Is there text in the tar pit?
if (!empty($arr['email'])) {
Logger::info('Tar pit', $arr);
- notice(L10n::t('You have entered too much information.'));
+ notice(DI::l10n()->t('You have entered too much information.'));
DI::baseUrl()->redirect('register/');
}
@@ -240,7 +240,7 @@ class Register extends BaseModule
if ($additional_account) {
$user = DBA::selectFirst('user', ['email'], ['uid' => local_user()]);
if (!DBA::isResult($user)) {
- notice(L10n::t('User not found.'));
+ notice(DI::l10n()->t('User not found.'));
DI::baseUrl()->redirect('register');
}
@@ -253,7 +253,7 @@ class Register extends BaseModule
if ($arr['email'] != $arr['repeat']) {
Logger::info('Mail mismatch', $arr);
- notice(L10n::t('Please enter the identical mail address in the second field.'));
+ notice(DI::l10n()->t('Please enter the identical mail address in the second field.'));
$regdata = ['email' => $arr['email'], 'nickname' => $arr['nickname'], 'username' => $arr['username']];
DI::baseUrl()->redirect('register?' . http_build_query($regdata));
}
@@ -280,7 +280,7 @@ class Register extends BaseModule
if ($additional_account) {
DBA::update('user', ['parent-uid' => local_user()], ['uid' => $user['uid']]);
- info(L10n::t('The additional account was created.'));
+ info(DI::l10n()->t('The additional account was created.'));
DI::baseUrl()->redirect('delegation');
}
@@ -305,29 +305,29 @@ class Register extends BaseModule
);
if ($res) {
- info(L10n::t('Registration successful. Please check your email for further instructions.'));
+ info(DI::l10n()->t('Registration successful. Please check your email for further instructions.'));
DI::baseUrl()->redirect();
} else {
notice(
- L10n::t('Failed to send email message. Here your accout details: login: %s password: %s You can change your password after login.',
+ DI::l10n()->t('Failed to send email message. Here your accout details: login: %s password: %s You can change your password after login.',
$user['email'],
$result['password'])
);
}
} else {
- info(L10n::t('Registration successful.'));
+ info(DI::l10n()->t('Registration successful.'));
DI::baseUrl()->redirect();
}
} elseif (intval(Config::get('config', 'register_policy')) === self::APPROVE) {
if (!strlen(Config::get('config', 'admin_email'))) {
- notice(L10n::t('Your registration can not be processed.'));
+ notice(DI::l10n()->t('Your registration can not be processed.'));
DI::baseUrl()->redirect();
}
// Check if the note to the admin is actually filled out
if (empty($_POST['permonlybox'])) {
- notice(L10n::t('You have to leave a request note for the admin.')
- . L10n::t('Your registration can not be processed.'));
+ notice(DI::l10n()->t('You have to leave a request note for the admin.')
+ . DI::l10n()->t('Your registration can not be processed.'));
DI::baseUrl()->redirect('register/');
}
@@ -374,7 +374,7 @@ class Register extends BaseModule
$result['password']
);
- info(L10n::t('Your registration is pending approval by the site owner.'));
+ info(DI::l10n()->t('Your registration is pending approval by the site owner.'));
DI::baseUrl()->redirect();
}
diff --git a/src/Module/Search/Acl.php b/src/Module/Search/Acl.php
index 74ce55fb5..2455e2cb8 100644
--- a/src/Module/Search/Acl.php
+++ b/src/Module/Search/Acl.php
@@ -34,7 +34,7 @@ class Acl extends BaseModule
public static function rawContent(array $parameters = [])
{
if (!local_user()) {
- throw new HTTPException\UnauthorizedException(L10n::t('You must be logged in to use this module.'));
+ throw new HTTPException\UnauthorizedException(DI::l10n()->t('You must be logged in to use this module.'));
}
$type = $_REQUEST['type'] ?? self::TYPE_MENTION_CONTACT_GROUP;
diff --git a/src/Module/Search/Directory.php b/src/Module/Search/Directory.php
index 55510aa53..093c0f9fb 100644
--- a/src/Module/Search/Directory.php
+++ b/src/Module/Search/Directory.php
@@ -17,7 +17,7 @@ class Directory extends BaseSearchModule
public static function content(array $parameters = [])
{
if (!local_user()) {
- notice(L10n::t('Permission denied.'));
+ notice(DI::l10n()->t('Permission denied.'));
return Login::form();
}
diff --git a/src/Module/Search/Index.php b/src/Module/Search/Index.php
index 98c593f45..2b86617c1 100644
--- a/src/Module/Search/Index.php
+++ b/src/Module/Search/Index.php
@@ -28,12 +28,12 @@ class Index extends BaseSearchModule
$search = (!empty($_GET['q']) ? Strings::escapeTags(trim(rawurldecode($_GET['q']))) : '');
if (Config::get('system', 'block_public') && !Session::isAuthenticated()) {
- throw new HTTPException\ForbiddenException(L10n::t('Public access denied.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Public access denied.'));
}
if (Config::get('system', 'local_search') && !Session::isAuthenticated()) {
- $e = new HTTPException\ForbiddenException(L10n::t('Only logged in users are permitted to perform a search.'));
- $e->httpdesc = L10n::t('Public access denied.');
+ $e = new HTTPException\ForbiddenException(DI::l10n()->t('Only logged in users are permitted to perform a search.'));
+ $e->httpdesc = DI::l10n()->t('Public access denied.');
throw $e;
}
@@ -54,7 +54,7 @@ class Index extends BaseSearchModule
if (!is_null($result)) {
$resultdata = json_decode($result);
if (($resultdata->time > (time() - $crawl_permit_period)) && ($resultdata->accesses > $free_crawls)) {
- throw new HTTPException\TooManyRequestsException(L10n::t('Only one search per minute is permitted for not logged in users.'));
+ throw new HTTPException\TooManyRequestsException(DI::l10n()->t('Only one search per minute is permitted for not logged in users.'));
}
DI::cache()->set('remote_search:' . $remote, json_encode(['time' => time(), 'accesses' => $resultdata->accesses + 1]), Duration::HOUR);
} else {
@@ -77,7 +77,7 @@ class Index extends BaseSearchModule
// contruct a wrapper for the search header
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('content_wrapper.tpl'), [
'name' => 'search-header',
- '$title' => L10n::t('Search'),
+ '$title' => DI::l10n()->t('Search'),
'$title_size' => 3,
'$content' => HTML::search($search, 'search-box', false)
]);
@@ -167,14 +167,14 @@ class Index extends BaseSearchModule
}
if (!DBA::isResult($r)) {
- info(L10n::t('No results.'));
+ info(DI::l10n()->t('No results.'));
return $o;
}
if ($tag) {
- $title = L10n::t('Items tagged with: %s', $search);
+ $title = DI::l10n()->t('Items tagged with: %s', $search);
} else {
- $title = L10n::t('Results for: %s', $search);
+ $title = DI::l10n()->t('Results for: %s', $search);
}
$o .= Renderer::replaceMacros(Renderer::getMarkupTemplate('section_title.tpl'), [
diff --git a/src/Module/Search/Saved.php b/src/Module/Search/Saved.php
index 47925b0ae..72232ac7d 100644
--- a/src/Module/Search/Saved.php
+++ b/src/Module/Search/Saved.php
@@ -23,15 +23,15 @@ class Saved extends BaseModule
$fields = ['uid' => local_user(), 'term' => $search];
if (!DBA::exists('search', $fields)) {
DBA::insert('search', $fields);
- info(L10n::t('Search term successfully saved.'));
+ info(DI::l10n()->t('Search term successfully saved.'));
} else {
- info(L10n::t('Search term already saved.'));
+ info(DI::l10n()->t('Search term already saved.'));
}
break;
case 'remove':
DBA::delete('search', ['uid' => local_user(), 'term' => $search]);
- info(L10n::t('Search term successfully removed.'));
+ info(DI::l10n()->t('Search term successfully removed.'));
break;
}
}
diff --git a/src/Module/Security/Login.php b/src/Module/Security/Login.php
index e2e9ff04d..9e5a7b18a 100644
--- a/src/Module/Security/Login.php
+++ b/src/Module/Security/Login.php
@@ -87,8 +87,8 @@ class Login extends BaseModule
$reg = false;
if ($register && intval(DI::config()->get('config', 'register_policy')) !== Register::CLOSED) {
$reg = [
- 'title' => L10n::t('Create a New Account'),
- 'desc' => L10n::t('Register'),
+ 'title' => DI::l10n()->t('Create a New Account'),
+ 'desc' => DI::l10n()->t('Register'),
'url' => self::getRegisterURL()
];
}
@@ -112,12 +112,12 @@ class Login extends BaseModule
}
if (!empty(Session::get('openid_identity'))) {
- $openid_title = L10n::t('Your OpenID: ');
+ $openid_title = DI::l10n()->t('Your OpenID: ');
$openid_readonly = true;
$identity = Session::get('openid_identity');
- $username_desc = L10n::t('Please enter your username and password to add the OpenID to your existing account.');
+ $username_desc = DI::l10n()->t('Please enter your username and password to add the OpenID to your existing account.');
} else {
- $openid_title = L10n::t('Or login using OpenID: ');
+ $openid_title = DI::l10n()->t('Or login using OpenID: ');
$openid_readonly = false;
$identity = '';
$username_desc = '';
@@ -127,12 +127,12 @@ class Login extends BaseModule
$tpl,
[
'$dest_url' => DI::baseUrl()->get(true) . '/login',
- '$logout' => L10n::t('Logout'),
- '$login' => L10n::t('Login'),
+ '$logout' => DI::l10n()->t('Logout'),
+ '$login' => DI::l10n()->t('Login'),
- '$lname' => ['username', L10n::t('Nickname or Email: '), '', $username_desc],
- '$lpassword' => ['password', L10n::t('Password: '), '', ''],
- '$lremember' => ['remember', L10n::t('Remember me'), 0, ''],
+ '$lname' => ['username', DI::l10n()->t('Nickname or Email: '), '', $username_desc],
+ '$lpassword' => ['password', DI::l10n()->t('Password: '), '', ''],
+ '$lremember' => ['remember', DI::l10n()->t('Remember me'), 0, ''],
'$openid' => !$noid,
'$lopenid' => ['openid_url', $openid_title, $identity, '', $openid_readonly],
@@ -141,14 +141,14 @@ class Login extends BaseModule
'$register' => $reg,
- '$lostpass' => L10n::t('Forgot your password?'),
- '$lostlink' => L10n::t('Password Reset'),
+ '$lostpass' => DI::l10n()->t('Forgot your password?'),
+ '$lostlink' => DI::l10n()->t('Password Reset'),
- '$tostitle' => L10n::t('Website Terms of Service'),
- '$toslink' => L10n::t('terms of service'),
+ '$tostitle' => DI::l10n()->t('Website Terms of Service'),
+ '$toslink' => DI::l10n()->t('terms of service'),
- '$privacytitle' => L10n::t('Website Privacy Policy'),
- '$privacylink' => L10n::t('privacy policy'),
+ '$privacytitle' => DI::l10n()->t('Website Privacy Policy'),
+ '$privacylink' => DI::l10n()->t('privacy policy'),
]
);
diff --git a/src/Module/Security/TwoFactor/Recovery.php b/src/Module/Security/TwoFactor/Recovery.php
index bbbb2d445..443256d97 100644
--- a/src/Module/Security/TwoFactor/Recovery.php
+++ b/src/Module/Security/TwoFactor/Recovery.php
@@ -40,11 +40,11 @@ class Recovery extends BaseModule
if (RecoveryCode::existsForUser(local_user(), $recovery_code)) {
RecoveryCode::markUsedForUser(local_user(), $recovery_code);
Session::set('2fa', true);
- notice(L10n::t('Remaining recovery codes: %d', RecoveryCode::countValidForUser(local_user())));
+ notice(DI::l10n()->t('Remaining recovery codes: %d', RecoveryCode::countValidForUser(local_user())));
DI::auth()->setForUser($a, $a->user, true, true);
} else {
- notice(L10n::t('Invalid code, please retry.'));
+ notice(DI::l10n()->t('Invalid code, please retry.'));
}
}
}
@@ -63,11 +63,11 @@ class Recovery extends BaseModule
return Renderer::replaceMacros(Renderer::getMarkupTemplate('twofactor/recovery.tpl'), [
'$form_security_token' => self::getFormSecurityToken('twofactor_recovery'),
- '$title' => L10n::t('Two-factor recovery'),
- '$message' => L10n::t('You can enter one of your one-time recovery codes in case you lost access to your mobile device.
'),
- '$recovery_message' => L10n::t('Don’t have your phone? Enter a two-factor recovery code ', '2fa/recovery'),
- '$recovery_code' => ['recovery_code', L10n::t('Please enter a recovery code'), '', '', '', 'placeholder="000000-000000"'],
- '$recovery_label' => L10n::t('Submit recovery code and complete login'),
+ '$title' => DI::l10n()->t('Two-factor recovery'),
+ '$message' => DI::l10n()->t('You can enter one of your one-time recovery codes in case you lost access to your mobile device.
'),
+ '$recovery_message' => DI::l10n()->t('Don’t have your phone? Enter a two-factor recovery code ', '2fa/recovery'),
+ '$recovery_code' => ['recovery_code', DI::l10n()->t('Please enter a recovery code'), '', '', '', 'placeholder="000000-000000"'],
+ '$recovery_label' => DI::l10n()->t('Submit recovery code and complete login'),
]);
}
}
diff --git a/src/Module/Security/TwoFactor/Verify.php b/src/Module/Security/TwoFactor/Verify.php
index c00c8abe5..a95b02d42 100644
--- a/src/Module/Security/TwoFactor/Verify.php
+++ b/src/Module/Security/TwoFactor/Verify.php
@@ -40,7 +40,7 @@ class Verify extends BaseModule
// Resume normal login workflow
DI::auth()->setForUser($a, $a->user, true, true);
} else {
- self::$errors[] = L10n::t('Invalid code, please retry.');
+ self::$errors[] = DI::l10n()->t('Invalid code, please retry.');
}
}
}
@@ -59,13 +59,13 @@ class Verify extends BaseModule
return Renderer::replaceMacros(Renderer::getMarkupTemplate('twofactor/verify.tpl'), [
'$form_security_token' => self::getFormSecurityToken('twofactor_verify'),
- '$title' => L10n::t('Two-factor authentication'),
- '$message' => L10n::t('Open the two-factor authentication app on your device to get an authentication code and verify your identity.
'),
+ '$title' => DI::l10n()->t('Two-factor authentication'),
+ '$message' => DI::l10n()->t('Open the two-factor authentication app on your device to get an authentication code and verify your identity.
'),
'$errors_label' => L10n::tt('Error', 'Errors', count(self::$errors)),
'$errors' => self::$errors,
- '$recovery_message' => L10n::t('Don’t have your phone? Enter a two-factor recovery code ', '2fa/recovery'),
- '$verify_code' => ['verify_code', L10n::t('Please enter a code from your authentication app'), '', '', 'required', 'autofocus placeholder="000000"', 'tel'],
- '$verify_label' => L10n::t('Verify code and complete login'),
+ '$recovery_message' => DI::l10n()->t('Don’t have your phone? Enter a two-factor recovery code ', '2fa/recovery'),
+ '$verify_code' => ['verify_code', DI::l10n()->t('Please enter a code from your authentication app'), '', '', 'required', 'autofocus placeholder="000000"', 'tel'],
+ '$verify_label' => DI::l10n()->t('Verify code and complete login'),
]);
}
}
diff --git a/src/Module/Settings/Delegation.php b/src/Module/Settings/Delegation.php
index f0a335550..dffb23eb6 100644
--- a/src/Module/Settings/Delegation.php
+++ b/src/Module/Settings/Delegation.php
@@ -23,7 +23,7 @@ class Delegation extends BaseSettingsModule
public static function post(array $parameters = [])
{
if (!local_user() || !empty(DI::app()->user['uid']) && DI::app()->user['uid'] != local_user()) {
- throw new HTTPException\ForbiddenException(L10n::t('Permission denied.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.'));
}
BaseModule::checkFormSecurityTokenRedirectOnError('settings/delegation', 'delegate');
@@ -34,13 +34,13 @@ class Delegation extends BaseSettingsModule
if ($parent_uid != 0) {
try {
User::getIdFromPasswordAuthentication($parent_uid, $parent_password);
- info(L10n::t('Delegation successfully granted.'));
+ info(DI::l10n()->t('Delegation successfully granted.'));
} catch (\Exception $ex) {
- notice(L10n::t('Parent user not found, unavailable or password doesn\'t match.'));
+ notice(DI::l10n()->t('Parent user not found, unavailable or password doesn\'t match.'));
return;
}
} else {
- info(L10n::t('Delegation successfully revoked.'));
+ info(DI::l10n()->t('Delegation successfully revoked.'));
}
DBA::update('user', ['parent-uid' => $parent_uid], ['uid' => local_user()]);
@@ -51,7 +51,7 @@ class Delegation extends BaseSettingsModule
parent::content($parameters);
if (!local_user()) {
- throw new HTTPException\ForbiddenException(L10n::t('Permission denied.'));
+ throw new HTTPException\ForbiddenException(DI::l10n()->t('Permission denied.'));
}
$args = DI::args();
@@ -62,7 +62,7 @@ class Delegation extends BaseSettingsModule
if ($action === 'add' && $user_id) {
if (Session::get('submanage')) {
- notice(L10n::t('Delegated administrators can view but not change delegation permissions.'));
+ notice(DI::l10n()->t('Delegated administrators can view but not change delegation permissions.'));
DI::baseUrl()->redirect('settings/delegation');
}
@@ -76,7 +76,7 @@ class Delegation extends BaseSettingsModule
DBA::insert('manage', ['uid' => $user_id, 'mid' => local_user()]);
}
} else {
- notice(L10n::t('Delegate user not found.'));
+ notice(DI::l10n()->t('Delegate user not found.'));
}
DI::baseUrl()->redirect('settings/delegation');
@@ -84,7 +84,7 @@ class Delegation extends BaseSettingsModule
if ($action === 'remove' && $user_id) {
if (Session::get('submanage')) {
- notice(L10n::t('Delegated administrators can view but not change delegation permissions.'));
+ notice(DI::l10n()->t('Delegated administrators can view but not change delegation permissions.'));
DI::baseUrl()->redirect('settings/delegation');
}
@@ -123,7 +123,7 @@ class Delegation extends BaseSettingsModule
$user = User::getById(local_user(), ['parent-uid', 'email']);
if (DBA::isResult($user) && !DBA::exists('user', ['parent-uid' => local_user()])) {
$parent_uid = $user['parent-uid'];
- $parents = [0 => L10n::t('No parent user')];
+ $parents = [0 => DI::l10n()->t('No parent user')];
$fields = ['uid', 'username', 'nickname'];
$condition = ['email' => $user['email'], 'verified' => true, 'blocked' => false, 'parent-uid' => 0];
@@ -135,33 +135,33 @@ class Delegation extends BaseSettingsModule
}
$parent_user = ['parent_user', '', $parent_uid, '', $parents];
- $parent_password = ['parent_password', L10n::t('Parent Password:'), '', L10n::t('Please enter the password of the parent account to legitimize your request.')];
+ $parent_password = ['parent_password', DI::l10n()->t('Parent Password:'), '', DI::l10n()->t('Please enter the password of the parent account to legitimize your request.')];
}
$is_child_user = !empty($user['parent-uid']);
$o = Renderer::replaceMacros(Renderer::getMarkupTemplate('settings/delegation.tpl'), [
'$form_security_token' => BaseModule::getFormSecurityToken('delegate'),
- '$account_header' => L10n::t('Additional Accounts'),
- '$account_desc' => L10n::t('Register additional accounts that are automatically connected to your existing account so you can manage it from this account.'),
- '$add_account' => L10n::t('Register an additional account'),
- '$parent_header' => L10n::t('Parent User'),
+ '$account_header' => DI::l10n()->t('Additional Accounts'),
+ '$account_desc' => DI::l10n()->t('Register additional accounts that are automatically connected to your existing account so you can manage it from this account.'),
+ '$add_account' => DI::l10n()->t('Register an additional account'),
+ '$parent_header' => DI::l10n()->t('Parent User'),
'$parent_user' => $parent_user,
'$parent_password' => $parent_password,
- '$parent_desc' => L10n::t('Parent users have total control about this account, including the account settings. Please double check whom you give this access.'),
+ '$parent_desc' => DI::l10n()->t('Parent users have total control about this account, including the account settings. Please double check whom you give this access.'),
'$is_child_user' => $is_child_user,
- '$submit' => L10n::t('Save Settings'),
- '$header' => L10n::t('Manage Accounts'),
- '$delegates_header' => L10n::t('Delegates'),
+ '$submit' => DI::l10n()->t('Save Settings'),
+ '$header' => DI::l10n()->t('Manage Accounts'),
+ '$delegates_header' => DI::l10n()->t('Delegates'),
'$base' => DI::baseUrl(),
- '$desc' => L10n::t('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.'),
- '$head_delegates' => L10n::t('Existing Page Delegates'),
+ '$desc' => DI::l10n()->t('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.'),
+ '$head_delegates' => DI::l10n()->t('Existing Page Delegates'),
'$delegates' => $delegates,
- '$head_potentials' => L10n::t('Potential Delegates'),
+ '$head_potentials' => DI::l10n()->t('Potential Delegates'),
'$potentials' => $potentials,
- '$remove' => L10n::t('Remove'),
- '$add' => L10n::t('Add'),
- '$none' => L10n::t('No entries.')
+ '$remove' => DI::l10n()->t('Remove'),
+ '$add' => DI::l10n()->t('Add'),
+ '$none' => DI::l10n()->t('No entries.')
]);
return $o;
diff --git a/src/Module/Settings/TwoFactor/AppSpecific.php b/src/Module/Settings/TwoFactor/AppSpecific.php
index d87247346..f80e466a8 100644
--- a/src/Module/Settings/TwoFactor/AppSpecific.php
+++ b/src/Module/Settings/TwoFactor/AppSpecific.php
@@ -31,7 +31,7 @@ class AppSpecific extends BaseSettingsModule
}
if (!self::checkFormSecurityToken('settings_2fa_password', 't')) {
- notice(L10n::t('Please enter your password to access this page.'));
+ notice(DI::l10n()->t('Please enter your password to access this page.'));
DI::baseUrl()->redirect('settings/2fa');
}
}
@@ -49,20 +49,20 @@ class AppSpecific extends BaseSettingsModule
case 'generate':
$description = $_POST['description'] ?? '';
if (empty($description)) {
- notice(L10n::t('App-specific password generation failed: The description is empty.'));
+ notice(DI::l10n()->t('App-specific password generation failed: The description is empty.'));
DI::baseUrl()->redirect('settings/2fa/app_specific?t=' . self::getFormSecurityToken('settings_2fa_password'));
} elseif (AppSpecificPassword::checkDuplicateForUser(local_user(), $description)) {
- notice(L10n::t('App-specific password generation failed: This description already exists.'));
+ notice(DI::l10n()->t('App-specific password generation failed: This description already exists.'));
DI::baseUrl()->redirect('settings/2fa/app_specific?t=' . self::getFormSecurityToken('settings_2fa_password'));
} else {
self::$appSpecificPassword = AppSpecificPassword::generateForUser(local_user(), $_POST['description'] ?? '');
- notice(L10n::t('New app-specific password generated.'));
+ notice(DI::l10n()->t('New app-specific password generated.'));
}
break;
case 'revoke_all' :
AppSpecificPassword::deleteAllForUser(local_user());
- notice(L10n::t('App-specific passwords successfully revoked.'));
+ notice(DI::l10n()->t('App-specific passwords successfully revoked.'));
DI::baseUrl()->redirect('settings/2fa/app_specific?t=' . self::getFormSecurityToken('settings_2fa_password'));
break;
}
@@ -72,7 +72,7 @@ class AppSpecific extends BaseSettingsModule
self::checkFormSecurityTokenRedirectOnError('settings/2fa/app_specific', 'settings_2fa_app_specific');
if (AppSpecificPassword::deleteForUser(local_user(), $_POST['revoke_id'])) {
- notice(L10n::t('App-specific password successfully revoked.'));
+ notice(DI::l10n()->t('App-specific password successfully revoked.'));
}
DI::baseUrl()->redirect('settings/2fa/app_specific?t=' . self::getFormSecurityToken('settings_2fa_password'));
@@ -93,22 +93,22 @@ class AppSpecific extends BaseSettingsModule
'$form_security_token' => self::getFormSecurityToken('settings_2fa_app_specific'),
'$password_security_token' => self::getFormSecurityToken('settings_2fa_password'),
- '$title' => L10n::t('Two-factor app-specific passwords'),
- '$help_label' => L10n::t('Help'),
- '$message' => L10n::t('App-specific passwords are randomly generated passwords used instead your regular password to authenticate your account on third-party applications that don\'t support two-factor authentication.
'),
- '$generated_message' => L10n::t('Make sure to copy your new app-specific password now. You won’t be able to see it again!'),
+ '$title' => DI::l10n()->t('Two-factor app-specific passwords'),
+ '$help_label' => DI::l10n()->t('Help'),
+ '$message' => DI::l10n()->t('App-specific passwords are randomly generated passwords used instead your regular password to authenticate your account on third-party applications that don\'t support two-factor authentication.
'),
+ '$generated_message' => DI::l10n()->t('Make sure to copy your new app-specific password now. You won’t be able to see it again!'),
'$generated_app_specific_password' => self::$appSpecificPassword,
- '$description_label' => L10n::t('Description'),
- '$last_used_label' => L10n::t('Last Used'),
- '$revoke_label' => L10n::t('Revoke'),
- '$revoke_all_label' => L10n::t('Revoke All'),
+ '$description_label' => DI::l10n()->t('Description'),
+ '$last_used_label' => DI::l10n()->t('Last Used'),
+ '$revoke_label' => DI::l10n()->t('Revoke'),
+ '$revoke_all_label' => DI::l10n()->t('Revoke All'),
'$app_specific_passwords' => $appSpecificPasswords,
- '$generate_message' => L10n::t('When you generate a new app-specific password, you must use it right away, it will be shown to you once after you generate it.'),
- '$generate_title' => L10n::t('Generate new app-specific password'),
- '$description_placeholder_label' => L10n::t('Friendiqa on my Fairphone 2...'),
- '$generate_label' => L10n::t('Generate'),
+ '$generate_message' => DI::l10n()->t('When you generate a new app-specific password, you must use it right away, it will be shown to you once after you generate it.'),
+ '$generate_title' => DI::l10n()->t('Generate new app-specific password'),
+ '$description_placeholder_label' => DI::l10n()->t('Friendiqa on my Fairphone 2...'),
+ '$generate_label' => DI::l10n()->t('Generate'),
]);
}
}
diff --git a/src/Module/Settings/TwoFactor/Index.php b/src/Module/Settings/TwoFactor/Index.php
index df06333fc..0385b8dba 100644
--- a/src/Module/Settings/TwoFactor/Index.php
+++ b/src/Module/Settings/TwoFactor/Index.php
@@ -46,7 +46,7 @@ class Index extends BaseSettingsModule
DI::pConfig()->delete(local_user(), '2fa', 'verified');
Session::remove('2fa');
- notice(L10n::t('Two-factor authentication successfully disabled.'));
+ notice(DI::l10n()->t('Two-factor authentication successfully disabled.'));
DI::baseUrl()->redirect('settings/2fa');
}
break;
@@ -67,7 +67,7 @@ class Index extends BaseSettingsModule
break;
}
} catch (\Exception $e) {
- notice(L10n::t('Wrong Password'));
+ notice(DI::l10n()->t('Wrong Password'));
}
}
@@ -84,35 +84,35 @@ class Index extends BaseSettingsModule
return Renderer::replaceMacros(Renderer::getMarkupTemplate('settings/twofactor/index.tpl'), [
'$form_security_token' => self::getFormSecurityToken('settings_2fa'),
- '$title' => L10n::t('Two-factor authentication'),
- '$help_label' => L10n::t('Help'),
- '$status_title' => L10n::t('Status'),
- '$message' => L10n::t('Use an application on a mobile device to get two-factor authentication codes when prompted on login.
'),
+ '$title' => DI::l10n()->t('Two-factor authentication'),
+ '$help_label' => DI::l10n()->t('Help'),
+ '$status_title' => DI::l10n()->t('Status'),
+ '$message' => DI::l10n()->t('Use an application on a mobile device to get two-factor authentication codes when prompted on login.
'),
'$has_secret' => $has_secret,
'$verified' => $verified,
- '$auth_app_label' => L10n::t('Authenticator app'),
- '$app_status' => $has_secret ? $verified ? L10n::t('Configured') : L10n::t('Not Configured') : L10n::t('Disabled'),
- '$not_configured_message' => L10n::t('You haven\'t finished configuring your authenticator app.
'),
- '$configured_message' => L10n::t('Your authenticator app is correctly configured.
'),
+ '$auth_app_label' => DI::l10n()->t('Authenticator app'),
+ '$app_status' => $has_secret ? $verified ? DI::l10n()->t('Configured') : DI::l10n()->t('Not Configured') : DI::l10n()->t('Disabled'),
+ '$not_configured_message' => DI::l10n()->t('You haven\'t finished configuring your authenticator app.
'),
+ '$configured_message' => DI::l10n()->t('Your authenticator app is correctly configured.
'),
- '$recovery_codes_title' => L10n::t('Recovery codes'),
- '$recovery_codes_remaining' => L10n::t('Remaining valid codes'),
+ '$recovery_codes_title' => DI::l10n()->t('Recovery codes'),
+ '$recovery_codes_remaining' => DI::l10n()->t('Remaining valid codes'),
'$recovery_codes_count' => RecoveryCode::countValidForUser(local_user()),
- '$recovery_codes_message' => L10n::t('These one-use codes can replace an authenticator app code in case you have lost access to it.
'),
+ '$recovery_codes_message' => DI::l10n()->t('These one-use codes can replace an authenticator app code in case you have lost access to it.
'),
- '$app_specific_passwords_title' => L10n::t('App-specific passwords'),
- '$app_specific_passwords_remaining' => L10n::t('Generated app-specific passwords'),
+ '$app_specific_passwords_title' => DI::l10n()->t('App-specific passwords'),
+ '$app_specific_passwords_remaining' => DI::l10n()->t('Generated app-specific passwords'),
'$app_specific_passwords_count' => AppSpecificPassword::countForUser(local_user()),
- '$app_specific_passwords_message' => L10n::t('These randomly generated passwords allow you to authenticate on apps not supporting two-factor authentication.
'),
+ '$app_specific_passwords_message' => DI::l10n()->t('These randomly generated passwords allow you to authenticate on apps not supporting two-factor authentication.
'),
- '$action_title' => L10n::t('Actions'),
- '$password' => ['password', L10n::t('Current password:'), '', L10n::t('You need to provide your current password to change two-factor authentication settings.'), 'required', 'autofocus'],
- '$enable_label' => L10n::t('Enable two-factor authentication'),
- '$disable_label' => L10n::t('Disable two-factor authentication'),
- '$recovery_codes_label' => L10n::t('Show recovery codes'),
- '$app_specific_passwords_label' => L10n::t('Manage app-specific passwords'),
- '$configure_label' => L10n::t('Finish app configuration'),
+ '$action_title' => DI::l10n()->t('Actions'),
+ '$password' => ['password', DI::l10n()->t('Current password:'), '', DI::l10n()->t('You need to provide your current password to change two-factor authentication settings.'), 'required', 'autofocus'],
+ '$enable_label' => DI::l10n()->t('Enable two-factor authentication'),
+ '$disable_label' => DI::l10n()->t('Disable two-factor authentication'),
+ '$recovery_codes_label' => DI::l10n()->t('Show recovery codes'),
+ '$app_specific_passwords_label' => DI::l10n()->t('Manage app-specific passwords'),
+ '$configure_label' => DI::l10n()->t('Finish app configuration'),
]);
}
}
diff --git a/src/Module/Settings/TwoFactor/Recovery.php b/src/Module/Settings/TwoFactor/Recovery.php
index 604eca480..fbfb0b183 100644
--- a/src/Module/Settings/TwoFactor/Recovery.php
+++ b/src/Module/Settings/TwoFactor/Recovery.php
@@ -29,7 +29,7 @@ class Recovery extends BaseSettingsModule
}
if (!self::checkFormSecurityToken('settings_2fa_password', 't')) {
- notice(L10n::t('Please enter your password to access this page.'));
+ notice(DI::l10n()->t('Please enter your password to access this page.'));
DI::baseUrl()->redirect('settings/2fa');
}
}
@@ -45,7 +45,7 @@ class Recovery extends BaseSettingsModule
if ($_POST['action'] == 'regenerate') {
RecoveryCode::regenerateForUser(local_user());
- notice(L10n::t('New recovery codes successfully generated.'));
+ notice(DI::l10n()->t('New recovery codes successfully generated.'));
DI::baseUrl()->redirect('settings/2fa/recovery?t=' . self::getFormSecurityToken('settings_2fa_password'));
}
}
@@ -71,14 +71,14 @@ class Recovery extends BaseSettingsModule
'$form_security_token' => self::getFormSecurityToken('settings_2fa_recovery'),
'$password_security_token' => self::getFormSecurityToken('settings_2fa_password'),
- '$title' => L10n::t('Two-factor recovery codes'),
- '$help_label' => L10n::t('Help'),
- '$message' => L10n::t('Recovery codes can be used to access your account in the event you lose access to your device and cannot receive two-factor authentication codes.
Put these in a safe spot! If you lose your device and don’t have the recovery codes you will lose access to your account.
'),
+ '$title' => DI::l10n()->t('Two-factor recovery codes'),
+ '$help_label' => DI::l10n()->t('Help'),
+ '$message' => DI::l10n()->t('Recovery codes can be used to access your account in the event you lose access to your device and cannot receive two-factor authentication codes.
Put these in a safe spot! If you lose your device and don’t have the recovery codes you will lose access to your account.
'),
'$recovery_codes' => $recoveryCodes,
- '$regenerate_message' => L10n::t('When you generate new recovery codes, you must copy the new codes. Your old codes won’t work anymore.'),
- '$regenerate_label' => L10n::t('Generate new recovery codes'),
+ '$regenerate_message' => DI::l10n()->t('When you generate new recovery codes, you must copy the new codes. Your old codes won’t work anymore.'),
+ '$regenerate_label' => DI::l10n()->t('Generate new recovery codes'),
'$verified' => $verified,
- '$verify_label' => L10n::t('Next: Verification'),
+ '$verify_label' => DI::l10n()->t('Next: Verification'),
]);
}
}
diff --git a/src/Module/Settings/TwoFactor/Verify.php b/src/Module/Settings/TwoFactor/Verify.php
index 8371064c3..62867d82b 100644
--- a/src/Module/Settings/TwoFactor/Verify.php
+++ b/src/Module/Settings/TwoFactor/Verify.php
@@ -35,7 +35,7 @@ class Verify extends BaseSettingsModule
}
if (!self::checkFormSecurityToken('settings_2fa_password', 't')) {
- notice(L10n::t('Please enter your password to access this page.'));
+ notice(DI::l10n()->t('Please enter your password to access this page.'));
DI::baseUrl()->redirect('settings/2fa');
}
}
@@ -57,11 +57,11 @@ class Verify extends BaseSettingsModule
DI::pConfig()->set(local_user(), '2fa', 'verified', true);
Session::set('2fa', true);
- notice(L10n::t('Two-factor authentication successfully activated.'));
+ notice(DI::l10n()->t('Two-factor authentication successfully activated.'));
DI::baseUrl()->redirect('settings/2fa');
} else {
- notice(L10n::t('Invalid code, please retry.'));
+ notice(DI::l10n()->t('Invalid code, please retry.'));
}
}
}
@@ -90,7 +90,7 @@ class Verify extends BaseSettingsModule
$shortOtpauthUrl = explode('?', $otpauthUrl)[0];
- $manual_message = L10n::t('Or you can submit the authentication settings manually:
+ $manual_message = DI::l10n()->t('Or you can submit the authentication settings manually:
Issuer
%s
@@ -110,18 +110,18 @@ class Verify extends BaseSettingsModule
'$form_security_token' => self::getFormSecurityToken('settings_2fa_verify'),
'$password_security_token' => self::getFormSecurityToken('settings_2fa_password'),
- '$title' => L10n::t('Two-factor code verification'),
- '$help_label' => L10n::t('Help'),
- '$message' => L10n::t('Please scan this QR Code with your authenticator app and submit the provided code.
'),
+ '$title' => DI::l10n()->t('Two-factor code verification'),
+ '$help_label' => DI::l10n()->t('Help'),
+ '$message' => DI::l10n()->t('Please scan this QR Code with your authenticator app and submit the provided code.
'),
'$qrcode_image' => $qrcode_image,
- '$qrcode_url_message' => L10n::t('Or you can open the following URL in your mobile devicde:
%s
', $otpauthUrl, $shortOtpauthUrl),
+ '$qrcode_url_message' => DI::l10n()->t('Or you can open the following URL in your mobile devicde:
%s
', $otpauthUrl, $shortOtpauthUrl),
'$manual_message' => $manual_message,
'$company' => $company,
'$holder' => $holder,
'$secret' => $secret,
- '$verify_code' => ['verify_code', L10n::t('Please enter a code from your authentication app'), '', '', 'required', 'autofocus placeholder="000000"'],
- '$verify_label' => L10n::t('Verify code and enable two-factor authentication'),
+ '$verify_code' => ['verify_code', DI::l10n()->t('Please enter a code from your authentication app'), '', '', 'required', 'autofocus placeholder="000000"'],
+ '$verify_label' => DI::l10n()->t('Verify code and enable two-factor authentication'),
]);
}
}
diff --git a/src/Module/Settings/UserExport.php b/src/Module/Settings/UserExport.php
index 1b7c723a7..36ec0ca0c 100644
--- a/src/Module/Settings/UserExport.php
+++ b/src/Module/Settings/UserExport.php
@@ -39,15 +39,15 @@ class UserExport extends BaseSettingsModule
* list of array( 'link url', 'link text', 'help text' )
*/
$options = [
- ['settings/userexport/account', L10n::t('Export account'), L10n::t('Export your account info and contacts. Use this to make a backup of your account and/or to move it to another server.')],
- ['settings/userexport/backup', L10n::t('Export all'), L10n::t("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 \x28photos are not exported\x29")],
- ['settings/userexport/contact', L10n::t('Export Contacts to CSV'), L10n::t("Export the list of the accounts you are following as CSV file. Compatible to e.g. Mastodon.")],
+ ['settings/userexport/account', DI::l10n()->t('Export account'), DI::l10n()->t('Export your account info and contacts. Use this to make a backup of your account and/or to move it to another server.')],
+ ['settings/userexport/backup', DI::l10n()->t('Export all'), DI::l10n()->t("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 \x28photos are not exported\x29")],
+ ['settings/userexport/contact', DI::l10n()->t('Export Contacts to CSV'), DI::l10n()->t("Export the list of the accounts you are following as CSV file. Compatible to e.g. Mastodon.")],
];
Hook::callAll('uexport_options', $options);
$tpl = Renderer::getMarkupTemplate("settings/userexport.tpl");
return Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Export personal data'),
+ '$title' => DI::l10n()->t('Export personal data'),
'$options' => $options
]);
}
diff --git a/src/Module/Special/HTTPException.php b/src/Module/Special/HTTPException.php
index 36c770fba..be71278fa 100644
--- a/src/Module/Special/HTTPException.php
+++ b/src/Module/Special/HTTPException.php
@@ -29,30 +29,30 @@ class HTTPException
$titles = [
200 => 'OK',
- 400 => L10n::t('Bad Request'),
- 401 => L10n::t('Unauthorized'),
- 403 => L10n::t('Forbidden'),
- 404 => L10n::t('Not Found'),
- 500 => L10n::t('Internal Server Error'),
- 503 => L10n::t('Service Unavailable'),
+ 400 => DI::l10n()->t('Bad Request'),
+ 401 => DI::l10n()->t('Unauthorized'),
+ 403 => DI::l10n()->t('Forbidden'),
+ 404 => DI::l10n()->t('Not Found'),
+ 500 => DI::l10n()->t('Internal Server Error'),
+ 503 => DI::l10n()->t('Service Unavailable'),
];
$title = ($titles[$e->getCode()] ?? '') ?: 'Error ' . $e->getCode();
if (empty($message)) {
// Explanations are taken from https://en.wikipedia.org/wiki/List_of_HTTP_status_codes
$explanation = [
- 400 => L10n::t('The server cannot or will not process the request due to an apparent client error.'),
- 401 => L10n::t('Authentication is required and has failed or has not yet been provided.'),
- 403 => L10n::t('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.'),
- 404 => L10n::t('The requested resource could not be found but may be available in the future.'),
- 500 => L10n::t('An unexpected condition was encountered and no more specific message is suitable.'),
- 503 => L10n::t('The server is currently unavailable (because it is overloaded or down for maintenance). Please try again later.'),
+ 400 => DI::l10n()->t('The server cannot or will not process the request due to an apparent client error.'),
+ 401 => DI::l10n()->t('Authentication is required and has failed or has not yet been provided.'),
+ 403 => DI::l10n()->t('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.'),
+ 404 => DI::l10n()->t('The requested resource could not be found but may be available in the future.'),
+ 500 => DI::l10n()->t('An unexpected condition was encountered and no more specific message is suitable.'),
+ 503 => DI::l10n()->t('The server is currently unavailable (because it is overloaded or down for maintenance). Please try again later.'),
];
$message = $explanation[$e->getCode()] ?? '';
}
- return ['$title' => $title, '$message' => $message, '$back' => L10n::t('Go back')];
+ return ['$title' => $title, '$message' => $message, '$back' => DI::l10n()->t('Go back')];
}
/**
diff --git a/src/Module/Tos.php b/src/Module/Tos.php
index 5442fdf45..7380488e0 100644
--- a/src/Module/Tos.php
+++ b/src/Module/Tos.php
@@ -32,12 +32,12 @@ class Tos extends BaseModule
**/
public function __construct()
{
- $this->privacy_operate = L10n::t('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.');
- $this->privacy_distribute = L10n::t('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->privacy_delete = L10n::t('At any point in time a logged in user can export their account data from the account settings . If the user wants to delete their account they can do so at %1$s/removeme . The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners.', DI::baseUrl());
+ $this->privacy_operate = DI::l10n()->t('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.');
+ $this->privacy_distribute = DI::l10n()->t('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->privacy_delete = DI::l10n()->t('At any point in time a logged in user can export their account data from the account settings . If the user wants to delete their account they can do so at %1$s/removeme . The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners.', DI::baseUrl());
// In some cases we don't need every single one of the above separate, but all in one block.
// So here is an array to look over
- $this->privacy_complete = [L10n::t('Privacy Statement'), $this->privacy_operate, $this->privacy_distribute, $this->privacy_delete];
+ $this->privacy_complete = [DI::l10n()->t('Privacy Statement'), $this->privacy_operate, $this->privacy_distribute, $this->privacy_delete];
}
/**
@@ -70,13 +70,13 @@ class Tos extends BaseModule
$tpl = Renderer::getMarkupTemplate('tos.tpl');
if (Config::get('system', 'tosdisplay')) {
return Renderer::replaceMacros($tpl, [
- '$title' => L10n::t('Terms of Service'),
+ '$title' => DI::l10n()->t('Terms of Service'),
'$tostext' => BBCode::convert(Config::get('system', 'tostext')),
'$displayprivstatement' => Config::get('system', 'tosprivstatement'),
- '$privstatementtitle' => L10n::t('Privacy Statement'),
- '$privacy_operate' => L10n::t('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.'),
- '$privacy_distribute' => L10n::t('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.'),
- '$privacy_delete' => L10n::t('At any point in time a logged in user can export their account data from the account settings . If the user wants to delete their account they can do so at %1$s/removeme . The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners.', DI::baseUrl())
+ '$privstatementtitle' => DI::l10n()->t('Privacy Statement'),
+ '$privacy_operate' => DI::l10n()->t('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.'),
+ '$privacy_distribute' => DI::l10n()->t('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.'),
+ '$privacy_delete' => DI::l10n()->t('At any point in time a logged in user can export their account data from the account settings . If the user wants to delete their account they can do so at %1$s/removeme . The deletion of the account will be permanent. Deletion of the data will also be requested from the nodes of the communication partners.', DI::baseUrl())
]);
} else {
return;
diff --git a/src/Module/Welcome.php b/src/Module/Welcome.php
index 618214633..3e757e7cf 100644
--- a/src/Module/Welcome.php
+++ b/src/Module/Welcome.php
@@ -23,48 +23,48 @@ class Welcome extends BaseModule
$tpl = Renderer::getMarkupTemplate('welcome.tpl');
return Renderer::replaceMacros($tpl, [
- '$welcome' => L10n::t('Welcome to Friendica'),
- '$checklist' => L10n::t('New Member Checklist'),
- '$description' => L10n::t('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.'),
+ '$welcome' => DI::l10n()->t('Welcome to Friendica'),
+ '$checklist' => DI::l10n()->t('New Member Checklist'),
+ '$description' => DI::l10n()->t('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.'),
- '$started' => L10n::t('Getting Started'),
- '$quickstart_link' => L10n::t('Friendica Walk-Through'),
- '$quickstart_txt' => L10n::t('On your Quick Start page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join.'),
+ '$started' => DI::l10n()->t('Getting Started'),
+ '$quickstart_link' => DI::l10n()->t('Friendica Walk-Through'),
+ '$quickstart_txt' => DI::l10n()->t('On your Quick Start page - find a brief introduction to your profile and network tabs, make some new connections, and find some groups to join.'),
- '$settings' => L10n::t('Settings'),
- '$settings_link' => L10n::t('Go to Your Settings'),
- '$settings_txt' => L10n::t('On your Settings 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.'),
- '$settings_other' => L10n::t('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.'),
+ '$settings' => DI::l10n()->t('Settings'),
+ '$settings_link' => DI::l10n()->t('Go to Your Settings'),
+ '$settings_txt' => DI::l10n()->t('On your Settings 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.'),
+ '$settings_other' => DI::l10n()->t('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.'),
- '$profile' => L10n::t('Profile'),
- '$profile_photo_link' => L10n::t('Upload Profile Photo'),
- '$profile_photo_txt' => L10n::t('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.'),
- '$profiles_link' => L10n::t('Edit Your Profile'),
- '$profiles_txt' => L10n::t('Edit your default profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors.'),
- '$profiles_keywords_link' => L10n::t('Profile Keywords'),
- '$profiles_keywords_txt' => L10n::t('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.'),
+ '$profile' => DI::l10n()->t('Profile'),
+ '$profile_photo_link' => DI::l10n()->t('Upload Profile Photo'),
+ '$profile_photo_txt' => DI::l10n()->t('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.'),
+ '$profiles_link' => DI::l10n()->t('Edit Your Profile'),
+ '$profiles_txt' => DI::l10n()->t('Edit your default profile to your liking. Review the settings for hiding your list of friends and hiding the profile from unknown visitors.'),
+ '$profiles_keywords_link' => DI::l10n()->t('Profile Keywords'),
+ '$profiles_keywords_txt' => DI::l10n()->t('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.'),
- '$connecting' => L10n::t('Connecting'),
+ '$connecting' => DI::l10n()->t('Connecting'),
'$mail_disabled' => $mail_disabled,
- '$import_mail_link' => L10n::t('Importing Emails'),
- '$import_mail_txt' => L10n::t('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'),
- '$contact_link' => L10n::t('Go to Your Contacts Page'),
- '$contact_txt' => L10n::t('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 Add New Contact dialog.'),
- '$directory_link' => L10n::t('Go to Your Site\'s Directory'),
- '$directory_txt' => L10n::t('The Directory page lets you find other people in this network or other federated sites. Look for a Connect or Follow link on their profile page. Provide your own Identity Address if requested.'),
- '$finding_link' => L10n::t('Finding New People'),
- '$finding_txt' => L10n::t('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.'),
+ '$import_mail_link' => DI::l10n()->t('Importing Emails'),
+ '$import_mail_txt' => DI::l10n()->t('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'),
+ '$contact_link' => DI::l10n()->t('Go to Your Contacts Page'),
+ '$contact_txt' => DI::l10n()->t('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 Add New Contact dialog.'),
+ '$directory_link' => DI::l10n()->t('Go to Your Site\'s Directory'),
+ '$directory_txt' => DI::l10n()->t('The Directory page lets you find other people in this network or other federated sites. Look for a Connect or Follow link on their profile page. Provide your own Identity Address if requested.'),
+ '$finding_link' => DI::l10n()->t('Finding New People'),
+ '$finding_txt' => DI::l10n()->t('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.'),
- '$groups' => L10n::t('Groups'),
- '$group_contact_link' => L10n::t('Group Your Contacts'),
- '$group_contact_txt' => L10n::t('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.'),
+ '$groups' => DI::l10n()->t('Groups'),
+ '$group_contact_link' => DI::l10n()->t('Group Your Contacts'),
+ '$group_contact_txt' => DI::l10n()->t('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.'),
'$newuser_private' => $newuser_private,
- '$private_link' => L10n::t('Why Aren\'t My Posts Public?'),
- '$private_txt' => L10n::t('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.'),
+ '$private_link' => DI::l10n()->t('Why Aren\'t My Posts Public?'),
+ '$private_txt' => DI::l10n()->t('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.'),
- '$help' => L10n::t('Getting Help'),
- '$help_link' => L10n::t('Go to the Help Section'),
- '$help_txt' => L10n::t('Our help pages may be consulted for detail on other program features and resources.'),
+ '$help' => DI::l10n()->t('Getting Help'),
+ '$help_link' => DI::l10n()->t('Go to the Help Section'),
+ '$help_txt' => DI::l10n()->t('Our help pages may be consulted for detail on other program features and resources.'),
]);
}
}
diff --git a/src/Object/Post.php b/src/Object/Post.php
index 2df5e9a36..efaa68819 100644
--- a/src/Object/Post.php
+++ b/src/Object/Post.php
@@ -130,7 +130,7 @@ class Post
// only if the difference is more than 1 second.
if (strtotime($item['edited']) - strtotime($item['created']) > 1) {
$edited = [
- 'label' => L10n::t('This entry was edited'),
+ 'label' => DI::l10n()->t('This entry was edited'),
'date' => DateTimeFormat::local($item['edited'], 'r'),
'relative' => Temporal::getRelativeDate($item['edited'])
];
@@ -153,7 +153,7 @@ class Post
$lock = ((($item['private'] == 1) || (($item['uid'] == local_user()) && (strlen($item['allow_cid']) || strlen($item['allow_gid'])
|| strlen($item['deny_cid']) || strlen($item['deny_gid']))))
- ? L10n::t('Private Message')
+ ? DI::l10n()->t('Private Message')
: false);
$shareable = in_array($conv->getProfileOwner(), [0, local_user()]) && $item['private'] != 1;
@@ -163,9 +163,9 @@ class Post
if (local_user()) {
if (Strings::compareLink($a->contact['url'], $item['author-link'])) {
if ($item["event-id"] != 0) {
- $edpost = ["events/event/" . $item['event-id'], L10n::t("Edit")];
+ $edpost = ["events/event/" . $item['event-id'], DI::l10n()->t("Edit")];
} else {
- $edpost = ["editpost/" . $item['id'], L10n::t("Edit")];
+ $edpost = ["editpost/" . $item['id'], DI::l10n()->t("Edit")];
}
}
$dropping = in_array($item['uid'], [0, local_user()]);
@@ -192,21 +192,21 @@ class Post
$origin = $parent['origin'];
}
} elseif ($item['pinned']) {
- $pinned = L10n::t('pinned item');
+ $pinned = DI::l10n()->t('pinned item');
}
if ($origin && ($item['id'] != $item['parent']) && ($item['network'] == Protocol::ACTIVITYPUB)) {
// ActivityPub doesn't allow removal of remote comments
- $delete = L10n::t('Delete locally');
+ $delete = DI::l10n()->t('Delete locally');
} else {
// Showing the one or the other text, depending upon if we can only hide it or really delete it.
- $delete = $origin ? L10n::t('Delete globally') : L10n::t('Remove locally');
+ $delete = $origin ? DI::l10n()->t('Delete globally') : DI::l10n()->t('Remove locally');
}
$drop = [
'dropping' => $dropping,
'pagedrop' => $item['pagedrop'],
- 'select' => L10n::t('Select'),
+ 'select' => DI::l10n()->t('Select'),
'delete' => $delete,
];
@@ -214,7 +214,7 @@ class Post
$drop = false;
}
- $filer = (($conv->getProfileOwner() == local_user() && ($item['uid'] != 0)) ? L10n::t("save to folder") : false);
+ $filer = (($conv->getProfileOwner() == local_user() && ($item['uid'] != 0)) ? DI::l10n()->t("save to folder") : false);
$profile_name = $item['author-name'];
if (!empty($item['author-link']) && empty($item['author-name'])) {
@@ -249,7 +249,7 @@ class Post
$response_verbs[] = 'attendmaybe';
if ($conv->isWritable()) {
$isevent = true;
- $attend = [L10n::t('I will attend'), L10n::t('I will not attend'), L10n::t('I might attend')];
+ $attend = [DI::l10n()->t('I will attend'), DI::l10n()->t('I will not attend'), DI::l10n()->t('I might attend')];
}
}
@@ -277,12 +277,12 @@ class Post
$thread = Item::selectFirstThreadForUser(local_user(), ['ignored'], ['iid' => $item['id']]);
if (DBA::isResult($thread)) {
$ignore = [
- 'do' => L10n::t("ignore thread"),
- 'undo' => L10n::t("unignore thread"),
- 'toggle' => L10n::t("toggle ignore status"),
+ 'do' => DI::l10n()->t("ignore thread"),
+ 'undo' => DI::l10n()->t("unignore thread"),
+ 'toggle' => DI::l10n()->t("toggle ignore status"),
'classdo' => $thread['ignored'] ? "hidden" : "",
'classundo' => $thread['ignored'] ? "" : "hidden",
- 'ignored' => L10n::t('ignored'),
+ 'ignored' => DI::l10n()->t('ignored'),
];
}
@@ -291,28 +291,28 @@ class Post
$ispinned = ($item['pinned'] ? 'pinned' : 'unpinned');
$pin = [
- 'do' => L10n::t('pin'),
- 'undo' => L10n::t('unpin'),
- 'toggle' => L10n::t('toggle pin status'),
+ 'do' => DI::l10n()->t('pin'),
+ 'undo' => DI::l10n()->t('unpin'),
+ 'toggle' => DI::l10n()->t('toggle pin status'),
'classdo' => $item['pinned'] ? 'hidden' : '',
'classundo' => $item['pinned'] ? '' : 'hidden',
- 'pinned' => L10n::t('pinned'),
+ 'pinned' => DI::l10n()->t('pinned'),
];
}
$isstarred = (($item['starred']) ? "starred" : "unstarred");
$star = [
- 'do' => L10n::t("add star"),
- 'undo' => L10n::t("remove star"),
- 'toggle' => L10n::t("toggle star status"),
+ 'do' => DI::l10n()->t("add star"),
+ 'undo' => DI::l10n()->t("remove star"),
+ 'toggle' => DI::l10n()->t("toggle star status"),
'classdo' => $item['starred'] ? "hidden" : "",
'classundo' => $item['starred'] ? "" : "hidden",
- 'starred' => L10n::t('starred'),
+ 'starred' => DI::l10n()->t('starred'),
];
$tagger = [
- 'add' => L10n::t("add tag"),
+ 'add' => DI::l10n()->t("add tag"),
'class' => "",
];
}
@@ -323,11 +323,11 @@ class Post
if ($conv->isWritable()) {
$buttons = [
- 'like' => [L10n::t("I like this \x28toggle\x29"), L10n::t("like")],
- 'dislike' => [L10n::t("I don't like this \x28toggle\x29"), L10n::t("dislike")],
+ 'like' => [DI::l10n()->t("I like this \x28toggle\x29"), DI::l10n()->t("like")],
+ 'dislike' => [DI::l10n()->t("I don't like this \x28toggle\x29"), DI::l10n()->t("dislike")],
];
if ($shareable) {
- $buttons['share'] = [L10n::t('Share this'), L10n::t('share')];
+ $buttons['share'] = [DI::l10n()->t('Share this'), DI::l10n()->t('share')];
}
}
@@ -376,7 +376,7 @@ class Post
$ago = Temporal::getRelativeDate($item['created']);
$ago_received = Temporal::getRelativeDate($item['received']);
if (Config::get('system', 'show_received') && (abs(strtotime($item['created']) - strtotime($item['received'])) > Config::get('system', 'show_received_seconds')) && ($ago != $ago_received)) {
- $ago = L10n::t('%s (Received %s)', $ago, $ago_received);
+ $ago = DI::l10n()->t('%s (Received %s)', $ago, $ago_received);
}
$tmp_item = [
@@ -387,8 +387,8 @@ class Post
'hashtags' => $tags['hashtags'],
'mentions' => $tags['mentions'],
'implicit_mentions' => $tags['implicit_mentions'],
- 'txt_cats' => L10n::t('Categories:'),
- 'txt_folders' => L10n::t('Filed under:'),
+ 'txt_cats' => DI::l10n()->t('Categories:'),
+ 'txt_folders' => DI::l10n()->t('Filed under:'),
'has_cats' => ((count($categories)) ? 'true' : ''),
'has_folders' => ((count($folders)) ? 'true' : ''),
'categories' => $categories,
@@ -399,12 +399,12 @@ class Post
'guid' => urlencode($item['guid']),
'isevent' => $isevent,
'attend' => $attend,
- 'linktitle' => L10n::t('View %s\'s profile @ %s', $profile_name, $item['author-link']),
- 'olinktitle' => L10n::t('View %s\'s profile @ %s', $this->getOwnerName(), $item['owner-link']),
- 'to' => L10n::t('to'),
- 'via' => L10n::t('via'),
- 'wall' => L10n::t('Wall-to-Wall'),
- 'vwall' => L10n::t('via Wall-To-Wall:'),
+ 'linktitle' => DI::l10n()->t('View %s\'s profile @ %s', $profile_name, $item['author-link']),
+ 'olinktitle' => DI::l10n()->t('View %s\'s profile @ %s', $this->getOwnerName(), $item['owner-link']),
+ 'to' => DI::l10n()->t('to'),
+ 'via' => DI::l10n()->t('via'),
+ 'wall' => DI::l10n()->t('Wall-to-Wall'),
+ 'vwall' => DI::l10n()->t('via Wall-To-Wall:'),
'profile_url' => $profile_link,
'item_photo_menu' => item_photo_menu($item),
'name' => $name_e,
@@ -413,7 +413,7 @@ class Post
'sparkle' => $sparkle,
'title' => $title_e,
'localtime' => DateTimeFormat::local($item['created'], 'r'),
- 'ago' => $item['app'] ? L10n::t('%s from %s', $ago, $item['app']) : $ago,
+ 'ago' => $item['app'] ? DI::l10n()->t('%s from %s', $ago, $item['app']) : $ago,
'app' => $item['app'],
'created' => $ago,
'lock' => $lock,
@@ -439,11 +439,11 @@ class Post
'like' => $responses['like']['output'],
'dislike' => $responses['dislike']['output'],
'responses' => $responses,
- 'switchcomment' => L10n::t('Comment'),
- 'reply_label' => L10n::t('Reply to %s', $name_e),
+ 'switchcomment' => DI::l10n()->t('Comment'),
+ 'reply_label' => DI::l10n()->t('Reply to %s', $name_e),
'comment' => $comment,
'previewing' => $conv->isPreview() ? ' preview ' : '',
- 'wait' => L10n::t('Please wait'),
+ 'wait' => DI::l10n()->t('Please wait'),
'thread_level' => $thread_level,
'edited' => $edited,
'network' => $item["network"],
@@ -456,11 +456,11 @@ class Post
'delivery' => [
'queue_count' => $item['delivery_queue_count'],
'queue_done' => $item['delivery_queue_done'] + $item['delivery_queue_failed'], /// @todo Possibly display it separately in the future
- 'notifier_pending' => L10n::t('Notifier task is pending'),
- 'delivery_pending' => L10n::t('Delivery to remote servers is pending'),
- 'delivery_underway' => L10n::t('Delivery to remote servers is underway'),
- 'delivery_almost' => L10n::t('Delivery to remote servers is mostly done'),
- 'delivery_done' => L10n::t('Delivery to remote servers is done'),
+ 'notifier_pending' => DI::l10n()->t('Notifier task is pending'),
+ 'delivery_pending' => DI::l10n()->t('Delivery to remote servers is pending'),
+ 'delivery_underway' => DI::l10n()->t('Delivery to remote servers is underway'),
+ 'delivery_almost' => DI::l10n()->t('Delivery to remote servers is mostly done'),
+ 'delivery_done' => DI::l10n()->t('Delivery to remote servers is done'),
],
];
@@ -481,8 +481,8 @@ class Post
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]['show_text'] = L10n::t('Show more');
- $result['children'][0]['hide_text'] = L10n::t('Show fewer');
+ $result['children'][0]['show_text'] = DI::l10n()->t('Show more');
+ $result['children'][0]['hide_text'] = DI::l10n()->t('Show fewer');
if ($thread_level > 1) {
$result['children'][$nb_children - 1]['comment_lastcollapsed'] = true;
} else {
@@ -899,22 +899,22 @@ class Post
'$default' => $default_text,
'$profile_uid' => $uid,
'$mylink' => DI::baseUrl()->remove($a->contact['url']),
- '$mytitle' => L10n::t('This is you'),
+ '$mytitle' => DI::l10n()->t('This is you'),
'$myphoto' => DI::baseUrl()->remove($a->contact['thumb']),
- '$comment' => L10n::t('Comment'),
- '$submit' => L10n::t('Submit'),
- '$edbold' => L10n::t('Bold'),
- '$editalic' => L10n::t('Italic'),
- '$eduline' => L10n::t('Underline'),
- '$edquote' => L10n::t('Quote'),
- '$edcode' => L10n::t('Code'),
- '$edimg' => L10n::t('Image'),
- '$edurl' => L10n::t('Link'),
- '$edattach' => L10n::t('Link or Media'),
- '$prompttext' => L10n::t('Please enter a image/video/audio/webpage URL:'),
- '$preview' => L10n::t('Preview'),
+ '$comment' => DI::l10n()->t('Comment'),
+ '$submit' => DI::l10n()->t('Submit'),
+ '$edbold' => DI::l10n()->t('Bold'),
+ '$editalic' => DI::l10n()->t('Italic'),
+ '$eduline' => DI::l10n()->t('Underline'),
+ '$edquote' => DI::l10n()->t('Quote'),
+ '$edcode' => DI::l10n()->t('Code'),
+ '$edimg' => DI::l10n()->t('Image'),
+ '$edurl' => DI::l10n()->t('Link'),
+ '$edattach' => DI::l10n()->t('Link or Media'),
+ '$prompttext' => DI::l10n()->t('Please enter a image/video/audio/webpage URL:'),
+ '$preview' => DI::l10n()->t('Preview'),
'$indent' => $indent,
- '$sourceapp' => L10n::t($a->sourcename),
+ '$sourceapp' => DI::l10n()->t($a->sourcename),
'$ww' => $conv->getMode() === 'network' ? $ww : '',
'$rand_num' => Crypto::randomDigits(12)
]);
diff --git a/src/Protocol/Diaspora.php b/src/Protocol/Diaspora.php
index 8a9408537..e0780c78b 100644
--- a/src/Protocol/Diaspora.php
+++ b/src/Protocol/Diaspora.php
@@ -3574,7 +3574,7 @@ class Diaspora
if ($item["attach"]) {
$cnt = preg_match_all('/href=\"(.*?)\"(.*?)title=\"(.*?)\"/ism', $item["attach"], $matches, PREG_SET_ORDER);
if ($cnt) {
- $body .= "\n".L10n::t("Attachments:")."\n";
+ $body .= "\n".DI::l10n()->t("Attachments:")."\n";
foreach ($matches as $mtch) {
$body .= "[".$mtch[3]."](".$mtch[1].")\n";
}
diff --git a/src/Protocol/OStatus.php b/src/Protocol/OStatus.php
index a250d35bc..53eab4966 100644
--- a/src/Protocol/OStatus.php
+++ b/src/Protocol/OStatus.php
@@ -1270,14 +1270,14 @@ class OStatus
$selfUri = '/feed/' . $owner["nick"] . '/';
switch ($filter) {
case 'activity':
- $title = L10n::t('%s\'s timeline', $owner['name']);
+ $title = DI::l10n()->t('%s\'s timeline', $owner['name']);
$selfUri .= $filter;
break;
case 'posts':
- $title = L10n::t('%s\'s posts', $owner['name']);
+ $title = DI::l10n()->t('%s\'s posts', $owner['name']);
break;
case 'comments':
- $title = L10n::t('%s\'s comments', $owner['name']);
+ $title = DI::l10n()->t('%s\'s comments', $owner['name']);
$selfUri .= $filter;
break;
}
@@ -1832,12 +1832,12 @@ class OStatus
}
if ($item['verb'] == Activity::FOLLOW) {
- $message = L10n::t('%s is now following %s.');
- $title = L10n::t('following');
+ $message = DI::l10n()->t('%s is now following %s.');
+ $title = DI::l10n()->t('following');
$action = "subscription";
} else {
- $message = L10n::t('%s stopped following %s.');
- $title = L10n::t('stopped following');
+ $message = DI::l10n()->t('%s stopped following %s.');
+ $title = DI::l10n()->t('stopped following');
$action = "unfollow";
}
diff --git a/src/Util/Temporal.php b/src/Util/Temporal.php
index 729dc6e34..75211a092 100644
--- a/src/Util/Temporal.php
+++ b/src/Util/Temporal.php
@@ -27,21 +27,21 @@ class Temporal
private static function timezoneCompareCallback($a, $b)
{
if (strstr($a, '/') && strstr($b, '/')) {
- if (L10n::t($a) == L10n::t($b)) {
+ if (DI::l10n()->t($a) == DI::l10n()->t($b)) {
return 0;
}
- return (L10n::t($a) < L10n::t($b)) ? -1 : 1;
+ return (DI::l10n()->t($a) < DI::l10n()->t($b)) ? -1 : 1;
}
if (strstr($a, '/')) {
return -1;
} elseif (strstr($b, '/')) {
return 1;
- } elseif (L10n::t($a) == L10n::t($b)) {
+ } elseif (DI::l10n()->t($a) == DI::l10n()->t($b)) {
return 0;
}
- return (L10n::t($a) < L10n::t($b)) ? -1 : 1;
+ return (DI::l10n()->t($a) < DI::l10n()->t($b)) ? -1 : 1;
}
/**
@@ -66,7 +66,7 @@ class Temporal
$o .= '';
}
$continent = $ex[0];
- $o .= '';
+ $o .= '';
}
if (count($ex) > 2) {
$city = substr($value, strpos($value, '/') + 1);
@@ -75,13 +75,13 @@ class Temporal
}
} else {
$city = $ex[0];
- if ($continent != L10n::t('Miscellaneous')) {
+ if ($continent != DI::l10n()->t('Miscellaneous')) {
$o .= ' ';
- $continent = L10n::t('Miscellaneous');
- $o .= '';
+ $continent = DI::l10n()->t('Miscellaneous');
+ $o .= '';
}
}
- $city = str_replace('_', ' ', L10n::t($city));
+ $city = str_replace('_', ' ', DI::l10n()->t($city));
$selected = (($value == $current) ? " selected=\"selected\" " : "");
$o .= "$city ";
}
@@ -142,11 +142,11 @@ class Temporal
[
'$field' => [
'dob',
- L10n::t('Birthday:'),
+ DI::l10n()->t('Birthday:'),
$value,
- intval($age) > 0 ? L10n::t('Age: ') . $age : "",
+ intval($age) > 0 ? DI::l10n()->t('Age: ') . $age : "",
'',
- 'placeholder="' . L10n::t('YYYY-MM-DD or MM-DD') . '"'
+ 'placeholder="' . DI::l10n()->t('YYYY-MM-DD or MM-DD') . '"'
]
]);
@@ -293,14 +293,14 @@ class Temporal
$abs = strtotime($localtime);
if (is_null($posted_date) || $posted_date <= DBA::NULL_DATETIME || $abs === false) {
- return L10n::t('never');
+ return DI::l10n()->t('never');
}
$isfuture = false;
$etime = time() - $abs;
if ($etime < 1 && $etime >= 0) {
- return L10n::t('less than a second ago');
+ return DI::l10n()->t('less than a second ago');
}
if ($etime < 0){
@@ -308,13 +308,13 @@ class Temporal
$isfuture = true;
}
- $a = [12 * 30 * 24 * 60 * 60 => [L10n::t('year'), L10n::t('years')],
- 30 * 24 * 60 * 60 => [L10n::t('month'), L10n::t('months')],
- 7 * 24 * 60 * 60 => [L10n::t('week'), L10n::t('weeks')],
- 24 * 60 * 60 => [L10n::t('day'), L10n::t('days')],
- 60 * 60 => [L10n::t('hour'), L10n::t('hours')],
- 60 => [L10n::t('minute'), L10n::t('minutes')],
- 1 => [L10n::t('second'), L10n::t('seconds')]
+ $a = [12 * 30 * 24 * 60 * 60 => [DI::l10n()->t('year'), DI::l10n()->t('years')],
+ 30 * 24 * 60 * 60 => [DI::l10n()->t('month'), DI::l10n()->t('months')],
+ 7 * 24 * 60 * 60 => [DI::l10n()->t('week'), DI::l10n()->t('weeks')],
+ 24 * 60 * 60 => [DI::l10n()->t('day'), DI::l10n()->t('days')],
+ 60 * 60 => [DI::l10n()->t('hour'), DI::l10n()->t('hours')],
+ 60 => [DI::l10n()->t('minute'), DI::l10n()->t('minutes')],
+ 1 => [DI::l10n()->t('second'), DI::l10n()->t('seconds')]
];
foreach ($a as $secs => $str) {
@@ -324,10 +324,10 @@ class Temporal
// translators - e.g. 22 hours ago, 1 minute ago
if (!$format) {
if($isfuture){
- $format = L10n::t('in %1$d %2$s');
+ $format = DI::l10n()->t('in %1$d %2$s');
}
else {
- $format = L10n::t('%1$d %2$s ago');
+ $format = DI::l10n()->t('%1$d %2$s ago');
}
}
diff --git a/src/Worker/Delivery.php b/src/Worker/Delivery.php
index 5e44e940c..8c3fbb8ba 100644
--- a/src/Worker/Delivery.php
+++ b/src/Worker/Delivery.php
@@ -537,7 +537,7 @@ class Delivery
$reply_to = $mailacct['reply_to'];
}
- $subject = ($target_item['title'] ? Email::encodeHeader($target_item['title'], 'UTF-8') : L10n::t("\x28no subject\x29"));
+ $subject = ($target_item['title'] ? Email::encodeHeader($target_item['title'], 'UTF-8') : DI::l10n()->t("\x28no subject\x29"));
// only expose our real email address to true friends
diff --git a/tests/src/Core/InstallerTest.php b/tests/src/Core/InstallerTest.php
index 370373850..23212665d 100644
--- a/tests/src/Core/InstallerTest.php
+++ b/tests/src/Core/InstallerTest.php
@@ -46,7 +46,7 @@ class InstallerTest extends MockedTest
}
/**
- * Mocking the L10n::t() calls for the function checks
+ * Mocking the DI::l10n()->t() calls for the function checks
*/
private function mockFunctionL10TCalls()
{
diff --git a/update.php b/update.php
index 6c902ab85..330e6da10 100644
--- a/update.php
+++ b/update.php
@@ -215,7 +215,7 @@ function update_1260()
Config::set(
'system',
'maintenance_reason',
- L10n::t(
+ DI::l10n()->t(
'%s: Updating author-id and owner-id in item and thread table. ',
DateTimeFormat::utcNow().' '.date('e')
)
@@ -270,7 +270,7 @@ function update_1278()
Config::set(
'system',
'maintenance_reason',
- L10n::t(
+ DI::l10n()->t(
'%s: Updating post-type.',
DateTimeFormat::utcNow().' '.date('e')
)
diff --git a/view/theme/duepuntozero/config.php b/view/theme/duepuntozero/config.php
index 574e25648..68d005d31 100644
--- a/view/theme/duepuntozero/config.php
+++ b/view/theme/duepuntozero/config.php
@@ -51,13 +51,13 @@ function theme_admin_post(App $a)
function clean_form(App $a, &$colorset, $user)
{
$colorset = [
- 'default' => L10n::t('default'),
- 'greenzero' => L10n::t('greenzero'),
- 'purplezero' => L10n::t('purplezero'),
- 'easterbunny' => L10n::t('easterbunny'),
- 'darkzero' => L10n::t('darkzero'),
- 'comix' => L10n::t('comix'),
- 'slackr' => L10n::t('slackr'),
+ 'default' => DI::l10n()->t('default'),
+ 'greenzero' => DI::l10n()->t('greenzero'),
+ 'purplezero' => DI::l10n()->t('purplezero'),
+ 'easterbunny' => DI::l10n()->t('easterbunny'),
+ 'darkzero' => DI::l10n()->t('darkzero'),
+ 'comix' => DI::l10n()->t('comix'),
+ 'slackr' => DI::l10n()->t('slackr'),
];
if ($user) {
@@ -68,9 +68,9 @@ function clean_form(App $a, &$colorset, $user)
$t = Renderer::getMarkupTemplate("theme_settings.tpl");
$o = Renderer::replaceMacros($t, [
- '$submit' => L10n::t('Submit'),
- '$title' => L10n::t("Theme settings"),
- '$colorset' => ['duepuntozero_colorset', L10n::t('Variations'), $color, '', $colorset],
+ '$submit' => DI::l10n()->t('Submit'),
+ '$title' => DI::l10n()->t("Theme settings"),
+ '$colorset' => ['duepuntozero_colorset', DI::l10n()->t('Variations'), $color, '', $colorset],
]);
return $o;
diff --git a/view/theme/frio/config.php b/view/theme/frio/config.php
index 899cbfbc1..c7b016df9 100644
--- a/view/theme/frio/config.php
+++ b/view/theme/frio/config.php
@@ -107,7 +107,7 @@ function frio_form($arr)
}
$scheme_choices = [];
- $scheme_choices['---'] = L10n::t('Custom');
+ $scheme_choices['---'] = DI::l10n()->t('Custom');
$files = glob('view/theme/frio/scheme/*.php');
if ($files) {
foreach ($files as $file) {
@@ -119,31 +119,31 @@ function frio_form($arr)
}
}
- $background_image_help = '' . L10n::t('Note') . ': ' . L10n::t('Check image permissions if all users are allowed to see the image');
+ $background_image_help = '' . DI::l10n()->t('Note') . ': ' . DI::l10n()->t('Check image permissions if all users are allowed to see the image');
$t = Renderer::getMarkupTemplate('theme_settings.tpl');
$ctx = [
- '$submit' => L10n::t('Submit'),
- '$title' => L10n::t('Theme settings'),
- '$scheme' => ['frio_scheme', L10n::t('Select color scheme'), $arr['scheme'], '', $scheme_choices],
- '$share_string' => ['frio_share_string', L10n::t('Copy or paste schemestring'), $arr['share_string'], L10n::t('You can copy this string to share your theme with others. Pasting here applies the schemestring'), false, false],
- '$nav_bg' => array_key_exists('nav_bg', $disable) ? '' : ['frio_nav_bg', L10n::t('Navigation bar background color'), $arr['nav_bg'], '', false],
- '$nav_icon_color' => array_key_exists('nav_icon_color', $disable) ? '' : ['frio_nav_icon_color', L10n::t('Navigation bar icon color '), $arr['nav_icon_color'], '', false],
- '$link_color' => array_key_exists('link_color', $disable) ? '' : ['frio_link_color', L10n::t('Link color'), $arr['link_color'], '', false],
- '$background_color' => array_key_exists('background_color', $disable) ? '' : ['frio_background_color', L10n::t('Set the background color'), $arr['background_color'], '', false],
- '$contentbg_transp' => array_key_exists('contentbg_transp', $disable) ? '' : ['frio_contentbg_transp', L10n::t('Content background opacity'), ($arr['contentbg_transp'] ?? 0) ?: 100, ''],
- '$background_image' => array_key_exists('background_image', $disable) ? '' : ['frio_background_image', L10n::t('Set the background image'), $arr['background_image'], $background_image_help, false],
- '$bg_image_options_title' => L10n::t('Background image style'),
+ '$submit' => DI::l10n()->t('Submit'),
+ '$title' => DI::l10n()->t('Theme settings'),
+ '$scheme' => ['frio_scheme', DI::l10n()->t('Select color scheme'), $arr['scheme'], '', $scheme_choices],
+ '$share_string' => ['frio_share_string', DI::l10n()->t('Copy or paste schemestring'), $arr['share_string'], DI::l10n()->t('You can copy this string to share your theme with others. Pasting here applies the schemestring'), false, false],
+ '$nav_bg' => array_key_exists('nav_bg', $disable) ? '' : ['frio_nav_bg', DI::l10n()->t('Navigation bar background color'), $arr['nav_bg'], '', false],
+ '$nav_icon_color' => array_key_exists('nav_icon_color', $disable) ? '' : ['frio_nav_icon_color', DI::l10n()->t('Navigation bar icon color '), $arr['nav_icon_color'], '', false],
+ '$link_color' => array_key_exists('link_color', $disable) ? '' : ['frio_link_color', DI::l10n()->t('Link color'), $arr['link_color'], '', false],
+ '$background_color' => array_key_exists('background_color', $disable) ? '' : ['frio_background_color', DI::l10n()->t('Set the background color'), $arr['background_color'], '', false],
+ '$contentbg_transp' => array_key_exists('contentbg_transp', $disable) ? '' : ['frio_contentbg_transp', DI::l10n()->t('Content background opacity'), ($arr['contentbg_transp'] ?? 0) ?: 100, ''],
+ '$background_image' => array_key_exists('background_image', $disable) ? '' : ['frio_background_image', DI::l10n()->t('Set the background image'), $arr['background_image'], $background_image_help, false],
+ '$bg_image_options_title' => DI::l10n()->t('Background image style'),
'$bg_image_options' => Image::get_options($arr),
- '$enable_compose' => ['frio_enable_compose', L10n::t('Enable Compose page'), $arr['enable_compose'], L10n::t('This replaces the jot modal window for writing new posts with a link to the new Compose page .')],
+ '$enable_compose' => ['frio_enable_compose', DI::l10n()->t('Enable Compose page'), $arr['enable_compose'], DI::l10n()->t('This replaces the jot modal window for writing new posts with a link to the new Compose page .')],
];
if (array_key_exists('login_bg_image', $arr) && !array_key_exists('login_bg_image', $disable)) {
- $ctx['$login_bg_image'] = ['frio_login_bg_image', L10n::t('Login page background image'), $arr['login_bg_image'], $background_image_help, false];
+ $ctx['$login_bg_image'] = ['frio_login_bg_image', DI::l10n()->t('Login page background image'), $arr['login_bg_image'], $background_image_help, false];
}
if (array_key_exists('login_bg_color', $arr) && !array_key_exists('login_bg_color', $disable)) {
- $ctx['$login_bg_color'] = ['frio_login_bg_color', L10n::t('Login page background color'), $arr['login_bg_color'], L10n::t('Leave background image and color empty for theme defaults'), false];
+ $ctx['$login_bg_color'] = ['frio_login_bg_color', DI::l10n()->t('Login page background color'), $arr['login_bg_color'], DI::l10n()->t('Leave background image and color empty for theme defaults'), false];
}
$o = Renderer::replaceMacros($t, $ctx);
diff --git a/view/theme/frio/php/Image.php b/view/theme/frio/php/Image.php
index 34e9fc210..7d0c6092d 100644
--- a/view/theme/frio/php/Image.php
+++ b/view/theme/frio/php/Image.php
@@ -21,10 +21,10 @@ class Image
public static function get_options($arr)
{
$bg_image_options = [
- 'stretch' => ['frio_bg_image_option', L10n::t('Top Banner'), 'stretch', L10n::t('Resize image to the width of the screen and show background color below on long pages.'), ($arr['bg_image_option'] == 'stretch')],
- 'cover' => ['frio_bg_image_option', L10n::t('Full screen'), 'cover', L10n::t('Resize image to fill entire screen, clipping either the right or the bottom.'), ($arr['bg_image_option'] == 'cover')],
- 'contain' => ['frio_bg_image_option', L10n::t('Single row mosaic'), 'contain', L10n::t('Resize image to repeat it on a single row, either vertical or horizontal.'), ($arr['bg_image_option'] == 'contain')],
- 'repeat' => ['frio_bg_image_option', L10n::t('Mosaic'), 'repeat', L10n::t('Repeat image to fill the screen.'), ($arr['bg_image_option'] == 'repeat')],
+ 'stretch' => ['frio_bg_image_option', DI::l10n()->t('Top Banner'), 'stretch', DI::l10n()->t('Resize image to the width of the screen and show background color below on long pages.'), ($arr['bg_image_option'] == 'stretch')],
+ 'cover' => ['frio_bg_image_option', DI::l10n()->t('Full screen'), 'cover', DI::l10n()->t('Resize image to fill entire screen, clipping either the right or the bottom.'), ($arr['bg_image_option'] == 'cover')],
+ 'contain' => ['frio_bg_image_option', DI::l10n()->t('Single row mosaic'), 'contain', DI::l10n()->t('Resize image to repeat it on a single row, either vertical or horizontal.'), ($arr['bg_image_option'] == 'contain')],
+ 'repeat' => ['frio_bg_image_option', DI::l10n()->t('Mosaic'), 'repeat', DI::l10n()->t('Repeat image to fill the screen.'), ($arr['bg_image_option'] == 'repeat')],
];
return $bg_image_options;
diff --git a/view/theme/frio/theme.php b/view/theme/frio/theme.php
index 88e786ed7..89f40a662 100644
--- a/view/theme/frio/theme.php
+++ b/view/theme/frio/theme.php
@@ -244,12 +244,12 @@ function frio_remote_nav($a, &$nav)
$r[0]['name'] = $a->user['username'];
} elseif (!local_user() && remote_user()) {
$r = q("SELECT `name`, `nick`, `micro` AS `photo` FROM `contact` WHERE `id` = %d", intval(remote_user()));
- $nav['remote'] = L10n::t('Guest');
+ $nav['remote'] = DI::l10n()->t('Guest');
} elseif (Model\Profile::getMyURL()) {
$r = q("SELECT `name`, `nick`, `photo` FROM `gcontact`
WHERE `addr` = '%s' AND `network` = 'dfrn'",
DBA::escape($webbie));
- $nav['remote'] = L10n::t('Visitor');
+ $nav['remote'] = DI::l10n()->t('Visitor');
} else {
$r = false;
}
@@ -265,18 +265,18 @@ function frio_remote_nav($a, &$nav)
if (!local_user() && !empty($server_url) && !is_null($remoteUser)) {
// user menu
- $nav['usermenu'][] = [$server_url . '/profile/' . $remoteUser['nick'], L10n::t('Status'), '', L10n::t('Your posts and conversations')];
- $nav['usermenu'][] = [$server_url . '/profile/' . $remoteUser['nick'] . '?tab=profile', L10n::t('Profile'), '', L10n::t('Your profile page')];
- $nav['usermenu'][] = [$server_url . '/photos/' . $remoteUser['nick'], L10n::t('Photos'), '', L10n::t('Your photos')];
- $nav['usermenu'][] = [$server_url . '/videos/' . $remoteUser['nick'], L10n::t('Videos'), '', L10n::t('Your videos')];
- $nav['usermenu'][] = [$server_url . '/events/', L10n::t('Events'), '', L10n::t('Your events')];
+ $nav['usermenu'][] = [$server_url . '/profile/' . $remoteUser['nick'], DI::l10n()->t('Status'), '', DI::l10n()->t('Your posts and conversations')];
+ $nav['usermenu'][] = [$server_url . '/profile/' . $remoteUser['nick'] . '?tab=profile', DI::l10n()->t('Profile'), '', DI::l10n()->t('Your profile page')];
+ $nav['usermenu'][] = [$server_url . '/photos/' . $remoteUser['nick'], DI::l10n()->t('Photos'), '', DI::l10n()->t('Your photos')];
+ $nav['usermenu'][] = [$server_url . '/videos/' . $remoteUser['nick'], DI::l10n()->t('Videos'), '', DI::l10n()->t('Your videos')];
+ $nav['usermenu'][] = [$server_url . '/events/', DI::l10n()->t('Events'), '', DI::l10n()->t('Your events')];
// navbar links
- $nav['network'] = [$server_url . '/network', L10n::t('Network'), '', L10n::t('Conversations from your friends')];
- $nav['events'] = [$server_url . '/events', L10n::t('Events'), '', L10n::t('Events and Calendar')];
- $nav['messages'] = [$server_url . '/message', L10n::t('Messages'), '', L10n::t('Private mail')];
- $nav['settings'] = [$server_url . '/settings', L10n::t('Settings'), '', L10n::t('Account settings')];
- $nav['contacts'] = [$server_url . '/contact', L10n::t('Contacts'), '', L10n::t('Manage/edit friends and contacts')];
+ $nav['network'] = [$server_url . '/network', DI::l10n()->t('Network'), '', DI::l10n()->t('Conversations from your friends')];
+ $nav['events'] = [$server_url . '/events', DI::l10n()->t('Events'), '', DI::l10n()->t('Events and Calendar')];
+ $nav['messages'] = [$server_url . '/message', DI::l10n()->t('Messages'), '', DI::l10n()->t('Private mail')];
+ $nav['settings'] = [$server_url . '/settings', DI::l10n()->t('Settings'), '', DI::l10n()->t('Account settings')];
+ $nav['contacts'] = [$server_url . '/contact', DI::l10n()->t('Contacts'), '', DI::l10n()->t('Manage/edit friends and contacts')];
$nav['sitename'] = Config::get('config', 'sitename');
}
}
@@ -361,7 +361,7 @@ function frio_display_item(App $a, &$arr)
{
$subthread = [
'menu' => 'follow_thread',
- 'title' => L10n::t('Follow Thread'),
+ 'title' => DI::l10n()->t('Follow Thread'),
'action' => 'dosubthread(' . $arr['item']['id'] . '); return false;',
'href' => '#'
];
diff --git a/view/theme/quattro/config.php b/view/theme/quattro/config.php
index eb6c5d0aa..4dcb3e207 100644
--- a/view/theme/quattro/config.php
+++ b/view/theme/quattro/config.php
@@ -70,12 +70,12 @@ function quattro_form(App $a, $align, $color, $tfs, $pfs) {
$t = Renderer::getMarkupTemplate("theme_settings.tpl" );
$o = Renderer::replaceMacros($t, [
- '$submit' => L10n::t('Submit'),
- '$title' => L10n::t("Theme settings"),
- '$align' => ['quattro_align', L10n::t('Alignment'), $align, '', ['left' => L10n::t('Left'), 'center' => L10n::t('Center')]],
- '$color' => ['quattro_color', L10n::t('Color scheme'), $color, '', $colors],
- '$pfs' => ['quattro_pfs', L10n::t('Posts font size'), $pfs],
- '$tfs' => ['quattro_tfs', L10n::t('Textareas font size'), $tfs],
+ '$submit' => DI::l10n()->t('Submit'),
+ '$title' => DI::l10n()->t("Theme settings"),
+ '$align' => ['quattro_align', DI::l10n()->t('Alignment'), $align, '', ['left' => DI::l10n()->t('Left'), 'center' => DI::l10n()->t('Center')]],
+ '$color' => ['quattro_color', DI::l10n()->t('Color scheme'), $color, '', $colors],
+ '$pfs' => ['quattro_pfs', DI::l10n()->t('Posts font size'), $pfs],
+ '$tfs' => ['quattro_tfs', DI::l10n()->t('Textareas font size'), $tfs],
]);
return $o;
}
diff --git a/view/theme/vier/config.php b/view/theme/vier/config.php
index 9bcf4cffc..cc0168748 100644
--- a/view/theme/vier/config.php
+++ b/view/theme/vier/config.php
@@ -74,7 +74,7 @@ function theme_admin(App $a) {
$t = Renderer::getMarkupTemplate("theme_admin_settings.tpl");
$o = Renderer::replaceMacros($t, [
- '$helperlist' => ['vier_helperlist', L10n::t('Comma separated list of helper forums'), $helperlist, '', ''],
+ '$helperlist' => ['vier_helperlist', DI::l10n()->t('Comma separated list of helper forums'), $helperlist, '', ''],
]);
$show_pages = get_vier_config('show_pages', true, true);
@@ -114,19 +114,19 @@ function vier_form(App $a, $style, $show_pages, $show_profiles, $show_helpers, $
"shadow"=>"Shadow"
];
- $show_or_not = ['0' => L10n::t("don't show"), '1' => L10n::t("show"),];
+ $show_or_not = ['0' => DI::l10n()->t("don't show"), '1' => DI::l10n()->t("show"),];
$t = Renderer::getMarkupTemplate("theme_settings.tpl");
$o = Renderer::replaceMacros($t, [
- '$submit' => L10n::t('Submit'),
- '$title' => L10n::t("Theme settings"),
- '$style' => ['vier_style', L10n::t('Set style'), $style, '', $styles],
- '$show_pages' => ['vier_show_pages', L10n::t('Community Pages'), $show_pages, '', $show_or_not],
- '$show_profiles' => ['vier_show_profiles', L10n::t('Community Profiles'), $show_profiles, '', $show_or_not],
- '$show_helpers' => ['vier_show_helpers', L10n::t('Help or @NewHere ?'), $show_helpers, '', $show_or_not],
- '$show_services' => ['vier_show_services', L10n::t('Connect Services'), $show_services, '', $show_or_not],
- '$show_friends' => ['vier_show_friends', L10n::t('Find Friends'), $show_friends, '', $show_or_not],
- '$show_lastusers' => ['vier_show_lastusers', L10n::t('Last users'), $show_lastusers, '', $show_or_not]
+ '$submit' => DI::l10n()->t('Submit'),
+ '$title' => DI::l10n()->t("Theme settings"),
+ '$style' => ['vier_style', DI::l10n()->t('Set style'), $style, '', $styles],
+ '$show_pages' => ['vier_show_pages', DI::l10n()->t('Community Pages'), $show_pages, '', $show_or_not],
+ '$show_profiles' => ['vier_show_profiles', DI::l10n()->t('Community Profiles'), $show_profiles, '', $show_or_not],
+ '$show_helpers' => ['vier_show_helpers', DI::l10n()->t('Help or @NewHere ?'), $show_helpers, '', $show_or_not],
+ '$show_services' => ['vier_show_services', DI::l10n()->t('Connect Services'), $show_services, '', $show_or_not],
+ '$show_friends' => ['vier_show_friends', DI::l10n()->t('Find Friends'), $show_friends, '', $show_or_not],
+ '$show_lastusers' => ['vier_show_lastusers', DI::l10n()->t('Last users'), $show_lastusers, '', $show_or_not]
]);
return $o;
}
diff --git a/view/theme/vier/theme.php b/view/theme/vier/theme.php
index e7318902a..aac2ec02d 100644
--- a/view/theme/vier/theme.php
+++ b/view/theme/vier/theme.php
@@ -125,7 +125,7 @@ function vier_community_info()
$tpl = Renderer::getMarkupTemplate('ch_directory_item.tpl');
if (DBA::isResult($r)) {
- $aside['$comunity_profiles_title'] = L10n::t('Community Profiles');
+ $aside['$comunity_profiles_title'] = DI::l10n()->t('Community Profiles');
$aside['$comunity_profiles_items'] = [];
foreach ($r as $rr) {
@@ -155,7 +155,7 @@ function vier_community_info()
);
if (DBA::isResult($r)) {
- $aside['$lastusers_title'] = L10n::t('Last users');
+ $aside['$lastusers_title'] = DI::l10n()->t('Last users');
$aside['$lastusers_items'] = [];
foreach ($r as $rr) {
@@ -173,18 +173,18 @@ function vier_community_info()
//right_aside FIND FRIENDS
if ($show_friends && local_user()) {
$nv = [];
- $nv['findpeople'] = L10n::t('Find People');
- $nv['desc'] = L10n::t('Enter name or interest');
- $nv['label'] = L10n::t('Connect/Follow');
- $nv['hint'] = L10n::t('Examples: Robert Morgenstein, Fishing');
- $nv['findthem'] = L10n::t('Find');
- $nv['suggest'] = L10n::t('Friend Suggestions');
- $nv['similar'] = L10n::t('Similar Interests');
- $nv['random'] = L10n::t('Random Profile');
- $nv['inv'] = L10n::t('Invite Friends');
- $nv['directory'] = L10n::t('Global Directory');
+ $nv['findpeople'] = DI::l10n()->t('Find People');
+ $nv['desc'] = DI::l10n()->t('Enter name or interest');
+ $nv['label'] = DI::l10n()->t('Connect/Follow');
+ $nv['hint'] = DI::l10n()->t('Examples: Robert Morgenstein, Fishing');
+ $nv['findthem'] = DI::l10n()->t('Find');
+ $nv['suggest'] = DI::l10n()->t('Friend Suggestions');
+ $nv['similar'] = DI::l10n()->t('Similar Interests');
+ $nv['random'] = DI::l10n()->t('Random Profile');
+ $nv['inv'] = DI::l10n()->t('Invite Friends');
+ $nv['directory'] = DI::l10n()->t('Global Directory');
$nv['global_dir'] = Search::getGlobalDirectory();
- $nv['local_directory'] = L10n::t('Local Directory');
+ $nv['local_directory'] = DI::l10n()->t('Local Directory');
$aside['$nv'] = $nv;
}
@@ -224,12 +224,12 @@ function vier_community_info()
$page = Renderer::replaceMacros(
$tpl,
[
- '$title' => L10n::t('Forums'),
+ '$title' => DI::l10n()->t('Forums'),
'$forums' => $entries,
- '$link_desc' => L10n::t('External link to forum'),
+ '$link_desc' => DI::l10n()->t('External link to forum'),
'$total' => $total,
'$visible_forums' => $visible_forums,
- '$showmore' => L10n::t('show more')]
+ '$showmore' => DI::l10n()->t('show more')]
);
$aside['$page'] = $page;
@@ -262,13 +262,13 @@ function vier_community_info()
$r[$index]["url"] = Contact::magicLink($helper["url"]);
}
- $r[] = ["url" => "help/Quick-Start-guide", "name" => L10n::t("Quick Start")];
+ $r[] = ["url" => "help/Quick-Start-guide", "name" => DI::l10n()->t("Quick Start")];
$tpl = Renderer::getMarkupTemplate('ch_helpers.tpl');
if ($r) {
$helpers = [];
- $helpers['title'] = ["", L10n::t('Help'), "", ""];
+ $helpers['title'] = ["", DI::l10n()->t('Help'), "", ""];
$aside['$helpers_items'] = [];
@@ -347,7 +347,7 @@ function vier_community_info()
if (DBA::isResult($r)) {
$con_services = [];
- $con_services['title'] = ["", L10n::t('Connect Services'), "", ""];
+ $con_services['title'] = ["", DI::l10n()->t('Connect Services'), "", ""];
$aside['$con_services'] = $con_services;
foreach ($r as $rr) {
From a9a36fb3029c9a5d595aa28a9f0a79f441d1b121 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 20:53:01 +0100
Subject: [PATCH 02/16] Move L10n::tt() calls to DI::l10n()->tt() calls
---
doc/translations.md | 12 ++++++------
include/api.php | 4 ++--
include/conversation.php | 10 +++++-----
mod/dfrn_request.php | 4 ++--
mod/message.php | 2 +-
mod/network.php | 2 +-
src/Content/Widget.php | 4 ++--
src/Content/Widget/ContactBlock.php | 2 +-
src/Content/Widget/TrendingTags.php | 2 +-
src/Core/L10n.php | 4 ++--
src/Core/L10n/L10n.php | 4 ++--
src/Core/UserImport.php | 2 +-
src/Model/User.php | 4 ++--
src/Module/Admin/Blocklist/Contact.php | 4 ++--
src/Module/Admin/Users.php | 6 +++---
src/Module/Contact.php | 2 +-
src/Module/Invite.php | 2 +-
src/Module/Profile/Contacts.php | 8 ++++----
src/Module/Security/TwoFactor/Verify.php | 2 +-
src/Object/Post.php | 4 ++--
20 files changed, 42 insertions(+), 42 deletions(-)
diff --git a/doc/translations.md b/doc/translations.md
index c1bd3ce88..f12f07065 100644
--- a/doc/translations.md
+++ b/doc/translations.md
@@ -78,9 +78,9 @@ Then run `bin/console po2php view/lang//messages.po` to update the rel
### Plural
-- `Friendica\Core\L10n::tt('Label', 'Labels', 1)` => `Label`
-- `Friendica\Core\L10n::tt('Label', 'Labels', 3)` => `Labels`
-- `Friendica\Core\L10n::tt('%d Label', '%d Labels', 1)` => `1 Label`
-- `Friendica\Core\L10n::tt('%d Label', '%d Labels', 3)` => `3 Labels`
-- `Friendica\Core\L10n::tt('%d Label', 'Labels %2%s %3%s', 1, 'test', 'test2')` => `Label test test2`
-- `Friendica\Core\L10n::tt('%d Label', 'Labels %2%s %3%s', 3, 'test', 'test2')` => `Labels test test2`
+- `Friendica\Core\DI::l10n()->tt('Label', 'Labels', 1)` => `Label`
+- `Friendica\Core\DI::l10n()->tt('Label', 'Labels', 3)` => `Labels`
+- `Friendica\Core\DI::l10n()->tt('%d Label', '%d Labels', 1)` => `1 Label`
+- `Friendica\Core\DI::l10n()->tt('%d Label', '%d Labels', 3)` => `3 Labels`
+- `Friendica\Core\DI::l10n()->tt('%d Label', 'Labels %2%s %3%s', 1, 'test', 'test2')` => `Label test test2`
+- `Friendica\Core\DI::l10n()->tt('%d Label', 'Labels %2%s %3%s', 3, 'test', 'test2')` => `Labels test test2`
diff --git a/include/api.php b/include/api.php
index ab12d42bf..583573b58 100644
--- a/include/api.php
+++ b/include/api.php
@@ -1107,7 +1107,7 @@ function api_statuses_update($type)
if ($posts_day > $throttle_day) {
Logger::log('Daily posting limit reached for user '.api_user(), Logger::DEBUG);
// die(api_error($type, DI::l10n()->t("Daily posting limit of %d posts reached. The post was rejected.", $throttle_day));
- throw new TooManyRequestsException(L10n::tt("Daily posting limit of %d post reached. The post was rejected.", "Daily posting limit of %d posts reached. The post was rejected.", $throttle_day));
+ throw new TooManyRequestsException(DI::l10n()->tt("Daily posting limit of %d post reached. The post was rejected.", "Daily posting limit of %d posts reached. The post was rejected.", $throttle_day));
}
}
@@ -1121,7 +1121,7 @@ function api_statuses_update($type)
if ($posts_week > $throttle_week) {
Logger::log('Weekly posting limit reached for user '.api_user(), Logger::DEBUG);
// die(api_error($type, DI::l10n()->t("Weekly posting limit of %d posts reached. The post was rejected.", $throttle_week)));
- throw new TooManyRequestsException(L10n::tt("Weekly posting limit of %d post reached. The post was rejected.", "Weekly posting limit of %d posts reached. The post was rejected.", $throttle_week));
+ throw new TooManyRequestsException(DI::l10n()->tt("Weekly posting limit of %d post reached. The post was rejected.", "Weekly posting limit of %d posts reached. The post was rejected.", $throttle_week));
}
}
diff --git a/include/conversation.php b/include/conversation.php
index d09c918d1..b541df364 100644
--- a/include/conversation.php
+++ b/include/conversation.php
@@ -1581,19 +1581,19 @@ function get_response_button_text($v, $count)
$return = '';
switch ($v) {
case 'like':
- $return = L10n::tt('Like', 'Likes', $count);
+ $return = DI::l10n()->tt('Like', 'Likes', $count);
break;
case 'dislike':
- $return = L10n::tt('Dislike', 'Dislikes', $count);
+ $return = DI::l10n()->tt('Dislike', 'Dislikes', $count);
break;
case 'attendyes':
- $return = L10n::tt('Attending', 'Attending', $count);
+ $return = DI::l10n()->tt('Attending', 'Attending', $count);
break;
case 'attendno':
- $return = L10n::tt('Not Attending', 'Not Attending', $count);
+ $return = DI::l10n()->tt('Not Attending', 'Not Attending', $count);
break;
case 'attendmaybe':
- $return = L10n::tt('Undecided', 'Undecided', $count);
+ $return = DI::l10n()->tt('Undecided', 'Undecided', $count);
break;
}
diff --git a/mod/dfrn_request.php b/mod/dfrn_request.php
index 001735ea8..888940af6 100644
--- a/mod/dfrn_request.php
+++ b/mod/dfrn_request.php
@@ -128,7 +128,7 @@ function dfrn_request_post(App $a)
}
$invalid = Probe::validDfrn($parms);
if ($invalid) {
- notice(L10n::tt("%d required parameter was not found at the given location", "%d required parameters were not found at the given location", $invalid) . EOL);
+ notice(DI::l10n()->tt("%d required parameter was not found at the given location", "%d required parameters were not found at the given location", $invalid) . EOL);
return;
}
}
@@ -366,7 +366,7 @@ function dfrn_request_post(App $a)
}
$invalid = Probe::validDfrn($parms);
if ($invalid) {
- notice(L10n::tt("%d required parameter was not found at the given location", "%d required parameters were not found at the given location", $invalid) . EOL);
+ notice(DI::l10n()->tt("%d required parameter was not found at the given location", "%d required parameters were not found at the given location", $invalid) . EOL);
return;
}
diff --git a/mod/message.php b/mod/message.php
index 06203b839..bff62a554 100644
--- a/mod/message.php
+++ b/mod/message.php
@@ -539,7 +539,7 @@ function render_messages(array $msg, $t)
'$date' => DateTimeFormat::local($rr['mailcreated'], DI::l10n()->t('D, d M Y - g:i A')),
'$ago' => Temporal::getRelativeDate($rr['mailcreated']),
'$seen' => $rr['mailseen'],
- '$count' => L10n::tt('%d message', '%d messages', $rr['count']),
+ '$count' => DI::l10n()->tt('%d message', '%d messages', $rr['count']),
]);
}
diff --git a/mod/network.php b/mod/network.php
index 11650367b..106705bd8 100644
--- a/mod/network.php
+++ b/mod/network.php
@@ -491,7 +491,7 @@ function networkThreadedView(App $a, $update, $parent)
$o .= $tabs;
if ($gid && ($t = Contact::getOStatusCountByGroupId($gid)) && !DI::pConfig()->get(local_user(), 'system', 'nowarn_insecure')) {
- notice(L10n::tt("Warning: This group contains %s member from a network that doesn't allow non public messages.",
+ notice(DI::l10n()->tt("Warning: This group contains %s member from a network that doesn't allow non public messages.",
"Warning: This group contains %s members from a network that doesn't allow non public messages.",
$t) . EOL);
notice(DI::l10n()->t("Messages in this group won't be send to these receivers.").EOL);
diff --git a/src/Content/Widget.php b/src/Content/Widget.php
index 7c412ae8f..496bbfcb6 100644
--- a/src/Content/Widget.php
+++ b/src/Content/Widget.php
@@ -53,7 +53,7 @@ class Widget
$x = intval(DI::pConfig()->get(local_user(), 'system', 'invites_remaining'));
if ($x || is_site_admin()) {
DI::page()['aside'] .= ''
- . L10n::tt('%d invitation available', '%d invitations available', $x)
+ . DI::l10n()->tt('%d invitation available', '%d invitations available', $x)
. '
';
}
}
@@ -398,7 +398,7 @@ class Widget
$tpl = Renderer::getMarkupTemplate('widget/remote_friends_common.tpl');
return Renderer::replaceMacros($tpl, [
- '$desc' => L10n::tt("%d contact in common", "%d contacts in common", $t),
+ '$desc' => DI::l10n()->tt("%d contact in common", "%d contacts in common", $t),
'$base' => DI::baseUrl(),
'$uid' => $profile_uid,
'$cid' => (($cid) ? $cid : '0'),
diff --git a/src/Content/Widget/ContactBlock.php b/src/Content/Widget/ContactBlock.php
index 67f8d9ac5..fbb5683af 100644
--- a/src/Content/Widget/ContactBlock.php
+++ b/src/Content/Widget/ContactBlock.php
@@ -87,7 +87,7 @@ class ContactBlock
$contacts_stmt = DBA::select('contact', ['id', 'uid', 'addr', 'url', 'name', 'thumb', 'network'], ['id' => $contact_ids]);
if (DBA::isResult($contacts_stmt)) {
- $contacts_title = L10n::tt('%d Contact', '%d Contacts', $total);
+ $contacts_title = DI::l10n()->tt('%d Contact', '%d Contacts', $total);
$micropro = [];
while ($contact = DBA::fetch($contacts_stmt)) {
diff --git a/src/Content/Widget/TrendingTags.php b/src/Content/Widget/TrendingTags.php
index 561dec00c..2e97c8157 100644
--- a/src/Content/Widget/TrendingTags.php
+++ b/src/Content/Widget/TrendingTags.php
@@ -29,7 +29,7 @@ class TrendingTags
$tpl = Renderer::getMarkupTemplate('widget/trending_tags.tpl');
$o = Renderer::replaceMacros($tpl, [
- '$title' => L10n::tt('Trending Tags (last %d hour)', 'Trending Tags (last %d hours)', $period),
+ '$title' => DI::l10n()->tt('Trending Tags (last %d hour)', 'Trending Tags (last %d hours)', $period),
'$more' => DI::l10n()->t('More Trending Tags'),
'$tags' => $tags,
]);
diff --git a/src/Core/L10n.php b/src/Core/L10n.php
index 67c0e4774..7fc268ac4 100644
--- a/src/Core/L10n.php
+++ b/src/Core/L10n.php
@@ -67,8 +67,8 @@ class L10n
* is performed using the count as parameter.
*
* Usages:
- * - L10n::tt('Like', 'Likes', $count)
- * - L10n::tt("%s user deleted", "%s users deleted", count($users))
+ * - DI::l10n()->tt('Like', 'Likes', $count)
+ * - DI::l10n()->tt("%s user deleted", "%s users deleted", count($users))
*
* @param string $singular
* @param string $plural
diff --git a/src/Core/L10n/L10n.php b/src/Core/L10n/L10n.php
index 6868b4503..d29e40848 100644
--- a/src/Core/L10n/L10n.php
+++ b/src/Core/L10n/L10n.php
@@ -254,8 +254,8 @@ class L10n
* is performed using the count as parameter.
*
* Usages:
- * - L10n::tt('Like', 'Likes', $count)
- * - L10n::tt("%s user deleted", "%s users deleted", count($users))
+ * - DI::l10n()->tt('Like', 'Likes', $count)
+ * - DI::l10n()->tt("%s user deleted", "%s users deleted", count($users))
*
* @param string $singular
* @param string $plural
diff --git a/src/Core/UserImport.php b/src/Core/UserImport.php
index d48d179fa..c77674127 100644
--- a/src/Core/UserImport.php
+++ b/src/Core/UserImport.php
@@ -216,7 +216,7 @@ class UserImport
}
}
if ($errorcount > 0) {
- notice(L10n::tt("%d contact not imported", "%d contacts not imported", $errorcount));
+ notice(DI::l10n()->tt("%d contact not imported", "%d contacts not imported", $errorcount));
}
foreach ($account['group'] as &$group) {
diff --git a/src/Model/User.php b/src/Model/User.php
index ffee6ede2..8ae32d0cf 100644
--- a/src/Model/User.php
+++ b/src/Model/User.php
@@ -667,11 +667,11 @@ class User
}
if (mb_strlen($username) < $username_min_length) {
- throw new Exception(L10n::tt('Username should be at least %s character.', 'Username should be at least %s characters.', $username_min_length));
+ throw new Exception(DI::l10n()->tt('Username should be at least %s character.', 'Username should be at least %s characters.', $username_min_length));
}
if (mb_strlen($username) > $username_max_length) {
- throw new Exception(L10n::tt('Username should be at most %s character.', 'Username should be at most %s characters.', $username_max_length));
+ throw new Exception(DI::l10n()->tt('Username should be at most %s character.', 'Username should be at most %s characters.', $username_max_length));
}
// So now we are just looking for a space in the full name.
diff --git a/src/Module/Admin/Blocklist/Contact.php b/src/Module/Admin/Blocklist/Contact.php
index bb7868f95..ed99a39f8 100644
--- a/src/Module/Admin/Blocklist/Contact.php
+++ b/src/Module/Admin/Blocklist/Contact.php
@@ -36,7 +36,7 @@ class Contact extends BaseAdminModule
foreach ($contacts as $uid) {
Model\Contact::unblock($uid);
}
- notice(L10n::tt('%s contact unblocked', '%s contacts unblocked', count($contacts)));
+ notice(DI::l10n()->tt('%s contact unblocked', '%s contacts unblocked', count($contacts)));
}
DI::baseUrl()->redirect('admin/blocklist/contact');
@@ -77,7 +77,7 @@ class Contact extends BaseAdminModule
'$baseurl' => DI::baseUrl()->get(true),
'$contacts' => $contacts,
- '$total_contacts' => L10n::tt('%s total blocked contact', '%s total blocked contacts', $total),
+ '$total_contacts' => DI::l10n()->tt('%s total blocked contact', '%s total blocked contacts', $total),
'$paginate' => $pager->renderFull($total),
'$contacturl' => ['contact_url', DI::l10n()->t('Profile URL'), '', DI::l10n()->t('URL of the remote contact to block.')],
'$contact_block_reason' => ['contact_block_reason', DI::l10n()->t('Block Reason')],
diff --git a/src/Module/Admin/Users.php b/src/Module/Admin/Users.php
index 543562d9d..2d38d5926 100644
--- a/src/Module/Admin/Users.php
+++ b/src/Module/Admin/Users.php
@@ -92,13 +92,13 @@ class Users extends BaseAdminModule
if (!empty($_POST['page_users_block'])) {
// @TODO Move this to Model\User:block($users);
DBA::update('user', ['blocked' => 1], ['uid' => $users]);
- notice(L10n::tt('%s user blocked', '%s users blocked', count($users)));
+ notice(DI::l10n()->tt('%s user blocked', '%s users blocked', count($users)));
}
if (!empty($_POST['page_users_unblock'])) {
// @TODO Move this to Model\User:unblock($users);
DBA::update('user', ['blocked' => 0], ['uid' => $users]);
- notice(L10n::tt('%s user unblocked', '%s users unblocked', count($users)));
+ notice(DI::l10n()->tt('%s user unblocked', '%s users unblocked', count($users)));
}
if (!empty($_POST['page_users_delete'])) {
@@ -110,7 +110,7 @@ class Users extends BaseAdminModule
}
}
- notice(L10n::tt('%s user deleted', '%s users deleted', count($users)));
+ notice(DI::l10n()->tt('%s user deleted', '%s users deleted', count($users)));
}
if (!empty($_POST['page_users_approve'])) {
diff --git a/src/Module/Contact.php b/src/Module/Contact.php
index 183a1bd16..19e736313 100644
--- a/src/Module/Contact.php
+++ b/src/Module/Contact.php
@@ -67,7 +67,7 @@ class Contact extends BaseModule
}
}
if ($count_actions > 0) {
- info(L10n::tt('%d contact edited.', '%d contacts edited.', $count_actions));
+ info(DI::l10n()->tt('%d contact edited.', '%d contacts edited.', $count_actions));
}
DI::baseUrl()->redirect('contact');
diff --git a/src/Module/Invite.php b/src/Module/Invite.php
index cdc5ac637..b467d14ec 100644
--- a/src/Module/Invite.php
+++ b/src/Module/Invite.php
@@ -101,7 +101,7 @@ class Invite extends BaseModule
}
}
- notice(L10n::tt('%d message sent.', '%d messages sent.', $total) . EOL);
+ notice(DI::l10n()->tt('%d message sent.', '%d messages sent.', $total) . EOL);
}
public static function content(array $parameters = [])
diff --git a/src/Module/Profile/Contacts.php b/src/Module/Profile/Contacts.php
index afde70e34..0e83f3070 100644
--- a/src/Module/Profile/Contacts.php
+++ b/src/Module/Profile/Contacts.php
@@ -110,11 +110,11 @@ class Contacts extends BaseModule
DBA::close($contacts_stmt);
switch ($type) {
- case 'followers': $title = L10n::tt('Follower (%s)', 'Followers (%s)', $total); break;
- case 'following': $title = L10n::tt('Following (%s)', 'Following (%s)', $total); break;
- case 'mutuals': $title = L10n::tt('Mutual friend (%s)', 'Mutual friends (%s)', $total); break;
+ case 'followers': $title = DI::l10n()->tt('Follower (%s)', 'Followers (%s)', $total); break;
+ case 'following': $title = DI::l10n()->tt('Following (%s)', 'Following (%s)', $total); break;
+ case 'mutuals': $title = DI::l10n()->tt('Mutual friend (%s)', 'Mutual friends (%s)', $total); break;
- case 'all': default: $title = L10n::tt('Contact (%s)', 'Contacts (%s)', $total); break;
+ case 'all': default: $title = DI::l10n()->tt('Contact (%s)', 'Contacts (%s)', $total); break;
}
$tpl = Renderer::getMarkupTemplate('profile/contacts.tpl');
diff --git a/src/Module/Security/TwoFactor/Verify.php b/src/Module/Security/TwoFactor/Verify.php
index a95b02d42..968bab9dd 100644
--- a/src/Module/Security/TwoFactor/Verify.php
+++ b/src/Module/Security/TwoFactor/Verify.php
@@ -61,7 +61,7 @@ class Verify extends BaseModule
'$title' => DI::l10n()->t('Two-factor authentication'),
'$message' => DI::l10n()->t('Open the two-factor authentication app on your device to get an authentication code and verify your identity.
'),
- '$errors_label' => L10n::tt('Error', 'Errors', count(self::$errors)),
+ '$errors_label' => DI::l10n()->tt('Error', 'Errors', count(self::$errors)),
'$errors' => self::$errors,
'$recovery_message' => DI::l10n()->t('Don’t have your phone? Enter a two-factor recovery code ', '2fa/recovery'),
'$verify_code' => ['verify_code', DI::l10n()->t('Please enter a code from your authentication app'), '', '', 'required', 'autofocus placeholder="000000"', 'tel'],
diff --git a/src/Object/Post.php b/src/Object/Post.php
index efaa68819..c49061e0f 100644
--- a/src/Object/Post.php
+++ b/src/Object/Post.php
@@ -480,7 +480,7 @@ class Post
// 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]['num_comments'] = DI::l10n()->tt('%d comment', '%d comments', $total_children);
$result['children'][0]['show_text'] = DI::l10n()->t('Show more');
$result['children'][0]['hide_text'] = DI::l10n()->t('Show fewer');
if ($thread_level > 1) {
@@ -493,7 +493,7 @@ class Post
if ($this->isToplevel()) {
$result['total_comments_num'] = "$total_children";
- $result['total_comments_text'] = L10n::tt('comment', 'comments', $total_children);
+ $result['total_comments_text'] = DI::l10n()->tt('comment', 'comments', $total_children);
}
$result['private'] = $item['private'];
From d3255afa662b0249f1899f0549b4ffebb6ac8b21 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 20:54:15 +0100
Subject: [PATCH 03/16] Move L10n::withLang() calls to DI::l10n()->withLang()
calls
---
include/enotify.php | 2 +-
mod/regmod.php | 2 +-
src/Core/Update.php | 4 ++--
src/Module/Register.php | 2 +-
4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/include/enotify.php b/include/enotify.php
index 3785caab1..ecdd16de1 100644
--- a/include/enotify.php
+++ b/include/enotify.php
@@ -57,7 +57,7 @@ function notification($params)
$params['to_email'] = ($params['to_email'] ?? '') ?: $user['email'];
// from here on everything is in the recipients language
- $l10n = L10n::withLang($params['language']);
+ $l10n = DI::l10n()->withLang($params['language']);
$banner = $l10n->t('Friendica Notification');
$product = FRIENDICA_PLATFORM;
diff --git a/mod/regmod.php b/mod/regmod.php
index 4cdd03845..4897df67b 100644
--- a/mod/regmod.php
+++ b/mod/regmod.php
@@ -36,7 +36,7 @@ function user_allow($hash)
Worker::add(PRIORITY_LOW, "Directory", $url);
}
- $l10n = L10n::withLang($register['language']);
+ $l10n = DI::l10n()->withLang($register['language']);
$res = User::sendRegisterOpenEmail(
$l10n,
diff --git a/src/Core/Update.php b/src/Core/Update.php
index 24ca0a797..b416f207a 100644
--- a/src/Core/Update.php
+++ b/src/Core/Update.php
@@ -253,7 +253,7 @@ class Update
$sent[] = $admin['email'];
$lang = (($admin['language'])?$admin['language']:'en');
- $l10n = L10n::withLang($lang);
+ $l10n = DI::l10n()->withLang($lang);
$preamble = Strings::deindent($l10n->t("
The friendica developers released update %s recently,
@@ -295,7 +295,7 @@ class Update
$sent[] = $admin['email'];
$lang = (($admin['language']) ? $admin['language'] : 'en');
- $l10n = L10n::withLang($lang);
+ $l10n = DI::l10n()->withLang($lang);
$preamble = Strings::deindent($l10n->t("
The friendica database was successfully updated from %s to %s.",
diff --git a/src/Module/Register.php b/src/Module/Register.php
index dfe0a534f..e4343d0f8 100644
--- a/src/Module/Register.php
+++ b/src/Module/Register.php
@@ -297,7 +297,7 @@ class Register extends BaseModule
// Only send a password mail when the password wasn't manually provided
if (empty($_POST['password1']) || empty($_POST['confirm'])) {
$res = Model\User::sendRegisterOpenEmail(
- L10n::withLang($arr['language']),
+ DI::l10n()->withLang($arr['language']),
$user,
Config::get('config', 'sitename'),
$base_url,
From cb4ad529f465dcdb0e7efedc5ac4c06c63b8b194 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 20:54:46 +0100
Subject: [PATCH 04/16] Move L10n::getDay() calls to DI::l10n()->getDay() calls
---
src/Content/Widget.php | 2 +-
src/Model/Event.php | 10 +++++-----
src/Model/Profile.php | 6 +++---
src/Util/Temporal.php | 4 ++--
4 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/src/Content/Widget.php b/src/Content/Widget.php
index 496bbfcb6..2052d216d 100644
--- a/src/Content/Widget.php
+++ b/src/Content/Widget.php
@@ -476,7 +476,7 @@ class Widget
$dend = substr($dnow, 0, 8) . Temporal::getDaysInMonth(intval($dnow), intval(substr($dnow, 5)));
$start_month = DateTimeFormat::utc($dstart, 'Y-m-d');
$end_month = DateTimeFormat::utc($dend, 'Y-m-d');
- $str = L10n::getDay(DateTimeFormat::utc($dnow, 'F'));
+ $str = DI::l10n()->getDay(DateTimeFormat::utc($dnow, 'F'));
if (empty($ret[$dyear])) {
$ret[$dyear] = [];
diff --git a/src/Model/Event.php b/src/Model/Event.php
index 6f309a339..e5932e7c1 100644
--- a/src/Model/Event.php
+++ b/src/Model/Event.php
@@ -33,13 +33,13 @@ class Event
$bd_format = DI::l10n()->t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8 AM.
- $event_start = L10n::getDay(
+ $event_start = DI::l10n()->getDay(
!empty($event['adjust']) ?
DateTimeFormat::local($event['start'], $bd_format) : DateTimeFormat::utc($event['start'], $bd_format)
);
if (!empty($event['finish'])) {
- $event_end = L10n::getDay(
+ $event_end = DI::l10n()->getDay(
!empty($event['adjust']) ?
DateTimeFormat::local($event['finish'], $bd_format) : DateTimeFormat::utc($event['finish'], $bd_format)
);
@@ -571,7 +571,7 @@ class Event
$start = $event['adjust'] ? DateTimeFormat::local($event['start'], 'c') : DateTimeFormat::utc($event['start'], 'c');
$j = $event['adjust'] ? DateTimeFormat::local($event['start'], 'j') : DateTimeFormat::utc($event['start'], 'j');
$day = $event['adjust'] ? DateTimeFormat::local($event['start'], $fmt) : DateTimeFormat::utc($event['start'], $fmt);
- $day = L10n::getDay($day);
+ $day = DI::l10n()->getDay($day);
if ($event['nofinish']) {
$end = null;
@@ -849,7 +849,7 @@ class Event
$tformat = DI::l10n()->t('g:i A'); // 8:01 AM.
// Convert the time to different formats.
- $dtstart_dt = L10n::getDay(
+ $dtstart_dt = DI::l10n()->getDay(
$item['event-adjust'] ?
DateTimeFormat::local($item['event-start'], $dformat)
: DateTimeFormat::utc($item['event-start'], $dformat)
@@ -877,7 +877,7 @@ class Event
// If the option 'nofinisch' isn't set, we need to format the finish date/time.
if (!$item['event-nofinish']) {
$finish = true;
- $dtend_dt = L10n::getDay(
+ $dtend_dt = DI::l10n()->getDay(
$item['event-adjust'] ?
DateTimeFormat::local($item['event-finish'], $dformat)
: DateTimeFormat::utc($item['event-finish'], $dformat)
diff --git a/src/Model/Profile.php b/src/Model/Profile.php
index 6699c8287..bb19fbe9b 100644
--- a/src/Model/Profile.php
+++ b/src/Model/Profile.php
@@ -640,7 +640,7 @@ class Profile
$rr['link'] = Contact::magicLink($rr['url']);
$rr['title'] = $rr['name'];
- $rr['date'] = L10n::getDay(DateTimeFormat::convert($rr['start'], $a->timezone, 'UTC', $rr['adjust'] ? $bd_format : $bd_short)) . (($today) ? ' ' . DI::l10n()->t('[today]') : '');
+ $rr['date'] = DI::l10n()->getDay(DateTimeFormat::convert($rr['start'], $a->timezone, 'UTC', $rr['adjust'] ? $bd_format : $bd_short)) . (($today) ? ' ' . DI::l10n()->t('[today]') : '');
$rr['startime'] = null;
$rr['today'] = $today;
}
@@ -725,7 +725,7 @@ class Profile
$rr['title'] = $title;
$rr['description'] = $description;
- $rr['date'] = L10n::getDay(DateTimeFormat::convert($rr['start'], $rr['adjust'] ? $a->timezone : 'UTC', 'UTC', $bd_format)) . (($today) ? ' ' . DI::l10n()->t('[today]') : '');
+ $rr['date'] = DI::l10n()->getDay(DateTimeFormat::convert($rr['start'], $rr['adjust'] ? $a->timezone : 'UTC', 'UTC', $bd_format)) . (($today) ? ' ' . DI::l10n()->t('[today]') : '');
$rr['startime'] = $strt;
$rr['today'] = $today;
@@ -767,7 +767,7 @@ class Profile
$year_bd_format = DI::l10n()->t('j F, Y');
$short_bd_format = DI::l10n()->t('j F');
- $val = L10n::getDay(
+ $val = DI::l10n()->getDay(
intval($a->profile['dob']) ?
DateTimeFormat::utc($a->profile['dob'] . ' 00:00 +00:00', $year_bd_format)
: DateTimeFormat::utc('2001-' . substr($a->profile['dob'], 5) . ' 00:00 +00:00', $short_bd_format)
diff --git a/src/Util/Temporal.php b/src/Util/Temporal.php
index 75211a092..4bc2b03d1 100644
--- a/src/Util/Temporal.php
+++ b/src/Util/Temporal.php
@@ -466,11 +466,11 @@ class Temporal
$tddate = intval(DateTimeFormat::localNow('j'));
}
- $str_month = L10n::getDay($mtab[$m]);
+ $str_month = DI::l10n()->getDay($mtab[$m]);
$o = '';
$o .= "$str_month $y ";
for ($a = 0; $a < 7; $a ++) {
- $o .= '' . mb_substr(L10n::getDay($dn[$a]), 0, 3, 'UTF-8') . ' ';
+ $o .= '' . mb_substr(DI::l10n()->getDay($dn[$a]), 0, 3, 'UTF-8') . ' ';
}
$o .= ' ';
From d83f6335ebff1b6846b2ea3e1c09eab1fa01e5d0 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 20:55:41 +0100
Subject: [PATCH 05/16] Move L10n::getCurrentLang() calls to
DI::l10n()->getCurrentLang() calls
---
mod/settings.php | 2 +-
src/Module/Admin/Site.php | 2 +-
src/Module/Install.php | 2 +-
src/Util/Temporal.php | 2 +-
update.php | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/mod/settings.php b/mod/settings.php
index 412748aab..4a19e3e84 100644
--- a/mod/settings.php
+++ b/mod/settings.php
@@ -1165,7 +1165,7 @@ function settings_content(App $a)
}
/* Installed langs */
- $lang_choices = L10n::getAvailableLanguages();
+ $lang_choices = DI::l10n()->getAvailableLanguages();
/// @TODO Fix indending (or so)
$o .= Renderer::replaceMacros($stpl, [
diff --git a/src/Module/Admin/Site.php b/src/Module/Admin/Site.php
index aab66a722..9a7aa5956 100644
--- a/src/Module/Admin/Site.php
+++ b/src/Module/Admin/Site.php
@@ -414,7 +414,7 @@ class Site extends BaseAdminModule
parent::content($parameters);
/* Installed langs */
- $lang_choices = L10n::getAvailableLanguages();
+ $lang_choices = DI::l10n()->getAvailableLanguages();
if (strlen(Config::get('system', 'directory_submit_url')) &&
!strlen(Config::get('system', 'directory'))) {
diff --git a/src/Module/Install.php b/src/Module/Install.php
index 4b0809e1f..2e8d088b0 100644
--- a/src/Module/Install.php
+++ b/src/Module/Install.php
@@ -255,7 +255,7 @@ class Install extends BaseModule
case self::SITE_SETTINGS:
/* Installed langs */
- $lang_choices = L10n::getAvailableLanguages();
+ $lang_choices = DI::l10n()->getAvailableLanguages();
$tpl = Renderer::getMarkupTemplate('install_settings.tpl');
$output .= Renderer::replaceMacros($tpl, [
diff --git a/src/Util/Temporal.php b/src/Util/Temporal.php
index 4bc2b03d1..9df0413fb 100644
--- a/src/Util/Temporal.php
+++ b/src/Util/Temporal.php
@@ -219,7 +219,7 @@ class Temporal
// First day of the week (0 = Sunday)
$firstDay = DI::pConfig()->get(local_user(), 'system', 'first_day_of_week', 0);
- $lang = substr(L10n::getCurrentLang(), 0, 2);
+ $lang = substr(DI::l10n()->getCurrentLang(), 0, 2);
// Check if the detected language is supported by the picker
if (!in_array($lang,
diff --git a/update.php b/update.php
index 330e6da10..6d5754383 100644
--- a/update.php
+++ b/update.php
@@ -300,7 +300,7 @@ function update_1298()
$keys = ['gender', 'marital', 'sexual'];
foreach ($keys as $translateKey) {
$allData = DBA::select('profile', ['id', $translateKey]);
- $allLangs = L10n::getAvailableLanguages();
+ $allLangs = DI::l10n()->getAvailableLanguages();
$success = 0;
$fail = 0;
foreach ($allData as $key => $data) {
From 5e188d17f927b3d3061d3f86cf9b633bac1d2b43 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 20:56:11 +0100
Subject: [PATCH 06/16] Move L10n::getDayShort() calls to
DI::l10n()->getDayShort() calls
---
src/Model/Event.php | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/Model/Event.php b/src/Model/Event.php
index e5932e7c1..ce2e9d53b 100644
--- a/src/Model/Event.php
+++ b/src/Model/Event.php
@@ -856,7 +856,7 @@ class Event
);
$dtstart_title = DateTimeFormat::utc($item['event-start'], $item['event-adjust'] ? DateTimeFormat::ATOM : 'Y-m-d\TH:i:s');
// Format: Jan till Dec.
- $month_short = L10n::getDayShort(
+ $month_short = DI::l10n()->getDayShort(
$item['event-adjust'] ?
DateTimeFormat::local($item['event-start'], 'M')
: DateTimeFormat::utc($item['event-start'], 'M')
@@ -868,7 +868,7 @@ class Event
$start_time = $item['event-adjust'] ?
DateTimeFormat::local($item['event-start'], $tformat)
: DateTimeFormat::utc($item['event-start'], $tformat);
- $start_short = L10n::getDayShort(
+ $start_short = DI::l10n()->getDayShort(
$item['event-adjust'] ?
DateTimeFormat::local($item['event-start'], $dformat_short)
: DateTimeFormat::utc($item['event-start'], $dformat_short)
@@ -883,7 +883,7 @@ class Event
: DateTimeFormat::utc($item['event-finish'], $dformat)
);
$dtend_title = DateTimeFormat::utc($item['event-finish'], $item['event-adjust'] ? DateTimeFormat::ATOM : 'Y-m-d\TH:i:s');
- $end_short = L10n::getDayShort(
+ $end_short = DI::l10n()->getDayShort(
$item['event-adjust'] ?
DateTimeFormat::local($item['event-finish'], $dformat_short)
: DateTimeFormat::utc($item['event-finish'], $dformat_short)
From 67f2066b8b5a6c5f5b7d2a784517b7dc8e7d8a1f Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 20:56:28 +0100
Subject: [PATCH 07/16] Move L10n::getPokeVerbs() calls to
DI::l10n()->getPokeVerbs() calls
---
mod/poke.php | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/mod/poke.php b/mod/poke.php
index ea968f7bd..949bbd5ae 100644
--- a/mod/poke.php
+++ b/mod/poke.php
@@ -40,7 +40,7 @@ function poke_init(App $a)
$verb = Strings::escapeTags(trim($_GET['verb']));
- $verbs = L10n::getPokeVerbs();
+ $verbs = DI::l10n()->getPokeVerbs();
if (!array_key_exists($verb, $verbs)) {
return;
@@ -164,7 +164,7 @@ function poke_content(App $a)
$parent = (!empty($_GET['parent']) ? intval($_GET['parent']) : '0');
- $verbs = L10n::getPokeVerbs();
+ $verbs = DI::l10n()->getPokeVerbs();
$shortlist = [];
foreach ($verbs as $k => $v) {
From 2838635d648cee828f1f2dc29a499e0a61a3b9a1 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 20:59:39 +0100
Subject: [PATCH 08/16] Move L10n class from L10n subdir to Core (replacing old
wrapper)
---
doc/AddonStorageBackend.md | 4 +-
src/App.php | 2 +-
src/App/Authentication.php | 2 +-
src/App/Module.php | 12 +-
src/App/Page.php | 2 +-
src/Console/ArchiveContact.php | 4 +-
src/Console/GlobalCommunityBlock.php | 2 +-
src/Console/NewPassword.php | 2 +-
src/Console/PostUpdate.php | 2 +-
src/Core/L10n.php | 338 ++++++++++++--
src/Core/L10n/L10n.php | 425 ------------------
src/Core/StorageManager.php | 2 +-
src/DI.php | 2 +-
src/Model/Notify.php | 2 +-
src/Model/Storage/AbstractStorage.php | 2 +-
src/Model/Storage/Database.php | 2 +-
src/Model/Storage/Filesystem.php | 2 +-
src/Model/User.php | 13 +-
src/Module/Item/Ignore.php | 2 +-
src/Module/Register.php | 2 +-
static/dependencies.config.php | 2 +-
tests/Util/SampleStorageBackend.php | 2 +-
tests/Util/SampleStorageBackendInstance.php | 2 +-
.../AutomaticInstallationConsoleTest.php | 2 +-
tests/src/Content/Text/BBCodeTest.php | 2 +-
tests/src/Core/InstallerTest.php | 6 +-
tests/src/Core/L10n/L10nTest.php | 2 +-
tests/src/Core/StorageManagerTest.php | 2 +-
.../src/Model/Storage/DatabaseStorageTest.php | 2 +-
.../Model/Storage/FilesystemStorageTest.php | 2 +-
30 files changed, 356 insertions(+), 492 deletions(-)
delete mode 100644 src/Core/L10n/L10n.php
diff --git a/doc/AddonStorageBackend.md b/doc/AddonStorageBackend.md
index f69dfff45..ed6c5d87a 100644
--- a/doc/AddonStorageBackend.md
+++ b/doc/AddonStorageBackend.md
@@ -145,7 +145,7 @@ class SampleStorageBackend implements IStorage
/** @var Config\IConfiguration */
private $config;
- /** @var L10n\L10n */
+ /** @var \Friendica\Core\L10n */
private $l10n;
/**
@@ -155,7 +155,7 @@ class SampleStorageBackend implements IStorage
* You can add here every dynamic class as dependency you like and add them to a private field
* Friendica automatically creates these classes and passes them as argument to the constructor
*/
- public function __construct(Config\IConfiguration $config, L10n\L10n $l10n)
+ public function __construct(Config\IConfiguration $config, \Friendica\Core\L10n $l10n)
{
$this->config = $config;
$this->l10n = $l10n;
diff --git a/src/App.php b/src/App.php
index 925b24c9e..ab56ffb7f 100644
--- a/src/App.php
+++ b/src/App.php
@@ -11,7 +11,7 @@ use Friendica\App\Authentication;
use Friendica\Core\Config\Cache\ConfigCache;
use Friendica\Core\Config\IConfiguration;
use Friendica\Core\Config\IPConfiguration;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\System;
use Friendica\Core\Theme;
use Friendica\Database\Database;
diff --git a/src/App/Authentication.php b/src/App/Authentication.php
index 9b3763a54..18f6c0f04 100644
--- a/src/App/Authentication.php
+++ b/src/App/Authentication.php
@@ -22,7 +22,7 @@ use Friendica\Util\DateTimeFormat;
use Friendica\Util\Network;
use Friendica\Util\Strings;
use LightOpenID;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Psr\Log\LoggerInterface;
/**
diff --git a/src/App/Module.php b/src/App/Module.php
index 7c81b6a7e..891dc5914 100644
--- a/src/App/Module.php
+++ b/src/App/Module.php
@@ -207,15 +207,15 @@ class Module
/**
* Run the determined module class and calls all hooks applied to
*
- * @param Core\L10n\L10n $l10n The L10n instance
- * @param App\BaseURL $baseUrl The Friendica Base URL
- * @param LoggerInterface $logger The Friendica logger
- * @param array $server The $_SERVER variable
- * @param array $post The $_POST variables
+ * @param \Friendica\Core\L10n $l10n The L10n instance
+ * @param App\BaseURL $baseUrl The Friendica Base URL
+ * @param LoggerInterface $logger The Friendica logger
+ * @param array $server The $_SERVER variable
+ * @param array $post The $_POST variables
*
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
- public function run(Core\L10n\L10n $l10n, App\BaseURL $baseUrl, LoggerInterface $logger, array $server, array $post)
+ public function run(Core\L10n $l10n, App\BaseURL $baseUrl, LoggerInterface $logger, array $server, array $post)
{
if ($this->printNotAllowedAddon) {
info($l10n->t("You must be logged in to use addons. "));
diff --git a/src/App/Page.php b/src/App/Page.php
index 5efb9f7ca..7531a438e 100644
--- a/src/App/Page.php
+++ b/src/App/Page.php
@@ -10,7 +10,7 @@ use Friendica\Content\Nav;
use Friendica\Core\Config\IConfiguration;
use Friendica\Core\Config\IPConfiguration;
use Friendica\Core\Hook;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Theme;
use Friendica\Module\Special\HTTPException as ModuleHTTPException;
diff --git a/src/Console/ArchiveContact.php b/src/Console/ArchiveContact.php
index e7a1f540e..5635905bb 100644
--- a/src/Console/ArchiveContact.php
+++ b/src/Console/ArchiveContact.php
@@ -30,7 +30,7 @@ class ArchiveContact extends \Asika\SimpleConsole\Console
*/
private $dba;
/**
- * @var L10n\L10n
+ * @var \Friendica\Core\L10n
*/
private $l10n;
@@ -51,7 +51,7 @@ HELP;
return $help;
}
- public function __construct(App\Mode $appMode, Database $dba, L10n\L10n $l10n, array $argv = null)
+ public function __construct(App\Mode $appMode, Database $dba, \Friendica\Core\L10n $l10n, array $argv = null)
{
parent::__construct($argv);
diff --git a/src/Console/GlobalCommunityBlock.php b/src/Console/GlobalCommunityBlock.php
index 77be530da..42fa165dc 100644
--- a/src/Console/GlobalCommunityBlock.php
+++ b/src/Console/GlobalCommunityBlock.php
@@ -26,7 +26,7 @@ class GlobalCommunityBlock extends \Asika\SimpleConsole\Console
*/
private $appMode;
/**
- * @var L10n\L10n
+ * @var \Friendica\Core\L10n
*/
private $l10n;
diff --git a/src/Console/NewPassword.php b/src/Console/NewPassword.php
index caa0aac7d..bf5a1b7e1 100644
--- a/src/Console/NewPassword.php
+++ b/src/Console/NewPassword.php
@@ -3,7 +3,7 @@
namespace Friendica\Console;
use Friendica\App;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Database\Database;
use Friendica\Model\User;
use RuntimeException;
diff --git a/src/Console/PostUpdate.php b/src/Console/PostUpdate.php
index f3e81c1af..369169334 100644
--- a/src/Console/PostUpdate.php
+++ b/src/Console/PostUpdate.php
@@ -4,7 +4,7 @@ namespace Friendica\Console;
use Friendica\App;
use Friendica\Core\Config\IConfiguration;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\Update;
/**
diff --git a/src/Core/L10n.php b/src/Core/L10n.php
index 7fc268ac4..3f92dd580 100644
--- a/src/Core/L10n.php
+++ b/src/Core/L10n.php
@@ -1,11 +1,12 @@
dba = $dba;
+ $this->logger = $logger;
+
+ $this->loadTranslationTable(L10n::detectLanguage($server, $get, $config->get('system', 'language', 'en')));
+ $this->setSessionVariable($session);
+ $this->setLangFromSession($session);
+ }
+
/**
* Returns the current language code
*
* @return string Language code
*/
- public static function getCurrentLang()
+ public function getCurrentLang()
{
- return DI::l10n()->getCurrentLang();
+ return $this->lang;
}
/**
- * @param string $lang
- *
- * @return L10nClass The new L10n class with the new language
- *
- * @throws \Friendica\Network\HTTPException\InternalServerErrorException
+ * Sets the language session variable
*/
- public static function withLang(string $lang)
+ private function setSessionVariable(ISession $session)
{
- return DI::l10n()->withLang($lang);
+ if ($session->get('authenticated') && !$session->get('language')) {
+ $session->set('language', $this->lang);
+ // we haven't loaded user data yet, but we need user language
+ if ($session->get('uid')) {
+ $user = $this->dba->selectFirst('user', ['language'], ['uid' => $_SESSION['uid']]);
+ if ($this->dba->isResult($user)) {
+ $session->set('language', $user['language']);
+ }
+ }
+ }
+
+ if (isset($_GET['lang'])) {
+ $session->set('language', $_GET['lang']);
+ }
+ }
+
+ private function setLangFromSession(ISession $session)
+ {
+ if ($session->get('language') !== $this->lang) {
+ $this->loadTranslationTable($session->get('language'));
+ }
+ }
+
+ /**
+ * Loads string translation table
+ *
+ * First addon strings are loaded, then globals
+ *
+ * Uses an App object shim since all the strings files refer to $a->strings
+ *
+ * @param string $lang language code to load
+ *
+ * @throws \Exception
+ */
+ private function loadTranslationTable($lang)
+ {
+ $lang = Strings::sanitizeFilePathItem($lang);
+
+ // Don't override the language setting with empty languages
+ if (empty($lang)) {
+ return;
+ }
+
+ $a = new \stdClass();
+ $a->strings = [];
+
+ // load enabled addons strings
+ $addons = $this->dba->select('addon', ['name'], ['installed' => true]);
+ while ($p = $this->dba->fetch($addons)) {
+ $name = Strings::sanitizeFilePathItem($p['name']);
+ if (file_exists("addon/$name/lang/$lang/strings.php")) {
+ include __DIR__ . "/../../../addon/$name/lang/$lang/strings.php";
+ }
+ }
+
+ if (file_exists(__DIR__ . "/../../../view/lang/$lang/strings.php")) {
+ include __DIR__ . "/../../../view/lang/$lang/strings.php";
+ }
+
+ $this->lang = $lang;
+ $this->strings = $a->strings;
+
+ unset($a);
+ }
+
+ /**
+ * @brief Returns the preferred language from the HTTP_ACCEPT_LANGUAGE header
+ *
+ * @param string $sysLang The default fallback language
+ * @param array $server The $_SERVER array
+ * @param array $get The $_GET array
+ *
+ * @return string The two-letter language code
+ */
+ public static function detectLanguage(array $server, array $get, string $sysLang = 'en')
+ {
+ $lang_variable = $server['HTTP_ACCEPT_LANGUAGE'] ?? null;
+
+ $acceptedLanguages = preg_split('/,\s*/', $lang_variable);
+
+ if (empty($acceptedLanguages)) {
+ $acceptedLanguages = [];
+ }
+
+ // Add get as absolute quality accepted language (except this language isn't valid)
+ if (!empty($get['lang'])) {
+ $acceptedLanguages[] = $get['lang'];
+ }
+
+ // return the sys language in case there's nothing to do
+ if (empty($acceptedLanguages)) {
+ return $sysLang;
+ }
+
+ // Set the syslang as default fallback
+ $current_lang = $sysLang;
+ // start with quality zero (every guessed language is more acceptable ..)
+ $current_q = 0;
+
+ foreach ($acceptedLanguages as $acceptedLanguage) {
+ $res = preg_match(
+ '/^([a-z]{1,8}(?:-[a-z]{1,8})*)(?:;\s*q=(0(?:\.[0-9]{1,3})?|1(?:\.0{1,3})?))?$/i',
+ $acceptedLanguage,
+ $matches
+ );
+
+ // Invalid language? -> skip
+ if (!$res) {
+ continue;
+ }
+
+ // split language codes based on it's "-"
+ $lang_code = explode('-', $matches[1]);
+
+ // determine the quality of the guess
+ if (isset($matches[2])) {
+ $lang_quality = (float)$matches[2];
+ } else {
+ // fallback so without a quality parameter, it's probably the best
+ $lang_quality = 1;
+ }
+
+ // loop through each part of the code-parts
+ while (count($lang_code)) {
+ // try to mix them so we can get double-code parts too
+ $match_lang = strtolower(join('-', $lang_code));
+ if (file_exists(__DIR__ . "/../../../view/lang/$match_lang") &&
+ is_dir(__DIR__ . "/../../../view/lang/$match_lang")) {
+ if ($lang_quality > $current_q) {
+ $current_lang = $match_lang;
+ $current_q = $lang_quality;
+ break;
+ }
+ }
+
+ // remove the most right code-part
+ array_pop($lang_code);
+ }
+ }
+
+ return $current_lang;
}
/**
@@ -52,9 +225,22 @@ class L10n
*
* @return string
*/
- public static function t($s, ...$vars)
+ public function t($s, ...$vars)
{
- return DI::l10n()->t($s, ...$vars);
+ if (empty($s)) {
+ return '';
+ }
+
+ if (!empty($this->strings[$s])) {
+ $t = $this->strings[$s];
+ $s = is_array($t) ? $t[0] : $t;
+ }
+
+ if (count($vars) > 0) {
+ $s = sprintf($s, ...$vars);
+ }
+
+ return $s;
}
/**
@@ -77,9 +263,48 @@ class L10n
* @return string
* @throws \Exception
*/
- public static function tt(string $singular, string $plural, int $count)
+ public function tt(string $singular, string $plural, int $count)
{
- return DI::l10n()->tt($singular, $plural, $count);
+ if (!empty($this->strings[$singular])) {
+ $t = $this->strings[$singular];
+ if (is_array($t)) {
+ $plural_function = 'string_plural_select_' . str_replace('-', '_', $this->lang);
+ if (function_exists($plural_function)) {
+ $i = $plural_function($count);
+ } else {
+ $i = $this->stringPluralSelectDefault($count);
+ }
+
+ // for some languages there is only a single array item
+ if (!isset($t[$i])) {
+ $s = $t[0];
+ } else {
+ $s = $t[$i];
+ }
+ } else {
+ $s = $t;
+ }
+ } elseif ($this->stringPluralSelectDefault($count)) {
+ $s = $plural;
+ } else {
+ $s = $singular;
+ }
+
+ $s = @sprintf($s, $count);
+
+ return $s;
+ }
+
+ /**
+ * Provide a fallback which will not collide with a function defined in any language file
+ *
+ * @param int $n
+ *
+ * @return bool
+ */
+ private function stringPluralSelectDefault($n)
+ {
+ return $n != 1;
}
/**
@@ -95,7 +320,20 @@ class L10n
*/
public static function getAvailableLanguages()
{
- return L10nClass::getAvailableLanguages();
+ $langs = [];
+ $strings_file_paths = glob('view/lang/*/strings.php');
+
+ if (is_array($strings_file_paths) && count($strings_file_paths)) {
+ if (!in_array('view/lang/en/strings.php', $strings_file_paths)) {
+ $strings_file_paths[] = 'view/lang/en/strings.php';
+ }
+ asort($strings_file_paths);
+ foreach ($strings_file_paths as $strings_file_path) {
+ $path_array = explode('/', $strings_file_path);
+ $langs[$path_array[2]] = $path_array[2];
+ }
+ }
+ return $langs;
}
/**
@@ -105,9 +343,17 @@ class L10n
*
* @return string Translated string.
*/
- public static function getDay($s)
+ public function getDay($s)
{
- return DI::l10n()->getDay($s);
+ $ret = str_replace(['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
+ [$this->t('Monday'), $this->t('Tuesday'), $this->t('Wednesday'), $this->t('Thursday'), $this->t('Friday'), $this->t('Saturday'), $this->t('Sunday')],
+ $s);
+
+ $ret = str_replace(['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
+ [$this->t('January'), $this->t('February'), $this->t('March'), $this->t('April'), $this->t('May'), $this->t('June'), $this->t('July'), $this->t('August'), $this->t('September'), $this->t('October'), $this->t('November'), $this->t('December')],
+ $ret);
+
+ return $ret;
}
/**
@@ -117,9 +363,17 @@ class L10n
*
* @return string Translated string.
*/
- public static function getDayShort($s)
+ public function getDayShort($s)
{
- return DI::l10n()->getDayShort($s);
+ $ret = str_replace(['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
+ [$this->t('Mon'), $this->t('Tue'), $this->t('Wed'), $this->t('Thu'), $this->t('Fri'), $this->t('Sat'), $this->t('Sun')],
+ $s);
+
+ $ret = str_replace(['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
+ [$this->t('Jan'), $this->t('Feb'), $this->t('Mar'), $this->t('Apr'), $this->t('May'), $this->t('Jun'), $this->t('Jul'), $this->t('Aug'), $this->t('Sep'), $this->t('Oct'), $this->t('Nov'), $this->t('Dec')],
+ $ret);
+
+ return $ret;
}
/**
@@ -127,10 +381,44 @@ class L10n
*
* @return array index is present tense verb
* value is array containing past tense verb, translation of present, translation of past
+ * @throws \Friendica\Network\HTTPException\InternalServerErrorException
* @hook poke_verbs pokes array
*/
- public static function getPokeVerbs()
+ public function getPokeVerbs()
{
- return DI::l10n()->getPokeVerbs();
+ // index is present tense verb
+ // value is array containing past tense verb, translation of present, translation of past
+ $arr = [
+ 'poke' => ['poked', $this->t('poke'), $this->t('poked')],
+ 'ping' => ['pinged', $this->t('ping'), $this->t('pinged')],
+ 'prod' => ['prodded', $this->t('prod'), $this->t('prodded')],
+ 'slap' => ['slapped', $this->t('slap'), $this->t('slapped')],
+ 'finger' => ['fingered', $this->t('finger'), $this->t('fingered')],
+ 'rebuff' => ['rebuffed', $this->t('rebuff'), $this->t('rebuffed')],
+ ];
+
+ Hook::callAll('poke_verbs', $arr);
+
+ return $arr;
+ }
+
+ /**
+ * Creates a new L10n instance based on the given langauge
+ *
+ * @param string $lang The new language
+ *
+ * @return static A new L10n instance
+ * @throws \Exception
+ */
+ public function withLang(string $lang)
+ {
+ // Don't create a new instance for same language
+ if ($lang === $this->lang) {
+ return $this;
+ }
+
+ $newL10n = clone $this;
+ $newL10n->loadTranslationTable($lang);
+ return $newL10n;
}
}
diff --git a/src/Core/L10n/L10n.php b/src/Core/L10n/L10n.php
deleted file mode 100644
index d29e40848..000000000
--- a/src/Core/L10n/L10n.php
+++ /dev/null
@@ -1,425 +0,0 @@
-dba = $dba;
- $this->logger = $logger;
-
- $this->loadTranslationTable(L10n::detectLanguage($server, $get, $config->get('system', 'language', 'en')));
- $this->setSessionVariable($session);
- $this->setLangFromSession($session);
- }
-
- /**
- * Returns the current language code
- *
- * @return string Language code
- */
- public function getCurrentLang()
- {
- return $this->lang;
- }
-
- /**
- * Sets the language session variable
- */
- private function setSessionVariable(ISession $session)
- {
- if ($session->get('authenticated') && !$session->get('language')) {
- $session->set('language', $this->lang);
- // we haven't loaded user data yet, but we need user language
- if ($session->get('uid')) {
- $user = $this->dba->selectFirst('user', ['language'], ['uid' => $_SESSION['uid']]);
- if ($this->dba->isResult($user)) {
- $session->set('language', $user['language']);
- }
- }
- }
-
- if (isset($_GET['lang'])) {
- $session->set('language', $_GET['lang']);
- }
- }
-
- private function setLangFromSession(ISession $session)
- {
- if ($session->get('language') !== $this->lang) {
- $this->loadTranslationTable($session->get('language'));
- }
- }
-
- /**
- * Loads string translation table
- *
- * First addon strings are loaded, then globals
- *
- * Uses an App object shim since all the strings files refer to $a->strings
- *
- * @param string $lang language code to load
- *
- * @throws \Exception
- */
- private function loadTranslationTable($lang)
- {
- $lang = Strings::sanitizeFilePathItem($lang);
-
- // Don't override the language setting with empty languages
- if (empty($lang)) {
- return;
- }
-
- $a = new \stdClass();
- $a->strings = [];
-
- // load enabled addons strings
- $addons = $this->dba->select('addon', ['name'], ['installed' => true]);
- while ($p = $this->dba->fetch($addons)) {
- $name = Strings::sanitizeFilePathItem($p['name']);
- if (file_exists("addon/$name/lang/$lang/strings.php")) {
- include __DIR__ . "/../../../addon/$name/lang/$lang/strings.php";
- }
- }
-
- if (file_exists(__DIR__ . "/../../../view/lang/$lang/strings.php")) {
- include __DIR__ . "/../../../view/lang/$lang/strings.php";
- }
-
- $this->lang = $lang;
- $this->strings = $a->strings;
-
- unset($a);
- }
-
- /**
- * Returns the preferred language from the HTTP_ACCEPT_LANGUAGE header
- *
- * @param string $sysLang The default fallback language
- * @param array $server The $_SERVER array
- * @param array $get The $_GET array
- *
- * @return string The two-letter language code
- */
- public static function detectLanguage(array $server, array $get, string $sysLang = 'en')
- {
- $lang_variable = $server['HTTP_ACCEPT_LANGUAGE'] ?? null;
-
- $acceptedLanguages = preg_split('/,\s*/', $lang_variable);
-
- if (empty($acceptedLanguages)) {
- $acceptedLanguages = [];
- }
-
- // Add get as absolute quality accepted language (except this language isn't valid)
- if (!empty($get['lang'])) {
- $acceptedLanguages[] = $get['lang'];
- }
-
- // return the sys language in case there's nothing to do
- if (empty($acceptedLanguages)) {
- return $sysLang;
- }
-
- // Set the syslang as default fallback
- $current_lang = $sysLang;
- // start with quality zero (every guessed language is more acceptable ..)
- $current_q = 0;
-
- foreach ($acceptedLanguages as $acceptedLanguage) {
- $res = preg_match(
- '/^([a-z]{1,8}(?:-[a-z]{1,8})*)(?:;\s*q=(0(?:\.[0-9]{1,3})?|1(?:\.0{1,3})?))?$/i',
- $acceptedLanguage,
- $matches
- );
-
- // Invalid language? -> skip
- if (!$res) {
- continue;
- }
-
- // split language codes based on it's "-"
- $lang_code = explode('-', $matches[1]);
-
- // determine the quality of the guess
- if (isset($matches[2])) {
- $lang_quality = (float)$matches[2];
- } else {
- // fallback so without a quality parameter, it's probably the best
- $lang_quality = 1;
- }
-
- // loop through each part of the code-parts
- while (count($lang_code)) {
- // try to mix them so we can get double-code parts too
- $match_lang = strtolower(join('-', $lang_code));
- if (file_exists(__DIR__ . "/../../../view/lang/$match_lang") &&
- is_dir(__DIR__ . "/../../../view/lang/$match_lang")) {
- if ($lang_quality > $current_q) {
- $current_lang = $match_lang;
- $current_q = $lang_quality;
- break;
- }
- }
-
- // remove the most right code-part
- array_pop($lang_code);
- }
- }
-
- return $current_lang;
- }
-
- /**
- * Return the localized version of the provided string with optional string interpolation
- *
- * This function takes a english string as parameter, and if a localized version
- * exists for the current language, substitutes it before performing an eventual
- * string interpolation (sprintf) with additional optional arguments.
- *
- * Usages:
- * - DI::l10n()->t('This is an example')
- * - DI::l10n()->t('URL %s returned no result', $url)
- * - DI::l10n()->t('Current version: %s, new version: %s', $current_version, $new_version)
- *
- * @param string $s
- * @param array $vars Variables to interpolate in the translation string
- *
- * @return string
- */
- public function t($s, ...$vars)
- {
- if (empty($s)) {
- return '';
- }
-
- if (!empty($this->strings[$s])) {
- $t = $this->strings[$s];
- $s = is_array($t) ? $t[0] : $t;
- }
-
- if (count($vars) > 0) {
- $s = sprintf($s, ...$vars);
- }
-
- return $s;
- }
-
- /**
- * Return the localized version of a singular/plural string with optional string interpolation
- *
- * This function takes two english strings as parameters, singular and plural, as
- * well as a count. If a localized version exists for the current language, they
- * are used instead. Discrimination between singular and plural is done using the
- * localized function if any or the default one. Finally, a string interpolation
- * is performed using the count as parameter.
- *
- * Usages:
- * - DI::l10n()->tt('Like', 'Likes', $count)
- * - DI::l10n()->tt("%s user deleted", "%s users deleted", count($users))
- *
- * @param string $singular
- * @param string $plural
- * @param int $count
- *
- * @return string
- * @throws \Exception
- */
- public function tt(string $singular, string $plural, int $count)
- {
- if (!empty($this->strings[$singular])) {
- $t = $this->strings[$singular];
- if (is_array($t)) {
- $plural_function = 'string_plural_select_' . str_replace('-', '_', $this->lang);
- if (function_exists($plural_function)) {
- $i = $plural_function($count);
- } else {
- $i = $this->stringPluralSelectDefault($count);
- }
-
- // for some languages there is only a single array item
- if (!isset($t[$i])) {
- $s = $t[0];
- } else {
- $s = $t[$i];
- }
- } else {
- $s = $t;
- }
- } elseif ($this->stringPluralSelectDefault($count)) {
- $s = $plural;
- } else {
- $s = $singular;
- }
-
- $s = @sprintf($s, $count);
-
- return $s;
- }
-
- /**
- * Provide a fallback which will not collide with a function defined in any language file
- *
- * @param int $n
- *
- * @return bool
- */
- private function stringPluralSelectDefault($n)
- {
- return $n != 1;
- }
-
- /**
- * Return installed languages codes as associative array
- *
- * Scans the view/lang directory for the existence of "strings.php" files, and
- * returns an alphabetical list of their folder names (@-char language codes).
- * Adds the english language if it's missing from the list.
- *
- * Ex: array('de' => 'de', 'en' => 'en', 'fr' => 'fr', ...)
- *
- * @return array
- */
- public static function getAvailableLanguages()
- {
- $langs = [];
- $strings_file_paths = glob('view/lang/*/strings.php');
-
- if (is_array($strings_file_paths) && count($strings_file_paths)) {
- if (!in_array('view/lang/en/strings.php', $strings_file_paths)) {
- $strings_file_paths[] = 'view/lang/en/strings.php';
- }
- asort($strings_file_paths);
- foreach ($strings_file_paths as $strings_file_path) {
- $path_array = explode('/', $strings_file_path);
- $langs[$path_array[2]] = $path_array[2];
- }
- }
- return $langs;
- }
-
- /**
- * Translate days and months names.
- *
- * @param string $s String with day or month name.
- *
- * @return string Translated string.
- */
- public function getDay($s)
- {
- $ret = str_replace(['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'],
- [$this->t('Monday'), $this->t('Tuesday'), $this->t('Wednesday'), $this->t('Thursday'), $this->t('Friday'), $this->t('Saturday'), $this->t('Sunday')],
- $s);
-
- $ret = str_replace(['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'],
- [$this->t('January'), $this->t('February'), $this->t('March'), $this->t('April'), $this->t('May'), $this->t('June'), $this->t('July'), $this->t('August'), $this->t('September'), $this->t('October'), $this->t('November'), $this->t('December')],
- $ret);
-
- return $ret;
- }
-
- /**
- * Translate short days and months names.
- *
- * @param string $s String with short day or month name.
- *
- * @return string Translated string.
- */
- public function getDayShort($s)
- {
- $ret = str_replace(['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
- [$this->t('Mon'), $this->t('Tue'), $this->t('Wed'), $this->t('Thu'), $this->t('Fri'), $this->t('Sat'), $this->t('Sun')],
- $s);
-
- $ret = str_replace(['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
- [$this->t('Jan'), $this->t('Feb'), $this->t('Mar'), $this->t('Apr'), $this->t('May'), $this->t('Jun'), $this->t('Jul'), $this->t('Aug'), $this->t('Sep'), $this->t('Oct'), $this->t('Nov'), $this->t('Dec')],
- $ret);
-
- return $ret;
- }
-
- /**
- * Load poke verbs
- *
- * @return array index is present tense verb
- * value is array containing past tense verb, translation of present, translation of past
- * @throws \Friendica\Network\HTTPException\InternalServerErrorException
- * @hook poke_verbs pokes array
- */
- public function getPokeVerbs()
- {
- // index is present tense verb
- // value is array containing past tense verb, translation of present, translation of past
- $arr = [
- 'poke' => ['poked', $this->t('poke'), $this->t('poked')],
- 'ping' => ['pinged', $this->t('ping'), $this->t('pinged')],
- 'prod' => ['prodded', $this->t('prod'), $this->t('prodded')],
- 'slap' => ['slapped', $this->t('slap'), $this->t('slapped')],
- 'finger' => ['fingered', $this->t('finger'), $this->t('fingered')],
- 'rebuff' => ['rebuffed', $this->t('rebuff'), $this->t('rebuffed')],
- ];
-
- Hook::callAll('poke_verbs', $arr);
-
- return $arr;
- }
-
- /**
- * Creates a new L10n instance based on the given langauge
- *
- * @param string $lang The new language
- *
- * @return static A new L10n instance
- * @throws \Exception
- */
- public function withLang(string $lang)
- {
- // Don't create a new instance for same language
- if ($lang === $this->lang) {
- return $this;
- }
-
- $newL10n = clone $this;
- $newL10n->loadTranslationTable($lang);
- return $newL10n;
- }
-}
diff --git a/src/Core/StorageManager.php b/src/Core/StorageManager.php
index 397fc624f..1354de559 100644
--- a/src/Core/StorageManager.php
+++ b/src/Core/StorageManager.php
@@ -4,7 +4,7 @@ namespace Friendica\Core;
use Exception;
use Friendica\Core\Config\IConfiguration;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Database\Database;
use Friendica\Model\Storage;
use Psr\Log\LoggerInterface;
diff --git a/src/DI.php b/src/DI.php
index 38d000423..103c9be69 100644
--- a/src/DI.php
+++ b/src/DI.php
@@ -158,7 +158,7 @@ abstract class DI
public static function l10n()
{
- return self::$dice->create(Core\L10n\L10n::class);
+ return self::$dice->create(Core\L10n::class);
}
/**
diff --git a/src/Model/Notify.php b/src/Model/Notify.php
index 49e538d7b..9912f5dff 100644
--- a/src/Model/Notify.php
+++ b/src/Model/Notify.php
@@ -7,7 +7,7 @@ use Friendica\App;
use Friendica\Content\Text\BBCode;
use Friendica\Content\Text\HTML;
use Friendica\Core\Config\IPConfiguration;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\System;
use Friendica\Database\Database;
diff --git a/src/Model/Storage/AbstractStorage.php b/src/Model/Storage/AbstractStorage.php
index 270d67562..bcd8ee06a 100644
--- a/src/Model/Storage/AbstractStorage.php
+++ b/src/Model/Storage/AbstractStorage.php
@@ -2,7 +2,7 @@
namespace Friendica\Model\Storage;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Psr\Log\LoggerInterface;
/**
diff --git a/src/Model/Storage/Database.php b/src/Model/Storage/Database.php
index 75068d603..77a075b98 100644
--- a/src/Model/Storage/Database.php
+++ b/src/Model/Storage/Database.php
@@ -6,7 +6,7 @@
namespace Friendica\Model\Storage;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Psr\Log\LoggerInterface;
use Friendica\Database\Database as DBA;
diff --git a/src/Model/Storage/Filesystem.php b/src/Model/Storage/Filesystem.php
index 15689f7f2..60ed0252a 100644
--- a/src/Model/Storage/Filesystem.php
+++ b/src/Model/Storage/Filesystem.php
@@ -7,7 +7,7 @@
namespace Friendica\Model\Storage;
use Friendica\Core\Config\IConfiguration;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Util\Strings;
use Psr\Log\LoggerInterface;
diff --git a/src/Model/User.php b/src/Model/User.php
index 8ae32d0cf..be93f3e4d 100644
--- a/src/Model/User.php
+++ b/src/Model/User.php
@@ -915,15 +915,16 @@ class User
*
* It's here as a function because the mail is sent from different parts
*
- * @param L10n\L10n $l10n The used language
- * @param array $user User record array
- * @param string $sitename
- * @param string $siteurl
- * @param string $password Plaintext password
+ * @param \Friendica\Core\L10n $l10n The used language
+ * @param array $user User record array
+ * @param string $sitename
+ * @param string $siteurl
+ * @param string $password Plaintext password
+ *
* @return NULL|boolean from notification() and email() inherited
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
- public static function sendRegisterOpenEmail(L10n\L10n $l10n, $user, $sitename, $siteurl, $password)
+ public static function sendRegisterOpenEmail(\Friendica\Core\L10n $l10n, $user, $sitename, $siteurl, $password)
{
$preamble = Strings::deindent($l10n->t(
'
diff --git a/src/Module/Item/Ignore.php b/src/Module/Item/Ignore.php
index b20074166..d855045de 100644
--- a/src/Module/Item/Ignore.php
+++ b/src/Module/Item/Ignore.php
@@ -4,7 +4,7 @@ namespace Friendica\Module\Item;
use Friendica\App;
use Friendica\BaseModule;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\Session;
use Friendica\Core\System;
use Friendica\Database\Database;
diff --git a/src/Module/Register.php b/src/Module/Register.php
index e4343d0f8..9530d29f1 100644
--- a/src/Module/Register.php
+++ b/src/Module/Register.php
@@ -7,7 +7,7 @@ use Friendica\Content\Text\BBCode;
use Friendica\Core\Config;
use Friendica\Core\Hook;
use Friendica\Core\L10n;
-use Friendica\Core\L10n\L10n as L10nClass;
+use Friendica\Core\L10n as L10nClass;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\Worker;
diff --git a/static/dependencies.config.php b/static/dependencies.config.php
index ec80123aa..b4fa7d247 100644
--- a/static/dependencies.config.php
+++ b/static/dependencies.config.php
@@ -4,7 +4,7 @@ use Dice\Dice;
use Friendica\App;
use Friendica\Core\Cache;
use Friendica\Core\Config;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\Lock\ILock;
use Friendica\Core\Process;
use Friendica\Core\Session\ISession;
diff --git a/tests/Util/SampleStorageBackend.php b/tests/Util/SampleStorageBackend.php
index a788c6d3d..62b4f12bb 100644
--- a/tests/Util/SampleStorageBackend.php
+++ b/tests/Util/SampleStorageBackend.php
@@ -6,7 +6,7 @@ use Friendica\App;
use Friendica\Core\Hook;
use Friendica\Model\Storage\IStorage;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Mockery\MockInterface;
/**
diff --git a/tests/Util/SampleStorageBackendInstance.php b/tests/Util/SampleStorageBackendInstance.php
index d55ff04de..ceb329cb3 100644
--- a/tests/Util/SampleStorageBackendInstance.php
+++ b/tests/Util/SampleStorageBackendInstance.php
@@ -3,7 +3,7 @@
// contains a test-hook call for creating a storage instance
use Friendica\App;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Test\Util\SampleStorageBackend;
use Mockery\MockInterface;
diff --git a/tests/src/Console/AutomaticInstallationConsoleTest.php b/tests/src/Console/AutomaticInstallationConsoleTest.php
index 050a5f442..ab879b319 100644
--- a/tests/src/Console/AutomaticInstallationConsoleTest.php
+++ b/tests/src/Console/AutomaticInstallationConsoleTest.php
@@ -7,7 +7,7 @@ use Friendica\App;
use Friendica\Console\AutomaticInstallation;
use Friendica\Core\Config\Cache\ConfigCache;
use Friendica\Core\Installer;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Database\Database;
use Friendica\DI;
diff --git a/tests/src/Content/Text/BBCodeTest.php b/tests/src/Content/Text/BBCodeTest.php
index ed33306ed..7db69eef3 100644
--- a/tests/src/Content/Text/BBCodeTest.php
+++ b/tests/src/Content/Text/BBCodeTest.php
@@ -4,7 +4,7 @@ namespace Friendica\Test\src\Content\Text;
use Friendica\App\BaseURL;
use Friendica\Content\Text\BBCode;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Test\MockedTest;
use Friendica\Test\Util\AppMockTrait;
use Friendica\Test\Util\VFSTrait;
diff --git a/tests/src/Core/InstallerTest.php b/tests/src/Core/InstallerTest.php
index 23212665d..abc208763 100644
--- a/tests/src/Core/InstallerTest.php
+++ b/tests/src/Core/InstallerTest.php
@@ -17,7 +17,7 @@ class InstallerTest extends MockedTest
use VFSTrait;
/**
- * @var \Friendica\Core\L10n\L10n|MockInterface
+ * @var \Friendica\Core\L10n|MockInterface
*/
private $l10nMock;
@@ -27,14 +27,14 @@ class InstallerTest extends MockedTest
$this->setUpVfsDir();
- $this->l10nMock = \Mockery::mock(\Friendica\Core\L10n\L10n::class);
+ $this->l10nMock = \Mockery::mock(\Friendica\Core\L10n::class);
/** @var Dice|MockInterface $dice */
$dice = \Mockery::mock(Dice::class)->makePartial();
$dice = $dice->addRules(include __DIR__ . '/../../../static/dependencies.config.php');
$dice->shouldReceive('create')
- ->with(\Friendica\Core\L10n\L10n::class)
+ ->with(\Friendica\Core\L10n::class)
->andReturn($this->l10nMock);
DI::init($dice);
diff --git a/tests/src/Core/L10n/L10nTest.php b/tests/src/Core/L10n/L10nTest.php
index 1207ceb47..b9f6681f4 100644
--- a/tests/src/Core/L10n/L10nTest.php
+++ b/tests/src/Core/L10n/L10nTest.php
@@ -2,7 +2,7 @@
namespace src\Core\L10n;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Test\MockedTest;
class L10nTest extends MockedTest
diff --git a/tests/src/Core/StorageManagerTest.php b/tests/src/Core/StorageManagerTest.php
index b7e5b8c3d..118d4bb57 100644
--- a/tests/src/Core/StorageManagerTest.php
+++ b/tests/src/Core/StorageManagerTest.php
@@ -6,7 +6,7 @@ use Dice\Dice;
use Friendica\Core\Config\IConfiguration;
use Friendica\Core\Config\PreloadConfiguration;
use Friendica\Core\Hook;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Core\Session\ISession;
use Friendica\Core\StorageManager;
use Friendica\Database\Database;
diff --git a/tests/src/Model/Storage/DatabaseStorageTest.php b/tests/src/Model/Storage/DatabaseStorageTest.php
index d6dff9932..64d26aa11 100644
--- a/tests/src/Model/Storage/DatabaseStorageTest.php
+++ b/tests/src/Model/Storage/DatabaseStorageTest.php
@@ -2,7 +2,7 @@
namespace Friendica\Test\src\Model\Storage;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Factory\ConfigFactory;
use Friendica\Model\Storage\Database;
use Friendica\Model\Storage\IStorage;
diff --git a/tests/src/Model/Storage/FilesystemStorageTest.php b/tests/src/Model/Storage/FilesystemStorageTest.php
index 500fd93bd..f80958558 100644
--- a/tests/src/Model/Storage/FilesystemStorageTest.php
+++ b/tests/src/Model/Storage/FilesystemStorageTest.php
@@ -3,7 +3,7 @@
namespace Friendica\Test\src\Model\Storage;
use Friendica\Core\Config\IConfiguration;
-use Friendica\Core\L10n\L10n;
+use Friendica\Core\L10n;
use Friendica\Model\Storage\Filesystem;
use Friendica\Model\Storage\IStorage;
use Friendica\Test\Util\VFSTrait;
From 0e6a675cb5ef99545caf587740b73ff7b4d590d9 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 21:01:44 +0100
Subject: [PATCH 09/16] cleanups
---
src/Core/StorageManager.php | 1 -
src/DI.php | 4 ++++
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/Core/StorageManager.php b/src/Core/StorageManager.php
index 1354de559..067885c44 100644
--- a/src/Core/StorageManager.php
+++ b/src/Core/StorageManager.php
@@ -4,7 +4,6 @@ namespace Friendica\Core;
use Exception;
use Friendica\Core\Config\IConfiguration;
-use Friendica\Core\L10n;
use Friendica\Database\Database;
use Friendica\Model\Storage;
use Psr\Log\LoggerInterface;
diff --git a/src/DI.php b/src/DI.php
index 103c9be69..5794f08f5 100644
--- a/src/DI.php
+++ b/src/DI.php
@@ -3,6 +3,7 @@
namespace Friendica;
use Dice\Dice;
+use Friendica\Core\L10n;
use Psr\Log\LoggerInterface;
/**
@@ -156,6 +157,9 @@ abstract class DI
return self::$dice->create(Core\Lock\ILock::class);
}
+ /**
+ * @return L10n
+ */
public static function l10n()
{
return self::$dice->create(Core\L10n::class);
From d6efc901946c91cf26a4436c4b58b1636e4bc9c9 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 22:07:07 +0100
Subject: [PATCH 10/16] cleanup namespace usages for L10n
---
doc/AddonStorageBackend.md | 10 +++++-----
include/api.php | 1 -
include/conversation.php | 1 -
include/enotify.php | 3 ---
include/items.php | 1 -
mod/api.php | 1 -
mod/cal.php | 1 -
mod/common.php | 1 -
mod/community.php | 1 -
mod/crepair.php | 1 -
mod/dfrn_confirm.php | 2 --
mod/dfrn_poll.php | 2 --
mod/dfrn_request.php | 1 -
mod/display.php | 1 -
mod/editpost.php | 1 -
mod/events.php | 1 -
mod/fbrowser.php | 1 -
mod/follow.php | 2 --
mod/fsuggest.php | 1 -
mod/item.php | 1 -
mod/lockview.php | 1 -
mod/lostpass.php | 1 -
mod/match.php | 1 -
mod/message.php | 1 -
mod/network.php | 1 -
mod/notes.php | 1 -
mod/notifications.php | 3 ---
mod/oexchange.php | 1 -
mod/ostatus_subscribe.php | 1 -
mod/photos.php | 1 -
mod/ping.php | 1 -
mod/poke.php | 1 -
mod/profile_photo.php | 1 -
mod/profiles.php | 1 -
mod/profperm.php | 1 -
mod/redir.php | 1 -
mod/regmod.php | 1 -
mod/removeme.php | 1 -
mod/repair_ostatus.php | 1 -
mod/settings.php | 1 -
mod/subthread.php | 1 -
mod/suggest.php | 1 -
mod/tagger.php | 1 -
mod/tagrm.php | 1 -
mod/uimport.php | 2 +-
mod/unfollow.php | 1 -
mod/update_community.php | 3 +--
mod/update_contact.php | 3 +--
mod/update_display.php | 1 -
mod/update_network.php | 1 -
mod/update_notes.php | 3 +--
mod/update_profile.php | 3 +--
mod/videos.php | 1 -
mod/wall_attach.php | 1 -
mod/wall_upload.php | 1 -
mod/wallmessage.php | 1 -
src/App/Router.php | 1 -
src/BaseModule.php | 1 -
src/Console/ArchiveContact.php | 1 -
src/Content/ContactSelector.php | 1 -
src/Content/Feature.php | 1 -
src/Content/ForumManager.php | 1 -
src/Content/Nav.php | 1 -
src/Content/OEmbed.php | 1 -
src/Content/Pager.php | 2 +-
src/Content/Text/BBCode.php | 1 -
src/Content/Text/HTML.php | 1 -
src/Content/Widget.php | 1 -
src/Content/Widget/CalendarExport.php | 1 -
src/Content/Widget/ContactBlock.php | 1 -
src/Content/Widget/SavedSearches.php | 2 +-
src/Content/Widget/TagCloud.php | 1 -
src/Content/Widget/TrendingTags.php | 2 +-
src/DI.php | 3 +--
src/Database/DBStructure.php | 1 -
src/Model/Contact.php | 1 -
src/Model/Event.php | 1 -
src/Model/FileTag.php | 1 -
src/Model/Group.php | 2 +-
src/Model/Item.php | 1 -
src/Model/Mail.php | 3 ---
src/Model/Photo.php | 1 -
src/Model/Profile.php | 1 -
src/Model/User.php | 1 -
src/Module/Admin/Addons/Details.php | 1 -
src/Module/Admin/Addons/Index.php | 1 -
src/Module/Admin/Blocklist/Contact.php | 1 -
src/Module/Admin/Blocklist/Server.php | 1 -
src/Module/Admin/DBSync.php | 1 -
src/Module/Admin/Features.php | 1 -
src/Module/Admin/Federation.php | 2 +-
src/Module/Admin/Item/Delete.php | 1 -
src/Module/Admin/Item/Source.php | 1 -
src/Module/Admin/Logs/Settings.php | 1 -
src/Module/Admin/Logs/View.php | 2 +-
src/Module/Admin/Queue.php | 1 -
src/Module/Admin/Site.php | 2 --
src/Module/Admin/Summary.php | 2 --
src/Module/Admin/Themes/Details.php | 1 -
src/Module/Admin/Themes/Embed.php | 1 -
src/Module/Admin/Themes/Index.php | 1 -
src/Module/Admin/Tos.php | 1 -
src/Module/Admin/Users.php | 1 -
src/Module/AllFriends.php | 1 -
src/Module/Apps.php | 1 -
src/Module/Attach.php | 2 --
src/Module/Base/Api.php | 2 --
src/Module/BaseAdminModule.php | 1 -
src/Module/BaseSearchModule.php | 1 -
src/Module/BaseSettingsModule.php | 1 -
src/Module/Bookmarklet.php | 1 -
src/Module/Contact.php | 1 -
src/Module/Credits.php | 1 -
src/Module/Debug/Babel.php | 1 -
src/Module/Debug/Feed.php | 1 -
src/Module/Debug/ItemBody.php | 1 -
src/Module/Debug/Localtime.php | 1 -
src/Module/Debug/Probe.php | 2 +-
src/Module/Debug/WebFinger.php | 2 +-
src/Module/Delegation.php | 1 -
src/Module/Directory.php | 1 -
src/Module/Filer/SaveTag.php | 1 -
src/Module/FollowConfirm.php | 2 --
src/Module/Friendica.php | 1 -
src/Module/Group.php | 1 -
src/Module/HTTPException/MethodNotAllowed.php | 2 +-
src/Module/HTTPException/PageNotFound.php | 2 +-
src/Module/Help.php | 1 -
src/Module/Home.php | 1 -
src/Module/Install.php | 1 -
src/Module/Invite.php | 1 -
src/Module/Item/Compose.php | 1 -
src/Module/Item/Ignore.php | 3 ---
src/Module/Maintenance.php | 1 -
src/Module/Notifications/Notify.php | 1 -
src/Module/Photo.php | 2 --
src/Module/Profile.php | 1 -
src/Module/Profile/Contacts.php | 1 -
src/Module/Proxy.php | 2 --
src/Module/Register.php | 3 +--
src/Module/Search/Acl.php | 1 -
src/Module/Search/Directory.php | 1 -
src/Module/Search/Index.php | 1 -
src/Module/Search/Saved.php | 1 -
src/Module/Security/Login.php | 1 -
src/Module/Security/TwoFactor/Recovery.php | 2 --
src/Module/Security/TwoFactor/Verify.php | 1 -
src/Module/Settings/Delegation.php | 3 ---
src/Module/Settings/TwoFactor/AppSpecific.php | 1 -
src/Module/Settings/TwoFactor/Index.php | 1 -
src/Module/Settings/TwoFactor/Recovery.php | 1 -
src/Module/Settings/TwoFactor/Verify.php | 1 -
src/Module/Settings/UserExport.php | 1 -
src/Module/Special/HTTPException.php | 4 +---
src/Module/Tos.php | 1 -
src/Module/Welcome.php | 1 -
src/Object/Post.php | 1 -
src/Protocol/Diaspora.php | 1 -
src/Protocol/OStatus.php | 1 -
src/Util/Temporal.php | 2 +-
src/Worker/Delivery.php | 1 -
tests/Util/SampleStorageBackend.php | 2 --
update.php | 1 -
view/theme/duepuntozero/config.php | 1 -
view/theme/frio/config.php | 1 -
view/theme/frio/php/Image.php | 4 ++--
view/theme/frio/theme.php | 1 -
view/theme/quattro/config.php | 1 -
view/theme/vier/config.php | 1 -
view/theme/vier/theme.php | 1 -
170 files changed, 26 insertions(+), 205 deletions(-)
diff --git a/doc/AddonStorageBackend.md b/doc/AddonStorageBackend.md
index ed6c5d87a..a4f8c0dae 100644
--- a/doc/AddonStorageBackend.md
+++ b/doc/AddonStorageBackend.md
@@ -136,26 +136,26 @@ namespace Friendica\Addon\samplestorage;
use Friendica\Model\Storage\IStorage;
-use Friendica\Core\Config;
+use Friendica\Core\Config\IConfiguration;
use Friendica\Core\L10n;
class SampleStorageBackend implements IStorage
{
const NAME = 'Sample Storage';
- /** @var Config\IConfiguration */
+ /** @var IConfiguration */
private $config;
- /** @var \Friendica\Core\L10n */
+ /** @var L10n */
private $l10n;
/**
* SampleStorageBackend constructor.
- * @param Config\IConfiguration $config The configuration of Friendica
+ * @param IConfiguration $config The configuration of Friendica
*
* You can add here every dynamic class as dependency you like and add them to a private field
* Friendica automatically creates these classes and passes them as argument to the constructor
*/
- public function __construct(Config\IConfiguration $config, \Friendica\Core\L10n $l10n)
+ public function __construct(IConfiguration $config, L10n $l10n)
{
$this->config = $config;
$this->l10n = $l10n;
diff --git a/include/api.php b/include/api.php
index 583573b58..fdf7726e2 100644
--- a/include/api.php
+++ b/include/api.php
@@ -13,7 +13,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Content\Text\HTML;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Session;
diff --git a/include/conversation.php b/include/conversation.php
index b541df364..e09f163ef 100644
--- a/include/conversation.php
+++ b/include/conversation.php
@@ -10,7 +10,6 @@ use Friendica\Content\Pager;
use Friendica\Content\Text\BBCode;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/include/enotify.php b/include/enotify.php
index ecdd16de1..b4f588140 100644
--- a/include/enotify.php
+++ b/include/enotify.php
@@ -6,12 +6,10 @@
use Friendica\Content\Text\BBCode;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\System;
use Friendica\Database\DBA;
-use Friendica\Model\Contact;
use Friendica\DI;
use Friendica\Model\Item;
use Friendica\Model\ItemContent;
@@ -20,7 +18,6 @@ use Friendica\Model\UserItem;
use Friendica\Protocol\Activity;
use Friendica\Util\DateTimeFormat;
use Friendica\Util\Emailer;
-use Friendica\Util\Strings;
/**
* Creates a notification entry and possibly sends a mail
diff --git a/include/items.php b/include/items.php
index a78588e9f..ef55acab1 100644
--- a/include/items.php
+++ b/include/items.php
@@ -5,7 +5,6 @@
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/mod/api.php b/mod/api.php
index b0941c558..3ed19e75b 100644
--- a/mod/api.php
+++ b/mod/api.php
@@ -5,7 +5,6 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/mod/cal.php b/mod/cal.php
index 6279bc241..1c14f9e77 100644
--- a/mod/cal.php
+++ b/mod/cal.php
@@ -12,7 +12,6 @@ use Friendica\Content\Feature;
use Friendica\Content\Nav;
use Friendica\Content\Widget;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\Database\DBA;
diff --git a/mod/common.php b/mod/common.php
index 4a539665a..d2e7baeca 100644
--- a/mod/common.php
+++ b/mod/common.php
@@ -6,7 +6,6 @@
use Friendica\App;
use Friendica\Content\ContactSelector;
use Friendica\Content\Pager;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/mod/community.php b/mod/community.php
index a318148aa..975b601f9 100644
--- a/mod/community.php
+++ b/mod/community.php
@@ -10,7 +10,6 @@ use Friendica\Content\Pager;
use Friendica\Content\Widget\TrendingTags;
use Friendica\Core\ACL;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\Database\DBA;
diff --git a/mod/crepair.php b/mod/crepair.php
index 985acce80..70db308f1 100644
--- a/mod/crepair.php
+++ b/mod/crepair.php
@@ -5,7 +5,6 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/mod/dfrn_confirm.php b/mod/dfrn_confirm.php
index a0752f888..1a262f760 100644
--- a/mod/dfrn_confirm.php
+++ b/mod/dfrn_confirm.php
@@ -20,7 +20,6 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\System;
@@ -29,7 +28,6 @@ use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Model\Group;
use Friendica\Model\User;
-use Friendica\Network\Probe;
use Friendica\Protocol\Activity;
use Friendica\Util\Crypto;
use Friendica\Util\DateTimeFormat;
diff --git a/mod/dfrn_poll.php b/mod/dfrn_poll.php
index e18874481..bce7bf0cb 100644
--- a/mod/dfrn_poll.php
+++ b/mod/dfrn_poll.php
@@ -6,13 +6,11 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\System;
use Friendica\Core\Session;
use Friendica\Database\DBA;
use Friendica\DI;
-use Friendica\Module\Security\Login;
use Friendica\Protocol\DFRN;
use Friendica\Protocol\OStatus;
use Friendica\Util\Network;
diff --git a/mod/dfrn_request.php b/mod/dfrn_request.php
index 888940af6..76ddb09a5 100644
--- a/mod/dfrn_request.php
+++ b/mod/dfrn_request.php
@@ -14,7 +14,6 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/mod/display.php b/mod/display.php
index 2b4e2c220..35cac53d0 100644
--- a/mod/display.php
+++ b/mod/display.php
@@ -9,7 +9,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Content\Text\HTML;
use Friendica\Core\ACL;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/mod/editpost.php b/mod/editpost.php
index 94d483172..2bbc2f2b6 100644
--- a/mod/editpost.php
+++ b/mod/editpost.php
@@ -6,7 +6,6 @@
use Friendica\App;
use Friendica\Content\Feature;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/mod/events.php b/mod/events.php
index f92a01cf6..5601c4449 100644
--- a/mod/events.php
+++ b/mod/events.php
@@ -8,7 +8,6 @@ use Friendica\App;
use Friendica\Content\Nav;
use Friendica\Content\Widget\CalendarExport;
use Friendica\Core\ACL;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\Theme;
diff --git a/mod/fbrowser.php b/mod/fbrowser.php
index 79dd1599b..a4ade6f8c 100644
--- a/mod/fbrowser.php
+++ b/mod/fbrowser.php
@@ -6,7 +6,6 @@
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/mod/follow.php b/mod/follow.php
index dce6798b3..4f3acf5ef 100644
--- a/mod/follow.php
+++ b/mod/follow.php
@@ -4,10 +4,8 @@
*/
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
-use Friendica\Core\System;
use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Model\Profile;
diff --git a/mod/fsuggest.php b/mod/fsuggest.php
index f7c1930cc..6d23c3115 100644
--- a/mod/fsuggest.php
+++ b/mod/fsuggest.php
@@ -5,7 +5,6 @@
use Friendica\App;
use Friendica\Core\ACL;
-use Friendica\Core\L10n;
use Friendica\Core\Worker;
use Friendica\Database\DBA;
use Friendica\Util\DateTimeFormat;
diff --git a/mod/item.php b/mod/item.php
index a639886ad..606c0ba58 100644
--- a/mod/item.php
+++ b/mod/item.php
@@ -21,7 +21,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Content\Text\HTML;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Session;
diff --git a/mod/lockview.php b/mod/lockview.php
index aeee5a762..e3382bddb 100644
--- a/mod/lockview.php
+++ b/mod/lockview.php
@@ -4,7 +4,6 @@
*/
use Friendica\App;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Model\Group;
diff --git a/mod/lostpass.php b/mod/lostpass.php
index cf6801d70..3d397677b 100644
--- a/mod/lostpass.php
+++ b/mod/lostpass.php
@@ -6,7 +6,6 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/mod/match.php b/mod/match.php
index c187546b3..eab337d07 100644
--- a/mod/match.php
+++ b/mod/match.php
@@ -6,7 +6,6 @@
use Friendica\App;
use Friendica\Content\Widget;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Search;
use Friendica\Database\DBA;
diff --git a/mod/message.php b/mod/message.php
index bff62a554..d1d3e89df 100644
--- a/mod/message.php
+++ b/mod/message.php
@@ -8,7 +8,6 @@ use Friendica\Content\Nav;
use Friendica\Content\Pager;
use Friendica\Content\Text\BBCode;
use Friendica\Core\ACL;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/mod/network.php b/mod/network.php
index 106705bd8..b0154a80f 100644
--- a/mod/network.php
+++ b/mod/network.php
@@ -14,7 +14,6 @@ use Friendica\Content\Text\HTML;
use Friendica\Core\ACL;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/mod/notes.php b/mod/notes.php
index 223e03023..536029338 100644
--- a/mod/notes.php
+++ b/mod/notes.php
@@ -6,7 +6,6 @@
use Friendica\App;
use Friendica\Content\Nav;
use Friendica\Content\Pager;
-use Friendica\Core\L10n;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Model\Item;
diff --git a/mod/notifications.php b/mod/notifications.php
index 634a6d74a..43d3f7871 100644
--- a/mod/notifications.php
+++ b/mod/notifications.php
@@ -8,15 +8,12 @@ use Friendica\App;
use Friendica\Content\ContactSelector;
use Friendica\Content\Nav;
use Friendica\Content\Pager;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Core\System;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Module\Security\Login;
-use Friendica\Model\Contact;
-use Friendica\Model\Introduction;
function notifications_post(App $a)
{
diff --git a/mod/oexchange.php b/mod/oexchange.php
index d1b5523a4..3eb13460d 100644
--- a/mod/oexchange.php
+++ b/mod/oexchange.php
@@ -3,7 +3,6 @@
* @file mod/oexchange.php
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\Security\Login;
diff --git a/mod/ostatus_subscribe.php b/mod/ostatus_subscribe.php
index a6c7d9da4..e5a3f1e9b 100644
--- a/mod/ostatus_subscribe.php
+++ b/mod/ostatus_subscribe.php
@@ -4,7 +4,6 @@
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\DI;
use Friendica\Model\Contact;
diff --git a/mod/photos.php b/mod/photos.php
index db30c7d94..258071997 100644
--- a/mod/photos.php
+++ b/mod/photos.php
@@ -11,7 +11,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Core\ACL;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
diff --git a/mod/ping.php b/mod/ping.php
index 57b55a0f9..a00c5dfe3 100644
--- a/mod/ping.php
+++ b/mod/ping.php
@@ -9,7 +9,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Core\Cache\Duration;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Model\Contact;
diff --git a/mod/poke.php b/mod/poke.php
index 949bbd5ae..0034a2d87 100644
--- a/mod/poke.php
+++ b/mod/poke.php
@@ -15,7 +15,6 @@
use Friendica\App;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\System;
diff --git a/mod/profile_photo.php b/mod/profile_photo.php
index dddd1957d..47c058b6e 100644
--- a/mod/profile_photo.php
+++ b/mod/profile_photo.php
@@ -6,7 +6,6 @@
use Friendica\App;
use Friendica\BaseModule;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Worker;
use Friendica\Database\DBA;
diff --git a/mod/profiles.php b/mod/profiles.php
index 2e530a175..d979048a0 100644
--- a/mod/profiles.php
+++ b/mod/profiles.php
@@ -10,7 +10,6 @@ use Friendica\Content\Feature;
use Friendica\Content\Nav;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Worker;
use Friendica\Database\DBA;
diff --git a/mod/profperm.php b/mod/profperm.php
index 5c4325048..2e8803fde 100644
--- a/mod/profperm.php
+++ b/mod/profperm.php
@@ -4,7 +4,6 @@
*/
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Content\Text\HTML;
use Friendica\Database\DBA;
diff --git a/mod/redir.php b/mod/redir.php
index 990ebc194..5bfed1c11 100644
--- a/mod/redir.php
+++ b/mod/redir.php
@@ -1,7 +1,6 @@
get(local_user(), "system", "bandwidth_saver")) {
- $replace = " ".DI::l10n()->t("[Embedded content - reload page to view]")." ";
+ $replace = " " . DI::l10n()->t("[Embedded content - reload page to view]") . " ";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_contact.php b/mod/update_contact.php
index a347873da..bd9ced0e9 100644
--- a/mod/update_contact.php
+++ b/mod/update_contact.php
@@ -3,7 +3,6 @@
// See update_profile.php for documentation
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Module\Contact;
@@ -20,7 +19,7 @@ function update_contact_content(App $a)
}
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = " ".DI::l10n()->t("[Embedded content - reload page to view]")." ";
+ $replace = " " . DI::l10n()->t("[Embedded content - reload page to view]") . " ";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_display.php b/mod/update_display.php
index 9d725fed2..b8f3d8f49 100644
--- a/mod/update_display.php
+++ b/mod/update_display.php
@@ -5,7 +5,6 @@
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\DI;
require_once "mod/display.php";
diff --git a/mod/update_network.php b/mod/update_network.php
index 212b6a6b1..9aa0443f1 100644
--- a/mod/update_network.php
+++ b/mod/update_network.php
@@ -5,7 +5,6 @@
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\DI;
require_once "mod/network.php";
diff --git a/mod/update_notes.php b/mod/update_notes.php
index 4027d4a33..4065b5d1f 100644
--- a/mod/update_notes.php
+++ b/mod/update_notes.php
@@ -6,7 +6,6 @@
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\DI;
require_once("mod/notes.php");
@@ -33,7 +32,7 @@ function update_notes_content(App $a) {
$text = notes_content($a, $profile_uid);
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = " ".DI::l10n()->t("[Embedded content - reload page to view]")." ";
+ $replace = " " . DI::l10n()->t("[Embedded content - reload page to view]") . " ";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/update_profile.php b/mod/update_profile.php
index 8d94d34a1..348a384c2 100644
--- a/mod/update_profile.php
+++ b/mod/update_profile.php
@@ -6,7 +6,6 @@
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Module\Profile;
@@ -31,7 +30,7 @@ function update_profile_content(App $a) {
$text = Profile::content([], $profile_uid);
if (DI::pConfig()->get(local_user(), "system", "bandwidth_saver")) {
- $replace = " ".DI::l10n()->t("[Embedded content - reload page to view]")." ";
+ $replace = " " . DI::l10n()->t("[Embedded content - reload page to view]") . " ";
$pattern = "/<\s*audio[^>]*>(.*?)<\s*\/\s*audio>/i";
$text = preg_replace($pattern, $replace, $text);
$pattern = "/<\s*video[^>]*>(.*?)<\s*\/\s*video>/i";
diff --git a/mod/videos.php b/mod/videos.php
index 368eec3c9..342e988f3 100644
--- a/mod/videos.php
+++ b/mod/videos.php
@@ -7,7 +7,6 @@ use Friendica\App;
use Friendica\Content\Nav;
use Friendica\Content\Pager;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\Database\DBA;
diff --git a/mod/wall_attach.php b/mod/wall_attach.php
index a8f704cd9..f04698c56 100644
--- a/mod/wall_attach.php
+++ b/mod/wall_attach.php
@@ -5,7 +5,6 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Session;
use Friendica\Database\DBA;
use Friendica\Model\Attach;
diff --git a/mod/wall_upload.php b/mod/wall_upload.php
index 814a32fd4..2f92b2f03 100644
--- a/mod/wall_upload.php
+++ b/mod/wall_upload.php
@@ -10,7 +10,6 @@
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Session;
use Friendica\Database\DBA;
diff --git a/mod/wallmessage.php b/mod/wallmessage.php
index cf9759b71..085201fc4 100644
--- a/mod/wallmessage.php
+++ b/mod/wallmessage.php
@@ -3,7 +3,6 @@
* @file mod/wallmessage.php
*/
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
diff --git a/src/App/Router.php b/src/App/Router.php
index 968855acb..27ea4ac60 100644
--- a/src/App/Router.php
+++ b/src/App/Router.php
@@ -8,7 +8,6 @@ use FastRoute\Dispatcher;
use FastRoute\RouteCollector;
use FastRoute\RouteParser\Std;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Network\HTTPException;
/**
diff --git a/src/BaseModule.php b/src/BaseModule.php
index 666496ba9..2250f22bb 100644
--- a/src/BaseModule.php
+++ b/src/BaseModule.php
@@ -2,7 +2,6 @@
namespace Friendica;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
/**
diff --git a/src/Console/ArchiveContact.php b/src/Console/ArchiveContact.php
index 5635905bb..74f1817d1 100644
--- a/src/Console/ArchiveContact.php
+++ b/src/Console/ArchiveContact.php
@@ -3,7 +3,6 @@
namespace Friendica\Console;
use Friendica\App;
-use Friendica\Core\L10n;
use Friendica\Database\Database;
use Friendica\Util\Strings;
use RuntimeException;
diff --git a/src/Content/ContactSelector.php b/src/Content/ContactSelector.php
index f9d6b0494..184707220 100644
--- a/src/Content/ContactSelector.php
+++ b/src/Content/ContactSelector.php
@@ -5,7 +5,6 @@
namespace Friendica\Content;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Database\DBA;
use Friendica\Util\Network;
diff --git a/src/Content/Feature.php b/src/Content/Feature.php
index 563c0ab92..ef8a3d9a2 100644
--- a/src/Content/Feature.php
+++ b/src/Content/Feature.php
@@ -7,7 +7,6 @@ namespace Friendica\Content;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\DI;
class Feature
diff --git a/src/Content/ForumManager.php b/src/Content/ForumManager.php
index 7c2061c47..f3f3392ec 100644
--- a/src/Content/ForumManager.php
+++ b/src/Content/ForumManager.php
@@ -7,7 +7,6 @@ namespace Friendica\Content;
use Friendica\Core\Protocol;
use Friendica\Content\Text\HTML;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/src/Content/Nav.php b/src/Content/Nav.php
index 30e4a1c08..041d07246 100644
--- a/src/Content/Nav.php
+++ b/src/Content/Nav.php
@@ -7,7 +7,6 @@ namespace Friendica\Content;
use Friendica\App;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\Database\DBA;
diff --git a/src/Content/OEmbed.php b/src/Content/OEmbed.php
index 3eceb21c2..8865e3c8c 100644
--- a/src/Content/OEmbed.php
+++ b/src/Content/OEmbed.php
@@ -13,7 +13,6 @@ use Exception;
use Friendica\Core\Cache\Duration;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/src/Content/Pager.php b/src/Content/Pager.php
index f8dace08c..800aa760e 100644
--- a/src/Content/Pager.php
+++ b/src/Content/Pager.php
@@ -2,8 +2,8 @@
namespace Friendica\Content;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
+use Friendica\DI;
use Friendica\Util\Strings;
/**
diff --git a/src/Content/Text/BBCode.php b/src/Content/Text/BBCode.php
index 4a0a329b4..11e6ee211 100644
--- a/src/Content/Text/BBCode.php
+++ b/src/Content/Text/BBCode.php
@@ -12,7 +12,6 @@ use Friendica\Content\OEmbed;
use Friendica\Content\Smilies;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/src/Content/Text/HTML.php b/src/Content/Text/HTML.php
index 1cd076139..798d6b0a6 100644
--- a/src/Content/Text/HTML.php
+++ b/src/Content/Text/HTML.php
@@ -9,7 +9,6 @@ use DOMDocument;
use DOMXPath;
use Friendica\Content\Widget\ContactBlock;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Config;
use Friendica\Core\Renderer;
use Friendica\DI;
diff --git a/src/Content/Widget.php b/src/Content/Widget.php
index 2052d216d..55277432b 100644
--- a/src/Content/Widget.php
+++ b/src/Content/Widget.php
@@ -6,7 +6,6 @@ namespace Friendica\Content;
use Friendica\Core\Addon;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
diff --git a/src/Content/Widget/CalendarExport.php b/src/Content/Widget/CalendarExport.php
index 293f9ae0e..693be2d6f 100644
--- a/src/Content/Widget/CalendarExport.php
+++ b/src/Content/Widget/CalendarExport.php
@@ -7,7 +7,6 @@
namespace Friendica\Content\Widget;
use Friendica\Content\Feature;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
diff --git a/src/Content/Widget/ContactBlock.php b/src/Content/Widget/ContactBlock.php
index fbb5683af..bce4b617f 100644
--- a/src/Content/Widget/ContactBlock.php
+++ b/src/Content/Widget/ContactBlock.php
@@ -8,7 +8,6 @@ namespace Friendica\Content\Widget;
use Friendica\Content\Text\HTML;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
diff --git a/src/Content/Widget/SavedSearches.php b/src/Content/Widget/SavedSearches.php
index 69d667caa..ebfc78ca7 100644
--- a/src/Content/Widget/SavedSearches.php
+++ b/src/Content/Widget/SavedSearches.php
@@ -2,9 +2,9 @@
namespace Friendica\Content\Widget;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
+use Friendica\DI;
class SavedSearches
{
diff --git a/src/Content/Widget/TagCloud.php b/src/Content/Widget/TagCloud.php
index 612ae792f..f57d5c3f2 100644
--- a/src/Content/Widget/TagCloud.php
+++ b/src/Content/Widget/TagCloud.php
@@ -6,7 +6,6 @@
namespace Friendica\Content\Widget;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/src/Content/Widget/TrendingTags.php b/src/Content/Widget/TrendingTags.php
index 2e97c8157..102a4f14c 100644
--- a/src/Content/Widget/TrendingTags.php
+++ b/src/Content/Widget/TrendingTags.php
@@ -2,8 +2,8 @@
namespace Friendica\Content\Widget;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
+use Friendica\DI;
use Friendica\Model\Term;
/**
diff --git a/src/DI.php b/src/DI.php
index 5794f08f5..a76fa4666 100644
--- a/src/DI.php
+++ b/src/DI.php
@@ -3,7 +3,6 @@
namespace Friendica;
use Dice\Dice;
-use Friendica\Core\L10n;
use Psr\Log\LoggerInterface;
/**
@@ -158,7 +157,7 @@ abstract class DI
}
/**
- * @return L10n
+ * @return Core\L10n
*/
public static function l10n()
{
diff --git a/src/Database/DBStructure.php b/src/Database/DBStructure.php
index 4c56263ab..e2a45783b 100644
--- a/src/Database/DBStructure.php
+++ b/src/Database/DBStructure.php
@@ -8,7 +8,6 @@ namespace Friendica\Database;
use Exception;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Util\DateTimeFormat;
diff --git a/src/Model/Contact.php b/src/Model/Contact.php
index d93b2469d..5d2c4aa19 100644
--- a/src/Model/Contact.php
+++ b/src/Model/Contact.php
@@ -8,7 +8,6 @@ use Friendica\App\BaseURL;
use Friendica\Content\Pager;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Session;
diff --git a/src/Model/Event.php b/src/Model/Event.php
index ce2e9d53b..1f20482d5 100644
--- a/src/Model/Event.php
+++ b/src/Model/Event.php
@@ -7,7 +7,6 @@ namespace Friendica\Model;
use Friendica\Content\Text\BBCode;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\System;
diff --git a/src/Model/FileTag.php b/src/Model/FileTag.php
index 662fdbdff..9908c8a33 100644
--- a/src/Model/FileTag.php
+++ b/src/Model/FileTag.php
@@ -5,7 +5,6 @@
namespace Friendica\Model;
-use Friendica\Core\L10n;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/src/Model/Group.php b/src/Model/Group.php
index a810fff67..c38e78000 100644
--- a/src/Model/Group.php
+++ b/src/Model/Group.php
@@ -6,11 +6,11 @@
namespace Friendica\Model;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
+use Friendica\DI;
/**
* functions for interacting with the group database table
diff --git a/src/Model/Item.php b/src/Model/Item.php
index 050e79de5..88208564d 100644
--- a/src/Model/Item.php
+++ b/src/Model/Item.php
@@ -10,7 +10,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Content\Text\HTML;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/src/Model/Mail.php b/src/Model/Mail.php
index 77bf39878..de351db4a 100644
--- a/src/Model/Mail.php
+++ b/src/Model/Mail.php
@@ -5,13 +5,10 @@
*/
namespace Friendica\Model;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\System;
use Friendica\Core\Worker;
use Friendica\DI;
-use Friendica\Model\Item;
-use Friendica\Model\Photo;
use Friendica\Database\DBA;
use Friendica\Network\Probe;
use Friendica\Protocol\Activity;
diff --git a/src/Model/Photo.php b/src/Model/Photo.php
index 461cddf29..60d7f1e43 100644
--- a/src/Model/Photo.php
+++ b/src/Model/Photo.php
@@ -8,7 +8,6 @@ namespace Friendica\Model;
use Friendica\Core\Cache\Duration;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\System;
use Friendica\Database\DBA;
diff --git a/src/Model/Profile.php b/src/Model/Profile.php
index bb19fbe9b..c45f0f68f 100644
--- a/src/Model/Profile.php
+++ b/src/Model/Profile.php
@@ -13,7 +13,6 @@ use Friendica\Content\Widget\ContactBlock;
use Friendica\Core\Cache\Duration;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
diff --git a/src/Model/User.php b/src/Model/User.php
index be93f3e4d..171d9761c 100644
--- a/src/Model/User.php
+++ b/src/Model/User.php
@@ -11,7 +11,6 @@ use DivineOmega\PasswordExposed;
use Exception;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\System;
diff --git a/src/Module/Admin/Addons/Details.php b/src/Module/Admin/Addons/Details.php
index 878b7c3e5..ebf87deda 100644
--- a/src/Module/Admin/Addons/Details.php
+++ b/src/Module/Admin/Addons/Details.php
@@ -4,7 +4,6 @@ namespace Friendica\Module\Admin\Addons;
use Friendica\Content\Text\Markdown;
use Friendica\Core\Addon;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\BaseAdminModule;
diff --git a/src/Module/Admin/Addons/Index.php b/src/Module/Admin/Addons/Index.php
index 48276aa5d..634bd08c7 100644
--- a/src/Module/Admin/Addons/Index.php
+++ b/src/Module/Admin/Addons/Index.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin\Addons;
use Friendica\Core\Addon;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\BaseAdminModule;
diff --git a/src/Module/Admin/Blocklist/Contact.php b/src/Module/Admin/Blocklist/Contact.php
index ed99a39f8..8eaf418a8 100644
--- a/src/Module/Admin/Blocklist/Contact.php
+++ b/src/Module/Admin/Blocklist/Contact.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin\Blocklist;
use Friendica\Content\Pager;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/src/Module/Admin/Blocklist/Server.php b/src/Module/Admin/Blocklist/Server.php
index 4ae395fc0..e620c6233 100644
--- a/src/Module/Admin/Blocklist/Server.php
+++ b/src/Module/Admin/Blocklist/Server.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin\Blocklist;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\BaseAdminModule;
diff --git a/src/Module/Admin/DBSync.php b/src/Module/Admin/DBSync.php
index 4368e6eed..f750108d7 100644
--- a/src/Module/Admin/DBSync.php
+++ b/src/Module/Admin/DBSync.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Update;
use Friendica\Database\DBA;
diff --git a/src/Module/Admin/Features.php b/src/Module/Admin/Features.php
index 9171d70fe..2c735feff 100644
--- a/src/Module/Admin/Features.php
+++ b/src/Module/Admin/Features.php
@@ -4,7 +4,6 @@ namespace Friendica\Module\Admin;
use Friendica\Content\Feature;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\BaseAdminModule;
diff --git a/src/Module/Admin/Federation.php b/src/Module/Admin/Federation.php
index 4d7407432..d6d1c3006 100644
--- a/src/Module/Admin/Federation.php
+++ b/src/Module/Admin/Federation.php
@@ -3,9 +3,9 @@
namespace Friendica\Module\Admin;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
+use Friendica\DI;
use Friendica\Module\BaseAdminModule;
class Federation extends BaseAdminModule
diff --git a/src/Module/Admin/Item/Delete.php b/src/Module/Admin/Item/Delete.php
index 6ceb20c05..1d7e459a2 100644
--- a/src/Module/Admin/Item/Delete.php
+++ b/src/Module/Admin/Item/Delete.php
@@ -2,7 +2,6 @@
namespace Friendica\Module\Admin\Item;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model\Item;
diff --git a/src/Module/Admin/Item/Source.php b/src/Module/Admin/Item/Source.php
index 9bdcd9b7d..d4666b27f 100644
--- a/src/Module/Admin/Item/Source.php
+++ b/src/Module/Admin/Item/Source.php
@@ -2,7 +2,6 @@
namespace Friendica\Module\Admin\Item;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model;
diff --git a/src/Module/Admin/Logs/Settings.php b/src/Module/Admin/Logs/Settings.php
index f04057a98..95f561597 100644
--- a/src/Module/Admin/Logs/Settings.php
+++ b/src/Module/Admin/Logs/Settings.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin\Logs;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\BaseAdminModule;
diff --git a/src/Module/Admin/Logs/View.php b/src/Module/Admin/Logs/View.php
index fe8bf614c..63d7c954e 100644
--- a/src/Module/Admin/Logs/View.php
+++ b/src/Module/Admin/Logs/View.php
@@ -3,8 +3,8 @@
namespace Friendica\Module\Admin\Logs;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
+use Friendica\DI;
use Friendica\Module\BaseAdminModule;
use Friendica\Util\Strings;
diff --git a/src/Module/Admin/Queue.php b/src/Module/Admin/Queue.php
index c13edb3f3..a9295f6f9 100644
--- a/src/Module/Admin/Queue.php
+++ b/src/Module/Admin/Queue.php
@@ -2,7 +2,6 @@
namespace Friendica\Module\Admin;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/src/Module/Admin/Site.php b/src/Module/Admin/Site.php
index 9a7aa5956..aedd8500b 100644
--- a/src/Module/Admin/Site.php
+++ b/src/Module/Admin/Site.php
@@ -4,10 +4,8 @@ namespace Friendica\Module\Admin;
use Friendica\App;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Search;
-use Friendica\Core\StorageManager;
use Friendica\Core\Theme;
use Friendica\Core\Worker;
use Friendica\Database\DBA;
diff --git a/src/Module/Admin/Summary.php b/src/Module/Admin/Summary.php
index 50b513bfc..af62911b7 100644
--- a/src/Module/Admin/Summary.php
+++ b/src/Module/Admin/Summary.php
@@ -4,7 +4,6 @@ namespace Friendica\Module\Admin;
use Friendica\Core\Addon;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\Update;
@@ -16,7 +15,6 @@ use Friendica\Module\BaseAdminModule;
use Friendica\Network\HTTPException\InternalServerErrorException;
use Friendica\Util\ConfigFileLoader;
use Friendica\Util\DateTimeFormat;
-use Friendica\Util\FileSystem;
use Friendica\Util\Network;
class Summary extends BaseAdminModule
diff --git a/src/Module/Admin/Themes/Details.php b/src/Module/Admin/Themes/Details.php
index 0c2529b92..f1263e6ca 100644
--- a/src/Module/Admin/Themes/Details.php
+++ b/src/Module/Admin/Themes/Details.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin\Themes;
use Friendica\Content\Text\Markdown;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Theme;
use Friendica\DI;
diff --git a/src/Module/Admin/Themes/Embed.php b/src/Module/Admin/Themes/Embed.php
index 3da022322..00d4de695 100644
--- a/src/Module/Admin/Themes/Embed.php
+++ b/src/Module/Admin/Themes/Embed.php
@@ -2,7 +2,6 @@
namespace Friendica\Module\Admin\Themes;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\BaseAdminModule;
diff --git a/src/Module/Admin/Themes/Index.php b/src/Module/Admin/Themes/Index.php
index 03794a155..aae73c1fc 100644
--- a/src/Module/Admin/Themes/Index.php
+++ b/src/Module/Admin/Themes/Index.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin\Themes;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Theme;
use Friendica\DI;
diff --git a/src/Module/Admin/Tos.php b/src/Module/Admin/Tos.php
index 158738fd8..d5e0bdc6f 100644
--- a/src/Module/Admin/Tos.php
+++ b/src/Module/Admin/Tos.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Admin;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\BaseAdminModule;
diff --git a/src/Module/Admin/Users.php b/src/Module/Admin/Users.php
index 2d38d5926..710708087 100644
--- a/src/Module/Admin/Users.php
+++ b/src/Module/Admin/Users.php
@@ -4,7 +4,6 @@ namespace Friendica\Module\Admin;
use Friendica\Content\Pager;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\DI;
diff --git a/src/Module/AllFriends.php b/src/Module/AllFriends.php
index b9105c81d..662dc17e4 100644
--- a/src/Module/AllFriends.php
+++ b/src/Module/AllFriends.php
@@ -5,7 +5,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Content\ContactSelector;
use Friendica\Content\Pager;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model;
diff --git a/src/Module/Apps.php b/src/Module/Apps.php
index 22585f86a..6b16935ab 100644
--- a/src/Module/Apps.php
+++ b/src/Module/Apps.php
@@ -5,7 +5,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Content\Nav;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
diff --git a/src/Module/Attach.php b/src/Module/Attach.php
index 057b4a9aa..7a625e600 100644
--- a/src/Module/Attach.php
+++ b/src/Module/Attach.php
@@ -7,9 +7,7 @@
namespace Friendica\Module;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
-use Friendica\Core\System;
use Friendica\DI;
use Friendica\Model\Attach as MAttach;
diff --git a/src/Module/Base/Api.php b/src/Module/Base/Api.php
index 2df9f0090..7349f45fa 100644
--- a/src/Module/Base/Api.php
+++ b/src/Module/Base/Api.php
@@ -2,9 +2,7 @@
namespace Friendica\Module\Base;
-use Friendica\App\Arguments;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Network\HTTPException;
diff --git a/src/Module/BaseAdminModule.php b/src/Module/BaseAdminModule.php
index ea61a6172..f0cfb0c11 100644
--- a/src/Module/BaseAdminModule.php
+++ b/src/Module/BaseAdminModule.php
@@ -4,7 +4,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\Addon;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\DI;
diff --git a/src/Module/BaseSearchModule.php b/src/Module/BaseSearchModule.php
index eeb04feeb..42bb943da 100644
--- a/src/Module/BaseSearchModule.php
+++ b/src/Module/BaseSearchModule.php
@@ -5,7 +5,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Content\ContactSelector;
use Friendica\Content\Pager;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Search;
use Friendica\DI;
diff --git a/src/Module/BaseSettingsModule.php b/src/Module/BaseSettingsModule.php
index 4a6b7b28e..2f51dde64 100644
--- a/src/Module/BaseSettingsModule.php
+++ b/src/Module/BaseSettingsModule.php
@@ -4,7 +4,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Content\Feature;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
diff --git a/src/Module/Bookmarklet.php b/src/Module/Bookmarklet.php
index a5d4801a9..1c1763e88 100644
--- a/src/Module/Bookmarklet.php
+++ b/src/Module/Bookmarklet.php
@@ -4,7 +4,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\ACL;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Module\Security\Login;
use Friendica\Network\HTTPException;
diff --git a/src/Module/Contact.php b/src/Module/Contact.php
index 19e736313..6549dd1e0 100644
--- a/src/Module/Contact.php
+++ b/src/Module/Contact.php
@@ -11,7 +11,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Content\Widget;
use Friendica\Core\ACL;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Core\Worker;
diff --git a/src/Module/Credits.php b/src/Module/Credits.php
index 9e0e4d4ea..5f2156e64 100644
--- a/src/Module/Credits.php
+++ b/src/Module/Credits.php
@@ -3,7 +3,6 @@
namespace Friendica\Module;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
/**
diff --git a/src/Module/Debug/Babel.php b/src/Module/Debug/Babel.php
index 528e55344..03b27e9ab 100644
--- a/src/Module/Debug/Babel.php
+++ b/src/Module/Debug/Babel.php
@@ -4,7 +4,6 @@ namespace Friendica\Module\Debug;
use Friendica\BaseModule;
use Friendica\Content\Text;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Model\Item;
use Friendica\Util\XML;
diff --git a/src/Module/Debug/Feed.php b/src/Module/Debug/Feed.php
index d3c0639b7..6393a6b75 100644
--- a/src/Module/Debug/Feed.php
+++ b/src/Module/Debug/Feed.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Debug;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model;
diff --git a/src/Module/Debug/ItemBody.php b/src/Module/Debug/ItemBody.php
index 388b497ec..929cabdaf 100644
--- a/src/Module/Debug/ItemBody.php
+++ b/src/Module/Debug/ItemBody.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Debug;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Model\Item;
use Friendica\Network\HTTPException;
diff --git a/src/Module/Debug/Localtime.php b/src/Module/Debug/Localtime.php
index 5d2e22a6f..7e05caa6f 100644
--- a/src/Module/Debug/Localtime.php
+++ b/src/Module/Debug/Localtime.php
@@ -4,7 +4,6 @@ namespace Friendica\Module\Debug;
use Friendica\BaseModule;
use Friendica\Core\Installer;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Util\DateTimeFormat;
use Friendica\Util\Temporal;
diff --git a/src/Module/Debug/Probe.php b/src/Module/Debug/Probe.php
index b5380c536..8a777ec5f 100644
--- a/src/Module/Debug/Probe.php
+++ b/src/Module/Debug/Probe.php
@@ -3,8 +3,8 @@
namespace Friendica\Module\Debug;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
+use Friendica\DI;
use Friendica\Network\HTTPException;
use Friendica\Network\Probe as NetworkProbe;
diff --git a/src/Module/Debug/WebFinger.php b/src/Module/Debug/WebFinger.php
index ad3963cb9..a66e2b318 100644
--- a/src/Module/Debug/WebFinger.php
+++ b/src/Module/Debug/WebFinger.php
@@ -3,8 +3,8 @@
namespace Friendica\Module\Debug;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
+use Friendica\DI;
use Friendica\Network\Probe;
/**
diff --git a/src/Module/Delegation.php b/src/Module/Delegation.php
index ef6a5edf9..8f52ec38c 100644
--- a/src/Module/Delegation.php
+++ b/src/Module/Delegation.php
@@ -4,7 +4,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\Database\DBA;
diff --git a/src/Module/Directory.php b/src/Module/Directory.php
index 9dec1ca23..cc12e9dd2 100644
--- a/src/Module/Directory.php
+++ b/src/Module/Directory.php
@@ -7,7 +7,6 @@ use Friendica\Content\Nav;
use Friendica\Content\Pager;
use Friendica\Content\Widget;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Session;
use Friendica\Core\Renderer;
use Friendica\DI;
diff --git a/src/Module/Filer/SaveTag.php b/src/Module/Filer/SaveTag.php
index 93cb5f5a8..7c5c764cd 100644
--- a/src/Module/Filer/SaveTag.php
+++ b/src/Module/Filer/SaveTag.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Filer;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model;
diff --git a/src/Module/FollowConfirm.php b/src/Module/FollowConfirm.php
index 5ff618ae6..28c849a86 100644
--- a/src/Module/FollowConfirm.php
+++ b/src/Module/FollowConfirm.php
@@ -2,8 +2,6 @@
namespace Friendica\Module;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
-use Friendica\Model\Introduction;
use Friendica\DI;
/**
diff --git a/src/Module/Friendica.php b/src/Module/Friendica.php
index b48ad7f03..42b1be57d 100644
--- a/src/Module/Friendica.php
+++ b/src/Module/Friendica.php
@@ -5,7 +5,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\Addon;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model\User;
diff --git a/src/Module/Group.php b/src/Module/Group.php
index e9d4020ea..6767479c3 100644
--- a/src/Module/Group.php
+++ b/src/Module/Group.php
@@ -7,7 +7,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\System;
use Friendica\Database\DBA;
diff --git a/src/Module/HTTPException/MethodNotAllowed.php b/src/Module/HTTPException/MethodNotAllowed.php
index f75bdd8ca..11f2ed91e 100644
--- a/src/Module/HTTPException/MethodNotAllowed.php
+++ b/src/Module/HTTPException/MethodNotAllowed.php
@@ -3,7 +3,7 @@
namespace Friendica\Module\HTTPException;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
+use Friendica\DI;
use Friendica\Network\HTTPException;
class MethodNotAllowed extends BaseModule
diff --git a/src/Module/HTTPException/PageNotFound.php b/src/Module/HTTPException/PageNotFound.php
index 6c2395b0e..2457a167d 100644
--- a/src/Module/HTTPException/PageNotFound.php
+++ b/src/Module/HTTPException/PageNotFound.php
@@ -3,7 +3,7 @@
namespace Friendica\Module\HTTPException;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
+use Friendica\DI;
use Friendica\Network\HTTPException;
class PageNotFound extends BaseModule
diff --git a/src/Module/Help.php b/src/Module/Help.php
index 061ab2a43..fb31a30ee 100644
--- a/src/Module/Help.php
+++ b/src/Module/Help.php
@@ -5,7 +5,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Content\Nav;
use Friendica\Content\Text\Markdown;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Network\HTTPException;
use Friendica\Util\Strings;
diff --git a/src/Module/Home.php b/src/Module/Home.php
index 6ce025208..f89920e54 100644
--- a/src/Module/Home.php
+++ b/src/Module/Home.php
@@ -4,7 +4,6 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Module\Security\Login;
diff --git a/src/Module/Install.php b/src/Module/Install.php
index 2e8d088b0..e20d80f20 100644
--- a/src/Module/Install.php
+++ b/src/Module/Install.php
@@ -6,7 +6,6 @@ use Friendica\App;
use Friendica\BaseModule;
use Friendica\Core;
use Friendica\Core\Config\Cache\ConfigCache;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Network\HTTPException;
diff --git a/src/Module/Invite.php b/src/Module/Invite.php
index b467d14ec..df569377b 100644
--- a/src/Module/Invite.php
+++ b/src/Module/Invite.php
@@ -3,7 +3,6 @@
namespace Friendica\Module;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model;
diff --git a/src/Module/Item/Compose.php b/src/Module/Item/Compose.php
index c033f097d..17185d143 100644
--- a/src/Module/Item/Compose.php
+++ b/src/Module/Item/Compose.php
@@ -6,7 +6,6 @@ use Friendica\BaseModule;
use Friendica\Content\Feature;
use Friendica\Core\ACL;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Theme;
use Friendica\DI;
diff --git a/src/Module/Item/Ignore.php b/src/Module/Item/Ignore.php
index d855045de..a9e79cdd6 100644
--- a/src/Module/Item/Ignore.php
+++ b/src/Module/Item/Ignore.php
@@ -2,12 +2,9 @@
namespace Friendica\Module\Item;
-use Friendica\App;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Session;
use Friendica\Core\System;
-use Friendica\Database\Database;
use Friendica\DI;
use Friendica\Model\Item;
use Friendica\Network\HTTPException;
diff --git a/src/Module/Maintenance.php b/src/Module/Maintenance.php
index 09cdb02da..d426ff413 100644
--- a/src/Module/Maintenance.php
+++ b/src/Module/Maintenance.php
@@ -3,7 +3,6 @@
namespace Friendica\Module;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\System;
use Friendica\DI;
use Friendica\Network\HTTPException;
diff --git a/src/Module/Notifications/Notify.php b/src/Module/Notifications/Notify.php
index 7aeb1c226..3c1b6a03e 100644
--- a/src/Module/Notifications/Notify.php
+++ b/src/Module/Notifications/Notify.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Notifications;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\System;
use Friendica\DI;
use Friendica\Network\HTTPException;
diff --git a/src/Module/Photo.php b/src/Module/Photo.php
index cc341bad2..34ee4db83 100644
--- a/src/Module/Photo.php
+++ b/src/Module/Photo.php
@@ -6,12 +6,10 @@
namespace Friendica\Module;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\System;
use Friendica\DI;
use Friendica\Model\Photo as MPhoto;
-use Friendica\Object\Image;
/**
* Photo Module
diff --git a/src/Module/Profile.php b/src/Module/Profile.php
index 77033741c..6e960f8b6 100644
--- a/src/Module/Profile.php
+++ b/src/Module/Profile.php
@@ -9,7 +9,6 @@ use Friendica\Content\Widget;
use Friendica\Core\ACL;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Session;
use Friendica\Core\System;
use Friendica\Database\DBA;
diff --git a/src/Module/Profile/Contacts.php b/src/Module/Profile/Contacts.php
index 0e83f3070..e05a47307 100644
--- a/src/Module/Profile/Contacts.php
+++ b/src/Module/Profile/Contacts.php
@@ -7,7 +7,6 @@ use Friendica\Content\ContactSelector;
use Friendica\Content\Nav;
use Friendica\Content\Pager;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
diff --git a/src/Module/Proxy.php b/src/Module/Proxy.php
index deb950945..e0d5716d6 100644
--- a/src/Module/Proxy.php
+++ b/src/Module/Proxy.php
@@ -6,8 +6,6 @@
namespace Friendica\Module;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
-use Friendica\Core\System;
use Friendica\Core\Logger;
use Friendica\DI;
use Friendica\Model\Photo;
diff --git a/src/Module/Register.php b/src/Module/Register.php
index 9530d29f1..289c717e4 100644
--- a/src/Module/Register.php
+++ b/src/Module/Register.php
@@ -7,7 +7,6 @@ use Friendica\Content\Text\BBCode;
use Friendica\Core\Config;
use Friendica\Core\Hook;
use Friendica\Core\L10n;
-use Friendica\Core\L10n as L10nClass;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\Worker;
@@ -260,7 +259,7 @@ class Register extends BaseModule
$arr['blocked'] = $blocked;
$arr['verified'] = $verified;
- $arr['language'] = L10nClass::detectLanguage($_SERVER, $_GET, DI::config()->get('system', 'language'));
+ $arr['language'] = L10n::detectLanguage($_SERVER, $_GET, DI::config()->get('system', 'language'));
try {
$result = Model\User::create($arr);
diff --git a/src/Module/Search/Acl.php b/src/Module/Search/Acl.php
index 2455e2cb8..6f8a02cb5 100644
--- a/src/Module/Search/Acl.php
+++ b/src/Module/Search/Acl.php
@@ -5,7 +5,6 @@ namespace Friendica\Module\Search;
use Friendica\BaseModule;
use Friendica\Content\Widget;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Search;
diff --git a/src/Module/Search/Directory.php b/src/Module/Search/Directory.php
index 093c0f9fb..84dd4c2dd 100644
--- a/src/Module/Search/Directory.php
+++ b/src/Module/Search/Directory.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Search;
use Friendica\Content\Widget;
-use Friendica\Core\L10n;
use Friendica\DI;
use Friendica\Module\BaseSearchModule;
use Friendica\Module\Security\Login;
diff --git a/src/Module/Search/Index.php b/src/Module/Search/Index.php
index 2b86617c1..ca5f7b609 100644
--- a/src/Module/Search/Index.php
+++ b/src/Module/Search/Index.php
@@ -8,7 +8,6 @@ use Friendica\Content\Text\HTML;
use Friendica\Content\Widget;
use Friendica\Core\Cache\Duration;
use Friendica\Core\Config;
-use Friendica\Core\L10n;
use Friendica\Core\Logger;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
diff --git a/src/Module/Search/Saved.php b/src/Module/Search/Saved.php
index 72232ac7d..141a3732d 100644
--- a/src/Module/Search/Saved.php
+++ b/src/Module/Search/Saved.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Search;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Database\DBA;
use Friendica\DI;
use Friendica\Util\Strings;
diff --git a/src/Module/Security/Login.php b/src/Module/Security/Login.php
index 9e5a7b18a..b56d2b507 100644
--- a/src/Module/Security/Login.php
+++ b/src/Module/Security/Login.php
@@ -9,7 +9,6 @@ namespace Friendica\Module\Security;
use Friendica\BaseModule;
use Friendica\Core\Config;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\DI;
diff --git a/src/Module/Security/TwoFactor/Recovery.php b/src/Module/Security/TwoFactor/Recovery.php
index 443256d97..b8fd515d2 100644
--- a/src/Module/Security/TwoFactor/Recovery.php
+++ b/src/Module/Security/TwoFactor/Recovery.php
@@ -3,8 +3,6 @@
namespace Friendica\Module\Security\TwoFactor;
use Friendica\BaseModule;
-use Friendica\App\Authentication;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\DI;
diff --git a/src/Module/Security/TwoFactor/Verify.php b/src/Module/Security/TwoFactor/Verify.php
index 968bab9dd..3fdb28a6f 100644
--- a/src/Module/Security/TwoFactor/Verify.php
+++ b/src/Module/Security/TwoFactor/Verify.php
@@ -3,7 +3,6 @@
namespace Friendica\Module\Security\TwoFactor;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\DI;
diff --git a/src/Module/Settings/Delegation.php b/src/Module/Settings/Delegation.php
index dffb23eb6..579d2bf82 100644
--- a/src/Module/Settings/Delegation.php
+++ b/src/Module/Settings/Delegation.php
@@ -2,10 +2,7 @@
namespace Friendica\Module\Settings;
-use Friendica\App\Arguments;
use Friendica\BaseModule;
-use Friendica\Core\L10n;
-use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\Database\DBA;
diff --git a/src/Module/Settings/TwoFactor/AppSpecific.php b/src/Module/Settings/TwoFactor/AppSpecific.php
index f80e466a8..6a8821e5f 100644
--- a/src/Module/Settings/TwoFactor/AppSpecific.php
+++ b/src/Module/Settings/TwoFactor/AppSpecific.php
@@ -2,7 +2,6 @@
namespace Friendica\Module\Settings\TwoFactor;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model\TwoFactor\AppSpecificPassword;
diff --git a/src/Module/Settings/TwoFactor/Index.php b/src/Module/Settings/TwoFactor/Index.php
index 0385b8dba..ab3400801 100644
--- a/src/Module/Settings/TwoFactor/Index.php
+++ b/src/Module/Settings/TwoFactor/Index.php
@@ -2,7 +2,6 @@
namespace Friendica\Module\Settings\TwoFactor;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\DI;
diff --git a/src/Module/Settings/TwoFactor/Recovery.php b/src/Module/Settings/TwoFactor/Recovery.php
index fbfb0b183..18c372c53 100644
--- a/src/Module/Settings/TwoFactor/Recovery.php
+++ b/src/Module/Settings/TwoFactor/Recovery.php
@@ -2,7 +2,6 @@
namespace Friendica\Module\Settings\TwoFactor;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\DI;
use Friendica\Model\TwoFactor\RecoveryCode;
diff --git a/src/Module/Settings/TwoFactor/Verify.php b/src/Module/Settings/TwoFactor/Verify.php
index 62867d82b..2eae0300a 100644
--- a/src/Module/Settings/TwoFactor/Verify.php
+++ b/src/Module/Settings/TwoFactor/Verify.php
@@ -6,7 +6,6 @@ use BaconQrCode\Renderer\Image\SvgImageBackEnd;
use BaconQrCode\Renderer\ImageRenderer;
use BaconQrCode\Renderer\RendererStyle\RendererStyle;
use BaconQrCode\Writer;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
use Friendica\DI;
diff --git a/src/Module/Settings/UserExport.php b/src/Module/Settings/UserExport.php
index 36ec0ca0c..71a18f4ee 100644
--- a/src/Module/Settings/UserExport.php
+++ b/src/Module/Settings/UserExport.php
@@ -7,7 +7,6 @@ namespace Friendica\Module\Settings;
use Friendica\App;
use Friendica\Core\Hook;
-use Friendica\Core\L10n;
use Friendica\Core\Renderer;
use Friendica\Database\DBA;
use Friendica\Database\DBStructure;
diff --git a/src/Module/Special/HTTPException.php b/src/Module/Special/HTTPException.php
index be71278fa..d2c850385 100644
--- a/src/Module/Special/HTTPException.php
+++ b/src/Module/Special/HTTPException.php
@@ -1,12 +1,10 @@
Date: Sat, 18 Jan 2020 22:21:30 +0100
Subject: [PATCH 11/16] adapt pattern for extract command
---
src/Console/Extract.php | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/Console/Extract.php b/src/Console/Extract.php
index 7fac598fe..628d2596e 100644
--- a/src/Console/Extract.php
+++ b/src/Console/Extract.php
@@ -65,8 +65,8 @@ HELP;
foreach ($files as $file) {
$str = file_get_contents($file);
- $pat = '|L10n::t\(([^\)]*+)[\)]|';
- $patt = '|L10n::tt\(([^\)]*+)[\)]|';
+ $pat = '|->t\(([^\)]*+)[\)]|';
+ $patt = '|->tt\(([^\)]*+)[\)]|';
$matches = [];
$matchestt = [];
From acd75f54d57eb3d8a423d9a432eac425e4d0cbb7 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 22:32:53 +0100
Subject: [PATCH 12/16] Update message.po
---
view/lang/C/messages.po | 7666 ++++++++++++++++++++++++++-------------
1 file changed, 5151 insertions(+), 2515 deletions(-)
diff --git a/view/lang/C/messages.po b/view/lang/C/messages.po
index 24f3fc1c3..9bbbd1602 100644
--- a/view/lang/C/messages.po
+++ b/view/lang/C/messages.po
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: 2019.12-dev\n"
+"Project-Id-Version: 2020.03-dev\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2019-12-05 23:28+0100\n"
+"POT-Creation-Date: 2020-01-18 20:32+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -18,297 +18,3101 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
-#: include/api.php:1124
+#: addon/piwik/piwik.php:95
+msgid ""
+"This website is tracked using the Matomo "
+"analytics tool."
+msgstr ""
+
+#: addon/piwik/piwik.php:98
+#, php-format
+msgid ""
+"If you do not want that your visits are logged in this way you can set a cookie to prevent Matomo / Piwik from tracking further "
+"visits of the site (opt-out)."
+msgstr ""
+
+#: addon/piwik/piwik.php:105 addon/gravatar/gravatar.php:113
+#: addon/ifttt/ifttt.php:84 addon/pageheader/pageheader.php:39
+#: addon/impressum/impressum.php:107 addon/notimeline/notimeline.php:64
+#: addon/diaspora/diaspora.php:167 addon/mathjax/mathjax.php:58
+#: addon/blockbot/blockbot.php:35 addon/newmemberwidget/newmemberwidget.php:71
+#: addon/showmore/showmore.php:59 addon/blogger/blogger.php:122
+#: addon/libertree/libertree.php:112 addon/twitter/twitter.php:341
+#: addon/twitter/twitter.php:395 addon/twitter/twitter.php:730
+#: addon/jappixmini/jappixmini.php:384 addon/numfriends/numfriends.php:79
+#: addon/wppost/wppost.php:145 addon/curweather/curweather.php:203
+#: addon/curweather/curweather.php:243 addon/webrtc/webrtc.php:31
+#: addon/group_text/group_text.php:85 addon/gnot/gnot.php:85
+#: addon/randplace/randplace.php:180
+#: addon/windowsphonepush/windowsphonepush.php:135 addon/fromapp/fromapp.php:83
+#: addon/cookienotice/cookienotice.php:51 addon/statusnet/statusnet.php:296
+#: addon/statusnet/statusnet.php:313 addon/statusnet/statusnet.php:340
+#: addon/statusnet/statusnet.php:347 addon/statusnet/statusnet.php:394
+#: addon/statusnet/statusnet.php:720 addon/startpage/startpage.php:96
+#: addon/superblock/superblock.php:59 addon/nsfw/nsfw.php:93
+#: addon/remote_permissions/remote_permissions.php:55
+#: addon/remote_permissions/remote_permissions.php:205
+#: addon/securemail/securemail.php:63 addon/xmpp/xmpp.php:97
+#: addon/xmpp/xmpp.php:113 addon/markdown/markdown.php:33
+#: addon/tumblr/tumblr.php:80 addon/tumblr/tumblr.php:296
+#: addon/langfilter/langfilter.php:62 addon/public_server/public_server.php:171
+#: addon/krynn/krynn.php:172 addon/libravatar/libravatar.php:115
+#: addon/discourse/discourse.php:52 addon/blockem/blockem.php:68
+#: addon/ljpost/ljpost.php:106 addon/ijpost/ijpost.php:109
+#: addon/geonames/geonames.php:149 addon/geocoordinates/geocoordinates.php:95
+#: addon/pumpio/pumpio.php:330 addon/mailstream/mailstream.php:86
+#: addon/mailstream/mailstream.php:397 addon/dwpost/dwpost.php:110
+#: addon/blackout/blackout.php:106 addon/qcomment/qcomment.php:57
+#: addon/buffer/buffer.php:80 addon/buffer/buffer.php:230
+#: addon/planets/planets.php:169 addon/irc/irc.php:45 addon/irc/irc.php:146
+#: src/Module/Admin/Tos.php:50 src/Module/Admin/Addons/Index.php:50
+#: src/Module/Admin/Themes/Index.php:95 src/Module/Admin/Site.php:557
+#: src/Module/Admin/Features.php:69 src/Module/Admin/Logs/Settings.php:63
+#: src/Module/Settings/Delegation.php:150 mod/settings.php:664
+#: mod/settings.php:771 mod/settings.php:869 mod/settings.php:948
+#: mod/settings.php:1173
+msgid "Save Settings"
+msgstr ""
+
+#: addon/piwik/piwik.php:106
+msgid "Matomo (Piwik) Base URL"
+msgstr ""
+
+#: addon/piwik/piwik.php:106
+msgid ""
+"Absolute path to your Matomo (Piwik) installation. (without protocol (http/"
+"s), with trailing slash)"
+msgstr ""
+
+#: addon/piwik/piwik.php:107
+msgid "Site ID"
+msgstr ""
+
+#: addon/piwik/piwik.php:108
+msgid "Show opt-out cookie link?"
+msgstr ""
+
+#: addon/piwik/piwik.php:109
+msgid "Asynchronous tracking"
+msgstr ""
+
+#: addon/piwik/piwik.php:121 addon/impressum/impressum.php:102
+#: addon/blockbot/blockbot.php:46 addon/twitter/twitter.php:722
+#: addon/webrtc/webrtc.php:38
+#: addon/remote_permissions/remote_permissions.php:214 addon/xmpp/xmpp.php:127
+#: addon/tumblr/tumblr.php:95 addon/geocoordinates/geocoordinates.php:108
+#: addon/openstreetmap/openstreetmap.php:228 addon/buffer/buffer.php:95
+#: mod/settings.php:604
+msgid "Settings updated."
+msgstr ""
+
+#: addon/gravatar/gravatar.php:89 addon/libravatar/libravatar.php:89
+msgid "generic profile image"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:90 addon/libravatar/libravatar.php:90
+msgid "random geometric pattern"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:91 addon/libravatar/libravatar.php:91
+msgid "monster face"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:92 addon/libravatar/libravatar.php:92
+msgid "computer generated face"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:93 addon/libravatar/libravatar.php:93
+msgid "retro arcade style face"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:107 addon/libravatar/libravatar.php:109
+#: src/Content/Nav.php:232 src/Module/BaseAdminModule.php:73
+msgid "Information"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:107
+msgid ""
+"Libravatar addon is installed, too. Please disable Libravatar addon or this "
+"Gravatar addon. The Libravatar addon will fall back to Gravatar if "
+"nothing was found at Libravatar."
+msgstr ""
+
+#: addon/gravatar/gravatar.php:114 addon/libravatar/libravatar.php:116
+msgid "Default avatar image"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:114
+msgid "Select default avatar image if none was found at Gravatar. See README"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:115
+msgid "Rating of images"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:115
+msgid "Select the appropriate avatar rating for your site. See README"
+msgstr ""
+
+#: addon/gravatar/gravatar.php:129
+msgid "Gravatar settings updated."
+msgstr ""
+
+#: addon/advancedcontentfilter/src/middlewares.php:30
+msgid "Method not found"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:142
+#, php-format
+msgid "Filtered by rule: %s"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:156
+#: addon/advancedcontentfilter/advancedcontentfilter.php:213
+msgid "Advanced Content Filter"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:212
+msgid "Back to Addon Settings"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:214
+msgid "Add a Rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:215
+#: view/theme/vier/theme.php:270 src/Content/Nav.php:191 src/Module/Help.php:50
+#: src/Module/Settings/TwoFactor/Verify.php:113
+#: src/Module/Settings/TwoFactor/AppSpecific.php:96
+#: src/Module/Settings/TwoFactor/Index.php:87
+#: src/Module/Settings/TwoFactor/Recovery.php:74
+msgid "Help"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:216
+msgid ""
+"Add and manage your personal content filter rules in this screen. Rules have "
+"a name and an arbitrary expression that will be matched against post data. "
+"For a complete reference of the available operations and variables, check "
+"the help page."
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:217
+msgid "Your rules"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:218
+msgid ""
+"You have no rules yet! Start adding one by clicking on the button above next "
+"to the title."
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:219
+#: addon/statusnet/statusnet.php:380 src/Module/Admin/Site.php:463
+#: src/Module/Admin/Site.php:654 src/Module/Admin/Site.php:664
+#: src/Module/Settings/TwoFactor/Index.php:94 src/Module/Contact.php:545
+msgid "Disabled"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:220
+#: addon/mailstream/mailstream.php:379 src/Module/Admin/Site.php:654
+msgid "Enabled"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:221
+msgid "Disable this rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:222
+msgid "Enable this rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:223
+msgid "Edit this rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:224
+msgid "Edit the rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:225
+msgid "Save this rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:226
+msgid "Delete this rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:227
+msgid "Rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:228
+msgid "Close"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:229
+msgid "Add new rule"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:230
+msgid "Rule Name"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:231
+msgid "Rule Expression"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:232
+#: addon/js_upload/js_upload.php:36 include/conversation.php:1256
+#: include/items.php:386 src/Module/Contact.php:446 mod/dfrn_request.php:653
+#: mod/follow.php:173 mod/fbrowser.php:109 mod/fbrowser.php:138
+#: mod/unfollow.php:131 mod/photos.php:1041 mod/photos.php:1148
+#: mod/settings.php:665 mod/settings.php:691 mod/suggest.php:75
+#: mod/editpost.php:111 mod/message.php:151 mod/tagrm.php:20 mod/tagrm.php:115
+msgid "Cancel"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:299
+#: addon/advancedcontentfilter/advancedcontentfilter.php:310
+#: addon/advancedcontentfilter/advancedcontentfilter.php:321
+#: addon/advancedcontentfilter/advancedcontentfilter.php:355
+#: addon/advancedcontentfilter/advancedcontentfilter.php:384
+#: addon/advancedcontentfilter/advancedcontentfilter.php:405
+msgid "You must be logged in to use this method"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:325
+#: addon/advancedcontentfilter/advancedcontentfilter.php:359
+#: addon/advancedcontentfilter/advancedcontentfilter.php:388
+msgid "Invalid form security token, please refresh the page."
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:337
+msgid "The rule name and expression are required."
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:349
+msgid "Rule successfully added"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:363
+#: addon/advancedcontentfilter/advancedcontentfilter.php:392
+msgid "Rule doesn't exist or doesn't belong to you."
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:378
+msgid "Rule successfully updated"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:399
+msgid "Rule successfully deleted"
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:409
+msgid "Missing argument: guid."
+msgstr ""
+
+#: addon/advancedcontentfilter/advancedcontentfilter.php:417
+#, php-format
+msgid "Unknown post with guid: %s"
+msgstr ""
+
+#: addon/ifttt/ifttt.php:56 addon/ifttt/ifttt.php:60
+msgid "IFTTT Mirror"
+msgstr ""
+
+#: addon/ifttt/ifttt.php:64
+msgid ""
+"Create an account at IFTTT . Create "
+"three Facebook recipes that are connected with Maker (In the form \"if Facebook then Maker\") with the "
+"following parameters:"
+msgstr ""
+
+#: addon/ifttt/ifttt.php:71
+msgid "Body for \"new status message\""
+msgstr ""
+
+#: addon/ifttt/ifttt.php:73
+msgid "Body for \"new photo upload\""
+msgstr ""
+
+#: addon/ifttt/ifttt.php:75
+msgid "Body for \"new link post\""
+msgstr ""
+
+#: addon/ifttt/ifttt.php:80 addon/widgets/widgets.php:65
+msgid "Generate new key"
+msgstr ""
+
+#: addon/pageheader/pageheader.php:37
+msgid "\"pageheader\" Settings"
+msgstr ""
+
+#: addon/pageheader/pageheader.php:38
+#: addon/newmemberwidget/newmemberwidget.php:72 include/conversation.php:1268
+#: src/Model/Profile.php:545 src/Module/Contact.php:321 mod/editpost.php:115
+msgid "Message"
+msgstr ""
+
+#: addon/pageheader/pageheader.php:38
+msgid ""
+"Message to display on every page on this server (or put a pageheader.html "
+"file in your docroot)"
+msgstr ""
+
+#: addon/pageheader/pageheader.php:55
+msgid "pageheader Settings saved."
+msgstr ""
+
+#: addon/impressum/impressum.php:61
+msgid "Impressum"
+msgstr ""
+
+#: addon/impressum/impressum.php:74 addon/impressum/impressum.php:76
+#: addon/impressum/impressum.php:108
+msgid "Site Owner"
+msgstr ""
+
+#: addon/impressum/impressum.php:74 addon/impressum/impressum.php:112
+#: addon/mailstream/mailstream.php:383
+msgid "Email Address"
+msgstr ""
+
+#: addon/impressum/impressum.php:79 addon/impressum/impressum.php:110
+msgid "Postal Address"
+msgstr ""
+
+#: addon/impressum/impressum.php:85
+msgid ""
+"The impressum addon needs to be configured! Please add at least the "
+"owner variable to your config file. For other variables please "
+"refer to the README file of the addon."
+msgstr ""
+
+#: addon/impressum/impressum.php:108
+msgid "The page operators name."
+msgstr ""
+
+#: addon/impressum/impressum.php:109
+msgid "Site Owners Profile"
+msgstr ""
+
+#: addon/impressum/impressum.php:109
+msgid "Profile address of the operator."
+msgstr ""
+
+#: addon/impressum/impressum.php:110
+msgid "How to contact the operator via snail mail. You can use BBCode here."
+msgstr ""
+
+#: addon/impressum/impressum.php:111
+msgid "Notes"
+msgstr ""
+
+#: addon/impressum/impressum.php:111
+msgid ""
+"Additional notes that are displayed beneath the contact information. You can "
+"use BBCode here."
+msgstr ""
+
+#: addon/impressum/impressum.php:112
+msgid "How to contact the operator via email. (will be displayed obfuscated)"
+msgstr ""
+
+#: addon/impressum/impressum.php:113
+msgid "Footer note"
+msgstr ""
+
+#: addon/impressum/impressum.php:113
+msgid "Text for the footer. You can use BBCode here."
+msgstr ""
+
+#: addon/tictac/tictac.php:21
+msgid "Three Dimensional Tic-Tac-Toe"
+msgstr ""
+
+#: addon/tictac/tictac.php:54
+msgid "3D Tic-Tac-Toe"
+msgstr ""
+
+#: addon/tictac/tictac.php:59
+msgid "New game"
+msgstr ""
+
+#: addon/tictac/tictac.php:60
+msgid "New game with handicap"
+msgstr ""
+
+#: addon/tictac/tictac.php:61
+msgid ""
+"Three dimensional tic-tac-toe is just like the traditional game except that "
+"it is played on multiple levels simultaneously. "
+msgstr ""
+
+#: addon/tictac/tictac.php:62
+msgid ""
+"In this case there are three levels. You win by getting three in a row on "
+"any level, as well as up, down, and diagonally across the different levels."
+msgstr ""
+
+#: addon/tictac/tictac.php:64
+msgid ""
+"The handicap game disables the center position on the middle level because "
+"the player claiming this square often has an unfair advantage."
+msgstr ""
+
+#: addon/tictac/tictac.php:183
+msgid "You go first..."
+msgstr ""
+
+#: addon/tictac/tictac.php:188
+msgid "I'm going first this time..."
+msgstr ""
+
+#: addon/tictac/tictac.php:194
+msgid "You won!"
+msgstr ""
+
+#: addon/tictac/tictac.php:200 addon/tictac/tictac.php:225
+msgid "\"Cat\" game!"
+msgstr ""
+
+#: addon/tictac/tictac.php:223
+msgid "I won!"
+msgstr ""
+
+#: addon/notimeline/notimeline.php:33
+msgid "No Timeline settings updated."
+msgstr ""
+
+#: addon/notimeline/notimeline.php:56
+msgid "No Timeline Settings"
+msgstr ""
+
+#: addon/notimeline/notimeline.php:58
+msgid "Disable Archive selector on profile wall"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:52
+msgid "Post to Diaspora"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:88
+#, php-format
+msgid ""
+"Please remember: You can always be reached from Diaspora with your Friendica "
+"handle %s. "
+msgstr ""
+
+#: addon/diaspora/diaspora.php:89
+msgid ""
+"This connector is only meant if you still want to use your old Diaspora "
+"account for some time. "
+msgstr ""
+
+#: addon/diaspora/diaspora.php:90
+#, php-format
+msgid ""
+"However, it is preferred that you tell your Diaspora contacts the new handle "
+"%s instead."
+msgstr ""
+
+#: addon/diaspora/diaspora.php:101
+msgid ""
+"Can't login to your Diaspora account. Please check handle (in the format "
+"user@domain.tld) and password."
+msgstr ""
+
+#: addon/diaspora/diaspora.php:108 addon/diaspora/diaspora.php:112
+msgid "Diaspora Export"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:122
+msgid "Enable Diaspora Post Addon"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:127
+msgid "Diaspora handle"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:132
+msgid "Diaspora password"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:139
+msgid "All aspects"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:144 src/Core/ACL.php:384
+msgid "Public"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:147
+msgid "Post to aspect:"
+msgstr ""
+
+#: addon/diaspora/diaspora.php:161
+msgid "Post to Diaspora by default"
+msgstr ""
+
+#: addon/mathjax/mathjax.php:56
+msgid ""
+"The MathJax addon renders mathematical formulae written using the LaTeX "
+"syntax surrounded by the usual $$ or an eqnarray block in the postings of "
+"your wall,network tab and private mail."
+msgstr ""
+
+#: addon/mathjax/mathjax.php:57
+msgid "Use the MathJax renderer"
+msgstr ""
+
+#: addon/blockbot/blockbot.php:36
+msgid "Allow \"good\" crawlers"
+msgstr ""
+
+#: addon/blockbot/blockbot.php:37
+msgid "Block GabSocial"
+msgstr ""
+
+#: addon/blockbot/blockbot.php:38
+msgid "Training mode"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:35
+msgid "New Member"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:36 src/Model/Profile.php:981
+#: src/Model/Profile.php:984
+msgid "Tips for New Members"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:39
+msgid "Global Support Forum"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:43
+msgid "Local Support Forum"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:72
+msgid "Your message for new members. You can use bbcode here."
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:73
+msgid "Add a link to global support forum"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:73
+msgid "Should a link to the global support forum be displayed?"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:74
+msgid "Add a link to the local support forum"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:74
+msgid ""
+"If you have a local support forum and want to have a link displayed in the "
+"widget, check this box."
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:75
+msgid "Name of the local support group"
+msgstr ""
+
+#: addon/newmemberwidget/newmemberwidget.php:75
+msgid ""
+"If you checked the above, specify the nickname of the local support "
+"group here (i.e. helpers)"
+msgstr ""
+
+#: addon/testdrive/testdrive.php:78 addon/public_server/public_server.php:76
+msgid "Administrator"
+msgstr ""
+
+#: addon/testdrive/testdrive.php:103 addon/public_server/public_server.php:130
+#, php-format
+msgid "Your account on %s will expire in a few days."
+msgstr ""
+
+#: addon/testdrive/testdrive.php:104
+msgid "Your Friendica test account is about to expire."
+msgstr ""
+
+#: addon/testdrive/testdrive.php:105
+#, php-format
+msgid ""
+"Hi %1$s,\n"
+"\n"
+"Your test account on %2$s will expire in less than five days. We hope you "
+"enjoyed this test drive and use this opportunity to find a permanent "
+"Friendica website for your integrated social communications. A list of "
+"public sites is available at %s/siteinfo - and for more information on "
+"setting up your own Friendica server please see the Friendica project "
+"website at https://friendi.ca."
+msgstr ""
+
+#: addon/showmore/showmore.php:43 addon/showmore/showmore.php:47
+msgid "\"Show more\" Settings"
+msgstr ""
+
+#: addon/showmore/showmore.php:52
+msgid "Enable Show More"
+msgstr ""
+
+#: addon/showmore/showmore.php:55
+msgid "Cutting posts after how much characters"
+msgstr ""
+
+#: addon/showmore/showmore.php:77
+msgid "Show More Settings saved."
+msgstr ""
+
+#: addon/showmore/showmore.php:137 view/theme/vier/theme.php:231
+#: src/Content/Widget.php:405 src/Content/Widget.php:505
+#: src/Content/ForumManager.php:134
+msgid "show more"
+msgstr ""
+
+#: addon/blogger/blogger.php:55
+msgid "Post to blogger"
+msgstr ""
+
+#: addon/blogger/blogger.php:89 addon/blogger/blogger.php:93
+msgid "Blogger Export"
+msgstr ""
+
+#: addon/blogger/blogger.php:97
+msgid "Enable Blogger Post Addon"
+msgstr ""
+
+#: addon/blogger/blogger.php:102
+msgid "Blogger username"
+msgstr ""
+
+#: addon/blogger/blogger.php:107
+msgid "Blogger password"
+msgstr ""
+
+#: addon/blogger/blogger.php:112
+msgid "Blogger API URL"
+msgstr ""
+
+#: addon/blogger/blogger.php:117
+msgid "Post to Blogger by default"
+msgstr ""
+
+#: addon/blogger/blogger.php:206 addon/wppost/wppost.php:305
+msgid "Post from Friendica"
+msgstr ""
+
+#: addon/libertree/libertree.php:49
+msgid "Post to libertree"
+msgstr ""
+
+#: addon/libertree/libertree.php:83 addon/libertree/libertree.php:87
+msgid "libertree Export"
+msgstr ""
+
+#: addon/libertree/libertree.php:91
+msgid "Enable Libertree Post Addon"
+msgstr ""
+
+#: addon/libertree/libertree.php:96
+msgid "Libertree API token"
+msgstr ""
+
+#: addon/libertree/libertree.php:101
+msgid "Libertree site URL"
+msgstr ""
+
+#: addon/libertree/libertree.php:106
+msgid "Post to Libertree by default"
+msgstr ""
+
+#: addon/twitter/twitter.php:206
+msgid "Post to Twitter"
+msgstr ""
+
+#: addon/twitter/twitter.php:251
+msgid ""
+"You submitted an empty PIN, please Sign In with Twitter again to get a new "
+"one."
+msgstr ""
+
+#: addon/twitter/twitter.php:280
+msgid "Twitter settings updated."
+msgstr ""
+
+#: addon/twitter/twitter.php:310 addon/twitter/twitter.php:314
+msgid "Twitter Import/Export/Mirror"
+msgstr ""
+
+#: addon/twitter/twitter.php:321
+msgid ""
+"No consumer key pair for Twitter found. Please contact your site "
+"administrator."
+msgstr ""
+
+#: addon/twitter/twitter.php:333
+msgid ""
+"At this Friendica instance the Twitter addon was enabled but you have not "
+"yet connected your account to your Twitter account. To do so click the "
+"button below to get a PIN from Twitter which you have to copy into the input "
+"box below and submit the form. Only your public posts will "
+"be posted to Twitter."
+msgstr ""
+
+#: addon/twitter/twitter.php:334
+msgid "Log in with Twitter"
+msgstr ""
+
+#: addon/twitter/twitter.php:336
+msgid "Copy the PIN from Twitter here"
+msgstr ""
+
+#: addon/twitter/twitter.php:343 addon/twitter/twitter.php:397
+msgid "An error occured: "
+msgstr ""
+
+#: addon/twitter/twitter.php:360 addon/statusnet/statusnet.php:356
+msgid "Currently connected to: "
+msgstr ""
+
+#: addon/twitter/twitter.php:361
+msgid "Disconnect"
+msgstr ""
+
+#: addon/twitter/twitter.php:377
+msgid "Allow posting to Twitter"
+msgstr ""
+
+#: addon/twitter/twitter.php:377
+msgid ""
+"If enabled all your public postings can be posted to the "
+"associated Twitter account. You can choose to do so by default (here) or for "
+"every posting separately in the posting options when writing the entry."
+msgstr ""
+
+#: addon/twitter/twitter.php:380
+msgid ""
+"Note : Due to your privacy settings (Hide your profile "
+"details from unknown viewers? ) the link potentially included in public "
+"postings relayed to Twitter will lead the visitor to a blank page informing "
+"the visitor that the access to your profile has been restricted."
+msgstr ""
+
+#: addon/twitter/twitter.php:383
+msgid "Send public postings to Twitter by default"
+msgstr ""
+
+#: addon/twitter/twitter.php:386
+msgid "Mirror all posts from twitter that are no replies"
+msgstr ""
+
+#: addon/twitter/twitter.php:389 addon/statusnet/statusnet.php:376
+#: addon/pumpio/pumpio.php:295
+msgid "Import the remote timeline"
+msgstr ""
+
+#: addon/twitter/twitter.php:392
+msgid "Automatically create contacts"
+msgstr ""
+
+#: addon/twitter/twitter.php:392
+msgid ""
+"This will automatically create a contact in Friendica as soon as you receive "
+"a message from an existing contact via the Twitter network. If you do not "
+"enable this, you need to manually add those Twitter contacts in Friendica "
+"from whom you would like to see posts here. However if enabled, you cannot "
+"merely remove a twitter contact from the Friendica contact list, as it will "
+"recreate this contact when they post again."
+msgstr ""
+
+#: addon/twitter/twitter.php:732
+msgid "Consumer key"
+msgstr ""
+
+#: addon/twitter/twitter.php:733
+msgid "Consumer secret"
+msgstr ""
+
+#: addon/viewsrc/viewsrc.php:55
+msgid "View Source"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:334 addon/jappixmini/jappixmini.php:338
+msgid "Jappix Mini"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:341
+msgid "Activate addon"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:344
+msgid "Do not insert the Jappixmini Chat-Widget into the webinterface"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:347
+msgid "Jabber username"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:350
+msgid "Jabber server"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:355 addon/xmpp/xmpp.php:88
+#: addon/xmpp/xmpp.php:114
+msgid "Jabber BOSH host"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:360
+msgid "Jabber password"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:365
+msgid "Encrypt Jabber password with Friendica password (recommended)"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:368
+msgid "Friendica password"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:371
+msgid "Approve subscription requests from Friendica contacts automatically"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:374
+msgid "Subscribe to Friendica contacts automatically"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:377
+msgid "Purge internal list of jabber addresses of contacts"
+msgstr ""
+
+#: addon/jappixmini/jappixmini.php:385
+msgid "Add contact"
+msgstr ""
+
+#: addon/numfriends/numfriends.php:44
+msgid "Numfriends settings updated."
+msgstr ""
+
+#: addon/numfriends/numfriends.php:71
+msgid "Numfriends Settings"
+msgstr ""
+
+#: addon/numfriends/numfriends.php:73
+msgid "How many contacts to display on profile sidebar"
+msgstr ""
+
+#: addon/wppost/wppost.php:57
+msgid "Post to Wordpress"
+msgstr ""
+
+#: addon/wppost/wppost.php:98 addon/wppost/wppost.php:102
+msgid "Wordpress Export"
+msgstr ""
+
+#: addon/wppost/wppost.php:105
+msgid "Enable WordPress Post Addon"
+msgstr ""
+
+#: addon/wppost/wppost.php:110
+msgid "WordPress username"
+msgstr ""
+
+#: addon/wppost/wppost.php:115
+msgid "WordPress password"
+msgstr ""
+
+#: addon/wppost/wppost.php:120
+msgid "WordPress API URL"
+msgstr ""
+
+#: addon/wppost/wppost.php:125
+msgid "Post to WordPress by default"
+msgstr ""
+
+#: addon/wppost/wppost.php:130
+msgid "Provide a backlink to the Friendica post"
+msgstr ""
+
+#: addon/wppost/wppost.php:134
+msgid ""
+"Text for the backlink, e.g. Read the original post and comment stream on "
+"Friendica."
+msgstr ""
+
+#: addon/wppost/wppost.php:139
+msgid "Don't post messages that are too short"
+msgstr ""
+
+#: addon/wppost/wppost.php:247
+msgid "Read the original post and comment stream on Friendica"
+msgstr ""
+
+#: addon/curweather/curweather.php:57
+msgid "Error fetching weather data. Error was: "
+msgstr ""
+
+#: addon/curweather/curweather.php:140 addon/curweather/curweather.php:204
+msgid "Current Weather"
+msgstr ""
+
+#: addon/curweather/curweather.php:147
+msgid "Relative Humidity"
+msgstr ""
+
+#: addon/curweather/curweather.php:148
+msgid "Pressure"
+msgstr ""
+
+#: addon/curweather/curweather.php:149
+msgid "Wind"
+msgstr ""
+
+#: addon/curweather/curweather.php:150
+msgid "Last Updated"
+msgstr ""
+
+#: addon/curweather/curweather.php:151
+msgid "Data by"
+msgstr ""
+
+#: addon/curweather/curweather.php:152
+msgid "Show on map"
+msgstr ""
+
+#: addon/curweather/curweather.php:157
+msgid "There was a problem accessing the weather data. But have a look"
+msgstr ""
+
+#: addon/curweather/curweather.php:159
+msgid "at OpenWeatherMap"
+msgstr ""
+
+#: addon/curweather/curweather.php:176
+msgid "Current Weather settings updated."
+msgstr ""
+
+#: addon/curweather/curweather.php:191
+msgid "No APPID found, please contact your admin to obtain one."
+msgstr ""
+
+#: addon/curweather/curweather.php:204 view/theme/frio/theme.php:277
+#: src/Content/Nav.php:261 src/Module/Admin/Addons/Details.php:102
+#: src/Module/Admin/Themes/Details.php:107 src/Module/Welcome.php:33
+#: src/Module/BaseSettingsModule.php:105 mod/settings.php:144
+msgid "Settings"
+msgstr ""
+
+#: addon/curweather/curweather.php:206
+msgid "Enter either the name of your location or the zip code."
+msgstr ""
+
+#: addon/curweather/curweather.php:207
+msgid "Your Location"
+msgstr ""
+
+#: addon/curweather/curweather.php:207
+msgid ""
+"Identifier of your location (name or zip code), e.g. Berlin,DE or "
+"14476,DE ."
+msgstr ""
+
+#: addon/curweather/curweather.php:208
+msgid "Units"
+msgstr ""
+
+#: addon/curweather/curweather.php:208
+msgid "select if the temperature should be displayed in °C or °F"
+msgstr ""
+
+#: addon/curweather/curweather.php:209
+msgid "Show weather data"
+msgstr ""
+
+#: addon/curweather/curweather.php:227
+msgid "Curweather settings saved."
+msgstr ""
+
+#: addon/curweather/curweather.php:246
+msgid "Caching Interval"
+msgstr ""
+
+#: addon/curweather/curweather.php:248
+msgid ""
+"For how long should the weather data be cached? Choose according your "
+"OpenWeatherMap account type."
+msgstr ""
+
+#: addon/curweather/curweather.php:249
+msgid "no cache"
+msgstr ""
+
+#: addon/curweather/curweather.php:250 addon/curweather/curweather.php:251
+#: addon/curweather/curweather.php:252 addon/curweather/curweather.php:253
+#: src/Util/Temporal.php:316
+msgid "minutes"
+msgstr ""
+
+#: addon/curweather/curweather.php:256
+msgid "Your APPID"
+msgstr ""
+
+#: addon/curweather/curweather.php:256
+msgid "Your API key provided by OpenWeatherMap"
+msgstr ""
+
+#: addon/js_upload/js_upload.php:34
+msgid "Select files for upload"
+msgstr ""
+
+#: addon/js_upload/js_upload.php:35
+msgid "Drop files here to upload"
+msgstr ""
+
+#: addon/js_upload/js_upload.php:37
+msgid "Failed"
+msgstr ""
+
+#: addon/js_upload/js_upload.php:215
+msgid "No files were uploaded."
+msgstr ""
+
+#: addon/js_upload/js_upload.php:221
+msgid "Uploaded file is empty"
+msgstr ""
+
+#: addon/js_upload/js_upload.php:233
+msgid "Image exceeds size limit of "
+msgstr ""
+
+#: addon/js_upload/js_upload.php:247
+msgid "File has an invalid extension, it should be one of "
+msgstr ""
+
+#: addon/js_upload/js_upload.php:258
+msgid "Upload was cancelled, or server error encountered"
+msgstr ""
+
+#: addon/webrtc/webrtc.php:25
+msgid "WebRTC Videochat"
+msgstr ""
+
+#: addon/webrtc/webrtc.php:32
+msgid "WebRTC Base URL"
+msgstr ""
+
+#: addon/webrtc/webrtc.php:32
+msgid ""
+"Page your users will create a WebRTC chat room on. For example you could use "
+"https://live.mayfirst.org ."
+msgstr ""
+
+#: addon/webrtc/webrtc.php:52
+msgid "Video Chat"
+msgstr ""
+
+#: addon/webrtc/webrtc.php:53
+msgid ""
+"WebRTC is a video and audio conferencing tool that works with Firefox "
+"(version 21 and above) and Chrome/Chromium (version 25 and above). Just "
+"create a new chat room and send the link to someone you want to chat with."
+msgstr ""
+
+#: addon/webrtc/webrtc.php:55
+msgid ""
+"Please contact your friendica admin and send a reminder to configure the "
+"WebRTC addon."
+msgstr ""
+
+#: addon/notifyall/notifyall.php:33
+msgid "Send email to all members"
+msgstr ""
+
+#: addon/notifyall/notifyall.php:52 include/enotify.php:67
+#, php-format
+msgid "%s Administrator"
+msgstr ""
+
+#: addon/notifyall/notifyall.php:54 include/enotify.php:65
+#, php-format
+msgid "%1$s, %2$s Administrator"
+msgstr ""
+
+#: addon/notifyall/notifyall.php:81
+msgid "No recipients found."
+msgstr ""
+
+#: addon/notifyall/notifyall.php:97
+msgid "Emails sent"
+msgstr ""
+
+#: addon/notifyall/notifyall.php:107
+msgid "Send email to all members of this Friendica instance."
+msgstr ""
+
+#: addon/notifyall/notifyall.php:112
+msgid "Message subject"
+msgstr ""
+
+#: addon/notifyall/notifyall.php:113
+msgid "Test mode (only send to administrator)"
+msgstr ""
+
+#: addon/notifyall/notifyall.php:114 addon/openstreetmap/openstreetmap.php:208
+#: view/theme/vier/config.php:120 view/theme/duepuntozero/config.php:70
+#: view/theme/frio/config.php:125 view/theme/quattro/config.php:72
+#: src/Object/Post.php:904 src/Module/Delegation.php:131
+#: src/Module/Install.php:211 src/Module/Install.php:251
+#: src/Module/Install.php:287 src/Module/Debug/Localtime.php:45
+#: src/Module/Contact.php:580 src/Module/Invite.php:156
+#: src/Module/Item/Compose.php:125 mod/fsuggest.php:91 mod/events.php:551
+#: mod/crepair.php:149 mod/poke.php:185 mod/photos.php:952 mod/photos.php:1058
+#: mod/photos.php:1344 mod/photos.php:1389 mod/photos.php:1428
+#: mod/photos.php:1492 mod/profiles.php:560 mod/message.php:259
+#: mod/message.php:439
+msgid "Submit"
+msgstr ""
+
+#: addon/group_text/group_text.php:47
+msgid "Group Text settings updated."
+msgstr ""
+
+#: addon/group_text/group_text.php:77
+msgid "Group Text"
+msgstr ""
+
+#: addon/group_text/group_text.php:79
+msgid "Use a text only (non-image) group selector in the \"group edit\" menu"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:24
+msgid "bitchslap"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:24
+msgid "bitchslapped"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:25
+msgid "shag"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:25
+msgid "shagged"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:26
+msgid "do something obscenely biological to"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:26
+msgid "did something obscenely biological to"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:27
+msgid "point out the poke feature to"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:27
+msgid "pointed out the poke feature to"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:28
+msgid "declare undying love for"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:28
+msgid "declared undying love for"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:29
+msgid "patent"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:29
+msgid "patented"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:30
+msgid "stroke beard"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:30
+msgid "stroked their beard at"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:31
+msgid ""
+"bemoan the declining standards of modern secondary and tertiary education to"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:31
+msgid ""
+"bemoans the declining standards of modern secondary and tertiary education to"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:32
+msgid "hug"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:32
+msgid "hugged"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:33
+msgid "kiss"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:33
+msgid "kissed"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:34
+msgid "raise eyebrows at"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:34
+msgid "raised their eyebrows at"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:35
+msgid "insult"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:35
+msgid "insulted"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:36
+msgid "praise"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:36
+msgid "praised"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:37
+msgid "be dubious of"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:37
+msgid "was dubious of"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:38
+msgid "eat"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:38
+msgid "ate"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:39
+msgid "giggle and fawn at"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:39
+msgid "giggled and fawned at"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:40
+msgid "doubt"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:40
+msgid "doubted"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:41
+msgid "glare"
+msgstr ""
+
+#: addon/morepokes/morepokes.php:41
+msgid "glared at"
+msgstr ""
+
+#: addon/gnot/gnot.php:52
+msgid "Gnot settings updated."
+msgstr ""
+
+#: addon/gnot/gnot.php:84
+msgid "Gnot Settings"
+msgstr ""
+
+#: addon/gnot/gnot.php:86
+msgid "Enable this addon?"
+msgstr ""
+
+#: addon/gnot/gnot.php:88
+msgid ""
+"Allows threading of email comment notifications on Gmail and anonymising the "
+"subject line."
+msgstr ""
+
+#: addon/gnot/gnot.php:97
+#, php-format
+msgid "[Friendica:Notify] Comment to conversation #%d"
+msgstr ""
+
+#: addon/randplace/randplace.php:172
+msgid "Randplace Settings"
+msgstr ""
+
+#: addon/randplace/randplace.php:174
+msgid "Enable Randplace Addon"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:34
+msgid "Androgyne"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:35
+msgid "Bear"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:36
+msgid "Bigender"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:37
+msgid "Cross dresser"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:38
+msgid "Drag queen"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:39
+msgid "Eunuch"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:40
+msgid "Faux queen"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:41
+msgid "Gender fluid"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:42
+msgid "Kathoey"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:43
+msgid "Lady"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:44
+msgid "Lipstick lesbian"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:45
+msgid "Metrosexual"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:46
+msgid "Monk"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:47
+msgid "Nun"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:48
+msgid "Soft butch"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:49
+msgid "Stone femme"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:50
+msgid "Tomboy"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:51
+msgid "Transman"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:52
+msgid "Transwoman"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:53
+msgid "Transvesti"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:54
+msgid "Trigender"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:55
+msgid "Can't remember"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:56
+msgid "Hard to tell these days"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:60
+msgid "Girls with big tits"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:61
+msgid "Millionaires"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:62
+msgid "Guys with big schlongs"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:63
+msgid "Easy women"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:64
+msgid "People with impaired mobility"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:65
+msgid "Amputees"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:66
+msgid "Statues, mannequins and immobility"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:67
+msgid "Pain"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:68
+msgid "Trans men"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:69
+msgid "Older women"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:70
+msgid "Asphyxiation"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:71
+msgid "In public"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:72
+msgid "In danger"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:73
+msgid "Pretending to be male"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:74
+msgid "Pretending to be female"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:75
+msgid "Breats"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:76
+msgid "Scat"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:77
+msgid "Crying"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:78
+msgid "Nappies/Diapers"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:79
+msgid "Trees"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:80
+msgid "Vomit"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:81
+msgid "Murder"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:82
+msgid "Fat people"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:83
+msgid "Feet"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:84
+msgid "Covered in insects"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:85
+msgid "Turning a human being into furniture"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:86
+msgid "Elderly people"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:87
+msgid "Transgender people"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:88
+msgid "Criminals"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:89
+msgid "Stealing"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:90
+msgid "Breast milk"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:91
+msgid "Immersing genitals in liquids"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:92
+msgid "Giants"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:93
+msgid "Masochism"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:94
+msgid "Cars"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:95
+msgid "Menstruation"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:96
+msgid "Mucus"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:97
+msgid "Obscene language"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:98
+msgid "Noses"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:99
+msgid "Navels"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:100
+msgid "Corpses"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:101
+msgid "Smells"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:102
+msgid "Buttocks"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:103
+msgid "Nonliving objects"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:104
+msgid "Sleeping people"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:105
+msgid "Urination"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:106
+msgid "Eating people"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:107
+msgid "Being eaten"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:108
+msgid "Animals"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:109
+msgid "I'd rather just have some chocolate"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:113
+msgid "Married to my job"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:114
+msgid "Polygamist"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:115
+msgid "Half married"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:116
+msgid "Living in the past"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:117
+msgid "Pretending to be over my ex"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:118
+msgid "Hurt in the past"
+msgstr ""
+
+#: addon/morechoice/morechoice.php:119
+msgid "Wallowing in self-pity"
+msgstr ""
+
+#: addon/windowsphonepush/windowsphonepush.php:96
+msgid "WindowsPhonePush settings updated."
+msgstr ""
+
+#: addon/windowsphonepush/windowsphonepush.php:122
+msgid "WindowsPhonePush Settings"
+msgstr ""
+
+#: addon/windowsphonepush/windowsphonepush.php:125
+msgid "Enable WindowsPhonePush Addon"
+msgstr ""
+
+#: addon/windowsphonepush/windowsphonepush.php:130
+msgid "Push text of new item"
+msgstr ""
+
+#: addon/fromapp/fromapp.php:40
+msgid "Fromapp settings updated."
+msgstr ""
+
+#: addon/fromapp/fromapp.php:65 addon/fromapp/fromapp.php:69
+msgid "FromApp Settings"
+msgstr ""
+
+#: addon/fromapp/fromapp.php:72
+msgid ""
+"The application name you would like to show your posts originating from. "
+"Separate different app names with a comma. A random one will then be "
+"selected for every posting."
+msgstr ""
+
+#: addon/fromapp/fromapp.php:76
+msgid "Use this application name even if another application was used."
+msgstr ""
+
+#: addon/cookienotice/cookienotice.php:43
+msgid ""
+"This website uses cookies. If you continue browsing this website, you agree "
+"to the usage of cookies."
+msgstr ""
+
+#: addon/cookienotice/cookienotice.php:44
+#: addon/cookienotice/cookienotice.php:110
+msgid "OK"
+msgstr ""
+
+#: addon/cookienotice/cookienotice.php:48
+msgid ""
+"Configure your cookie usage notice. It should just be a notice, "
+"saying that the website uses cookies. It is shown as long as a user didnt "
+"confirm clicking the OK button."
+msgstr ""
+
+#: addon/cookienotice/cookienotice.php:49
+msgid "Cookie Usage Notice"
+msgstr ""
+
+#: addon/cookienotice/cookienotice.php:50
+msgid "OK Button Text"
+msgstr ""
+
+#: addon/cookienotice/cookienotice.php:74
+msgid "cookienotice Settings saved."
+msgstr ""
+
+#: addon/cookienotice/cookienotice.php:109
+msgid ""
+"This website uses cookies to recognize revisiting and logged in users. You "
+"accept the usage of these cookies by continue browsing this website."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:115
+msgid "Post to GNU Social"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:166
+msgid ""
+"Please contact your site administrator. The provided API URL is not "
+"valid."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:195
+msgid "We could not contact the GNU Social API with the Path you entered."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:229
+msgid "GNU Social settings updated."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:270 addon/statusnet/statusnet.php:274
+msgid "GNU Social Import/Export/Mirror"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:289
+msgid "Globally Available GNU Social OAuthKeys"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:290
+msgid ""
+"There are preconfigured OAuth key pairs for some GNU Social servers "
+"available. If you are using one of them, please use these credentials. If "
+"not feel free to connect to any other GNU Social instance (see below)."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:298
+msgid "Provide your own OAuth Credentials"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:299
+msgid ""
+"No consumer key pair for GNU Social found. Register your Friendica Account "
+"as an desktop client on your GNU Social account, copy the consumer key pair "
+"here and enter the API base root. Before you register your own OAuth "
+"key pair ask the administrator if there is already a key pair for this "
+"Friendica installation at your favorited GNU Social installation."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:301
+msgid "OAuth Consumer Key"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:304
+msgid "OAuth Consumer Secret"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:307 addon/statusnet/statusnet.php:700
+#: addon/statusnet/statusnet.php:712
+msgid "Base API Path (remember the trailing /)"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:332
+msgid ""
+"To connect to your GNU Social account click the button below to get a "
+"security code from GNU Social which you have to copy into the input box "
+"below and submit the form. Only your public posts will be "
+"posted to GNU Social."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:333
+msgid "Log in with GNU Social"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:335
+msgid "Copy the security code from GNU Social here"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:341
+msgid "Cancel Connection Process"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:343
+msgid "Current GNU Social API is"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:344
+msgid "Cancel GNU Social Connection"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:358
+msgid ""
+"If enabled all your public postings can be posted to the "
+"associated GNU Social account. You can choose to do so by default (here) or "
+"for every posting separately in the posting options when writing the entry."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:360
+msgid ""
+"Note : Due your privacy settings (Hide your profile "
+"details from unknown viewers? ) the link potentially included in public "
+"postings relayed to GNU Social will lead the visitor to a blank page "
+"informing the visitor that the access to your profile has been restricted."
+msgstr ""
+
+#: addon/statusnet/statusnet.php:363
+msgid "Allow posting to GNU Social"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:366
+msgid "Send public postings to GNU Social by default"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:370
+msgid ""
+"Mirror all posts from GNU Social that are no replies or repeated messages"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:381
+msgid "Full Timeline"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:382
+msgid "Only Mentions"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:391
+msgid "Clear OAuth configuration"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:711 src/Module/Admin/Site.php:572
+msgid "Site name"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:713 addon/tumblr/tumblr.php:83
+#: mod/settings.php:668 mod/settings.php:694
+msgid "Consumer Secret"
+msgstr ""
+
+#: addon/statusnet/statusnet.php:714 addon/tumblr/tumblr.php:82
+#: mod/settings.php:667 mod/settings.php:693
+msgid "Consumer Key"
+msgstr ""
+
+#: addon/startpage/startpage.php:82 addon/startpage/startpage.php:86
+msgid "Startpage"
+msgstr ""
+
+#: addon/startpage/startpage.php:89
+msgid "Home page to load after login - leave blank for profile wall"
+msgstr ""
+
+#: addon/startpage/startpage.php:92
+msgid "Examples: "network" or "notifications/system""
+msgstr ""
+
+#: addon/superblock/superblock.php:48 addon/superblock/superblock.php:52
+msgid "Superblock"
+msgstr ""
+
+#: addon/superblock/superblock.php:55
+msgid "Comma separated profile URLS to block"
+msgstr ""
+
+#: addon/superblock/superblock.php:72
+msgid "SUPERBLOCK Settings saved."
+msgstr ""
+
+#: addon/superblock/superblock.php:145
+msgid "Block Completely"
+msgstr ""
+
+#: addon/superblock/superblock.php:166
+msgid "superblock settings updated"
+msgstr ""
+
+#: addon/nsfw/nsfw.php:77 addon/nsfw/nsfw.php:81
+msgid "Content Filter (NSFW and more)"
+msgstr ""
+
+#: addon/nsfw/nsfw.php:85
+msgid ""
+"This addon searches for specified words/text in posts and collapses them. It "
+"can be used to filter content tagged with for instance #NSFW that may be "
+"deemed inappropriate at certain times or places, such as being at work. It "
+"is also useful for hiding irrelevant or annoying content from direct view."
+msgstr ""
+
+#: addon/nsfw/nsfw.php:86
+msgid "Enable Content filter"
+msgstr ""
+
+#: addon/nsfw/nsfw.php:89
+msgid "Comma separated list of keywords to hide"
+msgstr ""
+
+#: addon/nsfw/nsfw.php:94
+msgid "Use /expression/ to provide regular expressions"
+msgstr ""
+
+#: addon/nsfw/nsfw.php:109
+msgid "NSFW Settings saved."
+msgstr ""
+
+#: addon/nsfw/nsfw.php:162
+#, php-format
+msgid "Filtered tag: %s"
+msgstr ""
+
+#: addon/nsfw/nsfw.php:164
+#, php-format
+msgid "Filtered word: %s"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:52
+msgid "Remote Permissions Settings"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:53
+msgid ""
+"Allow recipients of your private posts to see the other recipients of the "
+"posts"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:65
+msgid "Remote Permissions settings updated."
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:133 mod/lockview.php:69
+msgid "Visible to:"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:187
+msgid "Visible to"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:187
+msgid "may only be a partial list"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:206
+msgid "Global"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:206
+msgid "The posts of every user on this server show the post recipients"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:207
+msgid "Individual"
+msgstr ""
+
+#: addon/remote_permissions/remote_permissions.php:207
+msgid "Each user chooses whether his/her posts show the post recipients"
+msgstr ""
+
+#: addon/membersince/membersince.php:42 addon/membersince/membersince.php:57
+#: src/Model/Profile.php:762
+msgid "Member since:"
+msgstr ""
+
+#: addon/securemail/securemail.php:62
+msgid "\"Secure Mail\" Settings"
+msgstr ""
+
+#: addon/securemail/securemail.php:64 addon/securemail/securemail.php:92
+msgid "Save and send test"
+msgstr ""
+
+#: addon/securemail/securemail.php:65
+msgid "Enable Secure Mail"
+msgstr ""
+
+#: addon/securemail/securemail.php:66
+msgid "Public key"
+msgstr ""
+
+#: addon/securemail/securemail.php:66
+msgid "Your public PGP key, ascii armored format"
+msgstr ""
+
+#: addon/securemail/securemail.php:90
+msgid "Secure Mail Settings saved."
+msgstr ""
+
+#: addon/securemail/securemail.php:127
+msgid "Test email sent"
+msgstr ""
+
+#: addon/securemail/securemail.php:129
+msgid "There was an error sending the test email"
+msgstr ""
+
+#: addon/forumdirectory/forumdirectory.php:38
+#: addon/forumdirectory/forumdirectory.php:148
+msgid "Forum Directory"
+msgstr ""
+
+#: addon/forumdirectory/forumdirectory.php:58 src/Module/Directory.php:31
+#: src/Module/Debug/WebFinger.php:19 src/Module/Debug/Probe.php:20
+#: src/Module/Search/Index.php:30 src/Module/Search/Index.php:35
+#: mod/community.php:25 mod/display.php:168 mod/dfrn_request.php:600
+#: mod/photos.php:837 mod/videos.php:112
+msgid "Public access denied."
+msgstr ""
+
+#: addon/forumdirectory/forumdirectory.php:136 src/Module/Directory.php:59
+msgid "No entries (some entries may be hidden)."
+msgstr ""
+
+#: addon/forumdirectory/forumdirectory.php:142 view/theme/vier/theme.php:184
+#: src/Content/Widget.php:70 src/Module/Directory.php:76
+msgid "Global Directory"
+msgstr ""
+
+#: addon/forumdirectory/forumdirectory.php:144 src/Module/Directory.php:78
+msgid "Find on this site"
+msgstr ""
+
+#: addon/forumdirectory/forumdirectory.php:146 src/Module/Directory.php:80
+msgid "Results for:"
+msgstr ""
+
+#: addon/forumdirectory/forumdirectory.php:150 view/theme/vier/theme.php:179
+#: src/Content/Widget.php:65 src/Module/Directory.php:84
+#: src/Module/Contact.php:819
+msgid "Find"
+msgstr ""
+
+#: addon/xmpp/xmpp.php:44
+msgid "XMPP settings updated."
+msgstr ""
+
+#: addon/xmpp/xmpp.php:69 addon/xmpp/xmpp.php:73
+msgid "XMPP-Chat (Jabber)"
+msgstr ""
+
+#: addon/xmpp/xmpp.php:77
+msgid "Enable Webchat"
+msgstr ""
+
+#: addon/xmpp/xmpp.php:82
+msgid "Individual Credentials"
+msgstr ""
+
+#: addon/xmpp/xmpp.php:115
+msgid "Use central userbase"
+msgstr ""
+
+#: addon/xmpp/xmpp.php:115
+msgid ""
+"If enabled, users will automatically login to an ejabberd server that has to "
+"be installed on this machine with synchronized credentials via the "
+"\"auth_ejabberd.php\" script."
+msgstr ""
+
+#: addon/markdown/markdown.php:31 src/Module/Debug/Babel.php:184
+msgid "Markdown"
+msgstr ""
+
+#: addon/markdown/markdown.php:32
+msgid "Enable Markdown parsing"
+msgstr ""
+
+#: addon/markdown/markdown.php:32
+msgid ""
+"If enabled, self created items will additionally be parsed via Markdown."
+msgstr ""
+
+#: addon/tumblr/tumblr.php:50 addon/pumpio/pumpio.php:69
+#: addon/buffer/buffer.php:51 include/items.php:433
+#: src/Module/Delegation.php:98 src/Module/Notifications/Notify.php:18
+#: src/Module/Attach.php:41 src/Module/Settings/Delegation.php:23
+#: src/Module/Settings/Delegation.php:51 src/Module/Group.php:30
+#: src/Module/Group.php:76 src/Module/FollowConfirm.php:16
+#: src/Module/Profile/Contacts.php:50 src/Module/Contact.php:360
+#: src/Module/Invite.php:21 src/Module/Invite.php:109
+#: src/Module/Register.php:44 src/Module/Register.php:57
+#: src/Module/Register.php:177 src/Module/Register.php:216
+#: src/Module/Search/Directory.php:19 src/Module/Base/Api.php:40
+#: src/Module/Base/Api.php:46 mod/notes.php:27 mod/uimport.php:17
+#: mod/fsuggest.php:62 mod/common.php:27 mod/events.php:212 mod/api.php:35
+#: mod/api.php:40 mod/cal.php:288 mod/crepair.php:90 mod/notifications.php:49
+#: mod/wallmessage.php:18 mod/wallmessage.php:42 mod/wallmessage.php:81
+#: mod/wallmessage.php:105 mod/ostatus_subscribe.php:16 mod/follow.php:56
+#: mod/follow.php:133 mod/network.php:36 mod/unfollow.php:21
+#: mod/unfollow.php:76 mod/unfollow.php:108 mod/profile_photo.php:31
+#: mod/profile_photo.php:176 mod/profile_photo.php:196 mod/poke.php:142
+#: mod/photos.php:161 mod/photos.php:923 mod/profiles.php:180
+#: mod/profiles.php:497 mod/wall_attach.php:62 mod/wall_attach.php:65
+#: mod/item.php:172 mod/regmod.php:85 mod/settings.php:49 mod/settings.php:162
+#: mod/settings.php:654 mod/suggest.php:38 mod/dfrn_confirm.php:64
+#: mod/wall_upload.php:94 mod/wall_upload.php:97 mod/editpost.php:22
+#: mod/message.php:54 mod/message.php:99 mod/repair_ostatus.php:15
+msgid "Permission denied."
+msgstr ""
+
+#: addon/tumblr/tumblr.php:190
+msgid "You are now authenticated to tumblr."
+msgstr ""
+
+#: addon/tumblr/tumblr.php:191 addon/pumpio/pumpio.php:206
+#: addon/buffer/buffer.php:122
+msgid "return to the connector page"
+msgstr ""
+
+#: addon/tumblr/tumblr.php:207
+msgid "Post to Tumblr"
+msgstr ""
+
+#: addon/tumblr/tumblr.php:237 addon/tumblr/tumblr.php:241
+msgid "Tumblr Export"
+msgstr ""
+
+#: addon/tumblr/tumblr.php:245
+msgid "(Re-)Authenticate your tumblr page"
+msgstr ""
+
+#: addon/tumblr/tumblr.php:249
+msgid "Enable Tumblr Post Addon"
+msgstr ""
+
+#: addon/tumblr/tumblr.php:255
+msgid "Post to Tumblr by default"
+msgstr ""
+
+#: addon/tumblr/tumblr.php:276
+msgid "Post to page:"
+msgstr ""
+
+#: addon/tumblr/tumblr.php:290
+msgid "You are not authenticated to tumblr"
+msgstr ""
+
+#: addon/rendertime/rendertime.php:42
+#, php-format
+msgid ""
+"Database: %s/%s, Network: %s, Rendering: %s, Session: %s, I/O: %s, Other: "
+"%s, Total: %s"
+msgstr ""
+
+#: addon/langfilter/langfilter.php:56
+msgid "Language Filter"
+msgstr ""
+
+#: addon/langfilter/langfilter.php:57
+msgid ""
+"This addon tries to identify the language posts are writen in. If it does "
+"not match any language specifed below, posts will be hidden by collapsing "
+"them."
+msgstr ""
+
+#: addon/langfilter/langfilter.php:58
+msgid "Use the language filter"
+msgstr ""
+
+#: addon/langfilter/langfilter.php:59
+msgid "Able to read"
+msgstr ""
+
+#: addon/langfilter/langfilter.php:59
+msgid ""
+"List of abbreviations (iso2 codes) for languages you speak, comma separated. "
+"For example \"de,it\"."
+msgstr ""
+
+#: addon/langfilter/langfilter.php:60
+msgid "Minimum confidence in language detection"
+msgstr ""
+
+#: addon/langfilter/langfilter.php:60
+msgid ""
+"Minimum confidence in language detection being correct, from 0 to 100. Posts "
+"will not be filtered when the confidence of language detection is below this "
+"percent value."
+msgstr ""
+
+#: addon/langfilter/langfilter.php:61
+msgid "Minimum length of message body"
+msgstr ""
+
+#: addon/langfilter/langfilter.php:61
+msgid ""
+"Minimum number of characters in message body for filter to be used. Posts "
+"shorter than this will not be filtered. Note: Language detection is "
+"unreliable for short content (<200 characters)."
+msgstr ""
+
+#: addon/langfilter/langfilter.php:103
+msgid "Language Filter Settings saved."
+msgstr ""
+
+#: addon/langfilter/langfilter.php:200
+#, php-format
+msgid "Filtered language: %s"
+msgstr ""
+
+#: addon/public_server/public_server.php:131
+msgid "Your Friendica account is about to expire."
+msgstr ""
+
+#: addon/public_server/public_server.php:132
+#, php-format
+msgid ""
+"Hi %1$s,\n"
+"\n"
+"Your account on %2$s will expire in less than five days. You may keep your "
+"account by logging in at least once every 30 days"
+msgstr ""
+
+#: addon/public_server/public_server.php:163
+msgid "Settings saved"
+msgstr ""
+
+#: addon/public_server/public_server.php:173
+msgid "Set any of these options to 0 to deactivate it."
+msgstr ""
+
+#: addon/krynn/krynn.php:156 addon/krynn/krynn.php:160
+msgid "Krynn"
+msgstr ""
+
+#: addon/krynn/krynn.php:165
+msgid "Krynn Settings"
+msgstr ""
+
+#: addon/krynn/krynn.php:167
+msgid "Enable Krynn Addon"
+msgstr ""
+
+#: addon/libravatar/libravatar.php:98
+msgid "Warning"
+msgstr ""
+
+#: addon/libravatar/libravatar.php:99
+#, php-format
+msgid "Your PHP version %s is lower than the required PHP >= 5.3."
+msgstr ""
+
+#: addon/libravatar/libravatar.php:100
+msgid "This addon is not functional on your server."
+msgstr ""
+
+#: addon/libravatar/libravatar.php:109
+msgid ""
+"Gravatar addon is installed. Please disable the Gravatar addon. The "
+"Libravatar addon will fall back to Gravatar if nothing was found at "
+"Libravatar."
+msgstr ""
+
+#: addon/libravatar/libravatar.php:116
+msgid "Select default avatar image if none was found. See README"
+msgstr ""
+
+#: addon/libravatar/libravatar.php:129
+msgid "Libravatar settings updated."
+msgstr ""
+
+#: addon/discourse/discourse.php:50 src/Content/ContactSelector.php:128
+msgid "Discourse"
+msgstr ""
+
+#: addon/discourse/discourse.php:51
+msgid "Enable processing of Discourse mailing list mails"
+msgstr ""
+
+#: addon/discourse/discourse.php:51
+msgid ""
+"If enabled, incoming mails from Discourse will be improved so they look much "
+"better. To make it work, you have to configure the e-mail settings in "
+"Friendica. You also have to enable the mailing list mode in Discourse. Then "
+"you have to add the Discourse mail account as contact."
+msgstr ""
+
+#: addon/blockem/blockem.php:55 addon/blockem/blockem.php:59
+msgid "Blockem"
+msgstr ""
+
+#: addon/blockem/blockem.php:63
+msgid ""
+"Hides user's content by collapsing posts. Also replaces their avatar with "
+"generic image."
+msgstr ""
+
+#: addon/blockem/blockem.php:64
+msgid "Comma separated profile URLS:"
+msgstr ""
+
+#: addon/blockem/blockem.php:82
+msgid "BLOCKEM Settings saved."
+msgstr ""
+
+#: addon/blockem/blockem.php:144
+#, php-format
+msgid "Filtered user: %s"
+msgstr ""
+
+#: addon/blockem/blockem.php:203
+msgid "Unblock Author"
+msgstr ""
+
+#: addon/blockem/blockem.php:205
+msgid "Block Author"
+msgstr ""
+
+#: addon/blockem/blockem.php:245
+msgid "blockem settings updated"
+msgstr ""
+
+#: addon/catavatar/catavatar.php:62
+msgid "Use Cat as Avatar"
+msgstr ""
+
+#: addon/catavatar/catavatar.php:63
+msgid "More Random Cat!"
+msgstr ""
+
+#: addon/catavatar/catavatar.php:64
+msgid "Reset to email Cat"
+msgstr ""
+
+#: addon/catavatar/catavatar.php:66
+msgid "Cat Avatar Settings"
+msgstr ""
+
+#: addon/catavatar/catavatar.php:91
+msgid "The cat hadn't found itself."
+msgstr ""
+
+#: addon/catavatar/catavatar.php:100
+msgid "There was an error, the cat ran away."
+msgstr ""
+
+#: addon/catavatar/catavatar.php:106 include/api.php:4618
+#: src/Model/User.php:839 src/Model/User.php:847 src/Model/User.php:855
+#: mod/profile_photo.php:84 mod/profile_photo.php:93 mod/profile_photo.php:102
+#: mod/profile_photo.php:209 mod/profile_photo.php:297
+#: mod/profile_photo.php:307 mod/photos.php:88 mod/photos.php:179
+#: mod/photos.php:625 mod/photos.php:1047 mod/photos.php:1064
+#: mod/photos.php:1571
+msgid "Profile Photos"
+msgstr ""
+
+#: addon/catavatar/catavatar.php:121
+msgid "Meow!"
+msgstr ""
+
+#: addon/ljpost/ljpost.php:49
+msgid "Post to LiveJournal"
+msgstr ""
+
+#: addon/ljpost/ljpost.php:83
+msgid "LiveJournal Post Settings"
+msgstr ""
+
+#: addon/ljpost/ljpost.php:85
+msgid "Enable LiveJournal Post Addon"
+msgstr ""
+
+#: addon/ljpost/ljpost.php:90
+msgid "LiveJournal username"
+msgstr ""
+
+#: addon/ljpost/ljpost.php:95
+msgid "LiveJournal password"
+msgstr ""
+
+#: addon/ljpost/ljpost.php:100
+msgid "Post to LiveJournal by default"
+msgstr ""
+
+#: addon/buglink/buglink.php:25
+msgid "Report Bug"
+msgstr ""
+
+#: addon/ijpost/ijpost.php:49
+msgid "Post to Insanejournal"
+msgstr ""
+
+#: addon/ijpost/ijpost.php:81 addon/ijpost/ijpost.php:85
+msgid "InsaneJournal Export"
+msgstr ""
+
+#: addon/ijpost/ijpost.php:89
+msgid "Enable InsaneJournal Post Addon"
+msgstr ""
+
+#: addon/ijpost/ijpost.php:94
+msgid "InsaneJournal username"
+msgstr ""
+
+#: addon/ijpost/ijpost.php:99
+msgid "InsaneJournal password"
+msgstr ""
+
+#: addon/ijpost/ijpost.php:104
+msgid "Post to InsaneJournal by default"
+msgstr ""
+
+#: addon/geonames/geonames.php:114
+msgid "Geonames settings updated."
+msgstr ""
+
+#: addon/geonames/geonames.php:146
+msgid "Geonames Settings"
+msgstr ""
+
+#: addon/geonames/geonames.php:147
+msgid ""
+"Replace numerical coordinates by the nearest populated location name in your "
+"posts."
+msgstr ""
+
+#: addon/geonames/geonames.php:148
+msgid "Enable Geonames Addon"
+msgstr ""
+
+#: addon/geocoordinates/geocoordinates.php:96
+msgid "API Key"
+msgstr ""
+
+#: addon/geocoordinates/geocoordinates.php:97
+msgid "Language code (IETF format)"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:164
+#, php-format
+msgid "Unable to register the client at the pump.io server '%s'."
+msgstr ""
+
+#: addon/pumpio/pumpio.php:205
+msgid "You are now authenticated to pumpio."
+msgstr ""
+
+#: addon/pumpio/pumpio.php:226
+msgid "Post to pumpio"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:267 addon/pumpio/pumpio.php:271
+msgid "Pump.io Import/Export/Mirror"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:275
+msgid "pump.io username (without the servername)"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:280
+msgid "pump.io servername (without \"http://\" or \"https://\" )"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:291
+msgid "Authenticate your pump.io connection"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:300
+msgid "Enable pump.io Post Addon"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:305
+msgid "Post to pump.io by default"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:310
+msgid "Should posts be public?"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:315
+msgid "Mirror all public posts"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:320 addon/buffer/buffer.php:198
+msgid "Check to delete this preset"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:999 include/conversation.php:165
+#: include/conversation.php:175 include/conversation.php:302
+#: include/conversation.php:311 mod/tagger.php:72 mod/subthread.php:91
+msgid "status"
+msgstr ""
+
+#: addon/pumpio/pumpio.php:1003 include/conversation.php:183
+#, php-format
+msgid "%1$s likes %2$s's %3$s"
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:181
+msgid "View Larger"
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:209
+msgid "Tile Server URL"
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:209
+msgid ""
+"A list of public tile servers "
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:210
+msgid "Nominatim (reverse geocoding) Server URL"
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:210
+msgid ""
+"A list of Nominatim servers "
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:211
+msgid "Default zoom"
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:211
+msgid ""
+"The default zoom level. (1:world, 18:highest, also depends on tile server)"
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:212
+msgid "Include marker on map"
+msgstr ""
+
+#: addon/openstreetmap/openstreetmap.php:212
+msgid "Include a marker on the map."
+msgstr ""
+
+#: addon/mailstream/mailstream.php:81
+msgid "From Address"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:83
+msgid "Email address that stream items will appear to be from."
+msgstr ""
+
+#: addon/mailstream/mailstream.php:240
+msgid "Re:"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:248
+msgid "Friendica post"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:251
+msgid "Diaspora post"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:261
+msgid "Feed item"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:264 src/Content/ContactSelector.php:119
+#: src/Module/Admin/Users.php:270 src/Module/Admin/Users.php:281
+#: src/Module/Admin/Users.php:295 src/Module/Admin/Users.php:313
+msgid "Email"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:266
+msgid "Friendica Item"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:311
+msgid "Upstream"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:312
+msgid "Local"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:385
+msgid "Leave blank to use your account email address"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:388
+msgid "Exclude Likes"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:390
+msgid "Check this to omit mailing \"Like\" notifications"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:393
+msgid "Attach Images"
+msgstr ""
+
+#: addon/mailstream/mailstream.php:395
+msgid ""
+"Download images in posts and attach them to the email. Useful for reading "
+"email while offline."
+msgstr ""
+
+#: addon/mailstream/mailstream.php:396
+msgid "Mail Stream Settings"
+msgstr ""
+
+#: addon/dwpost/dwpost.php:51
+msgid "Post to Dreamwidth"
+msgstr ""
+
+#: addon/dwpost/dwpost.php:82 addon/dwpost/dwpost.php:86
+msgid "Dreamwidth Export"
+msgstr ""
+
+#: addon/dwpost/dwpost.php:90
+msgid "Enable dreamwidth Post Addon"
+msgstr ""
+
+#: addon/dwpost/dwpost.php:95
+msgid "dreamwidth username"
+msgstr ""
+
+#: addon/dwpost/dwpost.php:100
+msgid "dreamwidth password"
+msgstr ""
+
+#: addon/dwpost/dwpost.php:105
+msgid "Post to dreamwidth by default"
+msgstr ""
+
+#: addon/blackout/blackout.php:101
+msgid ""
+"The end-date is prior to the start-date of the blackout, you should fix this"
+msgstr ""
+
+#: addon/blackout/blackout.php:103
+#, php-format
+msgid ""
+"Please double check that the current settings for the blackout. Begin will "
+"be %s and it will end %s ."
+msgstr ""
+
+#: addon/blackout/blackout.php:107
+msgid "Redirect URL"
+msgstr ""
+
+#: addon/blackout/blackout.php:107
+msgid "all your visitors from the web will be redirected to this URL"
+msgstr ""
+
+#: addon/blackout/blackout.php:108
+msgid "Begin of the Blackout"
+msgstr ""
+
+#: addon/blackout/blackout.php:108
+msgid ""
+"Format is YYYY-MM-DD hh:mm ; YYYY year, MM month, "
+"DD day, hh hour and mm minute."
+msgstr ""
+
+#: addon/blackout/blackout.php:109
+msgid "End of the Blackout"
+msgstr ""
+
+#: addon/blackout/blackout.php:111
+msgid ""
+"Note : The redirect will be active from the moment you press "
+"the submit button. Users currently logged in will not be "
+"thrown out but can't login again after logging out should the blackout is "
+"still in place."
+msgstr ""
+
+#: addon/qcomment/qcomment.php:47
+msgid ":-)"
+msgstr ""
+
+#: addon/qcomment/qcomment.php:47
+msgid ":-("
+msgstr ""
+
+#: addon/qcomment/qcomment.php:47
+msgid "lol"
+msgstr ""
+
+#: addon/qcomment/qcomment.php:50
+msgid "Quick Comment Settings"
+msgstr ""
+
+#: addon/qcomment/qcomment.php:52
+msgid ""
+"Quick comments are found near comment boxes, sometimes hidden. Click them to "
+"provide simple replies."
+msgstr ""
+
+#: addon/qcomment/qcomment.php:53
+msgid "Enter quick comments, one per line"
+msgstr ""
+
+#: addon/qcomment/qcomment.php:71
+msgid "Quick Comment settings saved."
+msgstr ""
+
+#: addon/buffer/buffer.php:82
+msgid "Client ID"
+msgstr ""
+
+#: addon/buffer/buffer.php:83
+msgid "Client Secret"
+msgstr ""
+
+#: addon/buffer/buffer.php:101
+msgid "Error when registering buffer connection:"
+msgstr ""
+
+#: addon/buffer/buffer.php:121
+msgid "You are now authenticated to buffer. "
+msgstr ""
+
+#: addon/buffer/buffer.php:140
+msgid "Post to Buffer"
+msgstr ""
+
+#: addon/buffer/buffer.php:169 addon/buffer/buffer.php:173
+msgid "Buffer Export"
+msgstr ""
+
+#: addon/buffer/buffer.php:184
+msgid "Authenticate your Buffer connection"
+msgstr ""
+
+#: addon/buffer/buffer.php:188
+msgid "Enable Buffer Post Addon"
+msgstr ""
+
+#: addon/buffer/buffer.php:193
+msgid "Post to Buffer by default"
+msgstr ""
+
+#: addon/buffer/buffer.php:210
+msgid "Posts are going to all accounts that are enabled by default:"
+msgstr ""
+
+#: addon/planets/planets.php:153 addon/planets/planets.php:157
+msgid "Planets"
+msgstr ""
+
+#: addon/planets/planets.php:161
+msgid "Planets Settings"
+msgstr ""
+
+#: addon/planets/planets.php:163
+msgid "Enable Planets Addon"
+msgstr ""
+
+#: addon/irc/irc.php:43
+msgid "IRC Settings"
+msgstr ""
+
+#: addon/irc/irc.php:44
+msgid ""
+"Here you can change the system wide settings for the channels to "
+"automatically join and access via the side bar. Note the changes you do "
+"here, only effect the channel selection if you are logged in."
+msgstr ""
+
+#: addon/irc/irc.php:46 addon/irc/irc.php:147
+msgid "Channel(s) to auto connect (comma separated)"
+msgstr ""
+
+#: addon/irc/irc.php:46 addon/irc/irc.php:147
+msgid ""
+"List of channels that shall automatically connected to when the app is "
+"launched."
+msgstr ""
+
+#: addon/irc/irc.php:47 addon/irc/irc.php:148
+msgid "Popular Channels (comma separated)"
+msgstr ""
+
+#: addon/irc/irc.php:47 addon/irc/irc.php:148
+msgid ""
+"List of popular channels, will be displayed at the side and hotlinked for "
+"easy joining."
+msgstr ""
+
+#: addon/irc/irc.php:67 addon/irc/irc.php:138
+msgid "IRC settings saved."
+msgstr ""
+
+#: addon/irc/irc.php:72
+msgid "IRC Chatroom"
+msgstr ""
+
+#: addon/irc/irc.php:100
+msgid "Popular Channels"
+msgstr ""
+
+#: addon/infiniteimprobabilitydrive/infiniteimprobabilitydrive.php:23
+msgid "Infinite Improbability Drive"
+msgstr ""
+
+#: addon/widgets/widget_like.php:61
+#, php-format
+msgid "%d person likes this"
+msgid_plural "%d people like this"
+msgstr[0] ""
+msgstr[1] ""
+
+#: addon/widgets/widget_like.php:64
+#, php-format
+msgid "%d person doesn't like this"
+msgid_plural "%d people don't like this"
+msgstr[0] ""
+msgstr[1] ""
+
+#: addon/widgets/widget_friendheader.php:50
+msgid "Get added to this list!"
+msgstr ""
+
+#: addon/widgets/widget_friends.php:53
+msgid "Connect on Friendica!"
+msgstr ""
+
+#: addon/widgets/widgets.php:67
+msgid "Widgets key"
+msgstr ""
+
+#: addon/widgets/widgets.php:69
+msgid "Widgets available"
+msgstr ""
+
+#: addon/widgets/widgets.php:130 mod/settings.php:748
+msgid "Addon Settings"
+msgstr ""
+
+#: include/api.php:1113
#, 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] ""
msgstr[1] ""
-#: include/api.php:1138
+#: include/api.php:1127
#, 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] ""
-#: include/api.php:1152
+#: include/api.php:1141
#, php-format
msgid "Monthly posting limit of %d post reached. The post was rejected."
msgstr ""
-#: include/api.php:4576 src/Model/User.php:841 src/Model/User.php:849
-#: src/Model/User.php:857 mod/profile_photo.php:85 mod/profile_photo.php:94
-#: mod/profile_photo.php:103 mod/profile_photo.php:210
-#: mod/profile_photo.php:298 mod/profile_photo.php:308 mod/photos.php:90
-#: mod/photos.php:181 mod/photos.php:628 mod/photos.php:1055
-#: mod/photos.php:1072 mod/photos.php:1580
-msgid "Profile Photos"
-msgstr ""
-
-#: include/enotify.php:58
+#: include/enotify.php:59
msgid "Friendica Notification"
msgstr ""
-#: include/enotify.php:61
+#: include/enotify.php:62
msgid "Thank You,"
msgstr ""
-#: include/enotify.php:64
-#, php-format
-msgid "%1$s, %2$s Administrator"
-msgstr ""
-
-#: include/enotify.php:66
-#, php-format
-msgid "%s Administrator"
-msgstr ""
-
-#: include/enotify.php:135
+#: include/enotify.php:136
#, php-format
msgid "[Friendica:Notify] New mail received at %s"
msgstr ""
-#: include/enotify.php:137
+#: include/enotify.php:138
#, php-format
msgid "%1$s sent you a new private message at %2$s."
msgstr ""
-#: include/enotify.php:138
+#: include/enotify.php:139
msgid "a private message"
msgstr ""
-#: include/enotify.php:138
+#: include/enotify.php:139
#, php-format
msgid "%1$s sent you %2$s."
msgstr ""
-#: include/enotify.php:140
+#: include/enotify.php:141
#, php-format
msgid "Please visit %s to view and/or reply to your private messages."
msgstr ""
-#: include/enotify.php:173
-#, php-format
-msgid "%1$s tagged you on [url=%2$s]a %3$s[/url]"
-msgstr ""
-
-#: include/enotify.php:179
-#, php-format
-msgid "%1$s commented on [url=%2$s]a %3$s[/url]"
-msgstr ""
-
-#: include/enotify.php:189
-#, php-format
-msgid "%1$s tagged you on [url=%2$s]%3$s's %4$s[/url]"
-msgstr ""
-
-#: include/enotify.php:196
-#, php-format
-msgid "%1$s commented on [url=%2$s]%3$s's %4$s[/url]"
-msgstr ""
-
-#: include/enotify.php:208
-#, php-format
-msgid "%1$s tagged you on [url=%2$s]your %3$s[/url]"
-msgstr ""
-
-#: include/enotify.php:214
-#, php-format
-msgid "%1$s commented on [url=%2$s]your %3$s[/url]"
-msgstr ""
-
#: include/enotify.php:225
#, php-format
-msgid "%1$s tagged you on [url=%2$s]their %3$s[/url]"
-msgstr ""
-
-#: include/enotify.php:231
-#, php-format
-msgid "%1$s commented on [url=%2$s]their %3$s[/url]"
-msgstr ""
-
-#: include/enotify.php:244
-#, php-format
msgid "[Friendica:Notify] %s tagged you"
msgstr ""
-#: include/enotify.php:246
+#: include/enotify.php:227
#, php-format
msgid "%1$s tagged you at %2$s"
msgstr ""
-#: include/enotify.php:248
+#: include/enotify.php:229
#, php-format
msgid "[Friendica:Notify] Comment to conversation #%1$d by %2$s"
msgstr ""
-#: include/enotify.php:250
+#: include/enotify.php:231
#, php-format
msgid "%s commented on an item/conversation you have been following."
msgstr ""
-#: include/enotify.php:255 include/enotify.php:270 include/enotify.php:285
-#: include/enotify.php:304 include/enotify.php:320
+#: include/enotify.php:236 include/enotify.php:251 include/enotify.php:266
+#: include/enotify.php:285 include/enotify.php:301
#, php-format
msgid "Please visit %s to view and/or reply to the conversation."
msgstr ""
-#: include/enotify.php:262
+#: include/enotify.php:243
#, php-format
msgid "[Friendica:Notify] %s posted to your profile wall"
msgstr ""
-#: include/enotify.php:264
+#: include/enotify.php:245
#, php-format
msgid "%1$s posted to your profile wall at %2$s"
msgstr ""
-#: include/enotify.php:265
+#: include/enotify.php:246
#, php-format
msgid "%1$s posted to [url=%2$s]your wall[/url]"
msgstr ""
-#: include/enotify.php:277
+#: include/enotify.php:258
#, php-format
msgid "[Friendica:Notify] %s shared a new post"
msgstr ""
-#: include/enotify.php:279
+#: include/enotify.php:260
#, php-format
msgid "%1$s shared a new post at %2$s"
msgstr ""
-#: include/enotify.php:280
+#: include/enotify.php:261
#, php-format
msgid "%1$s [url=%2$s]shared a post[/url]."
msgstr ""
-#: include/enotify.php:292
+#: include/enotify.php:273
#, php-format
msgid "[Friendica:Notify] %1$s poked you"
msgstr ""
-#: include/enotify.php:294
+#: include/enotify.php:275
#, php-format
msgid "%1$s poked you at %2$s"
msgstr ""
-#: include/enotify.php:295
+#: include/enotify.php:276
#, php-format
msgid "%1$s [url=%2$s]poked you[/url]."
msgstr ""
-#: include/enotify.php:312
+#: include/enotify.php:293
#, php-format
msgid "[Friendica:Notify] %s tagged your post"
msgstr ""
-#: include/enotify.php:314
+#: include/enotify.php:295
#, php-format
msgid "%1$s tagged your post at %2$s"
msgstr ""
-#: include/enotify.php:315
+#: include/enotify.php:296
#, php-format
msgid "%1$s tagged [url=%2$s]your post[/url]"
msgstr ""
-#: include/enotify.php:327
+#: include/enotify.php:308
msgid "[Friendica:Notify] Introduction received"
msgstr ""
-#: include/enotify.php:329
+#: include/enotify.php:310
#, php-format
msgid "You've received an introduction from '%1$s' at %2$s"
msgstr ""
-#: include/enotify.php:330
+#: include/enotify.php:311
#, php-format
msgid "You've received [url=%1$s]an introduction[/url] from %2$s."
msgstr ""
-#: include/enotify.php:335 include/enotify.php:381
+#: include/enotify.php:316 include/enotify.php:362
#, php-format
msgid "You may visit their profile at %s"
msgstr ""
-#: include/enotify.php:337
+#: include/enotify.php:318
#, php-format
msgid "Please visit %s to approve or reject the introduction."
msgstr ""
-#: include/enotify.php:344
+#: include/enotify.php:325
msgid "[Friendica:Notify] A new person is sharing with you"
msgstr ""
-#: include/enotify.php:346 include/enotify.php:347
+#: include/enotify.php:327 include/enotify.php:328
#, php-format
msgid "%1$s is sharing with you at %2$s"
msgstr ""
-#: include/enotify.php:354
+#: include/enotify.php:335
msgid "[Friendica:Notify] You have a new follower"
msgstr ""
-#: include/enotify.php:356 include/enotify.php:357
+#: include/enotify.php:337 include/enotify.php:338
#, php-format
msgid "You have a new follower at %2$s : %1$s"
msgstr ""
-#: include/enotify.php:370
+#: include/enotify.php:351
msgid "[Friendica:Notify] Friend suggestion received"
msgstr ""
-#: include/enotify.php:372
+#: include/enotify.php:353
#, php-format
msgid "You've received a friend suggestion from '%1$s' at %2$s"
msgstr ""
-#: include/enotify.php:373
+#: include/enotify.php:354
#, php-format
msgid "You've received [url=%1$s]a friend suggestion[/url] for %2$s from %3$s."
msgstr ""
-#: include/enotify.php:379
+#: include/enotify.php:360
msgid "Name:"
msgstr ""
-#: include/enotify.php:380
+#: include/enotify.php:361
msgid "Photo:"
msgstr ""
-#: include/enotify.php:383
+#: include/enotify.php:364
#, php-format
msgid "Please visit %s to approve or reject the suggestion."
msgstr ""
-#: include/enotify.php:391 include/enotify.php:406
+#: include/enotify.php:372 include/enotify.php:387
msgid "[Friendica:Notify] Connection accepted"
msgstr ""
-#: include/enotify.php:393 include/enotify.php:408
+#: include/enotify.php:374 include/enotify.php:389
#, php-format
msgid "'%1$s' has accepted your connection request at %2$s"
msgstr ""
-#: include/enotify.php:394 include/enotify.php:409
+#: include/enotify.php:375 include/enotify.php:390
#, php-format
msgid "%2$s has accepted your [url=%1$s]connection request[/url]."
msgstr ""
-#: include/enotify.php:399
+#: include/enotify.php:380
msgid ""
"You are now mutual friends and may exchange status updates, photos, and "
"email without restriction."
msgstr ""
-#: include/enotify.php:401
+#: include/enotify.php:382
#, php-format
msgid "Please visit %s if you wish to make any changes to this relationship."
msgstr ""
-#: include/enotify.php:414
+#: include/enotify.php:395
#, php-format
msgid ""
"'%1$s' has chosen to accept you a fan, which restricts some forms of "
@@ -317,37 +3121,37 @@ msgid ""
"automatically."
msgstr ""
-#: include/enotify.php:416
+#: include/enotify.php:397
#, php-format
msgid ""
"'%1$s' may choose to extend this into a two-way or more permissive "
"relationship in the future."
msgstr ""
-#: include/enotify.php:418
+#: include/enotify.php:399
#, php-format
msgid "Please visit %s if you wish to make any changes to this relationship."
msgstr ""
-#: include/enotify.php:428 mod/removeme.php:46
+#: include/enotify.php:409 mod/removeme.php:46
msgid "[Friendica System Notify]"
msgstr ""
-#: include/enotify.php:428
+#: include/enotify.php:409
msgid "registration request"
msgstr ""
-#: include/enotify.php:430
+#: include/enotify.php:411
#, php-format
msgid "You've received a registration request from '%1$s' at %2$s"
msgstr ""
-#: include/enotify.php:431
+#: include/enotify.php:412
#, php-format
msgid "You've received a [url=%1$s]registration request[/url] from %2$s."
msgstr ""
-#: include/enotify.php:436
+#: include/enotify.php:417
#, php-format
msgid ""
"Full Name:\t%s\n"
@@ -355,540 +3159,491 @@ msgid ""
"Login Name:\t%s (%s)"
msgstr ""
-#: include/enotify.php:442
+#: include/enotify.php:423
#, php-format
msgid "Please visit %s to approve or reject the request."
msgstr ""
-#: include/conversation.php:167 include/conversation.php:304
+#: include/conversation.php:162 include/conversation.php:299
#: src/Model/Item.php:3394
msgid "event"
msgstr ""
-#: include/conversation.php:170 include/conversation.php:180
-#: include/conversation.php:307 include/conversation.php:316 mod/tagger.php:72
-#: mod/subthread.php:91
-msgid "status"
-msgstr ""
-
-#: include/conversation.php:175 include/conversation.php:312
+#: include/conversation.php:170 include/conversation.php:307
#: src/Model/Item.php:3396 mod/tagger.php:72 mod/subthread.php:91
msgid "photo"
msgstr ""
-#: include/conversation.php:188
-#, php-format
-msgid "%1$s likes %2$s's %3$s"
-msgstr ""
-
-#: include/conversation.php:190
+#: include/conversation.php:185
#, php-format
msgid "%1$s doesn't like %2$s's %3$s"
msgstr ""
-#: include/conversation.php:192
+#: include/conversation.php:187
#, php-format
msgid "%1$s attends %2$s's %3$s"
msgstr ""
-#: include/conversation.php:194
+#: include/conversation.php:189
#, php-format
msgid "%1$s doesn't attend %2$s's %3$s"
msgstr ""
-#: include/conversation.php:196
+#: include/conversation.php:191
#, php-format
msgid "%1$s attends maybe %2$s's %3$s"
msgstr ""
-#: include/conversation.php:231
+#: include/conversation.php:226
#, php-format
msgid "%1$s is now friends with %2$s"
msgstr ""
-#: include/conversation.php:272
+#: include/conversation.php:267
#, php-format
msgid "%1$s poked %2$s"
msgstr ""
-#: include/conversation.php:326 mod/tagger.php:105
+#: include/conversation.php:321 mod/tagger.php:105
#, php-format
msgid "%1$s tagged %2$s's %3$s with %4$s"
msgstr ""
-#: include/conversation.php:348
+#: include/conversation.php:343
msgid "post/item"
msgstr ""
-#: include/conversation.php:349
+#: include/conversation.php:344
#, php-format
msgid "%1$s marked %2$s's %3$s as favorite"
msgstr ""
-#: include/conversation.php:574 mod/photos.php:1407 mod/profiles.php:352
+#: include/conversation.php:568 mod/photos.php:1399 mod/profiles.php:350
msgid "Likes"
msgstr ""
-#: include/conversation.php:575 mod/photos.php:1407 mod/profiles.php:355
+#: include/conversation.php:569 mod/photos.php:1399 mod/profiles.php:353
msgid "Dislikes"
msgstr ""
-#: include/conversation.php:576 include/conversation.php:1603
-#: mod/photos.php:1408
+#: include/conversation.php:570 include/conversation.php:1591
+#: mod/photos.php:1400
msgid "Attending"
msgid_plural "Attending"
msgstr[0] ""
msgstr[1] ""
-#: include/conversation.php:577 mod/photos.php:1408
+#: include/conversation.php:571 mod/photos.php:1400
msgid "Not attending"
msgstr ""
-#: include/conversation.php:578 mod/photos.php:1408
+#: include/conversation.php:572 mod/photos.php:1400
msgid "Might attend"
msgstr ""
-#: include/conversation.php:579
+#: include/conversation.php:573
msgid "Reshares"
msgstr ""
-#: include/conversation.php:659 src/Object/Post.php:211 mod/photos.php:1469
+#: include/conversation.php:653 src/Object/Post.php:208 mod/photos.php:1460
msgid "Select"
msgstr ""
-#: include/conversation.php:660 src/Module/Admin/Users.php:288
-#: src/Module/Contact.php:826 src/Module/Contact.php:1107 mod/photos.php:1470
-#: mod/settings.php:731 mod/settings.php:873
+#: include/conversation.php:654 src/Module/Admin/Users.php:286
+#: src/Module/Contact.php:829 src/Module/Contact.php:1110 mod/photos.php:1461
+#: mod/settings.php:725 mod/settings.php:867
msgid "Delete"
msgstr ""
-#: include/conversation.php:689 src/Object/Post.php:407 src/Object/Post.php:408
+#: include/conversation.php:680 src/Object/Post.php:401 src/Object/Post.php:402
#, php-format
msgid "View %s's profile @ %s"
msgstr ""
-#: include/conversation.php:702 src/Object/Post.php:395
+#: include/conversation.php:693 src/Object/Post.php:389
msgid "Categories:"
msgstr ""
-#: include/conversation.php:703 src/Object/Post.php:396
+#: include/conversation.php:694 src/Object/Post.php:390
msgid "Filed under:"
msgstr ""
-#: include/conversation.php:710 src/Object/Post.php:421
+#: include/conversation.php:701 src/Object/Post.php:415
#, php-format
msgid "%s from %s"
msgstr ""
-#: include/conversation.php:725
+#: include/conversation.php:716
msgid "View in context"
msgstr ""
-#: include/conversation.php:727 include/conversation.php:1249
-#: src/Object/Post.php:451 src/Module/Item/Compose.php:143
-#: mod/wallmessage.php:141 mod/photos.php:1380 mod/editpost.php:87
-#: mod/message.php:260 mod/message.php:442
+#: include/conversation.php:718 include/conversation.php:1237
+#: src/Object/Post.php:445 src/Module/Item/Compose.php:140
+#: mod/wallmessage.php:140 mod/photos.php:1372 mod/editpost.php:87
+#: mod/message.php:258 mod/message.php:440
msgid "Please wait"
msgstr ""
-#: include/conversation.php:791
+#: include/conversation.php:782
msgid "remove"
msgstr ""
-#: include/conversation.php:795
+#: include/conversation.php:786
msgid "Delete Selected Items"
msgstr ""
-#: include/conversation.php:956 view/theme/frio/theme.php:363
+#: include/conversation.php:947 view/theme/frio/theme.php:363
msgid "Follow Thread"
msgstr ""
-#: include/conversation.php:957 src/Model/Contact.php:1255
+#: include/conversation.php:948 src/Model/Contact.php:1279
msgid "View Status"
msgstr ""
-#: include/conversation.php:958 include/conversation.php:976
-#: src/Model/Contact.php:1185 src/Model/Contact.php:1247
-#: src/Model/Contact.php:1256 src/Module/Directory.php:148
-#: src/Module/BaseSearchModule.php:137 src/Module/AllFriends.php:74
-#: mod/match.php:87 mod/suggest.php:87
+#: include/conversation.php:949 include/conversation.php:967
+#: src/Model/Contact.php:1209 src/Model/Contact.php:1271
+#: src/Model/Contact.php:1280 src/Module/Directory.php:148
+#: src/Module/BaseSearchModule.php:132 src/Module/AllFriends.php:74
+#: mod/match.php:86 mod/suggest.php:86
msgid "View Profile"
msgstr ""
-#: include/conversation.php:959 src/Model/Contact.php:1257
+#: include/conversation.php:950 src/Model/Contact.php:1281
msgid "View Photos"
msgstr ""
-#: include/conversation.php:960 src/Model/Contact.php:1248
-#: src/Model/Contact.php:1258
+#: include/conversation.php:951 src/Model/Contact.php:1272
+#: src/Model/Contact.php:1282
msgid "Network Posts"
msgstr ""
-#: include/conversation.php:961 src/Model/Contact.php:1249
-#: src/Model/Contact.php:1259
+#: include/conversation.php:952 src/Model/Contact.php:1273
+#: src/Model/Contact.php:1283
msgid "View Contact"
msgstr ""
-#: include/conversation.php:962 src/Model/Contact.php:1261
+#: include/conversation.php:953 src/Model/Contact.php:1285
msgid "Send PM"
msgstr ""
-#: include/conversation.php:963 src/Module/Admin/Blocklist/Contact.php:67
-#: src/Module/Admin/Users.php:289 src/Module/Contact.php:606
-#: src/Module/Contact.php:823 src/Module/Contact.php:1082
+#: include/conversation.php:954 src/Module/Admin/Blocklist/Contact.php:65
+#: src/Module/Admin/Users.php:287 src/Module/Contact.php:605
+#: src/Module/Contact.php:826 src/Module/Contact.php:1085
msgid "Block"
msgstr ""
-#: include/conversation.php:964 src/Module/Contact.php:607
-#: src/Module/Contact.php:824 src/Module/Contact.php:1090
-#: mod/notifications.php:66 mod/notifications.php:201 mod/notifications.php:294
+#: include/conversation.php:955 src/Module/Contact.php:606
+#: src/Module/Contact.php:827 src/Module/Contact.php:1093
+#: mod/notifications.php:37 mod/notifications.php:173 mod/notifications.php:266
msgid "Ignore"
msgstr ""
-#: include/conversation.php:968 src/Model/Contact.php:1262
+#: include/conversation.php:959 src/Model/Contact.php:1286
msgid "Poke"
msgstr ""
-#: include/conversation.php:973 view/theme/vier/theme.php:178
-#: src/Content/Widget.php:67 src/Model/Contact.php:1250
-#: src/Model/Contact.php:1263 src/Module/BaseSearchModule.php:138
-#: src/Module/AllFriends.php:75 mod/follow.php:160 mod/match.php:88
-#: mod/suggest.php:88
+#: include/conversation.php:964 view/theme/vier/theme.php:177
+#: src/Content/Widget.php:63 src/Model/Contact.php:1274
+#: src/Model/Contact.php:1287 src/Module/BaseSearchModule.php:133
+#: src/Module/AllFriends.php:75 mod/follow.php:159 mod/match.php:87
+#: mod/suggest.php:87
msgid "Connect/Follow"
msgstr ""
-#: include/conversation.php:1101
+#: include/conversation.php:1089
#, php-format
msgid "%s likes this."
msgstr ""
-#: include/conversation.php:1104
+#: include/conversation.php:1092
#, php-format
msgid "%s doesn't like this."
msgstr ""
-#: include/conversation.php:1107
+#: include/conversation.php:1095
#, php-format
msgid "%s attends."
msgstr ""
-#: include/conversation.php:1110
+#: include/conversation.php:1098
#, php-format
msgid "%s doesn't attend."
msgstr ""
-#: include/conversation.php:1113
+#: include/conversation.php:1101
#, php-format
msgid "%s attends maybe."
msgstr ""
-#: include/conversation.php:1116 include/conversation.php:1159
+#: include/conversation.php:1104 include/conversation.php:1147
#, php-format
msgid "%s reshared this."
msgstr ""
-#: include/conversation.php:1124
+#: include/conversation.php:1112
msgid "and"
msgstr ""
-#: include/conversation.php:1130
+#: include/conversation.php:1118
#, php-format
msgid "and %d other people"
msgstr ""
-#: include/conversation.php:1138
+#: include/conversation.php:1126
#, php-format
msgid "%2$d people like this"
msgstr ""
-#: include/conversation.php:1139
+#: include/conversation.php:1127
#, php-format
msgid "%s like this."
msgstr ""
-#: include/conversation.php:1142
+#: include/conversation.php:1130
#, php-format
msgid "%2$d people don't like this"
msgstr ""
-#: include/conversation.php:1143
+#: include/conversation.php:1131
#, php-format
msgid "%s don't like this."
msgstr ""
-#: include/conversation.php:1146
+#: include/conversation.php:1134
#, php-format
msgid "%2$d people attend"
msgstr ""
-#: include/conversation.php:1147
+#: include/conversation.php:1135
#, php-format
msgid "%s attend."
msgstr ""
-#: include/conversation.php:1150
+#: include/conversation.php:1138
#, php-format
msgid "%2$d people don't attend"
msgstr ""
-#: include/conversation.php:1151
+#: include/conversation.php:1139
#, php-format
msgid "%s don't attend."
msgstr ""
-#: include/conversation.php:1154
+#: include/conversation.php:1142
#, php-format
msgid "%2$d people attend maybe"
msgstr ""
-#: include/conversation.php:1155
+#: include/conversation.php:1143
#, php-format
msgid "%s attend maybe."
msgstr ""
-#: include/conversation.php:1158
+#: include/conversation.php:1146
#, php-format
msgid "%2$d people reshared this"
msgstr ""
-#: include/conversation.php:1188
+#: include/conversation.php:1176
msgid "Visible to everybody "
msgstr ""
-#: include/conversation.php:1189 src/Object/Post.php:920
-#: src/Module/Item/Compose.php:137
+#: include/conversation.php:1177 src/Object/Post.php:913
+#: src/Module/Item/Compose.php:134
msgid "Please enter a image/video/audio/webpage URL:"
msgstr ""
-#: include/conversation.php:1190
+#: include/conversation.php:1178
msgid "Tag term:"
msgstr ""
-#: include/conversation.php:1191 src/Module/Filer/SaveTag.php:48
+#: include/conversation.php:1179 src/Module/Filer/SaveTag.php:47
msgid "Save to Folder:"
msgstr ""
-#: include/conversation.php:1192
+#: include/conversation.php:1180
msgid "Where are you right now?"
msgstr ""
-#: include/conversation.php:1193
+#: include/conversation.php:1181
msgid "Delete item(s)?"
msgstr ""
-#: include/conversation.php:1225
+#: include/conversation.php:1213
msgid "New Post"
msgstr ""
-#: include/conversation.php:1228
+#: include/conversation.php:1216
msgid "Share"
msgstr ""
-#: include/conversation.php:1229 mod/wallmessage.php:139 mod/editpost.php:73
-#: mod/message.php:258 mod/message.php:439
+#: include/conversation.php:1217 mod/wallmessage.php:138 mod/editpost.php:73
+#: mod/message.php:256 mod/message.php:437
msgid "Upload photo"
msgstr ""
-#: include/conversation.php:1230 mod/editpost.php:74
+#: include/conversation.php:1218 mod/editpost.php:74
msgid "upload photo"
msgstr ""
-#: include/conversation.php:1231 mod/editpost.php:75
+#: include/conversation.php:1219 mod/editpost.php:75
msgid "Attach file"
msgstr ""
-#: include/conversation.php:1232 mod/editpost.php:76
+#: include/conversation.php:1220 mod/editpost.php:76
msgid "attach file"
msgstr ""
-#: include/conversation.php:1233 src/Object/Post.php:912
-#: src/Module/Item/Compose.php:129
+#: include/conversation.php:1221 src/Object/Post.php:905
+#: src/Module/Item/Compose.php:126
msgid "Bold"
msgstr ""
-#: include/conversation.php:1234 src/Object/Post.php:913
-#: src/Module/Item/Compose.php:130
+#: include/conversation.php:1222 src/Object/Post.php:906
+#: src/Module/Item/Compose.php:127
msgid "Italic"
msgstr ""
-#: include/conversation.php:1235 src/Object/Post.php:914
-#: src/Module/Item/Compose.php:131
+#: include/conversation.php:1223 src/Object/Post.php:907
+#: src/Module/Item/Compose.php:128
msgid "Underline"
msgstr ""
-#: include/conversation.php:1236 src/Object/Post.php:915
-#: src/Module/Item/Compose.php:132
+#: include/conversation.php:1224 src/Object/Post.php:908
+#: src/Module/Item/Compose.php:129
msgid "Quote"
msgstr ""
-#: include/conversation.php:1237 src/Object/Post.php:916
-#: src/Module/Item/Compose.php:133
+#: include/conversation.php:1225 src/Object/Post.php:909
+#: src/Module/Item/Compose.php:130
msgid "Code"
msgstr ""
-#: include/conversation.php:1238 src/Object/Post.php:917
-#: src/Module/Item/Compose.php:134
+#: include/conversation.php:1226 src/Object/Post.php:910
+#: src/Module/Item/Compose.php:131
msgid "Image"
msgstr ""
-#: include/conversation.php:1239 src/Object/Post.php:918
-#: src/Module/Item/Compose.php:135
+#: include/conversation.php:1227 src/Object/Post.php:911
+#: src/Module/Item/Compose.php:132
msgid "Link"
msgstr ""
-#: include/conversation.php:1240 src/Object/Post.php:919
-#: src/Module/Item/Compose.php:136
+#: include/conversation.php:1228 src/Object/Post.php:912
+#: src/Module/Item/Compose.php:133
msgid "Link or Media"
msgstr ""
-#: include/conversation.php:1241 src/Module/Item/Compose.php:139
+#: include/conversation.php:1229 src/Module/Item/Compose.php:136
#: mod/editpost.php:83
msgid "Set your location"
msgstr ""
-#: include/conversation.php:1242 mod/editpost.php:84
+#: include/conversation.php:1230 mod/editpost.php:84
msgid "set location"
msgstr ""
-#: include/conversation.php:1243 mod/editpost.php:85
+#: include/conversation.php:1231 mod/editpost.php:85
msgid "Clear browser location"
msgstr ""
-#: include/conversation.php:1244 mod/editpost.php:86
+#: include/conversation.php:1232 mod/editpost.php:86
msgid "clear location"
msgstr ""
-#: include/conversation.php:1246 src/Module/Item/Compose.php:144
+#: include/conversation.php:1234 src/Module/Item/Compose.php:141
#: mod/editpost.php:100
msgid "Set title"
msgstr ""
-#: include/conversation.php:1248 src/Module/Item/Compose.php:145
+#: include/conversation.php:1236 src/Module/Item/Compose.php:142
#: mod/editpost.php:102
msgid "Categories (comma-separated list)"
msgstr ""
-#: include/conversation.php:1250 mod/editpost.php:88
+#: include/conversation.php:1238 mod/editpost.php:88
msgid "Permission settings"
msgstr ""
-#: include/conversation.php:1251 mod/editpost.php:117
+#: include/conversation.php:1239 mod/editpost.php:117
msgid "permissions"
msgstr ""
-#: include/conversation.php:1260 mod/editpost.php:97
+#: include/conversation.php:1248 mod/editpost.php:97
msgid "Public post"
msgstr ""
-#: include/conversation.php:1264 src/Object/Post.php:921
-#: src/Module/Item/Compose.php:138 mod/events.php:556 mod/photos.php:1398
-#: mod/photos.php:1437 mod/photos.php:1502 mod/editpost.php:108
+#: include/conversation.php:1252 src/Object/Post.php:914
+#: src/Module/Item/Compose.php:135 mod/events.php:549 mod/photos.php:1390
+#: mod/photos.php:1429 mod/photos.php:1493 mod/editpost.php:108
msgid "Preview"
msgstr ""
-#: include/conversation.php:1268 include/items.php:392
-#: src/Module/Contact.php:447 mod/dfrn_request.php:652 mod/follow.php:174
-#: mod/fbrowser.php:110 mod/fbrowser.php:139 mod/unfollow.php:132
-#: mod/photos.php:1049 mod/photos.php:1156 mod/settings.php:671
-#: mod/settings.php:697 mod/suggest.php:76 mod/editpost.php:111
-#: mod/message.php:153 mod/tagrm.php:20 mod/tagrm.php:115
-msgid "Cancel"
-msgstr ""
-
-#: include/conversation.php:1273
+#: include/conversation.php:1261
msgid "Post to Groups"
msgstr ""
-#: include/conversation.php:1274
+#: include/conversation.php:1262
msgid "Post to Contacts"
msgstr ""
-#: include/conversation.php:1275
+#: include/conversation.php:1263
msgid "Private post"
msgstr ""
-#: include/conversation.php:1280 src/Model/Profile.php:546
-#: src/Module/Contact.php:322 mod/editpost.php:115
-msgid "Message"
-msgstr ""
-
-#: include/conversation.php:1281 mod/editpost.php:116
+#: include/conversation.php:1269 mod/editpost.php:116
msgid "Browser"
msgstr ""
-#: include/conversation.php:1573
+#: include/conversation.php:1561
msgid "View all"
msgstr ""
-#: include/conversation.php:1597
+#: include/conversation.php:1585
msgid "Like"
msgid_plural "Likes"
msgstr[0] ""
msgstr[1] ""
-#: include/conversation.php:1600
+#: include/conversation.php:1588
msgid "Dislike"
msgid_plural "Dislikes"
msgstr[0] ""
msgstr[1] ""
-#: include/conversation.php:1606
+#: include/conversation.php:1594
msgid "Not Attending"
msgid_plural "Not Attending"
msgstr[0] ""
msgstr[1] ""
-#: include/conversation.php:1609 src/Content/ContactSelector.php:245
+#: include/conversation.php:1597 src/Content/ContactSelector.php:249
msgid "Undecided"
msgid_plural "Undecided"
msgstr[0] ""
msgstr[1] ""
-#: include/items.php:355 src/Module/Admin/Themes/Details.php:53
-#: src/Module/Admin/Themes/Index.php:43 src/Module/Debug/ItemBody.php:27
+#: include/items.php:349 src/Module/Admin/Themes/Details.php:53
+#: src/Module/Admin/Themes/Index.php:41 src/Module/Debug/ItemBody.php:27
#: src/Module/Debug/ItemBody.php:40
msgid "Item not found."
msgstr ""
-#: include/items.php:387
+#: include/items.php:381
msgid "Do you really want to delete this item?"
msgstr ""
-#: include/items.php:389 src/Module/Contact.php:444 src/Module/Register.php:91
-#: mod/api.php:110 mod/dfrn_request.php:642 mod/follow.php:163
-#: mod/profiles.php:526 mod/profiles.php:529 mod/profiles.php:551
-#: mod/settings.php:1090 mod/settings.php:1096 mod/settings.php:1103
-#: mod/settings.php:1107 mod/settings.php:1111 mod/settings.php:1115
-#: mod/settings.php:1119 mod/settings.php:1123 mod/settings.php:1143
-#: mod/settings.php:1144 mod/settings.php:1145 mod/settings.php:1146
-#: mod/settings.php:1147 mod/suggest.php:73 mod/message.php:150
+#: include/items.php:383 src/Module/Contact.php:443 src/Module/Register.php:97
+#: mod/api.php:110 mod/dfrn_request.php:643 mod/follow.php:162
+#: mod/profiles.php:524 mod/profiles.php:527 mod/profiles.php:549
+#: mod/settings.php:1084 mod/settings.php:1090 mod/settings.php:1097
+#: mod/settings.php:1101 mod/settings.php:1105 mod/settings.php:1109
+#: mod/settings.php:1113 mod/settings.php:1117 mod/settings.php:1137
+#: mod/settings.php:1138 mod/settings.php:1139 mod/settings.php:1140
+#: mod/settings.php:1141 mod/suggest.php:72 mod/message.php:148
msgid "Yes"
msgstr ""
-#: include/items.php:439 src/Module/Delegation.php:101
-#: src/Module/Notifications/Notify.php:20 src/Module/Attach.php:42
-#: src/Module/Settings/Delegation.php:26 src/Module/Settings/Delegation.php:54
-#: src/Module/Group.php:31 src/Module/Group.php:77
-#: src/Module/FollowConfirm.php:27 src/Module/Profile/Contacts.php:50
-#: src/Module/Contact.php:361 src/Module/Invite.php:22
-#: src/Module/Invite.php:110 src/Module/Register.php:186
-#: src/Module/Search/Directory.php:19 mod/notes.php:27 mod/uimport.php:17
-#: mod/fsuggest.php:63 mod/common.php:27 mod/events.php:215 mod/api.php:35
-#: mod/api.php:40 mod/cal.php:291 mod/crepair.php:90 mod/notifications.php:76
-#: mod/wallmessage.php:19 mod/wallmessage.php:43 mod/wallmessage.php:82
-#: mod/wallmessage.php:106 mod/ostatus_subscribe.php:18 mod/follow.php:57
-#: mod/follow.php:134 mod/network.php:38 mod/unfollow.php:22
-#: mod/unfollow.php:77 mod/unfollow.php:109 mod/profile_photo.php:32
-#: mod/profile_photo.php:177 mod/profile_photo.php:197 mod/poke.php:142
-#: mod/photos.php:163 mod/photos.php:927 mod/profiles.php:182
-#: mod/profiles.php:499 mod/wall_attach.php:63 mod/wall_attach.php:66
-#: mod/item.php:174 mod/regmod.php:89 mod/settings.php:54 mod/settings.php:167
-#: mod/settings.php:660 mod/suggest.php:39 mod/dfrn_confirm.php:65
-#: mod/wall_upload.php:95 mod/wall_upload.php:98 mod/editpost.php:22
-#: mod/message.php:56 mod/message.php:101 mod/repair_ostatus.php:16
-msgid "Permission denied."
-msgstr ""
-
#: update.php:218
#, php-format
msgid "%s: Updating author-id and owner-id in item and thread table. "
@@ -899,163 +3654,126 @@ msgstr ""
msgid "%s: Updating post-type."
msgstr ""
-#: view/theme/vier/theme.php:128 view/theme/vier/config.php:126
+#: view/theme/vier/theme.php:127 view/theme/vier/config.php:124
msgid "Community Profiles"
msgstr ""
-#: view/theme/vier/theme.php:158 view/theme/vier/config.php:130
+#: view/theme/vier/theme.php:157 view/theme/vier/config.php:128
msgid "Last users"
msgstr ""
-#: view/theme/vier/theme.php:176 src/Content/Widget.php:65
+#: view/theme/vier/theme.php:175 src/Content/Widget.php:61
msgid "Find People"
msgstr ""
-#: view/theme/vier/theme.php:177 src/Content/Widget.php:66
+#: view/theme/vier/theme.php:176 src/Content/Widget.php:62
msgid "Enter name or interest"
msgstr ""
-#: view/theme/vier/theme.php:179 src/Content/Widget.php:68
+#: view/theme/vier/theme.php:178 src/Content/Widget.php:64
msgid "Examples: Robert Morgenstein, Fishing"
msgstr ""
-#: view/theme/vier/theme.php:180 src/Content/Widget.php:69
-#: src/Module/Directory.php:84 src/Module/Contact.php:816
-msgid "Find"
-msgstr ""
-
-#: view/theme/vier/theme.php:181 src/Content/Widget.php:70 mod/suggest.php:119
+#: view/theme/vier/theme.php:180 src/Content/Widget.php:66 mod/suggest.php:118
msgid "Friend Suggestions"
msgstr ""
-#: view/theme/vier/theme.php:182 src/Content/Widget.php:71
+#: view/theme/vier/theme.php:181 src/Content/Widget.php:67
msgid "Similar Interests"
msgstr ""
-#: view/theme/vier/theme.php:183 src/Content/Widget.php:72
+#: view/theme/vier/theme.php:182 src/Content/Widget.php:68
msgid "Random Profile"
msgstr ""
-#: view/theme/vier/theme.php:184 src/Content/Widget.php:73
+#: view/theme/vier/theme.php:183 src/Content/Widget.php:69
msgid "Invite Friends"
msgstr ""
-#: view/theme/vier/theme.php:185 src/Content/Widget.php:74
-#: src/Module/Directory.php:76
-msgid "Global Directory"
-msgstr ""
-
-#: view/theme/vier/theme.php:187 src/Content/Widget.php:76
+#: view/theme/vier/theme.php:186 src/Content/Widget.php:72
msgid "Local Directory"
msgstr ""
-#: view/theme/vier/theme.php:227 src/Content/Text/HTML.php:926
-#: src/Content/ForumManager.php:130 src/Content/Nav.php:209
+#: view/theme/vier/theme.php:226 src/Content/Text/HTML.php:915
+#: src/Content/ForumManager.php:129 src/Content/Nav.php:208
msgid "Forums"
msgstr ""
-#: view/theme/vier/theme.php:229 src/Content/ForumManager.php:132
+#: view/theme/vier/theme.php:228 src/Content/ForumManager.php:131
msgid "External link to forum"
msgstr ""
-#: view/theme/vier/theme.php:232 src/Content/Widget.php:409
-#: src/Content/Widget.php:509 src/Content/ForumManager.php:135
-msgid "show more"
-msgstr ""
-
-#: view/theme/vier/theme.php:265
+#: view/theme/vier/theme.php:264
msgid "Quick Start"
msgstr ""
-#: view/theme/vier/theme.php:271 src/Content/Nav.php:192 src/Module/Help.php:50
-#: src/Module/Settings/TwoFactor/Verify.php:117
-#: src/Module/Settings/TwoFactor/AppSpecific.php:99
-#: src/Module/Settings/TwoFactor/Index.php:90
-#: src/Module/Settings/TwoFactor/Recovery.php:77
-msgid "Help"
-msgstr ""
-
-#: view/theme/vier/theme.php:350 view/theme/vier/config.php:128
+#: view/theme/vier/theme.php:349 view/theme/vier/config.php:126
msgid "Connect Services"
msgstr ""
-#: view/theme/vier/config.php:78
+#: view/theme/vier/config.php:76
msgid "Comma separated list of helper forums"
msgstr ""
-#: view/theme/vier/config.php:118
+#: view/theme/vier/config.php:116
msgid "don't show"
msgstr ""
-#: view/theme/vier/config.php:118
+#: view/theme/vier/config.php:116
msgid "show"
msgstr ""
-#: view/theme/vier/config.php:122 view/theme/duepuntozero/config.php:72
-#: view/theme/frio/config.php:127 view/theme/quattro/config.php:74
-#: src/Object/Post.php:911 src/Module/Delegation.php:134
-#: src/Module/Install.php:212 src/Module/Install.php:252
-#: src/Module/Install.php:288 src/Module/Debug/Localtime.php:45
-#: src/Module/Contact.php:581 src/Module/Invite.php:157
-#: src/Module/Item/Compose.php:128 mod/fsuggest.php:92 mod/events.php:558
-#: mod/crepair.php:149 mod/poke.php:185 mod/photos.php:956 mod/photos.php:1066
-#: mod/photos.php:1352 mod/photos.php:1397 mod/photos.php:1436
-#: mod/photos.php:1501 mod/profiles.php:562 mod/message.php:261
-#: mod/message.php:441
-msgid "Submit"
-msgstr ""
-
-#: view/theme/vier/config.php:123 view/theme/duepuntozero/config.php:73
-#: view/theme/frio/config.php:128 view/theme/quattro/config.php:75
-#: mod/settings.php:976
+#: view/theme/vier/config.php:121 view/theme/duepuntozero/config.php:71
+#: view/theme/frio/config.php:126 view/theme/quattro/config.php:73
+#: mod/settings.php:970
msgid "Theme settings"
msgstr ""
-#: view/theme/vier/config.php:124
+#: view/theme/vier/config.php:122
msgid "Set style"
msgstr ""
-#: view/theme/vier/config.php:125
+#: view/theme/vier/config.php:123
msgid "Community Pages"
msgstr ""
-#: view/theme/vier/config.php:127
+#: view/theme/vier/config.php:125
msgid "Help or @NewHere ?"
msgstr ""
-#: view/theme/vier/config.php:129
+#: view/theme/vier/config.php:127
msgid "Find Friends"
msgstr ""
-#: view/theme/duepuntozero/config.php:55 src/Model/User.php:790
+#: view/theme/duepuntozero/config.php:53 src/Model/User.php:788
msgid "default"
msgstr ""
-#: view/theme/duepuntozero/config.php:56
+#: view/theme/duepuntozero/config.php:54
msgid "greenzero"
msgstr ""
-#: view/theme/duepuntozero/config.php:57
+#: view/theme/duepuntozero/config.php:55
msgid "purplezero"
msgstr ""
-#: view/theme/duepuntozero/config.php:58
+#: view/theme/duepuntozero/config.php:56
msgid "easterbunny"
msgstr ""
-#: view/theme/duepuntozero/config.php:59
+#: view/theme/duepuntozero/config.php:57
msgid "darkzero"
msgstr ""
-#: view/theme/duepuntozero/config.php:60
+#: view/theme/duepuntozero/config.php:58
msgid "comix"
msgstr ""
-#: view/theme/duepuntozero/config.php:61
+#: view/theme/duepuntozero/config.php:59
msgid "slackr"
msgstr ""
-#: view/theme/duepuntozero/config.php:74
+#: view/theme/duepuntozero/config.php:72
msgid "Variations"
msgstr ""
@@ -1103,204 +3821,197 @@ msgstr ""
msgid "Visitor"
msgstr ""
-#: view/theme/frio/theme.php:267 src/Content/Nav.php:160
-#: src/Model/Profile.php:913 src/Module/Settings/TwoFactor/Index.php:91
-#: src/Module/Contact.php:637 src/Module/Contact.php:852
+#: view/theme/frio/theme.php:267 src/Content/Nav.php:159
+#: src/Model/Profile.php:912 src/Module/Settings/TwoFactor/Index.php:88
+#: src/Module/Contact.php:636 src/Module/Contact.php:855
msgid "Status"
msgstr ""
-#: view/theme/frio/theme.php:267 src/Content/Nav.php:160
-#: src/Content/Nav.php:244
+#: view/theme/frio/theme.php:267 src/Content/Nav.php:159
+#: src/Content/Nav.php:242
msgid "Your posts and conversations"
msgstr ""
-#: view/theme/frio/theme.php:268 src/Content/Nav.php:161
-#: src/Model/Profile.php:885 src/Model/Profile.php:921
-#: src/Module/Welcome.php:38 src/Module/Contact.php:639
-#: src/Module/Contact.php:868 mod/profperm.php:117
+#: view/theme/frio/theme.php:268 src/Content/Nav.php:160
+#: src/Model/Profile.php:884 src/Model/Profile.php:920
+#: src/Module/Welcome.php:38 src/Module/Contact.php:638
+#: src/Module/Contact.php:871 mod/profperm.php:116
msgid "Profile"
msgstr ""
-#: view/theme/frio/theme.php:268 src/Content/Nav.php:161
+#: view/theme/frio/theme.php:268 src/Content/Nav.php:160
msgid "Your profile page"
msgstr ""
-#: view/theme/frio/theme.php:269 src/Content/Nav.php:162
-#: src/Model/Profile.php:929 mod/fbrowser.php:43
+#: view/theme/frio/theme.php:269 src/Content/Nav.php:161
+#: src/Model/Profile.php:928 mod/fbrowser.php:42
msgid "Photos"
msgstr ""
-#: view/theme/frio/theme.php:269 src/Content/Nav.php:162
+#: view/theme/frio/theme.php:269 src/Content/Nav.php:161
msgid "Your photos"
msgstr ""
-#: view/theme/frio/theme.php:270 src/Content/Nav.php:163
-#: src/Model/Profile.php:937 src/Model/Profile.php:940
+#: view/theme/frio/theme.php:270 src/Content/Nav.php:162
+#: src/Model/Profile.php:936 src/Model/Profile.php:939
msgid "Videos"
msgstr ""
-#: view/theme/frio/theme.php:270 src/Content/Nav.php:163
+#: view/theme/frio/theme.php:270 src/Content/Nav.php:162
msgid "Your videos"
msgstr ""
#: view/theme/frio/theme.php:271 view/theme/frio/theme.php:275
-#: src/Content/Nav.php:164 src/Content/Nav.php:228 src/Model/Profile.php:949
-#: src/Model/Profile.php:960 mod/events.php:396 mod/cal.php:261
+#: src/Content/Nav.php:163 src/Content/Nav.php:227 src/Model/Profile.php:948
+#: src/Model/Profile.php:959 mod/events.php:393 mod/cal.php:258
msgid "Events"
msgstr ""
-#: view/theme/frio/theme.php:271 src/Content/Nav.php:164
+#: view/theme/frio/theme.php:271 src/Content/Nav.php:163
msgid "Your events"
msgstr ""
-#: view/theme/frio/theme.php:274 src/Content/Nav.php:241
+#: view/theme/frio/theme.php:274 src/Content/Nav.php:240
msgid "Network"
msgstr ""
-#: view/theme/frio/theme.php:274 src/Content/Nav.php:241
+#: view/theme/frio/theme.php:274 src/Content/Nav.php:240
msgid "Conversations from your friends"
msgstr ""
-#: view/theme/frio/theme.php:275 src/Content/Nav.php:228
-#: src/Model/Profile.php:952 src/Model/Profile.php:963
+#: view/theme/frio/theme.php:275 src/Content/Nav.php:227
+#: src/Model/Profile.php:951 src/Model/Profile.php:962
msgid "Events and Calendar"
msgstr ""
-#: view/theme/frio/theme.php:276 src/Content/Nav.php:254 mod/message.php:123
+#: view/theme/frio/theme.php:276 src/Content/Nav.php:252 mod/message.php:121
msgid "Messages"
msgstr ""
-#: view/theme/frio/theme.php:276 src/Content/Nav.php:254
+#: view/theme/frio/theme.php:276 src/Content/Nav.php:252
msgid "Private mail"
msgstr ""
-#: view/theme/frio/theme.php:277 src/Content/Nav.php:263
-#: src/Module/Admin/Addons/Details.php:102
-#: src/Module/Admin/Themes/Details.php:107 src/Module/Welcome.php:33
-#: src/Module/BaseSettingsModule.php:105 mod/settings.php:149
-msgid "Settings"
-msgstr ""
-
-#: view/theme/frio/theme.php:277 src/Content/Nav.php:263
+#: view/theme/frio/theme.php:277 src/Content/Nav.php:261
msgid "Account settings"
msgstr ""
-#: view/theme/frio/theme.php:278 src/Content/Text/HTML.php:922
-#: src/Content/Nav.php:205 src/Content/Nav.php:269 src/Model/Profile.php:992
-#: src/Model/Profile.php:995 src/Module/Contact.php:795
-#: src/Module/Contact.php:880
+#: view/theme/frio/theme.php:278 src/Content/Text/HTML.php:911
+#: src/Content/Nav.php:204 src/Content/Nav.php:267 src/Model/Profile.php:991
+#: src/Model/Profile.php:994 src/Module/Contact.php:798
+#: src/Module/Contact.php:883
msgid "Contacts"
msgstr ""
-#: view/theme/frio/theme.php:278 src/Content/Nav.php:269
+#: view/theme/frio/theme.php:278 src/Content/Nav.php:267
msgid "Manage/edit friends and contacts"
msgstr ""
-#: view/theme/frio/config.php:111
+#: view/theme/frio/config.php:109
msgid "Custom"
msgstr ""
-#: view/theme/frio/config.php:123
+#: view/theme/frio/config.php:121
msgid "Note"
msgstr ""
-#: view/theme/frio/config.php:123
+#: view/theme/frio/config.php:121
msgid "Check image permissions if all users are allowed to see the image"
msgstr ""
-#: view/theme/frio/config.php:129
+#: view/theme/frio/config.php:127
msgid "Select color scheme"
msgstr ""
-#: view/theme/frio/config.php:130
+#: view/theme/frio/config.php:128
msgid "Copy or paste schemestring"
msgstr ""
-#: view/theme/frio/config.php:130
+#: view/theme/frio/config.php:128
msgid ""
"You can copy this string to share your theme with others. Pasting here "
"applies the schemestring"
msgstr ""
-#: view/theme/frio/config.php:131
+#: view/theme/frio/config.php:129
msgid "Navigation bar background color"
msgstr ""
-#: view/theme/frio/config.php:132
+#: view/theme/frio/config.php:130
msgid "Navigation bar icon color "
msgstr ""
-#: view/theme/frio/config.php:133
+#: view/theme/frio/config.php:131
msgid "Link color"
msgstr ""
-#: view/theme/frio/config.php:134
+#: view/theme/frio/config.php:132
msgid "Set the background color"
msgstr ""
-#: view/theme/frio/config.php:135
+#: view/theme/frio/config.php:133
msgid "Content background opacity"
msgstr ""
-#: view/theme/frio/config.php:136
+#: view/theme/frio/config.php:134
msgid "Set the background image"
msgstr ""
-#: view/theme/frio/config.php:137
+#: view/theme/frio/config.php:135
msgid "Background image style"
msgstr ""
-#: view/theme/frio/config.php:139
+#: view/theme/frio/config.php:137
msgid "Enable Compose page"
msgstr ""
-#: view/theme/frio/config.php:139
+#: view/theme/frio/config.php:137
msgid ""
"This replaces the jot modal window for writing new posts with a link to the new Compose page ."
msgstr ""
-#: view/theme/frio/config.php:143
+#: view/theme/frio/config.php:141
msgid "Login page background image"
msgstr ""
-#: view/theme/frio/config.php:147
+#: view/theme/frio/config.php:145
msgid "Login page background color"
msgstr ""
-#: view/theme/frio/config.php:147
+#: view/theme/frio/config.php:145
msgid "Leave background image and color empty for theme defaults"
msgstr ""
-#: view/theme/quattro/config.php:76
+#: view/theme/quattro/config.php:74
msgid "Alignment"
msgstr ""
-#: view/theme/quattro/config.php:76
+#: view/theme/quattro/config.php:74
msgid "Left"
msgstr ""
-#: view/theme/quattro/config.php:76
+#: view/theme/quattro/config.php:74
msgid "Center"
msgstr ""
-#: view/theme/quattro/config.php:77
+#: view/theme/quattro/config.php:75
msgid "Color scheme"
msgstr ""
-#: view/theme/quattro/config.php:78
+#: view/theme/quattro/config.php:76
msgid "Posts font size"
msgstr ""
-#: view/theme/quattro/config.php:79
+#: view/theme/quattro/config.php:77
msgid "Textareas font size"
msgstr ""
-#: src/Database/DBStructure.php:50
+#: src/Database/DBStructure.php:49
msgid "There are no tables on MyISAM."
msgstr ""
-#: src/Database/DBStructure.php:74
+#: src/Database/DBStructure.php:73
#, php-format
msgid ""
"\n"
@@ -1308,313 +4019,309 @@ msgid ""
"%s\n"
msgstr ""
-#: src/Database/DBStructure.php:77
+#: src/Database/DBStructure.php:76
msgid "Errors encountered performing database changes: "
msgstr ""
-#: src/Database/DBStructure.php:266
+#: src/Database/DBStructure.php:265
#, php-format
msgid "%s: Database update"
msgstr ""
-#: src/Database/DBStructure.php:527
+#: src/Database/DBStructure.php:526
#, php-format
msgid "%s: updating %s table."
msgstr ""
-#: src/Object/Post.php:135
+#: src/Object/Post.php:132
msgid "This entry was edited"
msgstr ""
-#: src/Object/Post.php:158
+#: src/Object/Post.php:155
msgid "Private Message"
msgstr ""
-#: src/Object/Post.php:168 src/Object/Post.php:170 mod/settings.php:730
+#: src/Object/Post.php:165 src/Object/Post.php:167 mod/settings.php:724
msgid "Edit"
msgstr ""
-#: src/Object/Post.php:197
+#: src/Object/Post.php:194
msgid "pinned item"
msgstr ""
-#: src/Object/Post.php:202
+#: src/Object/Post.php:199
msgid "Delete locally"
msgstr ""
-#: src/Object/Post.php:205
+#: src/Object/Post.php:202
msgid "Delete globally"
msgstr ""
-#: src/Object/Post.php:205
+#: src/Object/Post.php:202
msgid "Remove locally"
msgstr ""
-#: src/Object/Post.php:219
+#: src/Object/Post.php:216
msgid "save to folder"
msgstr ""
-#: src/Object/Post.php:254
+#: src/Object/Post.php:251
msgid "I will attend"
msgstr ""
-#: src/Object/Post.php:254
+#: src/Object/Post.php:251
msgid "I will not attend"
msgstr ""
-#: src/Object/Post.php:254
+#: src/Object/Post.php:251
msgid "I might attend"
msgstr ""
-#: src/Object/Post.php:282
+#: src/Object/Post.php:279
msgid "ignore thread"
msgstr ""
-#: src/Object/Post.php:283
+#: src/Object/Post.php:280
msgid "unignore thread"
msgstr ""
-#: src/Object/Post.php:284
+#: src/Object/Post.php:281
msgid "toggle ignore status"
msgstr ""
-#: src/Object/Post.php:287 mod/ostatus_subscribe.php:89
+#: src/Object/Post.php:284 mod/ostatus_subscribe.php:85
msgid "ignored"
msgstr ""
-#: src/Object/Post.php:296
+#: src/Object/Post.php:293
msgid "pin"
msgstr ""
-#: src/Object/Post.php:297
+#: src/Object/Post.php:294
msgid "unpin"
msgstr ""
-#: src/Object/Post.php:298
+#: src/Object/Post.php:295
msgid "toggle pin status"
msgstr ""
-#: src/Object/Post.php:301
+#: src/Object/Post.php:298
msgid "pinned"
msgstr ""
-#: src/Object/Post.php:308
+#: src/Object/Post.php:305
msgid "add star"
msgstr ""
-#: src/Object/Post.php:309
+#: src/Object/Post.php:306
msgid "remove star"
msgstr ""
-#: src/Object/Post.php:310
+#: src/Object/Post.php:307
msgid "toggle star status"
msgstr ""
-#: src/Object/Post.php:313
+#: src/Object/Post.php:310
msgid "starred"
msgstr ""
-#: src/Object/Post.php:317
+#: src/Object/Post.php:314
msgid "add tag"
msgstr ""
-#: src/Object/Post.php:328 mod/photos.php:1378
+#: src/Object/Post.php:325 mod/photos.php:1370
msgid "I like this (toggle)"
msgstr ""
-#: src/Object/Post.php:328
+#: src/Object/Post.php:325
msgid "like"
msgstr ""
-#: src/Object/Post.php:329 mod/photos.php:1379
+#: src/Object/Post.php:326 mod/photos.php:1371
msgid "I don't like this (toggle)"
msgstr ""
-#: src/Object/Post.php:329
+#: src/Object/Post.php:326
msgid "dislike"
msgstr ""
-#: src/Object/Post.php:332
+#: src/Object/Post.php:329
msgid "Share this"
msgstr ""
-#: src/Object/Post.php:332
+#: src/Object/Post.php:329
msgid "share"
msgstr ""
-#: src/Object/Post.php:384
+#: src/Object/Post.php:378
#, php-format
msgid "%s (Received %s)"
msgstr ""
-#: src/Object/Post.php:409
+#: src/Object/Post.php:403
msgid "to"
msgstr ""
-#: src/Object/Post.php:410
+#: src/Object/Post.php:404
msgid "via"
msgstr ""
-#: src/Object/Post.php:411
+#: src/Object/Post.php:405
msgid "Wall-to-Wall"
msgstr ""
-#: src/Object/Post.php:412
+#: src/Object/Post.php:406
msgid "via Wall-To-Wall:"
msgstr ""
-#: src/Object/Post.php:447 src/Object/Post.php:910 mod/photos.php:1396
-#: mod/photos.php:1435 mod/photos.php:1500
+#: src/Object/Post.php:441 src/Object/Post.php:903 mod/photos.php:1388
+#: mod/photos.php:1427 mod/photos.php:1491
msgid "Comment"
msgstr ""
-#: src/Object/Post.php:448
+#: src/Object/Post.php:442
#, php-format
msgid "Reply to %s"
msgstr ""
-#: src/Object/Post.php:464
+#: src/Object/Post.php:458
msgid "Notifier task is pending"
msgstr ""
-#: src/Object/Post.php:465
+#: src/Object/Post.php:459
msgid "Delivery to remote servers is pending"
msgstr ""
-#: src/Object/Post.php:466
+#: src/Object/Post.php:460
msgid "Delivery to remote servers is underway"
msgstr ""
-#: src/Object/Post.php:467
+#: src/Object/Post.php:461
msgid "Delivery to remote servers is mostly done"
msgstr ""
-#: src/Object/Post.php:468
+#: src/Object/Post.php:462
msgid "Delivery to remote servers is done"
msgstr ""
-#: src/Object/Post.php:488
+#: src/Object/Post.php:482
#, php-format
msgid "%d comment"
msgid_plural "%d comments"
msgstr[0] ""
msgstr[1] ""
-#: src/Object/Post.php:489
+#: src/Object/Post.php:483
msgid "Show more"
msgstr ""
-#: src/Object/Post.php:490
+#: src/Object/Post.php:484
msgid "Show fewer"
msgstr ""
-#: src/Object/Post.php:501 src/Model/Item.php:3400
+#: src/Object/Post.php:495 src/Model/Item.php:3400
msgid "comment"
msgid_plural "comments"
msgstr[0] ""
msgstr[1] ""
-#: src/Object/Post.php:908 src/Module/Contact.php:1023
-#: src/Module/Item/Compose.php:126 mod/photos.php:1394 mod/photos.php:1433
-#: mod/photos.php:1498
+#: src/Object/Post.php:901 src/Module/Contact.php:1026
+#: src/Module/Item/Compose.php:123 mod/photos.php:1386 mod/photos.php:1425
+#: mod/photos.php:1489
msgid "This is you"
msgstr ""
-#: src/App.php:521
+#: src/App.php:333
msgid "No system theme config value set."
msgstr ""
-#: src/Content/Text/BBCode.php:490
-msgid "view full size"
-msgstr ""
-
-#: src/Content/Text/BBCode.php:927 src/Content/Text/BBCode.php:1603
-#: src/Content/Text/BBCode.php:1604
+#: src/Content/Text/BBCode.php:908 src/Content/Text/BBCode.php:1604
+#: src/Content/Text/BBCode.php:1605
msgid "Image/photo"
msgstr ""
-#: src/Content/Text/BBCode.php:1045
+#: src/Content/Text/BBCode.php:1025
#, php-format
msgid "%2$s %3$s"
msgstr ""
-#: src/Content/Text/BBCode.php:1521 src/Content/Text/HTML.php:963
+#: src/Content/Text/BBCode.php:1522 src/Content/Text/HTML.php:952
msgid "Click to open/close"
msgstr ""
-#: src/Content/Text/BBCode.php:1552
+#: src/Content/Text/BBCode.php:1553
msgid "$1 wrote:"
msgstr ""
-#: src/Content/Text/BBCode.php:1606 src/Content/Text/BBCode.php:1607
+#: src/Content/Text/BBCode.php:1607 src/Content/Text/BBCode.php:1608
msgid "Encrypted content"
msgstr ""
-#: src/Content/Text/BBCode.php:1829
+#: src/Content/Text/BBCode.php:1833
msgid "Invalid source protocol"
msgstr ""
-#: src/Content/Text/BBCode.php:1844
+#: src/Content/Text/BBCode.php:1848
msgid "Invalid link protocol"
msgstr ""
-#: src/Content/Text/HTML.php:811
+#: src/Content/Text/HTML.php:800
msgid "Loading more entries..."
msgstr ""
-#: src/Content/Text/HTML.php:812
+#: src/Content/Text/HTML.php:801
msgid "The end"
msgstr ""
-#: src/Content/Text/HTML.php:905 src/Module/Filer/SaveTag.php:49
+#: src/Content/Text/HTML.php:894 src/Module/Filer/SaveTag.php:48
#: mod/notes.php:46 mod/editpost.php:72
msgid "Save"
msgstr ""
-#: src/Content/Text/HTML.php:905 src/Model/Profile.php:540
-#: src/Module/Contact.php:318
+#: src/Content/Text/HTML.php:894 src/Model/Profile.php:539
+#: src/Module/Contact.php:317
msgid "Follow"
msgstr ""
-#: src/Content/Text/HTML.php:911 src/Content/Nav.php:200
-#: src/Module/Search/Index.php:80
+#: src/Content/Text/HTML.php:900 src/Content/Nav.php:199
+#: src/Module/Search/Index.php:79
msgid "Search"
msgstr ""
-#: src/Content/Text/HTML.php:913 src/Content/Nav.php:79
+#: src/Content/Text/HTML.php:902 src/Content/Nav.php:78
msgid "@name, !forum, #tags, content"
msgstr ""
-#: src/Content/Text/HTML.php:920 src/Content/Nav.php:203
+#: src/Content/Text/HTML.php:909 src/Content/Nav.php:202
msgid "Full Text"
msgstr ""
-#: src/Content/Text/HTML.php:921 src/Content/Nav.php:204
-#: src/Content/Widget/TagCloud.php:54
+#: src/Content/Text/HTML.php:910 src/Content/Nav.php:203
+#: src/Content/Widget/TagCloud.php:53
msgid "Tags"
msgstr ""
-#: src/Content/ContactSelector.php:58
+#: src/Content/ContactSelector.php:57
msgid "Frequently"
msgstr ""
-#: src/Content/ContactSelector.php:59
+#: src/Content/ContactSelector.php:58
msgid "Hourly"
msgstr ""
-#: src/Content/ContactSelector.php:60
+#: src/Content/ContactSelector.php:59
msgid "Twice daily"
msgstr ""
-#: src/Content/ContactSelector.php:61
+#: src/Content/ContactSelector.php:60
msgid "Daily"
msgstr ""
-#: src/Content/ContactSelector.php:62
+#: src/Content/ContactSelector.php:61
msgid "Weekly"
msgstr ""
-#: src/Content/ContactSelector.php:63
+#: src/Content/ContactSelector.php:62
msgid "Monthly"
msgstr ""
@@ -1630,13 +4337,7 @@ msgstr ""
msgid "RSS/Atom"
msgstr ""
-#: src/Content/ContactSelector.php:119 src/Module/Admin/Users.php:272
-#: src/Module/Admin/Users.php:283 src/Module/Admin/Users.php:297
-#: src/Module/Admin/Users.php:315
-msgid "Email"
-msgstr ""
-
-#: src/Content/ContactSelector.php:120 mod/settings.php:800
+#: src/Content/ContactSelector.php:120 mod/settings.php:794
msgid "Diaspora"
msgstr ""
@@ -1668,10 +4369,6 @@ msgstr ""
msgid "Twitter"
msgstr ""
-#: src/Content/ContactSelector.php:128
-msgid "Discourse"
-msgstr ""
-
#: src/Content/ContactSelector.php:129
msgid "Diaspora Connector"
msgstr ""
@@ -1688,635 +4385,629 @@ msgstr ""
msgid "pnut"
msgstr ""
-#: src/Content/ContactSelector.php:231 src/Content/ContactSelector.php:271
-#: src/Content/ContactSelector.php:309
+#: src/Content/ContactSelector.php:166
+#, php-format
+msgid "%s (via %s)"
+msgstr ""
+
+#: src/Content/ContactSelector.php:235 src/Content/ContactSelector.php:275
+#: src/Content/ContactSelector.php:313
msgid "No answer"
msgstr ""
-#: src/Content/ContactSelector.php:232
+#: src/Content/ContactSelector.php:236
msgid "Male"
msgstr ""
-#: src/Content/ContactSelector.php:233
+#: src/Content/ContactSelector.php:237
msgid "Female"
msgstr ""
-#: src/Content/ContactSelector.php:234
+#: src/Content/ContactSelector.php:238
msgid "Currently Male"
msgstr ""
-#: src/Content/ContactSelector.php:235
+#: src/Content/ContactSelector.php:239
msgid "Currently Female"
msgstr ""
-#: src/Content/ContactSelector.php:236
+#: src/Content/ContactSelector.php:240
msgid "Mostly Male"
msgstr ""
-#: src/Content/ContactSelector.php:237
+#: src/Content/ContactSelector.php:241
msgid "Mostly Female"
msgstr ""
-#: src/Content/ContactSelector.php:238
+#: src/Content/ContactSelector.php:242
msgid "Transgender"
msgstr ""
-#: src/Content/ContactSelector.php:239
+#: src/Content/ContactSelector.php:243
msgid "Intersex"
msgstr ""
-#: src/Content/ContactSelector.php:240
+#: src/Content/ContactSelector.php:244
msgid "Transsexual"
msgstr ""
-#: src/Content/ContactSelector.php:241
+#: src/Content/ContactSelector.php:245
msgid "Hermaphrodite"
msgstr ""
-#: src/Content/ContactSelector.php:242
+#: src/Content/ContactSelector.php:246
msgid "Neuter"
msgstr ""
-#: src/Content/ContactSelector.php:243
+#: src/Content/ContactSelector.php:247
msgid "Non-specific"
msgstr ""
-#: src/Content/ContactSelector.php:244
+#: src/Content/ContactSelector.php:248 src/Module/Admin/Federation.php:34
msgid "Other"
msgstr ""
-#: src/Content/ContactSelector.php:272
+#: src/Content/ContactSelector.php:276
msgid "Males"
msgstr ""
-#: src/Content/ContactSelector.php:273
+#: src/Content/ContactSelector.php:277
msgid "Females"
msgstr ""
-#: src/Content/ContactSelector.php:274
+#: src/Content/ContactSelector.php:278
msgid "Gay"
msgstr ""
-#: src/Content/ContactSelector.php:275
+#: src/Content/ContactSelector.php:279
msgid "Lesbian"
msgstr ""
-#: src/Content/ContactSelector.php:276
+#: src/Content/ContactSelector.php:280
msgid "No Preference"
msgstr ""
-#: src/Content/ContactSelector.php:277
+#: src/Content/ContactSelector.php:281
msgid "Bisexual"
msgstr ""
-#: src/Content/ContactSelector.php:278
+#: src/Content/ContactSelector.php:282
msgid "Autosexual"
msgstr ""
-#: src/Content/ContactSelector.php:279
+#: src/Content/ContactSelector.php:283
msgid "Abstinent"
msgstr ""
-#: src/Content/ContactSelector.php:280
+#: src/Content/ContactSelector.php:284
msgid "Virgin"
msgstr ""
-#: src/Content/ContactSelector.php:281
+#: src/Content/ContactSelector.php:285
msgid "Deviant"
msgstr ""
-#: src/Content/ContactSelector.php:282
+#: src/Content/ContactSelector.php:286
msgid "Fetish"
msgstr ""
-#: src/Content/ContactSelector.php:283
+#: src/Content/ContactSelector.php:287
msgid "Oodles"
msgstr ""
-#: src/Content/ContactSelector.php:284
+#: src/Content/ContactSelector.php:288
msgid "Nonsexual"
msgstr ""
-#: src/Content/ContactSelector.php:310
+#: src/Content/ContactSelector.php:314
msgid "Single"
msgstr ""
-#: src/Content/ContactSelector.php:311
+#: src/Content/ContactSelector.php:315
msgid "Lonely"
msgstr ""
-#: src/Content/ContactSelector.php:312
+#: src/Content/ContactSelector.php:316
msgid "In a relation"
msgstr ""
-#: src/Content/ContactSelector.php:313
+#: src/Content/ContactSelector.php:317
msgid "Has crush"
msgstr ""
-#: src/Content/ContactSelector.php:314
+#: src/Content/ContactSelector.php:318
msgid "Infatuated"
msgstr ""
-#: src/Content/ContactSelector.php:315
+#: src/Content/ContactSelector.php:319
msgid "Dating"
msgstr ""
-#: src/Content/ContactSelector.php:316
+#: src/Content/ContactSelector.php:320
msgid "Unfaithful"
msgstr ""
-#: src/Content/ContactSelector.php:317
+#: src/Content/ContactSelector.php:321
msgid "Sex Addict"
msgstr ""
-#: src/Content/ContactSelector.php:318 src/Model/User.php:807
+#: src/Content/ContactSelector.php:322 src/Model/User.php:805
msgid "Friends"
msgstr ""
-#: src/Content/ContactSelector.php:319
+#: src/Content/ContactSelector.php:323
msgid "Friends/Benefits"
msgstr ""
-#: src/Content/ContactSelector.php:320
+#: src/Content/ContactSelector.php:324
msgid "Casual"
msgstr ""
-#: src/Content/ContactSelector.php:321
+#: src/Content/ContactSelector.php:325
msgid "Engaged"
msgstr ""
-#: src/Content/ContactSelector.php:322
+#: src/Content/ContactSelector.php:326
msgid "Married"
msgstr ""
-#: src/Content/ContactSelector.php:323
+#: src/Content/ContactSelector.php:327
msgid "Imaginarily married"
msgstr ""
-#: src/Content/ContactSelector.php:324
+#: src/Content/ContactSelector.php:328
msgid "Partners"
msgstr ""
-#: src/Content/ContactSelector.php:325
+#: src/Content/ContactSelector.php:329
msgid "Cohabiting"
msgstr ""
-#: src/Content/ContactSelector.php:326
+#: src/Content/ContactSelector.php:330
msgid "Common law"
msgstr ""
-#: src/Content/ContactSelector.php:327
+#: src/Content/ContactSelector.php:331
msgid "Happy"
msgstr ""
-#: src/Content/ContactSelector.php:328
+#: src/Content/ContactSelector.php:332
msgid "Not looking"
msgstr ""
-#: src/Content/ContactSelector.php:329
+#: src/Content/ContactSelector.php:333
msgid "Swinger"
msgstr ""
-#: src/Content/ContactSelector.php:330
+#: src/Content/ContactSelector.php:334
msgid "Betrayed"
msgstr ""
-#: src/Content/ContactSelector.php:331
+#: src/Content/ContactSelector.php:335
msgid "Separated"
msgstr ""
-#: src/Content/ContactSelector.php:332
+#: src/Content/ContactSelector.php:336
msgid "Unstable"
msgstr ""
-#: src/Content/ContactSelector.php:333
+#: src/Content/ContactSelector.php:337
msgid "Divorced"
msgstr ""
-#: src/Content/ContactSelector.php:334
+#: src/Content/ContactSelector.php:338
msgid "Imaginarily divorced"
msgstr ""
-#: src/Content/ContactSelector.php:335
+#: src/Content/ContactSelector.php:339
msgid "Widowed"
msgstr ""
-#: src/Content/ContactSelector.php:336
+#: src/Content/ContactSelector.php:340
msgid "Uncertain"
msgstr ""
-#: src/Content/ContactSelector.php:337
+#: src/Content/ContactSelector.php:341
msgid "It's complicated"
msgstr ""
-#: src/Content/ContactSelector.php:338
+#: src/Content/ContactSelector.php:342
msgid "Don't care"
msgstr ""
-#: src/Content/ContactSelector.php:339
+#: src/Content/ContactSelector.php:343
msgid "Ask me"
msgstr ""
-#: src/Content/Widget.php:39
+#: src/Content/Widget.php:36
msgid "Add New Contact"
msgstr ""
-#: src/Content/Widget.php:40
+#: src/Content/Widget.php:37
msgid "Enter address or web location"
msgstr ""
-#: src/Content/Widget.php:41
+#: src/Content/Widget.php:38
msgid "Example: bob@example.com, http://example.com/barbara"
msgstr ""
-#: src/Content/Widget.php:43 src/Module/BaseSearchModule.php:135
-#: src/Module/AllFriends.php:91 mod/match.php:102 mod/suggest.php:106
+#: src/Content/Widget.php:40 src/Module/BaseSearchModule.php:130
+#: src/Module/AllFriends.php:91 mod/match.php:101 mod/suggest.php:105
msgid "Connect"
msgstr ""
-#: src/Content/Widget.php:59
+#: src/Content/Widget.php:55
#, php-format
msgid "%d invitation available"
msgid_plural "%d invitations available"
msgstr[0] ""
msgstr[1] ""
-#: src/Content/Widget.php:197 src/Core/ACL.php:283
-#: src/Module/Profile/Contacts.php:126 src/Module/Contact.php:792
-#: mod/lockview.php:78 mod/lockview.php:113
+#: src/Content/Widget.php:193 src/Core/ACL.php:269
+#: src/Module/Profile/Contacts.php:126 src/Module/Contact.php:795
+#: mod/lockview.php:75 mod/lockview.php:110
msgid "Followers"
msgstr ""
-#: src/Content/Widget.php:198 src/Module/Profile/Contacts.php:127
-#: src/Module/Contact.php:793
+#: src/Content/Widget.php:194 src/Module/Profile/Contacts.php:127
+#: src/Module/Contact.php:796
msgid "Following"
msgstr ""
-#: src/Content/Widget.php:199 src/Module/Profile/Contacts.php:128
-#: src/Module/Contact.php:794
+#: src/Content/Widget.php:195 src/Module/Profile/Contacts.php:128
+#: src/Module/Contact.php:797
msgid "Mutual friends"
msgstr ""
-#: src/Content/Widget.php:204
+#: src/Content/Widget.php:200
msgid "Relationships"
msgstr ""
-#: src/Content/Widget.php:206 src/Module/Group.php:287
-#: src/Module/Contact.php:681
+#: src/Content/Widget.php:202 src/Module/Group.php:280
+#: src/Module/Contact.php:684
msgid "All Contacts"
msgstr ""
-#: src/Content/Widget.php:249
+#: src/Content/Widget.php:245
msgid "Protocols"
msgstr ""
-#: src/Content/Widget.php:251
+#: src/Content/Widget.php:247
msgid "All Protocols"
msgstr ""
-#: src/Content/Widget.php:288
+#: src/Content/Widget.php:284
msgid "Saved Folders"
msgstr ""
-#: src/Content/Widget.php:290 src/Content/Widget.php:329
+#: src/Content/Widget.php:286 src/Content/Widget.php:325
msgid "Everything"
msgstr ""
-#: src/Content/Widget.php:327
+#: src/Content/Widget.php:323
msgid "Categories"
msgstr ""
-#: src/Content/Widget.php:404
+#: src/Content/Widget.php:400
#, php-format
msgid "%d contact in common"
msgid_plural "%d contacts in common"
msgstr[0] ""
msgstr[1] ""
-#: src/Content/Widget.php:503 src/Content/Feature.php:100
+#: src/Content/Widget.php:499 src/Content/Feature.php:99
msgid "Archives"
msgstr ""
-#: src/Content/OEmbed.php:254
+#: src/Content/OEmbed.php:253
msgid "Embedding disabled"
msgstr ""
-#: src/Content/OEmbed.php:377
+#: src/Content/OEmbed.php:376
msgid "Embedded content"
msgstr ""
-#: src/Content/Feature.php:82
+#: src/Content/Feature.php:81
msgid "General Features"
msgstr ""
-#: src/Content/Feature.php:84
+#: src/Content/Feature.php:83
msgid "Multiple Profiles"
msgstr ""
-#: src/Content/Feature.php:84
+#: src/Content/Feature.php:83
msgid "Ability to create multiple profiles"
msgstr ""
-#: src/Content/Feature.php:85
+#: src/Content/Feature.php:84
msgid "Photo Location"
msgstr ""
-#: src/Content/Feature.php:85
+#: src/Content/Feature.php:84
msgid ""
"Photo metadata is normally stripped. This extracts the location (if present) "
"prior to stripping metadata and links it to a map."
msgstr ""
-#: src/Content/Feature.php:86
+#: src/Content/Feature.php:85
msgid "Export Public Calendar"
msgstr ""
-#: src/Content/Feature.php:86
+#: src/Content/Feature.php:85
msgid "Ability for visitors to download the public calendar"
msgstr ""
-#: src/Content/Feature.php:87
+#: src/Content/Feature.php:86
msgid "Trending Tags"
msgstr ""
-#: src/Content/Feature.php:87
+#: src/Content/Feature.php:86
msgid ""
"Show a community page widget with a list of the most popular tags in recent "
"public posts."
msgstr ""
-#: src/Content/Feature.php:92
+#: src/Content/Feature.php:91
msgid "Post Composition Features"
msgstr ""
-#: src/Content/Feature.php:93
+#: src/Content/Feature.php:92
msgid "Auto-mention Forums"
msgstr ""
-#: src/Content/Feature.php:93
+#: src/Content/Feature.php:92
msgid ""
"Add/remove mention when a forum page is selected/deselected in ACL window."
msgstr ""
-#: src/Content/Feature.php:94
+#: src/Content/Feature.php:93
msgid "Explicit Mentions"
msgstr ""
-#: src/Content/Feature.php:94
+#: src/Content/Feature.php:93
msgid ""
"Add explicit mentions to comment box for manual control over who gets "
"mentioned in replies."
msgstr ""
-#: src/Content/Feature.php:99
+#: src/Content/Feature.php:98
msgid "Network Sidebar"
msgstr ""
-#: src/Content/Feature.php:100
+#: src/Content/Feature.php:99
msgid "Ability to select posts by date ranges"
msgstr ""
-#: src/Content/Feature.php:101
+#: src/Content/Feature.php:100
msgid "Protocol Filter"
msgstr ""
-#: src/Content/Feature.php:101
+#: src/Content/Feature.php:100
msgid "Enable widget to display Network posts only from selected protocols"
msgstr ""
-#: src/Content/Feature.php:106
+#: src/Content/Feature.php:105
msgid "Network Tabs"
msgstr ""
-#: src/Content/Feature.php:107
+#: src/Content/Feature.php:106
msgid "Network New Tab"
msgstr ""
-#: src/Content/Feature.php:107
+#: src/Content/Feature.php:106
msgid "Enable tab to display only new Network posts (from the last 12 hours)"
msgstr ""
-#: src/Content/Feature.php:108
+#: src/Content/Feature.php:107
msgid "Network Shared Links Tab"
msgstr ""
-#: src/Content/Feature.php:108
+#: src/Content/Feature.php:107
msgid "Enable tab to display only Network posts with links in them"
msgstr ""
-#: src/Content/Feature.php:113
+#: src/Content/Feature.php:112
msgid "Post/Comment Tools"
msgstr ""
-#: src/Content/Feature.php:114
+#: src/Content/Feature.php:113
msgid "Post Categories"
msgstr ""
-#: src/Content/Feature.php:114
+#: src/Content/Feature.php:113
msgid "Add categories to your posts"
msgstr ""
-#: src/Content/Feature.php:119
+#: src/Content/Feature.php:118
msgid "Advanced Profile Settings"
msgstr ""
-#: src/Content/Feature.php:120
+#: src/Content/Feature.php:119
msgid "List Forums"
msgstr ""
-#: src/Content/Feature.php:120
+#: src/Content/Feature.php:119
msgid "Show visitors public community forums at the Advanced Profile Page"
msgstr ""
-#: src/Content/Feature.php:121
+#: src/Content/Feature.php:120
msgid "Tag Cloud"
msgstr ""
-#: src/Content/Feature.php:121
+#: src/Content/Feature.php:120
msgid "Provide a personal tag cloud on your profile page"
msgstr ""
-#: src/Content/Feature.php:122
+#: src/Content/Feature.php:121
msgid "Display Membership Date"
msgstr ""
-#: src/Content/Feature.php:122
+#: src/Content/Feature.php:121
msgid "Display membership date in profile"
msgstr ""
-#: src/Content/Nav.php:74
+#: src/Content/Nav.php:73
msgid "Nothing new here"
msgstr ""
-#: src/Content/Nav.php:78
+#: src/Content/Nav.php:77
msgid "Clear notifications"
msgstr ""
-#: src/Content/Nav.php:153 src/Module/Login.php:136
+#: src/Content/Nav.php:152 src/Module/Security/Login.php:129
msgid "Logout"
msgstr ""
-#: src/Content/Nav.php:153
+#: src/Content/Nav.php:152
msgid "End this session"
msgstr ""
-#: src/Content/Nav.php:155 src/Module/Login.php:137
-#: src/Module/Bookmarklet.php:25
+#: src/Content/Nav.php:154 src/Module/Security/Login.php:130
+#: src/Module/Bookmarklet.php:26
msgid "Login"
msgstr ""
-#: src/Content/Nav.php:155
+#: src/Content/Nav.php:154
msgid "Sign in"
msgstr ""
-#: src/Content/Nav.php:165
+#: src/Content/Nav.php:164
msgid "Personal notes"
msgstr ""
-#: src/Content/Nav.php:165
+#: src/Content/Nav.php:164
msgid "Your personal notes"
msgstr ""
-#: src/Content/Nav.php:182 src/Content/Nav.php:244
+#: src/Content/Nav.php:181 src/Content/Nav.php:242
msgid "Home"
msgstr ""
-#: src/Content/Nav.php:182
+#: src/Content/Nav.php:181
msgid "Home Page"
msgstr ""
-#: src/Content/Nav.php:186 src/Module/Login.php:97 src/Module/Register.php:130
+#: src/Content/Nav.php:185 src/Module/Security/Login.php:90
+#: src/Module/Register.php:137
msgid "Register"
msgstr ""
-#: src/Content/Nav.php:186
+#: src/Content/Nav.php:185
msgid "Create an account"
msgstr ""
-#: src/Content/Nav.php:192
+#: src/Content/Nav.php:191
msgid "Help and documentation"
msgstr ""
-#: src/Content/Nav.php:196
+#: src/Content/Nav.php:195
msgid "Apps"
msgstr ""
-#: src/Content/Nav.php:196
+#: src/Content/Nav.php:195
msgid "Addon applications, utilities, games"
msgstr ""
-#: src/Content/Nav.php:200
+#: src/Content/Nav.php:199
msgid "Search site content"
msgstr ""
-#: src/Content/Nav.php:224
+#: src/Content/Nav.php:223
msgid "Community"
msgstr ""
-#: src/Content/Nav.php:224
+#: src/Content/Nav.php:223
msgid "Conversations on this and other servers"
msgstr ""
-#: src/Content/Nav.php:231
+#: src/Content/Nav.php:230
msgid "Directory"
msgstr ""
-#: src/Content/Nav.php:231
+#: src/Content/Nav.php:230
msgid "People directory"
msgstr ""
-#: src/Content/Nav.php:233 src/Module/BaseAdminModule.php:75
-msgid "Information"
-msgstr ""
-
-#: src/Content/Nav.php:233
+#: src/Content/Nav.php:232
msgid "Information about this friendica instance"
msgstr ""
-#: src/Content/Nav.php:236 src/Module/Tos.php:73
-#: src/Module/BaseAdminModule.php:85 src/Module/Admin/Tos.php:43
-#: src/Module/Register.php:138
+#: src/Content/Nav.php:235 src/Module/Tos.php:72
+#: src/Module/BaseAdminModule.php:83 src/Module/Admin/Tos.php:43
+#: src/Module/Register.php:145
msgid "Terms of Service"
msgstr ""
-#: src/Content/Nav.php:236
+#: src/Content/Nav.php:235
msgid "Terms of Service of this Friendica instance"
msgstr ""
-#: src/Content/Nav.php:242
-msgid "Network Reset"
-msgstr ""
-
-#: src/Content/Nav.php:242
-msgid "Load Network page with no filters"
-msgstr ""
-
-#: src/Content/Nav.php:248
+#: src/Content/Nav.php:246
msgid "Introductions"
msgstr ""
-#: src/Content/Nav.php:248
+#: src/Content/Nav.php:246
msgid "Friend Requests"
msgstr ""
-#: src/Content/Nav.php:249 mod/notifications.php:100
+#: src/Content/Nav.php:247 mod/notifications.php:72
msgid "Notifications"
msgstr ""
-#: src/Content/Nav.php:250
+#: src/Content/Nav.php:248
msgid "See all notifications"
msgstr ""
-#: src/Content/Nav.php:251 mod/settings.php:873
+#: src/Content/Nav.php:249 mod/settings.php:867
msgid "Mark as seen"
msgstr ""
-#: src/Content/Nav.php:251
+#: src/Content/Nav.php:249
msgid "Mark all system notifications seen"
msgstr ""
-#: src/Content/Nav.php:255
+#: src/Content/Nav.php:253
msgid "Inbox"
msgstr ""
-#: src/Content/Nav.php:256
+#: src/Content/Nav.php:254
msgid "Outbox"
msgstr ""
-#: src/Content/Nav.php:257 mod/message.php:33 mod/message.php:116
+#: src/Content/Nav.php:255 mod/message.php:31 mod/message.php:114
msgid "New Message"
msgstr ""
-#: src/Content/Nav.php:260
+#: src/Content/Nav.php:258
msgid "Delegation"
msgstr ""
-#: src/Content/Nav.php:260
+#: src/Content/Nav.php:258
msgid "Manage other pages"
msgstr ""
-#: src/Content/Nav.php:266 src/Model/Profile.php:398
-#: src/Module/BaseSettingsModule.php:38 mod/settings.php:82
+#: src/Content/Nav.php:264 src/Model/Profile.php:397
+#: src/Module/BaseSettingsModule.php:38 mod/settings.php:77
msgid "Profiles"
msgstr ""
-#: src/Content/Nav.php:266
+#: src/Content/Nav.php:264
msgid "Manage/Edit Profiles"
msgstr ""
-#: src/Content/Nav.php:274 src/Module/BaseAdminModule.php:114
+#: src/Content/Nav.php:272 src/Module/BaseAdminModule.php:112
msgid "Admin"
msgstr ""
-#: src/Content/Nav.php:274
+#: src/Content/Nav.php:272
msgid "Site setup and configuration"
msgstr ""
-#: src/Content/Nav.php:277
+#: src/Content/Nav.php:275
msgid "Navigation"
msgstr ""
-#: src/Content/Nav.php:277
+#: src/Content/Nav.php:275
msgid "Site map"
msgstr ""
@@ -2340,29 +5031,29 @@ msgstr ""
msgid "Export calendar as csv"
msgstr ""
-#: src/Content/Widget/TrendingTags.php:34
+#: src/Content/Widget/TrendingTags.php:32
#, php-format
msgid "Trending Tags (last %d hour)"
msgid_plural "Trending Tags (last %d hours)"
msgstr[0] ""
msgstr[1] ""
-#: src/Content/Widget/TrendingTags.php:35
+#: src/Content/Widget/TrendingTags.php:33
msgid "More Trending Tags"
msgstr ""
-#: src/Content/Widget/ContactBlock.php:58
+#: src/Content/Widget/ContactBlock.php:57
msgid "No contacts"
msgstr ""
-#: src/Content/Widget/ContactBlock.php:90
+#: src/Content/Widget/ContactBlock.php:89
#, php-format
msgid "%d Contact"
msgid_plural "%d Contacts"
msgstr[0] ""
msgstr[1] ""
-#: src/Content/Widget/ContactBlock.php:109
+#: src/Content/Widget/ContactBlock.php:108
msgid "View Contacts"
msgstr ""
@@ -2374,7 +5065,7 @@ msgstr ""
msgid "older"
msgstr ""
-#: src/Content/Pager.php:198 mod/match.php:115
+#: src/Content/Pager.php:198 mod/match.php:114
msgid "first"
msgstr ""
@@ -2382,7 +5073,7 @@ msgstr ""
msgid "prev"
msgstr ""
-#: src/Content/Pager.php:258 mod/match.php:120
+#: src/Content/Pager.php:258 mod/match.php:119
msgid "next"
msgstr ""
@@ -2390,624 +5081,615 @@ msgstr ""
msgid "last"
msgstr ""
-#: src/Model/Profile.php:213 src/Model/Profile.php:424
-#: src/Model/Profile.php:881
+#: src/Model/Profile.php:210 src/Model/Profile.php:423
+#: src/Model/Profile.php:880
msgid "Edit profile"
msgstr ""
-#: src/Model/Profile.php:398
+#: src/Model/Profile.php:397
msgid "Manage/edit profiles"
msgstr ""
-#: src/Model/Profile.php:405 src/Model/Profile.php:426 mod/profiles.php:669
+#: src/Model/Profile.php:404 src/Model/Profile.php:425 mod/profiles.php:667
msgid "Change profile photo"
msgstr ""
-#: src/Model/Profile.php:406 mod/profiles.php:670
+#: src/Model/Profile.php:405 mod/profiles.php:668
msgid "Create New Profile"
msgstr ""
-#: src/Model/Profile.php:415 mod/profiles.php:659
+#: src/Model/Profile.php:414 mod/profiles.php:657
msgid "Profile Image"
msgstr ""
-#: src/Model/Profile.php:418 mod/profiles.php:661
+#: src/Model/Profile.php:417 mod/profiles.php:659
msgid "visible to everybody"
msgstr ""
-#: src/Model/Profile.php:419 mod/profiles.php:567 mod/profiles.php:662
+#: src/Model/Profile.php:418 mod/profiles.php:565 mod/profiles.php:660
msgid "Edit visibility"
msgstr ""
-#: src/Model/Profile.php:443 src/Model/Event.php:69 src/Model/Event.php:96
-#: src/Model/Event.php:438 src/Model/Event.php:934 src/Module/Directory.php:135
-#: src/Module/Contact.php:628 mod/events.php:546 mod/notifications.php:276
+#: src/Model/Profile.php:442 src/Model/Event.php:67 src/Model/Event.php:94
+#: src/Model/Event.php:436 src/Model/Event.php:932 src/Module/Directory.php:135
+#: src/Module/Contact.php:627 mod/events.php:539 mod/notifications.php:248
msgid "Location:"
msgstr ""
-#: src/Model/Profile.php:446 src/Model/Profile.php:767
-#: src/Module/Directory.php:140 mod/notifications.php:282
+#: src/Model/Profile.php:445 src/Model/Profile.php:766
+#: src/Module/Directory.php:140 mod/notifications.php:254
msgid "Gender:"
msgstr ""
-#: src/Model/Profile.php:447 src/Model/Profile.php:791
+#: src/Model/Profile.php:446 src/Model/Profile.php:790
#: src/Module/Directory.php:141
msgid "Status:"
msgstr ""
-#: src/Model/Profile.php:448 src/Model/Profile.php:808
+#: src/Model/Profile.php:447 src/Model/Profile.php:807
#: src/Module/Directory.php:142
msgid "Homepage:"
msgstr ""
-#: src/Model/Profile.php:449 src/Model/Profile.php:828
-#: src/Module/Directory.php:143 src/Module/Contact.php:632
-#: mod/notifications.php:278
+#: src/Model/Profile.php:448 src/Model/Profile.php:827
+#: src/Module/Directory.php:143 src/Module/Contact.php:631
+#: mod/notifications.php:250
msgid "About:"
msgstr ""
-#: src/Model/Profile.php:450 src/Module/Contact.php:630
+#: src/Model/Profile.php:449 src/Module/Contact.php:629
msgid "XMPP:"
msgstr ""
-#: src/Model/Profile.php:542 src/Module/Contact.php:320
+#: src/Model/Profile.php:541 src/Module/Contact.php:319
msgid "Unfollow"
msgstr ""
-#: src/Model/Profile.php:544
+#: src/Model/Profile.php:543
msgid "Atom feed"
msgstr ""
-#: src/Model/Profile.php:554 src/Module/Contact.php:316
-#: mod/notifications.php:289
+#: src/Model/Profile.php:553 src/Module/Contact.php:315
+#: mod/notifications.php:261
msgid "Network:"
msgstr ""
-#: src/Model/Profile.php:584 src/Model/Profile.php:681
+#: src/Model/Profile.php:583 src/Model/Profile.php:680
msgid "g A l F d"
msgstr ""
-#: src/Model/Profile.php:585
+#: src/Model/Profile.php:584
msgid "F d"
msgstr ""
-#: src/Model/Profile.php:647 src/Model/Profile.php:732
+#: src/Model/Profile.php:646 src/Model/Profile.php:731
msgid "[today]"
msgstr ""
-#: src/Model/Profile.php:657
+#: src/Model/Profile.php:656
msgid "Birthday Reminders"
msgstr ""
-#: src/Model/Profile.php:658
+#: src/Model/Profile.php:657
msgid "Birthdays this week:"
msgstr ""
-#: src/Model/Profile.php:719
+#: src/Model/Profile.php:718
msgid "[No description]"
msgstr ""
-#: src/Model/Profile.php:745
+#: src/Model/Profile.php:744
msgid "Event Reminders"
msgstr ""
-#: src/Model/Profile.php:746
+#: src/Model/Profile.php:745
msgid "Upcoming events the next 7 days:"
msgstr ""
-#: src/Model/Profile.php:760 mod/settings.php:1195
+#: src/Model/Profile.php:759 mod/settings.php:1189
msgid "Full Name:"
msgstr ""
-#: src/Model/Profile.php:763
-msgid "Member since:"
-msgstr ""
-
-#: src/Model/Profile.php:771
+#: src/Model/Profile.php:770
msgid "j F, Y"
msgstr ""
-#: src/Model/Profile.php:772
+#: src/Model/Profile.php:771
msgid "j F"
msgstr ""
-#: src/Model/Profile.php:780 src/Util/Temporal.php:146
+#: src/Model/Profile.php:779 src/Util/Temporal.php:145
msgid "Birthday:"
msgstr ""
-#: src/Model/Profile.php:787
+#: src/Model/Profile.php:786
msgid "Age:"
msgstr ""
-#: src/Model/Profile.php:800
+#: src/Model/Profile.php:799
#, php-format
msgid "for %1$d %2$s"
msgstr ""
-#: src/Model/Profile.php:804 mod/profiles.php:586
+#: src/Model/Profile.php:803 mod/profiles.php:584
msgid "Sexual Preference:"
msgstr ""
-#: src/Model/Profile.php:812 mod/profiles.php:613
+#: src/Model/Profile.php:811 mod/profiles.php:611
msgid "Hometown:"
msgstr ""
-#: src/Model/Profile.php:816 src/Module/Contact.php:634
-#: mod/notifications.php:280 mod/follow.php:183
+#: src/Model/Profile.php:815 src/Module/Contact.php:633
+#: mod/notifications.php:252 mod/follow.php:182
msgid "Tags:"
msgstr ""
-#: src/Model/Profile.php:820 mod/profiles.php:614
+#: src/Model/Profile.php:819 mod/profiles.php:612
msgid "Political Views:"
msgstr ""
-#: src/Model/Profile.php:824
+#: src/Model/Profile.php:823
msgid "Religion:"
msgstr ""
-#: src/Model/Profile.php:832
+#: src/Model/Profile.php:831
msgid "Hobbies/Interests:"
msgstr ""
-#: src/Model/Profile.php:836 mod/profiles.php:618
+#: src/Model/Profile.php:835 mod/profiles.php:616
msgid "Likes:"
msgstr ""
-#: src/Model/Profile.php:840 mod/profiles.php:619
+#: src/Model/Profile.php:839 mod/profiles.php:617
msgid "Dislikes:"
msgstr ""
-#: src/Model/Profile.php:844
+#: src/Model/Profile.php:843
msgid "Contact information and Social Networks:"
msgstr ""
-#: src/Model/Profile.php:848
+#: src/Model/Profile.php:847
msgid "Musical interests:"
msgstr ""
-#: src/Model/Profile.php:852
+#: src/Model/Profile.php:851
msgid "Books, literature:"
msgstr ""
-#: src/Model/Profile.php:856
+#: src/Model/Profile.php:855
msgid "Television:"
msgstr ""
-#: src/Model/Profile.php:860
+#: src/Model/Profile.php:859
msgid "Film/dance/culture/entertainment:"
msgstr ""
-#: src/Model/Profile.php:864
+#: src/Model/Profile.php:863
msgid "Love/Romance:"
msgstr ""
-#: src/Model/Profile.php:868
+#: src/Model/Profile.php:867
msgid "Work/employment:"
msgstr ""
-#: src/Model/Profile.php:872
+#: src/Model/Profile.php:871
msgid "School/education:"
msgstr ""
-#: src/Model/Profile.php:877
+#: src/Model/Profile.php:876
msgid "Forums:"
msgstr ""
-#: src/Model/Profile.php:886 mod/events.php:559
+#: src/Model/Profile.php:885 mod/events.php:552
msgid "Basic"
msgstr ""
-#: src/Model/Profile.php:887 src/Module/Admin/Site.php:573
-#: src/Module/Contact.php:901 mod/events.php:560
+#: src/Model/Profile.php:886 src/Module/Admin/Site.php:562
+#: src/Module/Contact.php:904 mod/events.php:553
msgid "Advanced"
msgstr ""
-#: src/Model/Profile.php:916 src/Module/Contact.php:863 mod/follow.php:195
-#: mod/unfollow.php:147
+#: src/Model/Profile.php:915 src/Module/Contact.php:866 mod/follow.php:194
+#: mod/unfollow.php:146
msgid "Status Messages and Posts"
msgstr ""
-#: src/Model/Profile.php:924 src/Module/Contact.php:871
+#: src/Model/Profile.php:923 src/Module/Contact.php:874
msgid "Profile Details"
msgstr ""
-#: src/Model/Profile.php:932 mod/photos.php:112
+#: src/Model/Profile.php:931 mod/photos.php:110
msgid "Photo Albums"
msgstr ""
-#: src/Model/Profile.php:971 mod/notes.php:34
+#: src/Model/Profile.php:970 mod/notes.php:34
msgid "Personal Notes"
msgstr ""
-#: src/Model/Profile.php:974
+#: src/Model/Profile.php:973
msgid "Only You Can See This"
msgstr ""
-#: src/Model/Profile.php:982 src/Model/Profile.php:985
-msgid "Tips for New Members"
-msgstr ""
-
-#: src/Model/Profile.php:1180
+#: src/Model/Profile.php:1177
#, php-format
msgid "OpenWebAuth: %1$s welcomes %2$s"
msgstr ""
-#: src/Model/Event.php:35 src/Model/Event.php:848
+#: src/Model/Event.php:33 src/Model/Event.php:846
#: src/Module/Debug/Localtime.php:17
msgid "l F d, Y \\@ g:i A"
msgstr ""
-#: src/Model/Event.php:62 src/Model/Event.php:79 src/Model/Event.php:436
-#: src/Model/Event.php:916
+#: src/Model/Event.php:60 src/Model/Event.php:77 src/Model/Event.php:434
+#: src/Model/Event.php:914
msgid "Starts:"
msgstr ""
-#: src/Model/Event.php:65 src/Model/Event.php:85 src/Model/Event.php:437
-#: src/Model/Event.php:920
+#: src/Model/Event.php:63 src/Model/Event.php:83 src/Model/Event.php:435
+#: src/Model/Event.php:918
msgid "Finishes:"
msgstr ""
-#: src/Model/Event.php:386
+#: src/Model/Event.php:384
msgid "all-day"
msgstr ""
-#: src/Model/Event.php:388 src/Core/L10n/L10n.php:424
+#: src/Model/Event.php:386 src/Core/L10n.php:369
msgid "Sun"
msgstr ""
-#: src/Model/Event.php:389 src/Core/L10n/L10n.php:424
+#: src/Model/Event.php:387 src/Core/L10n.php:369
msgid "Mon"
msgstr ""
-#: src/Model/Event.php:390 src/Core/L10n/L10n.php:424
+#: src/Model/Event.php:388 src/Core/L10n.php:369
msgid "Tue"
msgstr ""
-#: src/Model/Event.php:391 src/Core/L10n/L10n.php:424
+#: src/Model/Event.php:389 src/Core/L10n.php:369
msgid "Wed"
msgstr ""
-#: src/Model/Event.php:392 src/Core/L10n/L10n.php:424
+#: src/Model/Event.php:390 src/Core/L10n.php:369
msgid "Thu"
msgstr ""
-#: src/Model/Event.php:393 src/Core/L10n/L10n.php:424
+#: src/Model/Event.php:391 src/Core/L10n.php:369
msgid "Fri"
msgstr ""
-#: src/Model/Event.php:394 src/Core/L10n/L10n.php:424
+#: src/Model/Event.php:392 src/Core/L10n.php:369
msgid "Sat"
msgstr ""
-#: src/Model/Event.php:396 src/Core/L10n/L10n.php:404 mod/settings.php:936
+#: src/Model/Event.php:394 src/Core/L10n.php:349 mod/settings.php:930
msgid "Sunday"
msgstr ""
-#: src/Model/Event.php:397 src/Core/L10n/L10n.php:404 mod/settings.php:936
+#: src/Model/Event.php:395 src/Core/L10n.php:349 mod/settings.php:930
msgid "Monday"
msgstr ""
-#: src/Model/Event.php:398 src/Core/L10n/L10n.php:404
+#: src/Model/Event.php:396 src/Core/L10n.php:349
msgid "Tuesday"
msgstr ""
-#: src/Model/Event.php:399 src/Core/L10n/L10n.php:404
+#: src/Model/Event.php:397 src/Core/L10n.php:349
msgid "Wednesday"
msgstr ""
-#: src/Model/Event.php:400 src/Core/L10n/L10n.php:404
+#: src/Model/Event.php:398 src/Core/L10n.php:349
msgid "Thursday"
msgstr ""
-#: src/Model/Event.php:401 src/Core/L10n/L10n.php:404
+#: src/Model/Event.php:399 src/Core/L10n.php:349
msgid "Friday"
msgstr ""
-#: src/Model/Event.php:402 src/Core/L10n/L10n.php:404
+#: src/Model/Event.php:400 src/Core/L10n.php:349
msgid "Saturday"
msgstr ""
-#: src/Model/Event.php:404 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:402 src/Core/L10n.php:373
msgid "Jan"
msgstr ""
-#: src/Model/Event.php:405 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:403 src/Core/L10n.php:373
msgid "Feb"
msgstr ""
-#: src/Model/Event.php:406 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:404 src/Core/L10n.php:373
msgid "Mar"
msgstr ""
-#: src/Model/Event.php:407 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:405 src/Core/L10n.php:373
msgid "Apr"
msgstr ""
-#: src/Model/Event.php:408 src/Core/L10n/L10n.php:408
-#: src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:406 src/Core/L10n.php:353 src/Core/L10n.php:373
msgid "May"
msgstr ""
-#: src/Model/Event.php:409 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:407 src/Core/L10n.php:373
msgid "Jun"
msgstr ""
-#: src/Model/Event.php:410 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:408 src/Core/L10n.php:373
msgid "Jul"
msgstr ""
-#: src/Model/Event.php:411 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:409 src/Core/L10n.php:373
msgid "Aug"
msgstr ""
-#: src/Model/Event.php:412
+#: src/Model/Event.php:410
msgid "Sept"
msgstr ""
-#: src/Model/Event.php:413 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:411 src/Core/L10n.php:373
msgid "Oct"
msgstr ""
-#: src/Model/Event.php:414 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:412 src/Core/L10n.php:373
msgid "Nov"
msgstr ""
-#: src/Model/Event.php:415 src/Core/L10n/L10n.php:428
+#: src/Model/Event.php:413 src/Core/L10n.php:373
msgid "Dec"
msgstr ""
-#: src/Model/Event.php:417 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:415 src/Core/L10n.php:353
msgid "January"
msgstr ""
-#: src/Model/Event.php:418 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:416 src/Core/L10n.php:353
msgid "February"
msgstr ""
-#: src/Model/Event.php:419 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:417 src/Core/L10n.php:353
msgid "March"
msgstr ""
-#: src/Model/Event.php:420 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:418 src/Core/L10n.php:353
msgid "April"
msgstr ""
-#: src/Model/Event.php:421 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:419 src/Core/L10n.php:353
msgid "June"
msgstr ""
-#: src/Model/Event.php:422 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:420 src/Core/L10n.php:353
msgid "July"
msgstr ""
-#: src/Model/Event.php:423 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:421 src/Core/L10n.php:353
msgid "August"
msgstr ""
-#: src/Model/Event.php:424 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:422 src/Core/L10n.php:353
msgid "September"
msgstr ""
-#: src/Model/Event.php:425 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:423 src/Core/L10n.php:353
msgid "October"
msgstr ""
-#: src/Model/Event.php:426 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:424 src/Core/L10n.php:353
msgid "November"
msgstr ""
-#: src/Model/Event.php:427 src/Core/L10n/L10n.php:408
+#: src/Model/Event.php:425 src/Core/L10n.php:353
msgid "December"
msgstr ""
-#: src/Model/Event.php:429 mod/events.php:405 mod/cal.php:267
+#: src/Model/Event.php:427 mod/events.php:402 mod/cal.php:264
msgid "today"
msgstr ""
-#: src/Model/Event.php:430 src/Util/Temporal.php:313 mod/events.php:406
-#: mod/cal.php:268
+#: src/Model/Event.php:428 src/Util/Temporal.php:312 mod/events.php:403
+#: mod/cal.php:265
msgid "month"
msgstr ""
-#: src/Model/Event.php:431 src/Util/Temporal.php:314 mod/events.php:407
-#: mod/cal.php:269
+#: src/Model/Event.php:429 src/Util/Temporal.php:313 mod/events.php:404
+#: mod/cal.php:266
msgid "week"
msgstr ""
-#: src/Model/Event.php:432 src/Util/Temporal.php:315 mod/events.php:408
-#: mod/cal.php:270
+#: src/Model/Event.php:430 src/Util/Temporal.php:314 mod/events.php:405
+#: mod/cal.php:267
msgid "day"
msgstr ""
-#: src/Model/Event.php:434
+#: src/Model/Event.php:432
msgid "No events to display"
msgstr ""
-#: src/Model/Event.php:562
+#: src/Model/Event.php:560
msgid "l, F j"
msgstr ""
-#: src/Model/Event.php:593
+#: src/Model/Event.php:591
msgid "Edit event"
msgstr ""
-#: src/Model/Event.php:594
+#: src/Model/Event.php:592
msgid "Duplicate event"
msgstr ""
-#: src/Model/Event.php:595
+#: src/Model/Event.php:593
msgid "Delete event"
msgstr ""
-#: src/Model/Event.php:627 src/Model/Item.php:3656 src/Model/Item.php:3663
+#: src/Model/Event.php:625 src/Model/Item.php:3656 src/Model/Item.php:3663
msgid "link to source"
msgstr ""
-#: src/Model/Event.php:849
+#: src/Model/Event.php:847
msgid "D g:i A"
msgstr ""
-#: src/Model/Event.php:850
+#: src/Model/Event.php:848
msgid "g:i A"
msgstr ""
-#: src/Model/Event.php:935 src/Model/Event.php:937
+#: src/Model/Event.php:933 src/Model/Event.php:935
msgid "Show map"
msgstr ""
-#: src/Model/Event.php:936
+#: src/Model/Event.php:934
msgid "Hide map"
msgstr ""
-#: src/Model/Event.php:1028
+#: src/Model/Event.php:1026
#, php-format
msgid "%s's birthday"
msgstr ""
-#: src/Model/Event.php:1029
+#: src/Model/Event.php:1027
#, php-format
msgid "Happy Birthday %s"
msgstr ""
-#: src/Model/Photo.php:560 src/Model/Photo.php:569 mod/fbrowser.php:52
-#: mod/fbrowser.php:76 mod/photos.php:181 mod/photos.php:938
-#: mod/photos.php:1055 mod/photos.php:1072 mod/photos.php:1554
-#: mod/photos.php:1569
+#: src/Model/Photo.php:553 src/Model/Photo.php:562 mod/fbrowser.php:51
+#: mod/fbrowser.php:75 mod/photos.php:179 mod/photos.php:934
+#: mod/photos.php:1047 mod/photos.php:1064 mod/photos.php:1545
+#: mod/photos.php:1560
msgid "Contact Photos"
msgstr ""
-#: src/Model/User.php:357
+#: src/Model/User.php:356
msgid "Login failed"
msgstr ""
-#: src/Model/User.php:389
+#: src/Model/User.php:388
msgid "Not enough information to authenticate"
msgstr ""
-#: src/Model/User.php:415 src/Console/NewPassword.php:88 mod/cal.php:284
+#: src/Model/User.php:414 src/Console/NewPassword.php:88 mod/cal.php:281
msgid "User not found"
msgstr ""
-#: src/Model/User.php:483
+#: src/Model/User.php:482
msgid "Password can't be empty"
msgstr ""
-#: src/Model/User.php:502
+#: src/Model/User.php:501
msgid "Empty passwords are not allowed."
msgstr ""
-#: src/Model/User.php:506
+#: src/Model/User.php:505
msgid ""
"The new password has been exposed in a public data dump, please choose "
"another."
msgstr ""
-#: src/Model/User.php:512
+#: src/Model/User.php:511
msgid ""
"The password can't contain accentuated letters, white spaces or colons (:)"
msgstr ""
-#: src/Model/User.php:612
+#: src/Model/User.php:610
msgid "Passwords do not match. Password unchanged."
msgstr ""
-#: src/Model/User.php:619
+#: src/Model/User.php:617
msgid "An invitation is required."
msgstr ""
-#: src/Model/User.php:623
+#: src/Model/User.php:621
msgid "Invitation could not be verified."
msgstr ""
-#: src/Model/User.php:631
+#: src/Model/User.php:629
msgid "Invalid OpenID url"
msgstr ""
-#: src/Model/User.php:644 src/Core/Authentication.php:190
+#: src/Model/User.php:642 src/App/Authentication.php:209
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:644 src/Core/Authentication.php:190
+#: src/Model/User.php:642 src/App/Authentication.php:209
msgid "The error message was:"
msgstr ""
-#: src/Model/User.php:650
+#: src/Model/User.php:648
msgid "Please enter the required information."
msgstr ""
-#: src/Model/User.php:664
+#: src/Model/User.php:662
#, 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:671
+#: src/Model/User.php:669
#, 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:675
+#: src/Model/User.php:673
#, 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:683
+#: src/Model/User.php:681
msgid "That doesn't appear to be your full (First Last) name."
msgstr ""
-#: src/Model/User.php:688
+#: src/Model/User.php:686
msgid "Your email domain is not among those allowed on this site."
msgstr ""
-#: src/Model/User.php:692
+#: src/Model/User.php:690
msgid "Not a valid email address."
msgstr ""
-#: src/Model/User.php:695
+#: src/Model/User.php:693
msgid "The nickname was blocked from registration by the nodes admin."
msgstr ""
-#: src/Model/User.php:699 src/Model/User.php:707
+#: src/Model/User.php:697 src/Model/User.php:705
msgid "Cannot use that email."
msgstr ""
-#: src/Model/User.php:714
+#: src/Model/User.php:712
msgid "Your nickname can only contain a-z, 0-9 and _."
msgstr ""
-#: src/Model/User.php:722 src/Model/User.php:779
+#: src/Model/User.php:720 src/Model/User.php:777
msgid "Nickname is already registered. Please choose another."
msgstr ""
-#: src/Model/User.php:732
+#: src/Model/User.php:730
msgid "SERIOUS ERROR: Generation of security keys failed."
msgstr ""
-#: src/Model/User.php:766 src/Model/User.php:770
+#: src/Model/User.php:764 src/Model/User.php:768
msgid "An error occurred during registration. Please try again."
msgstr ""
-#: src/Model/User.php:795
+#: src/Model/User.php:793
msgid "An error occurred creating your default profile. Please try again."
msgstr ""
-#: src/Model/User.php:802
+#: src/Model/User.php:800
msgid "An error occurred creating your self contact. Please try again."
msgstr ""
-#: src/Model/User.php:811
+#: src/Model/User.php:809
msgid ""
"An error occurred creating your default contact group. Please try again."
msgstr ""
-#: src/Model/User.php:888
+#: src/Model/User.php:886
#, php-format
msgid ""
"\n"
@@ -3023,7 +5705,7 @@ msgid ""
"\t\t"
msgstr ""
-#: src/Model/User.php:909
+#: src/Model/User.php:907
#, php-format
msgid "Registration at %s"
msgstr ""
@@ -3076,159 +5758,159 @@ msgid ""
"\t\t\tThank you and welcome to %2$s."
msgstr ""
-#: src/Model/User.php:976 src/Module/Admin/Users.php:88
+#: src/Model/User.php:976 src/Module/Admin/Users.php:86
#, php-format
msgid "Registration details for %s"
msgstr ""
-#: src/Model/Mail.php:114 src/Model/Mail.php:251
+#: src/Model/Mail.php:112 src/Model/Mail.php:247
msgid "[no subject]"
msgstr ""
-#: src/Model/Group.php:77
+#: src/Model/Group.php:76
msgid ""
"A deleted group with this name was revived. Existing item permissions "
"may apply to this group and any future members. If this is "
"not what you intended, please create another group with a different name."
msgstr ""
-#: src/Model/Group.php:426
+#: src/Model/Group.php:425
msgid "Default privacy group for new contacts"
msgstr ""
-#: src/Model/Group.php:458
+#: src/Model/Group.php:457
msgid "Everybody"
msgstr ""
-#: src/Model/Group.php:477
+#: src/Model/Group.php:476
msgid "edit"
msgstr ""
-#: src/Model/Group.php:502
+#: src/Model/Group.php:501
msgid "add"
msgstr ""
-#: src/Model/Group.php:503 src/Module/Welcome.php:57 src/Module/Contact.php:729
+#: src/Model/Group.php:502 src/Module/Welcome.php:57 src/Module/Contact.php:732
msgid "Groups"
msgstr ""
-#: src/Model/Group.php:507
+#: src/Model/Group.php:506
msgid "Edit group"
msgstr ""
-#: src/Model/Group.php:508 src/Module/Group.php:186
+#: src/Model/Group.php:507 src/Module/Group.php:179
msgid "Contacts not in any group"
msgstr ""
-#: src/Model/Group.php:510
+#: src/Model/Group.php:509
msgid "Create a new group"
msgstr ""
-#: src/Model/Group.php:511 src/Module/Group.php:171 src/Module/Group.php:194
-#: src/Module/Group.php:271
+#: src/Model/Group.php:510 src/Module/Group.php:164 src/Module/Group.php:187
+#: src/Module/Group.php:264
msgid "Group Name: "
msgstr ""
-#: src/Model/Group.php:512
+#: src/Model/Group.php:511
msgid "Edit groups"
msgstr ""
-#: src/Model/FileTag.php:265
+#: src/Model/FileTag.php:264
msgid "Item filed"
msgstr ""
-#: src/Model/Contact.php:1251 src/Model/Contact.php:1264
+#: src/Model/Contact.php:1275 src/Model/Contact.php:1288
msgid "UnFollow"
msgstr ""
-#: src/Model/Contact.php:1260
+#: src/Model/Contact.php:1284
msgid "Drop Contact"
msgstr ""
-#: src/Model/Contact.php:1270 src/Module/Admin/Users.php:286
-#: mod/notifications.php:198 mod/notifications.php:292
+#: src/Model/Contact.php:1294 src/Module/Admin/Users.php:284
+#: mod/notifications.php:170 mod/notifications.php:264
msgid "Approve"
msgstr ""
-#: src/Model/Contact.php:1818
+#: src/Model/Contact.php:1853
msgid "Organisation"
msgstr ""
-#: src/Model/Contact.php:1822
+#: src/Model/Contact.php:1857
msgid "News"
msgstr ""
-#: src/Model/Contact.php:1826
+#: src/Model/Contact.php:1861
msgid "Forum"
msgstr ""
-#: src/Model/Contact.php:2216 mod/dfrn_request.php:342
+#: src/Model/Contact.php:2265 mod/dfrn_request.php:343
msgid "Disallowed profile URL."
msgstr ""
-#: src/Model/Contact.php:2221 src/Module/Friendica.php:59
-#: mod/dfrn_request.php:348
+#: src/Model/Contact.php:2270 src/Module/Friendica.php:58
+#: mod/dfrn_request.php:349
msgid "Blocked domain"
msgstr ""
-#: src/Model/Contact.php:2226
+#: src/Model/Contact.php:2275
msgid "Connect URL missing."
msgstr ""
-#: src/Model/Contact.php:2235
+#: src/Model/Contact.php:2284
msgid ""
"The contact could not be added. Please check the relevant network "
"credentials in your Settings -> Social Networks page."
msgstr ""
-#: src/Model/Contact.php:2276
+#: src/Model/Contact.php:2325
msgid ""
"This site is not configured to allow communications with other networks."
msgstr ""
-#: src/Model/Contact.php:2277 src/Model/Contact.php:2290
+#: src/Model/Contact.php:2326 src/Model/Contact.php:2339
msgid "No compatible communication protocols or feeds were discovered."
msgstr ""
-#: src/Model/Contact.php:2288
+#: src/Model/Contact.php:2337
msgid "The profile address specified does not provide adequate information."
msgstr ""
-#: src/Model/Contact.php:2293
+#: src/Model/Contact.php:2342
msgid "An author or name was not found."
msgstr ""
-#: src/Model/Contact.php:2296
+#: src/Model/Contact.php:2345
msgid "No browser URL could be matched to this address."
msgstr ""
-#: src/Model/Contact.php:2299
+#: src/Model/Contact.php:2348
msgid ""
"Unable to match @-style Identity Address with a known protocol or email "
"contact."
msgstr ""
-#: src/Model/Contact.php:2300
+#: src/Model/Contact.php:2349
msgid "Use mailto: in front of address to force email check."
msgstr ""
-#: src/Model/Contact.php:2306
+#: src/Model/Contact.php:2355
msgid ""
"The profile address specified belongs to a network which has been disabled "
"on this site."
msgstr ""
-#: src/Model/Contact.php:2311
+#: src/Model/Contact.php:2360
msgid ""
"Limited profile. This person will be unable to receive direct/personal "
"notifications from you."
msgstr ""
-#: src/Model/Contact.php:2372
+#: src/Model/Contact.php:2421
msgid "Unable to retrieve contact information."
msgstr ""
-#: src/Model/Contact.php:2593 mod/dfrn_request.php:562 mod/dfrn_confirm.php:539
+#: src/Model/Contact.php:2642 mod/dfrn_request.php:563 mod/dfrn_confirm.php:538
msgid "[Name Withheld]"
msgstr ""
@@ -3245,7 +5927,7 @@ msgstr ""
msgid "Content warning: %s"
msgstr ""
-#: src/Model/Item.php:3586 mod/videos.php:238
+#: src/Model/Item.php:3586 mod/videos.php:235
msgid "View Video"
msgstr ""
@@ -3261,39 +5943,39 @@ msgstr ""
msgid "view on separate page"
msgstr ""
-#: src/Model/Storage/Database.php:36
+#: src/Model/Storage/Database.php:59
#, php-format
msgid "Database storage failed to update %s"
msgstr ""
-#: src/Model/Storage/Database.php:43
+#: src/Model/Storage/Database.php:67
msgid "Database storage failed to insert data"
msgstr ""
-#: src/Model/Storage/Filesystem.php:63
+#: src/Model/Storage/Filesystem.php:85
#, php-format
msgid ""
"Filesystem storage failed to create \"%s\". Check you write permissions."
msgstr ""
-#: src/Model/Storage/Filesystem.php:105
+#: src/Model/Storage/Filesystem.php:133
#, php-format
msgid ""
"Filesystem storage failed to save data to \"%s\". Check your write "
"permissions"
msgstr ""
-#: src/Model/Storage/Filesystem.php:126
+#: src/Model/Storage/Filesystem.php:161
msgid "Storage base path"
msgstr ""
-#: src/Model/Storage/Filesystem.php:128
+#: src/Model/Storage/Filesystem.php:163
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
+#: src/Model/Storage/Filesystem.php:176
msgid "Enter a valid existing folder"
msgstr ""
@@ -3349,41 +6031,41 @@ msgstr ""
msgid "New Follower"
msgstr ""
-#: src/Protocol/OStatus.php:1277 src/Module/Profile.php:117
-#: src/Module/Profile.php:120
+#: src/Protocol/OStatus.php:1272 src/Module/Profile.php:116
+#: src/Module/Profile.php:119
#, php-format
msgid "%s's timeline"
msgstr ""
-#: src/Protocol/OStatus.php:1281 src/Module/Profile.php:118
+#: src/Protocol/OStatus.php:1276 src/Module/Profile.php:117
#, php-format
msgid "%s's posts"
msgstr ""
-#: src/Protocol/OStatus.php:1284 src/Module/Profile.php:119
+#: src/Protocol/OStatus.php:1279 src/Module/Profile.php:118
#, php-format
msgid "%s's comments"
msgstr ""
-#: src/Protocol/OStatus.php:1839
+#: src/Protocol/OStatus.php:1834
#, php-format
msgid "%s is now following %s."
msgstr ""
-#: src/Protocol/OStatus.php:1840
+#: src/Protocol/OStatus.php:1835
msgid "following"
msgstr ""
-#: src/Protocol/OStatus.php:1843
+#: src/Protocol/OStatus.php:1838
#, php-format
msgid "%s stopped following %s."
msgstr ""
-#: src/Protocol/OStatus.php:1844
+#: src/Protocol/OStatus.php:1839
msgid "stopped following"
msgstr ""
-#: src/Protocol/Diaspora.php:3585
+#: src/Protocol/Diaspora.php:3576
msgid "Attachments:"
msgstr ""
@@ -3392,12 +6074,64 @@ msgstr ""
msgid "Legacy module file not found: %s"
msgstr ""
-#: src/Core/Update.php:193
+#: src/Core/L10n.php:373
+msgid "Sep"
+msgstr ""
+
+#: src/Core/L10n.php:392
+msgid "poke"
+msgstr ""
+
+#: src/Core/L10n.php:392
+msgid "poked"
+msgstr ""
+
+#: src/Core/L10n.php:393
+msgid "ping"
+msgstr ""
+
+#: src/Core/L10n.php:393
+msgid "pinged"
+msgstr ""
+
+#: src/Core/L10n.php:394
+msgid "prod"
+msgstr ""
+
+#: src/Core/L10n.php:394
+msgid "prodded"
+msgstr ""
+
+#: src/Core/L10n.php:395
+msgid "slap"
+msgstr ""
+
+#: src/Core/L10n.php:395
+msgid "slapped"
+msgstr ""
+
+#: src/Core/L10n.php:396
+msgid "finger"
+msgstr ""
+
+#: src/Core/L10n.php:396
+msgid "fingered"
+msgstr ""
+
+#: src/Core/L10n.php:397
+msgid "rebuff"
+msgstr ""
+
+#: src/Core/L10n.php:397
+msgid "rebuffed"
+msgstr ""
+
+#: src/Core/Update.php:194
#, php-format
msgid "Update %s failed. See error logs."
msgstr ""
-#: src/Core/Update.php:257
+#: src/Core/Update.php:258
#, php-format
msgid ""
"\n"
@@ -3409,14 +6143,14 @@ msgid ""
"might be invalid."
msgstr ""
-#: src/Core/Update.php:263
+#: src/Core/Update.php:264
#, php-format
msgid ""
"The error message is\n"
"[pre]%s[/pre]"
msgstr ""
-#: src/Core/Update.php:269 src/Core/Update.php:308
+#: src/Core/Update.php:270 src/Core/Update.php:308
msgid "[Friendica Notify] Database update"
msgstr ""
@@ -3427,135 +6161,56 @@ msgid ""
"\t\t\t\t\tThe friendica database was successfully updated from %s to %s."
msgstr ""
-#: src/Core/L10n/L10n.php:428
-msgid "Sep"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:447
-msgid "poke"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:447
-msgid "poked"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:448
-msgid "ping"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:448
-msgid "pinged"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:449
-msgid "prod"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:449
-msgid "prodded"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:450
-msgid "slap"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:450
-msgid "slapped"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:451
-msgid "finger"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:451
-msgid "fingered"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:452
-msgid "rebuff"
-msgstr ""
-
-#: src/Core/L10n/L10n.php:452
-msgid "rebuffed"
-msgstr ""
-
-#: src/Core/Authentication.php:176 src/Core/Authentication.php:228
-#: mod/openid.php:79
-msgid "Login failed."
-msgstr ""
-
-#: src/Core/Authentication.php:239
-msgid "Login failed. Please check your credentials."
-msgstr ""
-
-#: src/Core/Authentication.php:355
-#, php-format
-msgid "Welcome %s"
-msgstr ""
-
-#: src/Core/Authentication.php:356
-msgid "Please upload a profile photo."
-msgstr ""
-
-#: src/Core/Authentication.php:359
-#, php-format
-msgid "Welcome back %s"
-msgstr ""
-
-#: src/Core/ACL.php:290 mod/lockview.php:84 mod/lockview.php:119
+#: src/Core/ACL.php:276 mod/lockview.php:81 mod/lockview.php:116
msgid "Mutuals"
msgstr ""
-#: src/Core/ACL.php:376
+#: src/Core/ACL.php:366
msgid "Post to Email"
msgstr ""
-#: src/Core/ACL.php:394
-msgid "Public"
-msgstr ""
-
-#: src/Core/ACL.php:395
+#: src/Core/ACL.php:385
msgid ""
"This content will be shown to all your followers and can be seen in the "
"community pages and by anyone with its link."
msgstr ""
-#: src/Core/ACL.php:396
+#: src/Core/ACL.php:386
msgid "Limited/Private"
msgstr ""
-#: src/Core/ACL.php:397
+#: src/Core/ACL.php:387
msgid ""
"This content will be shown only to the people in the first box, to the "
"exception of the people mentioned in the second box. It won't appear "
"anywhere public."
msgstr ""
-#: src/Core/ACL.php:398
+#: src/Core/ACL.php:388
msgid "Show to:"
msgstr ""
-#: src/Core/ACL.php:399
+#: src/Core/ACL.php:389
msgid "Except to:"
msgstr ""
-#: src/Core/ACL.php:400 mod/editpost.php:96
+#: src/Core/ACL.php:390 mod/editpost.php:96
msgid "CC: email addresses"
msgstr ""
-#: src/Core/ACL.php:401 mod/editpost.php:103
+#: src/Core/ACL.php:391 mod/editpost.php:103
msgid "Example: bob@example.com, mary@example.com"
msgstr ""
-#: src/Core/ACL.php:402
+#: src/Core/ACL.php:392
msgid "Connectors"
msgstr ""
-#: src/Core/ACL.php:403
+#: src/Core/ACL.php:393
msgid "Hide your profile details from unknown viewers?"
msgstr ""
-#: src/Core/ACL.php:403
+#: src/Core/ACL.php:393
#, php-format
msgid "Connectors disabled, since \"%s\" is enabled."
msgstr ""
@@ -3605,8 +6260,8 @@ msgid ""
"or mysql."
msgstr ""
-#: src/Core/Installer.php:182 src/Module/Install.php:173
-#: src/Module/Install.php:329
+#: src/Core/Installer.php:182 src/Module/Install.php:172
+#: src/Module/Install.php:326
msgid "Please see the file \"INSTALL.txt\"."
msgstr ""
@@ -3851,8 +6506,8 @@ msgstr ""
msgid "ImageMagick PHP extension is installed"
msgstr ""
-#: src/Core/Installer.php:582 tests/src/Core/InstallerTest.php:366
-#: tests/src/Core/InstallerTest.php:389
+#: src/Core/Installer.php:582 tests/src/Core/InstallerTest.php:367
+#: tests/src/Core/InstallerTest.php:390
msgid "ImageMagick supports GIF"
msgstr ""
@@ -3864,87 +6519,68 @@ msgstr ""
msgid "Could not connect to database."
msgstr ""
-#: src/Module/Directory.php:31 src/Module/Debug/WebFinger.php:19
-#: src/Module/Debug/Probe.php:20 src/Module/Search/Index.php:31
-#: src/Module/Search/Index.php:36 mod/community.php:25 mod/display.php:169
-#: mod/dfrn_request.php:599 mod/photos.php:841 mod/videos.php:115
-msgid "Public access denied."
-msgstr ""
-
-#: src/Module/Directory.php:59
-msgid "No entries (some entries may be hidden)."
-msgstr ""
-
-#: src/Module/Directory.php:78
-msgid "Find on this site"
-msgstr ""
-
-#: src/Module/Directory.php:80
-msgid "Results for:"
-msgstr ""
-
#: src/Module/Directory.php:82
msgid "Site Directory"
msgstr ""
-#: src/Module/Special/HTTPException.php:32
+#: src/Module/Special/HTTPException.php:30
msgid "Bad Request"
msgstr ""
-#: src/Module/Special/HTTPException.php:33
+#: src/Module/Special/HTTPException.php:31
msgid "Unauthorized"
msgstr ""
-#: src/Module/Special/HTTPException.php:34
+#: src/Module/Special/HTTPException.php:32
msgid "Forbidden"
msgstr ""
-#: src/Module/Special/HTTPException.php:35
+#: src/Module/Special/HTTPException.php:33
msgid "Not Found"
msgstr ""
-#: src/Module/Special/HTTPException.php:36
+#: src/Module/Special/HTTPException.php:34
msgid "Internal Server Error"
msgstr ""
-#: src/Module/Special/HTTPException.php:37
+#: src/Module/Special/HTTPException.php:35
msgid "Service Unavailable"
msgstr ""
-#: src/Module/Special/HTTPException.php:44
+#: src/Module/Special/HTTPException.php:42
msgid ""
"The server cannot or will not process the request due to an apparent client "
"error."
msgstr ""
-#: src/Module/Special/HTTPException.php:45
+#: src/Module/Special/HTTPException.php:43
msgid "Authentication is required and has failed or has not yet been provided."
msgstr ""
-#: src/Module/Special/HTTPException.php:46
+#: src/Module/Special/HTTPException.php:44
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/Module/Special/HTTPException.php:47
+#: src/Module/Special/HTTPException.php:45
msgid ""
"The requested resource could not be found but may be available in the future."
msgstr ""
-#: src/Module/Special/HTTPException.php:48
+#: src/Module/Special/HTTPException.php:46
msgid ""
"An unexpected condition was encountered and no more specific message is "
"suitable."
msgstr ""
-#: src/Module/Special/HTTPException.php:49
+#: src/Module/Special/HTTPException.php:47
msgid ""
"The server is currently unavailable (because it is overloaded or down for "
"maintenance). Please try again later."
msgstr ""
-#: src/Module/Special/HTTPException.php:55
+#: src/Module/Special/HTTPException.php:53
msgid "Go back"
msgstr ""
@@ -3952,21 +6588,21 @@ msgstr ""
msgid "Help:"
msgstr ""
-#: src/Module/Delegation.php:130
+#: src/Module/Delegation.php:127
msgid "Manage Identities and/or Pages"
msgstr ""
-#: src/Module/Delegation.php:131
+#: src/Module/Delegation.php:128
msgid ""
"Toggle between different identities or community/group pages which share "
"your account details or which you have been granted \"manage\" permissions"
msgstr ""
-#: src/Module/Delegation.php:132
+#: src/Module/Delegation.php:129
msgid "Select an identity to manage: "
msgstr ""
-#: src/Module/Tos.php:35 src/Module/Tos.php:77
+#: src/Module/Tos.php:34 src/Module/Tos.php:76
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 "
@@ -3979,14 +6615,14 @@ msgid ""
"settings, it is not necessary for communication."
msgstr ""
-#: src/Module/Tos.php:36 src/Module/Tos.php:78
+#: src/Module/Tos.php:35 src/Module/Tos.php:77
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 ""
-#: src/Module/Tos.php:37 src/Module/Tos.php:79
+#: src/Module/Tos.php:36 src/Module/Tos.php:78
#, php-format
msgid ""
"At any point in time a logged in user can export their account data from the "
@@ -3996,170 +6632,170 @@ msgid ""
"data will also be requested from the nodes of the communication partners."
msgstr ""
-#: src/Module/Tos.php:40 src/Module/Tos.php:76
+#: src/Module/Tos.php:39 src/Module/Tos.php:75
msgid "Privacy Statement"
msgstr ""
-#: src/Module/Install.php:159
+#: src/Module/Install.php:158
msgid "Friendica Communications Server - Setup"
msgstr ""
-#: src/Module/Install.php:170
+#: src/Module/Install.php:169
msgid "System check"
msgstr ""
-#: src/Module/Install.php:174 mod/events.php:400 mod/cal.php:264
+#: src/Module/Install.php:173 mod/events.php:397 mod/cal.php:261
msgid "Next"
msgstr ""
-#: src/Module/Install.php:175
+#: src/Module/Install.php:174
msgid "Check again"
msgstr ""
-#: src/Module/Install.php:182 src/Module/Admin/Site.php:514
+#: src/Module/Install.php:181 src/Module/Admin/Site.php:507
msgid "No SSL policy, links will track page SSL state"
msgstr ""
-#: src/Module/Install.php:183 src/Module/Admin/Site.php:515
+#: src/Module/Install.php:182 src/Module/Admin/Site.php:508
msgid "Force all links to use SSL"
msgstr ""
-#: src/Module/Install.php:184 src/Module/Admin/Site.php:516
+#: src/Module/Install.php:183 src/Module/Admin/Site.php:509
msgid "Self-signed certificate, use SSL for local links only (discouraged)"
msgstr ""
-#: src/Module/Install.php:190
+#: src/Module/Install.php:189
msgid "Base settings"
msgstr ""
-#: src/Module/Install.php:192 src/Module/Admin/Site.php:592
+#: src/Module/Install.php:191 src/Module/Admin/Site.php:581
msgid "SSL link policy"
msgstr ""
-#: src/Module/Install.php:194 src/Module/Admin/Site.php:592
+#: src/Module/Install.php:193 src/Module/Admin/Site.php:581
msgid "Determines whether generated links should be forced to use SSL"
msgstr ""
-#: src/Module/Install.php:197
+#: src/Module/Install.php:196
msgid "Host name"
msgstr ""
-#: src/Module/Install.php:199
+#: src/Module/Install.php:198
msgid ""
"Overwrite this field in case the determinated hostname isn't right, "
"otherweise leave it as is."
msgstr ""
-#: src/Module/Install.php:202
+#: src/Module/Install.php:201
msgid "Base path to installation"
msgstr ""
-#: src/Module/Install.php:204
+#: src/Module/Install.php:203
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 ""
-#: src/Module/Install.php:207
+#: src/Module/Install.php:206
msgid "Sub path of the URL"
msgstr ""
-#: src/Module/Install.php:209
+#: src/Module/Install.php:208
msgid ""
"Overwrite this field in case the sub path determination isn't right, "
"otherwise leave it as is. Leaving this field blank means the installation is "
"at the base URL without sub path."
msgstr ""
-#: src/Module/Install.php:220
+#: src/Module/Install.php:219
msgid "Database connection"
msgstr ""
-#: src/Module/Install.php:221
+#: src/Module/Install.php:220
msgid ""
"In order to install Friendica we need to know how to connect to your "
"database."
msgstr ""
-#: src/Module/Install.php:222
+#: src/Module/Install.php:221
msgid ""
"Please contact your hosting provider or site administrator if you have "
"questions about these settings."
msgstr ""
-#: src/Module/Install.php:223
+#: src/Module/Install.php:222
msgid ""
"The database you specify below should already exist. If it does not, please "
"create it before continuing."
msgstr ""
-#: src/Module/Install.php:230
+#: src/Module/Install.php:229
msgid "Database Server Name"
msgstr ""
-#: src/Module/Install.php:235
+#: src/Module/Install.php:234
msgid "Database Login Name"
msgstr ""
-#: src/Module/Install.php:241
+#: src/Module/Install.php:240
msgid "Database Login Password"
msgstr ""
-#: src/Module/Install.php:243
+#: src/Module/Install.php:242
msgid "For security reasons the password must not be empty"
msgstr ""
-#: src/Module/Install.php:246
+#: src/Module/Install.php:245
msgid "Database Name"
msgstr ""
-#: src/Module/Install.php:250 src/Module/Install.php:279
+#: src/Module/Install.php:249 src/Module/Install.php:278
msgid "Please select a default timezone for your website"
msgstr ""
-#: src/Module/Install.php:264
+#: src/Module/Install.php:263
msgid "Site settings"
msgstr ""
-#: src/Module/Install.php:274
+#: src/Module/Install.php:273
msgid "Site administrator email address"
msgstr ""
-#: src/Module/Install.php:276
+#: src/Module/Install.php:275
msgid ""
"Your account email address must match this in order to use the web admin "
"panel."
msgstr ""
-#: src/Module/Install.php:283
+#: src/Module/Install.php:282
msgid "System Language:"
msgstr ""
-#: src/Module/Install.php:285
+#: src/Module/Install.php:284
msgid ""
"Set the default language for your Friendica installation interface and to "
"send emails."
msgstr ""
-#: src/Module/Install.php:297
+#: src/Module/Install.php:296
msgid "Your Friendica site database has been installed."
msgstr ""
-#: src/Module/Install.php:305
+#: src/Module/Install.php:304
msgid "Installation finished"
msgstr ""
-#: src/Module/Install.php:327
+#: src/Module/Install.php:324
msgid "What next "
msgstr ""
-#: src/Module/Install.php:328
+#: src/Module/Install.php:325
msgid ""
"IMPORTANT: You will need to [manually] setup a scheduled task for the worker."
msgstr ""
-#: src/Module/Install.php:331
+#: src/Module/Install.php:328
#, php-format
msgid ""
"Go to your new Friendica node registration page "
@@ -4167,263 +6803,285 @@ msgid ""
"administrator email. This will allow you to enter the site admin panel."
msgstr ""
-#: src/Module/BaseAdminModule.php:56 mod/api.php:95
+#: src/Module/BaseAdminModule.php:54 mod/api.php:95
msgid "Please login to continue."
msgstr ""
-#: src/Module/BaseAdminModule.php:62
+#: src/Module/BaseAdminModule.php:60
msgid ""
"Submanaged account can't access the administation pages. Please log back in "
"as the master account."
msgstr ""
-#: src/Module/BaseAdminModule.php:76
+#: src/Module/BaseAdminModule.php:74
msgid "Overview"
msgstr ""
-#: src/Module/BaseAdminModule.php:77 src/Module/Admin/Federation.php:188
+#: src/Module/BaseAdminModule.php:75 src/Module/Admin/Federation.php:123
msgid "Federation Statistics"
msgstr ""
-#: src/Module/BaseAdminModule.php:79
+#: src/Module/BaseAdminModule.php:77
msgid "Configuration"
msgstr ""
-#: src/Module/BaseAdminModule.php:80 src/Module/Admin/Site.php:567
+#: src/Module/BaseAdminModule.php:78 src/Module/Admin/Site.php:556
msgid "Site"
msgstr ""
-#: src/Module/BaseAdminModule.php:81 src/Module/Admin/Users.php:278
-#: src/Module/Admin/Users.php:295 src/Module/Admin/Site.php:471
+#: src/Module/BaseAdminModule.php:79 src/Module/Admin/Users.php:276
+#: src/Module/Admin/Users.php:293 src/Module/Admin/Site.php:464
msgid "Users"
msgstr ""
-#: src/Module/BaseAdminModule.php:82 src/Module/Admin/Addons/Details.php:100
-#: src/Module/Admin/Addons/Index.php:51 src/Module/BaseSettingsModule.php:68
-#: mod/settings.php:112
+#: src/Module/BaseAdminModule.php:80 src/Module/Admin/Addons/Details.php:100
+#: src/Module/Admin/Addons/Index.php:49 src/Module/BaseSettingsModule.php:68
+#: mod/settings.php:107
msgid "Addons"
msgstr ""
-#: src/Module/BaseAdminModule.php:83 src/Module/Admin/Themes/Details.php:105
-#: src/Module/Admin/Themes/Index.php:96
+#: src/Module/BaseAdminModule.php:81 src/Module/Admin/Themes/Details.php:105
+#: src/Module/Admin/Themes/Index.php:94
msgid "Themes"
msgstr ""
-#: src/Module/BaseAdminModule.php:84 src/Module/BaseSettingsModule.php:46
-#: mod/settings.php:90
+#: src/Module/BaseAdminModule.php:82 src/Module/BaseSettingsModule.php:46
+#: mod/settings.php:85
msgid "Additional features"
msgstr ""
-#: src/Module/BaseAdminModule.php:87
+#: src/Module/BaseAdminModule.php:85
msgid "Database"
msgstr ""
-#: src/Module/BaseAdminModule.php:88
+#: src/Module/BaseAdminModule.php:86
msgid "DB updates"
msgstr ""
-#: src/Module/BaseAdminModule.php:89
+#: src/Module/BaseAdminModule.php:87
msgid "Inspect Deferred Workers"
msgstr ""
-#: src/Module/BaseAdminModule.php:90
+#: src/Module/BaseAdminModule.php:88
msgid "Inspect worker Queue"
msgstr ""
-#: src/Module/BaseAdminModule.php:92
+#: src/Module/BaseAdminModule.php:90
msgid "Tools"
msgstr ""
-#: src/Module/BaseAdminModule.php:93
+#: src/Module/BaseAdminModule.php:91
msgid "Contact Blocklist"
msgstr ""
-#: src/Module/BaseAdminModule.php:94
+#: src/Module/BaseAdminModule.php:92
msgid "Server Blocklist"
msgstr ""
-#: src/Module/BaseAdminModule.php:95 src/Module/Admin/Item/Delete.php:47
+#: src/Module/BaseAdminModule.php:93 src/Module/Admin/Item/Delete.php:47
msgid "Delete Item"
msgstr ""
-#: src/Module/BaseAdminModule.php:97 src/Module/BaseAdminModule.php:98
-#: src/Module/Admin/Logs/Settings.php:64
+#: src/Module/BaseAdminModule.php:95 src/Module/BaseAdminModule.php:96
+#: src/Module/Admin/Logs/Settings.php:62
msgid "Logs"
msgstr ""
-#: src/Module/BaseAdminModule.php:99 src/Module/Admin/Logs/View.php:47
+#: src/Module/BaseAdminModule.php:97 src/Module/Admin/Logs/View.php:47
msgid "View Logs"
msgstr ""
-#: src/Module/BaseAdminModule.php:101
+#: src/Module/BaseAdminModule.php:99
msgid "Diagnostics"
msgstr ""
-#: src/Module/BaseAdminModule.php:102
+#: src/Module/BaseAdminModule.php:100
msgid "PHP Info"
msgstr ""
-#: src/Module/BaseAdminModule.php:103
+#: src/Module/BaseAdminModule.php:101
msgid "probe address"
msgstr ""
-#: src/Module/BaseAdminModule.php:104
+#: src/Module/BaseAdminModule.php:102
msgid "check webfinger"
msgstr ""
-#: src/Module/BaseAdminModule.php:105
+#: src/Module/BaseAdminModule.php:103
msgid "Item Source"
msgstr ""
-#: src/Module/BaseAdminModule.php:106
+#: src/Module/BaseAdminModule.php:104
msgid "Babel"
msgstr ""
-#: src/Module/BaseAdminModule.php:115
+#: src/Module/BaseAdminModule.php:113
msgid "Addon Features"
msgstr ""
-#: src/Module/BaseAdminModule.php:116
+#: src/Module/BaseAdminModule.php:114
msgid "User registrations waiting for confirmation"
msgstr ""
-#: src/Module/Login.php:96
+#: src/Module/Security/Login.php:89
msgid "Create a New Account"
msgstr ""
-#: src/Module/Login.php:121
+#: src/Module/Security/Login.php:114
msgid "Your OpenID: "
msgstr ""
-#: src/Module/Login.php:124
+#: src/Module/Security/Login.php:117
msgid ""
"Please enter your username and password to add the OpenID to your existing "
"account."
msgstr ""
-#: src/Module/Login.php:126
+#: src/Module/Security/Login.php:119
msgid "Or login using OpenID: "
msgstr ""
-#: src/Module/Login.php:139 mod/lostpass.php:120
+#: src/Module/Security/Login.php:132 mod/lostpass.php:119
msgid "Nickname or Email: "
msgstr ""
-#: src/Module/Login.php:140
+#: src/Module/Security/Login.php:133
msgid "Password: "
msgstr ""
-#: src/Module/Login.php:141
+#: src/Module/Security/Login.php:134
msgid "Remember me"
msgstr ""
-#: src/Module/Login.php:150
+#: src/Module/Security/Login.php:143
msgid "Forgot your password?"
msgstr ""
-#: src/Module/Login.php:151 mod/lostpass.php:136
+#: src/Module/Security/Login.php:144 mod/lostpass.php:135
msgid "Password Reset"
msgstr ""
-#: src/Module/Login.php:153
+#: src/Module/Security/Login.php:146
msgid "Website Terms of Service"
msgstr ""
-#: src/Module/Login.php:154
+#: src/Module/Security/Login.php:147
msgid "terms of service"
msgstr ""
-#: src/Module/Login.php:156
+#: src/Module/Security/Login.php:149
msgid "Website Privacy Policy"
msgstr ""
-#: src/Module/Login.php:157
+#: src/Module/Security/Login.php:150
msgid "privacy policy"
msgstr ""
-#: src/Module/Profile.php:175 mod/cal.php:130 mod/display.php:265
-msgid "Access to this profile has been restricted."
-msgstr ""
-
-#: src/Module/TwoFactor/Verify.php:46 src/Module/TwoFactor/Recovery.php:49
-#: src/Module/Settings/TwoFactor/Verify.php:67
+#: src/Module/Security/TwoFactor/Verify.php:42
+#: src/Module/Security/TwoFactor/Recovery.php:45
+#: src/Module/Settings/TwoFactor/Verify.php:63
msgid "Invalid code, please retry."
msgstr ""
-#: src/Module/TwoFactor/Verify.php:65
-#: src/Module/Settings/TwoFactor/Index.php:89
-#: src/Module/BaseSettingsModule.php:31 mod/settings.php:75
+#: src/Module/Security/TwoFactor/Verify.php:61
+#: src/Module/Settings/TwoFactor/Index.php:86
+#: src/Module/BaseSettingsModule.php:31 mod/settings.php:70
msgid "Two-factor authentication"
msgstr ""
-#: src/Module/TwoFactor/Verify.php:66
+#: src/Module/Security/TwoFactor/Verify.php:62
msgid ""
"Open the two-factor authentication app on your device to get an "
"authentication code and verify your identity.
"
msgstr ""
-#: src/Module/TwoFactor/Verify.php:67 mod/repair_ostatus.php:37
+#: src/Module/Security/TwoFactor/Verify.php:63 mod/repair_ostatus.php:34
msgid "Error"
msgid_plural "Errors"
msgstr[0] ""
msgstr[1] ""
-#: src/Module/TwoFactor/Verify.php:69 src/Module/TwoFactor/Recovery.php:70
+#: src/Module/Security/TwoFactor/Verify.php:65
+#: src/Module/Security/TwoFactor/Recovery.php:66
#, php-format
msgid ""
"Don’t have your phone? Enter a two-factor recovery code "
msgstr ""
-#: src/Module/TwoFactor/Verify.php:70
-#: src/Module/Settings/TwoFactor/Verify.php:126
+#: src/Module/Security/TwoFactor/Verify.php:66
+#: src/Module/Settings/TwoFactor/Verify.php:122
msgid "Please enter a code from your authentication app"
msgstr ""
-#: src/Module/TwoFactor/Verify.php:71
+#: src/Module/Security/TwoFactor/Verify.php:67
msgid "Verify code and complete login"
msgstr ""
-#: src/Module/TwoFactor/Recovery.php:42
+#: src/Module/Security/TwoFactor/Recovery.php:41
#, php-format
msgid "Remaining recovery codes: %d"
msgstr ""
-#: src/Module/TwoFactor/Recovery.php:68
+#: src/Module/Security/TwoFactor/Recovery.php:64
msgid "Two-factor recovery"
msgstr ""
-#: src/Module/TwoFactor/Recovery.php:69
+#: src/Module/Security/TwoFactor/Recovery.php:65
msgid ""
"You can enter one of your one-time recovery codes in case you lost access "
"to your mobile device.
"
msgstr ""
-#: src/Module/TwoFactor/Recovery.php:71
+#: src/Module/Security/TwoFactor/Recovery.php:67
msgid "Please enter a recovery code"
msgstr ""
-#: src/Module/TwoFactor/Recovery.php:72
+#: src/Module/Security/TwoFactor/Recovery.php:68
msgid "Submit recovery code and complete login"
msgstr ""
-#: src/Module/Maintenance.php:29
+#: src/Module/Security/OpenID.php:35
+msgid "OpenID protocol error. No ID returned"
+msgstr ""
+
+#: src/Module/Security/OpenID.php:73
+msgid ""
+"Account not found. Please login to your existing account to add the OpenID "
+"to it."
+msgstr ""
+
+#: src/Module/Security/OpenID.php:75
+msgid ""
+"Account not found. Please register a new account or login to your existing "
+"account to add the OpenID to it."
+msgstr ""
+
+#: src/Module/Security/Logout.php:39
+msgid "Logged out."
+msgstr ""
+
+#: src/Module/Profile.php:171 mod/cal.php:127 mod/display.php:270
+msgid "Access to this profile has been restricted."
+msgstr ""
+
+#: src/Module/Maintenance.php:27
msgid "System down for maintenance"
msgstr ""
-#: src/Module/Bookmarklet.php:35
+#: src/Module/Bookmarklet.php:36
msgid "This page is missing a url parameter."
msgstr ""
-#: src/Module/Bookmarklet.php:57
+#: src/Module/Bookmarklet.php:58
msgid "The post was created"
msgstr ""
-#: src/Module/Photo.php:87
+#: src/Module/Photo.php:86
#, php-format
msgid "Invalid photo with id %s."
msgstr ""
-#: src/Module/Attach.php:36 src/Module/Attach.php:48
+#: src/Module/Attach.php:35 src/Module/Attach.php:47
msgid "Item was not found."
msgstr ""
@@ -4435,54 +7093,54 @@ msgstr ""
msgid "Site blocklist updated."
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:64
-#: src/Module/Admin/Blocklist/Server.php:89
+#: src/Module/Admin/Blocklist/Server.php:62
+#: src/Module/Admin/Blocklist/Server.php:87
msgid "Blocked server domain pattern"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:65
-#: src/Module/Admin/Blocklist/Server.php:90 src/Module/Friendica.php:60
+#: src/Module/Admin/Blocklist/Server.php:63
+#: src/Module/Admin/Blocklist/Server.php:88 src/Module/Friendica.php:59
msgid "Reason for the block"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:66
+#: src/Module/Admin/Blocklist/Server.php:64
msgid "Delete server domain pattern"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:66
+#: src/Module/Admin/Blocklist/Server.php:64
msgid "Check to delete this entry from the blocklist"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:73
-#: src/Module/Admin/Blocklist/Contact.php:61 src/Module/Admin/Tos.php:42
-#: src/Module/Admin/Addons/Details.php:99 src/Module/Admin/Addons/Index.php:50
-#: src/Module/Admin/Themes/Details.php:104 src/Module/Admin/Themes/Index.php:95
-#: src/Module/Admin/Users.php:277 src/Module/Admin/Site.php:566
-#: src/Module/Admin/Federation.php:187 src/Module/Admin/Queue.php:56
-#: src/Module/Admin/Item/Delete.php:46 src/Module/Admin/Logs/Settings.php:63
-#: src/Module/Admin/Logs/View.php:46 src/Module/Admin/Summary.php:192
+#: src/Module/Admin/Blocklist/Server.php:71
+#: src/Module/Admin/Blocklist/Contact.php:59 src/Module/Admin/Tos.php:42
+#: src/Module/Admin/Addons/Details.php:99 src/Module/Admin/Addons/Index.php:48
+#: src/Module/Admin/Themes/Details.php:104 src/Module/Admin/Themes/Index.php:93
+#: src/Module/Admin/Users.php:275 src/Module/Admin/Site.php:555
+#: src/Module/Admin/Federation.php:122 src/Module/Admin/Queue.php:56
+#: src/Module/Admin/Item/Delete.php:46 src/Module/Admin/Logs/Settings.php:61
+#: src/Module/Admin/Logs/View.php:46 src/Module/Admin/Summary.php:190
msgid "Administration"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:74
+#: src/Module/Admin/Blocklist/Server.php:72
msgid "Server Domain Pattern Blocklist"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:75
+#: src/Module/Admin/Blocklist/Server.php:73
msgid ""
"This page can be used to define a blacklist of server domain patterns from "
"the federated network that are not allowed to interact with your node. For "
"each domain pattern you should also provide the reason why you block it."
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:76
+#: src/Module/Admin/Blocklist/Server.php:74
msgid ""
"The list of blocked server domain patterns will be made publically available "
"on the /friendica page so that your users and "
"people investigating communication problems can find the reason easily."
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:77
+#: src/Module/Admin/Blocklist/Server.php:75
msgid ""
"The server domain pattern syntax is case-insensitive shell wildcard, "
"comprising the following special characters:
\n"
@@ -4493,45 +7151,45 @@ msgid ""
""
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:83
+#: src/Module/Admin/Blocklist/Server.php:81
msgid "Add new entry to block list"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:84
+#: src/Module/Admin/Blocklist/Server.php:82
msgid "Server Domain Pattern"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:84
+#: src/Module/Admin/Blocklist/Server.php:82
msgid ""
"The domain pattern of the new server to add to the block list. Do not "
"include the protocol."
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:85
+#: src/Module/Admin/Blocklist/Server.php:83
msgid "Block reason"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:85
+#: src/Module/Admin/Blocklist/Server.php:83
msgid "The reason why you blocked this server domain pattern."
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:86
+#: src/Module/Admin/Blocklist/Server.php:84
msgid "Add Entry"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:87
+#: src/Module/Admin/Blocklist/Server.php:85
msgid "Save changes to the blocklist"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:88
+#: src/Module/Admin/Blocklist/Server.php:86
msgid "Current Entries in the Blocklist"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:91
+#: src/Module/Admin/Blocklist/Server.php:89
msgid "Delete entry from blocklist"
msgstr ""
-#: src/Module/Admin/Blocklist/Server.php:94
+#: src/Module/Admin/Blocklist/Server.php:92
msgid "Delete entry from blocklist?"
msgstr ""
@@ -4553,79 +7211,79 @@ msgid_plural "%s contacts unblocked"
msgstr[0] ""
msgstr[1] ""
-#: src/Module/Admin/Blocklist/Contact.php:62
+#: src/Module/Admin/Blocklist/Contact.php:60
msgid "Remote Contact Blocklist"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:63
+#: src/Module/Admin/Blocklist/Contact.php:61
msgid ""
"This page allows you to prevent any message from a remote contact to reach "
"your node."
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:64
+#: src/Module/Admin/Blocklist/Contact.php:62
msgid "Block Remote Contact"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:65 src/Module/Admin/Users.php:280
+#: src/Module/Admin/Blocklist/Contact.php:63 src/Module/Admin/Users.php:278
msgid "select all"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:66
+#: src/Module/Admin/Blocklist/Contact.php:64
msgid "select none"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:68 src/Module/Admin/Users.php:291
-#: src/Module/Contact.php:606 src/Module/Contact.php:823
-#: src/Module/Contact.php:1082
+#: src/Module/Admin/Blocklist/Contact.php:66 src/Module/Admin/Users.php:289
+#: src/Module/Contact.php:605 src/Module/Contact.php:826
+#: src/Module/Contact.php:1085
msgid "Unblock"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:69
+#: src/Module/Admin/Blocklist/Contact.php:67
msgid "No remote contact is blocked from this node."
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:71
+#: src/Module/Admin/Blocklist/Contact.php:69
msgid "Blocked Remote Contacts"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:72
+#: src/Module/Admin/Blocklist/Contact.php:70
msgid "Block New Remote Contact"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:73
+#: src/Module/Admin/Blocklist/Contact.php:71
msgid "Photo"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:73 src/Module/Admin/Users.php:272
-#: src/Module/Admin/Users.php:283 src/Module/Admin/Users.php:297
-#: src/Module/Admin/Users.php:313 mod/crepair.php:159 mod/settings.php:672
-#: mod/settings.php:698
+#: src/Module/Admin/Blocklist/Contact.php:71 src/Module/Admin/Users.php:270
+#: src/Module/Admin/Users.php:281 src/Module/Admin/Users.php:295
+#: src/Module/Admin/Users.php:311 mod/crepair.php:159 mod/settings.php:666
+#: mod/settings.php:692
msgid "Name"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:73
+#: src/Module/Admin/Blocklist/Contact.php:71
msgid "Reason"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:81
+#: src/Module/Admin/Blocklist/Contact.php:79
#, php-format
msgid "%s total blocked contact"
msgid_plural "%s total blocked contacts"
msgstr[0] ""
msgstr[1] ""
-#: src/Module/Admin/Blocklist/Contact.php:83 src/Module/Contact.php:624
-#: mod/notifications.php:194 mod/notifications.php:286 mod/follow.php:179
-#: mod/unfollow.php:137
+#: src/Module/Admin/Blocklist/Contact.php:81 src/Module/Contact.php:623
+#: mod/notifications.php:166 mod/notifications.php:258 mod/follow.php:178
+#: mod/unfollow.php:136
msgid "Profile URL"
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:83
+#: src/Module/Admin/Blocklist/Contact.php:81
msgid "URL of the remote contact to block."
msgstr ""
-#: src/Module/Admin/Blocklist/Contact.php:84
+#: src/Module/Admin/Blocklist/Contact.php:82
msgid "Block Reason"
msgstr ""
@@ -4668,25 +7326,16 @@ msgid ""
"of sections should be [h2] and below."
msgstr ""
-#: src/Module/Admin/Tos.php:50 src/Module/Admin/Addons/Index.php:52
-#: src/Module/Admin/Themes/Index.php:97 src/Module/Admin/Site.php:568
-#: src/Module/Admin/Features.php:69 src/Module/Admin/Logs/Settings.php:65
-#: src/Module/Settings/Delegation.php:158 mod/settings.php:670
-#: mod/settings.php:777 mod/settings.php:875 mod/settings.php:954
-#: mod/settings.php:1179
-msgid "Save Settings"
-msgstr ""
-
#: src/Module/Admin/Addons/Details.php:51
msgid "Addon not found."
msgstr ""
-#: src/Module/Admin/Addons/Details.php:62 src/Module/Admin/Addons/Index.php:32
+#: src/Module/Admin/Addons/Details.php:62 src/Module/Admin/Addons/Index.php:30
#, php-format
msgid "Addon %s disabled."
msgstr ""
-#: src/Module/Admin/Addons/Details.php:65 src/Module/Admin/Addons/Index.php:34
+#: src/Module/Admin/Addons/Details.php:65 src/Module/Admin/Addons/Index.php:32
#, php-format
msgid "Addon %s enabled."
msgstr ""
@@ -4716,16 +7365,16 @@ msgstr ""
msgid "Maintainer: "
msgstr ""
-#: src/Module/Admin/Addons/Index.php:36
+#: src/Module/Admin/Addons/Index.php:34
#, php-format
msgid "Addon %s failed to install."
msgstr ""
-#: src/Module/Admin/Addons/Index.php:53
+#: src/Module/Admin/Addons/Index.php:51
msgid "Reload active addons"
msgstr ""
-#: src/Module/Admin/Addons/Index.php:58
+#: src/Module/Admin/Addons/Index.php:56
#, php-format
msgid ""
"There are currently no addons available on your node. You can find the "
@@ -4741,17 +7390,17 @@ msgstr ""
msgid "Unknown theme."
msgstr ""
-#: src/Module/Admin/Themes/Details.php:71 src/Module/Admin/Themes/Index.php:49
+#: src/Module/Admin/Themes/Details.php:71 src/Module/Admin/Themes/Index.php:47
#, php-format
msgid "Theme %s disabled."
msgstr ""
-#: src/Module/Admin/Themes/Details.php:73 src/Module/Admin/Themes/Index.php:51
+#: src/Module/Admin/Themes/Details.php:73 src/Module/Admin/Themes/Index.php:49
#, php-format
msgid "Theme %s successfully enabled."
msgstr ""
-#: src/Module/Admin/Themes/Details.php:75 src/Module/Admin/Themes/Index.php:53
+#: src/Module/Admin/Themes/Details.php:75 src/Module/Admin/Themes/Index.php:51
#, php-format
msgid "Theme %s failed to install."
msgstr ""
@@ -4760,24 +7409,24 @@ msgstr ""
msgid "Screenshot"
msgstr ""
-#: src/Module/Admin/Themes/Index.php:98
+#: src/Module/Admin/Themes/Index.php:96
msgid "Reload active themes"
msgstr ""
-#: src/Module/Admin/Themes/Index.php:103
+#: src/Module/Admin/Themes/Index.php:101
#, php-format
msgid "No themes found on the system. They should be placed in %1$s"
msgstr ""
-#: src/Module/Admin/Themes/Index.php:104
+#: src/Module/Admin/Themes/Index.php:102
msgid "[Experimental]"
msgstr ""
-#: src/Module/Admin/Themes/Index.php:105
+#: src/Module/Admin/Themes/Index.php:103
msgid "[Unsupported]"
msgstr ""
-#: src/Module/Admin/Users.php:48
+#: src/Module/Admin/Users.php:46
#, php-format
msgid ""
"\n"
@@ -4785,7 +7434,7 @@ msgid ""
"\t\t\t\tthe administrator of %2$s has set up an account for you."
msgstr ""
-#: src/Module/Admin/Users.php:51
+#: src/Module/Admin/Users.php:49
#, php-format
msgid ""
"\n"
@@ -4824,175 +7473,175 @@ msgid ""
"\t\t\tThank you and welcome to %4$s."
msgstr ""
-#: src/Module/Admin/Users.php:96
+#: src/Module/Admin/Users.php:94
#, php-format
msgid "%s user blocked"
msgid_plural "%s users blocked"
msgstr[0] ""
msgstr[1] ""
-#: src/Module/Admin/Users.php:102
+#: src/Module/Admin/Users.php:100
#, php-format
msgid "%s user unblocked"
msgid_plural "%s users unblocked"
msgstr[0] ""
msgstr[1] ""
-#: src/Module/Admin/Users.php:110 src/Module/Admin/Users.php:160
+#: src/Module/Admin/Users.php:108 src/Module/Admin/Users.php:158
msgid "You can't remove yourself"
msgstr ""
-#: src/Module/Admin/Users.php:114
+#: src/Module/Admin/Users.php:112
#, php-format
msgid "%s user deleted"
msgid_plural "%s users deleted"
msgstr[0] ""
msgstr[1] ""
-#: src/Module/Admin/Users.php:158
+#: src/Module/Admin/Users.php:156
#, php-format
msgid "User \"%s\" deleted"
msgstr ""
-#: src/Module/Admin/Users.php:167
+#: src/Module/Admin/Users.php:165
#, php-format
msgid "User \"%s\" blocked"
msgstr ""
-#: src/Module/Admin/Users.php:173
+#: src/Module/Admin/Users.php:171
#, php-format
msgid "User \"%s\" unblocked"
msgstr ""
-#: src/Module/Admin/Users.php:222 mod/settings.php:1054
+#: src/Module/Admin/Users.php:220 mod/settings.php:1048
msgid "Normal Account Page"
msgstr ""
-#: src/Module/Admin/Users.php:223 mod/settings.php:1058
+#: src/Module/Admin/Users.php:221 mod/settings.php:1052
msgid "Soapbox Page"
msgstr ""
-#: src/Module/Admin/Users.php:224 mod/settings.php:1062
+#: src/Module/Admin/Users.php:222 mod/settings.php:1056
msgid "Public Forum"
msgstr ""
-#: src/Module/Admin/Users.php:225 mod/settings.php:1066
+#: src/Module/Admin/Users.php:223 mod/settings.php:1060
msgid "Automatic Friend Page"
msgstr ""
-#: src/Module/Admin/Users.php:226
+#: src/Module/Admin/Users.php:224
msgid "Private Forum"
msgstr ""
-#: src/Module/Admin/Users.php:229 mod/settings.php:1038
+#: src/Module/Admin/Users.php:227 mod/settings.php:1032
msgid "Personal Page"
msgstr ""
-#: src/Module/Admin/Users.php:230 mod/settings.php:1042
+#: src/Module/Admin/Users.php:228 mod/settings.php:1036
msgid "Organisation Page"
msgstr ""
-#: src/Module/Admin/Users.php:231 mod/settings.php:1046
+#: src/Module/Admin/Users.php:229 mod/settings.php:1040
msgid "News Page"
msgstr ""
-#: src/Module/Admin/Users.php:232 mod/settings.php:1050
+#: src/Module/Admin/Users.php:230 mod/settings.php:1044
msgid "Community Forum"
msgstr ""
-#: src/Module/Admin/Users.php:233
+#: src/Module/Admin/Users.php:231
msgid "Relay"
msgstr ""
-#: src/Module/Admin/Users.php:272 src/Module/Admin/Users.php:297
+#: src/Module/Admin/Users.php:270 src/Module/Admin/Users.php:295
msgid "Register date"
msgstr ""
-#: src/Module/Admin/Users.php:272 src/Module/Admin/Users.php:297
+#: src/Module/Admin/Users.php:270 src/Module/Admin/Users.php:295
msgid "Last login"
msgstr ""
-#: src/Module/Admin/Users.php:272 src/Module/Admin/Users.php:297
+#: src/Module/Admin/Users.php:270 src/Module/Admin/Users.php:295
msgid "Last item"
msgstr ""
-#: src/Module/Admin/Users.php:272
+#: src/Module/Admin/Users.php:270
msgid "Type"
msgstr ""
-#: src/Module/Admin/Users.php:279
+#: src/Module/Admin/Users.php:277
msgid "Add User"
msgstr ""
-#: src/Module/Admin/Users.php:281
+#: src/Module/Admin/Users.php:279
msgid "User registrations waiting for confirm"
msgstr ""
-#: src/Module/Admin/Users.php:282
+#: src/Module/Admin/Users.php:280
msgid "User waiting for permanent deletion"
msgstr ""
-#: src/Module/Admin/Users.php:283
+#: src/Module/Admin/Users.php:281
msgid "Request date"
msgstr ""
-#: src/Module/Admin/Users.php:284
+#: src/Module/Admin/Users.php:282
msgid "No registrations."
msgstr ""
-#: src/Module/Admin/Users.php:285
+#: src/Module/Admin/Users.php:283
msgid "Note from the user"
msgstr ""
-#: src/Module/Admin/Users.php:287
+#: src/Module/Admin/Users.php:285
msgid "Deny"
msgstr ""
-#: src/Module/Admin/Users.php:290
+#: src/Module/Admin/Users.php:288
msgid "User blocked"
msgstr ""
-#: src/Module/Admin/Users.php:292
+#: src/Module/Admin/Users.php:290
msgid "Site admin"
msgstr ""
-#: src/Module/Admin/Users.php:293
+#: src/Module/Admin/Users.php:291
msgid "Account expired"
msgstr ""
-#: src/Module/Admin/Users.php:296
+#: src/Module/Admin/Users.php:294
msgid "New User"
msgstr ""
-#: src/Module/Admin/Users.php:297
+#: src/Module/Admin/Users.php:295
msgid "Permanent deletion"
msgstr ""
-#: src/Module/Admin/Users.php:302
+#: src/Module/Admin/Users.php:300
msgid ""
"Selected users will be deleted!\\n\\nEverything these users had posted on "
"this site will be permanently deleted!\\n\\nAre you sure?"
msgstr ""
-#: src/Module/Admin/Users.php:303
+#: src/Module/Admin/Users.php:301
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 ""
-#: src/Module/Admin/Users.php:313
+#: src/Module/Admin/Users.php:311
msgid "Name of the new user."
msgstr ""
-#: src/Module/Admin/Users.php:314
+#: src/Module/Admin/Users.php:312
msgid "Nickname"
msgstr ""
-#: src/Module/Admin/Users.php:314
+#: src/Module/Admin/Users.php:312
msgid "Nickname of the new user."
msgstr ""
-#: src/Module/Admin/Users.php:315
+#: src/Module/Admin/Users.php:313
msgid "Email address of the new user."
msgstr ""
@@ -5000,244 +7649,234 @@ msgstr ""
msgid "Can not parse base url. Must have at least ://"
msgstr ""
-#: src/Module/Admin/Site.php:234
+#: src/Module/Admin/Site.php:230
msgid "Invalid storage backend setting value."
msgstr ""
-#: src/Module/Admin/Site.php:410
+#: src/Module/Admin/Site.php:405
msgid "Site settings updated."
msgstr ""
-#: src/Module/Admin/Site.php:433 mod/settings.php:898
+#: src/Module/Admin/Site.php:426 mod/settings.php:892
msgid "No special theme for mobile devices"
msgstr ""
-#: src/Module/Admin/Site.php:450 mod/settings.php:908
+#: src/Module/Admin/Site.php:443 mod/settings.php:902
#, php-format
msgid "%s - (Experimental)"
msgstr ""
-#: src/Module/Admin/Site.php:462
+#: src/Module/Admin/Site.php:455
msgid "No community page for local users"
msgstr ""
-#: src/Module/Admin/Site.php:463
+#: src/Module/Admin/Site.php:456
msgid "No community page"
msgstr ""
-#: src/Module/Admin/Site.php:464
+#: src/Module/Admin/Site.php:457
msgid "Public postings from users of this site"
msgstr ""
-#: src/Module/Admin/Site.php:465
+#: src/Module/Admin/Site.php:458
msgid "Public postings from the federated network"
msgstr ""
-#: src/Module/Admin/Site.php:466
+#: src/Module/Admin/Site.php:459
msgid "Public postings from local users and the federated network"
msgstr ""
-#: src/Module/Admin/Site.php:470 src/Module/Admin/Site.php:665
-#: src/Module/Admin/Site.php:675 src/Module/Settings/TwoFactor/Index.php:97
-#: src/Module/Contact.php:546
-msgid "Disabled"
-msgstr ""
-
-#: src/Module/Admin/Site.php:472
+#: src/Module/Admin/Site.php:465
msgid "Users, Global Contacts"
msgstr ""
-#: src/Module/Admin/Site.php:473
+#: src/Module/Admin/Site.php:466
msgid "Users, Global Contacts/fallback"
msgstr ""
-#: src/Module/Admin/Site.php:477
+#: src/Module/Admin/Site.php:470
msgid "One month"
msgstr ""
-#: src/Module/Admin/Site.php:478
+#: src/Module/Admin/Site.php:471
msgid "Three months"
msgstr ""
-#: src/Module/Admin/Site.php:479
+#: src/Module/Admin/Site.php:472
msgid "Half a year"
msgstr ""
-#: src/Module/Admin/Site.php:480
+#: src/Module/Admin/Site.php:473
msgid "One year"
msgstr ""
-#: src/Module/Admin/Site.php:486
+#: src/Module/Admin/Site.php:479
msgid "Multi user instance"
msgstr ""
-#: src/Module/Admin/Site.php:508
+#: src/Module/Admin/Site.php:501
msgid "Closed"
msgstr ""
-#: src/Module/Admin/Site.php:509
+#: src/Module/Admin/Site.php:502
msgid "Requires approval"
msgstr ""
-#: src/Module/Admin/Site.php:510
+#: src/Module/Admin/Site.php:503
msgid "Open"
msgstr ""
-#: src/Module/Admin/Site.php:520
+#: src/Module/Admin/Site.php:513
msgid "Don't check"
msgstr ""
-#: src/Module/Admin/Site.php:521
+#: src/Module/Admin/Site.php:514
msgid "check the stable version"
msgstr ""
-#: src/Module/Admin/Site.php:522
+#: src/Module/Admin/Site.php:515
msgid "check the development version"
msgstr ""
-#: src/Module/Admin/Site.php:542
+#: src/Module/Admin/Site.php:532
msgid "Database (legacy)"
msgstr ""
-#: src/Module/Admin/Site.php:569
+#: src/Module/Admin/Site.php:558
msgid "Republish users to directory"
msgstr ""
-#: src/Module/Admin/Site.php:570 src/Module/Register.php:115
+#: src/Module/Admin/Site.php:559 src/Module/Register.php:121
msgid "Registration"
msgstr ""
-#: src/Module/Admin/Site.php:571
+#: src/Module/Admin/Site.php:560
msgid "File upload"
msgstr ""
-#: src/Module/Admin/Site.php:572
+#: src/Module/Admin/Site.php:561
msgid "Policies"
msgstr ""
-#: src/Module/Admin/Site.php:574
+#: src/Module/Admin/Site.php:563
msgid "Auto Discovered Contact Directory"
msgstr ""
-#: src/Module/Admin/Site.php:575
+#: src/Module/Admin/Site.php:564
msgid "Performance"
msgstr ""
-#: src/Module/Admin/Site.php:576
+#: src/Module/Admin/Site.php:565
msgid "Worker"
msgstr ""
-#: src/Module/Admin/Site.php:577
+#: src/Module/Admin/Site.php:566
msgid "Message Relay"
msgstr ""
-#: src/Module/Admin/Site.php:578
+#: src/Module/Admin/Site.php:567
msgid "Relocate Instance"
msgstr ""
-#: src/Module/Admin/Site.php:579
+#: src/Module/Admin/Site.php:568
msgid "Warning! Advanced function. Could make this server unreachable."
msgstr ""
-#: src/Module/Admin/Site.php:583
-msgid "Site name"
-msgstr ""
-
-#: src/Module/Admin/Site.php:584
+#: src/Module/Admin/Site.php:573
msgid "Sender Email"
msgstr ""
-#: src/Module/Admin/Site.php:584
+#: src/Module/Admin/Site.php:573
msgid ""
"The email address your server shall use to send notification emails from."
msgstr ""
-#: src/Module/Admin/Site.php:585
+#: src/Module/Admin/Site.php:574
msgid "Banner/Logo"
msgstr ""
-#: src/Module/Admin/Site.php:586
+#: src/Module/Admin/Site.php:575
msgid "Shortcut icon"
msgstr ""
-#: src/Module/Admin/Site.php:586
+#: src/Module/Admin/Site.php:575
msgid "Link to an icon that will be used for browsers."
msgstr ""
-#: src/Module/Admin/Site.php:587
+#: src/Module/Admin/Site.php:576
msgid "Touch icon"
msgstr ""
-#: src/Module/Admin/Site.php:587
+#: src/Module/Admin/Site.php:576
msgid "Link to an icon that will be used for tablets and mobiles."
msgstr ""
-#: src/Module/Admin/Site.php:588
+#: src/Module/Admin/Site.php:577
msgid "Additional Info"
msgstr ""
-#: src/Module/Admin/Site.php:588
+#: src/Module/Admin/Site.php:577
#, php-format
msgid ""
"For public servers: you can add additional information here that will be "
"listed at %s/servers."
msgstr ""
-#: src/Module/Admin/Site.php:589
+#: src/Module/Admin/Site.php:578
msgid "System language"
msgstr ""
-#: src/Module/Admin/Site.php:590
+#: src/Module/Admin/Site.php:579
msgid "System theme"
msgstr ""
-#: src/Module/Admin/Site.php:590
+#: src/Module/Admin/Site.php:579
msgid ""
"Default system theme - may be over-ridden by user profiles - Change default theme settings "
msgstr ""
-#: src/Module/Admin/Site.php:591
+#: src/Module/Admin/Site.php:580
msgid "Mobile system theme"
msgstr ""
-#: src/Module/Admin/Site.php:591
+#: src/Module/Admin/Site.php:580
msgid "Theme for mobile devices"
msgstr ""
-#: src/Module/Admin/Site.php:593
+#: src/Module/Admin/Site.php:582
msgid "Force SSL"
msgstr ""
-#: src/Module/Admin/Site.php:593
+#: src/Module/Admin/Site.php:582
msgid ""
"Force all Non-SSL requests to SSL - Attention: on some systems it could lead "
"to endless loops."
msgstr ""
-#: src/Module/Admin/Site.php:594
+#: src/Module/Admin/Site.php:583
msgid "Hide help entry from navigation menu"
msgstr ""
-#: src/Module/Admin/Site.php:594
+#: src/Module/Admin/Site.php:583
msgid ""
"Hides the menu entry for the Help pages from the navigation menu. You can "
"still access it calling /help directly."
msgstr ""
-#: src/Module/Admin/Site.php:595
+#: src/Module/Admin/Site.php:584
msgid "Single user instance"
msgstr ""
-#: src/Module/Admin/Site.php:595
+#: src/Module/Admin/Site.php:584
msgid "Make this instance multi-user or single-user for the named user"
msgstr ""
-#: src/Module/Admin/Site.php:597
+#: src/Module/Admin/Site.php:586
msgid "File storage backend"
msgstr ""
-#: src/Module/Admin/Site.php:597
+#: src/Module/Admin/Site.php:586
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 "
@@ -5246,201 +7885,201 @@ msgid ""
"for more information about the choices and the moving procedure."
msgstr ""
-#: src/Module/Admin/Site.php:599
+#: src/Module/Admin/Site.php:588
msgid "Maximum image size"
msgstr ""
-#: src/Module/Admin/Site.php:599
+#: src/Module/Admin/Site.php:588
msgid ""
"Maximum size in bytes of uploaded images. Default is 0, which means no "
"limits."
msgstr ""
-#: src/Module/Admin/Site.php:600
+#: src/Module/Admin/Site.php:589
msgid "Maximum image length"
msgstr ""
-#: src/Module/Admin/Site.php:600
+#: src/Module/Admin/Site.php:589
msgid ""
"Maximum length in pixels of the longest side of uploaded images. Default is "
"-1, which means no limits."
msgstr ""
-#: src/Module/Admin/Site.php:601
+#: src/Module/Admin/Site.php:590
msgid "JPEG image quality"
msgstr ""
-#: src/Module/Admin/Site.php:601
+#: src/Module/Admin/Site.php:590
msgid ""
"Uploaded JPEGS will be saved at this quality setting [0-100]. Default is "
"100, which is full quality."
msgstr ""
-#: src/Module/Admin/Site.php:603
+#: src/Module/Admin/Site.php:592
msgid "Register policy"
msgstr ""
-#: src/Module/Admin/Site.php:604
+#: src/Module/Admin/Site.php:593
msgid "Maximum Daily Registrations"
msgstr ""
-#: src/Module/Admin/Site.php:604
+#: src/Module/Admin/Site.php:593
msgid ""
"If registration is permitted above, this sets the maximum number of new user "
"registrations to accept per day. If register is set to closed, this setting "
"has no effect."
msgstr ""
-#: src/Module/Admin/Site.php:605
+#: src/Module/Admin/Site.php:594
msgid "Register text"
msgstr ""
-#: src/Module/Admin/Site.php:605
+#: src/Module/Admin/Site.php:594
msgid ""
"Will be displayed prominently on the registration page. You can use BBCode "
"here."
msgstr ""
-#: src/Module/Admin/Site.php:606
+#: src/Module/Admin/Site.php:595
msgid "Forbidden Nicknames"
msgstr ""
-#: src/Module/Admin/Site.php:606
+#: src/Module/Admin/Site.php:595
msgid ""
"Comma separated list of nicknames that are forbidden from registration. "
"Preset is a list of role names according RFC 2142."
msgstr ""
-#: src/Module/Admin/Site.php:607
+#: src/Module/Admin/Site.php:596
msgid "Accounts abandoned after x days"
msgstr ""
-#: src/Module/Admin/Site.php:607
+#: src/Module/Admin/Site.php:596
msgid ""
"Will not waste system resources polling external sites for abandonded "
"accounts. Enter 0 for no time limit."
msgstr ""
-#: src/Module/Admin/Site.php:608
+#: src/Module/Admin/Site.php:597
msgid "Allowed friend domains"
msgstr ""
-#: src/Module/Admin/Site.php:608
+#: src/Module/Admin/Site.php:597
msgid ""
"Comma separated list of domains which are allowed to establish friendships "
"with this site. Wildcards are accepted. Empty to allow any domains"
msgstr ""
-#: src/Module/Admin/Site.php:609
+#: src/Module/Admin/Site.php:598
msgid "Allowed email domains"
msgstr ""
-#: src/Module/Admin/Site.php:609
+#: src/Module/Admin/Site.php:598
msgid ""
"Comma separated list of domains which are allowed in email addresses for "
"registrations to this site. Wildcards are accepted. Empty to allow any "
"domains"
msgstr ""
-#: src/Module/Admin/Site.php:610
+#: src/Module/Admin/Site.php:599
msgid "No OEmbed rich content"
msgstr ""
-#: src/Module/Admin/Site.php:610
+#: src/Module/Admin/Site.php:599
msgid ""
"Don't show the rich content (e.g. embedded PDF), except from the domains "
"listed below."
msgstr ""
-#: src/Module/Admin/Site.php:611
+#: src/Module/Admin/Site.php:600
msgid "Allowed OEmbed domains"
msgstr ""
-#: src/Module/Admin/Site.php:611
+#: src/Module/Admin/Site.php:600
msgid ""
"Comma separated list of domains which oembed content is allowed to be "
"displayed. Wildcards are accepted."
msgstr ""
-#: src/Module/Admin/Site.php:612
+#: src/Module/Admin/Site.php:601
msgid "Block public"
msgstr ""
-#: src/Module/Admin/Site.php:612
+#: src/Module/Admin/Site.php:601
msgid ""
"Check to block public access to all otherwise public personal pages on this "
"site unless you are currently logged in."
msgstr ""
-#: src/Module/Admin/Site.php:613
+#: src/Module/Admin/Site.php:602
msgid "Force publish"
msgstr ""
-#: src/Module/Admin/Site.php:613
+#: src/Module/Admin/Site.php:602
msgid ""
"Check to force all profiles on this site to be listed in the site directory."
msgstr ""
-#: src/Module/Admin/Site.php:613
+#: src/Module/Admin/Site.php:602
msgid "Enabling this may violate privacy laws like the GDPR"
msgstr ""
-#: src/Module/Admin/Site.php:614
+#: src/Module/Admin/Site.php:603
msgid "Global directory URL"
msgstr ""
-#: src/Module/Admin/Site.php:614
+#: src/Module/Admin/Site.php:603
msgid ""
"URL to the global directory. If this is not set, the global directory is "
"completely unavailable to the application."
msgstr ""
-#: src/Module/Admin/Site.php:615
+#: src/Module/Admin/Site.php:604
msgid "Private posts by default for new users"
msgstr ""
-#: src/Module/Admin/Site.php:615
+#: src/Module/Admin/Site.php:604
msgid ""
"Set default post permissions for all new members to the default privacy "
"group rather than public."
msgstr ""
-#: src/Module/Admin/Site.php:616
+#: src/Module/Admin/Site.php:605
msgid "Don't include post content in email notifications"
msgstr ""
-#: src/Module/Admin/Site.php:616
+#: src/Module/Admin/Site.php:605
msgid ""
"Don't include the content of a post/comment/private message/etc. in the "
"email notifications that are sent out from this site, as a privacy measure."
msgstr ""
-#: src/Module/Admin/Site.php:617
+#: src/Module/Admin/Site.php:606
msgid "Disallow public access to addons listed in the apps menu."
msgstr ""
-#: src/Module/Admin/Site.php:617
+#: src/Module/Admin/Site.php:606
msgid ""
"Checking this box will restrict addons listed in the apps menu to members "
"only."
msgstr ""
-#: src/Module/Admin/Site.php:618
+#: src/Module/Admin/Site.php:607
msgid "Don't embed private images in posts"
msgstr ""
-#: src/Module/Admin/Site.php:618
+#: src/Module/Admin/Site.php:607
msgid ""
"Don't replace locally-hosted private photos in posts with an embedded copy "
"of the image. This means that contacts who receive posts containing private "
"photos will have to authenticate and load each image, which may take a while."
msgstr ""
-#: src/Module/Admin/Site.php:619
+#: src/Module/Admin/Site.php:608
msgid "Explicit Content"
msgstr ""
-#: src/Module/Admin/Site.php:619
+#: src/Module/Admin/Site.php:608
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 "
@@ -5449,200 +8088,200 @@ msgid ""
"will be shown at the user registration page."
msgstr ""
-#: src/Module/Admin/Site.php:620
+#: src/Module/Admin/Site.php:609
msgid "Allow Users to set remote_self"
msgstr ""
-#: src/Module/Admin/Site.php:620
+#: src/Module/Admin/Site.php:609
msgid ""
"With checking this, every user is allowed to mark every contact as a "
"remote_self in the repair contact dialog. Setting this flag on a contact "
"causes mirroring every posting of that contact in the users stream."
msgstr ""
-#: src/Module/Admin/Site.php:621
+#: src/Module/Admin/Site.php:610
msgid "Block multiple registrations"
msgstr ""
-#: src/Module/Admin/Site.php:621
+#: src/Module/Admin/Site.php:610
msgid "Disallow users to register additional accounts for use as pages."
msgstr ""
-#: src/Module/Admin/Site.php:622
+#: src/Module/Admin/Site.php:611
msgid "Disable OpenID"
msgstr ""
-#: src/Module/Admin/Site.php:622
+#: src/Module/Admin/Site.php:611
msgid "Disable OpenID support for registration and logins."
msgstr ""
-#: src/Module/Admin/Site.php:623
+#: src/Module/Admin/Site.php:612
msgid "No Fullname check"
msgstr ""
-#: src/Module/Admin/Site.php:623
+#: src/Module/Admin/Site.php:612
msgid ""
"Allow users to register without a space between the first name and the last "
"name in their full name."
msgstr ""
-#: src/Module/Admin/Site.php:624
+#: src/Module/Admin/Site.php:613
msgid "Community pages for visitors"
msgstr ""
-#: src/Module/Admin/Site.php:624
+#: src/Module/Admin/Site.php:613
msgid ""
"Which community pages should be available for visitors. Local users always "
"see both pages."
msgstr ""
-#: src/Module/Admin/Site.php:625
+#: src/Module/Admin/Site.php:614
msgid "Posts per user on community page"
msgstr ""
-#: src/Module/Admin/Site.php:625
+#: src/Module/Admin/Site.php:614
msgid ""
"The maximum number of posts per user on the community page. (Not valid for "
"\"Global Community\")"
msgstr ""
-#: src/Module/Admin/Site.php:626
+#: src/Module/Admin/Site.php:615
msgid "Disable OStatus support"
msgstr ""
-#: src/Module/Admin/Site.php:626
+#: src/Module/Admin/Site.php:615
msgid ""
"Disable built-in OStatus (StatusNet, GNU Social etc.) compatibility. All "
"communications in OStatus are public, so privacy warnings will be "
"occasionally displayed."
msgstr ""
-#: src/Module/Admin/Site.php:627
+#: src/Module/Admin/Site.php:616
msgid "OStatus support can only be enabled if threading is enabled."
msgstr ""
-#: src/Module/Admin/Site.php:629
+#: src/Module/Admin/Site.php:618
msgid ""
"Diaspora support can't be enabled because Friendica was installed into a sub "
"directory."
msgstr ""
-#: src/Module/Admin/Site.php:630
+#: src/Module/Admin/Site.php:619
msgid "Enable Diaspora support"
msgstr ""
-#: src/Module/Admin/Site.php:630
+#: src/Module/Admin/Site.php:619
msgid "Provide built-in Diaspora network compatibility."
msgstr ""
-#: src/Module/Admin/Site.php:631
+#: src/Module/Admin/Site.php:620
msgid "Only allow Friendica contacts"
msgstr ""
-#: src/Module/Admin/Site.php:631
+#: src/Module/Admin/Site.php:620
msgid ""
"All contacts must use Friendica protocols. All other built-in communication "
"protocols disabled."
msgstr ""
-#: src/Module/Admin/Site.php:632
+#: src/Module/Admin/Site.php:621
msgid "Verify SSL"
msgstr ""
-#: src/Module/Admin/Site.php:632
+#: src/Module/Admin/Site.php:621
msgid ""
"If you wish, you can turn on strict certificate checking. This will mean you "
"cannot connect (at all) to self-signed SSL sites."
msgstr ""
-#: src/Module/Admin/Site.php:633
+#: src/Module/Admin/Site.php:622
msgid "Proxy user"
msgstr ""
-#: src/Module/Admin/Site.php:634
+#: src/Module/Admin/Site.php:623
msgid "Proxy URL"
msgstr ""
-#: src/Module/Admin/Site.php:635
+#: src/Module/Admin/Site.php:624
msgid "Network timeout"
msgstr ""
-#: src/Module/Admin/Site.php:635
+#: src/Module/Admin/Site.php:624
msgid "Value is in seconds. Set to 0 for unlimited (not recommended)."
msgstr ""
-#: src/Module/Admin/Site.php:636
+#: src/Module/Admin/Site.php:625
msgid "Maximum Load Average"
msgstr ""
-#: src/Module/Admin/Site.php:636
+#: src/Module/Admin/Site.php:625
#, php-format
msgid ""
"Maximum system load before delivery and poll processes are deferred - "
"default %d."
msgstr ""
-#: src/Module/Admin/Site.php:637
+#: src/Module/Admin/Site.php:626
msgid "Maximum Load Average (Frontend)"
msgstr ""
-#: src/Module/Admin/Site.php:637
+#: src/Module/Admin/Site.php:626
msgid "Maximum system load before the frontend quits service - default 50."
msgstr ""
-#: src/Module/Admin/Site.php:638
+#: src/Module/Admin/Site.php:627
msgid "Minimal Memory"
msgstr ""
-#: src/Module/Admin/Site.php:638
+#: src/Module/Admin/Site.php:627
msgid ""
"Minimal free memory in MB for the worker. Needs access to /proc/meminfo - "
"default 0 (deactivated)."
msgstr ""
-#: src/Module/Admin/Site.php:639
+#: src/Module/Admin/Site.php:628
msgid "Maximum table size for optimization"
msgstr ""
-#: src/Module/Admin/Site.php:639
+#: src/Module/Admin/Site.php:628
msgid ""
"Maximum table size (in MB) for the automatic optimization. Enter -1 to "
"disable it."
msgstr ""
-#: src/Module/Admin/Site.php:640
+#: src/Module/Admin/Site.php:629
msgid "Minimum level of fragmentation"
msgstr ""
-#: src/Module/Admin/Site.php:640
+#: src/Module/Admin/Site.php:629
msgid ""
"Minimum fragmenation level to start the automatic optimization - default "
"value is 30%."
msgstr ""
-#: src/Module/Admin/Site.php:642
+#: src/Module/Admin/Site.php:631
msgid "Periodical check of global contacts"
msgstr ""
-#: src/Module/Admin/Site.php:642
+#: src/Module/Admin/Site.php:631
msgid ""
"If enabled, the global contacts are checked periodically for missing or "
"outdated data and the vitality of the contacts and servers."
msgstr ""
-#: src/Module/Admin/Site.php:643
+#: src/Module/Admin/Site.php:632
msgid "Days between requery"
msgstr ""
-#: src/Module/Admin/Site.php:643
+#: src/Module/Admin/Site.php:632
msgid "Number of days after which a server is requeried for his contacts."
msgstr ""
-#: src/Module/Admin/Site.php:644
+#: src/Module/Admin/Site.php:633
msgid "Discover contacts from other servers"
msgstr ""
-#: src/Module/Admin/Site.php:644
+#: src/Module/Admin/Site.php:633
msgid ""
"Periodically query other servers for contacts. You can choose between \"Users"
"\": the users on the remote system, \"Global Contacts\": active contacts "
@@ -5652,32 +8291,32 @@ msgid ""
"Global Contacts\"."
msgstr ""
-#: src/Module/Admin/Site.php:645
+#: src/Module/Admin/Site.php:634
msgid "Timeframe for fetching global contacts"
msgstr ""
-#: src/Module/Admin/Site.php:645
+#: src/Module/Admin/Site.php:634
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 ""
-#: src/Module/Admin/Site.php:646
+#: src/Module/Admin/Site.php:635
msgid "Search the local directory"
msgstr ""
-#: src/Module/Admin/Site.php:646
+#: src/Module/Admin/Site.php:635
msgid ""
"Search the local directory instead of the global directory. When searching "
"locally, every search will be executed on the global directory in the "
"background. This improves the search results when the search is repeated."
msgstr ""
-#: src/Module/Admin/Site.php:648
+#: src/Module/Admin/Site.php:637
msgid "Publish server information"
msgstr ""
-#: src/Module/Admin/Site.php:648
+#: src/Module/Admin/Site.php:637
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 "
@@ -5685,50 +8324,50 @@ msgid ""
"href=\"http://the-federation.info/\">the-federation.info for details."
msgstr ""
-#: src/Module/Admin/Site.php:650
+#: src/Module/Admin/Site.php:639
msgid "Check upstream version"
msgstr ""
-#: src/Module/Admin/Site.php:650
+#: src/Module/Admin/Site.php:639
msgid ""
"Enables checking for new Friendica versions at github. If there is a new "
"version, you will be informed in the admin panel overview."
msgstr ""
-#: src/Module/Admin/Site.php:651
+#: src/Module/Admin/Site.php:640
msgid "Suppress Tags"
msgstr ""
-#: src/Module/Admin/Site.php:651
+#: src/Module/Admin/Site.php:640
msgid "Suppress showing a list of hashtags at the end of the posting."
msgstr ""
-#: src/Module/Admin/Site.php:652
+#: src/Module/Admin/Site.php:641
msgid "Clean database"
msgstr ""
-#: src/Module/Admin/Site.php:652
+#: src/Module/Admin/Site.php:641
msgid ""
"Remove old remote items, orphaned database records and old content from some "
"other helper tables."
msgstr ""
-#: src/Module/Admin/Site.php:653
+#: src/Module/Admin/Site.php:642
msgid "Lifespan of remote items"
msgstr ""
-#: src/Module/Admin/Site.php:653
+#: src/Module/Admin/Site.php:642
msgid ""
"When the database cleanup is enabled, this defines the days after which "
"remote items will be deleted. Own items, and marked or filed items are "
"always kept. 0 disables this behaviour."
msgstr ""
-#: src/Module/Admin/Site.php:654
+#: src/Module/Admin/Site.php:643
msgid "Lifespan of unclaimed items"
msgstr ""
-#: src/Module/Admin/Site.php:654
+#: src/Module/Admin/Site.php:643
msgid ""
"When the database cleanup is enabled, this defines the days after which "
"unclaimed remote items (mostly content from the relay) will be deleted. "
@@ -5736,130 +8375,126 @@ msgid ""
"items if set to 0."
msgstr ""
-#: src/Module/Admin/Site.php:655
+#: src/Module/Admin/Site.php:644
msgid "Lifespan of raw conversation data"
msgstr ""
-#: src/Module/Admin/Site.php:655
+#: src/Module/Admin/Site.php:644
msgid ""
"The conversation data is used for ActivityPub and OStatus, as well as for "
"debug purposes. It should be safe to remove it after 14 days, default is 90 "
"days."
msgstr ""
-#: src/Module/Admin/Site.php:656
+#: src/Module/Admin/Site.php:645
msgid "Path to item cache"
msgstr ""
-#: src/Module/Admin/Site.php:656
+#: src/Module/Admin/Site.php:645
msgid "The item caches buffers generated bbcode and external images."
msgstr ""
-#: src/Module/Admin/Site.php:657
+#: src/Module/Admin/Site.php:646
msgid "Cache duration in seconds"
msgstr ""
-#: src/Module/Admin/Site.php:657
+#: src/Module/Admin/Site.php:646
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 ""
-#: src/Module/Admin/Site.php:658
+#: src/Module/Admin/Site.php:647
msgid "Maximum numbers of comments per post"
msgstr ""
-#: src/Module/Admin/Site.php:658
+#: src/Module/Admin/Site.php:647
msgid "How much comments should be shown for each post? Default value is 100."
msgstr ""
-#: src/Module/Admin/Site.php:659
+#: src/Module/Admin/Site.php:648
msgid "Temp path"
msgstr ""
-#: src/Module/Admin/Site.php:659
+#: src/Module/Admin/Site.php:648
msgid ""
"If you have a restricted system where the webserver can't access the system "
"temp path, enter another path here."
msgstr ""
-#: src/Module/Admin/Site.php:660
+#: src/Module/Admin/Site.php:649
msgid "Disable picture proxy"
msgstr ""
-#: src/Module/Admin/Site.php:660
+#: src/Module/Admin/Site.php:649
msgid ""
"The picture proxy increases performance and privacy. It shouldn't be used on "
"systems with very low bandwidth."
msgstr ""
-#: src/Module/Admin/Site.php:661
+#: src/Module/Admin/Site.php:650
msgid "Only search in tags"
msgstr ""
-#: src/Module/Admin/Site.php:661
+#: src/Module/Admin/Site.php:650
msgid "On large systems the text search can slow down the system extremely."
msgstr ""
-#: src/Module/Admin/Site.php:663
+#: src/Module/Admin/Site.php:652
msgid "New base url"
msgstr ""
-#: src/Module/Admin/Site.php:663
+#: src/Module/Admin/Site.php:652
msgid ""
"Change base url for this server. Sends relocate message to all Friendica and "
"Diaspora* contacts of all users."
msgstr ""
-#: src/Module/Admin/Site.php:665
+#: src/Module/Admin/Site.php:654
msgid "RINO Encryption"
msgstr ""
-#: src/Module/Admin/Site.php:665
+#: src/Module/Admin/Site.php:654
msgid "Encryption layer between nodes."
msgstr ""
-#: src/Module/Admin/Site.php:665
-msgid "Enabled"
-msgstr ""
-
-#: src/Module/Admin/Site.php:667
+#: src/Module/Admin/Site.php:656
msgid "Maximum number of parallel workers"
msgstr ""
-#: src/Module/Admin/Site.php:667
+#: src/Module/Admin/Site.php:656
#, php-format
msgid ""
"On shared hosters set this to %d. On larger systems, values of %d are great. "
"Default value is %d."
msgstr ""
-#: src/Module/Admin/Site.php:668
+#: src/Module/Admin/Site.php:657
msgid "Don't use \"proc_open\" with the worker"
msgstr ""
-#: src/Module/Admin/Site.php:668
+#: src/Module/Admin/Site.php:657
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 ""
-#: src/Module/Admin/Site.php:669
+#: src/Module/Admin/Site.php:658
msgid "Enable fastlane"
msgstr ""
-#: src/Module/Admin/Site.php:669
+#: src/Module/Admin/Site.php:658
msgid ""
"When enabed, the fastlane mechanism starts an additional worker if processes "
"with higher priority are blocked by processes of lower priority."
msgstr ""
-#: src/Module/Admin/Site.php:670
+#: src/Module/Admin/Site.php:659
msgid "Enable frontend worker"
msgstr ""
-#: src/Module/Admin/Site.php:670
+#: src/Module/Admin/Site.php:659
#, php-format
msgid ""
"When enabled the Worker process is triggered when backend access is "
@@ -5869,94 +8504,94 @@ msgid ""
"server."
msgstr ""
-#: src/Module/Admin/Site.php:672
+#: src/Module/Admin/Site.php:661
msgid "Subscribe to relay"
msgstr ""
-#: src/Module/Admin/Site.php:672
+#: src/Module/Admin/Site.php:661
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 ""
-#: src/Module/Admin/Site.php:673
+#: src/Module/Admin/Site.php:662
msgid "Relay server"
msgstr ""
-#: src/Module/Admin/Site.php:673
+#: src/Module/Admin/Site.php:662
msgid ""
"Address of the relay server where public posts should be send to. For "
"example https://relay.diasp.org"
msgstr ""
-#: src/Module/Admin/Site.php:674
+#: src/Module/Admin/Site.php:663
msgid "Direct relay transfer"
msgstr ""
-#: src/Module/Admin/Site.php:674
+#: src/Module/Admin/Site.php:663
msgid ""
"Enables the direct transfer to other servers without using the relay servers"
msgstr ""
-#: src/Module/Admin/Site.php:675
+#: src/Module/Admin/Site.php:664
msgid "Relay scope"
msgstr ""
-#: src/Module/Admin/Site.php:675
+#: src/Module/Admin/Site.php:664
msgid ""
"Can be \"all\" or \"tags\". \"all\" means that every public post should be "
"received. \"tags\" means that only posts with selected tags should be "
"received."
msgstr ""
-#: src/Module/Admin/Site.php:675
+#: src/Module/Admin/Site.php:664
msgid "all"
msgstr ""
-#: src/Module/Admin/Site.php:675
+#: src/Module/Admin/Site.php:664
msgid "tags"
msgstr ""
-#: src/Module/Admin/Site.php:676
+#: src/Module/Admin/Site.php:665
msgid "Server tags"
msgstr ""
-#: src/Module/Admin/Site.php:676
+#: src/Module/Admin/Site.php:665
msgid "Comma separated list of tags for the \"tags\" subscription."
msgstr ""
-#: src/Module/Admin/Site.php:677
+#: src/Module/Admin/Site.php:666
msgid "Allow user tags"
msgstr ""
-#: src/Module/Admin/Site.php:677
+#: src/Module/Admin/Site.php:666
msgid ""
"If enabled, the tags from the saved searches will used for the \"tags\" "
"subscription in addition to the \"relay_server_tags\"."
msgstr ""
-#: src/Module/Admin/Site.php:680
+#: src/Module/Admin/Site.php:669
msgid "Start Relocation"
msgstr ""
-#: src/Module/Admin/Federation.php:76
+#: src/Module/Admin/Federation.php:88 src/Module/Admin/Federation.php:250
msgid "unknown"
msgstr ""
-#: src/Module/Admin/Federation.php:181
+#: src/Module/Admin/Federation.php:116
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 ""
-#: src/Module/Admin/Federation.php:182
+#: src/Module/Admin/Federation.php:117
msgid ""
"The Auto Discovered Contact Directory feature is not enabled, it "
"will improve the data displayed here."
msgstr ""
-#: src/Module/Admin/Federation.php:194
+#: src/Module/Admin/Federation.php:129
#, php-format
msgid ""
"Currently this node is aware of %d nodes with %d registered users from the "
@@ -5964,12 +8599,12 @@ msgid ""
msgstr ""
#: src/Module/Admin/Features.php:58 src/Module/Admin/Features.php:59
-#: mod/settings.php:768
+#: mod/settings.php:762
msgid "Off"
msgstr ""
#: src/Module/Admin/Features.php:58 src/Module/Admin/Features.php:59
-#: mod/settings.php:768
+#: mod/settings.php:762
msgid "On"
msgstr ""
@@ -6060,41 +8695,41 @@ msgstr ""
msgid "Log settings updated."
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:55
+#: src/Module/Admin/Logs/Settings.php:53
msgid "PHP log currently enabled."
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:57
+#: src/Module/Admin/Logs/Settings.php:55
msgid "PHP log currently disabled."
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:66
+#: src/Module/Admin/Logs/Settings.php:64
msgid "Clear"
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:70
+#: src/Module/Admin/Logs/Settings.php:68
msgid "Enable Debugging"
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:71
+#: src/Module/Admin/Logs/Settings.php:69
msgid "Log file"
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:71
+#: src/Module/Admin/Logs/Settings.php:69
msgid ""
"Must be writable by web server. Relative to your Friendica top-level "
"directory."
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:72
+#: src/Module/Admin/Logs/Settings.php:70
msgid "Log level"
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:74
+#: src/Module/Admin/Logs/Settings.php:72
msgid "PHP logging"
msgstr ""
-#: src/Module/Admin/Logs/Settings.php:75
+#: src/Module/Admin/Logs/Settings.php:73
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 "
@@ -6117,7 +8752,7 @@ msgid ""
"%1$s is readable."
msgstr ""
-#: src/Module/Admin/Summary.php:32
+#: src/Module/Admin/Summary.php:31
#, php-format
msgid ""
"Your DB still runs with MyISAM tables. You should change the engine type to "
@@ -6128,39 +8763,39 @@ msgid ""
"automatic conversion. "
msgstr ""
-#: src/Module/Admin/Summary.php:40
+#: src/Module/Admin/Summary.php:39
#, 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 ""
-#: src/Module/Admin/Summary.php:49
+#: src/Module/Admin/Summary.php:48
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 ""
-#: src/Module/Admin/Summary.php:53
+#: src/Module/Admin/Summary.php:52
msgid ""
"The last update failed. Please run \"php bin/console.php dbstructure update"
"\" from the command line and have a look at the errors that might appear. "
"(Some of the errors are possibly inside the logfile.)"
msgstr ""
-#: src/Module/Admin/Summary.php:58
+#: src/Module/Admin/Summary.php:57
msgid "The worker was never executed. Please check your database structure!"
msgstr ""
-#: src/Module/Admin/Summary.php:60
+#: src/Module/Admin/Summary.php:59
#, php-format
msgid ""
"The last worker execution was on %s UTC. This is older than one hour. Please "
"check your crontab settings."
msgstr ""
-#: src/Module/Admin/Summary.php:65
+#: src/Module/Admin/Summary.php:64
#, php-format
msgid ""
"Friendica's configuration now is stored in config/local.config.php, please "
@@ -6169,7 +8804,7 @@ msgid ""
"with the transition."
msgstr ""
-#: src/Module/Admin/Summary.php:69
+#: src/Module/Admin/Summary.php:68
#, php-format
msgid ""
"Friendica's configuration now is stored in config/local.config.php, please "
@@ -6178,7 +8813,7 @@ msgid ""
"with the transition."
msgstr ""
-#: src/Module/Admin/Summary.php:75
+#: src/Module/Admin/Summary.php:74
#, php-format
msgid ""
"%s is not reachable on your system. This is a severe "
@@ -6186,86 +8821,86 @@ msgid ""
"href=\"%s\">the installation page for help."
msgstr ""
-#: src/Module/Admin/Summary.php:94
+#: src/Module/Admin/Summary.php:92
#, php-format
msgid "The logfile '%s' is not usable. No logging possible (error: '%s')"
msgstr ""
-#: src/Module/Admin/Summary.php:109
+#: src/Module/Admin/Summary.php:107
#, php-format
msgid "The debug logfile '%s' is not usable. No logging possible (error: '%s')"
msgstr ""
-#: src/Module/Admin/Summary.php:125
+#: src/Module/Admin/Summary.php:123
#, php-format
msgid ""
"Friendica's system.basepath was updated from '%s' to '%s'. Please remove the "
"system.basepath from your db to avoid differences."
msgstr ""
-#: src/Module/Admin/Summary.php:133
+#: src/Module/Admin/Summary.php:131
#, php-format
msgid ""
"Friendica's current system.basepath '%s' is wrong and the config file '%s' "
"isn't used."
msgstr ""
-#: src/Module/Admin/Summary.php:141
+#: src/Module/Admin/Summary.php:139
#, php-format
msgid ""
"Friendica's current system.basepath '%s' is not equal to the config file "
"'%s'. Please fix your configuration."
msgstr ""
-#: src/Module/Admin/Summary.php:148
+#: src/Module/Admin/Summary.php:146
msgid "Normal Account"
msgstr ""
-#: src/Module/Admin/Summary.php:149
+#: src/Module/Admin/Summary.php:147
msgid "Automatic Follower Account"
msgstr ""
-#: src/Module/Admin/Summary.php:150
+#: src/Module/Admin/Summary.php:148
msgid "Public Forum Account"
msgstr ""
-#: src/Module/Admin/Summary.php:151
+#: src/Module/Admin/Summary.php:149
msgid "Automatic Friend Account"
msgstr ""
-#: src/Module/Admin/Summary.php:152
+#: src/Module/Admin/Summary.php:150
msgid "Blog Account"
msgstr ""
-#: src/Module/Admin/Summary.php:153
+#: src/Module/Admin/Summary.php:151
msgid "Private Forum Account"
msgstr ""
-#: src/Module/Admin/Summary.php:173
+#: src/Module/Admin/Summary.php:171
msgid "Message queues"
msgstr ""
-#: src/Module/Admin/Summary.php:179
+#: src/Module/Admin/Summary.php:177
msgid "Server Settings"
msgstr ""
-#: src/Module/Admin/Summary.php:193
+#: src/Module/Admin/Summary.php:191
msgid "Summary"
msgstr ""
-#: src/Module/Admin/Summary.php:195
+#: src/Module/Admin/Summary.php:193
msgid "Registered users"
msgstr ""
-#: src/Module/Admin/Summary.php:197
+#: src/Module/Admin/Summary.php:195
msgid "Pending registrations"
msgstr ""
-#: src/Module/Admin/Summary.php:198
+#: src/Module/Admin/Summary.php:196
msgid "Version"
msgstr ""
-#: src/Module/Admin/Summary.php:202
+#: src/Module/Admin/Summary.php:200
msgid "Active addons"
msgstr ""
@@ -6328,132 +8963,146 @@ msgstr ""
msgid "Attempt to execute this update step automatically"
msgstr ""
-#: src/Module/Settings/Delegation.php:37
+#: src/Module/Settings/Delegation.php:34
msgid "Delegation successfully granted."
msgstr ""
-#: src/Module/Settings/Delegation.php:39
+#: src/Module/Settings/Delegation.php:36
msgid "Parent user not found, unavailable or password doesn't match."
msgstr ""
-#: src/Module/Settings/Delegation.php:43
+#: src/Module/Settings/Delegation.php:40
msgid "Delegation successfully revoked."
msgstr ""
-#: src/Module/Settings/Delegation.php:66 src/Module/Settings/Delegation.php:88
+#: src/Module/Settings/Delegation.php:62 src/Module/Settings/Delegation.php:84
msgid ""
"Delegated administrators can view but not change delegation permissions."
msgstr ""
-#: src/Module/Settings/Delegation.php:80
+#: src/Module/Settings/Delegation.php:76
msgid "Delegate user not found."
msgstr ""
-#: src/Module/Settings/Delegation.php:137
+#: src/Module/Settings/Delegation.php:123
msgid "No parent user"
msgstr ""
-#: src/Module/Settings/Delegation.php:149
+#: src/Module/Settings/Delegation.php:135 src/Module/Register.php:152
msgid "Parent Password:"
msgstr ""
-#: src/Module/Settings/Delegation.php:149
+#: src/Module/Settings/Delegation.php:135 src/Module/Register.php:152
msgid ""
"Please enter the password of the parent account to legitimize your request."
msgstr ""
-#: src/Module/Settings/Delegation.php:154
+#: src/Module/Settings/Delegation.php:142
+msgid "Additional Accounts"
+msgstr ""
+
+#: src/Module/Settings/Delegation.php:143
+msgid ""
+"Register additional accounts that are automatically connected to your "
+"existing account so you can manage it from this account."
+msgstr ""
+
+#: src/Module/Settings/Delegation.php:144
+msgid "Register an additional account"
+msgstr ""
+
+#: src/Module/Settings/Delegation.php:145
msgid "Parent User"
msgstr ""
-#: src/Module/Settings/Delegation.php:157
+#: src/Module/Settings/Delegation.php:148
msgid ""
"Parent users have total control about this account, including the account "
"settings. Please double check whom you give this access."
msgstr ""
-#: src/Module/Settings/Delegation.php:159
-msgid "Delegate Page Management"
+#: src/Module/Settings/Delegation.php:151
+msgid "Manage Accounts"
msgstr ""
-#: src/Module/Settings/Delegation.php:160
+#: src/Module/Settings/Delegation.php:152
msgid "Delegates"
msgstr ""
-#: src/Module/Settings/Delegation.php:162
+#: src/Module/Settings/Delegation.php:154
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 ""
-#: src/Module/Settings/Delegation.php:163
+#: src/Module/Settings/Delegation.php:155
msgid "Existing Page Delegates"
msgstr ""
-#: src/Module/Settings/Delegation.php:165
+#: src/Module/Settings/Delegation.php:157
msgid "Potential Delegates"
msgstr ""
-#: src/Module/Settings/Delegation.php:167 mod/tagrm.php:114
+#: src/Module/Settings/Delegation.php:159 mod/tagrm.php:114
msgid "Remove"
msgstr ""
-#: src/Module/Settings/Delegation.php:168
+#: src/Module/Settings/Delegation.php:160
msgid "Add"
msgstr ""
-#: src/Module/Settings/Delegation.php:169
+#: src/Module/Settings/Delegation.php:161
msgid "No entries."
msgstr ""
-#: src/Module/Settings/UserExport.php:44
+#: src/Module/Settings/UserExport.php:41
msgid "Export account"
msgstr ""
-#: src/Module/Settings/UserExport.php:44
+#: src/Module/Settings/UserExport.php:41
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 ""
-#: src/Module/Settings/UserExport.php:45
+#: src/Module/Settings/UserExport.php:42
msgid "Export all"
msgstr ""
-#: src/Module/Settings/UserExport.php:45
+#: src/Module/Settings/UserExport.php:42
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 ""
-#: src/Module/Settings/UserExport.php:46
+#: src/Module/Settings/UserExport.php:43
msgid "Export Contacts to CSV"
msgstr ""
-#: src/Module/Settings/UserExport.php:46
+#: src/Module/Settings/UserExport.php:43
msgid ""
"Export the list of the accounts you are following as CSV file. Compatible to "
"e.g. Mastodon."
msgstr ""
-#: src/Module/Settings/UserExport.php:52 src/Module/BaseSettingsModule.php:89
-#: mod/settings.php:133
+#: src/Module/Settings/UserExport.php:49 src/Module/BaseSettingsModule.php:89
+#: mod/settings.php:128
msgid "Export personal data"
msgstr ""
-#: src/Module/Settings/TwoFactor/Verify.php:41
-#: src/Module/Settings/TwoFactor/AppSpecific.php:36
-#: src/Module/Settings/TwoFactor/Recovery.php:34
+#: src/Module/Settings/TwoFactor/Verify.php:37
+#: src/Module/Settings/TwoFactor/AppSpecific.php:33
+#: src/Module/Settings/TwoFactor/Recovery.php:31
msgid "Please enter your password to access this page."
msgstr ""
-#: src/Module/Settings/TwoFactor/Verify.php:63
+#: src/Module/Settings/TwoFactor/Verify.php:59
msgid "Two-factor authentication successfully activated."
msgstr ""
-#: src/Module/Settings/TwoFactor/Verify.php:96
+#: src/Module/Settings/TwoFactor/Verify.php:92
#, php-format
msgid ""
"Or you can submit the authentication settings manually:
\n"
@@ -6473,204 +9122,204 @@ msgid ""
""
msgstr ""
-#: src/Module/Settings/TwoFactor/Verify.php:116
+#: src/Module/Settings/TwoFactor/Verify.php:112
msgid "Two-factor code verification"
msgstr ""
-#: src/Module/Settings/TwoFactor/Verify.php:118
+#: src/Module/Settings/TwoFactor/Verify.php:114
msgid ""
"Please scan this QR Code with your authenticator app and submit the "
"provided code.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Verify.php:120
+#: src/Module/Settings/TwoFactor/Verify.php:116
#, php-format
msgid ""
"Or you can open the following URL in your mobile devicde:
%s
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Verify.php:127
+#: src/Module/Settings/TwoFactor/Verify.php:123
msgid "Verify code and enable two-factor authentication"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:54
+#: src/Module/Settings/TwoFactor/AppSpecific.php:51
msgid "App-specific password generation failed: The description is empty."
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:57
+#: src/Module/Settings/TwoFactor/AppSpecific.php:54
msgid ""
"App-specific password generation failed: This description already exists."
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:61
+#: src/Module/Settings/TwoFactor/AppSpecific.php:58
msgid "New app-specific password generated."
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:67
+#: src/Module/Settings/TwoFactor/AppSpecific.php:64
msgid "App-specific passwords successfully revoked."
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:77
+#: src/Module/Settings/TwoFactor/AppSpecific.php:74
msgid "App-specific password successfully revoked."
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:98
+#: src/Module/Settings/TwoFactor/AppSpecific.php:95
msgid "Two-factor app-specific passwords"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:100
+#: src/Module/Settings/TwoFactor/AppSpecific.php:97
msgid ""
"App-specific passwords are randomly generated passwords used instead your "
"regular password to authenticate your account on third-party applications "
"that don't support two-factor authentication.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:101
+#: src/Module/Settings/TwoFactor/AppSpecific.php:98
msgid ""
"Make sure to copy your new app-specific password now. You won’t be able to "
"see it again!"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:104
+#: src/Module/Settings/TwoFactor/AppSpecific.php:101
msgid "Description"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:105
+#: src/Module/Settings/TwoFactor/AppSpecific.php:102
msgid "Last Used"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:106
+#: src/Module/Settings/TwoFactor/AppSpecific.php:103
msgid "Revoke"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:107
+#: src/Module/Settings/TwoFactor/AppSpecific.php:104
msgid "Revoke All"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:110
+#: src/Module/Settings/TwoFactor/AppSpecific.php:107
msgid ""
"When you generate a new app-specific password, you must use it right away, "
"it will be shown to you once after you generate it."
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:111
+#: src/Module/Settings/TwoFactor/AppSpecific.php:108
msgid "Generate new app-specific password"
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:112
+#: src/Module/Settings/TwoFactor/AppSpecific.php:109
msgid "Friendiqa on my Fairphone 2..."
msgstr ""
-#: src/Module/Settings/TwoFactor/AppSpecific.php:113
+#: src/Module/Settings/TwoFactor/AppSpecific.php:110
msgid "Generate"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:51
+#: src/Module/Settings/TwoFactor/Index.php:48
msgid "Two-factor authentication successfully disabled."
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:72 mod/settings.php:541
+#: src/Module/Settings/TwoFactor/Index.php:69 mod/settings.php:536
msgid "Wrong Password"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:92
+#: src/Module/Settings/TwoFactor/Index.php:89
msgid ""
"Use an application on a mobile device to get two-factor authentication "
"codes when prompted on login.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:96
+#: src/Module/Settings/TwoFactor/Index.php:93
msgid "Authenticator app"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:97
+#: src/Module/Settings/TwoFactor/Index.php:94
msgid "Configured"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:97
+#: src/Module/Settings/TwoFactor/Index.php:94
msgid "Not Configured"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:98
+#: src/Module/Settings/TwoFactor/Index.php:95
msgid "You haven't finished configuring your authenticator app.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:99
+#: src/Module/Settings/TwoFactor/Index.php:96
msgid "Your authenticator app is correctly configured.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:101
+#: src/Module/Settings/TwoFactor/Index.php:98
msgid "Recovery codes"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:102
+#: src/Module/Settings/TwoFactor/Index.php:99
msgid "Remaining valid codes"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:104
+#: src/Module/Settings/TwoFactor/Index.php:101
msgid ""
"These one-use codes can replace an authenticator app code in case you "
"have lost access to it.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:106
+#: src/Module/Settings/TwoFactor/Index.php:103
msgid "App-specific passwords"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:107
+#: src/Module/Settings/TwoFactor/Index.php:104
msgid "Generated app-specific passwords"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:109
+#: src/Module/Settings/TwoFactor/Index.php:106
msgid ""
"These randomly generated passwords allow you to authenticate on apps not "
"supporting two-factor authentication.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:111 src/Module/Contact.php:635
+#: src/Module/Settings/TwoFactor/Index.php:108 src/Module/Contact.php:634
msgid "Actions"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:112
+#: src/Module/Settings/TwoFactor/Index.php:109
msgid "Current password:"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:112
+#: src/Module/Settings/TwoFactor/Index.php:109
msgid ""
"You need to provide your current password to change two-factor "
"authentication settings."
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:113
+#: src/Module/Settings/TwoFactor/Index.php:110
msgid "Enable two-factor authentication"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:114
+#: src/Module/Settings/TwoFactor/Index.php:111
msgid "Disable two-factor authentication"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:115
+#: src/Module/Settings/TwoFactor/Index.php:112
msgid "Show recovery codes"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:116
+#: src/Module/Settings/TwoFactor/Index.php:113
msgid "Manage app-specific passwords"
msgstr ""
-#: src/Module/Settings/TwoFactor/Index.php:117
+#: src/Module/Settings/TwoFactor/Index.php:114
msgid "Finish app configuration"
msgstr ""
-#: src/Module/Settings/TwoFactor/Recovery.php:50
+#: src/Module/Settings/TwoFactor/Recovery.php:47
msgid "New recovery codes successfully generated."
msgstr ""
-#: src/Module/Settings/TwoFactor/Recovery.php:76
+#: src/Module/Settings/TwoFactor/Recovery.php:73
msgid "Two-factor recovery codes"
msgstr ""
-#: src/Module/Settings/TwoFactor/Recovery.php:78
+#: src/Module/Settings/TwoFactor/Recovery.php:75
msgid ""
"Recovery codes can be used to access your account in the event you lose "
"access to your device and cannot receive two-factor authentication codes."
@@ -6678,17 +9327,17 @@ msgid ""
"don’t have the recovery codes you will lose access to your account.
"
msgstr ""
-#: src/Module/Settings/TwoFactor/Recovery.php:80
+#: src/Module/Settings/TwoFactor/Recovery.php:77
msgid ""
"When you generate new recovery codes, you must copy the new codes. Your old "
"codes won’t work anymore."
msgstr ""
-#: src/Module/Settings/TwoFactor/Recovery.php:81
+#: src/Module/Settings/TwoFactor/Recovery.php:78
msgid "Generate new recovery codes"
msgstr ""
-#: src/Module/Settings/TwoFactor/Recovery.php:83
+#: src/Module/Settings/TwoFactor/Recovery.php:80
msgid "Next: Verification"
msgstr ""
@@ -6696,21 +9345,21 @@ msgstr ""
msgid "Method Not Allowed."
msgstr ""
-#: src/Module/HTTPException/PageNotFound.php:13 src/App/Router.php:186
+#: src/Module/HTTPException/PageNotFound.php:13 src/App/Router.php:185
msgid "Page not found."
msgstr ""
-#: src/Module/BaseSearchModule.php:54
+#: src/Module/BaseSearchModule.php:52
#, php-format
msgid "People Search - %s"
msgstr ""
-#: src/Module/BaseSearchModule.php:64
+#: src/Module/BaseSearchModule.php:62
#, php-format
msgid "Forum Search - %s"
msgstr ""
-#: src/Module/BaseSearchModule.php:96 mod/match.php:130
+#: src/Module/BaseSearchModule.php:93 mod/match.php:129
msgid "No matches"
msgstr ""
@@ -6722,135 +9371,119 @@ msgstr ""
msgid "Applications"
msgstr ""
-#: src/Module/Credits.php:25
+#: src/Module/Credits.php:24
msgid "Credits"
msgstr ""
-#: src/Module/Credits.php:26
+#: src/Module/Credits.php:25
msgid ""
"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!"
msgstr ""
-#: src/Module/Logout.php:41
-msgid "Logged out."
-msgstr ""
-
-#: src/Module/Group.php:42
+#: src/Module/Group.php:41
msgid "Group created."
msgstr ""
-#: src/Module/Group.php:48
+#: src/Module/Group.php:47
msgid "Could not create group."
msgstr ""
-#: src/Module/Group.php:59 src/Module/Group.php:207 src/Module/Group.php:233
+#: src/Module/Group.php:58 src/Module/Group.php:200 src/Module/Group.php:226
msgid "Group not found."
msgstr ""
-#: src/Module/Group.php:65
+#: src/Module/Group.php:64
msgid "Group name changed."
msgstr ""
-#: src/Module/Group.php:87
+#: src/Module/Group.php:86
msgid "Unknown group."
msgstr ""
-#: src/Module/Group.php:92 src/Module/FollowConfirm.php:46 mod/fsuggest.php:32
-#: mod/fsuggest.php:75 mod/crepair.php:102 mod/dfrn_confirm.php:126
-#: mod/redir.php:32 mod/redir.php:122 mod/redir.php:137
+#: src/Module/Group.php:91 mod/fsuggest.php:31 mod/fsuggest.php:74
+#: mod/crepair.php:102 mod/dfrn_confirm.php:125 mod/redir.php:32
+#: mod/redir.php:122 mod/redir.php:137
msgid "Contact not found."
msgstr ""
-#: src/Module/Group.php:96
-msgid "Contact is unavailable."
-msgstr ""
-
-#: src/Module/Group.php:100
+#: src/Module/Group.php:95
msgid "Contact is deleted."
msgstr ""
-#: src/Module/Group.php:106
-msgid "Contact is blocked, unable to add it to a group."
-msgstr ""
-
-#: src/Module/Group.php:110
+#: src/Module/Group.php:101
msgid "Unable to add the contact to the group."
msgstr ""
-#: src/Module/Group.php:112
+#: src/Module/Group.php:104
msgid "Contact successfully added to group."
msgstr ""
-#: src/Module/Group.php:116
+#: src/Module/Group.php:108
msgid "Unable to remove the contact from the group."
msgstr ""
-#: src/Module/Group.php:118
+#: src/Module/Group.php:111
msgid "Contact successfully removed from group."
msgstr ""
-#: src/Module/Group.php:121
+#: src/Module/Group.php:114
msgid "Unknown group command."
msgstr ""
-#: src/Module/Group.php:124
+#: src/Module/Group.php:117
msgid "Bad request."
msgstr ""
-#: src/Module/Group.php:163
+#: src/Module/Group.php:156
msgid "Save Group"
msgstr ""
-#: src/Module/Group.php:164
+#: src/Module/Group.php:157
msgid "Filter"
msgstr ""
-#: src/Module/Group.php:170
+#: src/Module/Group.php:163
msgid "Create a group of contacts/friends."
msgstr ""
-#: src/Module/Group.php:212
+#: src/Module/Group.php:205
msgid "Group removed."
msgstr ""
-#: src/Module/Group.php:214
+#: src/Module/Group.php:207
msgid "Unable to remove group."
msgstr ""
-#: src/Module/Group.php:265
+#: src/Module/Group.php:258
msgid "Delete Group"
msgstr ""
-#: src/Module/Group.php:275
+#: src/Module/Group.php:268
msgid "Edit Group Name"
msgstr ""
-#: src/Module/Group.php:285
+#: src/Module/Group.php:278
msgid "Members"
msgstr ""
-#: src/Module/Group.php:288 mod/network.php:616
+#: src/Module/Group.php:281 mod/network.php:584
msgid "Group is empty"
msgstr ""
-#: src/Module/Group.php:301
+#: src/Module/Group.php:294
msgid "Remove contact from group"
msgstr ""
-#: src/Module/Group.php:321 mod/profperm.php:119
+#: src/Module/Group.php:314 mod/profperm.php:118
msgid "Click on a contact to add or remove."
msgstr ""
-#: src/Module/Group.php:335
+#: src/Module/Group.php:328
msgid "Add contact to group"
msgstr ""
-#: src/Module/FollowConfirm.php:37
-msgid "No given contact."
-msgstr ""
-
#: src/Module/Debug/WebFinger.php:18 src/Module/Debug/Probe.php:19
msgid "Only logged in users are permitted to perform a probing."
msgstr ""
@@ -6884,129 +9517,129 @@ msgstr ""
msgid "Please select your timezone:"
msgstr ""
-#: src/Module/Debug/Babel.php:32
+#: src/Module/Debug/Babel.php:31
msgid "Source input"
msgstr ""
-#: src/Module/Debug/Babel.php:38
+#: src/Module/Debug/Babel.php:37
msgid "BBCode::toPlaintext"
msgstr ""
-#: src/Module/Debug/Babel.php:44
+#: src/Module/Debug/Babel.php:43
msgid "BBCode::convert (raw HTML)"
msgstr ""
-#: src/Module/Debug/Babel.php:49
+#: src/Module/Debug/Babel.php:48
msgid "BBCode::convert"
msgstr ""
-#: src/Module/Debug/Babel.php:55
+#: src/Module/Debug/Babel.php:54
msgid "BBCode::convert => HTML::toBBCode"
msgstr ""
-#: src/Module/Debug/Babel.php:61
+#: src/Module/Debug/Babel.php:60
msgid "BBCode::toMarkdown"
msgstr ""
-#: src/Module/Debug/Babel.php:67
+#: src/Module/Debug/Babel.php:66
+msgid "BBCode::toMarkdown => Markdown::convert (raw HTML)"
+msgstr ""
+
+#: src/Module/Debug/Babel.php:70
msgid "BBCode::toMarkdown => Markdown::convert"
msgstr ""
-#: src/Module/Debug/Babel.php:73
+#: src/Module/Debug/Babel.php:76
msgid "BBCode::toMarkdown => Markdown::toBBCode"
msgstr ""
-#: src/Module/Debug/Babel.php:79
+#: src/Module/Debug/Babel.php:82
msgid "BBCode::toMarkdown => Markdown::convert => HTML::toBBCode"
msgstr ""
-#: src/Module/Debug/Babel.php:90
+#: src/Module/Debug/Babel.php:93
msgid "Item Body"
msgstr ""
-#: src/Module/Debug/Babel.php:94
+#: src/Module/Debug/Babel.php:97
msgid "Item Tags"
msgstr ""
-#: src/Module/Debug/Babel.php:101
+#: src/Module/Debug/Babel.php:104
msgid "Source input (Diaspora format)"
msgstr ""
-#: src/Module/Debug/Babel.php:107
+#: src/Module/Debug/Babel.php:110
msgid "Markdown::convert (raw HTML)"
msgstr ""
-#: src/Module/Debug/Babel.php:112
+#: src/Module/Debug/Babel.php:115
msgid "Markdown::convert"
msgstr ""
-#: src/Module/Debug/Babel.php:118
+#: src/Module/Debug/Babel.php:121
msgid "Markdown::toBBCode"
msgstr ""
-#: src/Module/Debug/Babel.php:125
+#: src/Module/Debug/Babel.php:128
msgid "Raw HTML input"
msgstr ""
-#: src/Module/Debug/Babel.php:130
+#: src/Module/Debug/Babel.php:133
msgid "HTML Input"
msgstr ""
-#: src/Module/Debug/Babel.php:136
+#: src/Module/Debug/Babel.php:139
msgid "HTML::toBBCode"
msgstr ""
-#: src/Module/Debug/Babel.php:142
+#: src/Module/Debug/Babel.php:145
msgid "HTML::toBBCode => BBCode::convert"
msgstr ""
-#: src/Module/Debug/Babel.php:147
+#: src/Module/Debug/Babel.php:150
msgid "HTML::toBBCode => BBCode::convert (raw HTML)"
msgstr ""
-#: src/Module/Debug/Babel.php:153
+#: src/Module/Debug/Babel.php:156
msgid "HTML::toBBCode => BBCode::toPlaintext"
msgstr ""
-#: src/Module/Debug/Babel.php:159
+#: src/Module/Debug/Babel.php:162
msgid "HTML::toMarkdown"
msgstr ""
-#: src/Module/Debug/Babel.php:165
+#: src/Module/Debug/Babel.php:168
msgid "HTML::toPlaintext"
msgstr ""
-#: src/Module/Debug/Babel.php:171
+#: src/Module/Debug/Babel.php:174
msgid "HTML::toPlaintext (compact)"
msgstr ""
-#: src/Module/Debug/Babel.php:179
+#: src/Module/Debug/Babel.php:182
msgid "Source text"
msgstr ""
-#: src/Module/Debug/Babel.php:180
+#: src/Module/Debug/Babel.php:183
msgid "BBCode"
msgstr ""
-#: src/Module/Debug/Babel.php:181
-msgid "Markdown"
-msgstr ""
-
-#: src/Module/Debug/Babel.php:182
+#: src/Module/Debug/Babel.php:185
msgid "HTML"
msgstr ""
-#: src/Module/Debug/ItemBody.php:18 src/Module/Item/Ignore.php:25
-#: src/Module/Diaspora/Receive.php:39 mod/community.php:32 mod/cal.php:31
-#: mod/cal.php:35 mod/follow.php:20
+#: src/Module/Debug/ItemBody.php:18 src/Module/Item/Ignore.php:22
+#: src/Module/Diaspora/Receive.php:32 mod/community.php:32 mod/cal.php:28
+#: mod/cal.php:32 mod/follow.php:19
msgid "Access denied."
msgstr ""
-#: src/Module/Debug/Feed.php:20 src/Module/Filer/SaveTag.php:20
+#: src/Module/Debug/Feed.php:20 src/Module/Filer/SaveTag.php:19
msgid "You must be logged in to use this module"
msgstr ""
-#: src/Module/Debug/Feed.php:49
+#: src/Module/Debug/Feed.php:46
msgid "Source URL"
msgstr ""
@@ -7014,7 +9647,7 @@ msgstr ""
msgid "Lookup address"
msgstr ""
-#: src/Module/Home.php:34
+#: src/Module/Home.php:35
#, php-format
msgid "Welcome to %s"
msgstr ""
@@ -7069,7 +9702,7 @@ msgid ""
"potential friends know exactly how to find you."
msgstr ""
-#: src/Module/Welcome.php:39 mod/profile_photo.php:246 mod/profiles.php:583
+#: src/Module/Welcome.php:39 mod/profile_photo.php:245 mod/profiles.php:581
msgid "Upload Profile Photo"
msgstr ""
@@ -7189,6 +9822,7 @@ msgid ""
msgstr ""
#: src/Module/Profile/Contacts.php:24 src/Module/Profile/Contacts.php:37
+#: src/Module/Register.php:242
msgid "User not found."
msgstr ""
@@ -7196,8 +9830,8 @@ msgstr ""
msgid "No contacts."
msgstr ""
-#: src/Module/Profile/Contacts.php:93 src/Module/Contact.php:590
-#: src/Module/Contact.php:1029
+#: src/Module/Profile/Contacts.php:93 src/Module/Contact.php:589
+#: src/Module/Contact.php:1032
#, php-format
msgid "Visit %s's profile [%s]"
msgstr ""
@@ -7234,17 +9868,17 @@ msgstr[1] ""
msgid "All contacts"
msgstr ""
-#: src/Module/Filer/SaveTag.php:39
+#: src/Module/Filer/SaveTag.php:38
#, php-format
msgid "Filetag %s saved to item"
msgstr ""
-#: src/Module/Filer/SaveTag.php:48
+#: src/Module/Filer/SaveTag.php:47
msgid "- select -"
msgstr ""
#: src/Module/AllFriends.php:35 src/Module/AllFriends.php:43
-#: mod/network.php:649
+#: mod/network.php:617
msgid "Invalid contact."
msgstr ""
@@ -7252,415 +9886,415 @@ msgstr ""
msgid "No friends to display."
msgstr ""
-#: src/Module/Contact.php:72
+#: src/Module/Contact.php:71
#, php-format
msgid "%d contact edited."
msgid_plural "%d contacts edited."
msgstr[0] ""
msgstr[1] ""
-#: src/Module/Contact.php:99
+#: src/Module/Contact.php:98
msgid "Could not access contact record."
msgstr ""
-#: src/Module/Contact.php:109
+#: src/Module/Contact.php:108
msgid "Could not locate selected profile."
msgstr ""
-#: src/Module/Contact.php:141
+#: src/Module/Contact.php:140
msgid "Contact updated."
msgstr ""
-#: src/Module/Contact.php:143 mod/dfrn_request.php:415
+#: src/Module/Contact.php:142 mod/dfrn_request.php:416
msgid "Failed to update contact record."
msgstr ""
-#: src/Module/Contact.php:376
+#: src/Module/Contact.php:375
msgid "Contact not found"
msgstr ""
-#: src/Module/Contact.php:395
+#: src/Module/Contact.php:394
msgid "Contact has been blocked"
msgstr ""
-#: src/Module/Contact.php:395
+#: src/Module/Contact.php:394
msgid "Contact has been unblocked"
msgstr ""
-#: src/Module/Contact.php:405
+#: src/Module/Contact.php:404
msgid "Contact has been ignored"
msgstr ""
-#: src/Module/Contact.php:405
+#: src/Module/Contact.php:404
msgid "Contact has been unignored"
msgstr ""
-#: src/Module/Contact.php:415
+#: src/Module/Contact.php:414
msgid "Contact has been archived"
msgstr ""
-#: src/Module/Contact.php:415
+#: src/Module/Contact.php:414
msgid "Contact has been unarchived"
msgstr ""
-#: src/Module/Contact.php:439
+#: src/Module/Contact.php:438
msgid "Drop contact"
msgstr ""
-#: src/Module/Contact.php:442 src/Module/Contact.php:819
+#: src/Module/Contact.php:441 src/Module/Contact.php:822
msgid "Do you really want to delete this contact?"
msgstr ""
-#: src/Module/Contact.php:456
+#: src/Module/Contact.php:455
msgid "Contact has been removed."
msgstr ""
-#: src/Module/Contact.php:486
+#: src/Module/Contact.php:485
#, php-format
msgid "You are mutual friends with %s"
msgstr ""
-#: src/Module/Contact.php:491
+#: src/Module/Contact.php:490
#, php-format
msgid "You are sharing with %s"
msgstr ""
-#: src/Module/Contact.php:496
+#: src/Module/Contact.php:495
#, php-format
msgid "%s is sharing with you"
msgstr ""
-#: src/Module/Contact.php:520
+#: src/Module/Contact.php:519
msgid "Private communications are not available for this contact."
msgstr ""
-#: src/Module/Contact.php:522
+#: src/Module/Contact.php:521
msgid "Never"
msgstr ""
-#: src/Module/Contact.php:525
+#: src/Module/Contact.php:524
msgid "(Update was successful)"
msgstr ""
-#: src/Module/Contact.php:525
+#: src/Module/Contact.php:524
msgid "(Update was not successful)"
msgstr ""
-#: src/Module/Contact.php:527 src/Module/Contact.php:1063
+#: src/Module/Contact.php:526 src/Module/Contact.php:1066
msgid "Suggest friends"
msgstr ""
-#: src/Module/Contact.php:531
+#: src/Module/Contact.php:530
#, php-format
msgid "Network type: %s"
msgstr ""
-#: src/Module/Contact.php:536
+#: src/Module/Contact.php:535
msgid "Communications lost with this contact!"
msgstr ""
-#: src/Module/Contact.php:542
+#: src/Module/Contact.php:541
msgid "Fetch further information for feeds"
msgstr ""
-#: src/Module/Contact.php:544
+#: src/Module/Contact.php:543
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
+#: src/Module/Contact.php:546
msgid "Fetch information"
msgstr ""
-#: src/Module/Contact.php:548
+#: src/Module/Contact.php:547
msgid "Fetch keywords"
msgstr ""
-#: src/Module/Contact.php:549
+#: src/Module/Contact.php:548
msgid "Fetch information and keywords"
msgstr ""
-#: src/Module/Contact.php:568
+#: src/Module/Contact.php:567
msgid "Profile Visibility"
msgstr ""
-#: src/Module/Contact.php:569
+#: src/Module/Contact.php:568
msgid "Contact Information / Notes"
msgstr ""
-#: src/Module/Contact.php:570
+#: src/Module/Contact.php:569
msgid "Contact Settings"
msgstr ""
-#: src/Module/Contact.php:579
+#: src/Module/Contact.php:578
msgid "Contact"
msgstr ""
-#: src/Module/Contact.php:583
+#: src/Module/Contact.php:582
#, php-format
msgid ""
"Please choose the profile you would like to display to %s when viewing your "
"profile securely."
msgstr ""
-#: src/Module/Contact.php:585
+#: src/Module/Contact.php:584
msgid "Their personal note"
msgstr ""
-#: src/Module/Contact.php:587
+#: src/Module/Contact.php:586
msgid "Edit contact notes"
msgstr ""
-#: src/Module/Contact.php:591
+#: src/Module/Contact.php:590
msgid "Block/Unblock contact"
msgstr ""
-#: src/Module/Contact.php:592
+#: src/Module/Contact.php:591
msgid "Ignore contact"
msgstr ""
-#: src/Module/Contact.php:593
+#: src/Module/Contact.php:592
msgid "Repair URL settings"
msgstr ""
-#: src/Module/Contact.php:594
+#: src/Module/Contact.php:593
msgid "View conversations"
msgstr ""
-#: src/Module/Contact.php:599
+#: src/Module/Contact.php:598
msgid "Last update:"
msgstr ""
-#: src/Module/Contact.php:601
+#: src/Module/Contact.php:600
msgid "Update public posts"
msgstr ""
-#: src/Module/Contact.php:603 src/Module/Contact.php:1073
+#: src/Module/Contact.php:602 src/Module/Contact.php:1076
msgid "Update now"
msgstr ""
-#: src/Module/Contact.php:607 src/Module/Contact.php:824
-#: src/Module/Contact.php:1090
+#: src/Module/Contact.php:606 src/Module/Contact.php:827
+#: src/Module/Contact.php:1093
msgid "Unignore"
msgstr ""
-#: src/Module/Contact.php:611
+#: src/Module/Contact.php:610
msgid "Currently blocked"
msgstr ""
-#: src/Module/Contact.php:612
+#: src/Module/Contact.php:611
msgid "Currently ignored"
msgstr ""
-#: src/Module/Contact.php:613
+#: src/Module/Contact.php:612
msgid "Currently archived"
msgstr ""
-#: src/Module/Contact.php:614
+#: src/Module/Contact.php:613
msgid "Awaiting connection acknowledge"
msgstr ""
-#: src/Module/Contact.php:615 mod/notifications.php:196
-#: mod/notifications.php:283
+#: src/Module/Contact.php:614 mod/notifications.php:168
+#: mod/notifications.php:255
msgid "Hide this contact from others"
msgstr ""
-#: src/Module/Contact.php:615
+#: src/Module/Contact.php:614
msgid ""
"Replies/likes to your public posts may still be visible"
msgstr ""
-#: src/Module/Contact.php:616
+#: src/Module/Contact.php:615
msgid "Notification for new posts"
msgstr ""
-#: src/Module/Contact.php:616
+#: src/Module/Contact.php:615
msgid "Send a notification of every new post of this contact"
msgstr ""
-#: src/Module/Contact.php:618
+#: src/Module/Contact.php:617
msgid "Blacklisted keywords"
msgstr ""
-#: src/Module/Contact.php:618
+#: src/Module/Contact.php:617
msgid ""
"Comma separated list of keywords that should not be converted to hashtags, "
"when \"Fetch information and keywords\" is selected"
msgstr ""
-#: src/Module/Contact.php:684
+#: src/Module/Contact.php:687
msgid "Show all contacts"
msgstr ""
-#: src/Module/Contact.php:689 src/Module/Contact.php:799
+#: src/Module/Contact.php:692 src/Module/Contact.php:802
msgid "Pending"
msgstr ""
-#: src/Module/Contact.php:692
+#: src/Module/Contact.php:695
msgid "Only show pending contacts"
msgstr ""
-#: src/Module/Contact.php:697 src/Module/Contact.php:800
+#: src/Module/Contact.php:700 src/Module/Contact.php:803
msgid "Blocked"
msgstr ""
-#: src/Module/Contact.php:700
+#: src/Module/Contact.php:703
msgid "Only show blocked contacts"
msgstr ""
-#: src/Module/Contact.php:705 src/Module/Contact.php:802
+#: src/Module/Contact.php:708 src/Module/Contact.php:805
msgid "Ignored"
msgstr ""
-#: src/Module/Contact.php:708
+#: src/Module/Contact.php:711
msgid "Only show ignored contacts"
msgstr ""
-#: src/Module/Contact.php:713 src/Module/Contact.php:803
+#: src/Module/Contact.php:716 src/Module/Contact.php:806
msgid "Archived"
msgstr ""
-#: src/Module/Contact.php:716
+#: src/Module/Contact.php:719
msgid "Only show archived contacts"
msgstr ""
-#: src/Module/Contact.php:721 src/Module/Contact.php:801
+#: src/Module/Contact.php:724 src/Module/Contact.php:804
msgid "Hidden"
msgstr ""
-#: src/Module/Contact.php:724
+#: src/Module/Contact.php:727
msgid "Only show hidden contacts"
msgstr ""
-#: src/Module/Contact.php:732
+#: src/Module/Contact.php:735
msgid "Organize your contact groups"
msgstr ""
-#: src/Module/Contact.php:814
+#: src/Module/Contact.php:817
msgid "Search your contacts"
msgstr ""
-#: src/Module/Contact.php:815 src/Module/Search/Index.php:185
+#: src/Module/Contact.php:818 src/Module/Search/Index.php:176
#, php-format
msgid "Results for: %s"
msgstr ""
-#: src/Module/Contact.php:822 mod/settings.php:194 mod/settings.php:696
+#: src/Module/Contact.php:825 mod/settings.php:189 mod/settings.php:690
msgid "Update"
msgstr ""
-#: src/Module/Contact.php:825 src/Module/Contact.php:1099
+#: src/Module/Contact.php:828 src/Module/Contact.php:1102
msgid "Archive"
msgstr ""
-#: src/Module/Contact.php:825 src/Module/Contact.php:1099
+#: src/Module/Contact.php:828 src/Module/Contact.php:1102
msgid "Unarchive"
msgstr ""
-#: src/Module/Contact.php:828
+#: src/Module/Contact.php:831
msgid "Batch Actions"
msgstr ""
-#: src/Module/Contact.php:855
+#: src/Module/Contact.php:858
msgid "Conversations started by this contact"
msgstr ""
-#: src/Module/Contact.php:860
+#: src/Module/Contact.php:863
msgid "Posts and Comments"
msgstr ""
-#: src/Module/Contact.php:883
+#: src/Module/Contact.php:886
msgid "View all contacts"
msgstr ""
-#: src/Module/Contact.php:891 mod/common.php:141
+#: src/Module/Contact.php:894 mod/common.php:141
msgid "Common Friends"
msgstr ""
-#: src/Module/Contact.php:894
+#: src/Module/Contact.php:897
msgid "View all common friends"
msgstr ""
-#: src/Module/Contact.php:904
+#: src/Module/Contact.php:907
msgid "Advanced Contact Settings"
msgstr ""
-#: src/Module/Contact.php:987
+#: src/Module/Contact.php:990
msgid "Mutual Friendship"
msgstr ""
-#: src/Module/Contact.php:992
+#: src/Module/Contact.php:995
msgid "is a fan of yours"
msgstr ""
-#: src/Module/Contact.php:997
+#: src/Module/Contact.php:1000
msgid "you are a fan of"
msgstr ""
-#: src/Module/Contact.php:1015
+#: src/Module/Contact.php:1018
msgid "Pending outgoing contact request"
msgstr ""
-#: src/Module/Contact.php:1017
+#: src/Module/Contact.php:1020
msgid "Pending incoming contact request"
msgstr ""
-#: src/Module/Contact.php:1030
+#: src/Module/Contact.php:1033
msgid "Edit contact"
msgstr ""
-#: src/Module/Contact.php:1084
+#: src/Module/Contact.php:1087
msgid "Toggle Blocked status"
msgstr ""
-#: src/Module/Contact.php:1092
+#: src/Module/Contact.php:1095
msgid "Toggle Ignored status"
msgstr ""
-#: src/Module/Contact.php:1101
+#: src/Module/Contact.php:1104
msgid "Toggle Archive status"
msgstr ""
-#: src/Module/Contact.php:1109
+#: src/Module/Contact.php:1112
msgid "Delete contact"
msgstr ""
-#: src/Module/Invite.php:37
+#: src/Module/Invite.php:36
msgid "Total invitation limit exceeded."
msgstr ""
-#: src/Module/Invite.php:60
+#: src/Module/Invite.php:59
#, php-format
msgid "%s : Not a valid email address."
msgstr ""
-#: src/Module/Invite.php:87
+#: src/Module/Invite.php:86
msgid "Please join us on Friendica"
msgstr ""
-#: src/Module/Invite.php:96
+#: src/Module/Invite.php:95
msgid "Invitation limit exceeded. Please contact your site administrator."
msgstr ""
-#: src/Module/Invite.php:100
+#: src/Module/Invite.php:99
#, php-format
msgid "%s : Message delivery failed."
msgstr ""
-#: src/Module/Invite.php:104
+#: src/Module/Invite.php:103
#, php-format
msgid "%d message sent."
msgid_plural "%d messages sent."
msgstr[0] ""
msgstr[1] ""
-#: src/Module/Invite.php:122
+#: src/Module/Invite.php:121
msgid "You have no more invitations available"
msgstr ""
-#: src/Module/Invite.php:129
+#: src/Module/Invite.php:128
#, php-format
msgid ""
"Visit %s for a list of public sites that you can join. Friendica members on "
@@ -7668,14 +10302,14 @@ msgid ""
"other social networks."
msgstr ""
-#: src/Module/Invite.php:131
+#: src/Module/Invite.php:130
#, php-format
msgid ""
"To accept this invitation, please visit and register at %s or any other "
"public Friendica website."
msgstr ""
-#: src/Module/Invite.php:132
+#: src/Module/Invite.php:131
#, php-format
msgid ""
"Friendica sites all inter-connect to create a huge privacy-enhanced social "
@@ -7684,327 +10318,355 @@ msgid ""
"sites you can join."
msgstr ""
-#: src/Module/Invite.php:136
+#: src/Module/Invite.php:135
msgid ""
"Our apologies. This system is not currently configured to connect with other "
"public sites or invite members."
msgstr ""
-#: src/Module/Invite.php:139
+#: src/Module/Invite.php:138
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 ""
-#: src/Module/Invite.php:138
+#: src/Module/Invite.php:137
#, php-format
msgid "To accept this invitation, please visit and register at %s."
msgstr ""
-#: src/Module/Invite.php:146
+#: src/Module/Invite.php:145
msgid "Send invitations"
msgstr ""
-#: src/Module/Invite.php:147
+#: src/Module/Invite.php:146
msgid "Enter email addresses, one per line:"
msgstr ""
-#: src/Module/Invite.php:150 mod/wallmessage.php:137 mod/message.php:255
-#: mod/message.php:435
+#: src/Module/Invite.php:149 mod/wallmessage.php:136 mod/message.php:253
+#: mod/message.php:433
msgid "Your message:"
msgstr ""
-#: src/Module/Invite.php:151
+#: src/Module/Invite.php:150
msgid ""
"You are cordially invited to join me and other close friends on Friendica - "
"and help us to create a better social web."
msgstr ""
-#: src/Module/Invite.php:153
+#: src/Module/Invite.php:152
msgid "You will need to supply this invitation code: $invite_code"
msgstr ""
-#: src/Module/Invite.php:153
+#: src/Module/Invite.php:152
msgid ""
"Once you have registered, please connect with me via my profile page at:"
msgstr ""
-#: src/Module/Invite.php:155
+#: src/Module/Invite.php:154
msgid ""
"For more information about the Friendica project and why we feel it is "
"important, please visit http://friendi.ca"
msgstr ""
-#: src/Module/BaseSettingsModule.php:18 mod/photos.php:133 mod/settings.php:62
+#: src/Module/BaseSettingsModule.php:18 mod/photos.php:131 mod/settings.php:57
msgid "everybody"
msgstr ""
-#: src/Module/BaseSettingsModule.php:24 mod/settings.php:67
+#: src/Module/BaseSettingsModule.php:24 mod/settings.php:62
msgid "Account"
msgstr ""
-#: src/Module/BaseSettingsModule.php:54 mod/settings.php:98
+#: src/Module/BaseSettingsModule.php:54 mod/settings.php:93
msgid "Display"
msgstr ""
-#: src/Module/BaseSettingsModule.php:61 mod/settings.php:105
-#: mod/settings.php:843
+#: src/Module/BaseSettingsModule.php:61 mod/settings.php:100
+#: mod/settings.php:837
msgid "Social Networks"
msgstr ""
-#: src/Module/BaseSettingsModule.php:75 mod/settings.php:119
+#: src/Module/BaseSettingsModule.php:75 mod/settings.php:114
msgid "Delegations"
msgstr ""
-#: src/Module/BaseSettingsModule.php:82 mod/settings.php:126
+#: src/Module/BaseSettingsModule.php:82 mod/settings.php:121
msgid "Connected apps"
msgstr ""
-#: src/Module/BaseSettingsModule.php:96 mod/settings.php:140
+#: src/Module/BaseSettingsModule.php:96 mod/settings.php:135
msgid "Remove account"
msgstr ""
-#: src/Module/Item/Compose.php:34
+#: src/Module/Item/Compose.php:27
msgid "Please enter a post body."
msgstr ""
-#: src/Module/Item/Compose.php:47
+#: src/Module/Item/Compose.php:40
msgid "This feature is only available with the frio theme."
msgstr ""
-#: src/Module/Item/Compose.php:75
+#: src/Module/Item/Compose.php:67
msgid "Compose new personal note"
msgstr ""
-#: src/Module/Item/Compose.php:84
+#: src/Module/Item/Compose.php:76
msgid "Compose new post"
msgstr ""
-#: src/Module/Item/Compose.php:119
+#: src/Module/Item/Compose.php:116
msgid "Visibility"
msgstr ""
-#: src/Module/Item/Compose.php:140
+#: src/Module/Item/Compose.php:137
msgid "Clear the location"
msgstr ""
-#: src/Module/Item/Compose.php:141
+#: src/Module/Item/Compose.php:138
msgid "Location services are unavailable on your device"
msgstr ""
-#: src/Module/Item/Compose.php:142
+#: src/Module/Item/Compose.php:139
msgid ""
"Location services are disabled. Please check the website's permissions on "
"your device"
msgstr ""
-#: src/Module/Friendica.php:40
+#: src/Module/Friendica.php:39
msgid "Installed addons/apps:"
msgstr ""
-#: src/Module/Friendica.php:45
+#: src/Module/Friendica.php:44
msgid "No installed addons/apps"
msgstr ""
-#: src/Module/Friendica.php:50
+#: src/Module/Friendica.php:49
#, php-format
msgid "Read about the Terms of Service of this node."
msgstr ""
-#: src/Module/Friendica.php:57
+#: src/Module/Friendica.php:56
msgid "On this server the following remote servers are blocked."
msgstr ""
-#: src/Module/Friendica.php:75
+#: src/Module/Friendica.php:74
#, 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 ""
-#: src/Module/Friendica.php:80
+#: src/Module/Friendica.php:79
msgid ""
"Please visit Friendi.ca to learn more "
"about the Friendica project."
msgstr ""
-#: src/Module/Friendica.php:81
+#: src/Module/Friendica.php:80
msgid "Bug reports and issues: please visit"
msgstr ""
-#: src/Module/Friendica.php:81
+#: src/Module/Friendica.php:80
msgid "the bugtracker at github"
msgstr ""
-#: src/Module/Friendica.php:82
+#: src/Module/Friendica.php:81
msgid ""
"Suggestions, praise, etc. - please email \"info\" at \"friendi - dot - ca"
msgstr ""
-#: src/Module/Register.php:60 mod/uimport.php:39
+#: src/Module/HoverCard.php:30
+msgid "No profile"
+msgstr ""
+
+#: src/Module/Register.php:51
+msgid "Only parent users can create additional accounts."
+msgstr ""
+
+#: src/Module/Register.php:66 mod/uimport.php:39
msgid ""
"This site has exceeded the number of allowed daily account registrations. "
"Please try again tomorrow."
msgstr ""
-#: src/Module/Register.php:77
+#: src/Module/Register.php:83
msgid ""
"You may (optionally) fill in this form via OpenID by supplying your OpenID "
"and clicking \"Register\"."
msgstr ""
-#: src/Module/Register.php:78
+#: 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 ""
-#: src/Module/Register.php:79
+#: src/Module/Register.php:85
msgid "Your OpenID (optional): "
msgstr ""
-#: src/Module/Register.php:88
+#: src/Module/Register.php:94
msgid "Include your profile in member directory?"
msgstr ""
-#: src/Module/Register.php:92 mod/api.php:111 mod/dfrn_request.php:642
-#: mod/follow.php:163 mod/profiles.php:526 mod/profiles.php:530
-#: mod/profiles.php:551 mod/settings.php:1090 mod/settings.php:1096
-#: mod/settings.php:1103 mod/settings.php:1107 mod/settings.php:1111
-#: mod/settings.php:1115 mod/settings.php:1119 mod/settings.php:1123
-#: mod/settings.php:1143 mod/settings.php:1144 mod/settings.php:1145
-#: mod/settings.php:1146 mod/settings.php:1147
+#: src/Module/Register.php:98 mod/api.php:111 mod/dfrn_request.php:643
+#: mod/follow.php:162 mod/profiles.php:524 mod/profiles.php:528
+#: mod/profiles.php:549 mod/settings.php:1084 mod/settings.php:1090
+#: mod/settings.php:1097 mod/settings.php:1101 mod/settings.php:1105
+#: mod/settings.php:1109 mod/settings.php:1113 mod/settings.php:1117
+#: mod/settings.php:1137 mod/settings.php:1138 mod/settings.php:1139
+#: mod/settings.php:1140 mod/settings.php:1141
msgid "No"
msgstr ""
-#: src/Module/Register.php:111
+#: src/Module/Register.php:117
msgid "Note for the admin"
msgstr ""
-#: src/Module/Register.php:111
+#: src/Module/Register.php:117
msgid "Leave a message for the admin, why you want to join this node"
msgstr ""
-#: src/Module/Register.php:112
+#: src/Module/Register.php:118
msgid "Membership on this site is by invitation only."
msgstr ""
-#: src/Module/Register.php:113
+#: src/Module/Register.php:119
msgid "Your invitation code: "
msgstr ""
-#: src/Module/Register.php:121
+#: src/Module/Register.php:127
msgid "Your Full Name (e.g. Joe Smith, real or real-looking): "
msgstr ""
-#: src/Module/Register.php:122
+#: src/Module/Register.php:128
msgid ""
"Your Email Address: (Initial information will be send there, so this has to "
"be an existing address.)"
msgstr ""
-#: src/Module/Register.php:124 mod/settings.php:1186
+#: src/Module/Register.php:129
+msgid "Please repeat your e-mail address:"
+msgstr ""
+
+#: src/Module/Register.php:131 mod/settings.php:1180
msgid "New Password:"
msgstr ""
-#: src/Module/Register.php:124
+#: src/Module/Register.php:131
msgid "Leave empty for an auto generated password."
msgstr ""
-#: src/Module/Register.php:125 mod/settings.php:1187
+#: src/Module/Register.php:132 mod/settings.php:1181
msgid "Confirm:"
msgstr ""
-#: src/Module/Register.php:126
+#: src/Module/Register.php:133
#, php-format
msgid ""
"Choose a profile nickname. This must begin with a text character. Your "
"profile address on this site will then be \"nickname@%s \"."
msgstr ""
-#: src/Module/Register.php:127
+#: src/Module/Register.php:134
msgid "Choose a nickname: "
msgstr ""
-#: src/Module/Register.php:135 mod/uimport.php:46
+#: src/Module/Register.php:142 mod/uimport.php:46
msgid "Import"
msgstr ""
-#: src/Module/Register.php:136
+#: src/Module/Register.php:143
msgid "Import your profile to this friendica instance"
msgstr ""
-#: src/Module/Register.php:143
+#: src/Module/Register.php:150
msgid "Note: This node explicitly contains adult content"
msgstr ""
-#: src/Module/Register.php:238
+#: src/Module/Register.php:183
+msgid "Password doesn't match."
+msgstr ""
+
+#: src/Module/Register.php:189
+msgid "Please enter your password."
+msgstr ""
+
+#: src/Module/Register.php:231
+msgid "You have entered too much information."
+msgstr ""
+
+#: src/Module/Register.php:255
+msgid "Please enter the identical mail address in the second field."
+msgstr ""
+
+#: src/Module/Register.php:282
+msgid "The additional account was created."
+msgstr ""
+
+#: src/Module/Register.php:307
msgid ""
"Registration successful. Please check your email for further instructions."
msgstr ""
-#: src/Module/Register.php:242
+#: src/Module/Register.php:311
#, php-format
msgid ""
"Failed to send email message. Here your accout details: login: %s "
"password: %s You can change your password after login."
msgstr ""
-#: src/Module/Register.php:248
+#: src/Module/Register.php:317
msgid "Registration successful."
msgstr ""
-#: src/Module/Register.php:253 src/Module/Register.php:260
+#: src/Module/Register.php:322 src/Module/Register.php:329
msgid "Your registration can not be processed."
msgstr ""
-#: src/Module/Register.php:259
+#: src/Module/Register.php:328
msgid "You have to leave a request note for the admin."
msgstr ""
-#: src/Module/Register.php:266
-msgid "You have entered too much information."
-msgstr ""
-
-#: src/Module/Register.php:312
+#: src/Module/Register.php:376
msgid "Your registration is pending approval by the site owner."
msgstr ""
-#: src/Module/Search/Saved.php:29
+#: src/Module/Search/Saved.php:25
msgid "Search term successfully saved."
msgstr ""
-#: src/Module/Search/Saved.php:31
+#: src/Module/Search/Saved.php:27
msgid "Search term already saved."
msgstr ""
-#: src/Module/Search/Saved.php:37
+#: src/Module/Search/Saved.php:33
msgid "Search term successfully removed."
msgstr ""
-#: src/Module/Search/Index.php:35
+#: src/Module/Search/Index.php:34
msgid "Only logged in users are permitted to perform a search."
msgstr ""
-#: src/Module/Search/Index.php:57
+#: src/Module/Search/Index.php:56
msgid "Only one search per minute is permitted for not logged in users."
msgstr ""
-#: src/Module/Search/Index.php:178 mod/community.php:155
+#: src/Module/Search/Index.php:169 mod/community.php:155
msgid "No results."
msgstr ""
-#: src/Module/Search/Index.php:183
+#: src/Module/Search/Index.php:174
#, php-format
msgid "Items tagged with: %s"
msgstr ""
-#: src/Module/Search/Acl.php:37
+#: src/Module/Search/Acl.php:36
msgid "You must be logged in to use this module."
msgstr ""
-#: src/BaseModule.php:133
+#: src/BaseModule.php:132
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."
@@ -8018,90 +10680,108 @@ msgstr ""
msgid "toggle mobile"
msgstr ""
-#: src/App/Router.php:184
+#: src/App/Router.php:183
#, php-format
msgid "Method not allowed for this module. Allowed method(s): %s"
msgstr ""
+#: src/App/Authentication.php:195 src/App/Authentication.php:247
+msgid "Login failed."
+msgstr ""
+
+#: src/App/Authentication.php:258
+msgid "Login failed. Please check your credentials."
+msgstr ""
+
+#: src/App/Authentication.php:374
+#, php-format
+msgid "Welcome %s"
+msgstr ""
+
+#: src/App/Authentication.php:375
+msgid "Please upload a profile photo."
+msgstr ""
+
+#: src/App/Authentication.php:378
+#, php-format
+msgid "Welcome back %s"
+msgstr ""
+
#: src/App/Module.php:221
msgid "You must be logged in to use addons. "
msgstr ""
-#: src/Util/Temporal.php:79 src/Util/Temporal.php:81 mod/profiles.php:581
+#: src/Util/Temporal.php:78 src/Util/Temporal.php:80 mod/profiles.php:579
msgid "Miscellaneous"
msgstr ""
-#: src/Util/Temporal.php:148 mod/profiles.php:604
+#: src/Util/Temporal.php:147 mod/profiles.php:602
msgid "Age: "
msgstr ""
-#: src/Util/Temporal.php:150
+#: src/Util/Temporal.php:149
msgid "YYYY-MM-DD or MM-DD"
msgstr ""
-#: src/Util/Temporal.php:297
+#: src/Util/Temporal.php:296
msgid "never"
msgstr ""
-#: src/Util/Temporal.php:304
+#: src/Util/Temporal.php:303
msgid "less than a second ago"
msgstr ""
-#: src/Util/Temporal.php:312
+#: src/Util/Temporal.php:311
msgid "year"
msgstr ""
-#: src/Util/Temporal.php:312
+#: src/Util/Temporal.php:311
msgid "years"
msgstr ""
-#: src/Util/Temporal.php:313
+#: src/Util/Temporal.php:312
msgid "months"
msgstr ""
-#: src/Util/Temporal.php:314
+#: src/Util/Temporal.php:313
msgid "weeks"
msgstr ""
-#: src/Util/Temporal.php:315
+#: src/Util/Temporal.php:314
msgid "days"
msgstr ""
-#: src/Util/Temporal.php:316
+#: src/Util/Temporal.php:315
msgid "hour"
msgstr ""
-#: src/Util/Temporal.php:316
+#: src/Util/Temporal.php:315
msgid "hours"
msgstr ""
-#: src/Util/Temporal.php:317
+#: src/Util/Temporal.php:316
msgid "minute"
msgstr ""
#: src/Util/Temporal.php:317
-msgid "minutes"
-msgstr ""
-
-#: src/Util/Temporal.php:318
msgid "second"
msgstr ""
-#: src/Util/Temporal.php:318
+#: src/Util/Temporal.php:317
msgid "seconds"
msgstr ""
-#: src/Util/Temporal.php:328
+#: src/Util/Temporal.php:327
#, php-format
msgid "in %1$d %2$s"
msgstr ""
-#: src/Util/Temporal.php:331
+#: src/Util/Temporal.php:330
#, php-format
msgid "%1$d %2$s ago"
msgstr ""
-#: src/Worker/Delivery.php:532
+#: src/Worker/Delivery.php:539
msgid "(no subject)"
msgstr ""
@@ -8130,32 +10810,32 @@ msgstr ""
msgid "Enter new password: "
msgstr ""
-#: src/Console/NewPassword.php:101 mod/settings.php:443
+#: src/Console/NewPassword.php:101 mod/settings.php:438
msgid "Password update failed. Please try again."
msgstr ""
-#: src/Console/NewPassword.php:104 mod/settings.php:446
+#: src/Console/NewPassword.php:104 mod/settings.php:441
msgid "Password changed."
msgstr ""
-#: src/Console/ArchiveContact.php:86
+#: src/Console/ArchiveContact.php:85
#, php-format
msgid "Could not find any unarchived contact entry for this URL (%s)"
msgstr ""
-#: src/Console/ArchiveContact.php:89
+#: src/Console/ArchiveContact.php:88
msgid "The contact entries have been archived"
msgstr ""
-#: mod/lostpass.php:27
+#: mod/lostpass.php:26
msgid "No valid account found."
msgstr ""
-#: mod/lostpass.php:39
+#: mod/lostpass.php:38
msgid "Password reset request issued. Check your email."
msgstr ""
-#: mod/lostpass.php:45
+#: mod/lostpass.php:44
#, php-format
msgid ""
"\n"
@@ -8173,7 +10853,7 @@ msgid ""
"\t\tissued this request."
msgstr ""
-#: mod/lostpass.php:56
+#: mod/lostpass.php:55
#, php-format
msgid ""
"\n"
@@ -8191,58 +10871,58 @@ msgid ""
"\t\tLogin Name:\t%3$s"
msgstr ""
-#: mod/lostpass.php:75
+#: mod/lostpass.php:74
#, php-format
msgid "Password reset requested at %s"
msgstr ""
-#: mod/lostpass.php:90
+#: mod/lostpass.php:89
msgid ""
"Request could not be verified. (You may have previously submitted it.) "
"Password reset failed."
msgstr ""
-#: mod/lostpass.php:103
+#: mod/lostpass.php:102
msgid "Request has expired, please make a new one."
msgstr ""
-#: mod/lostpass.php:118
+#: mod/lostpass.php:117
msgid "Forgot your Password?"
msgstr ""
-#: mod/lostpass.php:119
+#: mod/lostpass.php:118
msgid ""
"Enter your email address and submit to have your password reset. Then check "
"your email for further instructions."
msgstr ""
-#: mod/lostpass.php:121
+#: mod/lostpass.php:120
msgid "Reset"
msgstr ""
-#: mod/lostpass.php:137
+#: mod/lostpass.php:136
msgid "Your password has been reset as requested."
msgstr ""
-#: mod/lostpass.php:138
+#: mod/lostpass.php:137
msgid "Your new password is"
msgstr ""
-#: mod/lostpass.php:139
+#: mod/lostpass.php:138
msgid "Save or copy your new password - and then"
msgstr ""
-#: mod/lostpass.php:140
+#: mod/lostpass.php:139
msgid "click here to login"
msgstr ""
-#: mod/lostpass.php:141
+#: mod/lostpass.php:140
msgid ""
"Your password may be changed from the Settings page after "
"successful login."
msgstr ""
-#: mod/lostpass.php:148
+#: mod/lostpass.php:147
#, php-format
msgid ""
"\n"
@@ -8253,7 +10933,7 @@ msgid ""
"\t\t"
msgstr ""
-#: mod/lostpass.php:154
+#: mod/lostpass.php:153
#, php-format
msgid ""
"\n"
@@ -8268,14 +10948,14 @@ msgid ""
"\t\t"
msgstr ""
-#: mod/lostpass.php:170
+#: mod/lostpass.php:169
#, php-format
msgid "Your password has been changed at %s"
msgstr ""
-#: mod/update_contact.php:23 mod/update_profile.php:34 mod/update_notes.php:36
-#: mod/update_community.php:23 mod/update_display.php:24
-#: mod/update_network.php:33
+#: mod/update_contact.php:22 mod/update_profile.php:33 mod/update_notes.php:35
+#: mod/update_community.php:22 mod/update_display.php:23
+#: mod/update_network.php:32
msgid "[Embedded content - reload page to view]"
msgstr ""
@@ -8344,19 +11024,19 @@ msgid ""
"not reflect the opinions of this node’s users."
msgstr ""
-#: mod/fsuggest.php:44
+#: mod/fsuggest.php:43
msgid "Suggested contact not found."
msgstr ""
-#: mod/fsuggest.php:57
+#: mod/fsuggest.php:56
msgid "Friend suggestion sent."
msgstr ""
-#: mod/fsuggest.php:79
+#: mod/fsuggest.php:78
msgid "Suggest Friends"
msgstr ""
-#: mod/fsuggest.php:81
+#: mod/fsuggest.php:80
#, php-format
msgid "Suggest a friend for %s"
msgstr ""
@@ -8365,95 +11045,91 @@ msgstr ""
msgid "No contacts in common."
msgstr ""
-#: mod/ping.php:272
+#: mod/ping.php:270
msgid "{0} wants to be your friend"
msgstr ""
-#: mod/ping.php:288
+#: mod/ping.php:286
msgid "{0} requested registration"
msgstr ""
-#: mod/lockview.php:49 mod/lockview.php:60
+#: mod/lockview.php:47 mod/lockview.php:58
msgid "Remote privacy information not available."
msgstr ""
-#: mod/lockview.php:72
-msgid "Visible to:"
-msgstr ""
-
-#: mod/events.php:121 mod/events.php:123
+#: mod/events.php:119 mod/events.php:121
msgid "Event can not end before it has started."
msgstr ""
-#: mod/events.php:130 mod/events.php:132
+#: mod/events.php:128 mod/events.php:130
msgid "Event title and start time are required."
msgstr ""
-#: mod/events.php:397 mod/cal.php:262
+#: mod/events.php:394 mod/cal.php:259
msgid "View"
msgstr ""
-#: mod/events.php:398
+#: mod/events.php:395
msgid "Create New Event"
msgstr ""
-#: mod/events.php:399 mod/cal.php:263
+#: mod/events.php:396 mod/cal.php:260
msgid "Previous"
msgstr ""
-#: mod/events.php:409 mod/cal.php:271
+#: mod/events.php:406 mod/cal.php:268
msgid "list"
msgstr ""
-#: mod/events.php:514
+#: mod/events.php:507
msgid "Event details"
msgstr ""
-#: mod/events.php:515
+#: mod/events.php:508
msgid "Starting date and Title are required."
msgstr ""
-#: mod/events.php:516 mod/events.php:521
+#: mod/events.php:509 mod/events.php:514
msgid "Event Starts:"
msgstr ""
-#: mod/events.php:516 mod/events.php:548 mod/profiles.php:592
+#: mod/events.php:509 mod/events.php:541 mod/profiles.php:590
msgid "Required"
msgstr ""
-#: mod/events.php:529 mod/events.php:554
+#: mod/events.php:522 mod/events.php:547
msgid "Finish date/time is not known or not relevant"
msgstr ""
-#: mod/events.php:531 mod/events.php:536
+#: mod/events.php:524 mod/events.php:529
msgid "Event Finishes:"
msgstr ""
-#: mod/events.php:542 mod/events.php:555
+#: mod/events.php:535 mod/events.php:548
msgid "Adjust for viewer timezone"
msgstr ""
-#: mod/events.php:544
+#: mod/events.php:537
msgid "Description:"
msgstr ""
-#: mod/events.php:548 mod/events.php:550
+#: mod/events.php:541 mod/events.php:543
msgid "Title:"
msgstr ""
-#: mod/events.php:551 mod/events.php:552
+#: mod/events.php:544 mod/events.php:545
msgid "Share this event"
msgstr ""
-#: mod/events.php:561 mod/photos.php:974 mod/photos.php:1348
+#: mod/events.php:554 mod/photos.php:970 mod/photos.php:1340
msgid "Permissions"
msgstr ""
-#: mod/events.php:577
+#: mod/events.php:570
msgid "Failed to remove event"
msgstr ""
-#: mod/events.php:579
+#: mod/events.php:572
msgid "Event removed"
msgstr ""
@@ -8471,194 +11147,194 @@ msgid ""
"and/or create new posts for you?"
msgstr ""
-#: mod/dfrn_poll.php:127 mod/dfrn_poll.php:530
+#: mod/dfrn_poll.php:122 mod/dfrn_poll.php:525
#, php-format
msgid "%1$s welcomes %2$s"
msgstr ""
-#: mod/cal.php:300
+#: mod/cal.php:297
msgid "This calendar format is not supported"
msgstr ""
-#: mod/cal.php:302
+#: mod/cal.php:299
msgid "No exportable data found"
msgstr ""
-#: mod/cal.php:319
+#: mod/cal.php:316
msgid "calendar"
msgstr ""
-#: mod/display.php:224 mod/display.php:301
+#: mod/display.php:225 mod/display.php:306
msgid "The requested item doesn't exist or has been deleted."
msgstr ""
-#: mod/display.php:379
+#: mod/display.php:386
msgid "The feed for this item is unavailable."
msgstr ""
-#: mod/dfrn_request.php:100
+#: mod/dfrn_request.php:101
msgid "This introduction has already been accepted."
msgstr ""
-#: mod/dfrn_request.php:118 mod/dfrn_request.php:356
+#: mod/dfrn_request.php:119 mod/dfrn_request.php:357
msgid "Profile location is not valid or does not contain profile information."
msgstr ""
-#: mod/dfrn_request.php:122 mod/dfrn_request.php:360
+#: mod/dfrn_request.php:123 mod/dfrn_request.php:361
msgid "Warning: profile location has no identifiable owner name."
msgstr ""
-#: mod/dfrn_request.php:125 mod/dfrn_request.php:363
+#: mod/dfrn_request.php:126 mod/dfrn_request.php:364
msgid "Warning: profile location has no profile photo."
msgstr ""
-#: mod/dfrn_request.php:129 mod/dfrn_request.php:367
+#: mod/dfrn_request.php:130 mod/dfrn_request.php:368
#, 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] ""
msgstr[1] ""
-#: mod/dfrn_request.php:167
+#: mod/dfrn_request.php:168
msgid "Introduction complete."
msgstr ""
-#: mod/dfrn_request.php:203
+#: mod/dfrn_request.php:204
msgid "Unrecoverable protocol error."
msgstr ""
-#: mod/dfrn_request.php:230
+#: mod/dfrn_request.php:231
msgid "Profile unavailable."
msgstr ""
-#: mod/dfrn_request.php:251
+#: mod/dfrn_request.php:252
#, php-format
msgid "%s has received too many connection requests today."
msgstr ""
-#: mod/dfrn_request.php:252
+#: mod/dfrn_request.php:253
msgid "Spam protection measures have been invoked."
msgstr ""
-#: mod/dfrn_request.php:253
+#: mod/dfrn_request.php:254
msgid "Friends are advised to please try again in 24 hours."
msgstr ""
-#: mod/dfrn_request.php:277
+#: mod/dfrn_request.php:278
msgid "Invalid locator"
msgstr ""
-#: mod/dfrn_request.php:313
+#: mod/dfrn_request.php:314
msgid "You have already introduced yourself here."
msgstr ""
-#: mod/dfrn_request.php:316
+#: mod/dfrn_request.php:317
#, php-format
msgid "Apparently you are already friends with %s."
msgstr ""
-#: mod/dfrn_request.php:336
+#: mod/dfrn_request.php:337
msgid "Invalid profile URL."
msgstr ""
-#: mod/dfrn_request.php:435
+#: mod/dfrn_request.php:436
msgid "Your introduction has been sent."
msgstr ""
-#: mod/dfrn_request.php:473
+#: mod/dfrn_request.php:474
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:490
msgid "Please login to confirm introduction."
msgstr ""
-#: mod/dfrn_request.php:497
+#: mod/dfrn_request.php:498
msgid ""
"Incorrect identity currently logged in. Please login to this"
"strong> profile."
msgstr ""
-#: mod/dfrn_request.php:511 mod/dfrn_request.php:526
+#: mod/dfrn_request.php:512 mod/dfrn_request.php:527
msgid "Confirm"
msgstr ""
-#: mod/dfrn_request.php:522
+#: mod/dfrn_request.php:523
msgid "Hide this contact"
msgstr ""
-#: mod/dfrn_request.php:524
-#, php-format
-msgid "Welcome home %s."
-msgstr ""
-
#: mod/dfrn_request.php:525
#, php-format
+msgid "Welcome home %s."
+msgstr ""
+
+#: mod/dfrn_request.php:526
+#, php-format
msgid "Please confirm your introduction/connection request to %s."
msgstr ""
-#: mod/dfrn_request.php:634
+#: mod/dfrn_request.php:635
msgid ""
"Please enter your 'Identity Address' from one of the following supported "
"communications networks:"
msgstr ""
-#: mod/dfrn_request.php:636
+#: mod/dfrn_request.php:637
#, php-format
msgid ""
"If you are not yet a member of the free social web, follow "
"this link to find a public Friendica site and join us today ."
msgstr ""
-#: mod/dfrn_request.php:639
+#: mod/dfrn_request.php:640
msgid "Friend/Connection Request"
msgstr ""
-#: mod/dfrn_request.php:640
+#: mod/dfrn_request.php:641
msgid ""
"Examples: jojo@demo.friendica.com, http://demo.friendica.com/profile/jojo, "
"testuser@gnusocial.de"
msgstr ""
-#: mod/dfrn_request.php:641 mod/follow.php:162
+#: mod/dfrn_request.php:642 mod/follow.php:161
msgid "Please answer the following:"
msgstr ""
-#: mod/dfrn_request.php:642 mod/follow.php:163
+#: mod/dfrn_request.php:643 mod/follow.php:162
#, php-format
msgid "Does %s know you?"
msgstr ""
-#: mod/dfrn_request.php:643 mod/follow.php:164
+#: mod/dfrn_request.php:644 mod/follow.php:163
msgid "Add a personal note:"
msgstr ""
-#: mod/dfrn_request.php:645
+#: mod/dfrn_request.php:646
msgid "Friendica"
msgstr ""
-#: mod/dfrn_request.php:646
+#: mod/dfrn_request.php:647
msgid "GNU Social (Pleroma, Mastodon)"
msgstr ""
-#: mod/dfrn_request.php:647
+#: mod/dfrn_request.php:648
msgid "Diaspora (Socialhome, Hubzilla)"
msgstr ""
-#: mod/dfrn_request.php:648
+#: mod/dfrn_request.php:649
#, php-format
msgid ""
" - please do not use this form. Instead, enter %s into your Diaspora search "
"bar."
msgstr ""
-#: mod/dfrn_request.php:649 mod/follow.php:170 mod/unfollow.php:128
+#: mod/dfrn_request.php:650 mod/follow.php:169 mod/unfollow.php:127
msgid "Your Identity Address:"
msgstr ""
-#: mod/dfrn_request.php:651 mod/follow.php:76 mod/unfollow.php:131
+#: mod/dfrn_request.php:652 mod/follow.php:75 mod/unfollow.php:130
msgid "Submit Request"
msgstr ""
@@ -8752,247 +11428,227 @@ msgstr ""
msgid "New photo from this URL"
msgstr ""
-#: mod/openid.php:32
-msgid "OpenID protocol error. No ID returned."
-msgstr ""
-
-#: mod/openid.php:71
-msgid ""
-"Account not found. Please login to your existing account to add the OpenID "
-"to it."
-msgstr ""
-
-#: mod/openid.php:73
-msgid ""
-"Account not found. Please register a new account or login to your existing "
-"account to add the OpenID to it."
-msgstr ""
-
-#: mod/notifications.php:39
-msgid "Invalid request identifier."
-msgstr ""
-
-#: mod/notifications.php:48 mod/notifications.php:202 mod/notifications.php:258
-#: mod/message.php:110
+#: mod/notifications.php:34 mod/notifications.php:174 mod/notifications.php:230
+#: mod/message.php:108
msgid "Discard"
msgstr ""
-#: mod/notifications.php:119
+#: mod/notifications.php:91
msgid "Network Notifications"
msgstr ""
-#: mod/notifications.php:124
+#: mod/notifications.php:96
msgid "System Notifications"
msgstr ""
-#: mod/notifications.php:129
+#: mod/notifications.php:101
msgid "Personal Notifications"
msgstr ""
-#: mod/notifications.php:134
+#: mod/notifications.php:106
msgid "Home Notifications"
msgstr ""
-#: mod/notifications.php:157
+#: mod/notifications.php:129
msgid "Show unread"
msgstr ""
-#: mod/notifications.php:157
+#: mod/notifications.php:129
msgid "Show all"
msgstr ""
-#: mod/notifications.php:168
+#: mod/notifications.php:140
msgid "Show Ignored Requests"
msgstr ""
-#: mod/notifications.php:168
+#: mod/notifications.php:140
msgid "Hide Ignored Requests"
msgstr ""
-#: mod/notifications.php:181 mod/notifications.php:266
+#: mod/notifications.php:153 mod/notifications.php:238
msgid "Notification type:"
msgstr ""
-#: mod/notifications.php:184
+#: mod/notifications.php:156
msgid "Suggested by:"
msgstr ""
-#: mod/notifications.php:218
+#: mod/notifications.php:190
msgid "Claims to be known to you: "
msgstr ""
-#: mod/notifications.php:219
+#: mod/notifications.php:191
msgid "yes"
msgstr ""
-#: mod/notifications.php:219
+#: mod/notifications.php:191
msgid "no"
msgstr ""
-#: mod/notifications.php:220 mod/notifications.php:224
+#: mod/notifications.php:192 mod/notifications.php:196
msgid "Shall your connection be bidirectional or not?"
msgstr ""
-#: mod/notifications.php:221 mod/notifications.php:225
+#: mod/notifications.php:193 mod/notifications.php:197
#, 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:222
+#: mod/notifications.php:194
#, 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:226
+#: mod/notifications.php:198
#, 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:237
+#: mod/notifications.php:209
msgid "Friend"
msgstr ""
-#: mod/notifications.php:238
+#: mod/notifications.php:210
msgid "Sharer"
msgstr ""
-#: mod/notifications.php:238
+#: mod/notifications.php:210
msgid "Subscriber"
msgstr ""
-#: mod/notifications.php:303
+#: mod/notifications.php:275
msgid "No introductions."
msgstr ""
-#: mod/notifications.php:337
+#: mod/notifications.php:309
#, php-format
msgid "No more %s notifications."
msgstr ""
-#: mod/wallmessage.php:52 mod/wallmessage.php:115
+#: mod/wallmessage.php:51 mod/wallmessage.php:114
#, php-format
msgid "Number of daily wall messages for %s exceeded. Message failed."
msgstr ""
-#: mod/wallmessage.php:60 mod/message.php:70
+#: mod/wallmessage.php:59 mod/message.php:68
msgid "No recipient selected."
msgstr ""
-#: mod/wallmessage.php:63
+#: mod/wallmessage.php:62
msgid "Unable to check your home location."
msgstr ""
-#: mod/wallmessage.php:66 mod/message.php:77
+#: mod/wallmessage.php:65 mod/message.php:75
msgid "Message could not be sent."
msgstr ""
-#: mod/wallmessage.php:69 mod/message.php:80
+#: mod/wallmessage.php:68 mod/message.php:78
msgid "Message collection failure."
msgstr ""
-#: mod/wallmessage.php:72 mod/message.php:83
+#: mod/wallmessage.php:71 mod/message.php:81
msgid "Message sent."
msgstr ""
-#: mod/wallmessage.php:89 mod/wallmessage.php:98
+#: mod/wallmessage.php:88 mod/wallmessage.php:97
msgid "No recipient."
msgstr ""
-#: mod/wallmessage.php:123 mod/message.php:204 mod/message.php:360
+#: mod/wallmessage.php:122 mod/message.php:202 mod/message.php:358
msgid "Please enter a link URL:"
msgstr ""
-#: mod/wallmessage.php:128 mod/message.php:246
+#: mod/wallmessage.php:127 mod/message.php:244
msgid "Send Private Message"
msgstr ""
-#: mod/wallmessage.php:129
+#: mod/wallmessage.php:128
#, 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/wallmessage.php:130 mod/message.php:247 mod/message.php:430
+#: mod/wallmessage.php:129 mod/message.php:245 mod/message.php:428
msgid "To:"
msgstr ""
-#: mod/wallmessage.php:131 mod/message.php:251 mod/message.php:432
+#: mod/wallmessage.php:130 mod/message.php:249 mod/message.php:430
msgid "Subject:"
msgstr ""
-#: mod/wallmessage.php:140 mod/editpost.php:77 mod/message.php:259
-#: mod/message.php:440
+#: mod/wallmessage.php:139 mod/editpost.php:77 mod/message.php:257
+#: mod/message.php:438
msgid "Insert web link"
msgstr ""
-#: mod/ostatus_subscribe.php:23
+#: mod/ostatus_subscribe.php:21
msgid "Subscribing to OStatus contacts"
msgstr ""
-#: mod/ostatus_subscribe.php:35
+#: mod/ostatus_subscribe.php:31
msgid "No contact provided."
msgstr ""
-#: mod/ostatus_subscribe.php:42
+#: mod/ostatus_subscribe.php:38
msgid "Couldn't fetch information for contact."
msgstr ""
-#: mod/ostatus_subscribe.php:52
+#: mod/ostatus_subscribe.php:48
msgid "Couldn't fetch friends for contact."
msgstr ""
-#: mod/ostatus_subscribe.php:70 mod/repair_ostatus.php:52
+#: mod/ostatus_subscribe.php:66 mod/repair_ostatus.php:49
msgid "Done"
msgstr ""
-#: mod/ostatus_subscribe.php:84
+#: mod/ostatus_subscribe.php:80
msgid "success"
msgstr ""
-#: mod/ostatus_subscribe.php:86
+#: mod/ostatus_subscribe.php:82
msgid "failed"
msgstr ""
-#: mod/ostatus_subscribe.php:94 mod/repair_ostatus.php:58
+#: mod/ostatus_subscribe.php:90 mod/repair_ostatus.php:55
msgid "Keep this window open until done."
msgstr ""
-#: mod/follow.php:46
+#: mod/follow.php:45
msgid "The contact could not be added."
msgstr ""
-#: mod/follow.php:87
+#: mod/follow.php:86
msgid "You already added this contact."
msgstr ""
-#: mod/follow.php:99
+#: mod/follow.php:98
msgid "Diaspora support isn't enabled. Contact can't be added."
msgstr ""
-#: mod/follow.php:106
+#: mod/follow.php:105
msgid "OStatus support is disabled. Contact can't be added."
msgstr ""
-#: mod/follow.php:113
+#: mod/follow.php:112
msgid "The network type couldn't be detected. Contact can't be added."
msgstr ""
-#: mod/fbrowser.php:112 mod/fbrowser.php:141 mod/profile_photo.php:247
+#: mod/fbrowser.php:111 mod/fbrowser.php:140 mod/profile_photo.php:246
msgid "Upload"
msgstr ""
-#: mod/fbrowser.php:136
+#: mod/fbrowser.php:135
msgid "Files"
msgstr ""
-#: mod/network.php:525
+#: mod/network.php:493
#, php-format
msgid ""
"Warning: This group contains %s member from a network that doesn't allow non "
@@ -9003,154 +11659,154 @@ msgid_plural ""
msgstr[0] ""
msgstr[1] ""
-#: mod/network.php:528
+#: mod/network.php:496
msgid "Messages in this group won't be send to these receivers."
msgstr ""
-#: mod/network.php:595
+#: mod/network.php:563
msgid "No such group"
msgstr ""
-#: mod/network.php:620
+#: mod/network.php:588
#, php-format
msgid "Group: %s"
msgstr ""
-#: mod/network.php:646
+#: mod/network.php:614
msgid "Private messages to this person are at risk of public disclosure."
msgstr ""
-#: mod/network.php:928
+#: mod/network.php:901
msgid "Latest Activity"
msgstr ""
-#: mod/network.php:931
+#: mod/network.php:904
msgid "Sort by latest activity"
msgstr ""
-#: mod/network.php:936
+#: mod/network.php:909
msgid "Latest Posts"
msgstr ""
-#: mod/network.php:939
+#: mod/network.php:912
msgid "Sort by post received date"
msgstr ""
-#: mod/network.php:946 mod/profiles.php:579
+#: mod/network.php:919 mod/profiles.php:577
msgid "Personal"
msgstr ""
-#: mod/network.php:949
+#: mod/network.php:922
msgid "Posts that mention or involve you"
msgstr ""
-#: mod/network.php:956
+#: mod/network.php:929
msgid "New"
msgstr ""
-#: mod/network.php:959
+#: mod/network.php:932
msgid "Activity Stream - by date"
msgstr ""
-#: mod/network.php:967
+#: mod/network.php:940
msgid "Shared Links"
msgstr ""
-#: mod/network.php:970
+#: mod/network.php:943
msgid "Interesting Links"
msgstr ""
-#: mod/network.php:977
+#: mod/network.php:950
msgid "Starred"
msgstr ""
-#: mod/network.php:980
+#: mod/network.php:953
msgid "Favourite Posts"
msgstr ""
-#: mod/unfollow.php:36 mod/unfollow.php:92
+#: mod/unfollow.php:35 mod/unfollow.php:91
msgid "You aren't following this contact."
msgstr ""
-#: mod/unfollow.php:46 mod/unfollow.php:98
+#: mod/unfollow.php:45 mod/unfollow.php:97
msgid "Unfollowing is currently not supported by your network."
msgstr ""
-#: mod/unfollow.php:67
+#: mod/unfollow.php:66
msgid "Contact unfollowed"
msgstr ""
-#: mod/unfollow.php:118
+#: mod/unfollow.php:117
msgid "Disconnect/Unfollow"
msgstr ""
-#: mod/profile_photo.php:58
+#: mod/profile_photo.php:57
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:311
+#: mod/profile_photo.php:87 mod/profile_photo.php:96 mod/profile_photo.php:105
+#: mod/profile_photo.php:310
#, php-format
msgid "Image size reduction [%s] failed."
msgstr ""
-#: mod/profile_photo.php:125
+#: mod/profile_photo.php:124
msgid ""
"Shift-reload the page or clear browser cache if the new photo does not "
"display immediately."
msgstr ""
-#: mod/profile_photo.php:133
+#: mod/profile_photo.php:132
msgid "Unable to process image"
msgstr ""
-#: mod/profile_photo.php:152 mod/photos.php:674 mod/photos.php:677
-#: mod/photos.php:706 mod/wall_upload.php:186
+#: mod/profile_photo.php:151 mod/photos.php:670 mod/photos.php:673
+#: mod/photos.php:702 mod/wall_upload.php:185
#, php-format
msgid "Image exceeds size limit of %s"
msgstr ""
-#: mod/profile_photo.php:161 mod/photos.php:729 mod/wall_upload.php:200
+#: mod/profile_photo.php:160 mod/photos.php:725 mod/wall_upload.php:199
msgid "Unable to process image."
msgstr ""
-#: mod/profile_photo.php:244
+#: mod/profile_photo.php:243
msgid "Upload File:"
msgstr ""
-#: mod/profile_photo.php:245
+#: mod/profile_photo.php:244
msgid "Select a profile:"
msgstr ""
-#: mod/profile_photo.php:250
+#: mod/profile_photo.php:249
msgid "or"
msgstr ""
-#: mod/profile_photo.php:251
+#: mod/profile_photo.php:250
msgid "skip this step"
msgstr ""
-#: mod/profile_photo.php:251
+#: mod/profile_photo.php:250
msgid "select a photo from your photo albums"
msgstr ""
-#: mod/profile_photo.php:264
+#: mod/profile_photo.php:263
msgid "Crop Image"
msgstr ""
-#: mod/profile_photo.php:265
+#: mod/profile_photo.php:264
msgid "Please adjust the image cropping for optimum viewing."
msgstr ""
-#: mod/profile_photo.php:267
+#: mod/profile_photo.php:266
msgid "Done Editing"
msgstr ""
-#: mod/profile_photo.php:301
+#: mod/profile_photo.php:300
msgid "Image uploaded successfully."
msgstr ""
-#: mod/profile_photo.php:303 mod/photos.php:758 mod/wall_upload.php:239
+#: mod/profile_photo.php:302 mod/photos.php:754 mod/wall_upload.php:238
msgid "Image upload failed."
msgstr ""
@@ -9174,718 +11830,702 @@ msgstr ""
msgid "Make this post private"
msgstr ""
-#: mod/photos.php:113 mod/photos.php:1609
+#: mod/photos.php:111 mod/photos.php:1600
msgid "Recent Photos"
msgstr ""
-#: mod/photos.php:115 mod/photos.php:1117 mod/photos.php:1611
+#: mod/photos.php:113 mod/photos.php:1109 mod/photos.php:1602
msgid "Upload New Photos"
msgstr ""
-#: mod/photos.php:170
+#: mod/photos.php:168
msgid "Contact information unavailable"
msgstr ""
-#: mod/photos.php:192
+#: mod/photos.php:190
msgid "Album not found."
msgstr ""
-#: mod/photos.php:250
+#: mod/photos.php:248
msgid "Album successfully deleted"
msgstr ""
-#: mod/photos.php:252
+#: mod/photos.php:250
msgid "Album was empty."
msgstr ""
-#: mod/photos.php:578
+#: mod/photos.php:575
msgid "a photo"
msgstr ""
-#: mod/photos.php:578
+#: mod/photos.php:575
#, php-format
msgid "%1$s was tagged in %2$s by %3$s"
msgstr ""
-#: mod/photos.php:680
+#: mod/photos.php:676
msgid "Image upload didn't complete, please try again"
msgstr ""
-#: mod/photos.php:683
+#: mod/photos.php:679
msgid "Image file is missing"
msgstr ""
-#: mod/photos.php:688
+#: mod/photos.php:684
msgid ""
"Server can't accept new file upload at this time, please contact your "
"administrator"
msgstr ""
-#: mod/photos.php:714
+#: mod/photos.php:710
msgid "Image file is empty."
msgstr ""
-#: mod/photos.php:846
+#: mod/photos.php:842
msgid "No photos selected"
msgstr ""
-#: mod/photos.php:912 mod/videos.php:168
+#: mod/photos.php:908 mod/videos.php:165
msgid "Access to this item is restricted."
msgstr ""
-#: mod/photos.php:966
+#: mod/photos.php:962
msgid "Upload Photos"
msgstr ""
-#: mod/photos.php:970 mod/photos.php:1062
+#: mod/photos.php:966 mod/photos.php:1054
msgid "New album name: "
msgstr ""
-#: mod/photos.php:971
+#: mod/photos.php:967
msgid "or select existing album:"
msgstr ""
-#: mod/photos.php:972
+#: mod/photos.php:968
msgid "Do not show a status post for this upload"
msgstr ""
-#: mod/photos.php:988 mod/photos.php:1356 mod/settings.php:1215
+#: mod/photos.php:984 mod/photos.php:1348 mod/settings.php:1209
msgid "Show to Groups"
msgstr ""
-#: mod/photos.php:989 mod/photos.php:1357 mod/settings.php:1216
+#: mod/photos.php:985 mod/photos.php:1349 mod/settings.php:1210
msgid "Show to Contacts"
msgstr ""
-#: mod/photos.php:1044
+#: mod/photos.php:1036
msgid "Do you really want to delete this photo album and all its photos?"
msgstr ""
-#: mod/photos.php:1046 mod/photos.php:1067
+#: mod/photos.php:1038 mod/photos.php:1059
msgid "Delete Album"
msgstr ""
-#: mod/photos.php:1073
+#: mod/photos.php:1065
msgid "Edit Album"
msgstr ""
-#: mod/photos.php:1074
+#: mod/photos.php:1066
msgid "Drop Album"
msgstr ""
-#: mod/photos.php:1079
+#: mod/photos.php:1071
msgid "Show Newest First"
msgstr ""
-#: mod/photos.php:1081
+#: mod/photos.php:1073
msgid "Show Oldest First"
msgstr ""
-#: mod/photos.php:1102 mod/photos.php:1594
+#: mod/photos.php:1094 mod/photos.php:1585
msgid "View Photo"
msgstr ""
-#: mod/photos.php:1139
+#: mod/photos.php:1131
msgid "Permission denied. Access to this item may be restricted."
msgstr ""
-#: mod/photos.php:1141
+#: mod/photos.php:1133
msgid "Photo not available"
msgstr ""
-#: mod/photos.php:1151
+#: mod/photos.php:1143
msgid "Do you really want to delete this photo?"
msgstr ""
-#: mod/photos.php:1153 mod/photos.php:1353
+#: mod/photos.php:1145 mod/photos.php:1345
msgid "Delete Photo"
msgstr ""
-#: mod/photos.php:1244
+#: mod/photos.php:1236
msgid "View photo"
msgstr ""
-#: mod/photos.php:1246
+#: mod/photos.php:1238
msgid "Edit photo"
msgstr ""
-#: mod/photos.php:1247
+#: mod/photos.php:1239
msgid "Delete photo"
msgstr ""
-#: mod/photos.php:1248
+#: mod/photos.php:1240
msgid "Use as profile photo"
msgstr ""
-#: mod/photos.php:1255
+#: mod/photos.php:1247
msgid "Private Photo"
msgstr ""
-#: mod/photos.php:1261
+#: mod/photos.php:1253
msgid "View Full Size"
msgstr ""
-#: mod/photos.php:1321
+#: mod/photos.php:1313
msgid "Tags: "
msgstr ""
-#: mod/photos.php:1324
+#: mod/photos.php:1316
msgid "[Select tags to remove]"
msgstr ""
-#: mod/photos.php:1339
+#: mod/photos.php:1331
msgid "New album name"
msgstr ""
-#: mod/photos.php:1340
+#: mod/photos.php:1332
msgid "Caption"
msgstr ""
-#: mod/photos.php:1341
+#: mod/photos.php:1333
msgid "Add a Tag"
msgstr ""
-#: mod/photos.php:1341
+#: mod/photos.php:1333
msgid "Example: @bob, @Barbara_Jensen, @jim@example.com, #California, #camping"
msgstr ""
-#: mod/photos.php:1342
+#: mod/photos.php:1334
msgid "Do not rotate"
msgstr ""
-#: mod/photos.php:1343
+#: mod/photos.php:1335
msgid "Rotate CW (right)"
msgstr ""
-#: mod/photos.php:1344
+#: mod/photos.php:1336
msgid "Rotate CCW (left)"
msgstr ""
-#: mod/photos.php:1529
+#: mod/photos.php:1520
msgid "Map"
msgstr ""
-#: mod/photos.php:1600 mod/videos.php:245
+#: mod/photos.php:1591 mod/videos.php:242
msgid "View Album"
msgstr ""
-#: mod/profiles.php:43 mod/profiles.php:152 mod/profiles.php:196
-#: mod/profiles.php:511 mod/dfrn_confirm.php:71
+#: mod/profiles.php:41 mod/profiles.php:150 mod/profiles.php:194
+#: mod/profiles.php:509 mod/dfrn_confirm.php:70
msgid "Profile not found."
msgstr ""
-#: mod/profiles.php:62
+#: mod/profiles.php:60
msgid "Profile deleted."
msgstr ""
-#: mod/profiles.php:78 mod/profiles.php:114
+#: mod/profiles.php:76 mod/profiles.php:112
msgid "Profile-"
msgstr ""
-#: mod/profiles.php:97 mod/profiles.php:135
+#: mod/profiles.php:95 mod/profiles.php:133
msgid "New profile created."
msgstr ""
-#: mod/profiles.php:120
+#: mod/profiles.php:118
msgid "Profile unavailable to clone."
msgstr ""
-#: mod/profiles.php:206
+#: mod/profiles.php:204
msgid "Profile Name is required."
msgstr ""
-#: mod/profiles.php:346
+#: mod/profiles.php:344
msgid "Marital Status"
msgstr ""
-#: mod/profiles.php:349
+#: mod/profiles.php:347
msgid "Romantic Partner"
msgstr ""
-#: mod/profiles.php:358
+#: mod/profiles.php:356
msgid "Work/Employment"
msgstr ""
-#: mod/profiles.php:361
+#: mod/profiles.php:359
msgid "Religion"
msgstr ""
-#: mod/profiles.php:364
+#: mod/profiles.php:362
msgid "Political Views"
msgstr ""
-#: mod/profiles.php:367
+#: mod/profiles.php:365
msgid "Gender"
msgstr ""
-#: mod/profiles.php:370
+#: mod/profiles.php:368
msgid "Sexual Preference"
msgstr ""
-#: mod/profiles.php:373
+#: mod/profiles.php:371
msgid "XMPP"
msgstr ""
-#: mod/profiles.php:376
+#: mod/profiles.php:374
msgid "Homepage"
msgstr ""
-#: mod/profiles.php:379 mod/profiles.php:578
+#: mod/profiles.php:377 mod/profiles.php:576
msgid "Interests"
msgstr ""
-#: mod/profiles.php:382
+#: mod/profiles.php:380
msgid "Address"
msgstr ""
-#: mod/profiles.php:389 mod/profiles.php:574
+#: mod/profiles.php:387 mod/profiles.php:572
msgid "Location"
msgstr ""
-#: mod/profiles.php:469
+#: mod/profiles.php:467
msgid "Profile updated."
msgstr ""
-#: mod/profiles.php:523
+#: mod/profiles.php:521
msgid "Hide contacts and friends:"
msgstr ""
-#: mod/profiles.php:528
+#: mod/profiles.php:526
msgid "Hide your contact/friend list from viewers of this profile?"
msgstr ""
-#: mod/profiles.php:548
+#: mod/profiles.php:546
msgid "Show more profile fields:"
msgstr ""
-#: mod/profiles.php:560
+#: mod/profiles.php:558
msgid "Profile Actions"
msgstr ""
-#: mod/profiles.php:561
+#: mod/profiles.php:559
msgid "Edit Profile Details"
msgstr ""
-#: mod/profiles.php:563
+#: mod/profiles.php:561
msgid "Change Profile Photo"
msgstr ""
-#: mod/profiles.php:565
+#: mod/profiles.php:563
msgid "View this profile"
msgstr ""
-#: mod/profiles.php:566
+#: mod/profiles.php:564
msgid "View all profiles"
msgstr ""
-#: mod/profiles.php:568
+#: mod/profiles.php:566
msgid "Create a new profile using these settings"
msgstr ""
-#: mod/profiles.php:569
+#: mod/profiles.php:567
msgid "Clone this profile"
msgstr ""
-#: mod/profiles.php:570
+#: mod/profiles.php:568
msgid "Delete this profile"
msgstr ""
-#: mod/profiles.php:572
+#: mod/profiles.php:570
msgid "Basic information"
msgstr ""
-#: mod/profiles.php:573
+#: mod/profiles.php:571
msgid "Profile picture"
msgstr ""
-#: mod/profiles.php:575
+#: mod/profiles.php:573
msgid "Preferences"
msgstr ""
-#: mod/profiles.php:576
+#: mod/profiles.php:574
msgid "Status information"
msgstr ""
-#: mod/profiles.php:577
+#: mod/profiles.php:575
msgid "Additional information"
msgstr ""
-#: mod/profiles.php:580
+#: mod/profiles.php:578
msgid "Relation"
msgstr ""
-#: mod/profiles.php:584
+#: mod/profiles.php:582
msgid "Your Gender:"
msgstr ""
-#: mod/profiles.php:585
+#: mod/profiles.php:583
msgid "♥ Marital Status:"
msgstr ""
-#: mod/profiles.php:587
+#: mod/profiles.php:585
msgid "Example: fishing photography software"
msgstr ""
-#: mod/profiles.php:592
+#: mod/profiles.php:590
msgid "Profile Name:"
msgstr ""
-#: mod/profiles.php:594
+#: mod/profiles.php:592
msgid ""
"This is your public profile. It may "
"be visible to anybody using the internet."
msgstr ""
-#: mod/profiles.php:595
+#: mod/profiles.php:593
msgid "Your Full Name:"
msgstr ""
-#: mod/profiles.php:596
+#: mod/profiles.php:594
msgid "Title/Description:"
msgstr ""
-#: mod/profiles.php:599
+#: mod/profiles.php:597
msgid "Street Address:"
msgstr ""
-#: mod/profiles.php:600
+#: mod/profiles.php:598
msgid "Locality/City:"
msgstr ""
-#: mod/profiles.php:601
+#: mod/profiles.php:599
msgid "Region/State:"
msgstr ""
-#: mod/profiles.php:602
+#: mod/profiles.php:600
msgid "Postal/Zip Code:"
msgstr ""
-#: mod/profiles.php:603
+#: mod/profiles.php:601
msgid "Country:"
msgstr ""
-#: mod/profiles.php:607
+#: mod/profiles.php:605
msgid "Who: (if applicable)"
msgstr ""
-#: mod/profiles.php:607
+#: mod/profiles.php:605
msgid "Examples: cathy123, Cathy Williams, cathy@example.com"
msgstr ""
-#: mod/profiles.php:608
+#: mod/profiles.php:606
msgid "Since [date]:"
msgstr ""
-#: mod/profiles.php:610
+#: mod/profiles.php:608
msgid "Tell us about yourself..."
msgstr ""
-#: mod/profiles.php:611
+#: mod/profiles.php:609
msgid "XMPP (Jabber) address:"
msgstr ""
-#: mod/profiles.php:611
+#: mod/profiles.php:609
msgid ""
"The XMPP address will be propagated to your contacts so that they can follow "
"you."
msgstr ""
-#: mod/profiles.php:612
+#: mod/profiles.php:610
msgid "Homepage URL:"
msgstr ""
-#: mod/profiles.php:615
+#: mod/profiles.php:613
msgid "Religious Views:"
msgstr ""
-#: mod/profiles.php:616
+#: mod/profiles.php:614
msgid "Public Keywords:"
msgstr ""
-#: mod/profiles.php:616
+#: mod/profiles.php:614
msgid "(Used for suggesting potential friends, can be seen by others)"
msgstr ""
-#: mod/profiles.php:617
+#: mod/profiles.php:615
msgid "Private Keywords:"
msgstr ""
-#: mod/profiles.php:617
+#: mod/profiles.php:615
msgid "(Used for searching profiles, never shown to others)"
msgstr ""
-#: mod/profiles.php:620
+#: mod/profiles.php:618
msgid "Musical interests"
msgstr ""
-#: mod/profiles.php:621
+#: mod/profiles.php:619
msgid "Books, literature"
msgstr ""
-#: mod/profiles.php:622
+#: mod/profiles.php:620
msgid "Television"
msgstr ""
-#: mod/profiles.php:623
+#: mod/profiles.php:621
msgid "Film/dance/culture/entertainment"
msgstr ""
-#: mod/profiles.php:624
+#: mod/profiles.php:622
msgid "Hobbies/Interests"
msgstr ""
-#: mod/profiles.php:625
+#: mod/profiles.php:623
msgid "Love/romance"
msgstr ""
-#: mod/profiles.php:626
+#: mod/profiles.php:624
msgid "Work/employment"
msgstr ""
-#: mod/profiles.php:627
+#: mod/profiles.php:625
msgid "School/education"
msgstr ""
-#: mod/profiles.php:628
+#: mod/profiles.php:626
msgid "Contact information and Social Networks"
msgstr ""
-#: mod/profiles.php:668
+#: mod/profiles.php:666
msgid "Edit/Manage Profiles"
msgstr ""
-#: mod/wall_attach.php:27 mod/wall_attach.php:34 mod/wall_attach.php:72
-#: mod/wall_upload.php:43 mod/wall_upload.php:59 mod/wall_upload.php:104
-#: mod/wall_upload.php:155 mod/wall_upload.php:158
+#: mod/wall_attach.php:26 mod/wall_attach.php:33 mod/wall_attach.php:71
+#: mod/wall_upload.php:42 mod/wall_upload.php:58 mod/wall_upload.php:103
+#: mod/wall_upload.php:154 mod/wall_upload.php:157
msgid "Invalid request."
msgstr ""
-#: mod/wall_attach.php:90
+#: mod/wall_attach.php:89
msgid "Sorry, maybe your upload is bigger than the PHP configuration allows"
msgstr ""
-#: mod/wall_attach.php:90
+#: mod/wall_attach.php:89
msgid "Or - did you try to upload an empty file?"
msgstr ""
-#: mod/wall_attach.php:101
+#: mod/wall_attach.php:100
#, php-format
msgid "File exceeds size limit of %s"
msgstr ""
-#: mod/wall_attach.php:116
+#: mod/wall_attach.php:115
msgid "File upload failed."
msgstr ""
-#: mod/item.php:127
+#: mod/item.php:125
msgid "Unable to locate original post."
msgstr ""
-#: mod/item.php:330
+#: mod/item.php:327
msgid "Empty post discarded."
msgstr ""
-#: mod/item.php:804
+#: mod/item.php:799
#, php-format
msgid ""
"This message was sent to you by %s, a member of the Friendica social network."
msgstr ""
-#: mod/item.php:806
+#: mod/item.php:801
#, php-format
msgid "You may visit them online at %s"
msgstr ""
-#: mod/item.php:807
+#: mod/item.php:802
msgid ""
"Please contact the sender by replying to this post if you do not wish to "
"receive these messages."
msgstr ""
-#: mod/item.php:811
+#: mod/item.php:806
#, php-format
msgid "%s posted an update."
msgstr ""
-#: mod/oexchange.php:32
+#: mod/oexchange.php:31
msgid "Post successful."
msgstr ""
-#: mod/regmod.php:53
+#: mod/regmod.php:49
msgid "Account approved."
msgstr ""
-#: mod/regmod.php:77
+#: mod/regmod.php:73
#, php-format
msgid "Registration revoked for %s"
msgstr ""
-#: mod/regmod.php:84
+#: mod/regmod.php:80
msgid "Please login."
msgstr ""
-#: mod/match.php:49
+#: mod/match.php:48
msgid "No keywords to match. Please add keywords to your default profile."
msgstr ""
-#: mod/match.php:135
+#: mod/match.php:134
msgid "Profile Match"
msgstr ""
-#: mod/settings.php:192
+#: mod/settings.php:187
msgid "Missing some important data!"
msgstr ""
-#: mod/settings.php:302
+#: mod/settings.php:297
msgid "Failed to connect with email account using the settings provided."
msgstr ""
-#: mod/settings.php:307
+#: mod/settings.php:302
msgid "Email settings updated."
msgstr ""
-#: mod/settings.php:323
+#: mod/settings.php:318
msgid "Features updated"
msgstr ""
-#: mod/settings.php:384
+#: mod/settings.php:379
msgid "The theme you chose isn't available."
msgstr ""
-#: mod/settings.php:400
+#: mod/settings.php:395
msgid "Contact CSV file upload error"
msgstr ""
-#: mod/settings.php:414
+#: mod/settings.php:409
msgid "Importing Contacts done"
msgstr ""
-#: mod/settings.php:423
+#: mod/settings.php:418
msgid "Relocate message has been send to your contacts"
msgstr ""
-#: mod/settings.php:435
+#: mod/settings.php:430
msgid "Passwords do not match."
msgstr ""
-#: mod/settings.php:449
+#: mod/settings.php:444
msgid "Password unchanged."
msgstr ""
-#: mod/settings.php:531
+#: mod/settings.php:526
msgid " Please use a shorter name."
msgstr ""
-#: mod/settings.php:534
+#: mod/settings.php:529
msgid " Name too short."
msgstr ""
-#: mod/settings.php:546
+#: mod/settings.php:541
msgid "Invalid email."
msgstr ""
-#: mod/settings.php:552
+#: mod/settings.php:547
msgid "Cannot change to that email."
msgstr ""
-#: mod/settings.php:590
+#: mod/settings.php:584
msgid "Private forum has no privacy permissions. Using default privacy group."
msgstr ""
-#: mod/settings.php:593
+#: mod/settings.php:587
msgid "Private forum has no privacy permissions and no default privacy group."
msgstr ""
-#: mod/settings.php:610
-msgid "Settings updated."
-msgstr ""
-
-#: mod/settings.php:669 mod/settings.php:695 mod/settings.php:729
+#: mod/settings.php:663 mod/settings.php:689 mod/settings.php:723
msgid "Add application"
msgstr ""
-#: mod/settings.php:673 mod/settings.php:699
-msgid "Consumer Key"
-msgstr ""
-
-#: mod/settings.php:674 mod/settings.php:700
-msgid "Consumer Secret"
-msgstr ""
-
-#: mod/settings.php:675 mod/settings.php:701
+#: mod/settings.php:669 mod/settings.php:695
msgid "Redirect"
msgstr ""
-#: mod/settings.php:676 mod/settings.php:702
+#: mod/settings.php:670 mod/settings.php:696
msgid "Icon url"
msgstr ""
-#: mod/settings.php:687
+#: mod/settings.php:681
msgid "You can't edit this application."
msgstr ""
-#: mod/settings.php:728
+#: mod/settings.php:722
msgid "Connected Apps"
msgstr ""
-#: mod/settings.php:732
+#: mod/settings.php:726
msgid "Client key starts with"
msgstr ""
-#: mod/settings.php:733
+#: mod/settings.php:727
msgid "No name"
msgstr ""
-#: mod/settings.php:734
+#: mod/settings.php:728
msgid "Remove authorization"
msgstr ""
-#: mod/settings.php:745
+#: mod/settings.php:739
msgid "No Addon settings configured"
msgstr ""
-#: mod/settings.php:754
-msgid "Addon Settings"
-msgstr ""
-
-#: mod/settings.php:775
+#: mod/settings.php:769
msgid "Additional Features"
msgstr ""
-#: mod/settings.php:800 mod/settings.php:801
+#: mod/settings.php:794 mod/settings.php:795
msgid "enabled"
msgstr ""
-#: mod/settings.php:800 mod/settings.php:801
+#: mod/settings.php:794 mod/settings.php:795
msgid "disabled"
msgstr ""
-#: mod/settings.php:800 mod/settings.php:801
+#: mod/settings.php:794 mod/settings.php:795
#, php-format
msgid "Built-in support for %s connectivity is %s"
msgstr ""
-#: mod/settings.php:801
+#: mod/settings.php:795
msgid "GNU Social (OStatus)"
msgstr ""
-#: mod/settings.php:832
+#: mod/settings.php:826
msgid "Email access is disabled on this site."
msgstr ""
-#: mod/settings.php:837 mod/settings.php:873
+#: mod/settings.php:831 mod/settings.php:867
msgid "None"
msgstr ""
-#: mod/settings.php:848
+#: mod/settings.php:842
msgid "General Social Media Settings"
msgstr ""
-#: mod/settings.php:849
+#: mod/settings.php:843
msgid "Accept only top level posts by contacts you follow"
msgstr ""
-#: mod/settings.php:849
+#: mod/settings.php:843
msgid ""
"The system does an auto completion of threads when a comment arrives. This "
"has got the side effect that you can receive posts that had been started by "
@@ -9894,11 +12534,11 @@ msgid ""
"posts from people you really do follow."
msgstr ""
-#: mod/settings.php:850
+#: mod/settings.php:844
msgid "Disable Content Warning"
msgstr ""
-#: mod/settings.php:850
+#: mod/settings.php:844
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 "
@@ -9906,298 +12546,298 @@ msgid ""
"any other content filtering you eventually set up."
msgstr ""
-#: mod/settings.php:851
+#: mod/settings.php:845
msgid "Disable intelligent shortening"
msgstr ""
-#: mod/settings.php:851
+#: mod/settings.php:845
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 ""
-#: mod/settings.php:852
+#: mod/settings.php:846
msgid "Attach the link title"
msgstr ""
-#: mod/settings.php:852
+#: mod/settings.php:846
msgid ""
"When activated, the title of the attached link will be added as a title on "
"posts to Diaspora. This is mostly helpful with \"remote-self\" contacts that "
"share feed content."
msgstr ""
-#: mod/settings.php:853
+#: mod/settings.php:847
msgid "Automatically follow any GNU Social (OStatus) followers/mentioners"
msgstr ""
-#: mod/settings.php:853
+#: mod/settings.php:847
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 ""
-#: mod/settings.php:854
+#: mod/settings.php:848
msgid "Default group for OStatus contacts"
msgstr ""
-#: mod/settings.php:855
+#: mod/settings.php:849
msgid "Your legacy GNU Social account"
msgstr ""
-#: mod/settings.php:855
+#: mod/settings.php:849
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 ""
-#: mod/settings.php:858
+#: mod/settings.php:852
msgid "Repair OStatus subscriptions"
msgstr ""
-#: mod/settings.php:862
+#: mod/settings.php:856
msgid "Email/Mailbox Setup"
msgstr ""
-#: mod/settings.php:863
+#: mod/settings.php:857
msgid ""
"If you wish to communicate with email contacts using this service "
"(optional), please specify how to connect to your mailbox."
msgstr ""
-#: mod/settings.php:864
+#: mod/settings.php:858
msgid "Last successful email check:"
msgstr ""
-#: mod/settings.php:866
+#: mod/settings.php:860
msgid "IMAP server name:"
msgstr ""
-#: mod/settings.php:867
+#: mod/settings.php:861
msgid "IMAP port:"
msgstr ""
-#: mod/settings.php:868
+#: mod/settings.php:862
msgid "Security:"
msgstr ""
-#: mod/settings.php:869
+#: mod/settings.php:863
msgid "Email login name:"
msgstr ""
-#: mod/settings.php:870
+#: mod/settings.php:864
msgid "Email password:"
msgstr ""
-#: mod/settings.php:871
+#: mod/settings.php:865
msgid "Reply-to address:"
msgstr ""
-#: mod/settings.php:872
+#: mod/settings.php:866
msgid "Send public posts to all email contacts:"
msgstr ""
-#: mod/settings.php:873
+#: mod/settings.php:867
msgid "Action after import:"
msgstr ""
-#: mod/settings.php:873
+#: mod/settings.php:867
msgid "Move to folder"
msgstr ""
-#: mod/settings.php:874
+#: mod/settings.php:868
msgid "Move to folder:"
msgstr ""
-#: mod/settings.php:906
+#: mod/settings.php:900
#, php-format
msgid "%s - (Unsupported)"
msgstr ""
-#: mod/settings.php:952
+#: mod/settings.php:946
msgid "Display Settings"
msgstr ""
-#: mod/settings.php:958
+#: mod/settings.php:952
msgid "Display Theme:"
msgstr ""
-#: mod/settings.php:959
+#: mod/settings.php:953
msgid "Mobile Theme:"
msgstr ""
-#: mod/settings.php:960
+#: mod/settings.php:954
msgid "Suppress warning of insecure networks"
msgstr ""
-#: mod/settings.php:960
+#: mod/settings.php:954
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:961
+#: mod/settings.php:955
msgid "Update browser every xx seconds"
msgstr ""
-#: mod/settings.php:961
+#: mod/settings.php:955
msgid "Minimum of 10 seconds. Enter -1 to disable it."
msgstr ""
-#: mod/settings.php:962
+#: mod/settings.php:956
msgid "Number of items to display per page:"
msgstr ""
-#: mod/settings.php:962 mod/settings.php:963
+#: mod/settings.php:956 mod/settings.php:957
msgid "Maximum of 100 items"
msgstr ""
-#: mod/settings.php:963
+#: mod/settings.php:957
msgid "Number of items to display per page when viewed from mobile device:"
msgstr ""
-#: mod/settings.php:964
+#: mod/settings.php:958
msgid "Don't show emoticons"
msgstr ""
-#: mod/settings.php:965
+#: mod/settings.php:959
msgid "Calendar"
msgstr ""
-#: mod/settings.php:966
+#: mod/settings.php:960
msgid "Beginning of week:"
msgstr ""
-#: mod/settings.php:967
+#: mod/settings.php:961
msgid "Don't show notices"
msgstr ""
-#: mod/settings.php:968
+#: mod/settings.php:962
msgid "Infinite scroll"
msgstr ""
-#: mod/settings.php:969
+#: mod/settings.php:963
msgid "Automatic updates only at the top of the network page"
msgstr ""
-#: mod/settings.php:969
+#: mod/settings.php:963
msgid ""
"When disabled, the network page is updated all the time, which could be "
"confusing while reading."
msgstr ""
-#: mod/settings.php:970
+#: mod/settings.php:964
msgid "Bandwidth Saver Mode"
msgstr ""
-#: mod/settings.php:970
+#: mod/settings.php:964
msgid ""
"When enabled, embedded content is not displayed on automatic updates, they "
"only show on page reload."
msgstr ""
-#: mod/settings.php:971
+#: mod/settings.php:965
msgid "Disable Smart Threading"
msgstr ""
-#: mod/settings.php:971
+#: mod/settings.php:965
msgid "Disable the automatic suppression of extraneous thread indentation."
msgstr ""
-#: mod/settings.php:973
+#: mod/settings.php:967
msgid "General Theme Settings"
msgstr ""
-#: mod/settings.php:974
+#: mod/settings.php:968
msgid "Custom Theme Settings"
msgstr ""
-#: mod/settings.php:975
+#: mod/settings.php:969
msgid "Content Settings"
msgstr ""
-#: mod/settings.php:990
+#: mod/settings.php:984
msgid "Unable to find your profile. Please contact your admin."
msgstr ""
-#: mod/settings.php:1029
+#: mod/settings.php:1023
msgid "Account Types"
msgstr ""
-#: mod/settings.php:1030
+#: mod/settings.php:1024
msgid "Personal Page Subtypes"
msgstr ""
-#: mod/settings.php:1031
+#: mod/settings.php:1025
msgid "Community Forum Subtypes"
msgstr ""
-#: mod/settings.php:1039
+#: mod/settings.php:1033
msgid "Account for a personal profile."
msgstr ""
-#: mod/settings.php:1043
+#: mod/settings.php:1037
msgid ""
"Account for an organisation that automatically approves contact requests as "
"\"Followers\"."
msgstr ""
-#: mod/settings.php:1047
+#: mod/settings.php:1041
msgid ""
"Account for a news reflector that automatically approves contact requests as "
"\"Followers\"."
msgstr ""
-#: mod/settings.php:1051
+#: mod/settings.php:1045
msgid "Account for community discussions."
msgstr ""
-#: mod/settings.php:1055
+#: mod/settings.php:1049
msgid ""
"Account for a regular personal profile that requires manual approval of "
"\"Friends\" and \"Followers\"."
msgstr ""
-#: mod/settings.php:1059
+#: mod/settings.php:1053
msgid ""
"Account for a public profile that automatically approves contact requests as "
"\"Followers\"."
msgstr ""
-#: mod/settings.php:1063
+#: mod/settings.php:1057
msgid "Automatically approves all contact requests."
msgstr ""
-#: mod/settings.php:1067
+#: mod/settings.php:1061
msgid ""
"Account for a popular profile that automatically approves contact requests "
"as \"Friends\"."
msgstr ""
-#: mod/settings.php:1070
+#: mod/settings.php:1064
msgid "Private Forum [Experimental]"
msgstr ""
-#: mod/settings.php:1071
+#: mod/settings.php:1065
msgid "Requires manual approval of contact requests."
msgstr ""
-#: mod/settings.php:1082
+#: mod/settings.php:1076
msgid "OpenID:"
msgstr ""
-#: mod/settings.php:1082
+#: mod/settings.php:1076
msgid "(Optional) Allow this OpenID to login to this account."
msgstr ""
-#: mod/settings.php:1090
+#: mod/settings.php:1084
msgid "Publish your default profile in your local site directory?"
msgstr ""
-#: mod/settings.php:1090
+#: mod/settings.php:1084
#, php-format
msgid ""
"Your profile will be published in this node's local "
@@ -10205,410 +12845,410 @@ msgid ""
"system settings."
msgstr ""
-#: mod/settings.php:1096
+#: mod/settings.php:1090
msgid "Publish your default profile in the global social directory?"
msgstr ""
-#: mod/settings.php:1096
+#: mod/settings.php:1090
#, php-format
msgid ""
"Your profile will be published in the global friendica directories (e.g. %s ). Your profile will be visible in public."
msgstr ""
-#: mod/settings.php:1096
+#: mod/settings.php:1090
msgid ""
"This setting also determines whether Friendica will inform search engines "
"that your profile should be indexed or not. Third-party search engines may "
"or may not respect this setting."
msgstr ""
-#: mod/settings.php:1103
+#: mod/settings.php:1097
msgid "Hide your contact/friend list from viewers of your default profile?"
msgstr ""
-#: mod/settings.php:1103
+#: mod/settings.php:1097
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:1107
+#: mod/settings.php:1101
msgid "Hide your profile details from anonymous viewers?"
msgstr ""
-#: mod/settings.php:1107
+#: mod/settings.php:1101
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:1111
+#: mod/settings.php:1105
msgid "Allow friends to post to your profile page?"
msgstr ""
-#: mod/settings.php:1111
+#: mod/settings.php:1105
msgid ""
"Your contacts may write posts on your profile wall. These posts will be "
"distributed to your contacts"
msgstr ""
-#: mod/settings.php:1115
+#: mod/settings.php:1109
msgid "Allow friends to tag your posts?"
msgstr ""
-#: mod/settings.php:1115
+#: mod/settings.php:1109
msgid "Your contacts can add additional tags to your posts."
msgstr ""
-#: mod/settings.php:1119
+#: mod/settings.php:1113
msgid "Allow us to suggest you as a potential friend to new members?"
msgstr ""
-#: mod/settings.php:1119
+#: mod/settings.php:1113
msgid "If you like, Friendica may suggest new members to add you as a contact."
msgstr ""
-#: mod/settings.php:1123
+#: mod/settings.php:1117
msgid "Permit unknown people to send you private mail?"
msgstr ""
-#: mod/settings.php:1123
+#: mod/settings.php:1117
msgid ""
"Friendica network users may send you private messages even if they are not "
"in your contact list."
msgstr ""
-#: mod/settings.php:1127
+#: mod/settings.php:1121
msgid "Profile is not published ."
msgstr ""
-#: mod/settings.php:1133
+#: mod/settings.php:1127
#, php-format
msgid "Your Identity Address is '%s' or '%s'."
msgstr ""
-#: mod/settings.php:1140
+#: mod/settings.php:1134
msgid "Automatically expire posts after this many days:"
msgstr ""
-#: mod/settings.php:1140
+#: mod/settings.php:1134
msgid "If empty, posts will not expire. Expired posts will be deleted"
msgstr ""
-#: mod/settings.php:1141
+#: mod/settings.php:1135
msgid "Advanced expiration settings"
msgstr ""
-#: mod/settings.php:1142
+#: mod/settings.php:1136
msgid "Advanced Expiration"
msgstr ""
-#: mod/settings.php:1143
+#: mod/settings.php:1137
msgid "Expire posts:"
msgstr ""
-#: mod/settings.php:1144
+#: mod/settings.php:1138
msgid "Expire personal notes:"
msgstr ""
-#: mod/settings.php:1145
+#: mod/settings.php:1139
msgid "Expire starred posts:"
msgstr ""
-#: mod/settings.php:1146
+#: mod/settings.php:1140
msgid "Expire photos:"
msgstr ""
-#: mod/settings.php:1147
+#: mod/settings.php:1141
msgid "Only expire posts by others:"
msgstr ""
-#: mod/settings.php:1177
+#: mod/settings.php:1171
msgid "Account Settings"
msgstr ""
-#: mod/settings.php:1185
+#: mod/settings.php:1179
msgid "Password Settings"
msgstr ""
-#: mod/settings.php:1186
+#: mod/settings.php:1180
msgid ""
"Allowed characters are a-z, A-Z, 0-9 and special characters except white "
"spaces, accentuated letters and colon (:)."
msgstr ""
-#: mod/settings.php:1187
+#: mod/settings.php:1181
msgid "Leave password fields blank unless changing"
msgstr ""
-#: mod/settings.php:1188
+#: mod/settings.php:1182
msgid "Current Password:"
msgstr ""
-#: mod/settings.php:1188 mod/settings.php:1189
+#: mod/settings.php:1182 mod/settings.php:1183
msgid "Your current password to confirm the changes"
msgstr ""
-#: mod/settings.php:1189
+#: mod/settings.php:1183
msgid "Password:"
msgstr ""
-#: mod/settings.php:1192
+#: mod/settings.php:1186
msgid "Delete OpenID URL"
msgstr ""
-#: mod/settings.php:1194
+#: mod/settings.php:1188
msgid "Basic Settings"
msgstr ""
-#: mod/settings.php:1196
+#: mod/settings.php:1190
msgid "Email Address:"
msgstr ""
-#: mod/settings.php:1197
+#: mod/settings.php:1191
msgid "Your Timezone:"
msgstr ""
-#: mod/settings.php:1198
+#: mod/settings.php:1192
msgid "Your Language:"
msgstr ""
-#: mod/settings.php:1198
+#: mod/settings.php:1192
msgid ""
"Set the language we use to show you friendica interface and to send you "
"emails"
msgstr ""
-#: mod/settings.php:1199
+#: mod/settings.php:1193
msgid "Default Post Location:"
msgstr ""
-#: mod/settings.php:1200
+#: mod/settings.php:1194
msgid "Use Browser Location:"
msgstr ""
-#: mod/settings.php:1203
+#: mod/settings.php:1197
msgid "Security and Privacy Settings"
msgstr ""
-#: mod/settings.php:1205
+#: mod/settings.php:1199
msgid "Maximum Friend Requests/Day:"
msgstr ""
-#: mod/settings.php:1205 mod/settings.php:1234
+#: mod/settings.php:1199 mod/settings.php:1228
msgid "(to prevent spam abuse)"
msgstr ""
-#: mod/settings.php:1206
+#: mod/settings.php:1200
msgid "Default Post Permissions"
msgstr ""
-#: mod/settings.php:1207
+#: mod/settings.php:1201
msgid "(click to open/close)"
msgstr ""
-#: mod/settings.php:1217
+#: mod/settings.php:1211
msgid "Default Private Post"
msgstr ""
-#: mod/settings.php:1218
+#: mod/settings.php:1212
msgid "Default Public Post"
msgstr ""
-#: mod/settings.php:1222
+#: mod/settings.php:1216
msgid "Default Permissions for New Posts"
msgstr ""
-#: mod/settings.php:1234
+#: mod/settings.php:1228
msgid "Maximum private messages per day from unknown people:"
msgstr ""
-#: mod/settings.php:1237
+#: mod/settings.php:1231
msgid "Notification Settings"
msgstr ""
-#: mod/settings.php:1238
+#: mod/settings.php:1232
msgid "Send a notification email when:"
msgstr ""
-#: mod/settings.php:1239
+#: mod/settings.php:1233
msgid "You receive an introduction"
msgstr ""
-#: mod/settings.php:1240
+#: mod/settings.php:1234
msgid "Your introductions are confirmed"
msgstr ""
-#: mod/settings.php:1241
+#: mod/settings.php:1235
msgid "Someone writes on your profile wall"
msgstr ""
-#: mod/settings.php:1242
+#: mod/settings.php:1236
msgid "Someone writes a followup comment"
msgstr ""
-#: mod/settings.php:1243
+#: mod/settings.php:1237
msgid "You receive a private message"
msgstr ""
-#: mod/settings.php:1244
+#: mod/settings.php:1238
msgid "You receive a friend suggestion"
msgstr ""
-#: mod/settings.php:1245
+#: mod/settings.php:1239
msgid "You are tagged in a post"
msgstr ""
-#: mod/settings.php:1246
+#: mod/settings.php:1240
msgid "You are poked/prodded/etc. in a post"
msgstr ""
-#: mod/settings.php:1248
+#: mod/settings.php:1242
msgid "Activate desktop notifications"
msgstr ""
-#: mod/settings.php:1248
+#: mod/settings.php:1242
msgid "Show desktop popup on new notifications"
msgstr ""
-#: mod/settings.php:1250
+#: mod/settings.php:1244
msgid "Text-only notification emails"
msgstr ""
-#: mod/settings.php:1252
+#: mod/settings.php:1246
msgid "Send text only notification emails, without the html part"
msgstr ""
-#: mod/settings.php:1254
+#: mod/settings.php:1248
msgid "Show detailled notifications"
msgstr ""
-#: mod/settings.php:1256
+#: 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:1258
+#: mod/settings.php:1252
msgid "Advanced Account/Page Type Settings"
msgstr ""
-#: mod/settings.php:1259
+#: mod/settings.php:1253
msgid "Change the behaviour of this account for special situations"
msgstr ""
-#: mod/settings.php:1262
+#: mod/settings.php:1256
msgid "Import Contacts"
msgstr ""
-#: mod/settings.php:1263
+#: mod/settings.php:1257
msgid ""
"Upload a CSV file that contains the handle of your followed accounts in the "
"first column you exported from the old account."
msgstr ""
-#: mod/settings.php:1264
+#: mod/settings.php:1258
msgid "Upload File"
msgstr ""
-#: mod/settings.php:1266
+#: mod/settings.php:1260
msgid "Relocate"
msgstr ""
-#: mod/settings.php:1267
+#: mod/settings.php:1261
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 ""
-#: mod/settings.php:1268
+#: mod/settings.php:1262
msgid "Resend relocate message to contacts"
msgstr ""
-#: mod/suggest.php:28
+#: mod/suggest.php:27
msgid "Contact suggestion successfully ignored."
msgstr ""
-#: mod/suggest.php:52
+#: mod/suggest.php:51
msgid ""
"No suggestions available. If this is a new site, please try again in 24 "
"hours."
msgstr ""
-#: mod/suggest.php:71
+#: mod/suggest.php:70
msgid "Do you really want to delete this suggestion?"
msgstr ""
-#: mod/suggest.php:89 mod/suggest.php:109
+#: mod/suggest.php:88 mod/suggest.php:108
msgid "Ignore/Hide"
msgstr ""
-#: mod/dfrn_confirm.php:127
+#: mod/dfrn_confirm.php:126
msgid ""
"This may occasionally happen if contact was requested by both persons and it "
"has already been approved."
msgstr ""
-#: mod/dfrn_confirm.php:228
+#: mod/dfrn_confirm.php:227
msgid "Response from remote site was not understood."
msgstr ""
-#: mod/dfrn_confirm.php:235 mod/dfrn_confirm.php:241
+#: mod/dfrn_confirm.php:234 mod/dfrn_confirm.php:240
msgid "Unexpected response from remote site: "
msgstr ""
-#: mod/dfrn_confirm.php:250
+#: mod/dfrn_confirm.php:249
msgid "Confirmation completed successfully."
msgstr ""
-#: mod/dfrn_confirm.php:262
+#: mod/dfrn_confirm.php:261
msgid "Temporary failure. Please wait and try again."
msgstr ""
-#: mod/dfrn_confirm.php:265
+#: mod/dfrn_confirm.php:264
msgid "Introduction failed or was revoked."
msgstr ""
-#: mod/dfrn_confirm.php:270
+#: mod/dfrn_confirm.php:269
msgid "Remote site reported: "
msgstr ""
-#: mod/dfrn_confirm.php:375
+#: mod/dfrn_confirm.php:374
#, php-format
msgid "No user record found for '%s' "
msgstr ""
-#: mod/dfrn_confirm.php:385
+#: mod/dfrn_confirm.php:384
msgid "Our site encryption key is apparently messed up."
msgstr ""
-#: mod/dfrn_confirm.php:396
+#: mod/dfrn_confirm.php:395
msgid "Empty site URL was provided or URL could not be decrypted by us."
msgstr ""
-#: mod/dfrn_confirm.php:412
+#: mod/dfrn_confirm.php:411
msgid "Contact record was not found for you on our site."
msgstr ""
-#: mod/dfrn_confirm.php:426
+#: mod/dfrn_confirm.php:425
#, php-format
msgid "Site public key not available in contact record for URL %s."
msgstr ""
-#: mod/dfrn_confirm.php:442
+#: mod/dfrn_confirm.php:441
msgid ""
"The ID provided by your system is a duplicate on our system. It should work "
"if you try again."
msgstr ""
-#: mod/dfrn_confirm.php:453
+#: mod/dfrn_confirm.php:452
msgid "Unable to set your contact credentials on our system."
msgstr ""
-#: mod/dfrn_confirm.php:509
+#: mod/dfrn_confirm.php:508
msgid "Unable to update your contact profile details on our system"
msgstr ""
@@ -10641,7 +13281,7 @@ msgstr ""
msgid "Please enter your password for verification:"
msgstr ""
-#: mod/wall_upload.php:231
+#: mod/wall_upload.php:230
msgid "Wall Photos"
msgstr ""
@@ -10678,103 +13318,99 @@ msgstr ""
msgid "%1$s is following %2$s's %3$s"
msgstr ""
-#: mod/message.php:74
+#: mod/message.php:72
msgid "Unable to locate contact information."
msgstr ""
-#: mod/message.php:148
+#: mod/message.php:146
msgid "Do you really want to delete this message?"
msgstr ""
-#: mod/message.php:166
+#: mod/message.php:164
msgid "Conversation not found."
msgstr ""
-#: mod/message.php:171
+#: mod/message.php:169
msgid "Message deleted."
msgstr ""
-#: mod/message.php:176 mod/message.php:190
+#: mod/message.php:174 mod/message.php:188
msgid "Conversation removed."
msgstr ""
-#: mod/message.php:289
+#: mod/message.php:287
msgid "No messages."
msgstr ""
-#: mod/message.php:352
+#: mod/message.php:350
msgid "Message not available."
msgstr ""
-#: mod/message.php:406
+#: mod/message.php:404
msgid "Delete message"
msgstr ""
-#: mod/message.php:408 mod/message.php:540
+#: mod/message.php:406 mod/message.php:538
msgid "D, d M Y - g:i A"
msgstr ""
-#: mod/message.php:423 mod/message.php:537
+#: mod/message.php:421 mod/message.php:535
msgid "Delete conversation"
msgstr ""
-#: mod/message.php:425
+#: mod/message.php:423
msgid ""
"No secure communications available. You may be able to "
"respond from the sender's profile page."
msgstr ""
-#: mod/message.php:429
+#: mod/message.php:427
msgid "Send Reply"
msgstr ""
-#: mod/message.php:512
+#: mod/message.php:510
#, php-format
msgid "Unknown sender - %s"
msgstr ""
-#: mod/message.php:514
+#: mod/message.php:512
#, php-format
msgid "You and %s"
msgstr ""
-#: mod/message.php:516
+#: mod/message.php:514
#, php-format
msgid "%s and You"
msgstr ""
-#: mod/message.php:543
+#: mod/message.php:541
#, php-format
msgid "%d message"
msgid_plural "%d messages"
msgstr[0] ""
msgstr[1] ""
-#: mod/repair_ostatus.php:21
+#: mod/repair_ostatus.php:20
msgid "Resubscribing to OStatus contacts"
msgstr ""
-#: mod/hcard.php:21
-msgid "No profile"
-msgstr ""
-
-#: mod/profperm.php:30
+#: mod/profperm.php:29
msgid "Permission denied"
msgstr ""
-#: mod/profperm.php:36 mod/profperm.php:69
+#: mod/profperm.php:35 mod/profperm.php:68
msgid "Invalid profile identifier."
msgstr ""
-#: mod/profperm.php:115
+#: mod/profperm.php:114
msgid "Profile Visibility Editor"
msgstr ""
-#: mod/profperm.php:128
+#: mod/profperm.php:127
msgid "Visible To"
msgstr ""
-#: mod/profperm.php:144
+#: mod/profperm.php:143
msgid "All Contacts (with secure profile access)"
msgstr ""
@@ -10790,14 +13426,14 @@ msgstr ""
msgid "Select a tag to remove: "
msgstr ""
-#: mod/videos.php:120
+#: mod/videos.php:117
msgid "No videos selected"
msgstr ""
-#: mod/videos.php:253
+#: mod/videos.php:250
msgid "Recent Videos"
msgstr ""
-#: mod/videos.php:255
+#: mod/videos.php:252
msgid "Upload New Videos"
msgstr ""
From 5d8c625549893c464589917ae1950c88b5ad85a6 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 22:38:31 +0100
Subject: [PATCH 13/16] cleanup
---
doc/translations.md | 16 ++++++++--------
src/LegacyModule.php | 2 +-
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/doc/translations.md b/doc/translations.md
index f12f07065..a29b0d63b 100644
--- a/doc/translations.md
+++ b/doc/translations.md
@@ -73,14 +73,14 @@ Then run `bin/console po2php view/lang//messages.po` to update the rel
### Basic usage
-- `Friendica\Core\DI::l10n()->t('Label')` => `Label`
-- `Friendica\Core\DI::l10n()->t('Label %s', 'test')` => `Label test`
+- `Friendica\DI::l10n()->t('Label')` => `Label`
+- `Friendica\DI::l10n()->t('Label %s', 'test')` => `Label test`
### Plural
-- `Friendica\Core\DI::l10n()->tt('Label', 'Labels', 1)` => `Label`
-- `Friendica\Core\DI::l10n()->tt('Label', 'Labels', 3)` => `Labels`
-- `Friendica\Core\DI::l10n()->tt('%d Label', '%d Labels', 1)` => `1 Label`
-- `Friendica\Core\DI::l10n()->tt('%d Label', '%d Labels', 3)` => `3 Labels`
-- `Friendica\Core\DI::l10n()->tt('%d Label', 'Labels %2%s %3%s', 1, 'test', 'test2')` => `Label test test2`
-- `Friendica\Core\DI::l10n()->tt('%d Label', 'Labels %2%s %3%s', 3, 'test', 'test2')` => `Labels test test2`
+- `Friendica\DI::l10n()->tt('Label', 'Labels', 1)` => `Label`
+- `Friendica\DI::l10n()->tt('Label', 'Labels', 3)` => `Labels`
+- `Friendica\DI::l10n()->tt('%d Label', '%d Labels', 1)` => `1 Label`
+- `Friendica\DI::l10n()->tt('%d Label', '%d Labels', 3)` => `3 Labels`
+- `Friendica\DI::l10n()->tt('%d Label', 'Labels %2%s %3%s', 1, 'test', 'test2')` => `Label test test2`
+- `Friendica\DI::l10n()->tt('%d Label', 'Labels %2%s %3%s', 3, 'test', 'test2')` => `Labels test test2`
diff --git a/src/LegacyModule.php b/src/LegacyModule.php
index 6a627e98b..ecb21ebc5 100644
--- a/src/LegacyModule.php
+++ b/src/LegacyModule.php
@@ -27,7 +27,7 @@ class LegacyModule extends BaseModule
public static function setModuleFile($file_path)
{
if (!is_readable($file_path)) {
- throw new \Exception(Core\DI::l10n()->t('Legacy module file not found: %s', $file_path));
+ throw new \Exception(DI::l10n()->t('Legacy module file not found: %s', $file_path));
}
self::$moduleName = basename($file_path, '.php');
From 3b16829484a184d1b166626e0a5fb1ea728b0bbe Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sat, 18 Jan 2020 23:00:53 +0100
Subject: [PATCH 14/16] fix forgotten use DI namespaces ...
---
src/Console/ArchiveContact.php | 1 +
src/Content/ContactSelector.php | 1 +
2 files changed, 2 insertions(+)
diff --git a/src/Console/ArchiveContact.php b/src/Console/ArchiveContact.php
index 74f1817d1..78064a1ba 100644
--- a/src/Console/ArchiveContact.php
+++ b/src/Console/ArchiveContact.php
@@ -4,6 +4,7 @@ namespace Friendica\Console;
use Friendica\App;
use Friendica\Database\Database;
+use Friendica\DI;
use Friendica\Util\Strings;
use RuntimeException;
diff --git a/src/Content/ContactSelector.php b/src/Content/ContactSelector.php
index 184707220..0328f063e 100644
--- a/src/Content/ContactSelector.php
+++ b/src/Content/ContactSelector.php
@@ -7,6 +7,7 @@ namespace Friendica\Content;
use Friendica\Core\Hook;
use Friendica\Core\Protocol;
use Friendica\Database\DBA;
+use Friendica\DI;
use Friendica\Util\Network;
use Friendica\Util\Strings;
From 174129af946b912f842cffc474b7ee5119f76247 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sun, 19 Jan 2020 16:29:55 +0100
Subject: [PATCH 15/16] add missing namespaces/fix wrong class-names
---
doc/Addons.md | 2 ++
doc/autoloader.md | 6 +++++-
mod/fsuggest.php | 1 +
mod/wall_attach.php | 1 +
src/App/Router.php | 1 +
src/Core/Installer.php | 1 +
src/Database/DBStructure.php | 1 +
src/Model/Contact.php | 2 +-
src/Module/Credits.php | 1 +
src/Module/Debug/Babel.php | 1 +
src/Module/Search/Acl.php | 1 +
src/Module/Settings/UserExport.php | 2 +-
tests/Util/DbaCacheMockTrait.php | 4 +++-
13 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/doc/Addons.md b/doc/Addons.md
index 9260ee013..171f58ff4 100644
--- a/doc/Addons.md
+++ b/doc/Addons.md
@@ -181,6 +181,8 @@ Put your tpl files in the *templates/* subfolder of your addon.
In your code, like in the function addon_name_content(), load the template file and execute it passing needed values:
```php
+use Friendica\Core\Renderer;
+
# load template file. first argument is the template name,
# second is the addon path relative to friendica top folder
$tpl = Renderer::getMarkupTemplate('mytemplate.tpl', __DIR__);
diff --git a/doc/autoloader.md b/doc/autoloader.md
index 29d3a005f..e1588688f 100644
--- a/doc/autoloader.md
+++ b/doc/autoloader.md
@@ -47,8 +47,10 @@ The code will be something like:
// mod/network.php
getAll();
// pass $items to template
@@ -117,6 +119,8 @@ If your code is in same namespace as the class you need, you don't need to prepe
namespace Friendica;
+use Friendica\Protocol\DFRN;
+
// this is the same content of current include/delivery.php,
// but has been declared to be in "Friendica" namespace
diff --git a/mod/fsuggest.php b/mod/fsuggest.php
index 6d23c3115..73b0f09e8 100644
--- a/mod/fsuggest.php
+++ b/mod/fsuggest.php
@@ -7,6 +7,7 @@ use Friendica\App;
use Friendica\Core\ACL;
use Friendica\Core\Worker;
use Friendica\Database\DBA;
+use Friendica\DI;
use Friendica\Util\DateTimeFormat;
use Friendica\Util\Strings;
use Friendica\Worker\Delivery;
diff --git a/mod/wall_attach.php b/mod/wall_attach.php
index f04698c56..749d09dc0 100644
--- a/mod/wall_attach.php
+++ b/mod/wall_attach.php
@@ -7,6 +7,7 @@ use Friendica\App;
use Friendica\Core\Config;
use Friendica\Core\Session;
use Friendica\Database\DBA;
+use Friendica\DI;
use Friendica\Model\Attach;
use Friendica\Model\User;
use Friendica\Util\Strings;
diff --git a/src/App/Router.php b/src/App/Router.php
index 27ea4ac60..6ae42bb14 100644
--- a/src/App/Router.php
+++ b/src/App/Router.php
@@ -8,6 +8,7 @@ use FastRoute\Dispatcher;
use FastRoute\RouteCollector;
use FastRoute\RouteParser\Std;
use Friendica\Core\Hook;
+use Friendica\DI;
use Friendica\Network\HTTPException;
/**
diff --git a/src/Core/Installer.php b/src/Core/Installer.php
index 3e790e2e3..01ef1d8c9 100644
--- a/src/Core/Installer.php
+++ b/src/Core/Installer.php
@@ -9,6 +9,7 @@ use Exception;
use Friendica\Core\Config\Cache\ConfigCache;
use Friendica\Database\Database;
use Friendica\Database\DBStructure;
+use Friendica\DI;
use Friendica\Util\Images;
use Friendica\Util\Network;
use Friendica\Util\Strings;
diff --git a/src/Database/DBStructure.php b/src/Database/DBStructure.php
index e2a45783b..d70f7f4ec 100644
--- a/src/Database/DBStructure.php
+++ b/src/Database/DBStructure.php
@@ -9,6 +9,7 @@ use Exception;
use Friendica\Core\Config;
use Friendica\Core\Hook;
use Friendica\Core\Logger;
+use Friendica\DI;
use Friendica\Util\DateTimeFormat;
require_once __DIR__ . '/../../include/dba.php';
diff --git a/src/Model/Contact.php b/src/Model/Contact.php
index 5d2c4aa19..9cbf591de 100644
--- a/src/Model/Contact.php
+++ b/src/Model/Contact.php
@@ -342,7 +342,7 @@ class Contact
* @param integer $uid User ID
*
* @return integer|boolean Public contact id for given user id
- * @throws Exception
+ * @throws \Exception
*/
public static function getPublicIdByUserId($uid)
{
diff --git a/src/Module/Credits.php b/src/Module/Credits.php
index 5f2156e64..bafe6311f 100644
--- a/src/Module/Credits.php
+++ b/src/Module/Credits.php
@@ -4,6 +4,7 @@ namespace Friendica\Module;
use Friendica\BaseModule;
use Friendica\Core\Renderer;
+use Friendica\DI;
/**
* Show a credits page for all the developers who helped with the project
diff --git a/src/Module/Debug/Babel.php b/src/Module/Debug/Babel.php
index 03b27e9ab..4b3b47f64 100644
--- a/src/Module/Debug/Babel.php
+++ b/src/Module/Debug/Babel.php
@@ -5,6 +5,7 @@ namespace Friendica\Module\Debug;
use Friendica\BaseModule;
use Friendica\Content\Text;
use Friendica\Core\Renderer;
+use Friendica\DI;
use Friendica\Model\Item;
use Friendica\Util\XML;
diff --git a/src/Module/Search/Acl.php b/src/Module/Search/Acl.php
index 6f8a02cb5..a5a73fb18 100644
--- a/src/Module/Search/Acl.php
+++ b/src/Module/Search/Acl.php
@@ -9,6 +9,7 @@ use Friendica\Core\Logger;
use Friendica\Core\Protocol;
use Friendica\Core\Search;
use Friendica\Database\DBA;
+use Friendica\DI;
use Friendica\Model\Contact;
use Friendica\Model\Item;
use Friendica\Network\HTTPException;
diff --git a/src/Module/Settings/UserExport.php b/src/Module/Settings/UserExport.php
index 71a18f4ee..19b031267 100644
--- a/src/Module/Settings/UserExport.php
+++ b/src/Module/Settings/UserExport.php
@@ -209,7 +209,7 @@ class UserExport extends BaseSettingsModule
* echoes account data and items as separated json, one per line
*
* @param App $a
- * @throws Exception
+ * @throws \Exception
*/
private static function exportAll(App $a)
{
diff --git a/tests/Util/DbaCacheMockTrait.php b/tests/Util/DbaCacheMockTrait.php
index 95e7cbcb1..9d59690c0 100644
--- a/tests/Util/DbaCacheMockTrait.php
+++ b/tests/Util/DbaCacheMockTrait.php
@@ -2,6 +2,8 @@
namespace Friendica\Test\Util;
+use Friendica\Core\Cache\Duration;
+
trait DbaCacheMockTrait
{
/**
@@ -30,7 +32,7 @@ trait DbaCacheMockTrait
$this->mockIsResult(['v' => $value], isset($return), $times);
}
- protected function mockSet($key, $value, $ttl = Cache::FIVE_MINUTES, $time = null, $return = true, $times = null)
+ protected function mockSet($key, $value, $ttl = Duration::FIVE_MINUTES, $time = null, $return = true, $times = null)
{
if ($time === null) {
$time = time();
From 8138b05032186280da7e57706d62e309d6bf2440 Mon Sep 17 00:00:00 2001
From: nupplaPhil
Date: Sun, 19 Jan 2020 17:11:48 +0100
Subject: [PATCH 16/16] fix L10n path after move
---
src/Core/L10n.php | 12 ++++++------
tests/src/Core/{L10n => }/L10nTest.php | 2 +-
2 files changed, 7 insertions(+), 7 deletions(-)
rename tests/src/Core/{L10n => }/L10nTest.php (98%)
diff --git a/src/Core/L10n.php b/src/Core/L10n.php
index 3f92dd580..0238af3bd 100644
--- a/src/Core/L10n.php
+++ b/src/Core/L10n.php
@@ -115,13 +115,13 @@ class L10n
$addons = $this->dba->select('addon', ['name'], ['installed' => true]);
while ($p = $this->dba->fetch($addons)) {
$name = Strings::sanitizeFilePathItem($p['name']);
- if (file_exists("addon/$name/lang/$lang/strings.php")) {
- include __DIR__ . "/../../../addon/$name/lang/$lang/strings.php";
+ if (file_exists(__DIR__ . "/../../addon/$name/lang/$lang/strings.php")) {
+ include __DIR__ . "/../../addon/$name/lang/$lang/strings.php";
}
}
- if (file_exists(__DIR__ . "/../../../view/lang/$lang/strings.php")) {
- include __DIR__ . "/../../../view/lang/$lang/strings.php";
+ if (file_exists(__DIR__ . "/../../view/lang/$lang/strings.php")) {
+ include __DIR__ . "/../../view/lang/$lang/strings.php";
}
$this->lang = $lang;
@@ -191,8 +191,8 @@ class L10n
while (count($lang_code)) {
// try to mix them so we can get double-code parts too
$match_lang = strtolower(join('-', $lang_code));
- if (file_exists(__DIR__ . "/../../../view/lang/$match_lang") &&
- is_dir(__DIR__ . "/../../../view/lang/$match_lang")) {
+ if (file_exists(__DIR__ . "/../../view/lang/$match_lang") &&
+ is_dir(__DIR__ . "/../../view/lang/$match_lang")) {
if ($lang_quality > $current_q) {
$current_lang = $match_lang;
$current_q = $lang_quality;
diff --git a/tests/src/Core/L10n/L10nTest.php b/tests/src/Core/L10nTest.php
similarity index 98%
rename from tests/src/Core/L10n/L10nTest.php
rename to tests/src/Core/L10nTest.php
index b9f6681f4..7d30d3127 100644
--- a/tests/src/Core/L10n/L10nTest.php
+++ b/tests/src/Core/L10nTest.php
@@ -1,6 +1,6 @@