Merge remote-tracking branch 'upstream/2023.03-rc' into npf2
This commit is contained in:
commit
ed875a80f7
13 changed files with 318 additions and 287 deletions
|
@ -71,20 +71,19 @@ pipeline:
|
||||||
else
|
else
|
||||||
phpunit --configuration tests/phpunit.xml;
|
phpunit --configuration tests/phpunit.xml;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
codecov:
|
codecov:
|
||||||
image: plugins/codecov
|
image: friendicaci/codecov
|
||||||
when:
|
when:
|
||||||
matrix:
|
matrix:
|
||||||
PHP_MAJOR_VERSION: 7.4
|
PHP_MAJOR_VERSION: 7.4
|
||||||
PHP_VERSION: 7.4.33
|
PHP_VERSION: 7.4.33
|
||||||
repo:
|
repo:
|
||||||
- friendica/friendica
|
- friendica/friendica
|
||||||
settings:
|
commands:
|
||||||
token:
|
- codecov -R '.' -Z -f 'clover.xml'
|
||||||
from_secret: codecov-token
|
secrets:
|
||||||
files:
|
- source: codecov-token
|
||||||
- clover.xml
|
target: codecov_token
|
||||||
|
|
||||||
services:
|
services:
|
||||||
mariadb:
|
mariadb:
|
||||||
|
|
|
@ -24,6 +24,7 @@
|
||||||
"ext-libxml": "*",
|
"ext-libxml": "*",
|
||||||
"ext-mbstring": "*",
|
"ext-mbstring": "*",
|
||||||
"ext-openssl": "*",
|
"ext-openssl": "*",
|
||||||
|
"ext-posix": "*",
|
||||||
"ext-simplexml": "*",
|
"ext-simplexml": "*",
|
||||||
"ext-xml": "*",
|
"ext-xml": "*",
|
||||||
"asika/simple-console": "^1.0",
|
"asika/simple-console": "^1.0",
|
||||||
|
@ -34,6 +35,7 @@
|
||||||
"friendica/json-ld": "^1.0",
|
"friendica/json-ld": "^1.0",
|
||||||
"geekwright/po": "^2.0",
|
"geekwright/po": "^2.0",
|
||||||
"guzzlehttp/guzzle": "^6.5",
|
"guzzlehttp/guzzle": "^6.5",
|
||||||
|
"kornrunner/blurhash": "^1.2",
|
||||||
"league/html-to-markdown": "^4.8",
|
"league/html-to-markdown": "^4.8",
|
||||||
"level-2/dice": "^4",
|
"level-2/dice": "^4",
|
||||||
"lightopenid/lightopenid": "dev-master",
|
"lightopenid/lightopenid": "dev-master",
|
||||||
|
@ -49,6 +51,7 @@
|
||||||
"phpseclib/phpseclib": "^3.0",
|
"phpseclib/phpseclib": "^3.0",
|
||||||
"pragmarx/google2fa": "^5.0",
|
"pragmarx/google2fa": "^5.0",
|
||||||
"pragmarx/recovery": "^0.2",
|
"pragmarx/recovery": "^0.2",
|
||||||
|
"psr/clock": "^1.0",
|
||||||
"psr/container": "^1.0",
|
"psr/container": "^1.0",
|
||||||
"psr/log": "^1.1",
|
"psr/log": "^1.1",
|
||||||
"seld/cli-prompt": "^1.0",
|
"seld/cli-prompt": "^1.0",
|
||||||
|
@ -71,9 +74,7 @@
|
||||||
"npm-asset/moment": "^2.24",
|
"npm-asset/moment": "^2.24",
|
||||||
"npm-asset/perfect-scrollbar": "0.6.16",
|
"npm-asset/perfect-scrollbar": "0.6.16",
|
||||||
"npm-asset/textcomplete": "^0.18.2",
|
"npm-asset/textcomplete": "^0.18.2",
|
||||||
"npm-asset/typeahead.js": "^0.11.1",
|
"npm-asset/typeahead.js": "^0.11.1"
|
||||||
"kornrunner/blurhash": "^1.2",
|
|
||||||
"psr/clock": "^1.0"
|
|
||||||
},
|
},
|
||||||
"repositories": [
|
"repositories": [
|
||||||
{
|
{
|
||||||
|
|
3
composer.lock
generated
3
composer.lock
generated
|
@ -4,7 +4,7 @@
|
||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"content-hash": "c9e005c79c8556215c30a66c470659eb",
|
"content-hash": "456d14e3ad9be265c5c9e6172a0d18d8",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "asika/simple-console",
|
"name": "asika/simple-console",
|
||||||
|
@ -6474,6 +6474,7 @@
|
||||||
"ext-libxml": "*",
|
"ext-libxml": "*",
|
||||||
"ext-mbstring": "*",
|
"ext-mbstring": "*",
|
||||||
"ext-openssl": "*",
|
"ext-openssl": "*",
|
||||||
|
"ext-posix": "*",
|
||||||
"ext-simplexml": "*",
|
"ext-simplexml": "*",
|
||||||
"ext-xml": "*"
|
"ext-xml": "*"
|
||||||
},
|
},
|
||||||
|
|
|
@ -41,6 +41,7 @@ use Friendica\Model\Post;
|
||||||
use Friendica\Model\Tag;
|
use Friendica\Model\Tag;
|
||||||
use Friendica\Model\User;
|
use Friendica\Model\User;
|
||||||
use Friendica\Model\Verb;
|
use Friendica\Model\Verb;
|
||||||
|
use Friendica\Network\HTTPException\InternalServerErrorException;
|
||||||
use Friendica\Object\Post as PostObject;
|
use Friendica\Object\Post as PostObject;
|
||||||
use Friendica\Object\Thread;
|
use Friendica\Object\Thread;
|
||||||
use Friendica\Protocol\Activity;
|
use Friendica\Protocol\Activity;
|
||||||
|
@ -193,6 +194,52 @@ class Conversation
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the liker phrase based on a list of likers
|
||||||
|
*
|
||||||
|
* @param string $verb the activity verb
|
||||||
|
* @param array $likers a list of likers
|
||||||
|
*
|
||||||
|
* @return string the liker phrase
|
||||||
|
*
|
||||||
|
* @throws InternalServerErrorException in case either the verb is invalid or the list of likers is empty
|
||||||
|
*/
|
||||||
|
private function getLikerPhrase(string $verb, array $likers): string
|
||||||
|
{
|
||||||
|
$total = count($likers);
|
||||||
|
|
||||||
|
if ($total === 0) {
|
||||||
|
throw new InternalServerErrorException(sprintf('There has to be at least one Liker for verb "%s"', $verb));
|
||||||
|
} else if ($total === 1) {
|
||||||
|
$likerString = $likers[0];
|
||||||
|
} else {
|
||||||
|
if ($total < $this->config->get('system', 'max_likers')) {
|
||||||
|
$likerString = implode(', ', array_slice($likers, 0, -1));
|
||||||
|
$likerString .= ' ' . $this->l10n->t('and') . ' ' . $likers[count($likers) - 1];
|
||||||
|
} else {
|
||||||
|
$likerString = implode(', ', array_slice($likers, 0, $this->config->get('system', 'max_likers') - 1));
|
||||||
|
$likerString .= ' ' . $this->l10n->t('and %d other people', $total - $this->config->get('system', 'max_likers'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
switch ($verb) {
|
||||||
|
case 'like':
|
||||||
|
return $this->l10n->tt('%2$s likes this.', '%2$s like this.', $total, $likerString);
|
||||||
|
case 'dislike':
|
||||||
|
return $this->l10n->tt('%2$s doesn\'t like this.', '%2$s don\'t like this.', $total, $likerString);
|
||||||
|
case 'attendyes':
|
||||||
|
return $this->l10n->tt('%2$s attends.', '%2$s attend.', $total, $likerString);
|
||||||
|
case 'attendno':
|
||||||
|
return $this->l10n->tt('%2$s doesn\'t attend.', '%2$s don\'t attend.', $total, $likerString);
|
||||||
|
case 'attendmaybe':
|
||||||
|
return $this->l10n->tt('%2$s attends maybe.', '%2$s attend maybe.', $total, $likerString);
|
||||||
|
case 'announce':
|
||||||
|
return $this->l10n->tt('%2$s reshared this.', '%2$s reshared this.', $total, $likerString);
|
||||||
|
default:
|
||||||
|
throw new InternalServerErrorException(sprintf('Unknown verb "%s"', $verb));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Format the activity text for an item/photo/video
|
* Format the activity text for an item/photo/video
|
||||||
*
|
*
|
||||||
|
@ -205,87 +252,48 @@ class Conversation
|
||||||
public function formatActivity(array $links, string $verb, int $id): string
|
public function formatActivity(array $links, string $verb, int $id): string
|
||||||
{
|
{
|
||||||
$this->profiler->startRecording('rendering');
|
$this->profiler->startRecording('rendering');
|
||||||
$o = '';
|
|
||||||
$expanded = '';
|
$expanded = '';
|
||||||
$phrase = '';
|
|
||||||
|
|
||||||
$total = count($links);
|
$phrase = $this->getLikerPhrase($verb, $links);
|
||||||
if ($total == 1) {
|
$total = count($links);
|
||||||
$likers = $links[0];
|
|
||||||
|
if ($total > 1) {
|
||||||
|
$spanatts = "class=\"btn btn-link fakelink\" onclick=\"openClose('{$verb}list-$id');\"";
|
||||||
|
$explikers = $phrase;
|
||||||
|
|
||||||
// Phrase if there is only one liker. In other cases it will be uses for the expanded
|
|
||||||
// list which show all likers
|
|
||||||
switch ($verb) {
|
switch ($verb) {
|
||||||
case 'like':
|
case 'like':
|
||||||
$phrase = $this->l10n->t('%s likes this.', $likers);
|
$phrase = $this->l10n->tt('<button type="button" %2$s>%1$d person</button> likes this', '<button type="button" %2$s>%1$d people</button> like this', $total, $spanatts);
|
||||||
break;
|
break;
|
||||||
case 'dislike':
|
case 'dislike':
|
||||||
$phrase = $this->l10n->t('%s doesn\'t like this.', $likers);
|
$phrase = $this->l10n->tt('<button type="button" %2$s>%1$d person</button> doesn\'t like this', '<button type="button" %2$s>%1$d peiple</button> don\'t like this', $total, $spanatts);
|
||||||
break;
|
break;
|
||||||
case 'attendyes':
|
case 'attendyes':
|
||||||
$phrase = $this->l10n->t('%s attends.', $likers);
|
$phrase = $this->l10n->tt('<button type="button" %2$s>%1$d person</button> attends', '<button type="button" %2$s>%1$d people</button> attend', $total, $spanatts);
|
||||||
break;
|
break;
|
||||||
case 'attendno':
|
case 'attendno':
|
||||||
$phrase = $this->l10n->t('%s doesn\'t attend.', $likers);
|
$phrase = $this->l10n->tt('<button type="button" %2$s>%1$d person</button> doesn\'t attend','<button type="button" %2$s>%1$d people</button> don\'t attend', $total, $spanatts);
|
||||||
break;
|
break;
|
||||||
case 'attendmaybe':
|
case 'attendmaybe':
|
||||||
$phrase = $this->l10n->t('%s attends maybe.', $likers);
|
$phrase = $this->l10n->tt('<button type="button" %2$s>%1$d person</button> attends maybe', '<button type="button" %2$s>%1$d people</button> attend maybe', $total, $spanatts);
|
||||||
break;
|
break;
|
||||||
case 'announce':
|
case 'announce':
|
||||||
$phrase = $this->l10n->t('%s reshared this.', $likers);
|
$phrase = $this->l10n->tt('<button type="button" %2$s>%1$d person</button> reshared this', '<button type="button" %2$s>%1$d people</button> reshared this', $total, $spanatts);
|
||||||
break;
|
|
||||||
}
|
|
||||||
} elseif ($total > 1) {
|
|
||||||
if ($total < $this->config->get('system', 'max_likers')) {
|
|
||||||
$likers = implode(', ', array_slice($links, 0, -1));
|
|
||||||
$likers .= ' ' . $this->l10n->t('and') . ' ' . $links[count($links) - 1];
|
|
||||||
} else {
|
|
||||||
$likers = implode(', ', array_slice($links, 0, $this->config->get('system', 'max_likers') - 1));
|
|
||||||
$likers .= ' ' . $this->l10n->t('and %d other people', $total - $this->config->get('system', 'max_likers'));
|
|
||||||
}
|
|
||||||
|
|
||||||
$spanatts = "class=\"btn btn-link fakelink\" onclick=\"openClose('{$verb}list-$id');\"";
|
|
||||||
|
|
||||||
$explikers = '';
|
|
||||||
switch ($verb) {
|
|
||||||
case 'like':
|
|
||||||
$phrase = $this->l10n->t('<button type="button" %1$s>%2$d people</button> like this', $spanatts, $total);
|
|
||||||
$explikers = $this->l10n->t('%s like this.', $likers);
|
|
||||||
break;
|
|
||||||
case 'dislike':
|
|
||||||
$phrase = $this->l10n->t('<button type="button" %1$s>%2$d people</button> don\'t like this', $spanatts, $total);
|
|
||||||
$explikers = $this->l10n->t('%s don\'t like this.', $likers);
|
|
||||||
break;
|
|
||||||
case 'attendyes':
|
|
||||||
$phrase = $this->l10n->t('<button type="button" %1$s>%2$d people</button> attend', $spanatts, $total);
|
|
||||||
$explikers = $this->l10n->t('%s attend.', $likers);
|
|
||||||
break;
|
|
||||||
case 'attendno':
|
|
||||||
$phrase = $this->l10n->t('<button type="button" %1$s>%2$d people</button> don\'t attend', $spanatts, $total);
|
|
||||||
$explikers = $this->l10n->t('%s don\'t attend.', $likers);
|
|
||||||
break;
|
|
||||||
case 'attendmaybe':
|
|
||||||
$phrase = $this->l10n->t('<button type="button" %1$s>%2$d people</button> attend maybe', $spanatts, $total);
|
|
||||||
$explikers = $this->l10n->t('%s attend maybe.', $likers);
|
|
||||||
break;
|
|
||||||
case 'announce':
|
|
||||||
$phrase = $this->l10n->t('<button type="button" %1$s>%2$d people</button> reshared this', $spanatts, $total);
|
|
||||||
$explikers = $this->l10n->t('%s reshared this.', $likers);
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$expanded .= "\t" . '<p class="wall-item-' . $verb . '-expanded" id="' . $verb . 'list-' . $id . '" style="display: none;" >' . $explikers . '</p>';
|
$expanded .= "\t" . '<p class="wall-item-' . $verb . '-expanded" id="' . $verb . 'list-' . $id . '" style="display: none;" >' . $explikers . '</p>';
|
||||||
}
|
}
|
||||||
|
|
||||||
$o .= Renderer::replaceMacros(Renderer::getMarkupTemplate('voting_fakelink.tpl'), [
|
$output = Renderer::replaceMacros(Renderer::getMarkupTemplate('voting_fakelink.tpl'), [
|
||||||
'$phrase' => $phrase,
|
'$phrase' => $phrase,
|
||||||
'$type' => $verb,
|
'$type' => $verb,
|
||||||
'$id' => $id
|
'$id' => $id
|
||||||
]);
|
]);
|
||||||
$o .= $expanded;
|
$output .= $expanded;
|
||||||
|
|
||||||
$this->profiler->stopRecording();
|
$this->profiler->stopRecording();
|
||||||
return $o;
|
return $output;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function statusEditor(array $x = [], int $notes_cid = 0, bool $popup = false): string
|
public function statusEditor(array $x = [], int $notes_cid = 0, bool $popup = false): string
|
||||||
|
|
|
@ -523,19 +523,18 @@ class System
|
||||||
* Checks if a given directory is usable for the system
|
* Checks if a given directory is usable for the system
|
||||||
*
|
*
|
||||||
* @param $directory
|
* @param $directory
|
||||||
* @param bool $check_writable
|
|
||||||
*
|
*
|
||||||
* @return boolean the directory is usable
|
* @return boolean the directory is usable
|
||||||
*/
|
*/
|
||||||
private static function isDirectoryUsable($directory, $check_writable = true)
|
private static function isDirectoryUsable(string $directory): bool
|
||||||
{
|
{
|
||||||
if ($directory == '') {
|
if (empty($directory)) {
|
||||||
Logger::warning('Directory is empty. This shouldn\'t happen.');
|
Logger::warning('Directory is empty. This shouldn\'t happen.');
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!file_exists($directory)) {
|
if (!file_exists($directory)) {
|
||||||
Logger::warning('Path does not exist', ['directory' => $directory, 'user' => static::getUser()]);
|
Logger::info('Path does not exist', ['directory' => $directory, 'user' => static::getUser()]);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -549,7 +548,7 @@ class System
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($check_writable && !is_writable($directory)) {
|
if (!is_writable($directory)) {
|
||||||
Logger::warning('Path is not writable', ['directory' => $directory, 'user' => static::getUser()]);
|
Logger::warning('Path is not writable', ['directory' => $directory, 'user' => static::getUser()]);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -601,7 +600,7 @@ class System
|
||||||
$new_temppath = $temppath . "/" . DI::baseUrl()->getHost();
|
$new_temppath = $temppath . "/" . DI::baseUrl()->getHost();
|
||||||
if (!is_dir($new_temppath)) {
|
if (!is_dir($new_temppath)) {
|
||||||
/// @TODO There is a mkdir()+chmod() upwards, maybe generalize this (+ configurable) into a function/method?
|
/// @TODO There is a mkdir()+chmod() upwards, maybe generalize this (+ configurable) into a function/method?
|
||||||
mkdir($new_temppath);
|
@mkdir($new_temppath);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (self::isDirectoryUsable($new_temppath)) {
|
if (self::isDirectoryUsable($new_temppath)) {
|
||||||
|
|
|
@ -112,7 +112,7 @@ class Process extends BaseRepository
|
||||||
try {
|
try {
|
||||||
$processes = $this->db->select(static::$table_name, ['pid'], ['hostname' => $this->currentHost]);
|
$processes = $this->db->select(static::$table_name, ['pid'], ['hostname' => $this->currentHost]);
|
||||||
while ($process = $this->db->fetch($processes)) {
|
while ($process = $this->db->fetch($processes)) {
|
||||||
if (!posix_kill($process['pid'], 0)) {
|
if (!\posix_kill($process['pid'], 0)) {
|
||||||
$this->db->delete(static::$table_name, ['pid' => $process['pid']]);
|
$this->db->delete(static::$table_name, ['pid' => $process['pid']]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,6 +39,7 @@ use Friendica\Object\Api\Mastodon\Status\FriendicaExtension;
|
||||||
use Friendica\Object\Api\Mastodon\Status\FriendicaVisibility;
|
use Friendica\Object\Api\Mastodon\Status\FriendicaVisibility;
|
||||||
use Friendica\Protocol\Activity;
|
use Friendica\Protocol\Activity;
|
||||||
use Friendica\Protocol\ActivityPub;
|
use Friendica\Protocol\ActivityPub;
|
||||||
|
use Friendica\Util\ACLFormatter;
|
||||||
use ImagickException;
|
use ImagickException;
|
||||||
use Psr\Log\LoggerInterface;
|
use Psr\Log\LoggerInterface;
|
||||||
|
|
||||||
|
@ -62,6 +63,8 @@ class Status extends BaseFactory
|
||||||
private $mstdnPollFactory;
|
private $mstdnPollFactory;
|
||||||
/** @var ContentItem */
|
/** @var ContentItem */
|
||||||
private $contentItem;
|
private $contentItem;
|
||||||
|
/** @var ACLFormatter */
|
||||||
|
private $aclFormatter;
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
LoggerInterface $logger,
|
LoggerInterface $logger,
|
||||||
|
@ -73,7 +76,8 @@ class Status extends BaseFactory
|
||||||
Attachment $mstdnAttachmentFactory,
|
Attachment $mstdnAttachmentFactory,
|
||||||
Error $mstdnErrorFactory,
|
Error $mstdnErrorFactory,
|
||||||
Poll $mstdnPollFactory,
|
Poll $mstdnPollFactory,
|
||||||
ContentItem $contentItem
|
ContentItem $contentItem,
|
||||||
|
ACLFormatter $aclFormatter
|
||||||
) {
|
) {
|
||||||
parent::__construct($logger);
|
parent::__construct($logger);
|
||||||
$this->dba = $dba;
|
$this->dba = $dba;
|
||||||
|
@ -85,6 +89,7 @@ class Status extends BaseFactory
|
||||||
$this->mstdnErrorFactory = $mstdnErrorFactory;
|
$this->mstdnErrorFactory = $mstdnErrorFactory;
|
||||||
$this->mstdnPollFactory = $mstdnPollFactory;
|
$this->mstdnPollFactory = $mstdnPollFactory;
|
||||||
$this->contentItem = $contentItem;
|
$this->contentItem = $contentItem;
|
||||||
|
$this->aclFormatter = $aclFormatter;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -169,7 +174,7 @@ class Status extends BaseFactory
|
||||||
$count_dislike
|
$count_dislike
|
||||||
);
|
);
|
||||||
|
|
||||||
$origin_like = ($count_like == 0) ? false : Post::exists([
|
$origin_like = $count_like > 0 && Post::exists([
|
||||||
'thr-parent-id' => $uriId,
|
'thr-parent-id' => $uriId,
|
||||||
'uid' => $uid,
|
'uid' => $uid,
|
||||||
'origin' => true,
|
'origin' => true,
|
||||||
|
@ -177,7 +182,7 @@ class Status extends BaseFactory
|
||||||
'vid' => Verb::getID(Activity::LIKE),
|
'vid' => Verb::getID(Activity::LIKE),
|
||||||
'deleted' => false
|
'deleted' => false
|
||||||
]);
|
]);
|
||||||
$origin_dislike = ($count_dislike == 0) ? false : Post::exists([
|
$origin_dislike = $count_dislike > 0 && Post::exists([
|
||||||
'thr-parent-id' => $uriId,
|
'thr-parent-id' => $uriId,
|
||||||
'uid' => $uid,
|
'uid' => $uid,
|
||||||
'origin' => true,
|
'origin' => true,
|
||||||
|
@ -185,7 +190,7 @@ class Status extends BaseFactory
|
||||||
'vid' => Verb::getID(Activity::DISLIKE),
|
'vid' => Verb::getID(Activity::DISLIKE),
|
||||||
'deleted' => false
|
'deleted' => false
|
||||||
]);
|
]);
|
||||||
$origin_announce = ($count_announce == 0) ? false : Post::exists([
|
$origin_announce = $count_announce > 0 && (Post::exists([
|
||||||
'thr-parent-id' => $uriId,
|
'thr-parent-id' => $uriId,
|
||||||
'uid' => $uid,
|
'uid' => $uid,
|
||||||
'origin' => true,
|
'origin' => true,
|
||||||
|
@ -194,16 +199,16 @@ class Status extends BaseFactory
|
||||||
'deleted' => false
|
'deleted' => false
|
||||||
]) || Post::exists([
|
]) || Post::exists([
|
||||||
'quote-uri-id' => $uriId,
|
'quote-uri-id' => $uriId,
|
||||||
'uid' => $uid,
|
'uid' => $uid,
|
||||||
'origin' => true,
|
'origin' => true,
|
||||||
'body' => '',
|
'body' => '',
|
||||||
'deleted' => false
|
'deleted' => false
|
||||||
]);
|
]));
|
||||||
$userAttributes = new \Friendica\Object\Api\Mastodon\Status\UserAttributes(
|
$userAttributes = new \Friendica\Object\Api\Mastodon\Status\UserAttributes(
|
||||||
$origin_like,
|
$origin_like,
|
||||||
$origin_announce,
|
$origin_announce,
|
||||||
Post\ThreadUser::getIgnored($uriId, $uid),
|
Post\ThreadUser::getIgnored($uriId, $uid),
|
||||||
(bool)($item['starred'] && ($item['gravity'] == Item::GRAVITY_PARENT)),
|
$item['starred'] && $item['gravity'] == Item::GRAVITY_PARENT,
|
||||||
$item['featured']
|
$item['featured']
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -300,10 +305,9 @@ class Status extends BaseFactory
|
||||||
$in_reply = [];
|
$in_reply = [];
|
||||||
}
|
}
|
||||||
|
|
||||||
$aclFormatter = DI::aclFormatter();
|
|
||||||
$delivery_data = $uid != $item['uid'] ? null : new FriendicaDeliveryData($item['delivery_queue_count'], $item['delivery_queue_done'], $item['delivery_queue_failed']);
|
$delivery_data = $uid != $item['uid'] ? null : new FriendicaDeliveryData($item['delivery_queue_count'], $item['delivery_queue_done'], $item['delivery_queue_failed']);
|
||||||
$visibility_data = $uid != $item['uid'] ? null : new FriendicaVisibility($aclFormatter->expand($item['allow_cid']), $aclFormatter->expand($item['deny_cid']), $aclFormatter->expand($item['allow_gid']), $aclFormatter->expand($item['deny_gid']));
|
$visibility_data = $uid != $item['uid'] ? null : new FriendicaVisibility($this->aclFormatter->expand($item['allow_cid']), $this->aclFormatter->expand($item['deny_cid']), $this->aclFormatter->expand($item['allow_gid']), $this->aclFormatter->expand($item['deny_gid']));
|
||||||
$friendica = new FriendicaExtension($item['title'], $item['changed'], $item['commented'], $item['received'], $counts->dislikes, $origin_dislike, $delivery_data, $visibility_data);
|
$friendica = new FriendicaExtension($item['title'] ?? '', $item['changed'], $item['commented'], $item['received'], $counts->dislikes, $origin_dislike, $delivery_data, $visibility_data);
|
||||||
|
|
||||||
return new \Friendica\Object\Api\Mastodon\Status($item, $account, $counts, $userAttributes, $sensitive, $application, $mentions, $tags, $card, $attachments, $in_reply, $reshare, $friendica, $quote, $poll);
|
return new \Friendica\Object\Api\Mastodon\Status($item, $account, $counts, $userAttributes, $sensitive, $application, $mentions, $tags, $card, $attachments, $in_reply, $reshare, $friendica, $quote, $poll);
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,6 +31,7 @@ use Friendica\Core\System;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBA;
|
use Friendica\Database\DBA;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
|
use Friendica\Network\HTTPException\InternalServerErrorException;
|
||||||
use Friendica\Protocol\Activity;
|
use Friendica\Protocol\Activity;
|
||||||
use Friendica\Protocol\ActivityPub;
|
use Friendica\Protocol\ActivityPub;
|
||||||
use Friendica\Protocol\Delivery;
|
use Friendica\Protocol\Delivery;
|
||||||
|
@ -1394,10 +1395,16 @@ class Item
|
||||||
*
|
*
|
||||||
* @param integer $uri_id
|
* @param integer $uri_id
|
||||||
* @return void
|
* @return void
|
||||||
|
* @throws InternalServerErrorException
|
||||||
|
* @throws \ImagickException
|
||||||
*/
|
*/
|
||||||
public static function updateDisplayCache(int $uri_id)
|
public static function updateDisplayCache(int $uri_id)
|
||||||
{
|
{
|
||||||
$item = Post::selectFirst(self::DISPLAY_FIELDLIST, ['uri-id' => $uri_id]);
|
$item = Post::selectFirst(self::DISPLAY_FIELDLIST, ['uri-id' => $uri_id]);
|
||||||
|
if (!$item) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
self::prepareBody($item, false, false, true);
|
self::prepareBody($item, false, false, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3042,7 +3049,11 @@ class Item
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($quote_uri_id)) {
|
if (!empty($quote_uri_id)) {
|
||||||
$item['body'] .= "\n" . DI::contentItem()->createSharedBlockByArray($shared_item);
|
if (isset($shared_item['plink'])) {
|
||||||
|
$item['body'] .= "\n" . DI::contentItem()->createSharedBlockByArray($shared_item);
|
||||||
|
} else {
|
||||||
|
DI::logger()->warning('Missing plink in shared item', ['item' => $item, 'shared' => $shared, 'quote_uri_id' => $quote_uri_id, 'shared_item' => $shared_item]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($shared_item['uri-id'])) {
|
if (!empty($shared_item['uri-id'])) {
|
||||||
|
|
|
@ -35,7 +35,7 @@ use Friendica\Core\System;
|
||||||
use Friendica\Core\Worker;
|
use Friendica\Core\Worker;
|
||||||
use Friendica\Database\DBA;
|
use Friendica\Database\DBA;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
use Friendica\Module\Register;
|
use Friendica\Module;
|
||||||
use Friendica\Network\HTTPClient\Client\HttpClientAccept;
|
use Friendica\Network\HTTPClient\Client\HttpClientAccept;
|
||||||
use Friendica\Security\TwoFactor\Model\AppSpecificPassword;
|
use Friendica\Security\TwoFactor\Model\AppSpecificPassword;
|
||||||
use Friendica\Network\HTTPException;
|
use Friendica\Network\HTTPException;
|
||||||
|
@ -1890,17 +1890,17 @@ class User
|
||||||
}
|
}
|
||||||
|
|
||||||
$register_policy = DI::config()->get('config', 'register_policy');
|
$register_policy = DI::config()->get('config', 'register_policy');
|
||||||
if (!in_array($register_policy, [Register::OPEN, Register::CLOSED])) {
|
if (!in_array($register_policy, [Module\Register::OPEN, Module\Register::CLOSED])) {
|
||||||
Logger::debug('Unsupported register policy.', ['policy' => $register_policy]);
|
Logger::debug('Unsupported register policy.', ['policy' => $register_policy]);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
$users = DBA::count('user', ['blocked' => false, 'account_removed' => false, 'account_expired' => false]);
|
$users = DBA::count('user', ['blocked' => false, 'account_removed' => false, 'account_expired' => false]);
|
||||||
if (($users >= $max_registered_users) && ($register_policy == Register::OPEN)) {
|
if (($users >= $max_registered_users) && ($register_policy == Module\Register::OPEN)) {
|
||||||
DI::config()->set('config', 'register_policy', Register::CLOSED);
|
DI::config()->set('config', 'register_policy', Module\Register::CLOSED);
|
||||||
Logger::notice('Max users reached, registration is closed.', ['users' => $users, 'max' => $max_registered_users]);
|
Logger::notice('Max users reached, registration is closed.', ['users' => $users, 'max' => $max_registered_users]);
|
||||||
} elseif (($users < $max_registered_users) && ($register_policy == Register::CLOSED)) {
|
} elseif (($users < $max_registered_users) && ($register_policy == Module\Register::CLOSED)) {
|
||||||
DI::config()->set('config', 'register_policy', Register::OPEN);
|
DI::config()->set('config', 'register_policy', Module\Register::OPEN);
|
||||||
Logger::notice('Below maximum users, registration is opened.', ['users' => $users, 'max' => $max_registered_users]);
|
Logger::notice('Below maximum users, registration is opened.', ['users' => $users, 'max' => $max_registered_users]);
|
||||||
} else {
|
} else {
|
||||||
Logger::debug('Unchanged register policy', ['policy' => $register_policy, 'users' => $users, 'max' => $max_registered_users]);
|
Logger::debug('Unchanged register policy', ['policy' => $register_policy, 'users' => $users, 'max' => $max_registered_users]);
|
||||||
|
|
|
@ -62,15 +62,15 @@ class FriendicaExtension extends BaseDataTransferObject
|
||||||
/**
|
/**
|
||||||
* Creates a FriendicaExtension object
|
* Creates a FriendicaExtension object
|
||||||
*
|
*
|
||||||
* @param string $title
|
* @param string $title
|
||||||
* @param string|null $changed_at
|
* @param ?string $changed_at
|
||||||
* @param string|null $commented_at
|
* @param ?string $commented_at
|
||||||
* @param string|null $edited_at
|
* @param ?string $received_at
|
||||||
* @param string|null $received_at
|
* @param int $dislikes_count
|
||||||
* @param int $dislikes_count
|
* @param bool $disliked
|
||||||
* @param bool $disliked
|
* @param ?FriendicaDeliveryData $delivery_data
|
||||||
* @param FriendicaDeliveryData|null $delivery_data
|
* @param ?FriendicaVisibility $visibility
|
||||||
* @param FriendicaVisibility|null $visibility
|
* @throws \Exception
|
||||||
*/
|
*/
|
||||||
public function __construct(
|
public function __construct(
|
||||||
string $title,
|
string $title,
|
||||||
|
|
|
@ -182,8 +182,8 @@ class DateTimeFormat
|
||||||
*/
|
*/
|
||||||
public static function fix(string $dateString): string
|
public static function fix(string $dateString): string
|
||||||
{
|
{
|
||||||
$search = ['Mär', 'März', 'Mai', 'Juni', 'Juli', 'Okt', 'Dez', 'ET' , 'ZZ', ' - ', '+', '&#43;', ' (Coordinated Universal Time)'];
|
$search = ['Mär', 'März', 'Mai', 'Juni', 'Juli', 'Okt', 'Dez', 'ET' , 'ZZ', ' - ', '+', '&#43;', ' (Coordinated Universal Time)', '\\'];
|
||||||
$replace = ['Mar', 'Mar' , 'May', 'Jun' , 'Jul' , 'Oct', 'Dec', 'EST', 'Z' , ', ' , '+' , '+' , ''];
|
$replace = ['Mar', 'Mar' , 'May', 'Jun' , 'Jul' , 'Oct', 'Dec', 'EST', 'Z' , ', ' , '+' , '+' , '' , ''];
|
||||||
|
|
||||||
$dateString = str_replace($search, $replace, $dateString);
|
$dateString = str_replace($search, $replace, $dateString);
|
||||||
|
|
||||||
|
|
|
@ -134,7 +134,11 @@ class DateTimeFormatTest extends MockedTest
|
||||||
'Double HTML encode' => [
|
'Double HTML encode' => [
|
||||||
'expectedDate' => '2015-05-22T08:48:00+12:00',
|
'expectedDate' => '2015-05-22T08:48:00+12:00',
|
||||||
'dateString' => '2015-05-22T08:48:00&#43;12:00'
|
'dateString' => '2015-05-22T08:48:00&#43;12:00'
|
||||||
]
|
],
|
||||||
|
'2023-04-02\T17:22:42+05:30' => [
|
||||||
|
'expectedDate' => '2023-04-02T17:22:42+05:30',
|
||||||
|
'dateString' => '2023-04-02\T17:22:42+05:30'
|
||||||
|
],
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: 2023.03-rc\n"
|
"Project-Id-Version: 2023.03-rc\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2023-03-28 17:42+0000\n"
|
"POT-Creation-Date: 2023-04-02 09:34+0000\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
|
@ -50,8 +50,8 @@ msgstr ""
|
||||||
#: src/Module/BaseNotifications.php:98 src/Module/BaseSettings.php:52
|
#: src/Module/BaseNotifications.php:98 src/Module/BaseSettings.php:52
|
||||||
#: src/Module/Calendar/Event/API.php:88 src/Module/Calendar/Event/Form.php:84
|
#: src/Module/Calendar/Event/API.php:88 src/Module/Calendar/Event/Form.php:84
|
||||||
#: src/Module/Calendar/Export.php:82 src/Module/Calendar/Show.php:82
|
#: src/Module/Calendar/Export.php:82 src/Module/Calendar/Show.php:82
|
||||||
#: src/Module/Contact/Advanced.php:60 src/Module/Contact/Follow.php:86
|
#: src/Module/Contact/Advanced.php:60 src/Module/Contact/Follow.php:87
|
||||||
#: src/Module/Contact/Follow.php:159 src/Module/Contact/MatchInterests.php:86
|
#: src/Module/Contact/Follow.php:160 src/Module/Contact/MatchInterests.php:86
|
||||||
#: src/Module/Contact/Suggestions.php:54 src/Module/Contact/Unfollow.php:66
|
#: src/Module/Contact/Suggestions.php:54 src/Module/Contact/Unfollow.php:66
|
||||||
#: src/Module/Contact/Unfollow.php:80 src/Module/Contact/Unfollow.php:112
|
#: src/Module/Contact/Unfollow.php:80 src/Module/Contact/Unfollow.php:112
|
||||||
#: src/Module/Delegation.php:118 src/Module/FollowConfirm.php:38
|
#: src/Module/Delegation.php:118 src/Module/FollowConfirm.php:38
|
||||||
|
@ -281,7 +281,7 @@ msgstr ""
|
||||||
msgid "Your message:"
|
msgid "Your message:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/message.php:200 mod/message.php:355 src/Content/Conversation.php:352
|
#: mod/message.php:200 mod/message.php:355 src/Content/Conversation.php:360
|
||||||
#: src/Module/Post/Edit.php:131
|
#: src/Module/Post/Edit.php:131
|
||||||
msgid "Upload photo"
|
msgid "Upload photo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -292,7 +292,7 @@ msgid "Insert web link"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/message.php:202 mod/message.php:358 mod/photos.php:1291
|
#: mod/message.php:202 mod/message.php:358 mod/photos.php:1291
|
||||||
#: src/Content/Conversation.php:381 src/Content/Conversation.php:725
|
#: src/Content/Conversation.php:389 src/Content/Conversation.php:733
|
||||||
#: src/Module/Item/Compose.php:204 src/Module/Post/Edit.php:145
|
#: src/Module/Item/Compose.php:204 src/Module/Post/Edit.php:145
|
||||||
#: src/Module/Profile/UnkMail.php:154 src/Object/Post.php:545
|
#: src/Module/Profile/UnkMail.php:154 src/Object/Post.php:545
|
||||||
msgid "Please wait"
|
msgid "Please wait"
|
||||||
|
@ -475,7 +475,7 @@ msgstr ""
|
||||||
msgid "Do not show a status post for this upload"
|
msgid "Do not show a status post for this upload"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/photos.php:733 mod/photos.php:1093 src/Content/Conversation.php:383
|
#: mod/photos.php:733 mod/photos.php:1093 src/Content/Conversation.php:391
|
||||||
#: src/Module/Calendar/Event/Form.php:253 src/Module/Post/Edit.php:182
|
#: src/Module/Calendar/Event/Form.php:253 src/Module/Post/Edit.php:182
|
||||||
msgid "Permissions"
|
msgid "Permissions"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -488,8 +488,8 @@ msgstr ""
|
||||||
msgid "Delete Album"
|
msgid "Delete Album"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/photos.php:798 mod/photos.php:899 src/Content/Conversation.php:399
|
#: mod/photos.php:798 mod/photos.php:899 src/Content/Conversation.php:407
|
||||||
#: src/Module/Contact/Follow.php:172 src/Module/Contact/Revoke.php:109
|
#: src/Module/Contact/Follow.php:173 src/Module/Contact/Revoke.php:109
|
||||||
#: src/Module/Contact/Unfollow.php:126
|
#: src/Module/Contact/Unfollow.php:126
|
||||||
#: src/Module/Media/Attachment/Browser.php:77
|
#: src/Module/Media/Attachment/Browser.php:77
|
||||||
#: src/Module/Media/Photo/Browser.php:88 src/Module/Post/Edit.php:167
|
#: src/Module/Media/Photo/Browser.php:88 src/Module/Post/Edit.php:167
|
||||||
|
@ -606,22 +606,22 @@ msgid "Comment"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/photos.php:1139 mod/photos.php:1195 mod/photos.php:1269
|
#: mod/photos.php:1139 mod/photos.php:1195 mod/photos.php:1269
|
||||||
#: src/Content/Conversation.php:396 src/Module/Calendar/Event/Form.php:248
|
#: src/Content/Conversation.php:404 src/Module/Calendar/Event/Form.php:248
|
||||||
#: src/Module/Item/Compose.php:199 src/Module/Post/Edit.php:165
|
#: src/Module/Item/Compose.php:199 src/Module/Post/Edit.php:165
|
||||||
#: src/Object/Post.php:1069
|
#: src/Object/Post.php:1069
|
||||||
msgid "Preview"
|
msgid "Preview"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/photos.php:1140 src/Content/Conversation.php:351
|
#: mod/photos.php:1140 src/Content/Conversation.php:359
|
||||||
#: src/Module/Post/Edit.php:130 src/Object/Post.php:1059
|
#: src/Module/Post/Edit.php:130 src/Object/Post.php:1059
|
||||||
msgid "Loading..."
|
msgid "Loading..."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/photos.php:1226 src/Content/Conversation.php:641 src/Object/Post.php:256
|
#: mod/photos.php:1226 src/Content/Conversation.php:649 src/Object/Post.php:256
|
||||||
msgid "Select"
|
msgid "Select"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: mod/photos.php:1227 src/Content/Conversation.php:642
|
#: mod/photos.php:1227 src/Content/Conversation.php:650
|
||||||
#: src/Module/Moderation/Users/Active.php:136
|
#: src/Module/Moderation/Users/Active.php:136
|
||||||
#: src/Module/Moderation/Users/Blocked.php:136
|
#: src/Module/Moderation/Users/Blocked.php:136
|
||||||
#: src/Module/Moderation/Users/Index.php:151
|
#: src/Module/Moderation/Users/Index.php:151
|
||||||
|
@ -1064,355 +1064,359 @@ msgstr ""
|
||||||
msgid "%s (via %s)"
|
msgid "%s (via %s)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:220
|
#: src/Content/Conversation.php:218
|
||||||
#, php-format
|
|
||||||
msgid "%s likes this."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:223
|
|
||||||
#, php-format
|
|
||||||
msgid "%s doesn't like this."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:226
|
|
||||||
#, php-format
|
|
||||||
msgid "%s attends."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:229
|
|
||||||
#, php-format
|
|
||||||
msgid "%s doesn't attend."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:232
|
|
||||||
#, php-format
|
|
||||||
msgid "%s attends maybe."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:235 src/Content/Conversation.php:273
|
|
||||||
#: src/Content/Conversation.php:885
|
|
||||||
#, php-format
|
|
||||||
msgid "%s reshared this."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:241
|
|
||||||
msgid "and"
|
msgid "and"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:244
|
#: src/Content/Conversation.php:221
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "and %d other people"
|
msgid "and %d other people"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:252
|
#: src/Content/Conversation.php:227
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "<button type=\"button\" %1$s>%2$d people</button> like this"
|
msgid "%2$s likes this."
|
||||||
msgstr ""
|
msgid_plural "%2$s like this."
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:253
|
#: src/Content/Conversation.php:229
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s like this."
|
msgid "%2$s doesn't like this."
|
||||||
msgstr ""
|
msgid_plural "%2$s don't like this."
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:256
|
#: src/Content/Conversation.php:231
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "<button type=\"button\" %1$s>%2$d people</button> don't like this"
|
msgid "%2$s attends."
|
||||||
msgstr ""
|
msgid_plural "%2$s attend."
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:257
|
#: src/Content/Conversation.php:233
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s don't like this."
|
msgid "%2$s doesn't attend."
|
||||||
msgstr ""
|
msgid_plural "%2$s don't attend."
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:260
|
#: src/Content/Conversation.php:235
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "<button type=\"button\" %1$s>%2$d people</button> attend"
|
msgid "%2$s attends maybe."
|
||||||
msgstr ""
|
msgid_plural "%2$s attend maybe."
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:261
|
#: src/Content/Conversation.php:237
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s attend."
|
msgid "%2$s reshared this."
|
||||||
msgstr ""
|
msgid_plural "%2$s reshared this."
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:264
|
#: src/Content/Conversation.php:266
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "<button type=\"button\" %1$s>%2$d people</button> don't attend"
|
msgid "<button type=\"button\" %2$s>%1$d person</button> likes this"
|
||||||
msgstr ""
|
msgid_plural "<button type=\"button\" %2$s>%1$d people</button> like this"
|
||||||
|
msgstr[0] ""
|
||||||
#: src/Content/Conversation.php:265
|
msgstr[1] ""
|
||||||
#, php-format
|
|
||||||
msgid "%s don't attend."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:268
|
|
||||||
#, php-format
|
|
||||||
msgid "<button type=\"button\" %1$s>%2$d people</button> attend maybe"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/Content/Conversation.php:269
|
#: src/Content/Conversation.php:269
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s attend maybe."
|
msgid "<button type=\"button\" %2$s>%1$d person</button> doesn't like this"
|
||||||
msgstr ""
|
msgid_plural ""
|
||||||
|
"<button type=\"button\" %2$s>%1$d peiple</button> don't like this"
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:272
|
#: src/Content/Conversation.php:272
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "<button type=\"button\" %1$s>%2$d people</button> reshared this"
|
msgid "<button type=\"button\" %2$s>%1$d person</button> attends"
|
||||||
msgstr ""
|
msgid_plural "<button type=\"button\" %2$s>%1$d people</button> attend"
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:320
|
#: src/Content/Conversation.php:275
|
||||||
|
#, php-format
|
||||||
|
msgid "<button type=\"button\" %2$s>%1$d person</button> doesn't attend"
|
||||||
|
msgid_plural "<button type=\"button\" %2$s>%1$d people</button> don't attend"
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
|
#: src/Content/Conversation.php:278
|
||||||
|
#, php-format
|
||||||
|
msgid "<button type=\"button\" %2$s>%1$d person</button> attends maybe"
|
||||||
|
msgid_plural "<button type=\"button\" %2$s>%1$d people</button> attend maybe"
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
|
#: src/Content/Conversation.php:281
|
||||||
|
#, php-format
|
||||||
|
msgid "<button type=\"button\" %2$s>%1$d person</button> reshared this"
|
||||||
|
msgid_plural "<button type=\"button\" %2$s>%1$d people</button> reshared this"
|
||||||
|
msgstr[0] ""
|
||||||
|
msgstr[1] ""
|
||||||
|
|
||||||
|
#: src/Content/Conversation.php:328
|
||||||
msgid "Visible to <strong>everybody</strong>"
|
msgid "Visible to <strong>everybody</strong>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:321 src/Module/Item/Compose.php:198
|
#: src/Content/Conversation.php:329 src/Module/Item/Compose.php:198
|
||||||
#: src/Object/Post.php:1068
|
#: src/Object/Post.php:1068
|
||||||
msgid "Please enter a image/video/audio/webpage URL:"
|
msgid "Please enter a image/video/audio/webpage URL:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:322
|
#: src/Content/Conversation.php:330
|
||||||
msgid "Tag term:"
|
msgid "Tag term:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:323 src/Module/Filer/SaveTag.php:73
|
#: src/Content/Conversation.php:331 src/Module/Filer/SaveTag.php:73
|
||||||
msgid "Save to Folder:"
|
msgid "Save to Folder:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:324
|
#: src/Content/Conversation.php:332
|
||||||
msgid "Where are you right now?"
|
msgid "Where are you right now?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:325
|
#: src/Content/Conversation.php:333
|
||||||
msgid "Delete item(s)?"
|
msgid "Delete item(s)?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:337 src/Module/Item/Compose.php:175
|
#: src/Content/Conversation.php:345 src/Module/Item/Compose.php:175
|
||||||
msgid "Created at"
|
msgid "Created at"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:347
|
#: src/Content/Conversation.php:355
|
||||||
msgid "New Post"
|
msgid "New Post"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:350
|
#: src/Content/Conversation.php:358
|
||||||
msgid "Share"
|
msgid "Share"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:353 src/Module/Post/Edit.php:132
|
#: src/Content/Conversation.php:361 src/Module/Post/Edit.php:132
|
||||||
msgid "upload photo"
|
msgid "upload photo"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:354 src/Module/Post/Edit.php:133
|
#: src/Content/Conversation.php:362 src/Module/Post/Edit.php:133
|
||||||
msgid "Attach file"
|
msgid "Attach file"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:355 src/Module/Post/Edit.php:134
|
#: src/Content/Conversation.php:363 src/Module/Post/Edit.php:134
|
||||||
msgid "attach file"
|
msgid "attach file"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:356 src/Module/Item/Compose.php:190
|
#: src/Content/Conversation.php:364 src/Module/Item/Compose.php:190
|
||||||
#: src/Module/Post/Edit.php:171 src/Object/Post.php:1060
|
#: src/Module/Post/Edit.php:171 src/Object/Post.php:1060
|
||||||
msgid "Bold"
|
msgid "Bold"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:357 src/Module/Item/Compose.php:191
|
#: src/Content/Conversation.php:365 src/Module/Item/Compose.php:191
|
||||||
#: src/Module/Post/Edit.php:172 src/Object/Post.php:1061
|
#: src/Module/Post/Edit.php:172 src/Object/Post.php:1061
|
||||||
msgid "Italic"
|
msgid "Italic"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:358 src/Module/Item/Compose.php:192
|
#: src/Content/Conversation.php:366 src/Module/Item/Compose.php:192
|
||||||
#: src/Module/Post/Edit.php:173 src/Object/Post.php:1062
|
#: src/Module/Post/Edit.php:173 src/Object/Post.php:1062
|
||||||
msgid "Underline"
|
msgid "Underline"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:359 src/Module/Item/Compose.php:193
|
#: src/Content/Conversation.php:367 src/Module/Item/Compose.php:193
|
||||||
#: src/Module/Post/Edit.php:174 src/Object/Post.php:1063
|
#: src/Module/Post/Edit.php:174 src/Object/Post.php:1063
|
||||||
msgid "Quote"
|
msgid "Quote"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:360 src/Module/Item/Compose.php:194
|
#: src/Content/Conversation.php:368 src/Module/Item/Compose.php:194
|
||||||
#: src/Module/Post/Edit.php:175 src/Object/Post.php:1064
|
#: src/Module/Post/Edit.php:175 src/Object/Post.php:1064
|
||||||
msgid "Code"
|
msgid "Code"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:361 src/Module/Item/Compose.php:195
|
#: src/Content/Conversation.php:369 src/Module/Item/Compose.php:195
|
||||||
#: src/Object/Post.php:1065
|
#: src/Object/Post.php:1065
|
||||||
msgid "Image"
|
msgid "Image"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:362 src/Module/Item/Compose.php:196
|
#: src/Content/Conversation.php:370 src/Module/Item/Compose.php:196
|
||||||
#: src/Module/Post/Edit.php:176 src/Object/Post.php:1066
|
#: src/Module/Post/Edit.php:176 src/Object/Post.php:1066
|
||||||
msgid "Link"
|
msgid "Link"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:363 src/Module/Item/Compose.php:197
|
#: src/Content/Conversation.php:371 src/Module/Item/Compose.php:197
|
||||||
#: src/Module/Post/Edit.php:177 src/Object/Post.php:1067
|
#: src/Module/Post/Edit.php:177 src/Object/Post.php:1067
|
||||||
msgid "Link or Media"
|
msgid "Link or Media"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:364
|
#: src/Content/Conversation.php:372
|
||||||
msgid "Video"
|
msgid "Video"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:365 src/Module/Item/Compose.php:200
|
#: src/Content/Conversation.php:373 src/Module/Item/Compose.php:200
|
||||||
#: src/Module/Post/Edit.php:141
|
#: src/Module/Post/Edit.php:141
|
||||||
msgid "Set your location"
|
msgid "Set your location"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:366 src/Module/Post/Edit.php:142
|
#: src/Content/Conversation.php:374 src/Module/Post/Edit.php:142
|
||||||
msgid "set location"
|
msgid "set location"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:367 src/Module/Post/Edit.php:143
|
#: src/Content/Conversation.php:375 src/Module/Post/Edit.php:143
|
||||||
msgid "Clear browser location"
|
msgid "Clear browser location"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:368 src/Module/Post/Edit.php:144
|
#: src/Content/Conversation.php:376 src/Module/Post/Edit.php:144
|
||||||
msgid "clear location"
|
msgid "clear location"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:370 src/Module/Item/Compose.php:205
|
#: src/Content/Conversation.php:378 src/Module/Item/Compose.php:205
|
||||||
#: src/Module/Post/Edit.php:157
|
#: src/Module/Post/Edit.php:157
|
||||||
msgid "Set title"
|
msgid "Set title"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:372 src/Module/Item/Compose.php:206
|
#: src/Content/Conversation.php:380 src/Module/Item/Compose.php:206
|
||||||
#: src/Module/Post/Edit.php:159
|
#: src/Module/Post/Edit.php:159
|
||||||
msgid "Categories (comma-separated list)"
|
msgid "Categories (comma-separated list)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:377 src/Module/Item/Compose.php:222
|
#: src/Content/Conversation.php:385 src/Module/Item/Compose.php:222
|
||||||
msgid "Scheduled at"
|
msgid "Scheduled at"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:382 src/Module/Post/Edit.php:146
|
#: src/Content/Conversation.php:390 src/Module/Post/Edit.php:146
|
||||||
msgid "Permission settings"
|
msgid "Permission settings"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:392 src/Module/Post/Edit.php:155
|
#: src/Content/Conversation.php:400 src/Module/Post/Edit.php:155
|
||||||
msgid "Public post"
|
msgid "Public post"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:406 src/Content/Widget/VCard.php:113
|
#: src/Content/Conversation.php:414 src/Content/Widget/VCard.php:113
|
||||||
#: src/Model/Profile.php:469 src/Module/Admin/Logs/View.php:92
|
#: src/Model/Profile.php:469 src/Module/Admin/Logs/View.php:92
|
||||||
#: src/Module/Post/Edit.php:180
|
#: src/Module/Post/Edit.php:180
|
||||||
msgid "Message"
|
msgid "Message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:407 src/Module/Post/Edit.php:181
|
#: src/Content/Conversation.php:415 src/Module/Post/Edit.php:181
|
||||||
#: src/Module/Settings/TwoFactor/Trusted.php:140
|
#: src/Module/Settings/TwoFactor/Trusted.php:140
|
||||||
msgid "Browser"
|
msgid "Browser"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:409 src/Module/Post/Edit.php:184
|
#: src/Content/Conversation.php:417 src/Module/Post/Edit.php:184
|
||||||
msgid "Open Compose page"
|
msgid "Open Compose page"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:669 src/Object/Post.php:243
|
#: src/Content/Conversation.php:677 src/Object/Post.php:243
|
||||||
msgid "Pinned item"
|
msgid "Pinned item"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:685 src/Object/Post.php:491
|
#: src/Content/Conversation.php:693 src/Object/Post.php:491
|
||||||
#: src/Object/Post.php:492
|
#: src/Object/Post.php:492
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "View %s's profile @ %s"
|
msgid "View %s's profile @ %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:698 src/Object/Post.php:479
|
#: src/Content/Conversation.php:706 src/Object/Post.php:479
|
||||||
msgid "Categories:"
|
msgid "Categories:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:699 src/Object/Post.php:480
|
#: src/Content/Conversation.php:707 src/Object/Post.php:480
|
||||||
msgid "Filed under:"
|
msgid "Filed under:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:707 src/Object/Post.php:505
|
#: src/Content/Conversation.php:715 src/Object/Post.php:505
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s from %s"
|
msgid "%s from %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:723
|
#: src/Content/Conversation.php:731
|
||||||
msgid "View in context"
|
msgid "View in context"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:788
|
#: src/Content/Conversation.php:796
|
||||||
msgid "remove"
|
msgid "remove"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:792
|
#: src/Content/Conversation.php:800
|
||||||
msgid "Delete Selected Items"
|
msgid "Delete Selected Items"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:857 src/Content/Conversation.php:860
|
#: src/Content/Conversation.php:865 src/Content/Conversation.php:868
|
||||||
#: src/Content/Conversation.php:863 src/Content/Conversation.php:866
|
#: src/Content/Conversation.php:871 src/Content/Conversation.php:874
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "You had been addressed (%s)."
|
msgid "You had been addressed (%s)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:869
|
#: src/Content/Conversation.php:877
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "You are following %s."
|
msgid "You are following %s."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:872
|
#: src/Content/Conversation.php:880
|
||||||
msgid "You subscribed to one or more tags in this post."
|
msgid "You subscribed to one or more tags in this post."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:887
|
#: src/Content/Conversation.php:893
|
||||||
|
#, php-format
|
||||||
|
msgid "%s reshared this."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/Content/Conversation.php:895
|
||||||
msgid "Reshared"
|
msgid "Reshared"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:887
|
#: src/Content/Conversation.php:895
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Reshared by %s <%s>"
|
msgid "Reshared by %s <%s>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:890
|
#: src/Content/Conversation.php:898
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s is participating in this thread."
|
msgid "%s is participating in this thread."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:893
|
#: src/Content/Conversation.php:901
|
||||||
msgid "Stored for general reasons"
|
msgid "Stored for general reasons"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:896
|
#: src/Content/Conversation.php:904
|
||||||
msgid "Global post"
|
msgid "Global post"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:899
|
#: src/Content/Conversation.php:907
|
||||||
msgid "Sent via an relay server"
|
msgid "Sent via an relay server"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:899
|
#: src/Content/Conversation.php:907
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Sent via the relay server %s <%s>"
|
msgid "Sent via the relay server %s <%s>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:902
|
#: src/Content/Conversation.php:910
|
||||||
msgid "Fetched"
|
msgid "Fetched"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:902
|
#: src/Content/Conversation.php:910
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Fetched because of %s <%s>"
|
msgid "Fetched because of %s <%s>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:905
|
#: src/Content/Conversation.php:913
|
||||||
msgid "Stored because of a child post to complete this thread."
|
msgid "Stored because of a child post to complete this thread."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:908
|
#: src/Content/Conversation.php:916
|
||||||
msgid "Local delivery"
|
msgid "Local delivery"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:911
|
#: src/Content/Conversation.php:919
|
||||||
msgid "Stored because of your activity (like, comment, star, ...)"
|
msgid "Stored because of your activity (like, comment, star, ...)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:914
|
#: src/Content/Conversation.php:922
|
||||||
msgid "Distributed"
|
msgid "Distributed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Content/Conversation.php:917
|
#: src/Content/Conversation.php:925
|
||||||
msgid "Pushed to us"
|
msgid "Pushed to us"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -1623,7 +1627,7 @@ msgstr ""
|
||||||
|
|
||||||
#: src/Content/Item.php:438 src/Content/Widget.php:80
|
#: src/Content/Item.php:438 src/Content/Widget.php:80
|
||||||
#: src/Model/Contact.php:1199 src/Model/Contact.php:1210
|
#: src/Model/Contact.php:1199 src/Model/Contact.php:1210
|
||||||
#: src/Module/Contact/Follow.php:166 view/theme/vier/theme.php:196
|
#: src/Module/Contact/Follow.php:167 view/theme/vier/theme.php:196
|
||||||
msgid "Connect/Follow"
|
msgid "Connect/Follow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -3275,89 +3279,89 @@ msgstr ""
|
||||||
msgid "Upcoming events the next 7 days:"
|
msgid "Upcoming events the next 7 days:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:873
|
#: src/Model/Profile.php:875
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "OpenWebAuth: %1$s welcomes %2$s"
|
msgid "OpenWebAuth: %1$s welcomes %2$s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1013
|
#: src/Model/Profile.php:1015
|
||||||
msgid "Hometown:"
|
msgid "Hometown:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1014
|
#: src/Model/Profile.php:1016
|
||||||
msgid "Marital Status:"
|
msgid "Marital Status:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1015
|
#: src/Model/Profile.php:1017
|
||||||
msgid "With:"
|
msgid "With:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1016
|
#: src/Model/Profile.php:1018
|
||||||
msgid "Since:"
|
msgid "Since:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1017
|
#: src/Model/Profile.php:1019
|
||||||
msgid "Sexual Preference:"
|
msgid "Sexual Preference:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1018
|
#: src/Model/Profile.php:1020
|
||||||
msgid "Political Views:"
|
msgid "Political Views:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1019
|
#: src/Model/Profile.php:1021
|
||||||
msgid "Religious Views:"
|
msgid "Religious Views:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1020
|
#: src/Model/Profile.php:1022
|
||||||
msgid "Likes:"
|
msgid "Likes:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1021
|
#: src/Model/Profile.php:1023
|
||||||
msgid "Dislikes:"
|
msgid "Dislikes:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1022
|
#: src/Model/Profile.php:1024
|
||||||
msgid "Title/Description:"
|
msgid "Title/Description:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1023 src/Module/Admin/Summary.php:221
|
#: src/Model/Profile.php:1025 src/Module/Admin/Summary.php:221
|
||||||
#: src/Module/Moderation/Summary.php:77
|
#: src/Module/Moderation/Summary.php:77
|
||||||
msgid "Summary"
|
msgid "Summary"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1024
|
#: src/Model/Profile.php:1026
|
||||||
msgid "Musical interests"
|
msgid "Musical interests"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1025
|
#: src/Model/Profile.php:1027
|
||||||
msgid "Books, literature"
|
msgid "Books, literature"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1026
|
#: src/Model/Profile.php:1028
|
||||||
msgid "Television"
|
msgid "Television"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1027
|
#: src/Model/Profile.php:1029
|
||||||
msgid "Film/dance/culture/entertainment"
|
msgid "Film/dance/culture/entertainment"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1028
|
#: src/Model/Profile.php:1030
|
||||||
msgid "Hobbies/Interests"
|
msgid "Hobbies/Interests"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1029
|
#: src/Model/Profile.php:1031
|
||||||
msgid "Love/romance"
|
msgid "Love/romance"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1030
|
#: src/Model/Profile.php:1032
|
||||||
msgid "Work/employment"
|
msgid "Work/employment"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1031
|
#: src/Model/Profile.php:1033
|
||||||
msgid "School/education"
|
msgid "School/education"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Model/Profile.php:1032
|
#: src/Model/Profile.php:1034
|
||||||
msgid "Contact information and Social Networks"
|
msgid "Contact information and Social Networks"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -5852,28 +5856,28 @@ msgstr ""
|
||||||
msgid "No common contacts."
|
msgid "No common contacts."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Contacts.php:115 src/Module/Profile/Contacts.php:132
|
#: src/Module/Contact/Contacts.php:115 src/Module/Profile/Contacts.php:135
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Follower (%s)"
|
msgid "Follower (%s)"
|
||||||
msgid_plural "Followers (%s)"
|
msgid_plural "Followers (%s)"
|
||||||
msgstr[0] ""
|
msgstr[0] ""
|
||||||
msgstr[1] ""
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Module/Contact/Contacts.php:119 src/Module/Profile/Contacts.php:135
|
#: src/Module/Contact/Contacts.php:119 src/Module/Profile/Contacts.php:138
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Following (%s)"
|
msgid "Following (%s)"
|
||||||
msgid_plural "Following (%s)"
|
msgid_plural "Following (%s)"
|
||||||
msgstr[0] ""
|
msgstr[0] ""
|
||||||
msgstr[1] ""
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Module/Contact/Contacts.php:123 src/Module/Profile/Contacts.php:138
|
#: src/Module/Contact/Contacts.php:123 src/Module/Profile/Contacts.php:141
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Mutual friend (%s)"
|
msgid "Mutual friend (%s)"
|
||||||
msgid_plural "Mutual friends (%s)"
|
msgid_plural "Mutual friends (%s)"
|
||||||
msgstr[0] ""
|
msgstr[0] ""
|
||||||
msgstr[1] ""
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Module/Contact/Contacts.php:125 src/Module/Profile/Contacts.php:140
|
#: src/Module/Contact/Contacts.php:125 src/Module/Profile/Contacts.php:143
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "These contacts both follow and are followed by <strong>%s</strong>."
|
msgid "These contacts both follow and are followed by <strong>%s</strong>."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@ -5892,14 +5896,14 @@ msgid ""
|
||||||
"contacts (follow, comment or likes on public posts)."
|
"contacts (follow, comment or likes on public posts)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Contacts.php:139 src/Module/Profile/Contacts.php:146
|
#: src/Module/Contact/Contacts.php:139 src/Module/Profile/Contacts.php:149
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Contact (%s)"
|
msgid "Contact (%s)"
|
||||||
msgid_plural "Contacts (%s)"
|
msgid_plural "Contacts (%s)"
|
||||||
msgstr[0] ""
|
msgstr[0] ""
|
||||||
msgstr[1] ""
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:69 src/Module/Contact/Redir.php:62
|
#: src/Module/Contact/Follow.php:70 src/Module/Contact/Redir.php:62
|
||||||
#: src/Module/Contact/Redir.php:222 src/Module/Conversation/Community.php:194
|
#: src/Module/Contact/Redir.php:222 src/Module/Conversation/Community.php:194
|
||||||
#: src/Module/Debug/ItemBody.php:38 src/Module/Diaspora/Receive.php:57
|
#: src/Module/Debug/ItemBody.php:38 src/Module/Diaspora/Receive.php:57
|
||||||
#: src/Module/Item/Display.php:96 src/Module/Item/Feed.php:59
|
#: src/Module/Item/Display.php:96 src/Module/Item/Feed.php:59
|
||||||
|
@ -5909,36 +5913,36 @@ msgstr[1] ""
|
||||||
msgid "Access denied."
|
msgid "Access denied."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:104 src/Module/Contact/Unfollow.php:125
|
#: src/Module/Contact/Follow.php:105 src/Module/Contact/Unfollow.php:125
|
||||||
#: src/Module/Profile/RemoteFollow.php:133
|
#: src/Module/Profile/RemoteFollow.php:133
|
||||||
msgid "Submit Request"
|
msgid "Submit Request"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:114
|
#: src/Module/Contact/Follow.php:115
|
||||||
msgid "You already added this contact."
|
msgid "You already added this contact."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:129
|
#: src/Module/Contact/Follow.php:130
|
||||||
msgid "The network type couldn't be detected. Contact can't be added."
|
msgid "The network type couldn't be detected. Contact can't be added."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:137
|
#: src/Module/Contact/Follow.php:138
|
||||||
msgid "Diaspora support isn't enabled. Contact can't be added."
|
msgid "Diaspora support isn't enabled. Contact can't be added."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:142
|
#: src/Module/Contact/Follow.php:143
|
||||||
msgid "OStatus support is disabled. Contact can't be added."
|
msgid "OStatus support is disabled. Contact can't be added."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:167 src/Module/Profile/RemoteFollow.php:132
|
#: src/Module/Contact/Follow.php:168 src/Module/Profile/RemoteFollow.php:132
|
||||||
msgid "Please answer the following:"
|
msgid "Please answer the following:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:168 src/Module/Contact/Unfollow.php:123
|
#: src/Module/Contact/Follow.php:169 src/Module/Contact/Unfollow.php:123
|
||||||
msgid "Your Identity Address:"
|
msgid "Your Identity Address:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:169 src/Module/Contact/Profile.php:375
|
#: src/Module/Contact/Follow.php:170 src/Module/Contact/Profile.php:375
|
||||||
#: src/Module/Contact/Unfollow.php:129
|
#: src/Module/Contact/Unfollow.php:129
|
||||||
#: src/Module/Moderation/Blocklist/Contact.php:133
|
#: src/Module/Moderation/Blocklist/Contact.php:133
|
||||||
#: src/Module/Notifications/Introductions.php:129
|
#: src/Module/Notifications/Introductions.php:129
|
||||||
|
@ -5946,26 +5950,26 @@ msgstr ""
|
||||||
msgid "Profile URL"
|
msgid "Profile URL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:170 src/Module/Contact/Profile.php:387
|
#: src/Module/Contact/Follow.php:171 src/Module/Contact/Profile.php:387
|
||||||
#: src/Module/Notifications/Introductions.php:191
|
#: src/Module/Notifications/Introductions.php:191
|
||||||
#: src/Module/Profile/Profile.php:234
|
#: src/Module/Profile/Profile.php:234
|
||||||
msgid "Tags:"
|
msgid "Tags:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:181
|
#: src/Module/Contact/Follow.php:182
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "%s knows you"
|
msgid "%s knows you"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:182
|
#: src/Module/Contact/Follow.php:183
|
||||||
msgid "Add a personal note:"
|
msgid "Add a personal note:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:191 src/Module/Contact/Unfollow.php:138
|
#: src/Module/Contact/Follow.php:192 src/Module/Contact/Unfollow.php:138
|
||||||
msgid "Posts and Replies"
|
msgid "Posts and Replies"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Contact/Follow.php:220
|
#: src/Module/Contact/Follow.php:221
|
||||||
msgid "The contact could not be added."
|
msgid "The contact could not be added."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -8260,7 +8264,7 @@ msgstr ""
|
||||||
msgid "Remove"
|
msgid "Remove"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Module/Profile/Contacts.php:156
|
#: src/Module/Profile/Contacts.php:159
|
||||||
msgid "No contacts."
|
msgid "No contacts."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
@ -11433,12 +11437,12 @@ msgstr ""
|
||||||
msgid "Login failed. Please check your credentials."
|
msgid "Login failed. Please check your credentials."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Security/Authentication.php:389
|
#: src/Security/Authentication.php:391
|
||||||
#, php-format
|
#, php-format
|
||||||
msgid "Welcome %s"
|
msgid "Welcome %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/Security/Authentication.php:390
|
#: src/Security/Authentication.php:392
|
||||||
msgid "Please upload a profile photo."
|
msgid "Please upload a profile photo."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue