aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
Diffstat (limited to 'apps')
-rw-r--r--apps/dav/l10n/hu.js2
-rw-r--r--apps/dav/l10n/hu.json2
-rw-r--r--apps/dav/l10n/sv.js14
-rw-r--r--apps/dav/l10n/sv.json14
-rw-r--r--apps/dav/lib/Connector/Sabre/ServerFactory.php2
-rw-r--r--apps/dav/lib/Connector/Sabre/TagsPlugin.php6
-rw-r--r--apps/dav/lib/Server.php2
-rw-r--r--apps/dav/tests/unit/Connector/Sabre/TagsPluginTest.php28
-rw-r--r--apps/federatedfilesharing/l10n/nl.js1
-rw-r--r--apps/federatedfilesharing/l10n/nl.json1
-rw-r--r--apps/federatedfilesharing/l10n/ru.js1
-rw-r--r--apps/federatedfilesharing/l10n/ru.json1
-rw-r--r--apps/files/composer/composer/autoload_classmap.php2
-rw-r--r--apps/files/composer/composer/autoload_static.php2
-rw-r--r--apps/files/l10n/hu.js11
-rw-r--r--apps/files/l10n/hu.json11
-rw-r--r--apps/files/l10n/zh_CN.js7
-rw-r--r--apps/files/l10n/zh_CN.json7
-rw-r--r--apps/files/lib/AppInfo/Application.php9
-rw-r--r--apps/files/lib/Listener/NodeAddedToFavoriteListener.php43
-rw-r--r--apps/files/lib/Listener/NodeRemovedFromFavoriteListener.php43
-rw-r--r--apps/files/lib/Service/TagService.php48
-rw-r--r--apps/files/src/actions/favoriteAction.ts23
-rw-r--r--apps/files/src/components/FileEntry/FileEntryActions.vue39
-rw-r--r--apps/files/src/components/FileEntryMixin.ts25
-rw-r--r--apps/files/src/services/ServiceWorker.js5
-rw-r--r--apps/files/src/views/FilesList.vue81
-rw-r--r--apps/files/tests/Service/TagServiceTest.php30
-rw-r--r--apps/files_sharing/src/components/SharingEntryLink.vue17
-rw-r--r--apps/files_trashbin/src/fileListActions/emptyTrashAction.ts81
-rw-r--r--apps/files_trashbin/src/files-init.ts6
-rw-r--r--apps/files_trashbin/src/logger.ts11
-rw-r--r--apps/settings/l10n/hu.js46
-rw-r--r--apps/settings/l10n/hu.json46
-rw-r--r--apps/settings/l10n/nl.js134
-rw-r--r--apps/settings/l10n/nl.json134
-rw-r--r--apps/settings/l10n/ru.js4
-rw-r--r--apps/settings/l10n/ru.json4
-rw-r--r--apps/settings/l10n/zh_CN.js2
-rw-r--r--apps/settings/l10n/zh_CN.json2
-rw-r--r--apps/sharebymail/l10n/ar.js4
-rw-r--r--apps/sharebymail/l10n/ar.json4
-rw-r--r--apps/sharebymail/l10n/cs.js4
-rw-r--r--apps/sharebymail/l10n/cs.json4
-rw-r--r--apps/sharebymail/l10n/de.js4
-rw-r--r--apps/sharebymail/l10n/de.json4
-rw-r--r--apps/sharebymail/l10n/de_DE.js4
-rw-r--r--apps/sharebymail/l10n/de_DE.json4
-rw-r--r--apps/sharebymail/l10n/en_GB.js4
-rw-r--r--apps/sharebymail/l10n/en_GB.json4
-rw-r--r--apps/sharebymail/l10n/es_MX.js4
-rw-r--r--apps/sharebymail/l10n/es_MX.json4
-rw-r--r--apps/sharebymail/l10n/eu.js4
-rw-r--r--apps/sharebymail/l10n/eu.json4
-rw-r--r--apps/sharebymail/l10n/fr.js4
-rw-r--r--apps/sharebymail/l10n/fr.json4
-rw-r--r--apps/sharebymail/l10n/ga.js4
-rw-r--r--apps/sharebymail/l10n/ga.json4
-rw-r--r--apps/sharebymail/l10n/gl.js4
-rw-r--r--apps/sharebymail/l10n/gl.json4
-rw-r--r--apps/sharebymail/l10n/it.js4
-rw-r--r--apps/sharebymail/l10n/it.json4
-rw-r--r--apps/sharebymail/l10n/ja.js4
-rw-r--r--apps/sharebymail/l10n/ja.json4
-rw-r--r--apps/sharebymail/l10n/nb.js4
-rw-r--r--apps/sharebymail/l10n/nb.json4
-rw-r--r--apps/sharebymail/l10n/pt_BR.js4
-rw-r--r--apps/sharebymail/l10n/pt_BR.json4
-rw-r--r--apps/sharebymail/l10n/ru.js2
-rw-r--r--apps/sharebymail/l10n/ru.json2
-rw-r--r--apps/sharebymail/l10n/sk.js4
-rw-r--r--apps/sharebymail/l10n/sk.json4
-rw-r--r--apps/sharebymail/l10n/sr.js4
-rw-r--r--apps/sharebymail/l10n/sr.json4
-rw-r--r--apps/sharebymail/l10n/sv.js4
-rw-r--r--apps/sharebymail/l10n/sv.json4
-rw-r--r--apps/sharebymail/l10n/tr.js4
-rw-r--r--apps/sharebymail/l10n/tr.json4
-rw-r--r--apps/sharebymail/l10n/ug.js4
-rw-r--r--apps/sharebymail/l10n/ug.json4
-rw-r--r--apps/sharebymail/l10n/zh_HK.js4
-rw-r--r--apps/sharebymail/l10n/zh_HK.json4
-rw-r--r--apps/sharebymail/l10n/zh_TW.js4
-rw-r--r--apps/sharebymail/l10n/zh_TW.json4
-rw-r--r--apps/sharebymail/lib/ShareByMailProvider.php4
-rw-r--r--apps/sharebymail/tests/ShareByMailProviderTest.php24
-rw-r--r--apps/systemtags/l10n/ru.js3
-rw-r--r--apps/systemtags/l10n/ru.json3
88 files changed, 915 insertions, 238 deletions
diff --git a/apps/dav/l10n/hu.js b/apps/dav/l10n/hu.js
index 8645b7b1b0c..d49268d330a 100644
--- a/apps/dav/l10n/hu.js
+++ b/apps/dav/l10n/hu.js
@@ -73,7 +73,7 @@ OC.L10N.register(
"Where: %s" : "Hely: %s",
"%1$s via %2$s" : "%1$s – %2$s",
"In %1$s %2$s on %3$s for the entire day" : "%1$s-en %2$s %3$s-kor az teljes napra",
- "In %1$s %2$s on %3$s between %4$s - %5$s" : "%1$s-en %2$s %3$s-kor %4$s - %5$sközött",
+ "In %1$s %2$s on %3$s between %4$s - %5$s" : "%1$s %2$s múlva, %3$s napon %4$s - %5$s",
"Could not generate when statement" : "Nem sikerlt létrehozni a mikor állítást",
"Every Day for the entire day" : "Minden Nap a teljes napra",
"Every Day for the entire day until %1$s" : "Minden Nap a teljes napon eddig %1$s",
diff --git a/apps/dav/l10n/hu.json b/apps/dav/l10n/hu.json
index c29d64a2175..d5c7feac428 100644
--- a/apps/dav/l10n/hu.json
+++ b/apps/dav/l10n/hu.json
@@ -71,7 +71,7 @@
"Where: %s" : "Hely: %s",
"%1$s via %2$s" : "%1$s – %2$s",
"In %1$s %2$s on %3$s for the entire day" : "%1$s-en %2$s %3$s-kor az teljes napra",
- "In %1$s %2$s on %3$s between %4$s - %5$s" : "%1$s-en %2$s %3$s-kor %4$s - %5$sközött",
+ "In %1$s %2$s on %3$s between %4$s - %5$s" : "%1$s %2$s múlva, %3$s napon %4$s - %5$s",
"Could not generate when statement" : "Nem sikerlt létrehozni a mikor állítást",
"Every Day for the entire day" : "Minden Nap a teljes napra",
"Every Day for the entire day until %1$s" : "Minden Nap a teljes napon eddig %1$s",
diff --git a/apps/dav/l10n/sv.js b/apps/dav/l10n/sv.js
index 7f540073618..7be6d9654ee 100644
--- a/apps/dav/l10n/sv.js
+++ b/apps/dav/l10n/sv.js
@@ -84,6 +84,7 @@ OC.L10N.register(
"Every %1$d Days for the entire day until %2$s" : "Varje %1$d dagar hela dagen tills den %2$s",
"Every %1$d Days between %2$s - %3$s" : "Varje %1$d dagar mellan %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s" : "Varje %1$d dagar mellan %2$s - %3$s tills den %4$s",
+ "Could not generate event recurrence statement" : "Kunde inte generera händelseupprepning",
"Every Week on %1$s for the entire day" : "Varje vecka på %1$s, hela dagen",
"Every Week on %1$s for the entire day until %2$s" : "Varje vecka på %1$s hela dagen tills den %2$s",
"Every Week on %1$s between %2$s - %3$s" : "Varje vecka på %1$s mellan %2$s - %3$s",
@@ -101,9 +102,22 @@ OC.L10N.register(
"Every %1$d Months on the %2$s between %3$s - %4$s" : "Varje %1$d månad på den %2$s mellan %3$s - %4$s",
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "Varje %1$d månad på den %2$s mellan %3$s - %4$s till %5$s",
"Every Year in %1$s on the %2$s for the entire day" : "Varje år %1$s på den %2$s hela dagen",
+ "Every Year in %1$s on the %2$s for the entire day until %3$s" : "Varje år i %1$s på den %2$s hela dagen till %3$s",
+ "Every Year in %1$s on the %2$s between %3$s - %4$s" : "Varje år i %1$s på den %2$s mellan %3$s - %4$s",
+ "Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Varje år i %1$s på den %2$s mellan %3$s - %4$s till %5$s",
+ "Every %1$d Years in %2$s on the %3$s for the entire day" : "Vart %1$d år i %2$s på den %3$s hela dagen",
+ "Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "Vart %1$d år i %2$s på den %3$s hela dagen till %4$s",
+ "Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "Vart %1$d år i %2$s på den %3$s mellan %4$s - %5$s",
+ "Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "Vart %1$d år i %2$s på den %3$s mellan %4$s - %5$s till %6$s",
"On specific dates for the entire day until %1$s" : "På specifika datum hela dagen fram till kl %1$s",
"On specific dates between %1$s - %2$s until %3$s" : "På specifika datum mellan %1$s - %2$s tills %3$s",
"In a %1$s on %2$s" : "I en %1$s på %2$s",
+ "In a %1$s on %2$s then on %3$s" : "I en %1$s på %2$s sedan på %3$s",
+ "In a %1$s on %2$s then on %3$s and %4$s" : "I en %1$s på %2$s sedan på %3$s och %4$s",
+ "In %1$s %2$s on %3$s" : "I %1$s %2$s på %3$s",
+ "In %1$s %2$s on %3$s then on %4$s" : "I %1$s %2$s på %3$s sedan på %4$s",
+ "In %1$s %2$s on %3$s then on %4$s and %5$s" : "I %1$s %2$s på %3$s sedan på %4$s och %5$s",
+ "Could not generate next recurrence statement" : "Kunde inte generera nästa händelseupprepning",
"Cancelled: %1$s" : "Avbruten: %1$s",
"\"%1$s\" has been canceled" : "\"%1$s\" har avbrutits",
"Re: %1$s" : "Sv: %1$s",
diff --git a/apps/dav/l10n/sv.json b/apps/dav/l10n/sv.json
index 46cb8d69672..905343045c2 100644
--- a/apps/dav/l10n/sv.json
+++ b/apps/dav/l10n/sv.json
@@ -82,6 +82,7 @@
"Every %1$d Days for the entire day until %2$s" : "Varje %1$d dagar hela dagen tills den %2$s",
"Every %1$d Days between %2$s - %3$s" : "Varje %1$d dagar mellan %2$s - %3$s",
"Every %1$d Days between %2$s - %3$s until %4$s" : "Varje %1$d dagar mellan %2$s - %3$s tills den %4$s",
+ "Could not generate event recurrence statement" : "Kunde inte generera händelseupprepning",
"Every Week on %1$s for the entire day" : "Varje vecka på %1$s, hela dagen",
"Every Week on %1$s for the entire day until %2$s" : "Varje vecka på %1$s hela dagen tills den %2$s",
"Every Week on %1$s between %2$s - %3$s" : "Varje vecka på %1$s mellan %2$s - %3$s",
@@ -99,9 +100,22 @@
"Every %1$d Months on the %2$s between %3$s - %4$s" : "Varje %1$d månad på den %2$s mellan %3$s - %4$s",
"Every %1$d Months on the %2$s between %3$s - %4$s until %5$s" : "Varje %1$d månad på den %2$s mellan %3$s - %4$s till %5$s",
"Every Year in %1$s on the %2$s for the entire day" : "Varje år %1$s på den %2$s hela dagen",
+ "Every Year in %1$s on the %2$s for the entire day until %3$s" : "Varje år i %1$s på den %2$s hela dagen till %3$s",
+ "Every Year in %1$s on the %2$s between %3$s - %4$s" : "Varje år i %1$s på den %2$s mellan %3$s - %4$s",
+ "Every Year in %1$s on the %2$s between %3$s - %4$s until %5$s" : "Varje år i %1$s på den %2$s mellan %3$s - %4$s till %5$s",
+ "Every %1$d Years in %2$s on the %3$s for the entire day" : "Vart %1$d år i %2$s på den %3$s hela dagen",
+ "Every %1$d Years in %2$s on the %3$s for the entire day until %4$s" : "Vart %1$d år i %2$s på den %3$s hela dagen till %4$s",
+ "Every %1$d Years in %2$s on the %3$s between %4$s - %5$s" : "Vart %1$d år i %2$s på den %3$s mellan %4$s - %5$s",
+ "Every %1$d Years in %2$s on the %3$s between %4$s - %5$s until %6$s" : "Vart %1$d år i %2$s på den %3$s mellan %4$s - %5$s till %6$s",
"On specific dates for the entire day until %1$s" : "På specifika datum hela dagen fram till kl %1$s",
"On specific dates between %1$s - %2$s until %3$s" : "På specifika datum mellan %1$s - %2$s tills %3$s",
"In a %1$s on %2$s" : "I en %1$s på %2$s",
+ "In a %1$s on %2$s then on %3$s" : "I en %1$s på %2$s sedan på %3$s",
+ "In a %1$s on %2$s then on %3$s and %4$s" : "I en %1$s på %2$s sedan på %3$s och %4$s",
+ "In %1$s %2$s on %3$s" : "I %1$s %2$s på %3$s",
+ "In %1$s %2$s on %3$s then on %4$s" : "I %1$s %2$s på %3$s sedan på %4$s",
+ "In %1$s %2$s on %3$s then on %4$s and %5$s" : "I %1$s %2$s på %3$s sedan på %4$s och %5$s",
+ "Could not generate next recurrence statement" : "Kunde inte generera nästa händelseupprepning",
"Cancelled: %1$s" : "Avbruten: %1$s",
"\"%1$s\" has been canceled" : "\"%1$s\" har avbrutits",
"Re: %1$s" : "Sv: %1$s",
diff --git a/apps/dav/lib/Connector/Sabre/ServerFactory.php b/apps/dav/lib/Connector/Sabre/ServerFactory.php
index d3837bbb920..dc6384daefe 100644
--- a/apps/dav/lib/Connector/Sabre/ServerFactory.php
+++ b/apps/dav/lib/Connector/Sabre/ServerFactory.php
@@ -136,7 +136,7 @@ class ServerFactory {
));
if ($this->userSession->isLoggedIn()) {
- $server->addPlugin(new TagsPlugin($objectTree, $this->tagManager));
+ $server->addPlugin(new TagsPlugin($objectTree, $this->tagManager, $this->eventDispatcher, $this->userSession));
$server->addPlugin(new SharesPlugin(
$objectTree,
$this->userSession,
diff --git a/apps/dav/lib/Connector/Sabre/TagsPlugin.php b/apps/dav/lib/Connector/Sabre/TagsPlugin.php
index 7f05d4d3c03..eb06fa5cef6 100644
--- a/apps/dav/lib/Connector/Sabre/TagsPlugin.php
+++ b/apps/dav/lib/Connector/Sabre/TagsPlugin.php
@@ -27,8 +27,10 @@ namespace OCA\DAV\Connector\Sabre;
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*/
+use OCP\EventDispatcher\IEventDispatcher;
use OCP\ITagManager;
use OCP\ITags;
+use OCP\IUserSession;
use Sabre\DAV\PropFind;
use Sabre\DAV\PropPatch;
@@ -67,6 +69,8 @@ class TagsPlugin extends \Sabre\DAV\ServerPlugin {
public function __construct(
private \Sabre\DAV\Tree $tree,
private ITagManager $tagManager,
+ private IEventDispatcher $eventDispatcher,
+ private IUserSession $userSession,
) {
$this->tagger = null;
$this->cachedTags = [];
@@ -251,7 +255,7 @@ class TagsPlugin extends \Sabre\DAV\ServerPlugin {
return true;
});
- $propPatch->handle(self::FAVORITE_PROPERTYNAME, function ($favState) use ($node) {
+ $propPatch->handle(self::FAVORITE_PROPERTYNAME, function ($favState) use ($node, $path) {
if ((int)$favState === 1 || $favState === 'true') {
$this->getTagger()->tagAs($node->getId(), self::TAG_FAVORITE);
} else {
diff --git a/apps/dav/lib/Server.php b/apps/dav/lib/Server.php
index 6b56fc36f60..7315b37a27e 100644
--- a/apps/dav/lib/Server.php
+++ b/apps/dav/lib/Server.php
@@ -295,7 +295,7 @@ class Server {
}
$this->server->addPlugin(
new TagsPlugin(
- $this->server->tree, \OC::$server->getTagManager()
+ $this->server->tree, \OC::$server->getTagManager(), \OC::$server->get(IEventDispatcher::class), \OC::$server->get(IUserSession::class)
)
);
diff --git a/apps/dav/tests/unit/Connector/Sabre/TagsPluginTest.php b/apps/dav/tests/unit/Connector/Sabre/TagsPluginTest.php
index bdab8135b1c..43c08a1a61c 100644
--- a/apps/dav/tests/unit/Connector/Sabre/TagsPluginTest.php
+++ b/apps/dav/tests/unit/Connector/Sabre/TagsPluginTest.php
@@ -13,8 +13,11 @@ use OCA\DAV\Connector\Sabre\Node;
use OCA\DAV\Connector\Sabre\TagList;
use OCA\DAV\Connector\Sabre\TagsPlugin;
use OCA\DAV\Upload\UploadFile;
+use OCP\EventDispatcher\IEventDispatcher;
use OCP\ITagManager;
use OCP\ITags;
+use OCP\IUser;
+use OCP\IUserSession;
use Sabre\DAV\Tree;
class TagsPluginTest extends \Test\TestCase {
@@ -43,6 +46,16 @@ class TagsPluginTest extends \Test\TestCase {
private $tagger;
/**
+ * @var IEventDispatcher
+ */
+ private $eventDispatcher;
+
+ /**
+ * @var IUserSession
+ */
+ private $userSession;
+
+ /**
* @var TagsPlugin
*/
private $plugin;
@@ -59,11 +72,24 @@ class TagsPluginTest extends \Test\TestCase {
$this->tagManager = $this->getMockBuilder(ITagManager::class)
->disableOriginalConstructor()
->getMock();
+
+ $this->eventDispatcher = $this->getMockBuilder(IEventDispatcher::class)
+ ->disableOriginalConstructor()
+ ->getMock();
+ $user = $this->createMock(IUser::class);
+ /**
+ * @var IUserSession
+ */
+ $this->userSession = $this->createMock(IUserSession::class);
+ $this->userSession->expects($this->any())
+ ->method('getUser')
+ ->withAnyParameters()
+ ->willReturn($user);
$this->tagManager->expects($this->any())
->method('load')
->with('files')
->willReturn($this->tagger);
- $this->plugin = new TagsPlugin($this->tree, $this->tagManager);
+ $this->plugin = new TagsPlugin($this->tree, $this->tagManager, $this->eventDispatcher, $this->userSession);
$this->plugin->initialize($this->server);
}
diff --git a/apps/federatedfilesharing/l10n/nl.js b/apps/federatedfilesharing/l10n/nl.js
index 567bc35e711..53beeca09fb 100644
--- a/apps/federatedfilesharing/l10n/nl.js
+++ b/apps/federatedfilesharing/l10n/nl.js
@@ -25,6 +25,7 @@ OC.L10N.register(
"You can share with anyone who uses a Nextcloud server or other Open Cloud Mesh (OCM) compatible servers and services! Just put their Federated Cloud ID in the share dialog. It looks like person@cloud.example.com" : "Je kunt met iedereen delen die Nextcloud, ownCloud of een ander Open Cloud Mesh (OCM) compatible server of services gebruikt! Gebruik simpelweg hun gefedereerde Cloud ID in de deel-dialoog. Het ziet eruit als iemand@cloud.voorbeeld.com",
"Share it so your friends can share files with you:" : "Deel het, zodat anderen bestanden met jou kunnen delen:",
"Facebook" : "Facebook",
+ "X (formerly Twitter)" : "X (voorheen Twitter)",
"Mastodon" : "Mastodon",
"Add to your website" : "Toevoegen aan je website",
"Share with me via Nextcloud" : "Deel met mij via Nextcloud",
diff --git a/apps/federatedfilesharing/l10n/nl.json b/apps/federatedfilesharing/l10n/nl.json
index e33202d323a..6f5f67cda29 100644
--- a/apps/federatedfilesharing/l10n/nl.json
+++ b/apps/federatedfilesharing/l10n/nl.json
@@ -23,6 +23,7 @@
"You can share with anyone who uses a Nextcloud server or other Open Cloud Mesh (OCM) compatible servers and services! Just put their Federated Cloud ID in the share dialog. It looks like person@cloud.example.com" : "Je kunt met iedereen delen die Nextcloud, ownCloud of een ander Open Cloud Mesh (OCM) compatible server of services gebruikt! Gebruik simpelweg hun gefedereerde Cloud ID in de deel-dialoog. Het ziet eruit als iemand@cloud.voorbeeld.com",
"Share it so your friends can share files with you:" : "Deel het, zodat anderen bestanden met jou kunnen delen:",
"Facebook" : "Facebook",
+ "X (formerly Twitter)" : "X (voorheen Twitter)",
"Mastodon" : "Mastodon",
"Add to your website" : "Toevoegen aan je website",
"Share with me via Nextcloud" : "Deel met mij via Nextcloud",
diff --git a/apps/federatedfilesharing/l10n/ru.js b/apps/federatedfilesharing/l10n/ru.js
index 88120a75311..b0b29947912 100644
--- a/apps/federatedfilesharing/l10n/ru.js
+++ b/apps/federatedfilesharing/l10n/ru.js
@@ -36,6 +36,7 @@ OC.L10N.register(
"Share it so your friends can share files with you:" : "Сообщите его друзьям, чтобы они могли поделиться с вами файлами:",
"Facebook" : "Facebook",
"X (formerly Twitter)" : "X (ранее Твиттер)",
+ "formerly Twitter" : "ранее Twitter",
"Mastodon" : "Mastodon",
"Add to your website" : "Добавить к себе на сайт",
"Share with me via Nextcloud" : "Поделитесь со мной через Nextcloud",
diff --git a/apps/federatedfilesharing/l10n/ru.json b/apps/federatedfilesharing/l10n/ru.json
index 930be0980a0..3b6a9cb5181 100644
--- a/apps/federatedfilesharing/l10n/ru.json
+++ b/apps/federatedfilesharing/l10n/ru.json
@@ -34,6 +34,7 @@
"Share it so your friends can share files with you:" : "Сообщите его друзьям, чтобы они могли поделиться с вами файлами:",
"Facebook" : "Facebook",
"X (formerly Twitter)" : "X (ранее Твиттер)",
+ "formerly Twitter" : "ранее Twitter",
"Mastodon" : "Mastodon",
"Add to your website" : "Добавить к себе на сайт",
"Share with me via Nextcloud" : "Поделитесь со мной через Nextcloud",
diff --git a/apps/files/composer/composer/autoload_classmap.php b/apps/files/composer/composer/autoload_classmap.php
index e9e45bbd84a..103a4377223 100644
--- a/apps/files/composer/composer/autoload_classmap.php
+++ b/apps/files/composer/composer/autoload_classmap.php
@@ -60,6 +60,8 @@ return array(
'OCA\\Files\\Helper' => $baseDir . '/../lib/Helper.php',
'OCA\\Files\\Listener\\LoadSearchPluginsListener' => $baseDir . '/../lib/Listener/LoadSearchPluginsListener.php',
'OCA\\Files\\Listener\\LoadSidebarListener' => $baseDir . '/../lib/Listener/LoadSidebarListener.php',
+ 'OCA\\Files\\Listener\\NodeAddedToFavoriteListener' => $baseDir . '/../lib/Listener/NodeAddedToFavoriteListener.php',
+ 'OCA\\Files\\Listener\\NodeRemovedFromFavoriteListener' => $baseDir . '/../lib/Listener/NodeRemovedFromFavoriteListener.php',
'OCA\\Files\\Listener\\RenderReferenceEventListener' => $baseDir . '/../lib/Listener/RenderReferenceEventListener.php',
'OCA\\Files\\Listener\\SyncLivePhotosListener' => $baseDir . '/../lib/Listener/SyncLivePhotosListener.php',
'OCA\\Files\\Migration\\Version11301Date20191205150729' => $baseDir . '/../lib/Migration/Version11301Date20191205150729.php',
diff --git a/apps/files/composer/composer/autoload_static.php b/apps/files/composer/composer/autoload_static.php
index 59695e60fc7..bb2195eaf0f 100644
--- a/apps/files/composer/composer/autoload_static.php
+++ b/apps/files/composer/composer/autoload_static.php
@@ -75,6 +75,8 @@ class ComposerStaticInitFiles
'OCA\\Files\\Helper' => __DIR__ . '/..' . '/../lib/Helper.php',
'OCA\\Files\\Listener\\LoadSearchPluginsListener' => __DIR__ . '/..' . '/../lib/Listener/LoadSearchPluginsListener.php',
'OCA\\Files\\Listener\\LoadSidebarListener' => __DIR__ . '/..' . '/../lib/Listener/LoadSidebarListener.php',
+ 'OCA\\Files\\Listener\\NodeAddedToFavoriteListener' => __DIR__ . '/..' . '/../lib/Listener/NodeAddedToFavoriteListener.php',
+ 'OCA\\Files\\Listener\\NodeRemovedFromFavoriteListener' => __DIR__ . '/..' . '/../lib/Listener/NodeRemovedFromFavoriteListener.php',
'OCA\\Files\\Listener\\RenderReferenceEventListener' => __DIR__ . '/..' . '/../lib/Listener/RenderReferenceEventListener.php',
'OCA\\Files\\Listener\\SyncLivePhotosListener' => __DIR__ . '/..' . '/../lib/Listener/SyncLivePhotosListener.php',
'OCA\\Files\\Migration\\Version11301Date20191205150729' => __DIR__ . '/..' . '/../lib/Migration/Version11301Date20191205150729.php',
diff --git a/apps/files/l10n/hu.js b/apps/files/l10n/hu.js
index 7a864fe7092..ff1393123bf 100644
--- a/apps/files/l10n/hu.js
+++ b/apps/files/l10n/hu.js
@@ -88,6 +88,7 @@ OC.L10N.register(
"Another entry with the same name already exists." : "Már létezik ilyen nevű bejegyzés.",
"Invalid filename." : "Érvénytelen fájlnév.",
"Renamed \"{oldName}\" to \"{newName}\"" : "A(z) „{oldName}” átnevezve erre: „{newName}”",
+ "Unknown date" : "Ismeretlen dátum",
"Pending" : "Függőben",
"Clear filter" : "Szűrő törlése",
"Modified" : "Módosítva",
@@ -104,6 +105,8 @@ OC.L10N.register(
"\"{displayName}\" batch action executed successfully" : "A(z) „{displayName}” tömeges művelet sikeresen végrehajtva",
"{count} selected" : "{count}kiválasztva",
"List of files and folders." : "Fájlok és mappák felsorolása.",
+ "You don’t have permission to upload or create files here." : "Nem vagy jogosult ide file-okat feltölteni vagy létrehozni.",
+ "You have used your space quota and cannot upload files anymore." : "Megtelt a tárhely-kvótád, nem tudsz több file-t feltölteni.",
"Column headers with buttons are sortable." : "A gombot tartalmazó oszlopfejlécek rendezhetők.",
"This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list." : "Ez a lista teljesítménybeli okokból nincs teljes egészében megjelenítve. A fájlok a listában navigálás során jelennek meg.",
"File not found" : "A fájl nem található",
@@ -201,6 +204,7 @@ OC.L10N.register(
"Confirm deletion" : "Törlés megerősítése",
"Cancel" : "Mégse",
"Edit file locally" : "Fájl helyi szerkesztése",
+ "The file should now open on your device. If it doesn't, please check that you have the desktop app installed." : "Most elvileg megnyílik a file a gépeden. Ha mégsem, ellenőrizd, hogy installálva van nálad az asztali alkalmazás.",
"Edit online" : "Online szerkesztés",
"Failed to redirect to client" : "Nem sikerült az átirányítás a klienshez",
"Edit locally" : "Szerkesztés helyileg",
@@ -261,6 +265,13 @@ OC.L10N.register(
"Files moved successfully" : "Fájlmozgatás sikeres",
"Conflicts resolution skipped" : "Konfliktusfeloldás kihagyva",
"Upload cancelled" : "Feltöltés megszakítva",
+ "Adding the file extension \"{new}\" may render the file unreadable." : "Ha hozzáadod ezt a kiterjesztést: \"{new}\", akkor előfordulhat, hogy aztán nem lehet majd megnyitni.",
+ "Removing the file extension \"{old}\" may render the file unreadable." : "Ha leveszed a file kiterjesztését: \"{old}\", akkor előfordulhat, hogy aztán nem lehet majd megnyitni.",
+ "Changing the file extension from \"{old}\" to \"{new}\" may render the file unreadable." : "Ha a file kiterjesztését megváltoztatod erről: \"{old}\" erre: \"{new}\", akkor előfordulhat, hogy aztán nem lehet majd megnyitni.",
+ "Change file extension" : "File-kiterjesztés megváltoztatása",
+ "Keep {oldextension}" : "Hagyd meg ezt: {oldextension}",
+ "Use {newextension}" : "Használd ezt: {newextension}",
+ "Remove extension" : "File-kiterjesztés levétele",
"This operation is forbidden" : "Ez a művelet tiltott",
"This directory is unavailable, please check the logs or contact the administrator" : "Ez a könyvtár nem érhető el, nézze meg a naplófájlokat vagy lépjen kapcsolatba az adminisztrátorral",
"Storage is temporarily not available" : "A tároló átmenetileg nem érhető el",
diff --git a/apps/files/l10n/hu.json b/apps/files/l10n/hu.json
index 504baba3a0d..e317dc87dd7 100644
--- a/apps/files/l10n/hu.json
+++ b/apps/files/l10n/hu.json
@@ -86,6 +86,7 @@
"Another entry with the same name already exists." : "Már létezik ilyen nevű bejegyzés.",
"Invalid filename." : "Érvénytelen fájlnév.",
"Renamed \"{oldName}\" to \"{newName}\"" : "A(z) „{oldName}” átnevezve erre: „{newName}”",
+ "Unknown date" : "Ismeretlen dátum",
"Pending" : "Függőben",
"Clear filter" : "Szűrő törlése",
"Modified" : "Módosítva",
@@ -102,6 +103,8 @@
"\"{displayName}\" batch action executed successfully" : "A(z) „{displayName}” tömeges művelet sikeresen végrehajtva",
"{count} selected" : "{count}kiválasztva",
"List of files and folders." : "Fájlok és mappák felsorolása.",
+ "You don’t have permission to upload or create files here." : "Nem vagy jogosult ide file-okat feltölteni vagy létrehozni.",
+ "You have used your space quota and cannot upload files anymore." : "Megtelt a tárhely-kvótád, nem tudsz több file-t feltölteni.",
"Column headers with buttons are sortable." : "A gombot tartalmazó oszlopfejlécek rendezhetők.",
"This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list." : "Ez a lista teljesítménybeli okokból nincs teljes egészében megjelenítve. A fájlok a listában navigálás során jelennek meg.",
"File not found" : "A fájl nem található",
@@ -199,6 +202,7 @@
"Confirm deletion" : "Törlés megerősítése",
"Cancel" : "Mégse",
"Edit file locally" : "Fájl helyi szerkesztése",
+ "The file should now open on your device. If it doesn't, please check that you have the desktop app installed." : "Most elvileg megnyílik a file a gépeden. Ha mégsem, ellenőrizd, hogy installálva van nálad az asztali alkalmazás.",
"Edit online" : "Online szerkesztés",
"Failed to redirect to client" : "Nem sikerült az átirányítás a klienshez",
"Edit locally" : "Szerkesztés helyileg",
@@ -259,6 +263,13 @@
"Files moved successfully" : "Fájlmozgatás sikeres",
"Conflicts resolution skipped" : "Konfliktusfeloldás kihagyva",
"Upload cancelled" : "Feltöltés megszakítva",
+ "Adding the file extension \"{new}\" may render the file unreadable." : "Ha hozzáadod ezt a kiterjesztést: \"{new}\", akkor előfordulhat, hogy aztán nem lehet majd megnyitni.",
+ "Removing the file extension \"{old}\" may render the file unreadable." : "Ha leveszed a file kiterjesztését: \"{old}\", akkor előfordulhat, hogy aztán nem lehet majd megnyitni.",
+ "Changing the file extension from \"{old}\" to \"{new}\" may render the file unreadable." : "Ha a file kiterjesztését megváltoztatod erről: \"{old}\" erre: \"{new}\", akkor előfordulhat, hogy aztán nem lehet majd megnyitni.",
+ "Change file extension" : "File-kiterjesztés megváltoztatása",
+ "Keep {oldextension}" : "Hagyd meg ezt: {oldextension}",
+ "Use {newextension}" : "Használd ezt: {newextension}",
+ "Remove extension" : "File-kiterjesztés levétele",
"This operation is forbidden" : "Ez a művelet tiltott",
"This directory is unavailable, please check the logs or contact the administrator" : "Ez a könyvtár nem érhető el, nézze meg a naplófájlokat vagy lépjen kapcsolatba az adminisztrátorral",
"Storage is temporarily not available" : "A tároló átmenetileg nem érhető el",
diff --git a/apps/files/l10n/zh_CN.js b/apps/files/l10n/zh_CN.js
index 7f5fce81f4e..760fbf35176 100644
--- a/apps/files/l10n/zh_CN.js
+++ b/apps/files/l10n/zh_CN.js
@@ -105,6 +105,8 @@ OC.L10N.register(
"\"{displayName}\" batch action executed successfully" : "批量操作“{displayName}”运行成功",
"{count} selected" : "已选中 {count}",
"List of files and folders." : "文件与文件夹列表。",
+ "You don’t have permission to upload or create files here." : "您无权在此处上传或创建文件。",
+ "You have used your space quota and cannot upload files anymore." : "您的剩余空间配额不足以继续上传文件。",
"Column headers with buttons are sortable." : "带有按钮的列标题可进行排序。",
"This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list." : "出于性能考虑,此列表未完全呈现。文件将在您浏览列表时呈现。",
"File not found" : "文件未找到",
@@ -264,6 +266,11 @@ OC.L10N.register(
"Files moved successfully" : "移动文件成功",
"Conflicts resolution skipped" : "已跳过冲突解决",
"Upload cancelled" : "已取消上传",
+ "Adding the file extension \"{new}\" may render the file unreadable." : "添加文件扩展名 \"{new}\" 可能会导致文件无法读取。",
+ "Removing the file extension \"{old}\" may render the file unreadable." : "删除文件扩展名 \"{old}\" 可能会导致文件无法读取。",
+ "Changing the file extension from \"{old}\" to \"{new}\" may render the file unreadable." : "将文件扩展名从 \"{old}\" 更改为 \"{new}\" 可能会导致文件无法读取。",
+ "Change file extension" : "更改文件扩展名",
+ "Remove extension" : "删除扩展",
"This operation is forbidden" : "该操作被禁止",
"This directory is unavailable, please check the logs or contact the administrator" : "此目录不可用,请检查日志或联系管理员",
"Storage is temporarily not available" : "存储空间暂时不可用",
diff --git a/apps/files/l10n/zh_CN.json b/apps/files/l10n/zh_CN.json
index 9e91ee51db9..9bcfcc45e6f 100644
--- a/apps/files/l10n/zh_CN.json
+++ b/apps/files/l10n/zh_CN.json
@@ -103,6 +103,8 @@
"\"{displayName}\" batch action executed successfully" : "批量操作“{displayName}”运行成功",
"{count} selected" : "已选中 {count}",
"List of files and folders." : "文件与文件夹列表。",
+ "You don’t have permission to upload or create files here." : "您无权在此处上传或创建文件。",
+ "You have used your space quota and cannot upload files anymore." : "您的剩余空间配额不足以继续上传文件。",
"Column headers with buttons are sortable." : "带有按钮的列标题可进行排序。",
"This list is not fully rendered for performance reasons. The files will be rendered as you navigate through the list." : "出于性能考虑,此列表未完全呈现。文件将在您浏览列表时呈现。",
"File not found" : "文件未找到",
@@ -262,6 +264,11 @@
"Files moved successfully" : "移动文件成功",
"Conflicts resolution skipped" : "已跳过冲突解决",
"Upload cancelled" : "已取消上传",
+ "Adding the file extension \"{new}\" may render the file unreadable." : "添加文件扩展名 \"{new}\" 可能会导致文件无法读取。",
+ "Removing the file extension \"{old}\" may render the file unreadable." : "删除文件扩展名 \"{old}\" 可能会导致文件无法读取。",
+ "Changing the file extension from \"{old}\" to \"{new}\" may render the file unreadable." : "将文件扩展名从 \"{old}\" 更改为 \"{new}\" 可能会导致文件无法读取。",
+ "Change file extension" : "更改文件扩展名",
+ "Remove extension" : "删除扩展",
"This operation is forbidden" : "该操作被禁止",
"This directory is unavailable, please check the logs or contact the administrator" : "此目录不可用,请检查日志或联系管理员",
"Storage is temporarily not available" : "存储空间暂时不可用",
diff --git a/apps/files/lib/AppInfo/Application.php b/apps/files/lib/AppInfo/Application.php
index d50a8d14f5a..84387983946 100644
--- a/apps/files/lib/AppInfo/Application.php
+++ b/apps/files/lib/AppInfo/Application.php
@@ -18,6 +18,8 @@ use OCA\Files\Event\LoadSearchPlugins;
use OCA\Files\Event\LoadSidebar;
use OCA\Files\Listener\LoadSearchPluginsListener;
use OCA\Files\Listener\LoadSidebarListener;
+use OCA\Files\Listener\NodeAddedToFavoriteListener;
+use OCA\Files\Listener\NodeRemovedFromFavoriteListener;
use OCA\Files\Listener\RenderReferenceEventListener;
use OCA\Files\Listener\SyncLivePhotosListener;
use OCA\Files\Notification\Notifier;
@@ -33,12 +35,13 @@ use OCP\AppFramework\Bootstrap\IBootstrap;
use OCP\AppFramework\Bootstrap\IRegistrationContext;
use OCP\Collaboration\Reference\RenderReferenceEvent;
use OCP\Collaboration\Resources\IProviderManager;
-use OCP\EventDispatcher\IEventDispatcher;
use OCP\Files\Cache\CacheEntryRemovedEvent;
use OCP\Files\Events\Node\BeforeNodeCopiedEvent;
use OCP\Files\Events\Node\BeforeNodeDeletedEvent;
use OCP\Files\Events\Node\BeforeNodeRenamedEvent;
use OCP\Files\Events\Node\NodeCopiedEvent;
+use OCP\Files\Events\NodeAddedToFavorite;
+use OCP\Files\Events\NodeRemovedFromFavorite;
use OCP\Files\IRootFolder;
use OCP\IConfig;
use OCP\IL10N;
@@ -96,7 +99,6 @@ class Application extends App implements IBootstrap {
$c->get(IActivityManager::class),
$c->get(ITagManager::class)->load(self::APP_ID),
$server->getUserFolder(),
- $c->get(IEventDispatcher::class),
);
});
@@ -116,7 +118,8 @@ class Application extends App implements IBootstrap {
$context->registerEventListener(BeforeNodeCopiedEvent::class, SyncLivePhotosListener::class);
$context->registerEventListener(NodeCopiedEvent::class, SyncLivePhotosListener::class);
$context->registerEventListener(LoadSearchPlugins::class, LoadSearchPluginsListener::class);
-
+ $context->registerEventListener(NodeAddedToFavorite::class, NodeAddedToFavoriteListener::class);
+ $context->registerEventListener(NodeRemovedFromFavorite::class, NodeRemovedFromFavoriteListener::class);
$context->registerSearchProvider(FilesSearchProvider::class);
$context->registerNotifierService(Notifier::class);
diff --git a/apps/files/lib/Listener/NodeAddedToFavoriteListener.php b/apps/files/lib/Listener/NodeAddedToFavoriteListener.php
new file mode 100644
index 00000000000..827c1851d3d
--- /dev/null
+++ b/apps/files/lib/Listener/NodeAddedToFavoriteListener.php
@@ -0,0 +1,43 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+namespace OCA\Files\Listener;
+
+use OCA\Files\Activity\FavoriteProvider;
+use OCP\Activity\IManager as IActivityManager;
+use OCP\EventDispatcher\Event;
+use OCP\EventDispatcher\IEventListener;
+use OCP\Files\Events\NodeAddedToFavorite;
+
+/** @template-implements IEventListener<NodeAddedToFavorite> */
+class NodeAddedToFavoriteListener implements IEventListener {
+ public function __construct(
+ private IActivityManager $activityManager,
+ ) {
+ }
+ public function handle(Event $event):void {
+ if (!($event instanceof NodeAddedToFavorite)) {
+ return;
+ }
+ $activityEvent = $this->activityManager->generateEvent();
+ try {
+ $activityEvent->setApp('files')
+ ->setObject('files', $event->getFileId(), $event->getPath())
+ ->setType('favorite')
+ ->setAuthor($event->getUser()->getUID())
+ ->setAffectedUser($event->getUser()->getUID())
+ ->setTimestamp(time())
+ ->setSubject(
+ FavoriteProvider::SUBJECT_ADDED,
+ ['id' => $event->getFileId(), 'path' => $event->getPath()]
+ );
+ $this->activityManager->publish($activityEvent);
+ } catch (\InvalidArgumentException $e) {
+ } catch (\BadMethodCallException $e) {
+ }
+ }
+}
diff --git a/apps/files/lib/Listener/NodeRemovedFromFavoriteListener.php b/apps/files/lib/Listener/NodeRemovedFromFavoriteListener.php
new file mode 100644
index 00000000000..fe39d4af540
--- /dev/null
+++ b/apps/files/lib/Listener/NodeRemovedFromFavoriteListener.php
@@ -0,0 +1,43 @@
+<?php
+
+declare(strict_types=1);
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+namespace OCA\Files\Listener;
+
+use OCA\Files\Activity\FavoriteProvider;
+use OCP\Activity\IManager as IActivityManager;
+use OCP\EventDispatcher\Event;
+use OCP\EventDispatcher\IEventListener;
+use OCP\Files\Events\NodeRemovedFromFavorite;
+
+/** @template-implements IEventListener<NodeRemovedFromFavorite> */
+class NodeRemovedFromFavoriteListener implements IEventListener {
+ public function __construct(
+ private IActivityManager $activityManager,
+ ) {
+ }
+ public function handle(Event $event):void {
+ if (!($event instanceof NodeRemovedFromFavorite)) {
+ return;
+ }
+ $activityEvent = $this->activityManager->generateEvent();
+ try {
+ $activityEvent->setApp('files')
+ ->setObject('files', $event->getFileId(), $event->getPath())
+ ->setType('favorite')
+ ->setAuthor($event->getUser()->getUID())
+ ->setAffectedUser($event->getUser()->getUID())
+ ->setTimestamp(time())
+ ->setSubject(
+ FavoriteProvider::SUBJECT_REMOVED,
+ ['id' => $event->getFileId(), 'path' => $event->getPath()]
+ );
+ $this->activityManager->publish($activityEvent);
+ } catch (\InvalidArgumentException $e) {
+ } catch (\BadMethodCallException $e) {
+ }
+ }
+}
diff --git a/apps/files/lib/Service/TagService.php b/apps/files/lib/Service/TagService.php
index 450cd79505d..63c54d01fd0 100644
--- a/apps/files/lib/Service/TagService.php
+++ b/apps/files/lib/Service/TagService.php
@@ -7,15 +7,10 @@
*/
namespace OCA\Files\Service;
-use OCA\Files\Activity\FavoriteProvider;
use OCP\Activity\IManager;
-use OCP\EventDispatcher\IEventDispatcher;
-use OCP\Files\Events\NodeAddedToFavorite;
-use OCP\Files\Events\NodeRemovedFromFavorite;
use OCP\Files\Folder;
use OCP\Files\NotFoundException;
use OCP\ITags;
-use OCP\IUser;
use OCP\IUserSession;
/**
@@ -28,7 +23,6 @@ class TagService {
private IManager $activityManager,
private ?ITags $tagger,
private ?Folder $homeFolder,
- private IEventDispatcher $dispatcher,
) {
}
@@ -60,16 +54,10 @@ class TagService {
$newTags = array_diff($tags, $currentTags);
foreach ($newTags as $tag) {
- if ($tag === ITags::TAG_FAVORITE) {
- $this->addActivity(true, $fileId, $path);
- }
$this->tagger->tagAs($fileId, $tag);
}
$deletedTags = array_diff($currentTags, $tags);
foreach ($deletedTags as $tag) {
- if ($tag === ITags::TAG_FAVORITE) {
- $this->addActivity(false, $fileId, $path);
- }
$this->tagger->unTag($fileId, $tag);
}
@@ -77,40 +65,4 @@ class TagService {
// list is up to date, in case of concurrent changes ?
return $tags;
}
-
- /**
- * @param bool $addToFavorite
- * @param int $fileId
- * @param string $path
- */
- protected function addActivity($addToFavorite, $fileId, $path) {
- $user = $this->userSession->getUser();
- if (!$user instanceof IUser) {
- return;
- }
-
- if ($addToFavorite) {
- $event = new NodeAddedToFavorite($user, $fileId, $path);
- } else {
- $event = new NodeRemovedFromFavorite($user, $fileId, $path);
- }
- $this->dispatcher->dispatchTyped($event);
-
- $event = $this->activityManager->generateEvent();
- try {
- $event->setApp('files')
- ->setObject('files', $fileId, $path)
- ->setType('favorite')
- ->setAuthor($user->getUID())
- ->setAffectedUser($user->getUID())
- ->setTimestamp(time())
- ->setSubject(
- $addToFavorite ? FavoriteProvider::SUBJECT_ADDED : FavoriteProvider::SUBJECT_REMOVED,
- ['id' => $fileId, 'path' => $path]
- );
- $this->activityManager->publish($event);
- } catch (\InvalidArgumentException $e) {
- } catch (\BadMethodCallException $e) {
- }
- }
}
diff --git a/apps/files/src/actions/favoriteAction.ts b/apps/files/src/actions/favoriteAction.ts
index 52beb6e7454..1c1057a553e 100644
--- a/apps/files/src/actions/favoriteAction.ts
+++ b/apps/files/src/actions/favoriteAction.ts
@@ -11,6 +11,7 @@ import { encodePath } from '@nextcloud/paths'
import { generateUrl } from '@nextcloud/router'
import { isPublicShare } from '@nextcloud/sharing/public'
import axios from '@nextcloud/axios'
+import PQueue from 'p-queue'
import Vue from 'vue'
import StarOutlineSvg from '@mdi/svg/svg/star-outline.svg?raw'
@@ -18,6 +19,8 @@ import StarSvg from '@mdi/svg/svg/star.svg?raw'
import logger from '../logger.ts'
+const queue = new PQueue({ concurrency: 5 })
+
// If any of the nodes is not favorited, we display the favorite action.
const shouldFavorite = (nodes: Node[]): boolean => {
return nodes.some(node => node.attributes.favorite !== 1)
@@ -89,7 +92,25 @@ export const action = new FileAction({
},
async execBatch(nodes: Node[], view: View) {
const willFavorite = shouldFavorite(nodes)
- return Promise.all(nodes.map(async node => await favoriteNode(node, view, willFavorite)))
+
+ // Map each node to a promise that resolves with the result of exec(node)
+ const promises = nodes.map(node => {
+ // Create a promise that resolves with the result of exec(node)
+ const promise = new Promise<boolean>(resolve => {
+ queue.add(async () => {
+ try {
+ await favoriteNode(node, view, willFavorite)
+ resolve(true)
+ } catch (error) {
+ logger.error('Error while adding file to favorite', { error, source: node.source, node })
+ resolve(false)
+ }
+ })
+ })
+ return promise
+ })
+
+ return Promise.all(promises)
},
order: -50,
diff --git a/apps/files/src/components/FileEntry/FileEntryActions.vue b/apps/files/src/components/FileEntry/FileEntryActions.vue
index f8fde7842a8..d8d46c8f713 100644
--- a/apps/files/src/components/FileEntry/FileEntryActions.vue
+++ b/apps/files/src/components/FileEntry/FileEntryActions.vue
@@ -163,7 +163,14 @@ export default defineComponent({
if (this.filesListWidth < 768 || this.gridMode) {
return []
}
- return this.enabledFileActions.filter(action => action?.inline?.(this.source, this.currentView))
+ return this.enabledFileActions.filter(action => {
+ try {
+ return action?.inline?.(this.source, this.currentView)
+ } catch (error) {
+ logger.error('Error while checking if action is inline', { action, error })
+ return false
+ }
+ })
},
// Enabled action that are displayed inline with a custom render function
@@ -236,13 +243,19 @@ export default defineComponent({
methods: {
actionDisplayName(action: FileAction) {
- if ((this.gridMode || (this.filesListWidth < 768 && action.inline)) && typeof action.title === 'function') {
- // if an inline action is rendered in the menu for
- // lack of space we use the title first if defined
- const title = action.title([this.source], this.currentView)
- if (title) return title
+ try {
+ if ((this.gridMode || (this.filesListWidth < 768 && action.inline)) && typeof action.title === 'function') {
+ // if an inline action is rendered in the menu for
+ // lack of space we use the title first if defined
+ const title = action.title([this.source], this.currentView)
+ if (title) return title
+ }
+ return action.displayName([this.source], this.currentView)
+ } catch (error) {
+ logger.error('Error while getting action display name', { action, error })
+ // Not ideal, but better than nothing
+ return action.id
}
- return action.displayName([this.source], this.currentView)
},
async onActionClick(action, isSubmenu = false) {
@@ -257,7 +270,13 @@ export default defineComponent({
return
}
- const displayName = action.displayName([this.source], this.currentView)
+ let displayName = action.id
+ try {
+ displayName = action.displayName([this.source], this.currentView)
+ } catch (error) {
+ logger.error('Error while getting action display name', { action, error })
+ }
+
try {
// Set the loading marker
this.$emit('update:loading', action.id)
@@ -275,8 +294,8 @@ export default defineComponent({
return
}
showError(t('files', '"{displayName}" action failed', { displayName }))
- } catch (e) {
- logger.error('Error while executing action', { action, e })
+ } catch (error) {
+ logger.error('Error while executing action', { action, error })
showError(t('files', '"{displayName}" action failed', { displayName }))
} finally {
// Reset the loading marker
diff --git a/apps/files/src/components/FileEntryMixin.ts b/apps/files/src/components/FileEntryMixin.ts
index 4a4e4f497b5..08dfd402677 100644
--- a/apps/files/src/components/FileEntryMixin.ts
+++ b/apps/files/src/components/FileEntryMixin.ts
@@ -6,21 +6,21 @@
import type { PropType } from 'vue'
import type { FileSource } from '../types.ts'
-import { showError } from '@nextcloud/dialogs'
+import { extname } from 'path'
import { FileType, Permission, Folder, File as NcFile, NodeStatus, Node, getFileActions } from '@nextcloud/files'
-import { translate as t } from '@nextcloud/l10n'
import { generateUrl } from '@nextcloud/router'
import { isPublicShare } from '@nextcloud/sharing/public'
+import { showError } from '@nextcloud/dialogs'
+import { t } from '@nextcloud/l10n'
import { vOnClickOutside } from '@vueuse/components'
-import { extname } from 'path'
import Vue, { computed, defineComponent } from 'vue'
import { action as sidebarAction } from '../actions/sidebarAction.ts'
+import { dataTransferToFileTree, onDropExternalFiles, onDropInternalFiles } from '../services/DropService.ts'
import { getDragAndDropPreview } from '../utils/dragUtils.ts'
import { hashCode } from '../utils/hashUtils.ts'
-import { dataTransferToFileTree, onDropExternalFiles, onDropInternalFiles } from '../services/DropService.ts'
-import logger from '../logger.ts'
import { isDownloadable } from '../utils/permissions.ts'
+import logger from '../logger.ts'
Vue.directive('onClickOutside', vOnClickOutside)
@@ -200,7 +200,20 @@ export default defineComponent({
}
return actions
- .filter(action => !action.enabled || action.enabled([this.source], this.currentView))
+ .filter(action => {
+ if (!action.enabled) {
+ return true
+ }
+
+ // In case something goes wrong, since we don't want to break
+ // the entire list, we filter out actions that throw an error.
+ try {
+ return action.enabled([this.source], this.currentView)
+ } catch (error) {
+ logger.error('Error while checking action', { action, error })
+ return false
+ }
+ })
.sort((a, b) => (a.order || 0) - (b.order || 0))
},
diff --git a/apps/files/src/services/ServiceWorker.js b/apps/files/src/services/ServiceWorker.js
index 7d03af65e44..5f4c446f170 100644
--- a/apps/files/src/services/ServiceWorker.js
+++ b/apps/files/src/services/ServiceWorker.js
@@ -2,7 +2,7 @@
* SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
-import { generateUrl } from '@nextcloud/router'
+import { generateUrl, getRootUrl } from '@nextcloud/router'
import logger from '../logger.ts'
export default () => {
@@ -11,7 +11,8 @@ export default () => {
window.addEventListener('load', async () => {
try {
const url = generateUrl('/apps/files/preview-service-worker.js', {}, { noRewrite: true })
- const registration = await navigator.serviceWorker.register(url, { scope: '/' })
+ const scope = getRootUrl()
+ const registration = await navigator.serviceWorker.register(url, { scope })
logger.debug('SW registered: ', { registration })
} catch (error) {
logger.error('SW registration failed: ', { error })
diff --git a/apps/files/src/views/FilesList.vue b/apps/files/src/views/FilesList.vue
index 7e8bd9f1795..46a84faf188 100644
--- a/apps/files/src/views/FilesList.vue
+++ b/apps/files/src/views/FilesList.vue
@@ -32,24 +32,31 @@
multiple
@failed="onUploadFail"
@uploaded="onUpload" />
-
- <NcActions :inline="1" force-name>
- <NcActionButton v-for="action in enabledFileListActions"
- :key="action.id"
- close-after-click
- @click="() => action.exec(currentView, dirContents, { folder: currentFolder })">
- <template #icon>
- <NcIconSvgWrapper :svg="action.iconSvgInline(currentView)" />
- </template>
- {{ action.displayName(currentView) }}
- </NcActionButton>
- </NcActions>
</template>
</BreadCrumbs>
<!-- Secondary loading indicator -->
<NcLoadingIcon v-if="isRefreshing" class="files-list__refresh-icon" />
+ <NcActions class="files-list__header-actions"
+ :inline="1"
+ type="tertiary"
+ force-name>
+ <NcActionButton v-for="action in enabledFileListActions"
+ :key="action.id"
+ :disabled="!!loadingAction"
+ :data-cy-files-list-action="action.id"
+ close-after-click
+ @click="execFileListAction(action)">
+ <template #icon>
+ <NcLoadingIcon v-if="loadingAction === action.id" :size="18" />
+ <NcIconSvgWrapper v-else-if="action.iconSvgInline !== undefined && currentView"
+ :svg="action.iconSvgInline(currentView)" />
+ </template>
+ {{ actionDisplayName(action) }}
+ </NcActionButton>
+ </NcActions>
+
<NcButton v-if="fileListWidth >= 512 && enableGridView"
:aria-label="gridViewButtonLabel"
:title="gridViewButtonLabel"
@@ -128,7 +135,7 @@
</template>
<script lang="ts">
-import type { ContentsWithRoot, Folder, INode } from '@nextcloud/files'
+import type { ContentsWithRoot, FileListAction, Folder, INode } from '@nextcloud/files'
import type { Upload } from '@nextcloud/upload'
import type { CancelablePromise } from 'cancelable-promise'
import type { ComponentPublicInstance } from 'vue'
@@ -140,7 +147,7 @@ import { emit, subscribe, unsubscribe } from '@nextcloud/event-bus'
import { Node, Permission, sortNodes, getFileListActions } from '@nextcloud/files'
import { translate as t } from '@nextcloud/l10n'
import { join, dirname, normalize } from 'path'
-import { showError, showWarning } from '@nextcloud/dialogs'
+import { showError, showSuccess, showWarning } from '@nextcloud/dialogs'
import { ShareType } from '@nextcloud/sharing'
import { UploadPicker, UploadStatus } from '@nextcloud/upload'
import { loadState } from '@nextcloud/initial-state'
@@ -254,6 +261,7 @@ export default defineComponent({
data() {
return {
loading: true,
+ loadingAction: null as string | null,
error: null as string | null,
promise: null as CancelablePromise<ContentsWithRoot> | Promise<ContentsWithRoot> | null,
@@ -433,6 +441,10 @@ export default defineComponent({
},
enabledFileListActions() {
+ if (!this.currentView || !this.currentFolder) {
+ return []
+ }
+
const actions = getFileListActions()
const enabledActions = actions
.filter(action => {
@@ -442,7 +454,7 @@ export default defineComponent({
return action.enabled(
this.currentView!,
this.dirContents,
- { folder: this.currentFolder! },
+ this.currentFolder as Folder,
)
})
.toSorted((a, b) => a.order - b.order)
@@ -710,6 +722,40 @@ export default defineComponent({
}
this.dirContentsFiltered = nodes
},
+
+ actionDisplayName(action: FileListAction): string {
+ let displayName = action.id
+ try {
+ displayName = action.displayName(this.currentView!)
+ } catch (error) {
+ logger.error('Error while getting action display name', { action, error })
+ }
+ return displayName
+ },
+
+ async execFileListAction(action: FileListAction) {
+ this.loadingAction = action.id
+
+ const displayName = this.actionDisplayName(action)
+ try {
+ const success = await action.exec(this.source, this.dirContents, this.currentDir)
+ // If the action returns null, we stay silent
+ if (success === null || success === undefined) {
+ return
+ }
+
+ if (success) {
+ showSuccess(t('files', '"{displayName}" action executed successfully', { displayName }))
+ return
+ }
+ showError(t('files', '"{displayName}" action failed', { displayName }))
+ } catch (error) {
+ logger.error('Error while executing action', { action, error })
+ showError(t('files', '"{displayName}" action failed', { displayName }))
+ } finally {
+ this.loadingAction = null
+ }
+ },
},
})
</script>
@@ -760,6 +806,11 @@ export default defineComponent({
color: var(--color-main-text) !important;
}
}
+
+ &-actions {
+ min-width: fit-content !important;
+ margin-inline: calc(var(--default-grid-baseline) * 2);
+ }
}
&__empty-view-wrapper {
diff --git a/apps/files/tests/Service/TagServiceTest.php b/apps/files/tests/Service/TagServiceTest.php
index 50c8d586587..0e0149cc71b 100644
--- a/apps/files/tests/Service/TagServiceTest.php
+++ b/apps/files/tests/Service/TagServiceTest.php
@@ -9,7 +9,6 @@ namespace OCA\Files\Tests\Service;
use OCA\Files\Service\TagService;
use OCP\Activity\IManager;
-use OCP\EventDispatcher\IEventDispatcher;
use OCP\Files\Folder;
use OCP\Files\NotFoundException;
use OCP\ITags;
@@ -41,9 +40,6 @@ class TagServiceTest extends \Test\TestCase {
*/
private $root;
- /** @var IEventDispatcher|\PHPUnit\Framework\MockObject\MockObject */
- private $dispatcher;
-
/**
* @var TagService|\PHPUnit\Framework\MockObject\MockObject
*/
@@ -72,7 +68,6 @@ class TagServiceTest extends \Test\TestCase {
->willReturn($user);
$this->root = \OC::$server->getUserFolder();
- $this->dispatcher = $this->createMock(IEventDispatcher::class);
$this->tagger = \OC::$server->getTagManager()->load('files');
$this->tagService = $this->getTagService(['addActivity']);
@@ -89,7 +84,6 @@ class TagServiceTest extends \Test\TestCase {
$this->activityManager,
$this->tagger,
$this->root,
- $this->dispatcher,
])
->setMethods($methods)
->getMock();
@@ -107,9 +101,6 @@ class TagServiceTest extends \Test\TestCase {
$tag1 = 'tag1';
$tag2 = 'tag2';
- $this->tagService->expects($this->never())
- ->method('addActivity');
-
$subdir = $this->root->newFolder('subdir');
$testFile = $subdir->newFile('test.txt');
$testFile->putContent('test contents');
@@ -143,25 +134,4 @@ class TagServiceTest extends \Test\TestCase {
$subdir->delete();
}
-
- public function testFavoriteActivity(): void {
- $subdir = $this->root->newFolder('subdir');
- $file = $subdir->newFile('test.txt');
-
- $this->tagService->expects($this->exactly(2))
- ->method('addActivity')
- ->withConsecutive(
- [true, $file->getId(), 'subdir/test.txt'],
- [false, $file->getId(), 'subdir/test.txt']
- );
-
- // set tags
- $this->tagService->updateFileTags('subdir/test.txt', [ITags::TAG_FAVORITE]);
-
- // remove tag
- $this->tagService->updateFileTags('subdir/test.txt', []);
-
-
- $subdir->delete();
- }
}
diff --git a/apps/files_sharing/src/components/SharingEntryLink.vue b/apps/files_sharing/src/components/SharingEntryLink.vue
index d1ad87ec6a8..c9d53a09dac 100644
--- a/apps/files_sharing/src/components/SharingEntryLink.vue
+++ b/apps/files_sharing/src/components/SharingEntryLink.vue
@@ -76,7 +76,7 @@
:required="config.enableLinkPasswordByDefault || config.enforcePasswordForPublicLink"
:minlength="isPasswordPolicyEnabled && config.passwordPolicy.minLength"
autocomplete="new-password"
- @submit="onNewLinkShare">
+ @submit="onNewLinkShare(true)">
<template #icon>
<LockIcon :size="20" />
</template>
@@ -486,23 +486,22 @@ export default {
pendingDefaultExpirationDate() {
return (this.config.defaultExpirationDate instanceof Date || !isNaN(new Date(this.config.defaultExpirationDate).getTime())) && this.isPendingShare
},
-
isPendingShare() {
return !!(this.share && !this.share.id)
},
- sharePolicyHasRequiredProperties() {
+ sharePolicyHasEnforcedProperties() {
return this.config.enforcePasswordForPublicLink || this.config.isDefaultExpireDateEnforced
},
- requiredPropertiesMissing() {
+ enforcedPropertiesMissing() {
// Ensure share exist and the share policy has required properties
- if (!this.sharePolicyHasRequiredProperties) {
+ if (!this.sharePolicyHasEnforcedProperties) {
return false
}
if (!this.share) {
// if no share, we can't tell if properties are missing or not so we assume properties are missing
- return true
+ return true
}
// If share has ID, then this is an incoming link share created from the existing link share
@@ -604,7 +603,7 @@ export default {
* @param {boolean} shareReviewComplete if the share was reviewed
* @return {boolean}
*/
- shareRequiresReview(shareReviewComplete) {
+ shareRequiresReview(shareReviewComplete) {
// If a user clicks 'Create share' it means they have reviewed the share
if (shareReviewComplete) {
return false
@@ -615,7 +614,7 @@ export default {
* Create a new share link and append it to the list
* @param {boolean} shareReviewComplete if the share was reviewed
*/
- async onNewLinkShare(shareReviewComplete = false) {
+ async onNewLinkShare(shareReviewComplete = false) {
this.logger.debug('onNewLinkShare called (with this.share)', this.share)
// do not run again if already loading
if (this.loading) {
@@ -631,7 +630,7 @@ export default {
shareDefaults.expiration = this.formatDateToString(this.config.defaultExpirationDate)
}
- this.logger.debug('Missing required properties?', this.requiredPropertiesMissing)
+ this.logger.debug('Missing required properties?', this.enforcedPropertiesMissing)
// Do not push yet if we need a password or an expiration date: show pending menu
// A share would require a review for example is default expiration date is set but not enforced, this allows
// the user to review the share and remove the expiration date if they don't want it
diff --git a/apps/files_trashbin/src/fileListActions/emptyTrashAction.ts b/apps/files_trashbin/src/fileListActions/emptyTrashAction.ts
new file mode 100644
index 00000000000..25e3083abb9
--- /dev/null
+++ b/apps/files_trashbin/src/fileListActions/emptyTrashAction.ts
@@ -0,0 +1,81 @@
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+import type { Node, View, Folder } from '@nextcloud/files'
+
+import axios from '@nextcloud/axios'
+import { FileListAction } from '@nextcloud/files'
+import { t } from '@nextcloud/l10n'
+import {
+ DialogSeverity,
+ getDialogBuilder,
+ showError,
+ showInfo,
+ showSuccess,
+} from '@nextcloud/dialogs'
+
+import { logger } from '../logger.ts'
+import { generateRemoteUrl } from '@nextcloud/router'
+import { getCurrentUser } from '@nextcloud/auth'
+import { emit } from '@nextcloud/event-bus'
+
+const emptyTrash = async (): Promise<boolean> => {
+ try {
+ await axios.delete(generateRemoteUrl('dav') + `/trashbin/${getCurrentUser()?.uid}/trash`)
+ showSuccess(t('files_trashbin', 'All files have been permanently deleted'))
+ return true
+ } catch (error) {
+ showError(t('files_trashbin', 'Failed to empty deleted files'))
+ logger.error('Failed to empty deleted files', { error })
+ return false
+ }
+}
+
+export const emptyTrashAction = new FileListAction({
+ id: 'empty-trash',
+
+ displayName: () => t('files_trashbin', 'Empty deleted files'),
+ order: 0,
+
+ enabled(view: View, nodes: Node[], folder: Folder) {
+ if (view.id !== 'trashbin') {
+ return false
+ }
+ return nodes.length > 0 && folder.path === '/'
+ },
+
+ async exec(view: View, nodes: Node[]): Promise<void> {
+ const askConfirmation = new Promise<boolean>((resolve) => {
+ const dialog = getDialogBuilder(t('files_trashbin', 'Confirm permanent deletion'))
+ .setSeverity(DialogSeverity.Warning)
+ // TODO Add note for groupfolders
+ .setText(t('files_trashbin', 'Are you sure you want to permanently delete all files and folders in the trash? This cannot be undone.'))
+ .setButtons([
+ {
+ label: t('files_trashbin', 'Cancel'),
+ type: 'secondary',
+ callback: () => resolve(false),
+ },
+ {
+ label: t('files_trashbin', 'Empty deleted files'),
+ type: 'error',
+ callback: () => resolve(true),
+ },
+ ])
+ .build()
+ dialog.show().then(() => {
+ resolve(false)
+ })
+ })
+
+ const result = await askConfirmation
+ if (result === true) {
+ await emptyTrash()
+ nodes.forEach((node) => emit('files:node:deleted', node))
+ return
+ }
+
+ showInfo(t('files_trashbin', 'Deletion cancelled'))
+ },
+})
diff --git a/apps/files_trashbin/src/files-init.ts b/apps/files_trashbin/src/files-init.ts
index ab5d293d136..f516d6f5be5 100644
--- a/apps/files_trashbin/src/files-init.ts
+++ b/apps/files_trashbin/src/files-init.ts
@@ -6,6 +6,7 @@
import './trashbin.scss'
import { translate as t } from '@nextcloud/l10n'
+import { View, getNavigation, registerFileListAction } from '@nextcloud/files'
import DeleteSvg from '@mdi/svg/svg/delete.svg?raw'
import { getContents } from './services/trashbin'
@@ -13,7 +14,8 @@ import { columns } from './columns.ts'
// Register restore action
import './actions/restoreAction'
-import { View, getNavigation } from '@nextcloud/files'
+
+import { emptyTrashAction } from './fileListActions/emptyTrashAction.ts'
const Navigation = getNavigation()
Navigation.register(new View({
@@ -34,3 +36,5 @@ Navigation.register(new View({
getContents,
}))
+
+registerFileListAction(emptyTrashAction)
diff --git a/apps/files_trashbin/src/logger.ts b/apps/files_trashbin/src/logger.ts
new file mode 100644
index 00000000000..064351c2fb5
--- /dev/null
+++ b/apps/files_trashbin/src/logger.ts
@@ -0,0 +1,11 @@
+/**
+ * SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
+ * SPDX-License-Identifier: AGPL-3.0-or-later
+ */
+
+import { getLoggerBuilder } from '@nextcloud/logger'
+
+export const logger = getLoggerBuilder()
+ .setApp('files_trashbin')
+ .detectUser()
+ .build()
diff --git a/apps/settings/l10n/hu.js b/apps/settings/l10n/hu.js
index 15cf3516c77..b2c6f962c71 100644
--- a/apps/settings/l10n/hu.js
+++ b/apps/settings/l10n/hu.js
@@ -61,6 +61,7 @@ OC.L10N.register(
"Authentication error" : "Hitelesítései hiba",
"Please provide an admin recovery password; otherwise, all account data will be lost." : "Kérlek adj meg egy adminisztrátori visszaállító jelszót, vagy az összes felhasználói adat elveszik.",
"Wrong admin recovery password. Please check the password and try again." : "Hibás rendszergazdai helyreállítási jelszó. Ellenőrizze a jelszót és próbálja újra.",
+ "Backend does not support password change, but the encryption of the account key was updated." : "A mögöttes szolgáltatásban nem lehet jelszót változtatni, de a fiókkulcs titkosítása frissítve lett.",
"Administrator documentation" : "Rendszergazdai dokumentáció",
"User documentation" : "Felhasználói dokumentáció",
"Nextcloud help overview" : "Nexcloud súgó áttekintése",
@@ -103,6 +104,7 @@ OC.L10N.register(
"Set your password" : "Jelszó beállítása",
"Go to %s" : "Ugrás ide: %s",
"Install Client" : "Kliens telepítése",
+ "Logged in account must be a subadmin" : "A belépett felhasználónak al-adminnak kell lennie",
"Apps" : "Alkalmazások",
"Personal" : "Személyes",
"Administration" : "Adminisztráció",
@@ -119,15 +121,55 @@ OC.L10N.register(
"Personal info" : "Személyes információk",
"Mobile & desktop" : "Mobil és asztali",
"Email server" : "E-mail kiszolgáló",
+ "Mail Providers" : "Email-kiküldők",
+ "Mail provider enables sending emails directly through the user's personal email account. At present, this functionality is limited to calendar invitations. It requires Nextcloud Mail 4.1 and an email account in Nextcloud Mail that matches the user's email address in Nextcloud." : "Az email-kiküldő lehetővé teszi, hogy a Nextcloud alapbeállítása helyett a felhasználó személyes email-fiókján keresztül menjenek ki levelek. Jelenleg ez a lehetőség a naptármeghívókra korlátozódik. Kell hozzá a Nextcloud Mail 4.1 vagy újabb, és abban egy olyan beállított email-fiók, ami megegyezik a felhasználó Nextcloudban beállított email-címével.",
+ "Send emails using" : "Ezzel küldd az emaileket:",
+ "User's email account" : "Felhasználó email-fiókja",
+ "System email account" : "Rendszer-szintű email-fiók",
+ "Security & setup checks" : "Biztonsági és konfigurációs ellenőrzések",
"Background jobs" : "Háttérfeladatok",
"Unlimited" : "Korlátlan",
"Verifying" : "Ellenőrzés",
"Allowed admin IP ranges" : "Engedélyezett adminisztrátori IP cím tartományok",
+ "Admin IP filtering isn’t applied." : "Rendszergazdák IP-cím alapú lekorlátozása nincs beállítva.",
+ "Configuration key \"%1$s\" expects an array (%2$s found). Admin IP range validation will not be applied." : "A(z) \"%1$s\" konfigurációs bejegyzésnek tömb értéket kell megadni (ehelyett most ez van: %2$s). A rendszergazdák IP-cím tartomány ellenőrzése nem lesz beállítva.",
+ "Configuration key \"%1$s\" contains invalid IP range(s): \"%2$s\"" : "A(z) \"%1$s\" konfigurációs bejegyzésben érvénytrelen IP-cím tartomány van: \"%2$s\"",
+ "Admin IP filtering is correctly configured." : "Rendszergazdák IP-cím alapú lekorlátozása érvényesen be van állítva.",
+ "App directories owner" : "Alkalmazás-könyvtárak tulajdonosa",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:\n%s" : "Néhány alkalmazás-könyvtárnak nem a Nextcloud szerver a tulajdonosa. Ez akkor fordulhat elő, ha ezek kézzel lettek telepítve. A következőknek ellenőrizd a könyvtárát: %s",
+ "App directories have the correct owner \"%s\"" : "Az alkalmazás-könyvtárak tulajdonosa helyesen van beállítva: \"%s\"",
+ "Brute-force Throttle" : "Brute-force fékezés",
+ "Your remote address could not be determined." : "Nem lehet kideríteni a te IP-címedet.",
+ "Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "A következő IP-címről látszol csatlakozni: \"%s\", ami jelenleg brute-force fékezés hatálya alá esik. Ez lelassítja a különféle kérések feldolgozását. Ha ez nem a te IP-címed, azt az is okozhatja, hogy egy közbeeső proxy szerver rosszul van bíállítva, és nem továbbítja ide a címedet rendesen.",
+ "Your remote address \"%s\" is not brute-force throttled." : "A te IP-címed, \"%s\", nem esik brute-force fékezés hatálya alá.",
+ "Old administration imported certificates" : "Régi, rendszergazda által importált tanúsítványok",
+ "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Épp folyamatban van a régi, rendszergazdák által importált SSL tanúsítványok ellenőrzése. Érdeklődj később.",
+ "There are some administration imported SSL certificates present, that are not used anymore with Nextcloud 21. They can be imported on the command line via \"occ security:certificates:import\" command. Their paths inside the data directory are shown below." : "Van néhány régi, rendszergazdák által importált SSL tanúsítvány, amik a Nextcloud 21 óta nincsenek használatban. Ezeket beimportálhatod az \"occ security:certificates:import\" paranccsal. Az elérési útvonalukat lásd alább.",
+ "Code integrity" : "Forráskód integritás",
+ "Integrity checker has been disabled. Integrity cannot be verified." : "Az integritás-ellenőrzés le van tiltva, nem lehet futtatni.",
+ "No altered files" : "Nincsenek megpiszkált file-ok",
+ "Some files have not passed the integrity check. {link1} {link2}" : "Néhány file integritása sérült. {link1} {link2}",
+ "Cron errors" : "Háttér-futtatás (Cron) hibák",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Nem sikerült a háttér-feldolgozás (cron) parancssorból. Ezek a technikai hibák léptek fel: %s",
+ "The last cron job ran without errors." : "A legutóbbi háttér-feldolgozás (cron) hibátlanul lefutott.",
+ "Cron last run" : "Legutóbbi háttér-feldolgozás (cron)",
+ "Last background job execution ran %s. Something seems wrong. {link}." : "Utoljára %s futott le a háttér-feldolgozás (cron). Valami nem stimmel. {link}.",
+ "Last background job execution ran %s." : "Utoljára %s futott le a háttér-feldolgozás (cron).",
"Data directory protected" : "Adatkönyvtár védett",
"Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Az adatkönyvtárai és a fájljai valószínűleg elérhetőek az internetről. A .htaccess fájl nem működik. Erősen javasolt, hogy a webkiszolgálót úgy állítsa be, hogy az adatkönyvtár tartalma ne legyen közvetlenül elérhető, vagy helyezze át a könyvtárat a kiszolgálási területen kívülre.",
+ "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Nem sikerült ellenőrizni, hogy az adatkönyvtár megfelelően védett-e. Ellenőrizd, hogy a szerver nem enged hozzáférést az adatkönyvtárhoz.",
"Database missing columns" : "Az adatbázisból hiányoznak oszlopok",
+ "Missing optional column \"%s\" in table \"%s\"." : "Hiányzik a(z) \"%s\" opcionális oszlop az \"%s\" táblából.",
"The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "Az adatbázisból hiányzik néhány nem kötelező oszlop. Mivel az oszlopok hozzáadása sokáig tart a nagy tábláknál, ezért a nem kötelező oszlopok nem lettek automatikusan hozzáadva. A hiányzó oszlopokat az „occ db:add-missing-columns” paranccsal lehet kézileg hozzáadni a példány futása közben. Az oszlopok hozzáadása után bizonyos funkciók válaszideje és használhatósága javulni fog.",
+ "Database missing indices" : "Hiányzik néhány index az adatbázisban",
+ "Missing indices:" : "Hiányzó indexek:",
+ "\"%s\" in table \"%s\"" : "\"%s\" az \"%s\" táblában",
+ "Detected some missing optional indices. Occasionally new indices are added (by Nextcloud or installed applications) to improve database performance. Adding indices can sometimes take awhile and temporarily hurt performance so this is not done automatically during upgrades. Once the indices are added, queries to those tables should be faster. Use the command `occ db:add-missing-indices` to add them. " : "Hiányzik néhány opcionális index. Időnként új indexeket vesz fel a Nextcloud vagy valamelyik telepített alkalmazás az adatbázis-performancia javítására. Ez néha sokáig eltarthat, és a folyamat közben átmenetileg lelassítja a szervert, úgyhogy a szoftverfrissítések során nem hajtódik végre automatikusan. Viszont miután megtörtént, az érintett táblák elérése felgyorsul. Az `occ db:add-missing-indices` paranccsal lehet felvenni őket.",
+ "Database missing primary keys" : "Hiányzik néhány elsődleges kulcs az adatbázisban",
+ "Missing primary key on table \"%s\"." : "Hiányzik az elsődleges kulcs az \"%s\" táblán.",
"The database is missing some primary keys. Due to the fact that adding primary keys on big tables could take some time they were not added automatically. By running \"occ db:add-missing-primary-keys\" those missing primary keys could be added manually while the instance keeps running." : "Az adatbázisból hiányzik néhány elsődleges kulcs. Mivel az elsődleges kulcsok hozzáadása nagy táblák esetén sokáig tarthat, ezért nem lettek automatikusan létrehozva. Futtassa az „occ db:add-missing-primary-keys” parancsot, hogy kézzel létrehozza a hiányzó elsődleges kulcsokat, miközben a példány továbbra is fut.",
+ "Database pending bigint migrations" : "Az adatbázis a bigint migrációra vár",
+ "Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline." : "Az adatbázisban néhány oszlopnál nem történt meg a bigint-re való konverzió. Mivel ez eltarthat egy darabig nagyméretű táblák esetén, nem hajtódik végre automatikusan. Az `occ db:convert-filecache-bigint` paranccsal ez kézileg megtehető. Eközben a szervernek mindenképpen offline kell lennie.",
"Debug mode" : "Hibakeresési mód",
"This instance is running in debug mode. Only enable this for local development and not in production environments." : "Ez a példány hibakeresési módban fut. Csak helyi fejlesztéshez engedélyezze, éles környezetben ne.",
"Debug mode is disabled." : "Hibakeresési mód kikapcsolva.",
@@ -135,6 +177,10 @@ OC.L10N.register(
"Your installation has no default phone region set. This is required to validate phone numbers in the profile settings without a country code. To allow numbers without a country code, please add \"default_phone_region\" with the respective ISO 3166-1 code of the region to your config file." : "A telepítéshez nincs megadva alapértelmezett telefonkörzet. Erre a telefonszámok országkód nélküli ellenőrzéséhez van szükség a profilbeállításokban. Ha országkód nélküli számokat szeretne engedélyezni, vegye fel a konfigurációs fájlba az „default_phone_region” paramétert a körzetnek megfelelő ISO 3166-1 kóddal.",
"Email test" : "E-mail-teszt",
"Email test was successfully sent" : "A tesztlevél sikeresen elküldve",
+ "You have not set or verified your email server configuration, yet. Please head over to the \"Basic settings\" in order to set them. Afterwards, use the \"Send email\" button below the form to verify your settings." : "Még nincs beállítva vagy kipróbálva az email szerver. Ezt megteheted az \"Alapvető beállítások\" szekcióban. Az \"E-mail küldése\" gombra nyomva ellenőrizheted, hogy működik-e.",
+ "Transactional File Locking" : "Tranzakciós File Lockolás",
+ "Transactional File Locking is disabled. This is not a a supported configuraton. It may lead to difficult to isolate problems including file corruption. Please remove the `'filelocking.enabled' => false` configuration entry from your `config.php` to avoid these problems." : "A Tranzakciós File Lockolás le van tiltva. Ez a konfiguráció nem támogatott. Nehezen kibogozható problémákhoz vezethet, adatvesztést beleértve. Távolítsd el a `'filelocking.enabled' => false` bejegyzést a `config.php`-ból, hogy ezt elkerüld.",
+ "The database is used for transactional file locking. To enhance performance, please configure memcache, if available." : "A Tranzakciós File Lockolás jelenleg az adatbázis segítségével történik. A performancia javítása érdekében lehetőleg konfiguráld be a memcache-t.",
"HTTPS access and URLs" : "HTTPS hozzáférés és URL-ok",
"Accessing site insecurely via HTTP." : "A webhely nem biztonságos elérése HTTP-n keresztül.",
"Internet connectivity" : "Internetkapcsolat",
diff --git a/apps/settings/l10n/hu.json b/apps/settings/l10n/hu.json
index 95c5e5b7145..97819dc73b0 100644
--- a/apps/settings/l10n/hu.json
+++ b/apps/settings/l10n/hu.json
@@ -59,6 +59,7 @@
"Authentication error" : "Hitelesítései hiba",
"Please provide an admin recovery password; otherwise, all account data will be lost." : "Kérlek adj meg egy adminisztrátori visszaállító jelszót, vagy az összes felhasználói adat elveszik.",
"Wrong admin recovery password. Please check the password and try again." : "Hibás rendszergazdai helyreállítási jelszó. Ellenőrizze a jelszót és próbálja újra.",
+ "Backend does not support password change, but the encryption of the account key was updated." : "A mögöttes szolgáltatásban nem lehet jelszót változtatni, de a fiókkulcs titkosítása frissítve lett.",
"Administrator documentation" : "Rendszergazdai dokumentáció",
"User documentation" : "Felhasználói dokumentáció",
"Nextcloud help overview" : "Nexcloud súgó áttekintése",
@@ -101,6 +102,7 @@
"Set your password" : "Jelszó beállítása",
"Go to %s" : "Ugrás ide: %s",
"Install Client" : "Kliens telepítése",
+ "Logged in account must be a subadmin" : "A belépett felhasználónak al-adminnak kell lennie",
"Apps" : "Alkalmazások",
"Personal" : "Személyes",
"Administration" : "Adminisztráció",
@@ -117,15 +119,55 @@
"Personal info" : "Személyes információk",
"Mobile & desktop" : "Mobil és asztali",
"Email server" : "E-mail kiszolgáló",
+ "Mail Providers" : "Email-kiküldők",
+ "Mail provider enables sending emails directly through the user's personal email account. At present, this functionality is limited to calendar invitations. It requires Nextcloud Mail 4.1 and an email account in Nextcloud Mail that matches the user's email address in Nextcloud." : "Az email-kiküldő lehetővé teszi, hogy a Nextcloud alapbeállítása helyett a felhasználó személyes email-fiókján keresztül menjenek ki levelek. Jelenleg ez a lehetőség a naptármeghívókra korlátozódik. Kell hozzá a Nextcloud Mail 4.1 vagy újabb, és abban egy olyan beállított email-fiók, ami megegyezik a felhasználó Nextcloudban beállított email-címével.",
+ "Send emails using" : "Ezzel küldd az emaileket:",
+ "User's email account" : "Felhasználó email-fiókja",
+ "System email account" : "Rendszer-szintű email-fiók",
+ "Security & setup checks" : "Biztonsági és konfigurációs ellenőrzések",
"Background jobs" : "Háttérfeladatok",
"Unlimited" : "Korlátlan",
"Verifying" : "Ellenőrzés",
"Allowed admin IP ranges" : "Engedélyezett adminisztrátori IP cím tartományok",
+ "Admin IP filtering isn’t applied." : "Rendszergazdák IP-cím alapú lekorlátozása nincs beállítva.",
+ "Configuration key \"%1$s\" expects an array (%2$s found). Admin IP range validation will not be applied." : "A(z) \"%1$s\" konfigurációs bejegyzésnek tömb értéket kell megadni (ehelyett most ez van: %2$s). A rendszergazdák IP-cím tartomány ellenőrzése nem lesz beállítva.",
+ "Configuration key \"%1$s\" contains invalid IP range(s): \"%2$s\"" : "A(z) \"%1$s\" konfigurációs bejegyzésben érvénytrelen IP-cím tartomány van: \"%2$s\"",
+ "Admin IP filtering is correctly configured." : "Rendszergazdák IP-cím alapú lekorlátozása érvényesen be van állítva.",
+ "App directories owner" : "Alkalmazás-könyvtárak tulajdonosa",
+ "Some app directories are owned by a different user than the web server one. This may be the case if apps have been installed manually. Check the permissions of the following app directories:\n%s" : "Néhány alkalmazás-könyvtárnak nem a Nextcloud szerver a tulajdonosa. Ez akkor fordulhat elő, ha ezek kézzel lettek telepítve. A következőknek ellenőrizd a könyvtárát: %s",
+ "App directories have the correct owner \"%s\"" : "Az alkalmazás-könyvtárak tulajdonosa helyesen van beállítva: \"%s\"",
+ "Brute-force Throttle" : "Brute-force fékezés",
+ "Your remote address could not be determined." : "Nem lehet kideríteni a te IP-címedet.",
+ "Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "A következő IP-címről látszol csatlakozni: \"%s\", ami jelenleg brute-force fékezés hatálya alá esik. Ez lelassítja a különféle kérések feldolgozását. Ha ez nem a te IP-címed, azt az is okozhatja, hogy egy közbeeső proxy szerver rosszul van bíállítva, és nem továbbítja ide a címedet rendesen.",
+ "Your remote address \"%s\" is not brute-force throttled." : "A te IP-címed, \"%s\", nem esik brute-force fékezés hatálya alá.",
+ "Old administration imported certificates" : "Régi, rendszergazda által importált tanúsítványok",
+ "A background job is pending that checks for administration imported SSL certificates. Please check back later." : "Épp folyamatban van a régi, rendszergazdák által importált SSL tanúsítványok ellenőrzése. Érdeklődj később.",
+ "There are some administration imported SSL certificates present, that are not used anymore with Nextcloud 21. They can be imported on the command line via \"occ security:certificates:import\" command. Their paths inside the data directory are shown below." : "Van néhány régi, rendszergazdák által importált SSL tanúsítvány, amik a Nextcloud 21 óta nincsenek használatban. Ezeket beimportálhatod az \"occ security:certificates:import\" paranccsal. Az elérési útvonalukat lásd alább.",
+ "Code integrity" : "Forráskód integritás",
+ "Integrity checker has been disabled. Integrity cannot be verified." : "Az integritás-ellenőrzés le van tiltva, nem lehet futtatni.",
+ "No altered files" : "Nincsenek megpiszkált file-ok",
+ "Some files have not passed the integrity check. {link1} {link2}" : "Néhány file integritása sérült. {link1} {link2}",
+ "Cron errors" : "Háttér-futtatás (Cron) hibák",
+ "It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Nem sikerült a háttér-feldolgozás (cron) parancssorból. Ezek a technikai hibák léptek fel: %s",
+ "The last cron job ran without errors." : "A legutóbbi háttér-feldolgozás (cron) hibátlanul lefutott.",
+ "Cron last run" : "Legutóbbi háttér-feldolgozás (cron)",
+ "Last background job execution ran %s. Something seems wrong. {link}." : "Utoljára %s futott le a háttér-feldolgozás (cron). Valami nem stimmel. {link}.",
+ "Last background job execution ran %s." : "Utoljára %s futott le a háttér-feldolgozás (cron).",
"Data directory protected" : "Adatkönyvtár védett",
"Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Az adatkönyvtárai és a fájljai valószínűleg elérhetőek az internetről. A .htaccess fájl nem működik. Erősen javasolt, hogy a webkiszolgálót úgy állítsa be, hogy az adatkönyvtár tartalma ne legyen közvetlenül elérhető, vagy helyezze át a könyvtárat a kiszolgálási területen kívülre.",
+ "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Nem sikerült ellenőrizni, hogy az adatkönyvtár megfelelően védett-e. Ellenőrizd, hogy a szerver nem enged hozzáférést az adatkönyvtárhoz.",
"Database missing columns" : "Az adatbázisból hiányoznak oszlopok",
+ "Missing optional column \"%s\" in table \"%s\"." : "Hiányzik a(z) \"%s\" opcionális oszlop az \"%s\" táblából.",
"The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "Az adatbázisból hiányzik néhány nem kötelező oszlop. Mivel az oszlopok hozzáadása sokáig tart a nagy tábláknál, ezért a nem kötelező oszlopok nem lettek automatikusan hozzáadva. A hiányzó oszlopokat az „occ db:add-missing-columns” paranccsal lehet kézileg hozzáadni a példány futása közben. Az oszlopok hozzáadása után bizonyos funkciók válaszideje és használhatósága javulni fog.",
+ "Database missing indices" : "Hiányzik néhány index az adatbázisban",
+ "Missing indices:" : "Hiányzó indexek:",
+ "\"%s\" in table \"%s\"" : "\"%s\" az \"%s\" táblában",
+ "Detected some missing optional indices. Occasionally new indices are added (by Nextcloud or installed applications) to improve database performance. Adding indices can sometimes take awhile and temporarily hurt performance so this is not done automatically during upgrades. Once the indices are added, queries to those tables should be faster. Use the command `occ db:add-missing-indices` to add them. " : "Hiányzik néhány opcionális index. Időnként új indexeket vesz fel a Nextcloud vagy valamelyik telepített alkalmazás az adatbázis-performancia javítására. Ez néha sokáig eltarthat, és a folyamat közben átmenetileg lelassítja a szervert, úgyhogy a szoftverfrissítések során nem hajtódik végre automatikusan. Viszont miután megtörtént, az érintett táblák elérése felgyorsul. Az `occ db:add-missing-indices` paranccsal lehet felvenni őket.",
+ "Database missing primary keys" : "Hiányzik néhány elsődleges kulcs az adatbázisban",
+ "Missing primary key on table \"%s\"." : "Hiányzik az elsődleges kulcs az \"%s\" táblán.",
"The database is missing some primary keys. Due to the fact that adding primary keys on big tables could take some time they were not added automatically. By running \"occ db:add-missing-primary-keys\" those missing primary keys could be added manually while the instance keeps running." : "Az adatbázisból hiányzik néhány elsődleges kulcs. Mivel az elsődleges kulcsok hozzáadása nagy táblák esetén sokáig tarthat, ezért nem lettek automatikusan létrehozva. Futtassa az „occ db:add-missing-primary-keys” parancsot, hogy kézzel létrehozza a hiányzó elsődleges kulcsokat, miközben a példány továbbra is fut.",
+ "Database pending bigint migrations" : "Az adatbázis a bigint migrációra vár",
+ "Some columns in the database are missing a conversion to big int. Due to the fact that changing column types on big tables could take some time they were not changed automatically. By running \"occ db:convert-filecache-bigint\" those pending changes could be applied manually. This operation needs to be made while the instance is offline." : "Az adatbázisban néhány oszlopnál nem történt meg a bigint-re való konverzió. Mivel ez eltarthat egy darabig nagyméretű táblák esetén, nem hajtódik végre automatikusan. Az `occ db:convert-filecache-bigint` paranccsal ez kézileg megtehető. Eközben a szervernek mindenképpen offline kell lennie.",
"Debug mode" : "Hibakeresési mód",
"This instance is running in debug mode. Only enable this for local development and not in production environments." : "Ez a példány hibakeresési módban fut. Csak helyi fejlesztéshez engedélyezze, éles környezetben ne.",
"Debug mode is disabled." : "Hibakeresési mód kikapcsolva.",
@@ -133,6 +175,10 @@
"Your installation has no default phone region set. This is required to validate phone numbers in the profile settings without a country code. To allow numbers without a country code, please add \"default_phone_region\" with the respective ISO 3166-1 code of the region to your config file." : "A telepítéshez nincs megadva alapértelmezett telefonkörzet. Erre a telefonszámok országkód nélküli ellenőrzéséhez van szükség a profilbeállításokban. Ha országkód nélküli számokat szeretne engedélyezni, vegye fel a konfigurációs fájlba az „default_phone_region” paramétert a körzetnek megfelelő ISO 3166-1 kóddal.",
"Email test" : "E-mail-teszt",
"Email test was successfully sent" : "A tesztlevél sikeresen elküldve",
+ "You have not set or verified your email server configuration, yet. Please head over to the \"Basic settings\" in order to set them. Afterwards, use the \"Send email\" button below the form to verify your settings." : "Még nincs beállítva vagy kipróbálva az email szerver. Ezt megteheted az \"Alapvető beállítások\" szekcióban. Az \"E-mail küldése\" gombra nyomva ellenőrizheted, hogy működik-e.",
+ "Transactional File Locking" : "Tranzakciós File Lockolás",
+ "Transactional File Locking is disabled. This is not a a supported configuraton. It may lead to difficult to isolate problems including file corruption. Please remove the `'filelocking.enabled' => false` configuration entry from your `config.php` to avoid these problems." : "A Tranzakciós File Lockolás le van tiltva. Ez a konfiguráció nem támogatott. Nehezen kibogozható problémákhoz vezethet, adatvesztést beleértve. Távolítsd el a `'filelocking.enabled' => false` bejegyzést a `config.php`-ból, hogy ezt elkerüld.",
+ "The database is used for transactional file locking. To enhance performance, please configure memcache, if available." : "A Tranzakciós File Lockolás jelenleg az adatbázis segítségével történik. A performancia javítása érdekében lehetőleg konfiguráld be a memcache-t.",
"HTTPS access and URLs" : "HTTPS hozzáférés és URL-ok",
"Accessing site insecurely via HTTP." : "A webhely nem biztonságos elérése HTTP-n keresztül.",
"Internet connectivity" : "Internetkapcsolat",
diff --git a/apps/settings/l10n/nl.js b/apps/settings/l10n/nl.js
index 491b755793d..65ce6d0ed70 100644
--- a/apps/settings/l10n/nl.js
+++ b/apps/settings/l10n/nl.js
@@ -121,6 +121,10 @@ OC.L10N.register(
"Personal info" : "Persoonlijke info",
"Mobile & desktop" : "Mobiel & desktop",
"Email server" : "E-mailserver",
+ "Send emails using" : "E-mail verzenden met",
+ "User's email account" : "E-mailaccount gebruiker",
+ "System email account" : "E-mailaccount systeem",
+ "Security & setup checks" : "Veiligheids- en instellingencontrole",
"Background jobs" : "Achtergrondtaken",
"Unlimited" : "Ongelimiteerd",
"Verifying" : "Controleer",
@@ -136,16 +140,41 @@ OC.L10N.register(
"Your remote address could not be determined." : "Je remote adres kon niet bepaald worden",
"Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "Je remote adres is geregistreerd als \"%s\" en wordt op dit moment afgeremd ter bescherming van bruteforce aanvallen. Dit verlaagt de performantie van verschillende aanvragen. Als het remote adres niet uw adres is kan dit wijzen op een verkeerd ingestelde proxy. ",
"Your remote address \"%s\" is not brute-force throttled." : "Je remote adres %s is niet bruteforce begrensd.",
+ "Code integrity" : "Integriteit code",
+ "Integrity checker has been disabled. Integrity cannot be verified." : "Integriteitscontrole is uitgeschakeld. Integriteit kan niet gecontroleerd worden.",
"No altered files" : "Geen gewijzigde bestanden",
"Some files have not passed the integrity check. {link1} {link2}" : "Sommige bestanden zijn niet door de integriteitscontrole gekomen. {link1} {link2}",
"Cron errors" : "Cron fouten",
"It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Het was niet mogelijk om de systeem cron via CLI uit te voeren. De volgende technische problemen traden op:\n%s",
"The last cron job ran without errors." : "De laatste crontaak liep zonder fouten.",
+ "Last background job execution ran %s. Something seems wrong. {link}." : "Laatste achtegrondtaak liep%s. Er ging iets fout. {link}",
+ "Last background job execution ran %s." : "Laatste achtergrondtaak liep %s.",
+ "Data directory protected" : "Datamap is beveiligd",
"Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Je datamap en je bestanden zijn waarschijnlijk vanaf het internet bereikbaar. Het .htaccess-bestand werkt niet. We raden ten zeerste aan aan om je webserver zodanig te configureren, dat de datadirectory niet bereikbaar is vanaf het internet of om je datadirectory te verplaatsen naar een locatie buiten de document-root van de webserver.",
+ "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Kon niet vaststellen of de datamap beveiligd is. Bekijk a.u.b. handmatig of de server toegang heeft tot de datamap.",
+ "Database missing columns" : "Database mist kolommen",
+ "Missing optional column \"%s\" in table \"%s\"." : "Optionele kolom \"%s\" mist in tabel \"%s\".",
"The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "De database mist een paar optionele kolommen. Omdat het toevoegen van kolommen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd, omdat dat optioneel kan. Door het draaien van \"occ db:add-missing-columns\" kunnen deze kolommen handmatig worden toegevoegd terwijl de server blijft draaien. Als de kolommen zijn toegevoegd, zullen bepaalde functionaliteiten veel sneller of gemakkelijker plaatsvinden.",
+ "Database missing indices" : "Database mist indexen",
+ "Missing indices:" : "Ontbrekende indexen:",
+ "Database missing primary keys" : "Database mist primaire sleutels",
"The database is missing some primary keys. Due to the fact that adding primary keys on big tables could take some time they were not added automatically. By running \"occ db:add-missing-primary-keys\" those missing primary keys could be added manually while the instance keeps running." : "De database mist enkele primaire sleutels. Omdat het toevoegen van primaire sleutels aan grote tabellen enige tijd kan duren, werden ze niet automatisch toegevoegd. Door \"occ db:add-missing-primary-keys\" uit te voeren, kunnen die ontbrekende primaire sleutels handmatig worden toegevoegd terwijl de server blijft draaien.",
"This instance is running in debug mode. Only enable this for local development and not in production environments." : "Deze instantie draait in debug modus. Gelieve deze modus enkel te gebruiken voor lokale ontwikkeling, en niet in productie omgevingen.",
+ "Default phone region" : "Standaard telefoonregio",
+ "Your installation has no default phone region set. This is required to validate phone numbers in the profile settings without a country code. To allow numbers without a country code, please add \"default_phone_region\" with the respective ISO 3166-1 code of the region to your config file." : "Je installatie heeft geen standaard telefoonregio. Dit is nodig om telefoonnummers te valideren in de profielinstellingen zonder landcode. Om nummers zonder landcode toe te staan, voeg je \"default_phone_region\" met de respectieve ISO 3166-1-code van de regio toe aan je configuratiebestand.",
+ "Email test" : "E-mail test",
+ "Email test was successfully sent" : "Test e-mail is succesvol verzonden",
+ "You have not set or verified your email server configuration, yet. Please head over to the \"Basic settings\" in order to set them. Afterwards, use the \"Send email\" button below the form to verify your settings." : "U heeft uw emailserverconfiguratie nog niet ingesteld of geverifieerd. Navigeer alstublieft naar de Standaardinstellingen om deze in te stellen. Hierna kunt u de \"Stuur email\" knop onder dit formulier gebruiken om uw instellingen te verifiëren",
+ "HTTPS access and URLs" : "HTTPS toegang en URL's",
+ "Accessing site insecurely via HTTP. You are strongly advised to set up your server to require HTTPS instead. Without it some important web functionality like \"copy to clipboard\" or \"service workers\" will not work!" : "Connectie via HTTP. U wordt aangeraden uw server in te stellen om het gebruik van HTTPS af te dwingen. Zonder HTTPS zullen functies zoals \"kopieer naar klembord\" en \"service workers\" niet werken.",
+ "Accessing site insecurely via HTTP." : "Site wordt onveiligd benaderd via HTTP.",
+ "You are accessing your instance over a secure connection, however your instance is generating insecure URLs. This likely means that your instance is behind a reverse proxy and the Nextcloud `overwrite*` config values are not set correctly." : "Je verbindt met je server over een beveiligde verbinding, maar je server genereert onveilige URLs. Waarschijnlijk zit je achter een reverse proxy en zijn de overschijf configuratievariabelen niet goed ingesteld. ",
+ "Your instance is generating insecure URLs. If you access your instance over HTTPS, this likely means that your instance is behind a reverse proxy and the Nextcloud `overwrite*` config values are not set correctly." : "Je server genereert onveilige URLs. Als je je server benadert via een beveiligde HTTPS-verbinding, zit je waarschijnlijk achter een reverse proxy en zijn de overschijf configuratievariabelen niet goed ingesteld. ",
+ "You are accessing your instance over a secure connection, and your instance is generating secure URLs." : "Je verbindt met de server via een beveiligde verbinding en je server genereert veilige URL's.",
+ "Internet connectivity" : "Internetverbinding",
+ "Internet connectivity is disabled in configuration file." : "Verbinding met het internet is uitgeschakeld in het configuratiebestand.",
"This server has no working internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the internet to enjoy all features." : "Deze server heeft geen werkende internetverbinding: meerdere endpoints kunnen niet worden bereikt. Dat betekent dat sommige functies, zoals het gebruik van externe opslag, notificaties over updates of installatie van apps van derde partijen niet werken. Ook het benaderen van bestanden vanaf een remote locatie en het versturen van notificatie emails kan mislukken. We adviseren om de internetverbinding voor deze server in te schakelen als je alle functies wilt gebruiken.",
+ "JavaScript modules support" : "JavaScript modules support",
"Disabled" : "Uitgeschakeld",
"The old server-side-encryption format is enabled. We recommend disabling this." : "Het oude server-side-encryptie formaat is ingeschakeld. We raden aan om dit uit te schakelen.",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "De PHP functie \"set_time_limit\" is niet beschikbaar. Dit kan erin resulteren dat de scripts halverwege stoppen, waardoor de installatie ontregeld raakt. We adviseren sterk om deze functie in te schakelen.",
@@ -154,6 +183,9 @@ OC.L10N.register(
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP lijkt niet goed te zijn ingesteld voor opvragen systeemomgevingsvariabelen. De test met getenv(\"PATH\") gaf een leeg resultaat.",
"PHP modules" : "PHP modules",
"The PHP OPcache module is not loaded. For better performance it is recommended to load it into your PHP installation." : "De PHP OPcache is niet geladen. Voor betere prestaties adviseren we die te laden in je php.ini instellingen.",
+ "OPcache is disabled. For better performance, it is recommended to apply \"opcache.enable=1\" to your PHP configuration." : "OPcache is uitgeschakeld. Voor betere prestaties wordt aanbevolen om \"opcache.enable=1\" toe te passen in je PHP-configuratie.",
+ "The shared memory based OPcache is disabled. For better performance, it is recommended to apply \"opcache.file_cache_only=0\" to your PHP configuration and use the file cache as second level cache only." : "De shared memory based OPcache is uitgeschakeld. Voor betere prestaties wordt aanbevolen om \"opcache.file_cache_only=0\" toe te passen in je PHP-configuratie en de bestandscache alleen te gebruiken als second level cache.",
+ "OPcache is not working as it should, opcache_get_status() returns false, please check configuration." : "OPcache werkt niet zoals zou moeten, opcache_get_status() retourneert false, controleer de configuratie.",
"PHP version" : "PHP versie",
"Secure" : "Beveiligd",
"The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "De alleen-lezen config is ingeschakeld. Dit voorkomt het via de webinterface wijzigen van verschillende instellingen. Bovendien moet het bestand voor elke aanpassing handmatig op beschrijfbaar worden ingesteld.",
@@ -170,13 +202,35 @@ OC.L10N.register(
"Allow resharing" : "Toestaan doordelen",
"Allow sharing with groups" : "Sta delen met groepen toe",
"Restrict users to only share with users in their groups" : "Laat gebruikers alleen delen met andere gebruikers in hun groepen",
+ "Ignore the following groups when checking group membership" : "Negeer de volgende groepen bij het controleren van groepslidmaatschap",
"Allow users to share via link and emails" : "Sta gebruikers toe om te delen via een link en e-mail",
"Allow public uploads" : "Sta publieke uploads toe",
"Always ask for a password" : "Vraag altijd naar een wachtwoord",
"Enforce password protection" : "Dwing wachtwoordbeveiliging af",
+ "Exclude groups from password requirements" : "Sluit groepen uit van wachtwoordvereisten",
+ "Exclude groups from creating link shares" : "Sta deze groepen niet toe om deellinks te maken",
+ "Limit sharing based on groups" : "Beperk delen op basis van groepen",
+ "Allow sharing for everyone (default)" : "Iedereen toestaan te delen (standaard)",
+ "Exclude some groups from sharing" : "Sta bepaalde groepen niet toe om te delen",
+ "Limit sharing to some groups" : "Beperk het delen naar bepaalde groepen",
+ "Groups allowed to share" : "Groepen die mogen delen",
+ "Groups excluded from sharing" : "Groepen die niet mogen delen",
+ "Not allowed groups will still be able to receive shares, but not to initiate them." : "Groepen zonder toestemming kunnen gedeelde mappen en bestanden ontvangen, maar kunnen zelf niets delen.",
+ "Set default expiration date for internal shares" : "Instellen standaard vervaldatum voor deellinks",
"Enforce expiration date" : "Het kiezen van een vervaldatum verplichten",
+ "Default expiration time of new shares in days" : "Standaard vervalperiode van nieuwe deellinks in dagen",
+ "Expire shares after x days" : "Laat deellinks vervallen na x dagen",
"Set default expiration date for shares to other servers" : "Instellen standaard vervaldatum voor deellink naar andere servers",
+ "Enforce expiration date for remote shares" : "Vervaldatum voor externe deellinks afdwingen",
+ "Default expiration time of remote shares in days" : "Standaard vervalperiode van externe deellinks in dagen",
+ "Expire remote shares after x days" : "Laat externe deellinks vervallen na x dagen",
+ "Set default expiration date for shares via link or mail" : "Instellen standaard vervaldatum voor share via link of e-mail",
+ "Default expiration time of shares in days" : "Standaard vervalperiode van deellinks in dagen",
+ "Privacy settings for sharing" : "Privacyinstellingen voor delen",
+ "Allow account name autocompletion in share dialog and allow access to the system address book" : "Accountnaam automatisch aanvullen en toegang tot het systeemadresboek toestaan aan gebruikers in dezelfde groepen",
"If autocompletion \"same group\" and \"phone number integration\" are enabled a match in either is enough to show the user." : "Als automatisch aanvullen \"dezelfde groep\" en \"telefoonnummer integratie\" zijn ingeschakeld, is een overeenkomst in een van beide voldoende om de gebruiker te tonen.",
+ "Restrict account name autocompletion and system address book access to users within the same groups" : "Accountnaam automatisch aanvullen en toegang tot het systeemadresboek beperken tot gebruikers in dezelfde groepen",
+ "Restrict account name autocompletion to users based on phone number integration" : "Beperk automatisch aanvullen van gebruikersnamen tot gebruikers gebaseerd op telefoonnummerintegratie",
"Allow autocompletion when entering the full name or email address (ignoring missing phonebook match and being in the same group)" : "Automatisch aanvullen toestaan bij het invoeren van de volledige naam of het e-mailadres (ontbrekende overeenkomst in het telefoonboek negeren en deel uitmaken van dezelfde groep)",
"Show disclaimer text on the public link upload page (only shown when the file list is hidden)" : "Toon disclaimer tekst op de publieke link upload pagina (alleen getoond wanneer de bestandslijst verborgen is)",
"This text will be shown on the public link upload page when the file list is hidden." : "Deze tekst wordt getoond op de openbare link uploadpagina als het bestandsoverzicht is verborgen.",
@@ -190,11 +244,13 @@ OC.L10N.register(
"Two-factor authentication is not enforced for members of the following groups." : "Tweetrapsauthenticatie wordt niet geforceerd voor leden van de volgende groepen.",
"Excluded groups" : "Uitgesloten groepen",
"Save changes" : "Wijzigingen bewaren",
+ "Show details for {appName} app" : "Toon details voor {appName} app",
"Update to {update}" : "Update naar {update}",
"Remove" : "Verwijderen",
"Featured" : "Aanbevolen",
"This app is supported via your current Nextcloud subscription." : "Deze app wordt ondersteund via je huidige Nextcloud abonnement.",
"Featured apps are developed by and within the community. They offer central functionality and are ready for production use." : "Aanbevolen apps worden ontwikkeld door en binnen de community. Ze bieden centrale functionaliteit en zijn klaar voor productie.",
+ "Community rating: {score}/5" : "Gemeenschapsscore: {score}/5",
"All apps are up-to-date." : "Alle apps zijn up-to-date.",
"Icon" : "Pictogram",
"Name" : "Naam",
@@ -204,11 +260,25 @@ OC.L10N.register(
"Results from other categories" : "Resultaten van andere categorieën",
"No apps found for your version" : "Geen apps gevonden voor jouw versie",
"Disable all" : "Alles uitschakelen",
+ "Download and enable all" : "Download en alles inschakelen",
"_%n app has an update available_::_%n apps have an update available_" : ["Voor %n app is een update beschikbaar","Voor %n apps is een update beschikbaar"],
+ "_Update_::_Update all_" : ["Update","Update alles"],
+ "Nothing to show" : "Niets te tonen",
+ "Could not load section content from app store." : "Kon de inhoud van het onderdeel niet laden vanuit de app store.",
"Loading" : "Laden",
+ "Fetching the latest news…" : "Ophalen laatste nieuws...",
+ "Could not load app discover section" : "Kon het onderdeel app ontdekken niet laden",
+ "Could not render element" : "Kon het element niet verwerken",
+ "Carousel" : "Caroussel",
+ "Previous slide" : "Vorige dia",
+ "Next slide" : "Volgende dia",
+ "Choose slide to display" : "Kies dia om te tonen",
+ "{index} of {total}" : "{index} van {total}",
"Daemon" : "Daemon",
+ "Deploy Daemon" : "Daemon implementeren",
"Type" : "Type",
"Display Name" : "Weergavenaam",
+ "GPUs support" : "GPUs support",
"Description" : "Omschrijving",
"Details" : "Details",
"All" : "Alle",
@@ -218,6 +288,7 @@ OC.L10N.register(
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Deze app heeft geen minimum Nextcloud versie toegewezen gekregen. In de toekomst wordt dit wordt een fout.",
"This app has no maximum Nextcloud version assigned. This will be an error in the future." : "Deze app heeft geen maximum Nextcloud versie toegewezen gekregen. In de toekomst wordt dit wordt een fout.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Deze app kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld:",
+ "Latest updated" : "Laatste update",
"Author" : "Auteur",
"Categories" : "Categorieën",
"Resources" : "Bronnen",
@@ -225,12 +296,17 @@ OC.L10N.register(
"Report a bug" : "Rapporteer een fout",
"Request feature" : "Vraag functionaliteit aan",
"Ask questions or discuss" : "Stel vragen of discussieer",
+ "Rate the app" : "Beoordeel de app",
"Rate" : "Beoordelen",
"View in store" : "Bekijken in store",
"Visit website" : "Bezoek website",
+ "Usage documentation" : "Gebruiksdocumentatie",
"Admin documentation" : "Beheerdocumentatie",
"Developer documentation" : "Ontwikkelaarsdocumentatie",
"Changelog" : "Lijst van veranderingen",
+ "Device name" : "Apparaatnaam",
+ "Cancel renaming" : "Annuleer hernoemen",
+ "Save new name" : "Bewaar nieuwe naam",
"Marked for remote wipe" : "Aangemerkt voor wissen op afstand",
"Device settings" : "Apparaatinstellingen",
"Allow filesystem access" : "Toestaan toegang bestandssysteem",
@@ -251,10 +327,17 @@ OC.L10N.register(
"App name" : "Appnaam",
"Create new app password" : "Creëer een nieuw app wachtwoord",
"Error while creating device token" : "Fout bij creëren apparaat-token",
+ "New app password" : "Nieuw appwachtwoord",
+ "Use the credentials below to configure your app or device. For security reasons this password will only be shown once." : "Gebruik de gegevens hieronder om je app of apparaat te configureren. Uit veiligheidsoverwegingen wordt dit wachtwoord slecht eenmaal getoond.",
"Login" : "Login",
"Password" : "Wachtwoord",
"Show QR code for mobile apps" : "Toon QR code voor mobiele apps",
+ "App password copied!" : "Appwachtwoord gekopieerd!",
+ "Copy app password" : "Kopieer appwachtwoord",
+ "Login name copied!" : "Loginnaam gekopieerd!",
+ "Copy login name" : "Kopieer loginnaam",
"Could not copy app password. Please copy it manually." : "Kon app wachtwoord niet kopiëren. Kopieer het handmatig.",
+ "Could not copy login name. Please copy it manually." : "Kon loginnaam niet kopiëren. Kopieer handmatig a.u.b.",
"Last job execution ran {time}. Something seems wrong." : "Laatste taakuitvoering liep {time}. Er lijkt iets fout gegaan.",
"Last job ran {relativeTime}." : "Laatste taak liep {relativeTime}.",
"AJAX" : "AJAX",
@@ -423,6 +506,7 @@ OC.L10N.register(
"Show last login" : "Toon laatste inlog",
"Sorting" : "Sorteren",
"Send email" : "Verstuur e-mail",
+ "Send welcome email to new accounts" : "Stuur welkom e-mail naar nieuwe accounts",
"Defaults" : "Standaard",
"Default quota" : "Standaard quota",
"Select default quota" : "Selecteer standaardquotum",
@@ -439,25 +523,40 @@ OC.L10N.register(
"Your browser does not support WebAuthn." : "Je browser ondersteunt WebAuthn niet.",
"As admin you can fine-tune the sharing behavior. Please see the documentation for more information." : "Als beheerder kun je gedetailleerde regels voor delen instellen. Bekijk de documentatie voor meer informatie.",
"You need to enable the File sharing App." : "Je dient de File sharing App in te schakelen",
+ "Loading app list" : "Laden applijst",
+ "App Store" : "App winkel",
+ "Loading categories" : "Laden categorieën",
+ "Developer documentation ↗" : "Ontwikkelaarsdocumentatie ↗",
"Version {version}, {license}-licensed" : "Versie {version}, {license}-licensed",
"Version {version}" : "Versie {version}",
+ "All accounts" : "Alle accounts",
"Admins" : "Beheerders",
+ "Account group: {group}" : "Accountgroep: {group}",
+ "Account management" : "Accountbeheer",
+ "Creating group…" : "Creëren groep...",
+ "Create group" : "Creëer groep",
"Group name" : "Groepsnaam",
+ "Please enter a valid group name" : "Voer een valide groepsnaam in",
+ "Failed to create group" : "Creëren groep mislukt",
"Sending…" : "Versturen...",
"Email sent" : "E-mail verzonden",
"Location" : "Locatie",
"Profile picture" : "Profielafbeelding",
"About" : "Over",
+ "Date of birth" : "Geboortedatum",
"Full name" : "Volledige naam",
"Additional email" : "Extra e-mailadres",
"Headline" : "Hoofdlijn",
"Organisation" : "Organisatie",
"Phone number" : "Telefoonnummer",
"Role" : "Rol",
+ "X (formerly Twitter)" : "X (voorheen Twitter)",
"Website" : "Website",
"Profile visibility" : "Profiel zichtbaarheid",
"Locale" : "Regionale instellingen",
+ "First day of week" : "Eerste dag van de week",
"Not available as this property is required for core functionality including file sharing and calendar invitations" : "Niet beschikbaar omdat deze eigenschap benodigd is voor de basisfunctionaliteit inclusief bestandsdeling en kalender uitnodigingen",
+ "Discover" : "Ontdekken",
"Your apps" : "Jouw apps",
"Active apps" : "Ingeschakelde apps",
"Disabled apps" : "Uitgeschakelde apps",
@@ -468,13 +567,19 @@ OC.L10N.register(
"Show to everyone" : "Laat zien aan iedereen",
"Show to logged in accounts only" : "Laat alleen zien aan ingelogde accounts",
"Hide" : "Verberg",
+ "{progress}% Deploying …" : "{progress} % implementeren ...",
+ "{progress}% Initializing …" : "{progress} % initialiseren ...",
"Health checking" : "Gezondheidscheck",
+ "Deploy and Enable" : "Implementeren en inschakelen",
"Download and enable" : "Downloaden en inschakelen",
"Disable" : "Uitschakelen",
"Allow untested app" : "Niet-geteste apps toestaan",
"The app will be downloaded from the App Store" : "De app zal worden gedownload van de App Store",
"This app is not marked as compatible with your Nextcloud version. If you continue you will still be able to install the app. Note that the app might not work as expected." : "Deze is niet aangeduid als compatibel met jouw versie van Nextcloud. Als je verdergaat, zal je de app kunnen installeren. Let op dat de app misschien niet werkt zoals verwacht.",
"Never" : "Nooit",
+ "Could not register device: Network error" : "Kon apparaat niet registreren: netwerkfout",
+ "Could not register device: Probably already registered" : "Kon apparaat niet registreren: waarschijnlijk al geregistreerd",
+ "Could not register device" : "Kon apparaat niet registreren",
"An error occurred during the request. Unable to proceed." : "Er is een fout opgetreden tijdens het verzoek. Kan niet doorgaan.",
"The app has been enabled but needs to be updated." : "De app is ingeschakeld maar moet bijgewerkt worden.",
"Error: This app cannot be enabled because it makes the server unstable" : "Fout: Deze app kan niet ingeschakeld worden, omdat die de server onstabiel maakt",
@@ -485,6 +590,7 @@ OC.L10N.register(
"Error while wiping the device with the token" : "Fout tijdens het wissen van het apparaat met de token",
"Error while updating device token name" : "Fout tijdens bijwerken device tokennaam",
"Error while updating device token scope" : "Fout tijdens bijwerken device tokenscope",
+ "Could not set group sorting" : "Kon groepsorteren niet instellen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Er waren te veel aanvragen afkomstig uit uw netwerk. Probeer later opnieuw of contacteer de beheerder als dat niet correct is.",
"Error" : "Fout",
"Administration documentation" : "Beheerdersdocumentatie",
@@ -519,6 +625,7 @@ OC.L10N.register(
"Reasons to use Nextcloud in your organization" : "Redenen om Nextcloud te gebruiken in jouw organisatie",
"Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Ontwikkeld door de {communityopen}Nextcloud community{linkclose}, de {githubopen}broncode{linkclose} is gelicenseerd onder de {licenseopen}AGPL{linkclose}.",
"Like our Facebook page" : "Vind onze Facebook pagina leuk",
+ "Follow us on X" : "Volg ons op X",
"Follow us on Mastodon" : "Volg ons op Mastodon",
"Check out our blog" : "Lees ons blog",
"Subscribe to our newsletter" : "Abonneer jezelf op onze nieuwsbrief",
@@ -539,13 +646,29 @@ OC.L10N.register(
"Two-factor authentication can be enforced for all users and specific groups. If they do not have a two-factor provider configured, they will be unable to log into the system." : "Tweetrapsauthenticatie kan worden afgedwongen voor alle gebruikers en specifieke groepen. Als ze geen tweetrapsprovider hebben ingesteld, dan kunnen ze niet inloggen in het systeem.",
"When groups are selected/excluded, they use the following logic to determine if a user has 2FA enforced: If no groups are selected, 2FA is enabled for everyone except members of the excluded groups. If groups are selected, 2FA is enabled for all members of these. If a user is both in a selected and excluded group, the selected takes precedence and 2FA is enforced." : "Wanneer groepen worden geselecteerd/uitgezonderd, geldt de volgende logica om te bepalen of voor een gebruiker 2FA wordt afgedwongen: Als geen groepen zijn geselecteerd, is 2FA voor iedereen ingeschakeld, behalve voor leden van de uitgezonderde groepen. Als groepen zijn geselecteerd is 2FA is ingeschakeld voor alle leden ervan. Als een gebruiker lid is van zowel een geselecteerde als uitgezonderde groep, krijgt de geselecteerde voorrang en wordt 2FA afgedwongen.",
"{license}-licensed" : "{license}-gelicenseerd",
+ "Rating: {score}/10" : "Score: {score}/10",
"Username" : "Gebruikersnaam",
"Execute one task with each page loaded. Use case: Single user instance." : "Een taak uitvoeren bij het laden van iedere pagina. Use case: voor een enkele gebruiker.",
"Enable or disable profile by default for new users." : "Profiel standaard in- of uitschakelen voor nieuwe gebruikers.",
+ "You are using <strong>{usage}</strong>" : "Je gebruikt <strong>{usage}</strong>",
+ "You are using <strong>{usage}</strong> of <strong>{totalSpace}</strong> (<strong>{usageRelative}%</strong>)" : "Je gebruikt <strong>{usage}</strong> van <strong>{totalSpace}</strong> (<strong>{usageRelative}%</strong>)",
"Additional emails" : "Extra e-mailadressen",
"Enable Profile" : "Schakel Profiel in",
+ "No users" : "Geen gebruikers",
+ "Loading users …" : "Laden gebruikers ...",
"New user" : "Nieuwe gebruiker",
+ "Groups (required)" : "Groepen (vereist)",
+ "Set user groups" : "Gebruikersgroepen instellen",
+ "Administered groups" : "Beheerde groepen",
+ "Set user as admin for …" : "Maak gebruiker beheerder voor ...",
+ "Set user quota" : "Gebruikersquota instellen",
+ "Add new user" : "Nieuwe gebruiker toevoegen",
+ "Set user manager" : "Gebruikersbeheerder instellen",
+ "Username will be autogenerated" : "Gebruikersnaam wordt automatisch gegenereerd",
+ "Username (required)" : "Gebruikersnaam (vereist)",
"User backend" : "Backend gebruiker",
+ "User actions" : "Gebruikersacties",
+ "Loading user …" : "Laden gebruiker ...",
"You do not have permissions to see the details of this user" : "Je hebt niet de machtigingen om de details van deze gebruiekr te zien",
"Add user to group" : "Toevoegen gebruiker aan groep",
"Set user as admin for" : "Maak gebruiker beheerder voor",
@@ -554,16 +677,25 @@ OC.L10N.register(
"Wipe all devices" : "Wis alle toestellen",
"Disable user" : "Gebruiker uitschakelen",
"Enable user" : "Inschakelen gebruiker",
+ "Failed to update user manager" : "Bijwerken gebruikersbeheerder mislukt",
"Toggle user actions menu" : "Omschakelen gebruikersactiemenu",
+ "User management settings" : "Gebruikersbeheerinstellingen",
"Show user backend" : "Toon backend gebruiker",
+ "Send welcome email to new users" : "Stuur welkom e-mail naar nieuwe gebruikers",
"Name your device" : "Geef je apparaat een naam",
"Server error while trying to add WebAuthn device" : "Serverfout tijdens het toevoegen van WebAuthn apparaat",
"by {author}\n{license}" : "door {author}\n{license}",
+ "User management" : "Gebruikersbeheer",
"Active users" : "Actieve gebruikers",
"Disabled users" : "Uitgeschakelde gebruikers",
+ "Creating group …" : "Creëren groep...",
+ "User group: {group}" : "Gebruikersgroep: {group}",
"Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions" : "Niet beschikbaar omdat het publiceren van gebruikersdata aan de lookup server niet toegestaan is, neem contact op met je beheerder als je vragen hebt",
"Show to logged in users only" : "Laat alleen zien aan ingelogde gebruikers",
+ "Nextcloud help resources" : "Nextcloud hulpbronnen",
"SMTP Username" : "SMTP gebruikersnaam",
- "Follow us on Twitter" : "Volg ons op Twitter"
+ "Follow us on Twitter" : "Volg ons op Twitter",
+ "Active accounts" : "Actieve accounts",
+ "Users's email account" : "E-mailaccount gebruiker"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/settings/l10n/nl.json b/apps/settings/l10n/nl.json
index d981d304ba4..4535d98a9ae 100644
--- a/apps/settings/l10n/nl.json
+++ b/apps/settings/l10n/nl.json
@@ -119,6 +119,10 @@
"Personal info" : "Persoonlijke info",
"Mobile & desktop" : "Mobiel & desktop",
"Email server" : "E-mailserver",
+ "Send emails using" : "E-mail verzenden met",
+ "User's email account" : "E-mailaccount gebruiker",
+ "System email account" : "E-mailaccount systeem",
+ "Security & setup checks" : "Veiligheids- en instellingencontrole",
"Background jobs" : "Achtergrondtaken",
"Unlimited" : "Ongelimiteerd",
"Verifying" : "Controleer",
@@ -134,16 +138,41 @@
"Your remote address could not be determined." : "Je remote adres kon niet bepaald worden",
"Your remote address was identified as \"%s\" and is brute-force throttled at the moment slowing down the performance of various requests. If the remote address is not your address this can be an indication that a proxy is not configured correctly." : "Je remote adres is geregistreerd als \"%s\" en wordt op dit moment afgeremd ter bescherming van bruteforce aanvallen. Dit verlaagt de performantie van verschillende aanvragen. Als het remote adres niet uw adres is kan dit wijzen op een verkeerd ingestelde proxy. ",
"Your remote address \"%s\" is not brute-force throttled." : "Je remote adres %s is niet bruteforce begrensd.",
+ "Code integrity" : "Integriteit code",
+ "Integrity checker has been disabled. Integrity cannot be verified." : "Integriteitscontrole is uitgeschakeld. Integriteit kan niet gecontroleerd worden.",
"No altered files" : "Geen gewijzigde bestanden",
"Some files have not passed the integrity check. {link1} {link2}" : "Sommige bestanden zijn niet door de integriteitscontrole gekomen. {link1} {link2}",
"Cron errors" : "Cron fouten",
"It was not possible to execute the cron job via CLI. The following technical errors have appeared:\n%s" : "Het was niet mogelijk om de systeem cron via CLI uit te voeren. De volgende technische problemen traden op:\n%s",
"The last cron job ran without errors." : "De laatste crontaak liep zonder fouten.",
+ "Last background job execution ran %s. Something seems wrong. {link}." : "Laatste achtegrondtaak liep%s. Er ging iets fout. {link}",
+ "Last background job execution ran %s." : "Laatste achtergrondtaak liep %s.",
+ "Data directory protected" : "Datamap is beveiligd",
"Your data directory and files are probably accessible from the internet. The .htaccess file is not working. It is strongly recommended that you configure your web server so that the data directory is no longer accessible, or move the data directory outside the web server document root." : "Je datamap en je bestanden zijn waarschijnlijk vanaf het internet bereikbaar. Het .htaccess-bestand werkt niet. We raden ten zeerste aan aan om je webserver zodanig te configureren, dat de datadirectory niet bereikbaar is vanaf het internet of om je datadirectory te verplaatsen naar een locatie buiten de document-root van de webserver.",
+ "Could not check that the data directory is protected. Please check manually that your server does not allow access to the data directory." : "Kon niet vaststellen of de datamap beveiligd is. Bekijk a.u.b. handmatig of de server toegang heeft tot de datamap.",
+ "Database missing columns" : "Database mist kolommen",
+ "Missing optional column \"%s\" in table \"%s\"." : "Optionele kolom \"%s\" mist in tabel \"%s\".",
"The database is missing some optional columns. Due to the fact that adding columns on big tables could take some time they were not added automatically when they can be optional. By running \"occ db:add-missing-columns\" those missing columns could be added manually while the instance keeps running. Once the columns are added some features might improve responsiveness or usability." : "De database mist een paar optionele kolommen. Omdat het toevoegen van kolommen op grote tabellen veel tijd kan kosten, zijn ze niet automatisch gecreëerd, omdat dat optioneel kan. Door het draaien van \"occ db:add-missing-columns\" kunnen deze kolommen handmatig worden toegevoegd terwijl de server blijft draaien. Als de kolommen zijn toegevoegd, zullen bepaalde functionaliteiten veel sneller of gemakkelijker plaatsvinden.",
+ "Database missing indices" : "Database mist indexen",
+ "Missing indices:" : "Ontbrekende indexen:",
+ "Database missing primary keys" : "Database mist primaire sleutels",
"The database is missing some primary keys. Due to the fact that adding primary keys on big tables could take some time they were not added automatically. By running \"occ db:add-missing-primary-keys\" those missing primary keys could be added manually while the instance keeps running." : "De database mist enkele primaire sleutels. Omdat het toevoegen van primaire sleutels aan grote tabellen enige tijd kan duren, werden ze niet automatisch toegevoegd. Door \"occ db:add-missing-primary-keys\" uit te voeren, kunnen die ontbrekende primaire sleutels handmatig worden toegevoegd terwijl de server blijft draaien.",
"This instance is running in debug mode. Only enable this for local development and not in production environments." : "Deze instantie draait in debug modus. Gelieve deze modus enkel te gebruiken voor lokale ontwikkeling, en niet in productie omgevingen.",
+ "Default phone region" : "Standaard telefoonregio",
+ "Your installation has no default phone region set. This is required to validate phone numbers in the profile settings without a country code. To allow numbers without a country code, please add \"default_phone_region\" with the respective ISO 3166-1 code of the region to your config file." : "Je installatie heeft geen standaard telefoonregio. Dit is nodig om telefoonnummers te valideren in de profielinstellingen zonder landcode. Om nummers zonder landcode toe te staan, voeg je \"default_phone_region\" met de respectieve ISO 3166-1-code van de regio toe aan je configuratiebestand.",
+ "Email test" : "E-mail test",
+ "Email test was successfully sent" : "Test e-mail is succesvol verzonden",
+ "You have not set or verified your email server configuration, yet. Please head over to the \"Basic settings\" in order to set them. Afterwards, use the \"Send email\" button below the form to verify your settings." : "U heeft uw emailserverconfiguratie nog niet ingesteld of geverifieerd. Navigeer alstublieft naar de Standaardinstellingen om deze in te stellen. Hierna kunt u de \"Stuur email\" knop onder dit formulier gebruiken om uw instellingen te verifiëren",
+ "HTTPS access and URLs" : "HTTPS toegang en URL's",
+ "Accessing site insecurely via HTTP. You are strongly advised to set up your server to require HTTPS instead. Without it some important web functionality like \"copy to clipboard\" or \"service workers\" will not work!" : "Connectie via HTTP. U wordt aangeraden uw server in te stellen om het gebruik van HTTPS af te dwingen. Zonder HTTPS zullen functies zoals \"kopieer naar klembord\" en \"service workers\" niet werken.",
+ "Accessing site insecurely via HTTP." : "Site wordt onveiligd benaderd via HTTP.",
+ "You are accessing your instance over a secure connection, however your instance is generating insecure URLs. This likely means that your instance is behind a reverse proxy and the Nextcloud `overwrite*` config values are not set correctly." : "Je verbindt met je server over een beveiligde verbinding, maar je server genereert onveilige URLs. Waarschijnlijk zit je achter een reverse proxy en zijn de overschijf configuratievariabelen niet goed ingesteld. ",
+ "Your instance is generating insecure URLs. If you access your instance over HTTPS, this likely means that your instance is behind a reverse proxy and the Nextcloud `overwrite*` config values are not set correctly." : "Je server genereert onveilige URLs. Als je je server benadert via een beveiligde HTTPS-verbinding, zit je waarschijnlijk achter een reverse proxy en zijn de overschijf configuratievariabelen niet goed ingesteld. ",
+ "You are accessing your instance over a secure connection, and your instance is generating secure URLs." : "Je verbindt met de server via een beveiligde verbinding en je server genereert veilige URL's.",
+ "Internet connectivity" : "Internetverbinding",
+ "Internet connectivity is disabled in configuration file." : "Verbinding met het internet is uitgeschakeld in het configuratiebestand.",
"This server has no working internet connection: Multiple endpoints could not be reached. This means that some of the features like mounting external storage, notifications about updates or installation of third-party apps will not work. Accessing files remotely and sending of notification emails might not work, either. Establish a connection from this server to the internet to enjoy all features." : "Deze server heeft geen werkende internetverbinding: meerdere endpoints kunnen niet worden bereikt. Dat betekent dat sommige functies, zoals het gebruik van externe opslag, notificaties over updates of installatie van apps van derde partijen niet werken. Ook het benaderen van bestanden vanaf een remote locatie en het versturen van notificatie emails kan mislukken. We adviseren om de internetverbinding voor deze server in te schakelen als je alle functies wilt gebruiken.",
+ "JavaScript modules support" : "JavaScript modules support",
"Disabled" : "Uitgeschakeld",
"The old server-side-encryption format is enabled. We recommend disabling this." : "Het oude server-side-encryptie formaat is ingeschakeld. We raden aan om dit uit te schakelen.",
"The PHP function \"set_time_limit\" is not available. This could result in scripts being halted mid-execution, breaking your installation. Enabling this function is strongly recommended." : "De PHP functie \"set_time_limit\" is niet beschikbaar. Dit kan erin resulteren dat de scripts halverwege stoppen, waardoor de installatie ontregeld raakt. We adviseren sterk om deze functie in te schakelen.",
@@ -152,6 +181,9 @@
"PHP does not seem to be setup properly to query system environment variables. The test with getenv(\"PATH\") only returns an empty response." : "PHP lijkt niet goed te zijn ingesteld voor opvragen systeemomgevingsvariabelen. De test met getenv(\"PATH\") gaf een leeg resultaat.",
"PHP modules" : "PHP modules",
"The PHP OPcache module is not loaded. For better performance it is recommended to load it into your PHP installation." : "De PHP OPcache is niet geladen. Voor betere prestaties adviseren we die te laden in je php.ini instellingen.",
+ "OPcache is disabled. For better performance, it is recommended to apply \"opcache.enable=1\" to your PHP configuration." : "OPcache is uitgeschakeld. Voor betere prestaties wordt aanbevolen om \"opcache.enable=1\" toe te passen in je PHP-configuratie.",
+ "The shared memory based OPcache is disabled. For better performance, it is recommended to apply \"opcache.file_cache_only=0\" to your PHP configuration and use the file cache as second level cache only." : "De shared memory based OPcache is uitgeschakeld. Voor betere prestaties wordt aanbevolen om \"opcache.file_cache_only=0\" toe te passen in je PHP-configuratie en de bestandscache alleen te gebruiken als second level cache.",
+ "OPcache is not working as it should, opcache_get_status() returns false, please check configuration." : "OPcache werkt niet zoals zou moeten, opcache_get_status() retourneert false, controleer de configuratie.",
"PHP version" : "PHP versie",
"Secure" : "Beveiligd",
"The read-only config has been enabled. This prevents setting some configurations via the web-interface. Furthermore, the file needs to be made writable manually for every update." : "De alleen-lezen config is ingeschakeld. Dit voorkomt het via de webinterface wijzigen van verschillende instellingen. Bovendien moet het bestand voor elke aanpassing handmatig op beschrijfbaar worden ingesteld.",
@@ -168,13 +200,35 @@
"Allow resharing" : "Toestaan doordelen",
"Allow sharing with groups" : "Sta delen met groepen toe",
"Restrict users to only share with users in their groups" : "Laat gebruikers alleen delen met andere gebruikers in hun groepen",
+ "Ignore the following groups when checking group membership" : "Negeer de volgende groepen bij het controleren van groepslidmaatschap",
"Allow users to share via link and emails" : "Sta gebruikers toe om te delen via een link en e-mail",
"Allow public uploads" : "Sta publieke uploads toe",
"Always ask for a password" : "Vraag altijd naar een wachtwoord",
"Enforce password protection" : "Dwing wachtwoordbeveiliging af",
+ "Exclude groups from password requirements" : "Sluit groepen uit van wachtwoordvereisten",
+ "Exclude groups from creating link shares" : "Sta deze groepen niet toe om deellinks te maken",
+ "Limit sharing based on groups" : "Beperk delen op basis van groepen",
+ "Allow sharing for everyone (default)" : "Iedereen toestaan te delen (standaard)",
+ "Exclude some groups from sharing" : "Sta bepaalde groepen niet toe om te delen",
+ "Limit sharing to some groups" : "Beperk het delen naar bepaalde groepen",
+ "Groups allowed to share" : "Groepen die mogen delen",
+ "Groups excluded from sharing" : "Groepen die niet mogen delen",
+ "Not allowed groups will still be able to receive shares, but not to initiate them." : "Groepen zonder toestemming kunnen gedeelde mappen en bestanden ontvangen, maar kunnen zelf niets delen.",
+ "Set default expiration date for internal shares" : "Instellen standaard vervaldatum voor deellinks",
"Enforce expiration date" : "Het kiezen van een vervaldatum verplichten",
+ "Default expiration time of new shares in days" : "Standaard vervalperiode van nieuwe deellinks in dagen",
+ "Expire shares after x days" : "Laat deellinks vervallen na x dagen",
"Set default expiration date for shares to other servers" : "Instellen standaard vervaldatum voor deellink naar andere servers",
+ "Enforce expiration date for remote shares" : "Vervaldatum voor externe deellinks afdwingen",
+ "Default expiration time of remote shares in days" : "Standaard vervalperiode van externe deellinks in dagen",
+ "Expire remote shares after x days" : "Laat externe deellinks vervallen na x dagen",
+ "Set default expiration date for shares via link or mail" : "Instellen standaard vervaldatum voor share via link of e-mail",
+ "Default expiration time of shares in days" : "Standaard vervalperiode van deellinks in dagen",
+ "Privacy settings for sharing" : "Privacyinstellingen voor delen",
+ "Allow account name autocompletion in share dialog and allow access to the system address book" : "Accountnaam automatisch aanvullen en toegang tot het systeemadresboek toestaan aan gebruikers in dezelfde groepen",
"If autocompletion \"same group\" and \"phone number integration\" are enabled a match in either is enough to show the user." : "Als automatisch aanvullen \"dezelfde groep\" en \"telefoonnummer integratie\" zijn ingeschakeld, is een overeenkomst in een van beide voldoende om de gebruiker te tonen.",
+ "Restrict account name autocompletion and system address book access to users within the same groups" : "Accountnaam automatisch aanvullen en toegang tot het systeemadresboek beperken tot gebruikers in dezelfde groepen",
+ "Restrict account name autocompletion to users based on phone number integration" : "Beperk automatisch aanvullen van gebruikersnamen tot gebruikers gebaseerd op telefoonnummerintegratie",
"Allow autocompletion when entering the full name or email address (ignoring missing phonebook match and being in the same group)" : "Automatisch aanvullen toestaan bij het invoeren van de volledige naam of het e-mailadres (ontbrekende overeenkomst in het telefoonboek negeren en deel uitmaken van dezelfde groep)",
"Show disclaimer text on the public link upload page (only shown when the file list is hidden)" : "Toon disclaimer tekst op de publieke link upload pagina (alleen getoond wanneer de bestandslijst verborgen is)",
"This text will be shown on the public link upload page when the file list is hidden." : "Deze tekst wordt getoond op de openbare link uploadpagina als het bestandsoverzicht is verborgen.",
@@ -188,11 +242,13 @@
"Two-factor authentication is not enforced for members of the following groups." : "Tweetrapsauthenticatie wordt niet geforceerd voor leden van de volgende groepen.",
"Excluded groups" : "Uitgesloten groepen",
"Save changes" : "Wijzigingen bewaren",
+ "Show details for {appName} app" : "Toon details voor {appName} app",
"Update to {update}" : "Update naar {update}",
"Remove" : "Verwijderen",
"Featured" : "Aanbevolen",
"This app is supported via your current Nextcloud subscription." : "Deze app wordt ondersteund via je huidige Nextcloud abonnement.",
"Featured apps are developed by and within the community. They offer central functionality and are ready for production use." : "Aanbevolen apps worden ontwikkeld door en binnen de community. Ze bieden centrale functionaliteit en zijn klaar voor productie.",
+ "Community rating: {score}/5" : "Gemeenschapsscore: {score}/5",
"All apps are up-to-date." : "Alle apps zijn up-to-date.",
"Icon" : "Pictogram",
"Name" : "Naam",
@@ -202,11 +258,25 @@
"Results from other categories" : "Resultaten van andere categorieën",
"No apps found for your version" : "Geen apps gevonden voor jouw versie",
"Disable all" : "Alles uitschakelen",
+ "Download and enable all" : "Download en alles inschakelen",
"_%n app has an update available_::_%n apps have an update available_" : ["Voor %n app is een update beschikbaar","Voor %n apps is een update beschikbaar"],
+ "_Update_::_Update all_" : ["Update","Update alles"],
+ "Nothing to show" : "Niets te tonen",
+ "Could not load section content from app store." : "Kon de inhoud van het onderdeel niet laden vanuit de app store.",
"Loading" : "Laden",
+ "Fetching the latest news…" : "Ophalen laatste nieuws...",
+ "Could not load app discover section" : "Kon het onderdeel app ontdekken niet laden",
+ "Could not render element" : "Kon het element niet verwerken",
+ "Carousel" : "Caroussel",
+ "Previous slide" : "Vorige dia",
+ "Next slide" : "Volgende dia",
+ "Choose slide to display" : "Kies dia om te tonen",
+ "{index} of {total}" : "{index} van {total}",
"Daemon" : "Daemon",
+ "Deploy Daemon" : "Daemon implementeren",
"Type" : "Type",
"Display Name" : "Weergavenaam",
+ "GPUs support" : "GPUs support",
"Description" : "Omschrijving",
"Details" : "Details",
"All" : "Alle",
@@ -216,6 +286,7 @@
"This app has no minimum Nextcloud version assigned. This will be an error in the future." : "Deze app heeft geen minimum Nextcloud versie toegewezen gekregen. In de toekomst wordt dit wordt een fout.",
"This app has no maximum Nextcloud version assigned. This will be an error in the future." : "Deze app heeft geen maximum Nextcloud versie toegewezen gekregen. In de toekomst wordt dit wordt een fout.",
"This app cannot be installed because the following dependencies are not fulfilled:" : "Deze app kan niet worden geïnstalleerd, omdat de volgende afhankelijkheden niet zijn ingevuld:",
+ "Latest updated" : "Laatste update",
"Author" : "Auteur",
"Categories" : "Categorieën",
"Resources" : "Bronnen",
@@ -223,12 +294,17 @@
"Report a bug" : "Rapporteer een fout",
"Request feature" : "Vraag functionaliteit aan",
"Ask questions or discuss" : "Stel vragen of discussieer",
+ "Rate the app" : "Beoordeel de app",
"Rate" : "Beoordelen",
"View in store" : "Bekijken in store",
"Visit website" : "Bezoek website",
+ "Usage documentation" : "Gebruiksdocumentatie",
"Admin documentation" : "Beheerdocumentatie",
"Developer documentation" : "Ontwikkelaarsdocumentatie",
"Changelog" : "Lijst van veranderingen",
+ "Device name" : "Apparaatnaam",
+ "Cancel renaming" : "Annuleer hernoemen",
+ "Save new name" : "Bewaar nieuwe naam",
"Marked for remote wipe" : "Aangemerkt voor wissen op afstand",
"Device settings" : "Apparaatinstellingen",
"Allow filesystem access" : "Toestaan toegang bestandssysteem",
@@ -249,10 +325,17 @@
"App name" : "Appnaam",
"Create new app password" : "Creëer een nieuw app wachtwoord",
"Error while creating device token" : "Fout bij creëren apparaat-token",
+ "New app password" : "Nieuw appwachtwoord",
+ "Use the credentials below to configure your app or device. For security reasons this password will only be shown once." : "Gebruik de gegevens hieronder om je app of apparaat te configureren. Uit veiligheidsoverwegingen wordt dit wachtwoord slecht eenmaal getoond.",
"Login" : "Login",
"Password" : "Wachtwoord",
"Show QR code for mobile apps" : "Toon QR code voor mobiele apps",
+ "App password copied!" : "Appwachtwoord gekopieerd!",
+ "Copy app password" : "Kopieer appwachtwoord",
+ "Login name copied!" : "Loginnaam gekopieerd!",
+ "Copy login name" : "Kopieer loginnaam",
"Could not copy app password. Please copy it manually." : "Kon app wachtwoord niet kopiëren. Kopieer het handmatig.",
+ "Could not copy login name. Please copy it manually." : "Kon loginnaam niet kopiëren. Kopieer handmatig a.u.b.",
"Last job execution ran {time}. Something seems wrong." : "Laatste taakuitvoering liep {time}. Er lijkt iets fout gegaan.",
"Last job ran {relativeTime}." : "Laatste taak liep {relativeTime}.",
"AJAX" : "AJAX",
@@ -421,6 +504,7 @@
"Show last login" : "Toon laatste inlog",
"Sorting" : "Sorteren",
"Send email" : "Verstuur e-mail",
+ "Send welcome email to new accounts" : "Stuur welkom e-mail naar nieuwe accounts",
"Defaults" : "Standaard",
"Default quota" : "Standaard quota",
"Select default quota" : "Selecteer standaardquotum",
@@ -437,25 +521,40 @@
"Your browser does not support WebAuthn." : "Je browser ondersteunt WebAuthn niet.",
"As admin you can fine-tune the sharing behavior. Please see the documentation for more information." : "Als beheerder kun je gedetailleerde regels voor delen instellen. Bekijk de documentatie voor meer informatie.",
"You need to enable the File sharing App." : "Je dient de File sharing App in te schakelen",
+ "Loading app list" : "Laden applijst",
+ "App Store" : "App winkel",
+ "Loading categories" : "Laden categorieën",
+ "Developer documentation ↗" : "Ontwikkelaarsdocumentatie ↗",
"Version {version}, {license}-licensed" : "Versie {version}, {license}-licensed",
"Version {version}" : "Versie {version}",
+ "All accounts" : "Alle accounts",
"Admins" : "Beheerders",
+ "Account group: {group}" : "Accountgroep: {group}",
+ "Account management" : "Accountbeheer",
+ "Creating group…" : "Creëren groep...",
+ "Create group" : "Creëer groep",
"Group name" : "Groepsnaam",
+ "Please enter a valid group name" : "Voer een valide groepsnaam in",
+ "Failed to create group" : "Creëren groep mislukt",
"Sending…" : "Versturen...",
"Email sent" : "E-mail verzonden",
"Location" : "Locatie",
"Profile picture" : "Profielafbeelding",
"About" : "Over",
+ "Date of birth" : "Geboortedatum",
"Full name" : "Volledige naam",
"Additional email" : "Extra e-mailadres",
"Headline" : "Hoofdlijn",
"Organisation" : "Organisatie",
"Phone number" : "Telefoonnummer",
"Role" : "Rol",
+ "X (formerly Twitter)" : "X (voorheen Twitter)",
"Website" : "Website",
"Profile visibility" : "Profiel zichtbaarheid",
"Locale" : "Regionale instellingen",
+ "First day of week" : "Eerste dag van de week",
"Not available as this property is required for core functionality including file sharing and calendar invitations" : "Niet beschikbaar omdat deze eigenschap benodigd is voor de basisfunctionaliteit inclusief bestandsdeling en kalender uitnodigingen",
+ "Discover" : "Ontdekken",
"Your apps" : "Jouw apps",
"Active apps" : "Ingeschakelde apps",
"Disabled apps" : "Uitgeschakelde apps",
@@ -466,13 +565,19 @@
"Show to everyone" : "Laat zien aan iedereen",
"Show to logged in accounts only" : "Laat alleen zien aan ingelogde accounts",
"Hide" : "Verberg",
+ "{progress}% Deploying …" : "{progress} % implementeren ...",
+ "{progress}% Initializing …" : "{progress} % initialiseren ...",
"Health checking" : "Gezondheidscheck",
+ "Deploy and Enable" : "Implementeren en inschakelen",
"Download and enable" : "Downloaden en inschakelen",
"Disable" : "Uitschakelen",
"Allow untested app" : "Niet-geteste apps toestaan",
"The app will be downloaded from the App Store" : "De app zal worden gedownload van de App Store",
"This app is not marked as compatible with your Nextcloud version. If you continue you will still be able to install the app. Note that the app might not work as expected." : "Deze is niet aangeduid als compatibel met jouw versie van Nextcloud. Als je verdergaat, zal je de app kunnen installeren. Let op dat de app misschien niet werkt zoals verwacht.",
"Never" : "Nooit",
+ "Could not register device: Network error" : "Kon apparaat niet registreren: netwerkfout",
+ "Could not register device: Probably already registered" : "Kon apparaat niet registreren: waarschijnlijk al geregistreerd",
+ "Could not register device" : "Kon apparaat niet registreren",
"An error occurred during the request. Unable to proceed." : "Er is een fout opgetreden tijdens het verzoek. Kan niet doorgaan.",
"The app has been enabled but needs to be updated." : "De app is ingeschakeld maar moet bijgewerkt worden.",
"Error: This app cannot be enabled because it makes the server unstable" : "Fout: Deze app kan niet ingeschakeld worden, omdat die de server onstabiel maakt",
@@ -483,6 +588,7 @@
"Error while wiping the device with the token" : "Fout tijdens het wissen van het apparaat met de token",
"Error while updating device token name" : "Fout tijdens bijwerken device tokennaam",
"Error while updating device token scope" : "Fout tijdens bijwerken device tokenscope",
+ "Could not set group sorting" : "Kon groepsorteren niet instellen",
"There were too many requests from your network. Retry later or contact your administrator if this is an error." : "Er waren te veel aanvragen afkomstig uit uw netwerk. Probeer later opnieuw of contacteer de beheerder als dat niet correct is.",
"Error" : "Fout",
"Administration documentation" : "Beheerdersdocumentatie",
@@ -517,6 +623,7 @@
"Reasons to use Nextcloud in your organization" : "Redenen om Nextcloud te gebruiken in jouw organisatie",
"Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Ontwikkeld door de {communityopen}Nextcloud community{linkclose}, de {githubopen}broncode{linkclose} is gelicenseerd onder de {licenseopen}AGPL{linkclose}.",
"Like our Facebook page" : "Vind onze Facebook pagina leuk",
+ "Follow us on X" : "Volg ons op X",
"Follow us on Mastodon" : "Volg ons op Mastodon",
"Check out our blog" : "Lees ons blog",
"Subscribe to our newsletter" : "Abonneer jezelf op onze nieuwsbrief",
@@ -537,13 +644,29 @@
"Two-factor authentication can be enforced for all users and specific groups. If they do not have a two-factor provider configured, they will be unable to log into the system." : "Tweetrapsauthenticatie kan worden afgedwongen voor alle gebruikers en specifieke groepen. Als ze geen tweetrapsprovider hebben ingesteld, dan kunnen ze niet inloggen in het systeem.",
"When groups are selected/excluded, they use the following logic to determine if a user has 2FA enforced: If no groups are selected, 2FA is enabled for everyone except members of the excluded groups. If groups are selected, 2FA is enabled for all members of these. If a user is both in a selected and excluded group, the selected takes precedence and 2FA is enforced." : "Wanneer groepen worden geselecteerd/uitgezonderd, geldt de volgende logica om te bepalen of voor een gebruiker 2FA wordt afgedwongen: Als geen groepen zijn geselecteerd, is 2FA voor iedereen ingeschakeld, behalve voor leden van de uitgezonderde groepen. Als groepen zijn geselecteerd is 2FA is ingeschakeld voor alle leden ervan. Als een gebruiker lid is van zowel een geselecteerde als uitgezonderde groep, krijgt de geselecteerde voorrang en wordt 2FA afgedwongen.",
"{license}-licensed" : "{license}-gelicenseerd",
+ "Rating: {score}/10" : "Score: {score}/10",
"Username" : "Gebruikersnaam",
"Execute one task with each page loaded. Use case: Single user instance." : "Een taak uitvoeren bij het laden van iedere pagina. Use case: voor een enkele gebruiker.",
"Enable or disable profile by default for new users." : "Profiel standaard in- of uitschakelen voor nieuwe gebruikers.",
+ "You are using <strong>{usage}</strong>" : "Je gebruikt <strong>{usage}</strong>",
+ "You are using <strong>{usage}</strong> of <strong>{totalSpace}</strong> (<strong>{usageRelative}%</strong>)" : "Je gebruikt <strong>{usage}</strong> van <strong>{totalSpace}</strong> (<strong>{usageRelative}%</strong>)",
"Additional emails" : "Extra e-mailadressen",
"Enable Profile" : "Schakel Profiel in",
+ "No users" : "Geen gebruikers",
+ "Loading users …" : "Laden gebruikers ...",
"New user" : "Nieuwe gebruiker",
+ "Groups (required)" : "Groepen (vereist)",
+ "Set user groups" : "Gebruikersgroepen instellen",
+ "Administered groups" : "Beheerde groepen",
+ "Set user as admin for …" : "Maak gebruiker beheerder voor ...",
+ "Set user quota" : "Gebruikersquota instellen",
+ "Add new user" : "Nieuwe gebruiker toevoegen",
+ "Set user manager" : "Gebruikersbeheerder instellen",
+ "Username will be autogenerated" : "Gebruikersnaam wordt automatisch gegenereerd",
+ "Username (required)" : "Gebruikersnaam (vereist)",
"User backend" : "Backend gebruiker",
+ "User actions" : "Gebruikersacties",
+ "Loading user …" : "Laden gebruiker ...",
"You do not have permissions to see the details of this user" : "Je hebt niet de machtigingen om de details van deze gebruiekr te zien",
"Add user to group" : "Toevoegen gebruiker aan groep",
"Set user as admin for" : "Maak gebruiker beheerder voor",
@@ -552,16 +675,25 @@
"Wipe all devices" : "Wis alle toestellen",
"Disable user" : "Gebruiker uitschakelen",
"Enable user" : "Inschakelen gebruiker",
+ "Failed to update user manager" : "Bijwerken gebruikersbeheerder mislukt",
"Toggle user actions menu" : "Omschakelen gebruikersactiemenu",
+ "User management settings" : "Gebruikersbeheerinstellingen",
"Show user backend" : "Toon backend gebruiker",
+ "Send welcome email to new users" : "Stuur welkom e-mail naar nieuwe gebruikers",
"Name your device" : "Geef je apparaat een naam",
"Server error while trying to add WebAuthn device" : "Serverfout tijdens het toevoegen van WebAuthn apparaat",
"by {author}\n{license}" : "door {author}\n{license}",
+ "User management" : "Gebruikersbeheer",
"Active users" : "Actieve gebruikers",
"Disabled users" : "Uitgeschakelde gebruikers",
+ "Creating group …" : "Creëren groep...",
+ "User group: {group}" : "Gebruikersgroep: {group}",
"Not available as publishing user specific data to the lookup server is not allowed, contact your system administrator if you have any questions" : "Niet beschikbaar omdat het publiceren van gebruikersdata aan de lookup server niet toegestaan is, neem contact op met je beheerder als je vragen hebt",
"Show to logged in users only" : "Laat alleen zien aan ingelogde gebruikers",
+ "Nextcloud help resources" : "Nextcloud hulpbronnen",
"SMTP Username" : "SMTP gebruikersnaam",
- "Follow us on Twitter" : "Volg ons op Twitter"
+ "Follow us on Twitter" : "Volg ons op Twitter",
+ "Active accounts" : "Actieve accounts",
+ "Users's email account" : "E-mailaccount gebruiker"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/settings/l10n/ru.js b/apps/settings/l10n/ru.js
index 760aaa9ce73..bd8480ce72b 100644
--- a/apps/settings/l10n/ru.js
+++ b/apps/settings/l10n/ru.js
@@ -582,6 +582,9 @@ OC.L10N.register(
"Unable to update profile enabled state" : "Не удалось обновить состояние профиля",
"The more restrictive setting of either visibility or scope is respected on your Profile. For example, if visibility is set to \"Show to everyone\" and scope is set to \"Private\", \"Private\" is respected." : "В профиле устанавливаются более строгие настройки видимости или области действия. Например, если для видимости установлено значение «Видно всем», а для области действия установлено значение «Скрыто», будет использоваться значение «Скрыто».",
"Unable to update visibility of {displayId}" : "Не удалось изменить видимость {displayId}",
+ "she/her" : "она/её",
+ "he/him" : "он/его",
+ "they/them" : "они/их",
"Your role" : "Ваша роль",
"Your X (formerly Twitter) handle" : "Ваше имя в сети X (ранее — Твиттер)",
"Your website" : "Ваш сайт",
@@ -698,6 +701,7 @@ OC.L10N.register(
"Loading categories" : "Загрузка категорий",
"Developer documentation ↗" : "Документация разработчика ↗",
"Version {version}, {license}-licensed" : "Версия: {version}, лицензия: {license}",
+ "Version {version}" : "Версия {version}",
"All accounts" : "Все аккаунты",
"Admins" : "Администраторы",
"Account group: {group}" : "Группа учётных записей: {group}",
diff --git a/apps/settings/l10n/ru.json b/apps/settings/l10n/ru.json
index b5a946a379f..ba4ea390d66 100644
--- a/apps/settings/l10n/ru.json
+++ b/apps/settings/l10n/ru.json
@@ -580,6 +580,9 @@
"Unable to update profile enabled state" : "Не удалось обновить состояние профиля",
"The more restrictive setting of either visibility or scope is respected on your Profile. For example, if visibility is set to \"Show to everyone\" and scope is set to \"Private\", \"Private\" is respected." : "В профиле устанавливаются более строгие настройки видимости или области действия. Например, если для видимости установлено значение «Видно всем», а для области действия установлено значение «Скрыто», будет использоваться значение «Скрыто».",
"Unable to update visibility of {displayId}" : "Не удалось изменить видимость {displayId}",
+ "she/her" : "она/её",
+ "he/him" : "он/его",
+ "they/them" : "они/их",
"Your role" : "Ваша роль",
"Your X (formerly Twitter) handle" : "Ваше имя в сети X (ранее — Твиттер)",
"Your website" : "Ваш сайт",
@@ -696,6 +699,7 @@
"Loading categories" : "Загрузка категорий",
"Developer documentation ↗" : "Документация разработчика ↗",
"Version {version}, {license}-licensed" : "Версия: {version}, лицензия: {license}",
+ "Version {version}" : "Версия {version}",
"All accounts" : "Все аккаунты",
"Admins" : "Администраторы",
"Account group: {group}" : "Группа учётных записей: {group}",
diff --git a/apps/settings/l10n/zh_CN.js b/apps/settings/l10n/zh_CN.js
index 847d0042947..4afab871cf4 100644
--- a/apps/settings/l10n/zh_CN.js
+++ b/apps/settings/l10n/zh_CN.js
@@ -121,6 +121,8 @@ OC.L10N.register(
"Personal info" : "个人信息",
"Mobile & desktop" : "手机与电脑",
"Email server" : "电子邮件服务器",
+ "Mail Providers" : "邮件提供商",
+ "Mail provider enables sending emails directly through the user's personal email account. At present, this functionality is limited to calendar invitations. It requires Nextcloud Mail 4.1 and an email account in Nextcloud Mail that matches the user's email address in Nextcloud." : "邮件提供商允许直接通过用户的个人电子邮件帐户发送电子邮件。目前,此功能仅限于日历邀请。它需要 Nextcloud Mail 4.1 和 Nextcloud Mail 中与用户在 Nextcloud 中的电子邮件地址匹配的电子邮件帐户。",
"Background jobs" : "后台任务",
"Unlimited" : "无限",
"Verifying" : "正在验证",
diff --git a/apps/settings/l10n/zh_CN.json b/apps/settings/l10n/zh_CN.json
index 8947ba19a63..b1bc68dd2de 100644
--- a/apps/settings/l10n/zh_CN.json
+++ b/apps/settings/l10n/zh_CN.json
@@ -119,6 +119,8 @@
"Personal info" : "个人信息",
"Mobile & desktop" : "手机与电脑",
"Email server" : "电子邮件服务器",
+ "Mail Providers" : "邮件提供商",
+ "Mail provider enables sending emails directly through the user's personal email account. At present, this functionality is limited to calendar invitations. It requires Nextcloud Mail 4.1 and an email account in Nextcloud Mail that matches the user's email address in Nextcloud." : "邮件提供商允许直接通过用户的个人电子邮件帐户发送电子邮件。目前,此功能仅限于日历邀请。它需要 Nextcloud Mail 4.1 和 Nextcloud Mail 中与用户在 Nextcloud 中的电子邮件地址匹配的电子邮件帐户。",
"Background jobs" : "后台任务",
"Unlimited" : "无限",
"Verifying" : "正在验证",
diff --git a/apps/sharebymail/l10n/ar.js b/apps/sharebymail/l10n/ar.js
index 6aeed32f71d..e527458680c 100644
--- a/apps/sharebymail/l10n/ar.js
+++ b/apps/sharebymail/l10n/ar.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "تعذّر إرسال المشاركة عبر البريد الإلكتروني. حصلت على عنوان بريد إلكتروني غير صالح.",
"Failed to send share by email" : "تعذّر إرسال مشاركة بالبريد الإلكتروني",
"%1$s shared %2$s with you" : "قام%1$s بمشاركة %2$s معك",
- "%1$s shared %2$s with you." : "قام%1$s بمشاركة %2$s معك.",
"Note:" : "ملاحظة:",
"This share is valid until %s at midnight" : "هذه المشاركة سارية حتى منتصف الليل من %s ",
"Expiration:" : "إنتهاء الصلاحية:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« أضافة ملاحظة لملفٍ سلفت مشاركته معك",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "أنت شاركت للتّوِّ »%1$s« مع %2$s. تمّ إرسال المشاركة إلى وجهتها. بسبب السياسة الأمنية الموضوعة من قبل مسؤول النظام %3$s كل مشاركة يجب أن تكون محمية بكلمة مرور و التي يجب إلّا يتم إرسالها مباشرة إلى المستخدم المقصود. لذا بجب أن تقوم بتحويلها إليه يدويّاً.",
"Password to access »%1$s« shared by you with %2$s" : "كلمة مرور للوصول إلى »%1$s« تمّت مشاركتها مع %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "يسمح للمستخدمين بمشاركة ارتباط مخصص لملف أو مجلد عن طريق إدخال عنوان بريد إلكتروني."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "يسمح للمستخدمين بمشاركة ارتباط مخصص لملف أو مجلد عن طريق إدخال عنوان بريد إلكتروني.",
+ "%1$s shared %2$s with you." : "قام%1$s بمشاركة %2$s معك."
},
"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;");
diff --git a/apps/sharebymail/l10n/ar.json b/apps/sharebymail/l10n/ar.json
index cd58a6bbd07..3c458aac1fa 100644
--- a/apps/sharebymail/l10n/ar.json
+++ b/apps/sharebymail/l10n/ar.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "تعذّر إرسال المشاركة عبر البريد الإلكتروني. حصلت على عنوان بريد إلكتروني غير صالح.",
"Failed to send share by email" : "تعذّر إرسال مشاركة بالبريد الإلكتروني",
"%1$s shared %2$s with you" : "قام%1$s بمشاركة %2$s معك",
- "%1$s shared %2$s with you." : "قام%1$s بمشاركة %2$s معك.",
"Note:" : "ملاحظة:",
"This share is valid until %s at midnight" : "هذه المشاركة سارية حتى منتصف الليل من %s ",
"Expiration:" : "إنتهاء الصلاحية:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« أضافة ملاحظة لملفٍ سلفت مشاركته معك",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "أنت شاركت للتّوِّ »%1$s« مع %2$s. تمّ إرسال المشاركة إلى وجهتها. بسبب السياسة الأمنية الموضوعة من قبل مسؤول النظام %3$s كل مشاركة يجب أن تكون محمية بكلمة مرور و التي يجب إلّا يتم إرسالها مباشرة إلى المستخدم المقصود. لذا بجب أن تقوم بتحويلها إليه يدويّاً.",
"Password to access »%1$s« shared by you with %2$s" : "كلمة مرور للوصول إلى »%1$s« تمّت مشاركتها مع %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "يسمح للمستخدمين بمشاركة ارتباط مخصص لملف أو مجلد عن طريق إدخال عنوان بريد إلكتروني."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "يسمح للمستخدمين بمشاركة ارتباط مخصص لملف أو مجلد عن طريق إدخال عنوان بريد إلكتروني.",
+ "%1$s shared %2$s with you." : "قام%1$s بمشاركة %2$s معك."
},"pluralForm" :"nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/cs.js b/apps/sharebymail/l10n/cs.js
index c8b2d2b5af7..94d9f495755 100644
--- a/apps/sharebymail/l10n/cs.js
+++ b/apps/sharebymail/l10n/cs.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Nepodařilo se odeslat sdílení e-mailem. Obdržena neplatná e-mailová adresa",
"Failed to send share by email" : "Sdílení e-mailem se nezdařilo",
"%1$s shared %2$s with you" : "%1$s vám nasdílel(a) %2$s",
- "%1$s shared %2$s with you." : "%1$s vám nasdílel(a) %2$s.",
"Note:" : "Poznámka:",
"This share is valid until %s at midnight" : "Toto sdílení je platné do půlnoci %s",
"Expiration:" : "Konec platnosti:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "„%s“ dodává poznámku k nasdílenému souboru",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Právě jste s „%1$s“ nasdílel(a) %2$s. Sdílení bylo už příjemci zasláno. Kvůli bezpečnostní politice nastavené administrátorem %3$s musí být každé sdílení chráněno heslem a toto heslo nemůže být příjemci zasláno přímo. Kvůli tomu ho budete muset ručně přeposlat.",
"Password to access »%1$s« shared by you with %2$s" : "Heslo pro přístup k „%1$s“ nasdílenému vámi pro %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Dovoluje uživatelům odeslat personalizovaný odkaz na soubor nebo složku po zadání e-mailové adresy."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Dovoluje uživatelům odeslat personalizovaný odkaz na soubor nebo složku po zadání e-mailové adresy.",
+ "%1$s shared %2$s with you." : "%1$s vám nasdílel(a) %2$s."
},
"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;");
diff --git a/apps/sharebymail/l10n/cs.json b/apps/sharebymail/l10n/cs.json
index 6c6e363c465..0cf76f005fa 100644
--- a/apps/sharebymail/l10n/cs.json
+++ b/apps/sharebymail/l10n/cs.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Nepodařilo se odeslat sdílení e-mailem. Obdržena neplatná e-mailová adresa",
"Failed to send share by email" : "Sdílení e-mailem se nezdařilo",
"%1$s shared %2$s with you" : "%1$s vám nasdílel(a) %2$s",
- "%1$s shared %2$s with you." : "%1$s vám nasdílel(a) %2$s.",
"Note:" : "Poznámka:",
"This share is valid until %s at midnight" : "Toto sdílení je platné do půlnoci %s",
"Expiration:" : "Konec platnosti:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "„%s“ dodává poznámku k nasdílenému souboru",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Právě jste s „%1$s“ nasdílel(a) %2$s. Sdílení bylo už příjemci zasláno. Kvůli bezpečnostní politice nastavené administrátorem %3$s musí být každé sdílení chráněno heslem a toto heslo nemůže být příjemci zasláno přímo. Kvůli tomu ho budete muset ručně přeposlat.",
"Password to access »%1$s« shared by you with %2$s" : "Heslo pro přístup k „%1$s“ nasdílenému vámi pro %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Dovoluje uživatelům odeslat personalizovaný odkaz na soubor nebo složku po zadání e-mailové adresy."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Dovoluje uživatelům odeslat personalizovaný odkaz na soubor nebo složku po zadání e-mailové adresy.",
+ "%1$s shared %2$s with you." : "%1$s vám nasdílel(a) %2$s."
},"pluralForm" :"nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/de.js b/apps/sharebymail/l10n/de.js
index 8f08b1a9c76..eda02326fbc 100644
--- a/apps/sharebymail/l10n/de.js
+++ b/apps/sharebymail/l10n/de.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Die Freigabe per E-Mail konnte nicht gesendet werden. Habe eine ungültige E-Mail-Adresse erhalten.",
"Failed to send share by email" : "Fehler beim Senden der Freigabe per E-Mail",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit dir geteilt",
- "%1$s shared %2$s with you." : "%1$s hat %2$s mit dir geteilt.",
"Note:" : "Bemerkung:",
"This share is valid until %s at midnight" : "Diese Freigabe ist bis zum %s um Mitternacht gültig",
"Expiration:" : "Ablauf:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« hat eine Bemerkung zu einer mit dir geteilten Datei hinzugefügt",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Du hast »%1$s« mit %2$s geteilt. Die Freigabe wurde an den Empfänger gesandt. Aufgrund der Sicherheits-Richtlinien, die der Administrator von %3$s vorgegeben hat, benötigt jede Freigabe einen Passwortschutz und es ist nicht zulässig, ein Passwort direkt an den Empfänger zu senden. Aus diesem Grund musst du das Passwort selbst an den Empfänger senden.",
"Password to access »%1$s« shared by you with %2$s" : "Passwort zum Zugriff auf »%1$s« wurde von dir mit %2$s geteilt",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, eine personalisierte Verknüpfung zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, eine personalisierte Verknüpfung zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen.",
+ "%1$s shared %2$s with you." : "%1$s hat %2$s mit dir geteilt."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/de.json b/apps/sharebymail/l10n/de.json
index 8d3d94aca74..8464b77fc23 100644
--- a/apps/sharebymail/l10n/de.json
+++ b/apps/sharebymail/l10n/de.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Die Freigabe per E-Mail konnte nicht gesendet werden. Habe eine ungültige E-Mail-Adresse erhalten.",
"Failed to send share by email" : "Fehler beim Senden der Freigabe per E-Mail",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit dir geteilt",
- "%1$s shared %2$s with you." : "%1$s hat %2$s mit dir geteilt.",
"Note:" : "Bemerkung:",
"This share is valid until %s at midnight" : "Diese Freigabe ist bis zum %s um Mitternacht gültig",
"Expiration:" : "Ablauf:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« hat eine Bemerkung zu einer mit dir geteilten Datei hinzugefügt",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Du hast »%1$s« mit %2$s geteilt. Die Freigabe wurde an den Empfänger gesandt. Aufgrund der Sicherheits-Richtlinien, die der Administrator von %3$s vorgegeben hat, benötigt jede Freigabe einen Passwortschutz und es ist nicht zulässig, ein Passwort direkt an den Empfänger zu senden. Aus diesem Grund musst du das Passwort selbst an den Empfänger senden.",
"Password to access »%1$s« shared by you with %2$s" : "Passwort zum Zugriff auf »%1$s« wurde von dir mit %2$s geteilt",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, eine personalisierte Verknüpfung zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, eine personalisierte Verknüpfung zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen.",
+ "%1$s shared %2$s with you." : "%1$s hat %2$s mit dir geteilt."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/de_DE.js b/apps/sharebymail/l10n/de_DE.js
index ca302e6f567..b5b0fb6b7bc 100644
--- a/apps/sharebymail/l10n/de_DE.js
+++ b/apps/sharebymail/l10n/de_DE.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Die Freigabe per E-Mail konnte nicht gesendet werden. Habe eine ungültige E-Mail-Adresse erhalten.",
"Failed to send share by email" : "Fehler beim Senden der Freigabe per E-Mail",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit Ihnen geteilt",
- "%1$s shared %2$s with you." : "%1$s hat %2$s mit Ihnen geteilt.",
"Note:" : "Anmerkung:",
"This share is valid until %s at midnight" : "Diese Freigabe ist bis zum %s um Mitternacht gültig",
"Expiration:" : "Ablauf:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« hat eine Bemerkung zu einer mit Ihnen geteilten Datei hinzugefügt",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Sie haben »%1$s« mit %2$s geteilt. Die Freigabe wurde an den Empfänger gesandt. Aufgrund der Sicherheits-Richtlinien, die der Administrator von %3$s vorgegeben hat, benötigt jede Freigabe einen Passwortschutz und es ist nicht zulässig, ein Passwort direkt an den Empfänger zu versenden. Aus diesem Grund müssen Sie das Passwort selbst an den Empfänger senden.",
"Password to access »%1$s« shared by you with %2$s" : "Passwort zum Zugriff auf »%1$s« wurde von Ihnen mit %2$s geteilt",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, einen personalisierten Link zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, einen personalisierten Link zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen.",
+ "%1$s shared %2$s with you." : "%1$s hat %2$s mit Ihnen geteilt."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/de_DE.json b/apps/sharebymail/l10n/de_DE.json
index bd9fa219cb5..77e57f0d9da 100644
--- a/apps/sharebymail/l10n/de_DE.json
+++ b/apps/sharebymail/l10n/de_DE.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Die Freigabe per E-Mail konnte nicht gesendet werden. Habe eine ungültige E-Mail-Adresse erhalten.",
"Failed to send share by email" : "Fehler beim Senden der Freigabe per E-Mail",
"%1$s shared %2$s with you" : "%1$s hat %2$s mit Ihnen geteilt",
- "%1$s shared %2$s with you." : "%1$s hat %2$s mit Ihnen geteilt.",
"Note:" : "Anmerkung:",
"This share is valid until %s at midnight" : "Diese Freigabe ist bis zum %s um Mitternacht gültig",
"Expiration:" : "Ablauf:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« hat eine Bemerkung zu einer mit Ihnen geteilten Datei hinzugefügt",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Sie haben »%1$s« mit %2$s geteilt. Die Freigabe wurde an den Empfänger gesandt. Aufgrund der Sicherheits-Richtlinien, die der Administrator von %3$s vorgegeben hat, benötigt jede Freigabe einen Passwortschutz und es ist nicht zulässig, ein Passwort direkt an den Empfänger zu versenden. Aus diesem Grund müssen Sie das Passwort selbst an den Empfänger senden.",
"Password to access »%1$s« shared by you with %2$s" : "Passwort zum Zugriff auf »%1$s« wurde von Ihnen mit %2$s geteilt",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, einen personalisierten Link zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ermöglicht Benutzern, einen personalisierten Link zu einer Datei oder einem Ordner durch Eingabe einer E-Mail-Adresse zu teilen.",
+ "%1$s shared %2$s with you." : "%1$s hat %2$s mit Ihnen geteilt."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/en_GB.js b/apps/sharebymail/l10n/en_GB.js
index d00e775ed59..f537690d576 100644
--- a/apps/sharebymail/l10n/en_GB.js
+++ b/apps/sharebymail/l10n/en_GB.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Failed to send share by email. Got an invalid email address",
"Failed to send share by email" : "Failed to send share by email",
"%1$s shared %2$s with you" : "%1$s shared %2$s with you",
- "%1$s shared %2$s with you." : "%1$s shared %2$s with you.",
"Note:" : "Note:",
"This share is valid until %s at midnight" : "This share is valid until %s at midnight",
"Expiration:" : "Expiration:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« added a note to a file shared with you",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient.",
"Password to access »%1$s« shared by you with %2$s" : "Password to access »%1$s« shared by you with %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Allows users to share a personalised link to a file or folder by putting in an email address."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Allows users to share a personalised link to a file or folder by putting in an email address.",
+ "%1$s shared %2$s with you." : "%1$s shared %2$s with you."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/en_GB.json b/apps/sharebymail/l10n/en_GB.json
index e86483ebb4b..ab07dcaf666 100644
--- a/apps/sharebymail/l10n/en_GB.json
+++ b/apps/sharebymail/l10n/en_GB.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Failed to send share by email. Got an invalid email address",
"Failed to send share by email" : "Failed to send share by email",
"%1$s shared %2$s with you" : "%1$s shared %2$s with you",
- "%1$s shared %2$s with you." : "%1$s shared %2$s with you.",
"Note:" : "Note:",
"This share is valid until %s at midnight" : "This share is valid until %s at midnight",
"Expiration:" : "Expiration:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« added a note to a file shared with you",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient.",
"Password to access »%1$s« shared by you with %2$s" : "Password to access »%1$s« shared by you with %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Allows users to share a personalised link to a file or folder by putting in an email address."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Allows users to share a personalised link to a file or folder by putting in an email address.",
+ "%1$s shared %2$s with you." : "%1$s shared %2$s with you."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/es_MX.js b/apps/sharebymail/l10n/es_MX.js
index b81213679f7..5296c9d37d4 100644
--- a/apps/sharebymail/l10n/es_MX.js
+++ b/apps/sharebymail/l10n/es_MX.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "No se pudo enviar el recurso compartido por correo electrónico. La dirección de correo electrónico es inválida",
"Failed to send share by email" : "Se presentó una falla al enviar el elemento compartido por correo electrónico",
"%1$s shared %2$s with you" : "%1$s le compartió %2$s",
- "%1$s shared %2$s with you." : "%1$s le compartió %2$s.",
"Note:" : "Nota:",
"This share is valid until %s at midnight" : "El recurso compartido es válido hasta el %s a la media noche",
"Expiration:" : "Caducidad:",
@@ -57,6 +56,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« añadió una nota a un archivo compartido contigo",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Acaba de compartir »%1$s« con %2$s. El recurso compartido ya ha sido enviado al destinatario. Debido a las políticas de seguridad definidas por el administrador de %3$s, cada recurso compartido debe estar protegido con contraseña y no se permite enviar la contraseña directamente al destinatario. Por lo tanto, debe enviarle manualmente la contraseña.",
"Password to access »%1$s« shared by you with %2$s" : "Contraseña para acceder a »%1$s« compartido por usted con %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Le permite a los usuarios compartir una liga personalizada a un archivo o carpeta colocando una dirección de correo eletrónico. "
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Le permite a los usuarios compartir una liga personalizada a un archivo o carpeta colocando una dirección de correo eletrónico. ",
+ "%1$s shared %2$s with you." : "%1$s le compartió %2$s."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
diff --git a/apps/sharebymail/l10n/es_MX.json b/apps/sharebymail/l10n/es_MX.json
index 5c7d7884de9..17c86411ac3 100644
--- a/apps/sharebymail/l10n/es_MX.json
+++ b/apps/sharebymail/l10n/es_MX.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "No se pudo enviar el recurso compartido por correo electrónico. La dirección de correo electrónico es inválida",
"Failed to send share by email" : "Se presentó una falla al enviar el elemento compartido por correo electrónico",
"%1$s shared %2$s with you" : "%1$s le compartió %2$s",
- "%1$s shared %2$s with you." : "%1$s le compartió %2$s.",
"Note:" : "Nota:",
"This share is valid until %s at midnight" : "El recurso compartido es válido hasta el %s a la media noche",
"Expiration:" : "Caducidad:",
@@ -55,6 +54,7 @@
"»%s« added a note to a file shared with you" : "»%s« añadió una nota a un archivo compartido contigo",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Acaba de compartir »%1$s« con %2$s. El recurso compartido ya ha sido enviado al destinatario. Debido a las políticas de seguridad definidas por el administrador de %3$s, cada recurso compartido debe estar protegido con contraseña y no se permite enviar la contraseña directamente al destinatario. Por lo tanto, debe enviarle manualmente la contraseña.",
"Password to access »%1$s« shared by you with %2$s" : "Contraseña para acceder a »%1$s« compartido por usted con %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Le permite a los usuarios compartir una liga personalizada a un archivo o carpeta colocando una dirección de correo eletrónico. "
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Le permite a los usuarios compartir una liga personalizada a un archivo o carpeta colocando una dirección de correo eletrónico. ",
+ "%1$s shared %2$s with you." : "%1$s le compartió %2$s."
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/eu.js b/apps/sharebymail/l10n/eu.js
index 6f4ac27a8e6..bed744a2be1 100644
--- a/apps/sharebymail/l10n/eu.js
+++ b/apps/sharebymail/l10n/eu.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Ezin izan da partekaturikoa posta elektronikoz bidali. Helbide elektroniko baliogabea lortu du",
"Failed to send share by email" : "Ezin izan da e-posta bidez partekatu",
"%1$s shared %2$s with you" : "%1$sk %2$s partekatu du zurekin",
- "%1$s shared %2$s with you." : "%1$sk %2$s partekatu du zurekin.",
"Note:" : "Oharra:",
"This share is valid until %s at midnight" : "Partaidetza honek %sko gauerdira arte balio du",
"Expiration:" : "Iraungitzea:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« erabiltzaileak nota bat gehitu dio partekatu dizun fitxategi batean",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "%1$spartekatu duzu %2$s-(a)rekin. Partekatzea dgoeneko hartzaileari bidali zaio. %3$s-(e)ko administratzaileak zehaztutako segurtasun politikak direla eta, partekatze bakoitza pasahitz bidez babestu behar da eta ezin da pasahitza zuzenean hartzaileari bidali. Beraz, pasahitza eskuz birbidali behar diozu hartzaileari.",
"Password to access »%1$s« shared by you with %2$s" : "»%1$s«  atzitzeko pasahitza partekatu duzu %2$s-(a)rekin",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Erabiltzaileei fitxategi edo karpeta baterako esteka pertsonalizatua partekatzeko aukera ematen die helbide elektronikoa jarriz."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Erabiltzaileei fitxategi edo karpeta baterako esteka pertsonalizatua partekatzeko aukera ematen die helbide elektronikoa jarriz.",
+ "%1$s shared %2$s with you." : "%1$sk %2$s partekatu du zurekin."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/eu.json b/apps/sharebymail/l10n/eu.json
index 08682ac2d88..4e001a9d2af 100644
--- a/apps/sharebymail/l10n/eu.json
+++ b/apps/sharebymail/l10n/eu.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Ezin izan da partekaturikoa posta elektronikoz bidali. Helbide elektroniko baliogabea lortu du",
"Failed to send share by email" : "Ezin izan da e-posta bidez partekatu",
"%1$s shared %2$s with you" : "%1$sk %2$s partekatu du zurekin",
- "%1$s shared %2$s with you." : "%1$sk %2$s partekatu du zurekin.",
"Note:" : "Oharra:",
"This share is valid until %s at midnight" : "Partaidetza honek %sko gauerdira arte balio du",
"Expiration:" : "Iraungitzea:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« erabiltzaileak nota bat gehitu dio partekatu dizun fitxategi batean",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "%1$spartekatu duzu %2$s-(a)rekin. Partekatzea dgoeneko hartzaileari bidali zaio. %3$s-(e)ko administratzaileak zehaztutako segurtasun politikak direla eta, partekatze bakoitza pasahitz bidez babestu behar da eta ezin da pasahitza zuzenean hartzaileari bidali. Beraz, pasahitza eskuz birbidali behar diozu hartzaileari.",
"Password to access »%1$s« shared by you with %2$s" : "»%1$s«  atzitzeko pasahitza partekatu duzu %2$s-(a)rekin",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Erabiltzaileei fitxategi edo karpeta baterako esteka pertsonalizatua partekatzeko aukera ematen die helbide elektronikoa jarriz."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Erabiltzaileei fitxategi edo karpeta baterako esteka pertsonalizatua partekatzeko aukera ematen die helbide elektronikoa jarriz.",
+ "%1$s shared %2$s with you." : "%1$sk %2$s partekatu du zurekin."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/fr.js b/apps/sharebymail/l10n/fr.js
index b1a77becc82..e04a60e1e63 100644
--- a/apps/sharebymail/l10n/fr.js
+++ b/apps/sharebymail/l10n/fr.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Échec lors de l'envoi du partage par e-mail. L'adresse e-mail est invalide",
"Failed to send share by email" : "Échec lors de l'envoi du partage par e-mail",
"%1$s shared %2$s with you" : "%1$s à partagé %2$s avec vous",
- "%1$s shared %2$s with you." : "%1$s à partagé %2$s avec vous.",
"Note:" : "Note :",
"This share is valid until %s at midnight" : "Cette action est valable jusqu'à minuit le %s",
"Expiration:" : "Expiration:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "%s a ajouté une note à un fichier partagé avec vous.",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Vous venez de partager « %1$s » avec %2$s. Le partage a déjà été envoyé au destinataire. En raison de la politique de sécurité définie par l'administrateur de %3$s, chaque partage doit être protégé par mot de passe et il n'est pas autorisé d'envoyer le mot de passe directement au destinataire. C'est pourquoi vous devez transmettre le mot de passe manuellement au destinataire.",
"Password to access »%1$s« shared by you with %2$s" : "Mot de passe pour accéder à « %1$s » partagé par vous avec %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Autoriser les utilisateurs de partager un lien personnalisé vers un fichier ou un dossier en renseignant une adresse e-mail."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Autoriser les utilisateurs de partager un lien personnalisé vers un fichier ou un dossier en renseignant une adresse e-mail.",
+ "%1$s shared %2$s with you." : "%1$s à partagé %2$s avec vous."
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
diff --git a/apps/sharebymail/l10n/fr.json b/apps/sharebymail/l10n/fr.json
index 1fe72b62e9e..343945ca3b2 100644
--- a/apps/sharebymail/l10n/fr.json
+++ b/apps/sharebymail/l10n/fr.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Échec lors de l'envoi du partage par e-mail. L'adresse e-mail est invalide",
"Failed to send share by email" : "Échec lors de l'envoi du partage par e-mail",
"%1$s shared %2$s with you" : "%1$s à partagé %2$s avec vous",
- "%1$s shared %2$s with you." : "%1$s à partagé %2$s avec vous.",
"Note:" : "Note :",
"This share is valid until %s at midnight" : "Cette action est valable jusqu'à minuit le %s",
"Expiration:" : "Expiration:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "%s a ajouté une note à un fichier partagé avec vous.",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Vous venez de partager « %1$s » avec %2$s. Le partage a déjà été envoyé au destinataire. En raison de la politique de sécurité définie par l'administrateur de %3$s, chaque partage doit être protégé par mot de passe et il n'est pas autorisé d'envoyer le mot de passe directement au destinataire. C'est pourquoi vous devez transmettre le mot de passe manuellement au destinataire.",
"Password to access »%1$s« shared by you with %2$s" : "Mot de passe pour accéder à « %1$s » partagé par vous avec %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Autoriser les utilisateurs de partager un lien personnalisé vers un fichier ou un dossier en renseignant une adresse e-mail."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Autoriser les utilisateurs de partager un lien personnalisé vers un fichier ou un dossier en renseignant une adresse e-mail.",
+ "%1$s shared %2$s with you." : "%1$s à partagé %2$s avec vous."
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/ga.js b/apps/sharebymail/l10n/ga.js
index 619d2b02665..43260f49ddd 100644
--- a/apps/sharebymail/l10n/ga.js
+++ b/apps/sharebymail/l10n/ga.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Theip ar roinnt a sheoladh trí ríomhphost. Fuair ​​tú seoladh ríomhphoist neamhbhailí",
"Failed to send share by email" : "Theip ar roinnt a sheoladh trí ríomhphost",
"%1$s shared %2$s with you" : "%1$s roinnte %2$s leat",
- "%1$s shared %2$s with you." : "%1$s roinnte %2$s leat.",
"Note:" : "Nóta:",
"This share is valid until %s at midnight" : "Tá an sciar seo bailí go dtí%sag meán oíche",
"Expiration:" : "Dul in éag:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "Chuir »%s« nóta le comhad a roinntear leat",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Roinn tú »%1$s« le %2$s. Seoladh an sciar chuig an bhfaighteoir cheana féin. De bharr na bpolasaithe slándála atá sainmhínithe ag riarthóir %3$s ní mór gach sciar a chosaint le pasfhocal agus ní cheadaítear an pasfhocal a sheoladh go díreach chuig an bhfaighteoir. Mar sin ní mór duit an pasfhocal a chur ar aghaidh de láimh chuig an bhfaighteoir.",
"Password to access »%1$s« shared by you with %2$s" : "Pasfocal chun rochtain a fháil ar »%1$s« arna chomhroinnt agat le %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ligeann sé d’úsáideoirí nasc pearsantaithe chuig comhad nó fillteán a roinnt trí sheoladh ríomhphoist a chur isteach."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ligeann sé d’úsáideoirí nasc pearsantaithe chuig comhad nó fillteán a roinnt trí sheoladh ríomhphoist a chur isteach.",
+ "%1$s shared %2$s with you." : "%1$s roinnte %2$s leat."
},
"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);");
diff --git a/apps/sharebymail/l10n/ga.json b/apps/sharebymail/l10n/ga.json
index df5e1f073d2..b3d2c2f1703 100644
--- a/apps/sharebymail/l10n/ga.json
+++ b/apps/sharebymail/l10n/ga.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Theip ar roinnt a sheoladh trí ríomhphost. Fuair ​​tú seoladh ríomhphoist neamhbhailí",
"Failed to send share by email" : "Theip ar roinnt a sheoladh trí ríomhphost",
"%1$s shared %2$s with you" : "%1$s roinnte %2$s leat",
- "%1$s shared %2$s with you." : "%1$s roinnte %2$s leat.",
"Note:" : "Nóta:",
"This share is valid until %s at midnight" : "Tá an sciar seo bailí go dtí%sag meán oíche",
"Expiration:" : "Dul in éag:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "Chuir »%s« nóta le comhad a roinntear leat",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Roinn tú »%1$s« le %2$s. Seoladh an sciar chuig an bhfaighteoir cheana féin. De bharr na bpolasaithe slándála atá sainmhínithe ag riarthóir %3$s ní mór gach sciar a chosaint le pasfhocal agus ní cheadaítear an pasfhocal a sheoladh go díreach chuig an bhfaighteoir. Mar sin ní mór duit an pasfhocal a chur ar aghaidh de láimh chuig an bhfaighteoir.",
"Password to access »%1$s« shared by you with %2$s" : "Pasfocal chun rochtain a fháil ar »%1$s« arna chomhroinnt agat le %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ligeann sé d’úsáideoirí nasc pearsantaithe chuig comhad nó fillteán a roinnt trí sheoladh ríomhphoist a chur isteach."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Ligeann sé d’úsáideoirí nasc pearsantaithe chuig comhad nó fillteán a roinnt trí sheoladh ríomhphoist a chur isteach.",
+ "%1$s shared %2$s with you." : "%1$s roinnte %2$s leat."
},"pluralForm" :"nplurals=5; plural=(n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n<11 ? 3 : 4);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/gl.js b/apps/sharebymail/l10n/gl.js
index f4a5e6cc4bd..a6cb10c7d35 100644
--- a/apps/sharebymail/l10n/gl.js
+++ b/apps/sharebymail/l10n/gl.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Produciuse un erro ao enviar a compartición por correo. O enderezo de correo non é válido",
"Failed to send share by email" : "Produciuse un fallo ao enviar acomparticióno por correo",
"%1$s shared %2$s with you" : "%1$s compartiu %2$s con Vde.",
- "%1$s shared %2$s with you." : "%1$s compartiu %2$s con Vde.",
"Note:" : "Nota:",
"This share is valid until %s at midnight" : "Esta participación é válida ata o %s a medianoite",
"Expiration:" : "Caducidade:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "«%s» engadiu unha nota a un ficheiro compartido con Vde.",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Vén de de compartir «%1$s» con %2$s. A compartición xa foi enviada ao destinatario. Por mor das directivas de seguranza definidas polo administrador de %3$s cada compartición necesita ser protexida por un contrasinal e non está permitido que Vde. envíe o contrasinal directamente ao destinatario. Daquela, necesita enviar manualmente o contrasinal ao destinatario.",
"Password to access »%1$s« shared by you with %2$s" : "Contrasinal para acceder a «%1$s» compartida por Vde. con %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuarios compartan unha ligazón personalizada ou un ficheiro ou cartafol enviándoo a un enderezo de correo."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuarios compartan unha ligazón personalizada ou un ficheiro ou cartafol enviándoo a un enderezo de correo.",
+ "%1$s shared %2$s with you." : "%1$s compartiu %2$s con Vde."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/gl.json b/apps/sharebymail/l10n/gl.json
index 03ca4926a56..830fcdee2ec 100644
--- a/apps/sharebymail/l10n/gl.json
+++ b/apps/sharebymail/l10n/gl.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Produciuse un erro ao enviar a compartición por correo. O enderezo de correo non é válido",
"Failed to send share by email" : "Produciuse un fallo ao enviar acomparticióno por correo",
"%1$s shared %2$s with you" : "%1$s compartiu %2$s con Vde.",
- "%1$s shared %2$s with you." : "%1$s compartiu %2$s con Vde.",
"Note:" : "Nota:",
"This share is valid until %s at midnight" : "Esta participación é válida ata o %s a medianoite",
"Expiration:" : "Caducidade:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "«%s» engadiu unha nota a un ficheiro compartido con Vde.",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Vén de de compartir «%1$s» con %2$s. A compartición xa foi enviada ao destinatario. Por mor das directivas de seguranza definidas polo administrador de %3$s cada compartición necesita ser protexida por un contrasinal e non está permitido que Vde. envíe o contrasinal directamente ao destinatario. Daquela, necesita enviar manualmente o contrasinal ao destinatario.",
"Password to access »%1$s« shared by you with %2$s" : "Contrasinal para acceder a «%1$s» compartida por Vde. con %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuarios compartan unha ligazón personalizada ou un ficheiro ou cartafol enviándoo a un enderezo de correo."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuarios compartan unha ligazón personalizada ou un ficheiro ou cartafol enviándoo a un enderezo de correo.",
+ "%1$s shared %2$s with you." : "%1$s compartiu %2$s con Vde."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/it.js b/apps/sharebymail/l10n/it.js
index 2a0f28a56c1..6d96665f8ad 100644
--- a/apps/sharebymail/l10n/it.js
+++ b/apps/sharebymail/l10n/it.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Impossibile inviare la condivisione tramite e-mail. L'indirizzo email non è valido",
"Failed to send share by email" : "Invio non riuscito della condivisione tramite email",
"%1$s shared %2$s with you" : "%1$s condiviso %2$s con te",
- "%1$s shared %2$s with you." : "%1$s condiviso %2$s con te.",
"Note:" : "Nota:",
"This share is valid until %s at midnight" : "Questa condivisione è valida fino %s a mezzanotte",
"Expiration:" : "Scadenza:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "«%s» ha aggiunto una nota a un file condiviso con te",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Hai appena condiviso «%1$s» con %2$s. La condivisione è già stata inviata al destinatario. A causa dei criteri di sicurezza definiti dall'amministratore di %3$s, ogni condivisione deve essere protetta con password e non è consentito inviare la password direttamente al destinatario. Per questo motivo, devi inoltrare la password manualmente al destinatario.",
"Password to access »%1$s« shared by you with %2$s" : "Password per accedere a «%1$s» condivisa da te con %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Consente agli utenti di condividere un collegamento personalizzato a un file o a una cartella inserendo un indirizzo di posta elettronica."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Consente agli utenti di condividere un collegamento personalizzato a un file o a una cartella inserendo un indirizzo di posta elettronica.",
+ "%1$s shared %2$s with you." : "%1$s condiviso %2$s con te."
},
"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
diff --git a/apps/sharebymail/l10n/it.json b/apps/sharebymail/l10n/it.json
index d3895fc4a21..50b1fe5d981 100644
--- a/apps/sharebymail/l10n/it.json
+++ b/apps/sharebymail/l10n/it.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Impossibile inviare la condivisione tramite e-mail. L'indirizzo email non è valido",
"Failed to send share by email" : "Invio non riuscito della condivisione tramite email",
"%1$s shared %2$s with you" : "%1$s condiviso %2$s con te",
- "%1$s shared %2$s with you." : "%1$s condiviso %2$s con te.",
"Note:" : "Nota:",
"This share is valid until %s at midnight" : "Questa condivisione è valida fino %s a mezzanotte",
"Expiration:" : "Scadenza:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "«%s» ha aggiunto una nota a un file condiviso con te",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Hai appena condiviso «%1$s» con %2$s. La condivisione è già stata inviata al destinatario. A causa dei criteri di sicurezza definiti dall'amministratore di %3$s, ogni condivisione deve essere protetta con password e non è consentito inviare la password direttamente al destinatario. Per questo motivo, devi inoltrare la password manualmente al destinatario.",
"Password to access »%1$s« shared by you with %2$s" : "Password per accedere a «%1$s» condivisa da te con %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Consente agli utenti di condividere un collegamento personalizzato a un file o a una cartella inserendo un indirizzo di posta elettronica."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Consente agli utenti di condividere un collegamento personalizzato a un file o a una cartella inserendo un indirizzo di posta elettronica.",
+ "%1$s shared %2$s with you." : "%1$s condiviso %2$s con te."
},"pluralForm" :"nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/ja.js b/apps/sharebymail/l10n/ja.js
index 06f51be9698..2104c638717 100644
--- a/apps/sharebymail/l10n/ja.js
+++ b/apps/sharebymail/l10n/ja.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "共有メールの送信に失敗しました。無効なメールアドレスが入力されています",
"Failed to send share by email" : "メールで共有の送信に失敗しました",
"%1$s shared %2$s with you" : "%1$s は %2$s をあなたと共有しました",
- "%1$s shared %2$s with you." : "%1$s は %2$s をあなたと共有しました。",
"Note:" : "注意:",
"This share is valid until %s at midnight" : "この共有は%sの午前0時まで有効です。",
"Expiration:" : "期限切れ:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« あなたと共有しているファイルにノートを追加しました。 ",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "%1$sを%2$sと共有しました。共有は受信者に送信されています。セキュリティポリシーにより%3$sの管理者が共有はパスワードで保護されるべきで、直接受信者に送信するべきではないと定めている場合、手動で受信者にメールを転送する必要があります。",
"Password to access »%1$s« shared by you with %2$s" : "%2$s と共有した »%1$s« にアクセスするパスワード",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "ユーザーがメールアドレスを使ってファイルやフォルダーへの個人リンクを共有することを許可します。"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "ユーザーがメールアドレスを使ってファイルやフォルダーへの個人リンクを共有することを許可します。",
+ "%1$s shared %2$s with you." : "%1$s は %2$s をあなたと共有しました。"
},
"nplurals=1; plural=0;");
diff --git a/apps/sharebymail/l10n/ja.json b/apps/sharebymail/l10n/ja.json
index 79f6ffa2e1e..4f09d856b53 100644
--- a/apps/sharebymail/l10n/ja.json
+++ b/apps/sharebymail/l10n/ja.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "共有メールの送信に失敗しました。無効なメールアドレスが入力されています",
"Failed to send share by email" : "メールで共有の送信に失敗しました",
"%1$s shared %2$s with you" : "%1$s は %2$s をあなたと共有しました",
- "%1$s shared %2$s with you." : "%1$s は %2$s をあなたと共有しました。",
"Note:" : "注意:",
"This share is valid until %s at midnight" : "この共有は%sの午前0時まで有効です。",
"Expiration:" : "期限切れ:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« あなたと共有しているファイルにノートを追加しました。 ",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "%1$sを%2$sと共有しました。共有は受信者に送信されています。セキュリティポリシーにより%3$sの管理者が共有はパスワードで保護されるべきで、直接受信者に送信するべきではないと定めている場合、手動で受信者にメールを転送する必要があります。",
"Password to access »%1$s« shared by you with %2$s" : "%2$s と共有した »%1$s« にアクセスするパスワード",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "ユーザーがメールアドレスを使ってファイルやフォルダーへの個人リンクを共有することを許可します。"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "ユーザーがメールアドレスを使ってファイルやフォルダーへの個人リンクを共有することを許可します。",
+ "%1$s shared %2$s with you." : "%1$s は %2$s をあなたと共有しました。"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/nb.js b/apps/sharebymail/l10n/nb.js
index 0406a48ec34..052f697f733 100644
--- a/apps/sharebymail/l10n/nb.js
+++ b/apps/sharebymail/l10n/nb.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Kunne ikke sende deling via e-post. Fikk en ugyldig e-postadresse",
"Failed to send share by email" : "Delingen kunne ikke sendes med e-post",
"%1$s shared %2$s with you" : "%1$s delte %2$s med deg",
- "%1$s shared %2$s with you." : "%1$s delte %2$s med deg.",
"Note:" : "Merk:",
"This share is valid until %s at midnight" : "Denne delte ressursen er gyldig til %s ved midnatt",
"Expiration:" : "Utløp:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« la til en melding til en fil delt med deg",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Du har nettopp delt »%1$s« med %2$s. Delingen er allerede sendt til mottakeren. På grunn av sikkerhetsreglene som er definert av administratoren for %3$s, må hver delt passord beskyttes og det er ikke tillatt å sende passordet direkte til mottakeren. Derfor må du videresende passordet manuelt til mottakeren.",
"Password to access »%1$s« shared by you with %2$s" : "Passord for å få tilgang til »%1$s« delt av deg med %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillater brukere å dele en personalisert lenke til ei fil eller mappe ved å skrive inn en e-postadresse."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillater brukere å dele en personalisert lenke til ei fil eller mappe ved å skrive inn en e-postadresse.",
+ "%1$s shared %2$s with you." : "%1$s delte %2$s med deg."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/nb.json b/apps/sharebymail/l10n/nb.json
index 6c8ecdd9953..dfc6f3be17a 100644
--- a/apps/sharebymail/l10n/nb.json
+++ b/apps/sharebymail/l10n/nb.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Kunne ikke sende deling via e-post. Fikk en ugyldig e-postadresse",
"Failed to send share by email" : "Delingen kunne ikke sendes med e-post",
"%1$s shared %2$s with you" : "%1$s delte %2$s med deg",
- "%1$s shared %2$s with you." : "%1$s delte %2$s med deg.",
"Note:" : "Merk:",
"This share is valid until %s at midnight" : "Denne delte ressursen er gyldig til %s ved midnatt",
"Expiration:" : "Utløp:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« la til en melding til en fil delt med deg",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Du har nettopp delt »%1$s« med %2$s. Delingen er allerede sendt til mottakeren. På grunn av sikkerhetsreglene som er definert av administratoren for %3$s, må hver delt passord beskyttes og det er ikke tillatt å sende passordet direkte til mottakeren. Derfor må du videresende passordet manuelt til mottakeren.",
"Password to access »%1$s« shared by you with %2$s" : "Passord for å få tilgang til »%1$s« delt av deg med %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillater brukere å dele en personalisert lenke til ei fil eller mappe ved å skrive inn en e-postadresse."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillater brukere å dele en personalisert lenke til ei fil eller mappe ved å skrive inn en e-postadresse.",
+ "%1$s shared %2$s with you." : "%1$s delte %2$s med deg."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/pt_BR.js b/apps/sharebymail/l10n/pt_BR.js
index 452c0024c4d..654b891d265 100644
--- a/apps/sharebymail/l10n/pt_BR.js
+++ b/apps/sharebymail/l10n/pt_BR.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Compartilhamento por email falhou. Endereço de email inválido",
"Failed to send share by email" : "Falha ao enviar compartilhamento via e-mail",
"%1$s shared %2$s with you" : "%1$s compartilhou %2$s com você",
- "%1$s shared %2$s with you." : "%1$s compartilhou %2$s com você.",
"Note:" : "Anotação:",
"This share is valid until %s at midnight" : "Esta partilha é válida até %s à meia-noite",
"Expiration:" : "Expiração:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« adicionou uma anotação num arquivo compartilhado com você",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Você compartilhou »%1$s« com %2$s. O compartilhamento já foi enviado para o destinatário. Devido às políticas de segurança definidas pelo administrador de %3$scada compartilhamento precisa ser protegido por senha e não é permitido enviá-la diretamente ao destinatário. Portanto, você precisa encaminhar a senha manualmente. ",
"Password to access »%1$s« shared by you with %2$s" : "A senha para acessar »%1$s« compartilhada por você com %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuários compartilhem um link personalizado para um arquivo ou pasta, inserindo um endereço de e-mail."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuários compartilhem um link personalizado para um arquivo ou pasta, inserindo um endereço de e-mail.",
+ "%1$s shared %2$s with you." : "%1$s compartilhou %2$s com você."
},
"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;");
diff --git a/apps/sharebymail/l10n/pt_BR.json b/apps/sharebymail/l10n/pt_BR.json
index 1ebcc081afa..1ffc404ad75 100644
--- a/apps/sharebymail/l10n/pt_BR.json
+++ b/apps/sharebymail/l10n/pt_BR.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Compartilhamento por email falhou. Endereço de email inválido",
"Failed to send share by email" : "Falha ao enviar compartilhamento via e-mail",
"%1$s shared %2$s with you" : "%1$s compartilhou %2$s com você",
- "%1$s shared %2$s with you." : "%1$s compartilhou %2$s com você.",
"Note:" : "Anotação:",
"This share is valid until %s at midnight" : "Esta partilha é válida até %s à meia-noite",
"Expiration:" : "Expiração:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« adicionou uma anotação num arquivo compartilhado com você",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Você compartilhou »%1$s« com %2$s. O compartilhamento já foi enviado para o destinatário. Devido às políticas de segurança definidas pelo administrador de %3$scada compartilhamento precisa ser protegido por senha e não é permitido enviá-la diretamente ao destinatário. Portanto, você precisa encaminhar a senha manualmente. ",
"Password to access »%1$s« shared by you with %2$s" : "A senha para acessar »%1$s« compartilhada por você com %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuários compartilhem um link personalizado para um arquivo ou pasta, inserindo um endereço de e-mail."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Permite que os usuários compartilhem um link personalizado para um arquivo ou pasta, inserindo um endereço de e-mail.",
+ "%1$s shared %2$s with you." : "%1$s compartilhou %2$s com você."
},"pluralForm" :"nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/ru.js b/apps/sharebymail/l10n/ru.js
index d65208cd314..e856d48657e 100644
--- a/apps/sharebymail/l10n/ru.js
+++ b/apps/sharebymail/l10n/ru.js
@@ -20,7 +20,9 @@ OC.L10N.register(
"Failed to send share by email" : "Не удалось предоставить общий доступ по адресу электронной почты",
"Note:" : "Примечание:",
"Click the button below to open it." : "Для открытия нажмите на кнопку, расположенную ниже.",
+ "Open %s" : "Открыть %s",
"%1$s via %2$s" : "%1$s через %2$s",
+ "Password to access %s" : "Пароль для доступа к %s",
"It is protected with the following password:" : "Доступ защищён следующим паролем: ",
"This password will expire at %s" : "Срок действия этого пароля завершится %s",
"This is the password:" : "Пароль: ",
diff --git a/apps/sharebymail/l10n/ru.json b/apps/sharebymail/l10n/ru.json
index 503edfbd65e..d79ad761d0c 100644
--- a/apps/sharebymail/l10n/ru.json
+++ b/apps/sharebymail/l10n/ru.json
@@ -18,7 +18,9 @@
"Failed to send share by email" : "Не удалось предоставить общий доступ по адресу электронной почты",
"Note:" : "Примечание:",
"Click the button below to open it." : "Для открытия нажмите на кнопку, расположенную ниже.",
+ "Open %s" : "Открыть %s",
"%1$s via %2$s" : "%1$s через %2$s",
+ "Password to access %s" : "Пароль для доступа к %s",
"It is protected with the following password:" : "Доступ защищён следующим паролем: ",
"This password will expire at %s" : "Срок действия этого пароля завершится %s",
"This is the password:" : "Пароль: ",
diff --git a/apps/sharebymail/l10n/sk.js b/apps/sharebymail/l10n/sk.js
index 62b9f3ba7d1..eef15335103 100644
--- a/apps/sharebymail/l10n/sk.js
+++ b/apps/sharebymail/l10n/sk.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Odoslanie zdieľania e-mailom zlyhalo. Máte neplatnú e-mailovú adresu",
"Failed to send share by email" : "Zaslanie sprístupnenia cez e-mail zlyhalo",
"%1$s shared %2$s with you" : "%1$s s vami zdieľal %2$s ",
- "%1$s shared %2$s with you." : "%1$s s vami zdieľal %2$s.",
"Note:" : "Poznámka:",
"This share is valid until %s at midnight" : "Toto zdieľanie je platné do %s po polnoci",
"Expiration:" : "Expirácia:",
@@ -50,6 +49,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« pridal poznámku k súboru ktorý s Vami zdieľa",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Práve ste zdieľali „%1$s“ s %2$s. Zdieľanie už bolo odoslané príjemcovi. Z dôvodu bezpečnostných pravidiel definovaných správcom %3$s musí byť každá zdieľaná položka chránená heslom, ktoré nemôže byť priamo poslané príjemcovi. Preto musíte heslo poslať príjemcovi ručne.",
"Password to access »%1$s« shared by you with %2$s" : "Heslo pre prístup k „%1$s“, ktoré zdieľate s %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Povoľuje používateľom zdieľať personalizovaný odkaz na súbor alebo priečinok zadaním e-mailovej adresy."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Povoľuje používateľom zdieľať personalizovaný odkaz na súbor alebo priečinok zadaním e-mailovej adresy.",
+ "%1$s shared %2$s with you." : "%1$s s vami zdieľal %2$s."
},
"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);");
diff --git a/apps/sharebymail/l10n/sk.json b/apps/sharebymail/l10n/sk.json
index 1648ce4d3fd..a4aa2663c8f 100644
--- a/apps/sharebymail/l10n/sk.json
+++ b/apps/sharebymail/l10n/sk.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Odoslanie zdieľania e-mailom zlyhalo. Máte neplatnú e-mailovú adresu",
"Failed to send share by email" : "Zaslanie sprístupnenia cez e-mail zlyhalo",
"%1$s shared %2$s with you" : "%1$s s vami zdieľal %2$s ",
- "%1$s shared %2$s with you." : "%1$s s vami zdieľal %2$s.",
"Note:" : "Poznámka:",
"This share is valid until %s at midnight" : "Toto zdieľanie je platné do %s po polnoci",
"Expiration:" : "Expirácia:",
@@ -48,6 +47,7 @@
"»%s« added a note to a file shared with you" : "»%s« pridal poznámku k súboru ktorý s Vami zdieľa",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Práve ste zdieľali „%1$s“ s %2$s. Zdieľanie už bolo odoslané príjemcovi. Z dôvodu bezpečnostných pravidiel definovaných správcom %3$s musí byť každá zdieľaná položka chránená heslom, ktoré nemôže byť priamo poslané príjemcovi. Preto musíte heslo poslať príjemcovi ručne.",
"Password to access »%1$s« shared by you with %2$s" : "Heslo pre prístup k „%1$s“, ktoré zdieľate s %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Povoľuje používateľom zdieľať personalizovaný odkaz na súbor alebo priečinok zadaním e-mailovej adresy."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Povoľuje používateľom zdieľať personalizovaný odkaz na súbor alebo priečinok zadaním e-mailovej adresy.",
+ "%1$s shared %2$s with you." : "%1$s s vami zdieľal %2$s."
},"pluralForm" :"nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/sr.js b/apps/sharebymail/l10n/sr.js
index bfc9600a0bc..06a524d066d 100644
--- a/apps/sharebymail/l10n/sr.js
+++ b/apps/sharebymail/l10n/sr.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Слање дељења и-мејлом није успело. Добијена је неисправна и-мејл адреса",
"Failed to send share by email" : "Грешка у слању дељења е-поштом",
"%1$s shared %2$s with you" : "%1$s је поделио „%2$s” са вама",
- "%1$s shared %2$s with you." : "%1$s је поделио „%2$s” са вама",
"Note:" : "Белешка:",
"This share is valid until %s at midnight" : "Ово дељење важи до %s у поноћ",
"Expiration:" : "Истек:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "„%s“ је додао белешку на фајл који дели са Вама",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Управо сте поделили „%1$s“ са корисником %2$s. Дељење је већ послато примаоцу. Због безбедоносне политике коју је дефинисао администратор инстанце %3$s, свако дељење мора бити заштићено лозинком и није дозвољено да пошаљете лозинку директно кориснику. Због тога морате ручно послати лозинку примаоцу.",
"Password to access »%1$s« shared by you with %2$s" : "Корисник %2$s је поделио са Вама лозинку за приступ „%1$s“",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Дозволи корисницима да поделе персонализовану везу до фајла или фасцикле уносом е-адресе."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Дозволи корисницима да поделе персонализовану везу до фајла или фасцикле уносом е-адресе.",
+ "%1$s shared %2$s with you." : "%1$s је поделио „%2$s” са вама"
},
"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);");
diff --git a/apps/sharebymail/l10n/sr.json b/apps/sharebymail/l10n/sr.json
index 52a7d12efc5..2a9035fcc11 100644
--- a/apps/sharebymail/l10n/sr.json
+++ b/apps/sharebymail/l10n/sr.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Слање дељења и-мејлом није успело. Добијена је неисправна и-мејл адреса",
"Failed to send share by email" : "Грешка у слању дељења е-поштом",
"%1$s shared %2$s with you" : "%1$s је поделио „%2$s” са вама",
- "%1$s shared %2$s with you." : "%1$s је поделио „%2$s” са вама",
"Note:" : "Белешка:",
"This share is valid until %s at midnight" : "Ово дељење важи до %s у поноћ",
"Expiration:" : "Истек:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "„%s“ је додао белешку на фајл који дели са Вама",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Управо сте поделили „%1$s“ са корисником %2$s. Дељење је већ послато примаоцу. Због безбедоносне политике коју је дефинисао администратор инстанце %3$s, свако дељење мора бити заштићено лозинком и није дозвољено да пошаљете лозинку директно кориснику. Због тога морате ручно послати лозинку примаоцу.",
"Password to access »%1$s« shared by you with %2$s" : "Корисник %2$s је поделио са Вама лозинку за приступ „%1$s“",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Дозволи корисницима да поделе персонализовану везу до фајла или фасцикле уносом е-адресе."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Дозволи корисницима да поделе персонализовану везу до фајла или фасцикле уносом е-адресе.",
+ "%1$s shared %2$s with you." : "%1$s је поделио „%2$s” са вама"
},"pluralForm" :"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/sv.js b/apps/sharebymail/l10n/sv.js
index 0df77a5bf9c..11be8f9cefe 100644
--- a/apps/sharebymail/l10n/sv.js
+++ b/apps/sharebymail/l10n/sv.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Misslyckades att skicka delning via mejl. Ogiltig mejladress",
"Failed to send share by email" : "Det gick inte att skicka delning via e-post",
"%1$s shared %2$s with you" : "%1$s delade %2$s med dig",
- "%1$s shared %2$s with you." : "%1$s delade %2$s med dig.",
"Note:" : "Notering:",
"This share is valid until %s at midnight" : "Denna delning gäller t.o.m %s vid midnatt",
"Expiration:" : "Upphör:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« la till en kommentar till en fil delad med dig",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Du delade precis »%1$s« med %2$s. Delningen var redan skickat till mottagaren. På grund av den definierade säkerhetspolicyn av %3$s så måste varje delning vara lösenordsskyddad, och det är inte tillåtet att skicka lösenordet direkt till mottagaren. Du behöver därför vidarebefordra lösenordet manuellt till mottagaren.",
"Password to access »%1$s« shared by you with %2$s" : "Lösenord för åtkomst till »%1$s« delad av dig med %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillåt användare att dela en personlig länk till en fil eller mapp genom att ange en e-postadress"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillåt användare att dela en personlig länk till en fil eller mapp genom att ange en e-postadress",
+ "%1$s shared %2$s with you." : "%1$s delade %2$s med dig."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/sv.json b/apps/sharebymail/l10n/sv.json
index de6f18b55f7..a7b51a5f691 100644
--- a/apps/sharebymail/l10n/sv.json
+++ b/apps/sharebymail/l10n/sv.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Misslyckades att skicka delning via mejl. Ogiltig mejladress",
"Failed to send share by email" : "Det gick inte att skicka delning via e-post",
"%1$s shared %2$s with you" : "%1$s delade %2$s med dig",
- "%1$s shared %2$s with you." : "%1$s delade %2$s med dig.",
"Note:" : "Notering:",
"This share is valid until %s at midnight" : "Denna delning gäller t.o.m %s vid midnatt",
"Expiration:" : "Upphör:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« la till en kommentar till en fil delad med dig",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "Du delade precis »%1$s« med %2$s. Delningen var redan skickat till mottagaren. På grund av den definierade säkerhetspolicyn av %3$s så måste varje delning vara lösenordsskyddad, och det är inte tillåtet att skicka lösenordet direkt till mottagaren. Du behöver därför vidarebefordra lösenordet manuellt till mottagaren.",
"Password to access »%1$s« shared by you with %2$s" : "Lösenord för åtkomst till »%1$s« delad av dig med %2$s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillåt användare att dela en personlig länk till en fil eller mapp genom att ange en e-postadress"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Tillåt användare att dela en personlig länk till en fil eller mapp genom att ange en e-postadress",
+ "%1$s shared %2$s with you." : "%1$s delade %2$s med dig."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/tr.js b/apps/sharebymail/l10n/tr.js
index e8544ddad2e..96788119620 100644
--- a/apps/sharebymail/l10n/tr.js
+++ b/apps/sharebymail/l10n/tr.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "Paylaşım e-posta ile gönderilemedi. Bir e-posta adresi geçersiz",
"Failed to send share by email" : "Paylaşım e-postası gönderilemedi",
"%1$s shared %2$s with you" : "%1$s, sizinle %2$s ögesini paylaştı",
- "%1$s shared %2$s with you." : "%1$s, sizinle %2$s ögesini paylaştı.",
"Note:" : "Not:",
"This share is valid until %s at midnight" : "Bu paylaşım %s gece yarısına kadar kullanılabilir",
"Expiration:" : "Geçerlilik süresi sonu:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« sizinle paylaştığı bir dosyaya bir not ekledi",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "»%1$s« ögesini %2$s ile paylaştınız. Paylaşım alıcıya gönderildi. %3$s yöneticisi tarafından belirlenmiş güvenlik ilkelerine göre her bir paylaşım için bir parola belirtilmesi ve bu parolanın alıcıya doğrudan gönderilmemesi gerekiyor. Bu nedenle parolayı alıcıya el ile siz iletmelisiniz.",
"Password to access »%1$s« shared by you with %2$s" : "»%1$s« için %2$s üzerinden paylaştığınız erişim parolası",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Kullanıcıların bir e-posta adresi yazarak bir dosya ya da klasör için kişisel bir bağlantı paylaşmasını sağlar."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Kullanıcıların bir e-posta adresi yazarak bir dosya ya da klasör için kişisel bir bağlantı paylaşmasını sağlar.",
+ "%1$s shared %2$s with you." : "%1$s, sizinle %2$s ögesini paylaştı."
},
"nplurals=2; plural=(n > 1);");
diff --git a/apps/sharebymail/l10n/tr.json b/apps/sharebymail/l10n/tr.json
index a9da33b6200..7bf360ce042 100644
--- a/apps/sharebymail/l10n/tr.json
+++ b/apps/sharebymail/l10n/tr.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "Paylaşım e-posta ile gönderilemedi. Bir e-posta adresi geçersiz",
"Failed to send share by email" : "Paylaşım e-postası gönderilemedi",
"%1$s shared %2$s with you" : "%1$s, sizinle %2$s ögesini paylaştı",
- "%1$s shared %2$s with you." : "%1$s, sizinle %2$s ögesini paylaştı.",
"Note:" : "Not:",
"This share is valid until %s at midnight" : "Bu paylaşım %s gece yarısına kadar kullanılabilir",
"Expiration:" : "Geçerlilik süresi sonu:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« sizinle paylaştığı bir dosyaya bir not ekledi",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "»%1$s« ögesini %2$s ile paylaştınız. Paylaşım alıcıya gönderildi. %3$s yöneticisi tarafından belirlenmiş güvenlik ilkelerine göre her bir paylaşım için bir parola belirtilmesi ve bu parolanın alıcıya doğrudan gönderilmemesi gerekiyor. Bu nedenle parolayı alıcıya el ile siz iletmelisiniz.",
"Password to access »%1$s« shared by you with %2$s" : "»%1$s« için %2$s üzerinden paylaştığınız erişim parolası",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "Kullanıcıların bir e-posta adresi yazarak bir dosya ya da klasör için kişisel bir bağlantı paylaşmasını sağlar."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "Kullanıcıların bir e-posta adresi yazarak bir dosya ya da klasör için kişisel bir bağlantı paylaşmasını sağlar.",
+ "%1$s shared %2$s with you." : "%1$s, sizinle %2$s ögesini paylaştı."
},"pluralForm" :"nplurals=2; plural=(n > 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/ug.js b/apps/sharebymail/l10n/ug.js
index 4e92667cd4b..d8d4fa5be5e 100644
--- a/apps/sharebymail/l10n/ug.js
+++ b/apps/sharebymail/l10n/ug.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "ئېلېكترونلۇق خەت ئارقىلىق ھەمبەھىرلەش مەغلۇپ بولدى. ئىناۋەتسىز ئېلېكترونلۇق خەت ئادرېسىغا ئېرىشتى",
"Failed to send share by email" : "ئېلېكترونلۇق خەت ئارقىلىق ھەمبەھىرلەش مەغلۇپ بولدى",
"%1$s shared %2$s with you" : "% 1 $ s سىز بىلەن% 2 $ s ئورتاقلاشتى",
- "%1$s shared %2$s with you." : "% 1 $ s سىز بىلەن% 2 $ s ئورتاقلاشتى.",
"Note:" : "ئەسكەرتىش:",
"This share is valid until %s at midnight" : "بۇ ئۈلۈش يېرىم كېچىدە% s گىچە كۈچكە ئىگە",
"Expiration:" : "ۋاقتى:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»% S« سىز بىلەن ئورتاقلاشقان ھۆججەتكە خاتىرە قوشتى",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "سىز پەقەت% 2 $ s بىلەن ئورتاقلاشتىڭىز. بۇ ئۈلۈش ئاللىبۇرۇن تاپشۇرۇۋالغۇچىغا ئەۋەتىلگەن. باشقۇرغۇچى تەرىپىدىن بېكىتىلگەن بىخەتەرلىك سىياسىتى سەۋەبىدىن% 3 $ s ھەر بىر پاينى مەخپىي نومۇر بىلەن قوغداش كېرەك ، پارولنى تاپشۇرۇۋالغۇچىغا بىۋاسىتە ئەۋەتىشكە بولمايدۇ. شۇڭلاشقا پارولنى تاپشۇرۇۋالغۇچىغا قولدا يوللىشىڭىز كېرەك.",
"Password to access »%1$s« shared by you with %2$s" : "زىيارەت قىلىش پارولى »% 1 $ s« سىز بىلەن ئورتاقلاشقان% 2 $ s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "ئىشلەتكۈچىلەرنىڭ ئېلېكترونلۇق خەت ئادرېسى ئارقىلىق ھۆججەت ياكى ھۆججەت قىسقۇچقا خاسلاشتۇرۇلغان ئۇلىنىشنى ھەمبەھىرلىشىگە يول قويىدۇ."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "ئىشلەتكۈچىلەرنىڭ ئېلېكترونلۇق خەت ئادرېسى ئارقىلىق ھۆججەت ياكى ھۆججەت قىسقۇچقا خاسلاشتۇرۇلغان ئۇلىنىشنى ھەمبەھىرلىشىگە يول قويىدۇ.",
+ "%1$s shared %2$s with you." : "% 1 $ s سىز بىلەن% 2 $ s ئورتاقلاشتى."
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/sharebymail/l10n/ug.json b/apps/sharebymail/l10n/ug.json
index e87ee9b3b50..6e097de64ae 100644
--- a/apps/sharebymail/l10n/ug.json
+++ b/apps/sharebymail/l10n/ug.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "ئېلېكترونلۇق خەت ئارقىلىق ھەمبەھىرلەش مەغلۇپ بولدى. ئىناۋەتسىز ئېلېكترونلۇق خەت ئادرېسىغا ئېرىشتى",
"Failed to send share by email" : "ئېلېكترونلۇق خەت ئارقىلىق ھەمبەھىرلەش مەغلۇپ بولدى",
"%1$s shared %2$s with you" : "% 1 $ s سىز بىلەن% 2 $ s ئورتاقلاشتى",
- "%1$s shared %2$s with you." : "% 1 $ s سىز بىلەن% 2 $ s ئورتاقلاشتى.",
"Note:" : "ئەسكەرتىش:",
"This share is valid until %s at midnight" : "بۇ ئۈلۈش يېرىم كېچىدە% s گىچە كۈچكە ئىگە",
"Expiration:" : "ۋاقتى:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»% S« سىز بىلەن ئورتاقلاشقان ھۆججەتكە خاتىرە قوشتى",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "سىز پەقەت% 2 $ s بىلەن ئورتاقلاشتىڭىز. بۇ ئۈلۈش ئاللىبۇرۇن تاپشۇرۇۋالغۇچىغا ئەۋەتىلگەن. باشقۇرغۇچى تەرىپىدىن بېكىتىلگەن بىخەتەرلىك سىياسىتى سەۋەبىدىن% 3 $ s ھەر بىر پاينى مەخپىي نومۇر بىلەن قوغداش كېرەك ، پارولنى تاپشۇرۇۋالغۇچىغا بىۋاسىتە ئەۋەتىشكە بولمايدۇ. شۇڭلاشقا پارولنى تاپشۇرۇۋالغۇچىغا قولدا يوللىشىڭىز كېرەك.",
"Password to access »%1$s« shared by you with %2$s" : "زىيارەت قىلىش پارولى »% 1 $ s« سىز بىلەن ئورتاقلاشقان% 2 $ s",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "ئىشلەتكۈچىلەرنىڭ ئېلېكترونلۇق خەت ئادرېسى ئارقىلىق ھۆججەت ياكى ھۆججەت قىسقۇچقا خاسلاشتۇرۇلغان ئۇلىنىشنى ھەمبەھىرلىشىگە يول قويىدۇ."
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "ئىشلەتكۈچىلەرنىڭ ئېلېكترونلۇق خەت ئادرېسى ئارقىلىق ھۆججەت ياكى ھۆججەت قىسقۇچقا خاسلاشتۇرۇلغان ئۇلىنىشنى ھەمبەھىرلىشىگە يول قويىدۇ.",
+ "%1$s shared %2$s with you." : "% 1 $ s سىز بىلەن% 2 $ s ئورتاقلاشتى."
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/zh_HK.js b/apps/sharebymail/l10n/zh_HK.js
index f2c978d7c78..70d312be2ea 100644
--- a/apps/sharebymail/l10n/zh_HK.js
+++ b/apps/sharebymail/l10n/zh_HK.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "透過電子郵件傳送分享失敗。收到無效的電郵地址",
"Failed to send share by email" : "通過電郵發送分享失敗",
"%1$s shared %2$s with you" : "%1$s 與您分享了 %2$s",
- "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。",
"Note:" : "備註:",
"This share is valid until %s at midnight" : "此分享有效期限至 %s 午夜",
"Expiration:" : "過期於:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "»%s« 在與您分享的檔案中添加了備註",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "您剛剛與 %2$s 分享了 »%1$s«。此共享已發送給收件人。根據管理員定義的安全策略 %3$s,每個共享都需要受密碼保護,並且不允許直接向收件人發送密碼。因此,您需要將密碼手動轉發給收件人。",
"Password to access »%1$s« shared by you with %2$s" : "您與 %2$s 分享了存取 »%1$s« 的密碼",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "使用戶可以通過輸入電郵地址來分享指向檔案或資料夾的個性化連結。"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "使用戶可以通過輸入電郵地址來分享指向檔案或資料夾的個性化連結。",
+ "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。"
},
"nplurals=1; plural=0;");
diff --git a/apps/sharebymail/l10n/zh_HK.json b/apps/sharebymail/l10n/zh_HK.json
index a6df93a49b5..1c39157a1a2 100644
--- a/apps/sharebymail/l10n/zh_HK.json
+++ b/apps/sharebymail/l10n/zh_HK.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "透過電子郵件傳送分享失敗。收到無效的電郵地址",
"Failed to send share by email" : "通過電郵發送分享失敗",
"%1$s shared %2$s with you" : "%1$s 與您分享了 %2$s",
- "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。",
"Note:" : "備註:",
"This share is valid until %s at midnight" : "此分享有效期限至 %s 午夜",
"Expiration:" : "過期於:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "»%s« 在與您分享的檔案中添加了備註",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "您剛剛與 %2$s 分享了 »%1$s«。此共享已發送給收件人。根據管理員定義的安全策略 %3$s,每個共享都需要受密碼保護,並且不允許直接向收件人發送密碼。因此,您需要將密碼手動轉發給收件人。",
"Password to access »%1$s« shared by you with %2$s" : "您與 %2$s 分享了存取 »%1$s« 的密碼",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "使用戶可以通過輸入電郵地址來分享指向檔案或資料夾的個性化連結。"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "使用戶可以通過輸入電郵地址來分享指向檔案或資料夾的個性化連結。",
+ "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/apps/sharebymail/l10n/zh_TW.js b/apps/sharebymail/l10n/zh_TW.js
index 6819ec4bf76..79d42a3f0d9 100644
--- a/apps/sharebymail/l10n/zh_TW.js
+++ b/apps/sharebymail/l10n/zh_TW.js
@@ -19,7 +19,6 @@ OC.L10N.register(
"Failed to send share by email. Got an invalid email address" : "經由電子郵件傳送分享失敗。收到無效的電子郵件地址",
"Failed to send share by email" : "經由電子郵件寄送分享失敗",
"%1$s shared %2$s with you" : "%1$s 與您分享了 %2$s",
- "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。",
"Note:" : "備註:",
"This share is valid until %s at midnight" : "此分享有效期限至 %s 午夜",
"Expiration:" : "過期於:",
@@ -58,6 +57,7 @@ OC.L10N.register(
"»%s« added a note to a file shared with you" : "「%s」在與您分享的檔案中加入了備註",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "您剛與 %2$s 分享了「%1$s」。分享已寄送給收件者。由於管理員定義的安全策略 %3$s,每個分享都需要使用密碼保護,且不允許將密碼直接傳送給收件者。因此,您必須手動將密碼轉寄給收件者。",
"Password to access »%1$s« shared by you with %2$s" : "您與 %2$s 分享了存取「%1$s」的密碼",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "允許使用者透過輸入電子郵件地址,來分享檔案或資料夾的個人化連結。"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "允許使用者透過輸入電子郵件地址,來分享檔案或資料夾的個人化連結。",
+ "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。"
},
"nplurals=1; plural=0;");
diff --git a/apps/sharebymail/l10n/zh_TW.json b/apps/sharebymail/l10n/zh_TW.json
index 6d263532bc4..d0071e7d8b0 100644
--- a/apps/sharebymail/l10n/zh_TW.json
+++ b/apps/sharebymail/l10n/zh_TW.json
@@ -17,7 +17,6 @@
"Failed to send share by email. Got an invalid email address" : "經由電子郵件傳送分享失敗。收到無效的電子郵件地址",
"Failed to send share by email" : "經由電子郵件寄送分享失敗",
"%1$s shared %2$s with you" : "%1$s 與您分享了 %2$s",
- "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。",
"Note:" : "備註:",
"This share is valid until %s at midnight" : "此分享有效期限至 %s 午夜",
"Expiration:" : "過期於:",
@@ -56,6 +55,7 @@
"»%s« added a note to a file shared with you" : "「%s」在與您分享的檔案中加入了備註",
"You just shared »%1$s« with %2$s. The share was already sent to the recipient. Due to the security policies defined by the administrator of %3$s each share needs to be protected by password and it is not allowed to send the password directly to the recipient. Therefore you need to forward the password manually to the recipient." : "您剛與 %2$s 分享了「%1$s」。分享已寄送給收件者。由於管理員定義的安全策略 %3$s,每個分享都需要使用密碼保護,且不允許將密碼直接傳送給收件者。因此,您必須手動將密碼轉寄給收件者。",
"Password to access »%1$s« shared by you with %2$s" : "您與 %2$s 分享了存取「%1$s」的密碼",
- "Allows users to share a personalized link to a file or folder by putting in an email address." : "允許使用者透過輸入電子郵件地址,來分享檔案或資料夾的個人化連結。"
+ "Allows users to share a personalized link to a file or folder by putting in an email address." : "允許使用者透過輸入電子郵件地址,來分享檔案或資料夾的個人化連結。",
+ "%1$s shared %2$s with you." : "%1$s 與您分享了 %2$s。"
},"pluralForm" :"nplurals=1; plural=0;"
} \ No newline at end of file
diff --git a/apps/sharebymail/lib/ShareByMailProvider.php b/apps/sharebymail/lib/ShareByMailProvider.php
index 9efc0ec2513..a9e6add2359 100644
--- a/apps/sharebymail/lib/ShareByMailProvider.php
+++ b/apps/sharebymail/lib/ShareByMailProvider.php
@@ -333,7 +333,6 @@ class ShareByMailProvider extends DefaultShareProvider implements IShareProvider
$emailTemplate->setSubject($this->l->t('%1$s shared %2$s with you', [$initiatorDisplayName, $filename]));
$emailTemplate->addHeader();
$emailTemplate->addHeading($this->l->t('%1$s shared %2$s with you', [$initiatorDisplayName, $filename]), false);
- $text = $this->l->t('%1$s shared %2$s with you.', [$initiatorDisplayName, $filename]);
if ($note !== '') {
$emailTemplate->addBodyListItem(
@@ -354,8 +353,7 @@ class ShareByMailProvider extends DefaultShareProvider implements IShareProvider
}
$emailTemplate->addBodyText(
- htmlspecialchars($text . ' ' . $this->l->t('Click the button below to open it.')),
- $text
+ $this->l->t('Click the button below to open it.')
);
$emailTemplate->addBodyButton(
diff --git a/apps/sharebymail/tests/ShareByMailProviderTest.php b/apps/sharebymail/tests/ShareByMailProviderTest.php
index 9f5434dbe5a..f7325fc248a 100644
--- a/apps/sharebymail/tests/ShareByMailProviderTest.php
+++ b/apps/sharebymail/tests/ShareByMailProviderTest.php
@@ -1292,10 +1292,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
- ->with(
- 'Mrs. Owner User shared file.txt with you. Click the button below to open it.',
- 'Mrs. Owner User shared file.txt with you.'
- );
+ ->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')
@@ -1405,7 +1402,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
- ->with('Mrs. Owner User shared file.txt with you. Click the button below to open it.', 'Mrs. Owner User shared file.txt with you.');
+ ->with('Click the button below to open it.');
$this->urlGenerator->expects($this->once())->method('imagePath')
->with('core', 'caldav/description.png')
@@ -1531,7 +1528,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
- ->with('Mrs. Owner User shared file.txt with you. Click the button below to open it.', 'Mrs. Owner User shared file.txt with you.');
+ ->with('Click the button below to open it.');
$expiration = new DateTime('2001-01-01');
$this->l->expects($this->once())
@@ -1663,10 +1660,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
- ->with(
- 'Mr. Initiator User shared file.txt with you. Click the button below to open it.',
- 'Mr. Initiator User shared file.txt with you.'
- );
+ ->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')
@@ -1767,10 +1761,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
- ->with(
- 'Mrs. Owner User shared file.txt with you. Click the button below to open it.',
- 'Mrs. Owner User shared file.txt with you.'
- );
+ ->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')
@@ -1875,10 +1866,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
- ->with(
- 'Mr. Initiator User shared file.txt with you. Click the button below to open it.',
- 'Mr. Initiator User shared file.txt with you.'
- );
+ ->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')
diff --git a/apps/systemtags/l10n/ru.js b/apps/systemtags/l10n/ru.js
index 15b71631d36..44e757fc1ff 100644
--- a/apps/systemtags/l10n/ru.js
+++ b/apps/systemtags/l10n/ru.js
@@ -66,7 +66,10 @@ OC.L10N.register(
"Deleted tag" : "Метка удалена",
"Failed to delete tag" : "Не удалось удалить тег",
"Manage tags" : "Управление метками",
+ "Search or create tag" : "Найти или создать тег",
+ "Create new tag" : "Создать новый тег",
"Cancel" : "Отмена",
+ "Apply changes" : "Применить изменения",
"Loading collaborative tags …" : "Загрузка совместных тегов ...",
"Search or create collaborative tags" : "Поиск или создание совместных тегов",
"No tags to select, type to create a new tag" : "Нет тегов для выбора. Введите что-нибудь для создания нового тега",
diff --git a/apps/systemtags/l10n/ru.json b/apps/systemtags/l10n/ru.json
index be364a2c833..8832dd035c7 100644
--- a/apps/systemtags/l10n/ru.json
+++ b/apps/systemtags/l10n/ru.json
@@ -64,7 +64,10 @@
"Deleted tag" : "Метка удалена",
"Failed to delete tag" : "Не удалось удалить тег",
"Manage tags" : "Управление метками",
+ "Search or create tag" : "Найти или создать тег",
+ "Create new tag" : "Создать новый тег",
"Cancel" : "Отмена",
+ "Apply changes" : "Применить изменения",
"Loading collaborative tags …" : "Загрузка совместных тегов ...",
"Search or create collaborative tags" : "Поиск или создание совместных тегов",
"No tags to select, type to create a new tag" : "Нет тегов для выбора. Введите что-нибудь для создания нового тега",