aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorAchim Königs <garfonso@mobo.info>2016-03-26 14:27:38 +0100
committerAchim Königs <garfonso@mobo.info>2016-03-26 14:27:38 +0100
commit596a8416c2c36449c7b9842e95ea05720c88fca3 (patch)
tree4de43af057270ce30cd601015fee752f22bfbaa3 /apps
parent4b2f9e40275826c36bc1b225f321274f3b3bc2f1 (diff)
parent3e33b686b18b9e698ed16bf4466666357be0c407 (diff)
downloadnextcloud-server-596a8416c2c36449c7b9842e95ea05720c88fca3.tar.gz
nextcloud-server-596a8416c2c36449c7b9842e95ea05720c88fca3.zip
Merge branch 'master' into alarms_for_birthdayevents
Diffstat (limited to 'apps')
-rw-r--r--apps/comments/l10n/cs_CZ.js2
-rw-r--r--apps/comments/l10n/cs_CZ.json2
-rw-r--r--apps/comments/l10n/de.js2
-rw-r--r--apps/comments/l10n/de.json2
-rw-r--r--apps/comments/l10n/de_DE.js1
-rw-r--r--apps/comments/l10n/de_DE.json1
-rw-r--r--apps/comments/l10n/fi_FI.js2
-rw-r--r--apps/comments/l10n/fi_FI.json2
-rw-r--r--apps/comments/l10n/fr.js2
-rw-r--r--apps/comments/l10n/fr.json2
-rw-r--r--apps/comments/l10n/he.js2
-rw-r--r--apps/comments/l10n/he.json2
-rw-r--r--apps/comments/l10n/is.js2
-rw-r--r--apps/comments/l10n/is.json2
-rw-r--r--apps/comments/l10n/it.js2
-rw-r--r--apps/comments/l10n/it.json2
-rw-r--r--apps/comments/l10n/pt_PT.js2
-rw-r--r--apps/comments/l10n/pt_PT.json2
-rw-r--r--apps/comments/l10n/ru.js2
-rw-r--r--apps/comments/l10n/ru.json2
-rw-r--r--apps/comments/l10n/sq.js2
-rw-r--r--apps/comments/l10n/sq.json2
-rw-r--r--apps/dav/appinfo/v1/caldav.php2
-rw-r--r--apps/dav/lib/caldav/caldavbackend.php5
-rw-r--r--apps/dav/lib/caldav/calendar.php40
-rw-r--r--apps/dav/lib/carddav/addressbook.php55
-rw-r--r--apps/dav/lib/carddav/card.php45
-rw-r--r--apps/dav/lib/carddav/carddavbackend.php8
-rw-r--r--apps/dav/lib/connector/legacydavacl.php15
-rw-r--r--apps/dav/lib/connector/sabre/auth.php82
-rw-r--r--apps/dav/lib/connector/sabre/principal.php5
-rw-r--r--apps/dav/lib/connector/sabre/sharesplugin.php3
-rw-r--r--apps/dav/tests/unit/caldav/calendartest.php60
-rw-r--r--apps/dav/tests/unit/carddav/addressbooktest.php65
-rw-r--r--apps/dav/tests/unit/connector/sabre/auth.php193
-rw-r--r--apps/dav/tests/unit/connector/sabre/sharesplugin.php2
-rw-r--r--apps/encryption/l10n/de_DE.js1
-rw-r--r--apps/encryption/l10n/de_DE.json1
-rw-r--r--apps/encryption/l10n/zh_TW.js2
-rw-r--r--apps/encryption/l10n/zh_TW.json2
-rw-r--r--apps/federation/l10n/el.js4
-rw-r--r--apps/federation/l10n/el.json4
-rw-r--r--apps/federation/l10n/is.js5
-rw-r--r--apps/federation/l10n/is.json5
-rw-r--r--apps/files/controller/apicontroller.php3
-rw-r--r--apps/files/css/files.css20
-rw-r--r--apps/files/js/filelist.js3
-rw-r--r--apps/files/l10n/ar.js1
-rw-r--r--apps/files/l10n/ar.json1
-rw-r--r--apps/files/l10n/ast.js1
-rw-r--r--apps/files/l10n/ast.json1
-rw-r--r--apps/files/l10n/az.js1
-rw-r--r--apps/files/l10n/az.json1
-rw-r--r--apps/files/l10n/bg_BG.js1
-rw-r--r--apps/files/l10n/bg_BG.json1
-rw-r--r--apps/files/l10n/bs.js1
-rw-r--r--apps/files/l10n/bs.json1
-rw-r--r--apps/files/l10n/ca.js1
-rw-r--r--apps/files/l10n/ca.json1
-rw-r--r--apps/files/l10n/cs_CZ.js2
-rw-r--r--apps/files/l10n/cs_CZ.json2
-rw-r--r--apps/files/l10n/da.js1
-rw-r--r--apps/files/l10n/da.json1
-rw-r--r--apps/files/l10n/de.js1
-rw-r--r--apps/files/l10n/de.json1
-rw-r--r--apps/files/l10n/de_DE.js1
-rw-r--r--apps/files/l10n/de_DE.json1
-rw-r--r--apps/files/l10n/el.js1
-rw-r--r--apps/files/l10n/el.json1
-rw-r--r--apps/files/l10n/en_GB.js1
-rw-r--r--apps/files/l10n/en_GB.json1
-rw-r--r--apps/files/l10n/eo.js1
-rw-r--r--apps/files/l10n/eo.json1
-rw-r--r--apps/files/l10n/es.js1
-rw-r--r--apps/files/l10n/es.json1
-rw-r--r--apps/files/l10n/es_AR.js1
-rw-r--r--apps/files/l10n/es_AR.json1
-rw-r--r--apps/files/l10n/es_MX.js1
-rw-r--r--apps/files/l10n/es_MX.json1
-rw-r--r--apps/files/l10n/et_EE.js1
-rw-r--r--apps/files/l10n/et_EE.json1
-rw-r--r--apps/files/l10n/eu.js1
-rw-r--r--apps/files/l10n/eu.json1
-rw-r--r--apps/files/l10n/fa.js1
-rw-r--r--apps/files/l10n/fa.json1
-rw-r--r--apps/files/l10n/fi_FI.js2
-rw-r--r--apps/files/l10n/fi_FI.json2
-rw-r--r--apps/files/l10n/fr.js2
-rw-r--r--apps/files/l10n/fr.json2
-rw-r--r--apps/files/l10n/gl.js1
-rw-r--r--apps/files/l10n/gl.json1
-rw-r--r--apps/files/l10n/he.js2
-rw-r--r--apps/files/l10n/he.json2
-rw-r--r--apps/files/l10n/hr.js1
-rw-r--r--apps/files/l10n/hr.json1
-rw-r--r--apps/files/l10n/hu_HU.js1
-rw-r--r--apps/files/l10n/hu_HU.json1
-rw-r--r--apps/files/l10n/id.js1
-rw-r--r--apps/files/l10n/id.json1
-rw-r--r--apps/files/l10n/is.js2
-rw-r--r--apps/files/l10n/is.json2
-rw-r--r--apps/files/l10n/it.js2
-rw-r--r--apps/files/l10n/it.json2
-rw-r--r--apps/files/l10n/ja.js1
-rw-r--r--apps/files/l10n/ja.json1
-rw-r--r--apps/files/l10n/ko.js1
-rw-r--r--apps/files/l10n/ko.json1
-rw-r--r--apps/files/l10n/lt_LT.js1
-rw-r--r--apps/files/l10n/lt_LT.json1
-rw-r--r--apps/files/l10n/lv.js1
-rw-r--r--apps/files/l10n/lv.json1
-rw-r--r--apps/files/l10n/nb_NO.js1
-rw-r--r--apps/files/l10n/nb_NO.json1
-rw-r--r--apps/files/l10n/nl.js1
-rw-r--r--apps/files/l10n/nl.json1
-rw-r--r--apps/files/l10n/oc.js1
-rw-r--r--apps/files/l10n/oc.json1
-rw-r--r--apps/files/l10n/pl.js1
-rw-r--r--apps/files/l10n/pl.json1
-rw-r--r--apps/files/l10n/pt_BR.js1
-rw-r--r--apps/files/l10n/pt_BR.json1
-rw-r--r--apps/files/l10n/pt_PT.js2
-rw-r--r--apps/files/l10n/pt_PT.json2
-rw-r--r--apps/files/l10n/ro.js1
-rw-r--r--apps/files/l10n/ro.json1
-rw-r--r--apps/files/l10n/ru.js2
-rw-r--r--apps/files/l10n/ru.json2
-rw-r--r--apps/files/l10n/sk_SK.js1
-rw-r--r--apps/files/l10n/sk_SK.json1
-rw-r--r--apps/files/l10n/sl.js1
-rw-r--r--apps/files/l10n/sl.json1
-rw-r--r--apps/files/l10n/sq.js2
-rw-r--r--apps/files/l10n/sq.json2
-rw-r--r--apps/files/l10n/sr.js1
-rw-r--r--apps/files/l10n/sr.json1
-rw-r--r--apps/files/l10n/sr@latin.js1
-rw-r--r--apps/files/l10n/sr@latin.json1
-rw-r--r--apps/files/l10n/sv.js1
-rw-r--r--apps/files/l10n/sv.json1
-rw-r--r--apps/files/l10n/th_TH.js1
-rw-r--r--apps/files/l10n/th_TH.json1
-rw-r--r--apps/files/l10n/tr.js1
-rw-r--r--apps/files/l10n/tr.json1
-rw-r--r--apps/files/l10n/uk.js1
-rw-r--r--apps/files/l10n/uk.json1
-rw-r--r--apps/files/l10n/zh_CN.js1
-rw-r--r--apps/files/l10n/zh_CN.json1
-rw-r--r--apps/files/l10n/zh_TW.js1
-rw-r--r--apps/files/l10n/zh_TW.json1
-rw-r--r--apps/files_external/l10n/el.js1
-rw-r--r--apps/files_external/l10n/el.json1
-rw-r--r--apps/files_external/l10n/is.js47
-rw-r--r--apps/files_external/l10n/is.json47
-rw-r--r--apps/files_sharing/js/share.js2
-rw-r--r--apps/updatenotification/l10n/el.js1
-rw-r--r--apps/updatenotification/l10n/el.json1
156 files changed, 656 insertions, 236 deletions
diff --git a/apps/comments/l10n/cs_CZ.js b/apps/comments/l10n/cs_CZ.js
index 4a18c2911ee..1b4e03102d4 100644
--- a/apps/comments/l10n/cs_CZ.js
+++ b/apps/comments/l10n/cs_CZ.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Komentáře</strong> souborů",
+ "You commented" : "Okomentoval jste",
"%1$s commented" : "%1$s okomentován",
+ "You commented on %2$s" : "Okomentoval jste %2$s",
"%1$s commented on %2$s" : "%1$s okomentoval %2$s",
"Comments" : "Komentáře",
"Type in a new comment..." : "Zadat nový komentář...",
diff --git a/apps/comments/l10n/cs_CZ.json b/apps/comments/l10n/cs_CZ.json
index 438fe7208bc..5ca994542bf 100644
--- a/apps/comments/l10n/cs_CZ.json
+++ b/apps/comments/l10n/cs_CZ.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Komentáře</strong> souborů",
+ "You commented" : "Okomentoval jste",
"%1$s commented" : "%1$s okomentován",
+ "You commented on %2$s" : "Okomentoval jste %2$s",
"%1$s commented on %2$s" : "%1$s okomentoval %2$s",
"Comments" : "Komentáře",
"Type in a new comment..." : "Zadat nový komentář...",
diff --git a/apps/comments/l10n/de.js b/apps/comments/l10n/de.js
index be0c332740f..0e51b02662a 100644
--- a/apps/comments/l10n/de.js
+++ b/apps/comments/l10n/de.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Kommentare</strong> für Dateien",
+ "You commented" : "Du hast kommentiert",
"%1$s commented" : "%1$s kommentierte",
+ "You commented on %2$s" : "Du hast %2$s kommentiert",
"%1$s commented on %2$s" : "%1$s kommentierte %2$s",
"Comments" : "Kommentare",
"Type in a new comment..." : "Bitte gib einen neuen Kommentar ein...",
diff --git a/apps/comments/l10n/de.json b/apps/comments/l10n/de.json
index 5981609711e..8dc0bdb0427 100644
--- a/apps/comments/l10n/de.json
+++ b/apps/comments/l10n/de.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Kommentare</strong> für Dateien",
+ "You commented" : "Du hast kommentiert",
"%1$s commented" : "%1$s kommentierte",
+ "You commented on %2$s" : "Du hast %2$s kommentiert",
"%1$s commented on %2$s" : "%1$s kommentierte %2$s",
"Comments" : "Kommentare",
"Type in a new comment..." : "Bitte gib einen neuen Kommentar ein...",
diff --git a/apps/comments/l10n/de_DE.js b/apps/comments/l10n/de_DE.js
index 33d448c56ef..8d02960fd60 100644
--- a/apps/comments/l10n/de_DE.js
+++ b/apps/comments/l10n/de_DE.js
@@ -2,6 +2,7 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Kommentare</strong> für Dateien",
+ "You commented" : "Durch dich kommentiert",
"%1$s commented" : "%1$s kommentiert",
"%1$s commented on %2$s" : "%1$s kommentierte %2$s",
"Comments" : "Kommentare",
diff --git a/apps/comments/l10n/de_DE.json b/apps/comments/l10n/de_DE.json
index a99a1663f50..28b45f670b3 100644
--- a/apps/comments/l10n/de_DE.json
+++ b/apps/comments/l10n/de_DE.json
@@ -1,5 +1,6 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Kommentare</strong> für Dateien",
+ "You commented" : "Durch dich kommentiert",
"%1$s commented" : "%1$s kommentiert",
"%1$s commented on %2$s" : "%1$s kommentierte %2$s",
"Comments" : "Kommentare",
diff --git a/apps/comments/l10n/fi_FI.js b/apps/comments/l10n/fi_FI.js
index e94f9ab2191..741dea8252b 100644
--- a/apps/comments/l10n/fi_FI.js
+++ b/apps/comments/l10n/fi_FI.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Kommentit</strong> tiedostoille",
+ "You commented" : "Kommentoit",
"%1$s commented" : "%1$s kommentoi",
+ "You commented on %2$s" : "Kommentoit %2$s",
"%1$s commented on %2$s" : "%1$s kommentoi kohdetta %2$s",
"Comments" : "Kommentit",
"Type in a new comment..." : "Kirjoita uusi kommentti...",
diff --git a/apps/comments/l10n/fi_FI.json b/apps/comments/l10n/fi_FI.json
index 513a9ce75dd..52a9f1955ef 100644
--- a/apps/comments/l10n/fi_FI.json
+++ b/apps/comments/l10n/fi_FI.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Kommentit</strong> tiedostoille",
+ "You commented" : "Kommentoit",
"%1$s commented" : "%1$s kommentoi",
+ "You commented on %2$s" : "Kommentoit %2$s",
"%1$s commented on %2$s" : "%1$s kommentoi kohdetta %2$s",
"Comments" : "Kommentit",
"Type in a new comment..." : "Kirjoita uusi kommentti...",
diff --git a/apps/comments/l10n/fr.js b/apps/comments/l10n/fr.js
index 514ba843f3e..fc065bd0db0 100644
--- a/apps/comments/l10n/fr.js
+++ b/apps/comments/l10n/fr.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Commentaires</strong> pour les fichiers",
+ "You commented" : "Vous avez commenté",
"%1$s commented" : "%1$s a commenté",
+ "You commented on %2$s" : "Vous avez commenté %2$s",
"%1$s commented on %2$s" : "%1$s a commenté %2$s",
"Comments" : "Commentaires",
"Type in a new comment..." : "Écrire un nouveau commentaire...",
diff --git a/apps/comments/l10n/fr.json b/apps/comments/l10n/fr.json
index ace5e14a14c..d69887540f9 100644
--- a/apps/comments/l10n/fr.json
+++ b/apps/comments/l10n/fr.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Commentaires</strong> pour les fichiers",
+ "You commented" : "Vous avez commenté",
"%1$s commented" : "%1$s a commenté",
+ "You commented on %2$s" : "Vous avez commenté %2$s",
"%1$s commented on %2$s" : "%1$s a commenté %2$s",
"Comments" : "Commentaires",
"Type in a new comment..." : "Écrire un nouveau commentaire...",
diff --git a/apps/comments/l10n/he.js b/apps/comments/l10n/he.js
index 641d13861a7..640ec297dd3 100644
--- a/apps/comments/l10n/he.js
+++ b/apps/comments/l10n/he.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>תגובות</strong> לקבצים",
+ "You commented" : "הערות שלך",
"%1$s commented" : "התקבלו תגובות %1$s",
+ "You commented on %2$s" : "הערות שלך ב- %2$s",
"%1$s commented on %2$s" : "התקבלו תגובות %1$s ב- %2$s ",
"Comments" : "תגובות",
"Type in a new comment..." : "יש להכניס תגובה חדשה...",
diff --git a/apps/comments/l10n/he.json b/apps/comments/l10n/he.json
index dc10680e96a..0f79918c472 100644
--- a/apps/comments/l10n/he.json
+++ b/apps/comments/l10n/he.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>תגובות</strong> לקבצים",
+ "You commented" : "הערות שלך",
"%1$s commented" : "התקבלו תגובות %1$s",
+ "You commented on %2$s" : "הערות שלך ב- %2$s",
"%1$s commented on %2$s" : "התקבלו תגובות %1$s ב- %2$s ",
"Comments" : "תגובות",
"Type in a new comment..." : "יש להכניס תגובה חדשה...",
diff --git a/apps/comments/l10n/is.js b/apps/comments/l10n/is.js
index 750222f4bcd..c55ebf7ef85 100644
--- a/apps/comments/l10n/is.js
+++ b/apps/comments/l10n/is.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Athugasemdir</strong> við skrár",
+ "You commented" : "Þú settir inn athugasemd",
"%1$s commented" : "%1$s setti inn athugasemd",
+ "You commented on %2$s" : "Þú settir inn athugasemd við %2$s",
"%1$s commented on %2$s" : "%1$s setti inn athugasemd um %2$s",
"Comments" : "Athugasemdir",
"Type in a new comment..." : "Skrifaðu inn nýja athugasemd...",
diff --git a/apps/comments/l10n/is.json b/apps/comments/l10n/is.json
index ab2c8f838e3..1a73471addf 100644
--- a/apps/comments/l10n/is.json
+++ b/apps/comments/l10n/is.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Athugasemdir</strong> við skrár",
+ "You commented" : "Þú settir inn athugasemd",
"%1$s commented" : "%1$s setti inn athugasemd",
+ "You commented on %2$s" : "Þú settir inn athugasemd við %2$s",
"%1$s commented on %2$s" : "%1$s setti inn athugasemd um %2$s",
"Comments" : "Athugasemdir",
"Type in a new comment..." : "Skrifaðu inn nýja athugasemd...",
diff --git a/apps/comments/l10n/it.js b/apps/comments/l10n/it.js
index fcf739c5572..56660b5a779 100644
--- a/apps/comments/l10n/it.js
+++ b/apps/comments/l10n/it.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Commenti</strong> sui file",
+ "You commented" : "Hai commentato",
"%1$s commented" : "%1$s ha commentato",
+ "You commented on %2$s" : "Hai commentato su %2$s",
"%1$s commented on %2$s" : "%1$s ha commentato %2$s",
"Comments" : "Commenti",
"Type in a new comment..." : "Digita un nuovo commento...",
diff --git a/apps/comments/l10n/it.json b/apps/comments/l10n/it.json
index a3cf02c91ef..8d113baa6e4 100644
--- a/apps/comments/l10n/it.json
+++ b/apps/comments/l10n/it.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Commenti</strong> sui file",
+ "You commented" : "Hai commentato",
"%1$s commented" : "%1$s ha commentato",
+ "You commented on %2$s" : "Hai commentato su %2$s",
"%1$s commented on %2$s" : "%1$s ha commentato %2$s",
"Comments" : "Commenti",
"Type in a new comment..." : "Digita un nuovo commento...",
diff --git a/apps/comments/l10n/pt_PT.js b/apps/comments/l10n/pt_PT.js
index 821afec0c50..5c874329fcd 100644
--- a/apps/comments/l10n/pt_PT.js
+++ b/apps/comments/l10n/pt_PT.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Comentários</strong> para ficheiros",
+ "You commented" : "Comentou",
"%1$s commented" : "%1$s comentou",
+ "You commented on %2$s" : "Comentou %2$s",
"%1$s commented on %2$s" : "%1$s comentou %2$s",
"Comments" : "Comentários",
"Type in a new comment..." : "Escreva um novo comentário...",
diff --git a/apps/comments/l10n/pt_PT.json b/apps/comments/l10n/pt_PT.json
index d5a5edc8c7e..f5fc1d7070b 100644
--- a/apps/comments/l10n/pt_PT.json
+++ b/apps/comments/l10n/pt_PT.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Comentários</strong> para ficheiros",
+ "You commented" : "Comentou",
"%1$s commented" : "%1$s comentou",
+ "You commented on %2$s" : "Comentou %2$s",
"%1$s commented on %2$s" : "%1$s comentou %2$s",
"Comments" : "Comentários",
"Type in a new comment..." : "Escreva um novo comentário...",
diff --git a/apps/comments/l10n/ru.js b/apps/comments/l10n/ru.js
index 0c7c966d707..755ca9e5d58 100644
--- a/apps/comments/l10n/ru.js
+++ b/apps/comments/l10n/ru.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Комментарии</strong> к файлам",
+ "You commented" : "Вы откомментировали",
"%1$s commented" : "%1$s откомментировано",
+ "You commented on %2$s" : "Вы откомментировали в %2$s",
"%1$s commented on %2$s" : "%1$s откомментировано на %2$s",
"Comments" : "Коментарии",
"Type in a new comment..." : "Запишите новый комментарий...",
diff --git a/apps/comments/l10n/ru.json b/apps/comments/l10n/ru.json
index e6e352c1916..7c5d8aa10cc 100644
--- a/apps/comments/l10n/ru.json
+++ b/apps/comments/l10n/ru.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Комментарии</strong> к файлам",
+ "You commented" : "Вы откомментировали",
"%1$s commented" : "%1$s откомментировано",
+ "You commented on %2$s" : "Вы откомментировали в %2$s",
"%1$s commented on %2$s" : "%1$s откомментировано на %2$s",
"Comments" : "Коментарии",
"Type in a new comment..." : "Запишите новый комментарий...",
diff --git a/apps/comments/l10n/sq.js b/apps/comments/l10n/sq.js
index cf18a031b0e..fdb47e2425a 100644
--- a/apps/comments/l10n/sq.js
+++ b/apps/comments/l10n/sq.js
@@ -2,7 +2,9 @@ OC.L10N.register(
"comments",
{
"<strong>Comments</strong> for files" : "<strong>Komente</strong> për kartela",
+ "You commented" : "Komentuat",
"%1$s commented" : "%1$s komentoi",
+ "You commented on %2$s" : "Komentuat te %2$s",
"%1$s commented on %2$s" : "%1$s komentoi te %2$s",
"Comments" : "Komente",
"Type in a new comment..." : "Shtypni një koment të ri…",
diff --git a/apps/comments/l10n/sq.json b/apps/comments/l10n/sq.json
index aa92903ab60..deaeceac8ce 100644
--- a/apps/comments/l10n/sq.json
+++ b/apps/comments/l10n/sq.json
@@ -1,6 +1,8 @@
{ "translations": {
"<strong>Comments</strong> for files" : "<strong>Komente</strong> për kartela",
+ "You commented" : "Komentuat",
"%1$s commented" : "%1$s komentoi",
+ "You commented on %2$s" : "Komentuat te %2$s",
"%1$s commented on %2$s" : "%1$s komentoi te %2$s",
"Comments" : "Komente",
"Type in a new comment..." : "Shtypni një koment të ri…",
diff --git a/apps/dav/appinfo/v1/caldav.php b/apps/dav/appinfo/v1/caldav.php
index e9b6e3759ab..ac46b13025b 100644
--- a/apps/dav/appinfo/v1/caldav.php
+++ b/apps/dav/appinfo/v1/caldav.php
@@ -24,11 +24,11 @@
// Backends
use OCA\DAV\CalDAV\CalDavBackend;
use OCA\DAV\Connector\LegacyDAVACL;
+use OCA\DAV\CalDAV\CalendarRoot;
use OCA\DAV\Connector\Sabre\Auth;
use OCA\DAV\Connector\Sabre\ExceptionLoggerPlugin;
use OCA\DAV\Connector\Sabre\MaintenancePlugin;
use OCA\DAV\Connector\Sabre\Principal;
-use Sabre\CalDAV\CalendarRoot;
$authBackend = new Auth(
\OC::$server->getSession(),
diff --git a/apps/dav/lib/caldav/caldavbackend.php b/apps/dav/lib/caldav/caldavbackend.php
index bb50100d9a2..5f82db10b39 100644
--- a/apps/dav/lib/caldav/caldavbackend.php
+++ b/apps/dav/lib/caldav/caldavbackend.php
@@ -138,6 +138,7 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
* @return array
*/
function getCalendarsForUser($principalUri) {
+ $principalUriOriginal = $principalUri;
$principalUri = $this->convertPrincipal($principalUri, true);
$fields = array_values($this->propertyMap);
$fields[] = 'id';
@@ -184,7 +185,7 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
$stmt->closeCursor();
// query for shared calendars
- $principals = $this->principalBackend->getGroupMembership($principalUri);
+ $principals = $this->principalBackend->getGroupMembership($principalUriOriginal, true);
$principals[]= $principalUri;
$fields = array_values($this->propertyMap);
@@ -194,6 +195,7 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
$fields[] = 'a.components';
$fields[] = 'a.principaluri';
$fields[] = 'a.transparent';
+ $fields[] = 's.access';
$query = $this->db->getQueryBuilder();
$result = $query->select($fields)
->from('dav_shares', 's')
@@ -221,6 +223,7 @@ class CalDavBackend extends AbstractBackend implements SyncSupport, Subscription
'{' . Plugin::NS_CALDAV . '}supported-calendar-component-set' => new SupportedCalendarComponentSet($components),
'{' . Plugin::NS_CALDAV . '}schedule-calendar-transp' => new ScheduleCalendarTransp($row['transparent']?'transparent':'opaque'),
'{' . \OCA\DAV\DAV\Sharing\Plugin::NS_OWNCLOUD . '}owner-principal' => $row['principaluri'],
+ '{' . \OCA\DAV\DAV\Sharing\Plugin::NS_OWNCLOUD . '}read-only' => (int)$row['access'] === Backend::ACCESS_READ,
];
foreach($this->propertyMap as $xmlName=>$dbName) {
diff --git a/apps/dav/lib/caldav/calendar.php b/apps/dav/lib/caldav/calendar.php
index 1e87f9b4333..5072d96107e 100644
--- a/apps/dav/lib/caldav/calendar.php
+++ b/apps/dav/lib/caldav/calendar.php
@@ -86,7 +86,31 @@ class Calendar extends \Sabre\CalDAV\Calendar implements IShareable {
}
function getACL() {
- $acl = parent::getACL();
+ $acl = [
+ [
+ 'privilege' => '{DAV:}read',
+ 'principal' => $this->getOwner(),
+ 'protected' => true,
+ ]];
+ $acl[] = [
+ 'privilege' => '{DAV:}write',
+ 'principal' => $this->getOwner(),
+ 'protected' => true,
+ ];
+ if ($this->getOwner() !== parent::getOwner()) {
+ $acl[] = [
+ 'privilege' => '{DAV:}read',
+ 'principal' => parent::getOwner(),
+ 'protected' => true,
+ ];
+ if ($this->canWrite()) {
+ $acl[] = [
+ 'privilege' => '{DAV:}write',
+ 'principal' => parent::getOwner(),
+ 'protected' => true,
+ ];
+ }
+ }
/** @var CalDavBackend $calDavBackend */
$calDavBackend = $this->caldavBackend;
@@ -94,11 +118,7 @@ class Calendar extends \Sabre\CalDAV\Calendar implements IShareable {
}
function getChildACL() {
- $acl = parent::getChildACL();
-
- /** @var CalDavBackend $calDavBackend */
- $calDavBackend = $this->caldavBackend;
- return $calDavBackend->applyShareAcl($this->getResourceId(), $acl);
+ return $this->getACL();
}
function getOwner() {
@@ -137,4 +157,12 @@ class Calendar extends \Sabre\CalDAV\Calendar implements IShareable {
}
parent::propPatch($propPatch);
}
+
+ private function canWrite() {
+ if (isset($this->calendarInfo['{http://owncloud.org/ns}read-only'])) {
+ return !$this->calendarInfo['{http://owncloud.org/ns}read-only'];
+ }
+ return true;
+ }
+
}
diff --git a/apps/dav/lib/carddav/addressbook.php b/apps/dav/lib/carddav/addressbook.php
index bb9d13b981e..8b1b600ec3d 100644
--- a/apps/dav/lib/carddav/addressbook.php
+++ b/apps/dav/lib/carddav/addressbook.php
@@ -21,6 +21,7 @@
namespace OCA\DAV\CardDAV;
use OCA\DAV\DAV\Sharing\IShareable;
+use Sabre\CardDAV\Card;
use Sabre\DAV\Exception\Forbidden;
use Sabre\DAV\Exception\NotFound;
use Sabre\DAV\PropPatch;
@@ -70,39 +71,31 @@ class AddressBook extends \Sabre\CardDAV\AddressBook implements IShareable {
}
function getACL() {
- $acl = parent::getACL();
- if ($this->getOwner() === 'principals/system/system') {
- $acl[] = [
- 'privilege' => '{DAV:}read',
- 'principal' => '{DAV:}authenticated',
- 'protected' => true,
+ $acl = [
+ [
+ 'privilege' => '{DAV:}read',
+ 'principal' => $this->getOwner(),
+ 'protected' => true,
+ ]];
+ $acl[] = [
+ 'privilege' => '{DAV:}write',
+ 'principal' => $this->getOwner(),
+ 'protected' => true,
];
- }
-
- // add the current user
- if (isset($this->addressBookInfo['{http://owncloud.org/ns}owner-principal'])) {
- $owner = $this->addressBookInfo['{http://owncloud.org/ns}owner-principal'];
- $acl[] = [
+ if ($this->getOwner() !== parent::getOwner()) {
+ $acl[] = [
'privilege' => '{DAV:}read',
- 'principal' => $owner,
+ 'principal' => parent::getOwner(),
'protected' => true,
];
- if ($this->addressBookInfo['{http://owncloud.org/ns}read-only']) {
+ if ($this->canWrite()) {
$acl[] = [
'privilege' => '{DAV:}write',
- 'principal' => $owner,
+ 'principal' => parent::getOwner(),
'protected' => true,
];
}
}
-
- /** @var CardDavBackend $carddavBackend */
- $carddavBackend = $this->carddavBackend;
- return $carddavBackend->applyShareAcl($this->getResourceId(), $acl);
- }
-
- function getChildACL() {
- $acl = parent::getChildACL();
if ($this->getOwner() === 'principals/system/system') {
$acl[] = [
'privilege' => '{DAV:}read',
@@ -116,12 +109,19 @@ class AddressBook extends \Sabre\CardDAV\AddressBook implements IShareable {
return $carddavBackend->applyShareAcl($this->getResourceId(), $acl);
}
+ function getChildACL() {
+ return $this->getACL();
+ }
+
function getChild($name) {
- $obj = $this->carddavBackend->getCard($this->getResourceId(), $name);
+
+ $obj = $this->carddavBackend->getCard($this->addressBookInfo['id'], $name);
if (!$obj) {
throw new NotFound('Card not found');
}
+ $obj['acl'] = $this->getChildACL();
return new Card($this->carddavBackend, $this->addressBookInfo, $obj);
+
}
/**
@@ -172,4 +172,11 @@ class AddressBook extends \Sabre\CardDAV\AddressBook implements IShareable {
return $cardDavBackend->collectCardProperties($this->getResourceId(), 'CATEGORIES');
}
+
+ private function canWrite() {
+ if (isset($this->addressBookInfo['{http://owncloud.org/ns}read-only'])) {
+ return !$this->addressBookInfo['{http://owncloud.org/ns}read-only'];
+ }
+ return true;
+ }
}
diff --git a/apps/dav/lib/carddav/card.php b/apps/dav/lib/carddav/card.php
deleted file mode 100644
index d848f2e28ec..00000000000
--- a/apps/dav/lib/carddav/card.php
+++ /dev/null
@@ -1,45 +0,0 @@
-<?php
-/**
- * @author Thomas Müller <thomas.mueller@tmit.eu>
- *
- * @copyright Copyright (c) 2016, ownCloud, Inc.
- * @license AGPL-3.0
- *
- * This code is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License, version 3,
- * as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License, version 3,
- * along with this program. If not, see <http://www.gnu.org/licenses/>
- *
- */
-
-namespace OCA\DAV\CardDAV;
-
-class Card extends \Sabre\CardDAV\Card {
-
- function getACL() {
- $acl = parent::getACL();
- if ($this->getOwner() === 'principals/system/system') {
- $acl[] = [
- 'privilege' => '{DAV:}read',
- 'principal' => '{DAV:}authenticated',
- 'protected' => true,
- ];
- }
-
- /** @var CardDavBackend $carddavBackend */
- $carddavBackend = $this->carddavBackend;
- return $carddavBackend->applyShareAcl($this->getBookId(), $acl);
- }
-
- private function getBookId() {
- return $this->addressBookInfo['id'];
- }
-
-}
diff --git a/apps/dav/lib/carddav/carddavbackend.php b/apps/dav/lib/carddav/carddavbackend.php
index bfb6ea82ad7..650623225e3 100644
--- a/apps/dav/lib/carddav/carddavbackend.php
+++ b/apps/dav/lib/carddav/carddavbackend.php
@@ -62,10 +62,6 @@ class CardDavBackend implements BackendInterface, SyncSupport {
'BDAY', 'UID', 'N', 'FN', 'TITLE', 'ROLE', 'NOTE', 'NICKNAME',
'ORG', 'CATEGORIES', 'EMAIL', 'TEL', 'IMPP', 'ADR', 'URL', 'GEO', 'CLOUD');
- const ACCESS_OWNER = 1;
- const ACCESS_READ_WRITE = 2;
- const ACCESS_READ = 3;
-
/** @var EventDispatcherInterface */
private $dispatcher;
@@ -126,7 +122,7 @@ class CardDavBackend implements BackendInterface, SyncSupport {
$result->closeCursor();
// query for shared calendars
- $principals = $this->principalBackend->getGroupMembership($principalUri);
+ $principals = $this->principalBackend->getGroupMembership($principalUri, true);
$principals[]= $principalUri;
$query = $this->db->getQueryBuilder();
@@ -153,7 +149,7 @@ class CardDavBackend implements BackendInterface, SyncSupport {
'{http://calendarserver.org/ns/}getctag' => $row['synctoken'],
'{http://sabredav.org/ns}sync-token' => $row['synctoken']?$row['synctoken']:'0',
'{' . \OCA\DAV\DAV\Sharing\Plugin::NS_OWNCLOUD . '}owner-principal' => $row['principaluri'],
- '{' . \OCA\DAV\DAV\Sharing\Plugin::NS_OWNCLOUD . '}read-only' => $row['access'] === self::ACCESS_READ,
+ '{' . \OCA\DAV\DAV\Sharing\Plugin::NS_OWNCLOUD . '}read-only' => (int)$row['access'] === Backend::ACCESS_READ,
];
}
}
diff --git a/apps/dav/lib/connector/legacydavacl.php b/apps/dav/lib/connector/legacydavacl.php
index 07aefa1b863..eb6ca1fd7d5 100644
--- a/apps/dav/lib/connector/legacydavacl.php
+++ b/apps/dav/lib/connector/legacydavacl.php
@@ -23,7 +23,10 @@
namespace OCA\DAV\Connector;
use OCA\DAV\Connector\Sabre\DavAclPlugin;
+use Sabre\DAV\INode;
+use Sabre\DAV\PropFind;
use Sabre\HTTP\URLUtil;
+use Sabre\DAVACL\Xml\Property\Principal;
class LegacyDAVACL extends DavAclPlugin {
@@ -67,4 +70,16 @@ class LegacyDAVACL extends DavAclPlugin {
}
return "principals/$name";
}
+
+ function propFind(PropFind $propFind, INode $node) {
+ /* Overload current-user-principal */
+ $propFind->handle('{DAV:}current-user-principal', function () {
+ if ($url = parent::getCurrentUserPrincipal()) {
+ return new Principal(Principal::HREF, $url . '/');
+ } else {
+ return new Principal(Principal::UNAUTHENTICATED);
+ }
+ });
+ parent::propFind($propFind, $node);
+ }
}
diff --git a/apps/dav/lib/connector/sabre/auth.php b/apps/dav/lib/connector/sabre/auth.php
index 8c09c9fdc1c..b63efa3a1ba 100644
--- a/apps/dav/lib/connector/sabre/auth.php
+++ b/apps/dav/lib/connector/sabre/auth.php
@@ -30,6 +30,7 @@
namespace OCA\DAV\Connector\Sabre;
use Exception;
+use OC\AppFramework\Http\Request;
use OCP\IRequest;
use OCP\ISession;
use OCP\IUserSession;
@@ -48,6 +49,8 @@ class Auth extends AbstractBasic {
private $userSession;
/** @var IRequest */
private $request;
+ /** @var string */
+ private $currentUser;
/**
* @param ISession $session
@@ -130,7 +133,46 @@ class Auth extends AbstractBasic {
$msg = $e->getMessage();
throw new ServiceUnavailable("$class: $msg");
}
- }
+ }
+
+ /**
+ * Checks whether a CSRF check is required on the request
+ *
+ * @return bool
+ */
+ private function requiresCSRFCheck() {
+ // GET requires no check at all
+ if($this->request->getMethod() === 'GET') {
+ return false;
+ }
+
+ // Official ownCloud clients require no checks
+ if($this->request->isUserAgent([
+ Request::USER_AGENT_OWNCLOUD_DESKTOP,
+ Request::USER_AGENT_OWNCLOUD_ANDROID,
+ Request::USER_AGENT_OWNCLOUD_IOS,
+ ])) {
+ return false;
+ }
+
+ // If not logged-in no check is required
+ if(!$this->userSession->isLoggedIn()) {
+ return false;
+ }
+
+ // POST always requires a check
+ if($this->request->getMethod() === 'POST') {
+ return true;
+ }
+
+ // If logged-in AND DAV authenticated no check is required
+ if($this->userSession->isLoggedIn() &&
+ $this->isDavAuthenticated($this->userSession->getUser()->getUID())) {
+ return false;
+ }
+
+ return true;
+ }
/**
* @param RequestInterface $request
@@ -139,27 +181,33 @@ class Auth extends AbstractBasic {
* @throws NotAuthenticated
*/
private function auth(RequestInterface $request, ResponseInterface $response) {
- // If request is not GET and not authenticated via WebDAV a requesttoken is required
- if($this->userSession->isLoggedIn() &&
- $this->request->getMethod() !== 'GET' &&
- !$this->isDavAuthenticated($this->userSession->getUser()->getUID())) {
- if(!$this->request->passesCSRFCheck()) {
+ $forcedLogout = false;
+ if(!$this->request->passesCSRFCheck() &&
+ $this->requiresCSRFCheck()) {
+ // In case of a fail with POST we need to recheck the credentials
+ if($this->request->getMethod() === 'POST') {
+ $forcedLogout = true;
+ } else {
$response->setStatus(401);
throw new \Sabre\DAV\Exception\NotAuthenticated('CSRF check not passed.');
}
}
- if (\OC_User::handleApacheAuth() ||
- //Fix for broken webdav clients
- ($this->userSession->isLoggedIn() && is_null($this->session->get(self::DAV_AUTHENTICATED))) ||
- //Well behaved clients that only send the cookie are allowed
- ($this->userSession->isLoggedIn() && $this->session->get(self::DAV_AUTHENTICATED) === $this->userSession->getUser()->getUID() && $request->getHeader('Authorization') === null)
- ) {
- $user = $this->userSession->getUser()->getUID();
- \OC_Util::setupFS($user);
- $this->currentUser = $user;
- $this->session->close();
- return [true, $this->principalPrefix . $user];
+ if($forcedLogout) {
+ $this->userSession->logout();
+ } else {
+ if (\OC_User::handleApacheAuth() ||
+ //Fix for broken webdav clients
+ ($this->userSession->isLoggedIn() && is_null($this->session->get(self::DAV_AUTHENTICATED))) ||
+ //Well behaved clients that only send the cookie are allowed
+ ($this->userSession->isLoggedIn() && $this->session->get(self::DAV_AUTHENTICATED) === $this->userSession->getUser()->getUID() && $request->getHeader('Authorization') === null)
+ ) {
+ $user = $this->userSession->getUser()->getUID();
+ \OC_Util::setupFS($user);
+ $this->currentUser = $user;
+ $this->session->close();
+ return [true, $this->principalPrefix . $user];
+ }
}
if (!$this->userSession->isLoggedIn() && in_array('XMLHttpRequest', explode(',', $request->getHeader('X-Requested-With')))) {
diff --git a/apps/dav/lib/connector/sabre/principal.php b/apps/dav/lib/connector/sabre/principal.php
index 31de4e5bad1..18f28a916f1 100644
--- a/apps/dav/lib/connector/sabre/principal.php
+++ b/apps/dav/lib/connector/sabre/principal.php
@@ -132,10 +132,11 @@ class Principal implements BackendInterface {
* Returns the list of groups a principal is a member of
*
* @param string $principal
+ * @param bool $needGroups
* @return array
* @throws Exception
*/
- public function getGroupMembership($principal) {
+ public function getGroupMembership($principal, $needGroups = false) {
list($prefix, $name) = URLUtil::splitPath($principal);
if ($prefix === $this->principalPrefix) {
@@ -144,7 +145,7 @@ class Principal implements BackendInterface {
throw new Exception('Principal not found');
}
- if ($this->hasGroups) {
+ if ($this->hasGroups || $needGroups) {
$groups = $this->groupManager->getUserGroups($user);
$groups = array_map(function($group) {
/** @var IGroup $group */
diff --git a/apps/dav/lib/connector/sabre/sharesplugin.php b/apps/dav/lib/connector/sabre/sharesplugin.php
index f75c1378718..c76068969e9 100644
--- a/apps/dav/lib/connector/sabre/sharesplugin.php
+++ b/apps/dav/lib/connector/sabre/sharesplugin.php
@@ -116,7 +116,8 @@ class SharesPlugin extends \Sabre\DAV\ServerPlugin {
$requestedShareTypes = [
\OCP\Share::SHARE_TYPE_USER,
\OCP\Share::SHARE_TYPE_GROUP,
- \OCP\Share::SHARE_TYPE_LINK
+ \OCP\Share::SHARE_TYPE_LINK,
+ \OCP\Share::SHARE_TYPE_REMOTE
];
foreach ($requestedShareTypes as $requestedShareType) {
// one of each type is enough to find out about the types
diff --git a/apps/dav/tests/unit/caldav/calendartest.php b/apps/dav/tests/unit/caldav/calendartest.php
index e7f4d57067c..9e0c3c6c7e4 100644
--- a/apps/dav/tests/unit/caldav/calendartest.php
+++ b/apps/dav/tests/unit/caldav/calendartest.php
@@ -103,4 +103,64 @@ class CalendarTest extends TestCase {
$this->assertTrue(true);
}
}
+
+ /**
+ * @dataProvider providesReadOnlyInfo
+ */
+ public function testAcl($expectsWrite, $readOnlyValue, $hasOwnerSet) {
+ /** @var \PHPUnit_Framework_MockObject_MockObject | CalDavBackend $backend */
+ $backend = $this->getMockBuilder('OCA\DAV\CalDAV\CalDavBackend')->disableOriginalConstructor()->getMock();
+ $backend->expects($this->any())->method('applyShareAcl')->willReturnArgument(1);
+ $calendarInfo = [
+ 'principaluri' => 'user2',
+ 'id' => 666,
+ 'uri' => 'default'
+ ];
+ if (!is_null($readOnlyValue)) {
+ $calendarInfo['{http://owncloud.org/ns}read-only'] = $readOnlyValue;
+ }
+ if ($hasOwnerSet) {
+ $calendarInfo['{http://owncloud.org/ns}owner-principal'] = 'user1';
+ }
+ $c = new Calendar($backend, $calendarInfo);
+ $acl = $c->getACL();
+ $childAcl = $c->getChildACL();
+
+ $expectedAcl = [[
+ 'privilege' => '{DAV:}read',
+ 'principal' => $hasOwnerSet ? 'user1' : 'user2',
+ 'protected' => true
+ ], [
+ 'privilege' => '{DAV:}write',
+ 'principal' => $hasOwnerSet ? 'user1' : 'user2',
+ 'protected' => true
+ ]];
+ if ($hasOwnerSet) {
+ $expectedAcl[] = [
+ 'privilege' => '{DAV:}read',
+ 'principal' => 'user2',
+ 'protected' => true
+ ];
+ if ($expectsWrite) {
+ $expectedAcl[] = [
+ 'privilege' => '{DAV:}write',
+ 'principal' => 'user2',
+ 'protected' => true
+ ];
+ }
+ }
+ $this->assertEquals($expectedAcl, $acl);
+ $this->assertEquals($expectedAcl, $childAcl);
+ }
+
+ public function providesReadOnlyInfo() {
+ return [
+ 'read-only property not set' => [true, null, true],
+ 'read-only property is false' => [true, false, true],
+ 'read-only property is true' => [false, true, true],
+ 'read-only property not set and no owner' => [true, null, false],
+ 'read-only property is false and no owner' => [true, false, false],
+ 'read-only property is true and no owner' => [false, true, false],
+ ];
+ }
}
diff --git a/apps/dav/tests/unit/carddav/addressbooktest.php b/apps/dav/tests/unit/carddav/addressbooktest.php
index 854c121a95d..c5cf7e5f7ba 100644
--- a/apps/dav/tests/unit/carddav/addressbooktest.php
+++ b/apps/dav/tests/unit/carddav/addressbooktest.php
@@ -32,7 +32,7 @@ class AddressBookTest extends TestCase {
/** @var \PHPUnit_Framework_MockObject_MockObject | CardDavBackend $backend */
$backend = $this->getMockBuilder('OCA\DAV\CardDAV\CardDavBackend')->disableOriginalConstructor()->getMock();
$backend->expects($this->once())->method('updateShares');
- $backend->method('getShares')->willReturn([
+ $backend->expects($this->any())->method('getShares')->willReturn([
['href' => 'principal:user2']
]);
$calendarInfo = [
@@ -51,7 +51,7 @@ class AddressBookTest extends TestCase {
/** @var \PHPUnit_Framework_MockObject_MockObject | CardDavBackend $backend */
$backend = $this->getMockBuilder('OCA\DAV\CardDAV\CardDavBackend')->disableOriginalConstructor()->getMock();
$backend->expects($this->never())->method('updateShares');
- $backend->method('getShares')->willReturn([
+ $backend->expects($this->any())->method('getShares')->willReturn([
['href' => 'principal:group2']
]);
$calendarInfo = [
@@ -77,4 +77,63 @@ class AddressBookTest extends TestCase {
$c = new AddressBook($backend, $calendarInfo);
$c->propPatch(new PropPatch([]));
}
-}
+
+ /**
+ * @dataProvider providesReadOnlyInfo
+ */
+ public function testAcl($expectsWrite, $readOnlyValue, $hasOwnerSet) {
+ /** @var \PHPUnit_Framework_MockObject_MockObject | CardDavBackend $backend */
+ $backend = $this->getMockBuilder('OCA\DAV\CardDAV\CardDavBackend')->disableOriginalConstructor()->getMock();
+ $backend->expects($this->any())->method('applyShareAcl')->willReturnArgument(1);
+ $calendarInfo = [
+ 'principaluri' => 'user2',
+ 'id' => 666,
+ 'uri' => 'default'
+ ];
+ if (!is_null($readOnlyValue)) {
+ $calendarInfo['{http://owncloud.org/ns}read-only'] = $readOnlyValue;
+ }
+ if ($hasOwnerSet) {
+ $calendarInfo['{http://owncloud.org/ns}owner-principal'] = 'user1';
+ }
+ $c = new AddressBook($backend, $calendarInfo);
+ $acl = $c->getACL();
+ $childAcl = $c->getChildACL();
+
+ $expectedAcl = [[
+ 'privilege' => '{DAV:}read',
+ 'principal' => $hasOwnerSet ? 'user1' : 'user2',
+ 'protected' => true
+ ], [
+ 'privilege' => '{DAV:}write',
+ 'principal' => $hasOwnerSet ? 'user1' : 'user2',
+ 'protected' => true
+ ]];
+ if ($hasOwnerSet) {
+ $expectedAcl[] = [
+ 'privilege' => '{DAV:}read',
+ 'principal' => 'user2',
+ 'protected' => true
+ ];
+ if ($expectsWrite) {
+ $expectedAcl[] = [
+ 'privilege' => '{DAV:}write',
+ 'principal' => 'user2',
+ 'protected' => true
+ ];
+ }
+ }
+ $this->assertEquals($expectedAcl, $acl);
+ $this->assertEquals($expectedAcl, $childAcl);
+ }
+
+ public function providesReadOnlyInfo() {
+ return [
+ 'read-only property not set' => [true, null, true],
+ 'read-only property is false' => [true, false, true],
+ 'read-only property is true' => [false, true, true],
+ 'read-only property not set and no owner' => [true, null, false],
+ 'read-only property is false and no owner' => [true, false, false],
+ 'read-only property is true and no owner' => [false, true, false],
+ ];
+ }}
diff --git a/apps/dav/tests/unit/connector/sabre/auth.php b/apps/dav/tests/unit/connector/sabre/auth.php
index edb4073bdcb..b81a5e003b5 100644
--- a/apps/dav/tests/unit/connector/sabre/auth.php
+++ b/apps/dav/tests/unit/connector/sabre/auth.php
@@ -198,10 +198,7 @@ class Auth extends TestCase {
$this->assertFalse($this->invokePrivate($this->auth, 'validateUserPass', ['MyTestUser', 'MyTestPassword']));
}
- /**
- * @expectedException \Sabre\DAV\Exception\NotAuthenticated
- * @expectedExceptionMessage CSRF check not passed.
- */
+
public function testAuthenticateAlreadyLoggedInWithoutCsrfTokenForNonGet() {
$request = $this->getMockBuilder('Sabre\HTTP\RequestInterface')
->disableOriginalConstructor()
@@ -210,30 +207,42 @@ class Auth extends TestCase {
->disableOriginalConstructor()
->getMock();
$this->userSession
- ->expects($this->once())
+ ->expects($this->any())
->method('isLoggedIn')
->will($this->returnValue(true));
+ $this->request
+ ->expects($this->any())
+ ->method('getMethod')
+ ->willReturn('POST');
$this->session
- ->expects($this->once())
+ ->expects($this->any())
->method('get')
->with('AUTHENTICATED_TO_DAV_BACKEND')
->will($this->returnValue(null));
$user = $this->getMockBuilder('\OCP\IUser')
->disableOriginalConstructor()
->getMock();
- $user->expects($this->once())
+ $user->expects($this->any())
->method('getUID')
->will($this->returnValue('MyWrongDavUser'));
$this->userSession
- ->expects($this->once())
+ ->expects($this->any())
->method('getUser')
->will($this->returnValue($user));
+ $this->request
+ ->expects($this->once())
+ ->method('passesCSRFCheck')
+ ->willReturn(false);
+ $expectedResponse = [
+ false,
+ "No 'Authorization: Basic' header found. Either the client didn't send one, or the server is mis-configured",
+ ];
$response = $this->auth->check($request, $response);
- $this->assertEquals([true, 'principals/users/MyWrongDavUser'], $response);
+ $this->assertSame($expectedResponse, $response);
}
- public function testAuthenticateAlreadyLoggedInWithoutCsrfTokenForGet() {
+ public function testAuthenticateAlreadyLoggedInWithoutCsrfTokenAndCorrectlyDavAuthenticated() {
$request = $this->getMockBuilder('Sabre\HTTP\RequestInterface')
->disableOriginalConstructor()
->getMock();
@@ -241,26 +250,169 @@ class Auth extends TestCase {
->disableOriginalConstructor()
->getMock();
$this->userSession
- ->expects($this->exactly(2))
+ ->expects($this->any())
->method('isLoggedIn')
- ->will($this->returnValue(true));
+ ->willReturn(true);
+ $this->request
+ ->expects($this->any())
+ ->method('getMethod')
+ ->willReturn('PROPFIND');
+ $this->request
+ ->expects($this->any())
+ ->method('isUserAgent')
+ ->with([
+ '/^Mozilla\/5\.0 \([A-Za-z ]+\) (mirall|csyncoC)\/.*$/',
+ '/^Mozilla\/5\.0 \(Android\) ownCloud\-android.*$/',
+ '/^Mozilla\/5\.0 \(iOS\) ownCloud\-iOS.*$/',
+ ])
+ ->willReturn(false);
$this->session
+ ->expects($this->any())
+ ->method('get')
+ ->with('AUTHENTICATED_TO_DAV_BACKEND')
+ ->will($this->returnValue('LoggedInUser'));
+ $user = $this->getMockBuilder('\OCP\IUser')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $user->expects($this->any())
+ ->method('getUID')
+ ->will($this->returnValue('LoggedInUser'));
+ $this->userSession
+ ->expects($this->any())
+ ->method('getUser')
+ ->will($this->returnValue($user));
+ $this->request
->expects($this->once())
+ ->method('passesCSRFCheck')
+ ->willReturn(false);
+ $this->auth->check($request, $response);
+ }
+
+ /**
+ * @expectedException \Sabre\DAV\Exception\NotAuthenticated
+ * @expectedExceptionMessage CSRF check not passed.
+ */
+ public function testAuthenticateAlreadyLoggedInWithoutCsrfTokenAndIncorrectlyDavAuthenticated() {
+ $request = $this->getMockBuilder('Sabre\HTTP\RequestInterface')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $response = $this->getMockBuilder('Sabre\HTTP\ResponseInterface')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $this->userSession
+ ->expects($this->any())
+ ->method('isLoggedIn')
+ ->willReturn(true);
+ $this->request
+ ->expects($this->any())
+ ->method('getMethod')
+ ->willReturn('PROPFIND');
+ $this->request
+ ->expects($this->any())
+ ->method('isUserAgent')
+ ->with([
+ '/^Mozilla\/5\.0 \([A-Za-z ]+\) (mirall|csyncoC)\/.*$/',
+ '/^Mozilla\/5\.0 \(Android\) ownCloud\-android.*$/',
+ '/^Mozilla\/5\.0 \(iOS\) ownCloud\-iOS.*$/',
+ ])
+ ->willReturn(false);
+ $this->session
+ ->expects($this->any())
+ ->method('get')
+ ->with('AUTHENTICATED_TO_DAV_BACKEND')
+ ->will($this->returnValue('AnotherUser'));
+ $user = $this->getMockBuilder('\OCP\IUser')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $user->expects($this->any())
+ ->method('getUID')
+ ->will($this->returnValue('LoggedInUser'));
+ $this->userSession
+ ->expects($this->any())
+ ->method('getUser')
+ ->will($this->returnValue($user));
+ $this->request
+ ->expects($this->once())
+ ->method('passesCSRFCheck')
+ ->willReturn(false);
+ $this->auth->check($request, $response);
+ }
+
+ public function testAuthenticateAlreadyLoggedInWithoutCsrfTokenForNonGetAndDesktopClient() {
+ $request = $this->getMockBuilder('Sabre\HTTP\RequestInterface')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $response = $this->getMockBuilder('Sabre\HTTP\ResponseInterface')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $this->userSession
+ ->expects($this->any())
+ ->method('isLoggedIn')
+ ->will($this->returnValue(true));
+ $this->request
+ ->expects($this->any())
+ ->method('getMethod')
+ ->willReturn('POST');
+ $this->request
+ ->expects($this->any())
+ ->method('isUserAgent')
+ ->with([
+ '/^Mozilla\/5\.0 \([A-Za-z ]+\) (mirall|csyncoC)\/.*$/',
+ '/^Mozilla\/5\.0 \(Android\) ownCloud\-android.*$/',
+ '/^Mozilla\/5\.0 \(iOS\) ownCloud\-iOS.*$/',
+ ])
+ ->willReturn(true);
+ $this->session
+ ->expects($this->any())
->method('get')
->with('AUTHENTICATED_TO_DAV_BACKEND')
->will($this->returnValue(null));
$user = $this->getMockBuilder('\OCP\IUser')
->disableOriginalConstructor()
->getMock();
- $user->expects($this->once())
+ $user->expects($this->any())
->method('getUID')
->will($this->returnValue('MyWrongDavUser'));
$this->userSession
- ->expects($this->once())
+ ->expects($this->any())
->method('getUser')
->will($this->returnValue($user));
$this->request
->expects($this->once())
+ ->method('passesCSRFCheck')
+ ->willReturn(false);
+
+ $this->auth->check($request, $response);
+ }
+
+ public function testAuthenticateAlreadyLoggedInWithoutCsrfTokenForGet() {
+ $request = $this->getMockBuilder('Sabre\HTTP\RequestInterface')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $response = $this->getMockBuilder('Sabre\HTTP\ResponseInterface')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $this->userSession
+ ->expects($this->any())
+ ->method('isLoggedIn')
+ ->will($this->returnValue(true));
+ $this->session
+ ->expects($this->any())
+ ->method('get')
+ ->with('AUTHENTICATED_TO_DAV_BACKEND')
+ ->will($this->returnValue(null));
+ $user = $this->getMockBuilder('\OCP\IUser')
+ ->disableOriginalConstructor()
+ ->getMock();
+ $user->expects($this->any())
+ ->method('getUID')
+ ->will($this->returnValue('MyWrongDavUser'));
+ $this->userSession
+ ->expects($this->any())
+ ->method('getUser')
+ ->will($this->returnValue($user));
+ $this->request
+ ->expects($this->any())
->method('getMethod')
->willReturn('GET');
@@ -268,7 +420,6 @@ class Auth extends TestCase {
$this->assertEquals([true, 'principals/users/MyWrongDavUser'], $response);
}
-
public function testAuthenticateAlreadyLoggedInWithCsrfTokenForGet() {
$request = $this->getMockBuilder('Sabre\HTTP\RequestInterface')
->disableOriginalConstructor()
@@ -277,22 +428,22 @@ class Auth extends TestCase {
->disableOriginalConstructor()
->getMock();
$this->userSession
- ->expects($this->exactly(2))
+ ->expects($this->any())
->method('isLoggedIn')
->will($this->returnValue(true));
$this->session
- ->expects($this->exactly(2))
+ ->expects($this->any())
->method('get')
->with('AUTHENTICATED_TO_DAV_BACKEND')
->will($this->returnValue(null));
$user = $this->getMockBuilder('\OCP\IUser')
->disableOriginalConstructor()
->getMock();
- $user->expects($this->exactly(2))
+ $user->expects($this->any())
->method('getUID')
->will($this->returnValue('MyWrongDavUser'));
$this->userSession
- ->expects($this->exactly(2))
+ ->expects($this->any())
->method('getUser')
->will($this->returnValue($user));
$this->request
@@ -368,6 +519,10 @@ class Auth extends TestCase {
->method('get')
->with('AUTHENTICATED_TO_DAV_BACKEND')
->will($this->returnValue('MyTestUser'));
+ $this->request
+ ->expects($this->once())
+ ->method('getMethod')
+ ->willReturn('GET');
$httpRequest
->expects($this->atLeastOnce())
->method('getHeader')
diff --git a/apps/dav/tests/unit/connector/sabre/sharesplugin.php b/apps/dav/tests/unit/connector/sabre/sharesplugin.php
index 9a1c6eec507..42f1b539916 100644
--- a/apps/dav/tests/unit/connector/sabre/sharesplugin.php
+++ b/apps/dav/tests/unit/connector/sabre/sharesplugin.php
@@ -248,10 +248,12 @@ class SharesPlugin extends \Test\TestCase {
[[\OCP\Share::SHARE_TYPE_USER]],
[[\OCP\Share::SHARE_TYPE_GROUP]],
[[\OCP\Share::SHARE_TYPE_LINK]],
+ [[\OCP\Share::SHARE_TYPE_REMOTE]],
[[\OCP\Share::SHARE_TYPE_USER, \OCP\Share::SHARE_TYPE_GROUP]],
[[\OCP\Share::SHARE_TYPE_USER, \OCP\Share::SHARE_TYPE_GROUP, \OCP\Share::SHARE_TYPE_LINK]],
[[\OCP\Share::SHARE_TYPE_USER, \OCP\Share::SHARE_TYPE_LINK]],
[[\OCP\Share::SHARE_TYPE_GROUP, \OCP\Share::SHARE_TYPE_LINK]],
+ [[\OCP\Share::SHARE_TYPE_USER, \OCP\Share::SHARE_TYPE_REMOTE]],
];
}
}
diff --git a/apps/encryption/l10n/de_DE.js b/apps/encryption/l10n/de_DE.js
index 9b017eee43f..1bc7dfa9e63 100644
--- a/apps/encryption/l10n/de_DE.js
+++ b/apps/encryption/l10n/de_DE.js
@@ -32,6 +32,7 @@ OC.L10N.register(
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Diese Datei kann nicht gelesen werden, es handelt sich wahrscheinlich um eine geteilte Datei. Bitte kontaktieren Sie den Eigentümer der Datei und bitten Sie darum, die Datei noch einmal mit Ihnen zu teilen.",
"The share will expire on %s." : "Die Freigabe wird am %s ablaufen.",
"Cheers!" : "Noch einen schönen Tag!",
+ "Encrypt the home storage" : "Benutzerverzeichnis verschlüsslen",
"Enable recovery key" : "Wiederherstellungsschlüssel aktivieren",
"Disable recovery key" : "Wiederherstellungsschlüssel deaktivieren",
"The recovery key is an extra encryption key that is used to encrypt files. It allows recovery of a user's files if the user forgets his or her password." : "Der Wiederherstellungsschlüssel ist ein zusätzlicher Verschlüsselungsschlüssel, der zum Verschlüsseln von Dateien benutzt wird. Er erlaubt die Wiederherstellung von Benutzerdateien auch dann, wenn der Benutzer sein Passwort vergessen hat.",
diff --git a/apps/encryption/l10n/de_DE.json b/apps/encryption/l10n/de_DE.json
index a3754c75846..5fceba49c2b 100644
--- a/apps/encryption/l10n/de_DE.json
+++ b/apps/encryption/l10n/de_DE.json
@@ -30,6 +30,7 @@
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "Diese Datei kann nicht gelesen werden, es handelt sich wahrscheinlich um eine geteilte Datei. Bitte kontaktieren Sie den Eigentümer der Datei und bitten Sie darum, die Datei noch einmal mit Ihnen zu teilen.",
"The share will expire on %s." : "Die Freigabe wird am %s ablaufen.",
"Cheers!" : "Noch einen schönen Tag!",
+ "Encrypt the home storage" : "Benutzerverzeichnis verschlüsslen",
"Enable recovery key" : "Wiederherstellungsschlüssel aktivieren",
"Disable recovery key" : "Wiederherstellungsschlüssel deaktivieren",
"The recovery key is an extra encryption key that is used to encrypt files. It allows recovery of a user's files if the user forgets his or her password." : "Der Wiederherstellungsschlüssel ist ein zusätzlicher Verschlüsselungsschlüssel, der zum Verschlüsseln von Dateien benutzt wird. Er erlaubt die Wiederherstellung von Benutzerdateien auch dann, wenn der Benutzer sein Passwort vergessen hat.",
diff --git a/apps/encryption/l10n/zh_TW.js b/apps/encryption/l10n/zh_TW.js
index d0c1e3dfee8..ae05a303d21 100644
--- a/apps/encryption/l10n/zh_TW.js
+++ b/apps/encryption/l10n/zh_TW.js
@@ -25,6 +25,8 @@ OC.L10N.register(
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "無效的檔案加密私鑰,請在個人設定中更新您的私鑰密語以存取加密的檔案。",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "檔案加密已啓用,但是您的金鑰尚未初始化,請重新登入一次",
"Encryption App is enabled and ready" : "加密應用程式已經被啟用",
+ "Bad Signature" : "壞的簽章",
+ "Missing Signature" : "遺失簽章",
"one-time password for server-side-encryption" : "一次性密碼用於伺服器端的加密",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "無法解密這個檔案,也許這是分享的檔案。請詢問檔案所有人重新分享檔案給您。",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "無法檢視這個檔案,或許這是分享的檔案,請詢問這個檔案的擁有者並請他重新分享給您。",
diff --git a/apps/encryption/l10n/zh_TW.json b/apps/encryption/l10n/zh_TW.json
index feee736980f..4be9390da0e 100644
--- a/apps/encryption/l10n/zh_TW.json
+++ b/apps/encryption/l10n/zh_TW.json
@@ -23,6 +23,8 @@
"Invalid private key for Encryption App. Please update your private key password in your personal settings to recover access to your encrypted files." : "無效的檔案加密私鑰,請在個人設定中更新您的私鑰密語以存取加密的檔案。",
"Encryption App is enabled but your keys are not initialized, please log-out and log-in again" : "檔案加密已啓用,但是您的金鑰尚未初始化,請重新登入一次",
"Encryption App is enabled and ready" : "加密應用程式已經被啟用",
+ "Bad Signature" : "壞的簽章",
+ "Missing Signature" : "遺失簽章",
"one-time password for server-side-encryption" : "一次性密碼用於伺服器端的加密",
"Can not decrypt this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "無法解密這個檔案,也許這是分享的檔案。請詢問檔案所有人重新分享檔案給您。",
"Can not read this file, probably this is a shared file. Please ask the file owner to reshare the file with you." : "無法檢視這個檔案,或許這是分享的檔案,請詢問這個檔案的擁有者並請他重新分享給您。",
diff --git a/apps/federation/l10n/el.js b/apps/federation/l10n/el.js
index e67a9242b0d..63e2f8a04cf 100644
--- a/apps/federation/l10n/el.js
+++ b/apps/federation/l10n/el.js
@@ -1,6 +1,8 @@
OC.L10N.register(
"federation",
{
- "Could not add server" : "Αδυναμία προσθήκης διακομιστή"
+ "No ownCloud server found" : "Δεν βρέθηκε διακομιστής ownCloud",
+ "Could not add server" : "Αδυναμία προσθήκης διακομιστή",
+ "ownCloud Server" : "Διακομιστής ownCloud"
},
"nplurals=2; plural=(n != 1);");
diff --git a/apps/federation/l10n/el.json b/apps/federation/l10n/el.json
index 45d91aae735..5a8efb5aea1 100644
--- a/apps/federation/l10n/el.json
+++ b/apps/federation/l10n/el.json
@@ -1,4 +1,6 @@
{ "translations": {
- "Could not add server" : "Αδυναμία προσθήκης διακομιστή"
+ "No ownCloud server found" : "Δεν βρέθηκε διακομιστής ownCloud",
+ "Could not add server" : "Αδυναμία προσθήκης διακομιστή",
+ "ownCloud Server" : "Διακομιστής ownCloud"
},"pluralForm" :"nplurals=2; plural=(n != 1);"
} \ No newline at end of file
diff --git a/apps/federation/l10n/is.js b/apps/federation/l10n/is.js
index 6c5c4444f5d..970656835fd 100644
--- a/apps/federation/l10n/is.js
+++ b/apps/federation/l10n/is.js
@@ -1,8 +1,13 @@
OC.L10N.register(
"federation",
{
+ "Server added to the list of trusted ownClouds" : "Þjóninum bætt við listann yfir treyst ownCloud-ský",
+ "Server is already in the list of trusted servers." : "Þjónninn er nú þegar á listanum yfir treysta þjóna.",
"No ownCloud server found" : "Enginn ownCloud-þjónn fannst",
"Could not add server" : "Gat ekki bætt við þjóni",
+ "Federation" : "Samband",
+ "ownCloud Federation allows you to connect with other trusted ownClouds to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "ownCloud-samband (federation) gerir þér kleift að tengjast öðrumtreystum ownCloud-skýjum til að skiptast á notendaskrám. Þetta er til dæmis notað til að sjálfklára nöfn ytri notenda við deilingu sambandssameigna.",
+ "Add server automatically once a federated share was created successfully" : "Bæta þjóni við sjálfkrafa, hafi tekist að búa til sambandssameign",
"Trusted ownCloud Servers" : "Treystir ownCloud-þjónar",
"+ Add ownCloud server" : "+ Bæta við ownCloud-þjóni",
"ownCloud Server" : "ownCloud-þjónn"
diff --git a/apps/federation/l10n/is.json b/apps/federation/l10n/is.json
index 7b54843d64b..3754dc12ed7 100644
--- a/apps/federation/l10n/is.json
+++ b/apps/federation/l10n/is.json
@@ -1,6 +1,11 @@
{ "translations": {
+ "Server added to the list of trusted ownClouds" : "Þjóninum bætt við listann yfir treyst ownCloud-ský",
+ "Server is already in the list of trusted servers." : "Þjónninn er nú þegar á listanum yfir treysta þjóna.",
"No ownCloud server found" : "Enginn ownCloud-þjónn fannst",
"Could not add server" : "Gat ekki bætt við þjóni",
+ "Federation" : "Samband",
+ "ownCloud Federation allows you to connect with other trusted ownClouds to exchange the user directory. For example this will be used to auto-complete external users for federated sharing." : "ownCloud-samband (federation) gerir þér kleift að tengjast öðrumtreystum ownCloud-skýjum til að skiptast á notendaskrám. Þetta er til dæmis notað til að sjálfklára nöfn ytri notenda við deilingu sambandssameigna.",
+ "Add server automatically once a federated share was created successfully" : "Bæta þjóni við sjálfkrafa, hafi tekist að búa til sambandssameign",
"Trusted ownCloud Servers" : "Treystir ownCloud-þjónar",
"+ Add ownCloud server" : "+ Bæta við ownCloud-þjóni",
"ownCloud Server" : "ownCloud-þjónn"
diff --git a/apps/files/controller/apicontroller.php b/apps/files/controller/apicontroller.php
index 43abf2ff458..ad286284386 100644
--- a/apps/files/controller/apicontroller.php
+++ b/apps/files/controller/apicontroller.php
@@ -177,7 +177,8 @@ class ApiController extends Controller {
$requestedShareTypes = [
\OCP\Share::SHARE_TYPE_USER,
\OCP\Share::SHARE_TYPE_GROUP,
- \OCP\Share::SHARE_TYPE_LINK
+ \OCP\Share::SHARE_TYPE_LINK,
+ \OCP\Share::SHARE_TYPE_REMOTE
];
foreach ($requestedShareTypes as $requestedShareType) {
// one of each type is enough to find out about the types
diff --git a/apps/files/css/files.css b/apps/files/css/files.css
index bfa5340fe09..d20ab102ba5 100644
--- a/apps/files/css/files.css
+++ b/apps/files/css/files.css
@@ -468,6 +468,7 @@ html.ie8 #fileList tr.selected td.filename>.selectCheckBox {
position: relative;
width: 100%;
padding-left: 0;
+ padding-right:0;
-webkit-transition:background-image 500ms; -moz-transition:background-image 500ms; -o-transition:background-image 500ms; transition:background-image 500ms;
}
@@ -572,13 +573,26 @@ html.ie8 .column-mtime .selectedActions {
opacity: 0;
display:none;
}
-#fileList a.action.action-share,
-#fileList a.action.action-menu {
+#fileList a.action.action-share {
padding: 17px 14px;
}
+#fileList a.action.action-menu {
+ padding-top: 17px;
+ padding-bottom: 17px;
+ padding-left:14px;
+ padding-right:0px;
+}
+
+#fileList .filesize {
+ padding-top:0px;
+ padding-bottom:0px;
+ padding-left:60px;
+ padding-right:15px;
+}
+
#fileList .popovermenu {
- margin-right: 21px;
+ margin-right: -5px;
}
.ie8 #fileList .popovermenu {
margin-top: -10px;
diff --git a/apps/files/js/filelist.js b/apps/files/js/filelist.js
index bfcc77d8999..842ec4aac73 100644
--- a/apps/files/js/filelist.js
+++ b/apps/files/js/filelist.js
@@ -271,7 +271,8 @@
this.updateSearch();
- this.$fileList.on('click','td.filename>a.name', _.bind(this._onClickFile, this));
+ this.$fileList.on('click','td.filename>a.name, td.filesize, td.date', _.bind(this._onClickFile, this));
+
this.$fileList.on('change', 'td.filename>.selectCheckBox', _.bind(this._onClickFileCheckbox, this));
this.$el.on('urlChanged', _.bind(this._onUrlChanged, this));
this.$el.find('.select-all').click(_.bind(this._onClickSelectAll, this));
diff --git a/apps/files/l10n/ar.js b/apps/files/l10n/ar.js
index 56489fe30e4..7330264e4e0 100644
--- a/apps/files/l10n/ar.js
+++ b/apps/files/l10n/ar.js
@@ -83,7 +83,6 @@ OC.L10N.register(
"Save" : "حفظ",
"Settings" : "إعدادات",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "استخدم هذا العنوان لـ <a href=\"%s\" target=\"_blank\">الدخول الى ملفاتك عن طريق WebDAV</a>",
"Cancel upload" : "إلغاء الرفع",
"No files in here" : "لا يوجد ملفات هنا ",
"Upload some content or sync with your devices!" : "ارفع بعض المحتوي او زامن مع اجهزتك !",
diff --git a/apps/files/l10n/ar.json b/apps/files/l10n/ar.json
index 697c9627397..281d546c515 100644
--- a/apps/files/l10n/ar.json
+++ b/apps/files/l10n/ar.json
@@ -81,7 +81,6 @@
"Save" : "حفظ",
"Settings" : "إعدادات",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "استخدم هذا العنوان لـ <a href=\"%s\" target=\"_blank\">الدخول الى ملفاتك عن طريق WebDAV</a>",
"Cancel upload" : "إلغاء الرفع",
"No files in here" : "لا يوجد ملفات هنا ",
"Upload some content or sync with your devices!" : "ارفع بعض المحتوي او زامن مع اجهزتك !",
diff --git a/apps/files/l10n/ast.js b/apps/files/l10n/ast.js
index 2262d23345e..7e5aba5a63b 100644
--- a/apps/files/l10n/ast.js
+++ b/apps/files/l10n/ast.js
@@ -92,7 +92,6 @@ OC.L10N.register(
"Save" : "Guardar",
"Settings" : "Axustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Usa esta direición <a href=\"%s\" target=\"_blank\">p'acceder a los ficheros a traviés de WebDAV</a>",
"Cancel upload" : "Encaboxar xuba",
"No files in here" : "Nun hai nengún ficheru equí",
"Upload some content or sync with your devices!" : "¡Xuba algún conteníu o sincroniza colos sos preseos!",
diff --git a/apps/files/l10n/ast.json b/apps/files/l10n/ast.json
index 53a2c6f8d86..f62ec31e0d8 100644
--- a/apps/files/l10n/ast.json
+++ b/apps/files/l10n/ast.json
@@ -90,7 +90,6 @@
"Save" : "Guardar",
"Settings" : "Axustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Usa esta direición <a href=\"%s\" target=\"_blank\">p'acceder a los ficheros a traviés de WebDAV</a>",
"Cancel upload" : "Encaboxar xuba",
"No files in here" : "Nun hai nengún ficheru equí",
"Upload some content or sync with your devices!" : "¡Xuba algún conteníu o sincroniza colos sos preseos!",
diff --git a/apps/files/l10n/az.js b/apps/files/l10n/az.js
index 57db9be81be..0adeb3b7a7d 100644
--- a/apps/files/l10n/az.js
+++ b/apps/files/l10n/az.js
@@ -89,7 +89,6 @@ OC.L10N.register(
"Save" : "Saxlamaq",
"Settings" : "Quraşdırmalar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Bu ünvanı <a href=\"%s\" target=\"_blank\">WebDAV vasitəsilə fayllarınızı əldə etmək üçün</a> istifadə edə bilərsiniz. ",
"Cancel upload" : "Yüklənməni dayandır",
"No files in here" : "Burda fayl yoxdur",
"Upload some content or sync with your devices!" : "Bezi kontenti yüklə yada, öz avadanlıqlarınızla sinxronizasiya edin!",
diff --git a/apps/files/l10n/az.json b/apps/files/l10n/az.json
index e1539015a83..cc98d275ed0 100644
--- a/apps/files/l10n/az.json
+++ b/apps/files/l10n/az.json
@@ -87,7 +87,6 @@
"Save" : "Saxlamaq",
"Settings" : "Quraşdırmalar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Bu ünvanı <a href=\"%s\" target=\"_blank\">WebDAV vasitəsilə fayllarınızı əldə etmək üçün</a> istifadə edə bilərsiniz. ",
"Cancel upload" : "Yüklənməni dayandır",
"No files in here" : "Burda fayl yoxdur",
"Upload some content or sync with your devices!" : "Bezi kontenti yüklə yada, öz avadanlıqlarınızla sinxronizasiya edin!",
diff --git a/apps/files/l10n/bg_BG.js b/apps/files/l10n/bg_BG.js
index dcc4508e2e2..9e6abe1e554 100644
--- a/apps/files/l10n/bg_BG.js
+++ b/apps/files/l10n/bg_BG.js
@@ -81,7 +81,6 @@ OC.L10N.register(
"Save" : "Запис",
"Settings" : "Настройки",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Използвай този адрес, за да получиш <a href=\"%s\" target=\"_blank\">достъп до своите файлове чрез WebDAV</a>.",
"Cancel upload" : "Отказване на качването",
"No files in here" : "Тук няма файлове",
"Upload some content or sync with your devices!" : "Качи съдържание или синхронизирай с твоите устройства!",
diff --git a/apps/files/l10n/bg_BG.json b/apps/files/l10n/bg_BG.json
index 88370db84f7..20a146fdf24 100644
--- a/apps/files/l10n/bg_BG.json
+++ b/apps/files/l10n/bg_BG.json
@@ -79,7 +79,6 @@
"Save" : "Запис",
"Settings" : "Настройки",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Използвай този адрес, за да получиш <a href=\"%s\" target=\"_blank\">достъп до своите файлове чрез WebDAV</a>.",
"Cancel upload" : "Отказване на качването",
"No files in here" : "Тук няма файлове",
"Upload some content or sync with your devices!" : "Качи съдържание или синхронизирай с твоите устройства!",
diff --git a/apps/files/l10n/bs.js b/apps/files/l10n/bs.js
index a164132aeff..285808e77bc 100644
--- a/apps/files/l10n/bs.js
+++ b/apps/files/l10n/bs.js
@@ -64,7 +64,6 @@ OC.L10N.register(
"Save" : "Spasi",
"Settings" : "Postavke",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Koristi slijedeću adresu za <a href=\"%s\" target=\"_blank\">pristup vašim datotekama putem WebDAV-a</a>",
"Cancel upload" : "Prekini učitavanje",
"Upload some content or sync with your devices!" : "Učitaj neki sadržaj ili sinhronizuj sa tvojim uređajima!",
"Select all" : "Označi sve",
diff --git a/apps/files/l10n/bs.json b/apps/files/l10n/bs.json
index 3e7bb70cee8..dfe4b910b42 100644
--- a/apps/files/l10n/bs.json
+++ b/apps/files/l10n/bs.json
@@ -62,7 +62,6 @@
"Save" : "Spasi",
"Settings" : "Postavke",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Koristi slijedeću adresu za <a href=\"%s\" target=\"_blank\">pristup vašim datotekama putem WebDAV-a</a>",
"Cancel upload" : "Prekini učitavanje",
"Upload some content or sync with your devices!" : "Učitaj neki sadržaj ili sinhronizuj sa tvojim uređajima!",
"Select all" : "Označi sve",
diff --git a/apps/files/l10n/ca.js b/apps/files/l10n/ca.js
index 70626bb1ffa..c3c16103ada 100644
--- a/apps/files/l10n/ca.js
+++ b/apps/files/l10n/ca.js
@@ -84,7 +84,6 @@ OC.L10N.register(
"Save" : "Desa",
"Settings" : "Arranjament",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Useu aquesta adreça per <a href=\"%s\" target=\"_blank\">accedir als fitxers via WebDAV</a>",
"Cancel upload" : "Cancel·la la pujada",
"No files in here" : "No hi ha arxius",
"Upload some content or sync with your devices!" : "Pugi continguts o sincronitzi els seus dispositius.",
diff --git a/apps/files/l10n/ca.json b/apps/files/l10n/ca.json
index 3a9dae4e75e..a2b5da56dfd 100644
--- a/apps/files/l10n/ca.json
+++ b/apps/files/l10n/ca.json
@@ -82,7 +82,6 @@
"Save" : "Desa",
"Settings" : "Arranjament",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Useu aquesta adreça per <a href=\"%s\" target=\"_blank\">accedir als fitxers via WebDAV</a>",
"Cancel upload" : "Cancel·la la pujada",
"No files in here" : "No hi ha arxius",
"Upload some content or sync with your devices!" : "Pugi continguts o sincronitzi els seus dispositius.",
diff --git a/apps/files/l10n/cs_CZ.js b/apps/files/l10n/cs_CZ.js
index 1b89c48b129..536b5cdf935 100644
--- a/apps/files/l10n/cs_CZ.js
+++ b/apps/files/l10n/cs_CZ.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Pro úpravy v aktuálním náhledu chybí oprávnění.",
"Settings" : "Nastavení",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Použijte tuto adresu pro <a href=\"%s\" target=\"_blank\">přístup k vašim souborům přes WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Použijte tuto adresu pro <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">přístup k vašim Souborům přes WebDAV</a>",
"Cancel upload" : "Zrušit odesílání",
"No files in here" : "Žádné soubory",
"Upload some content or sync with your devices!" : "Nahrajte nějaký obsah nebo synchronizujte se svými přístroji!",
diff --git a/apps/files/l10n/cs_CZ.json b/apps/files/l10n/cs_CZ.json
index b307053d449..da4fb78b53b 100644
--- a/apps/files/l10n/cs_CZ.json
+++ b/apps/files/l10n/cs_CZ.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Pro úpravy v aktuálním náhledu chybí oprávnění.",
"Settings" : "Nastavení",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Použijte tuto adresu pro <a href=\"%s\" target=\"_blank\">přístup k vašim souborům přes WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Použijte tuto adresu pro <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">přístup k vašim Souborům přes WebDAV</a>",
"Cancel upload" : "Zrušit odesílání",
"No files in here" : "Žádné soubory",
"Upload some content or sync with your devices!" : "Nahrajte nějaký obsah nebo synchronizujte se svými přístroji!",
diff --git a/apps/files/l10n/da.js b/apps/files/l10n/da.js
index 6b406fed534..4140968615a 100644
--- a/apps/files/l10n/da.js
+++ b/apps/files/l10n/da.js
@@ -92,7 +92,6 @@ OC.L10N.register(
"Save" : "Gem",
"Settings" : "Indstillinger",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Brug denne adresse for at <a href=\"%s\" target=\"_blank\">tilgå dine filer via WebDAV</a>",
"Cancel upload" : "Fortryd upload",
"No files in here" : "Her er ingen filer",
"Upload some content or sync with your devices!" : "Overfør indhold eller synkronisér med dine enheder!",
diff --git a/apps/files/l10n/da.json b/apps/files/l10n/da.json
index e186674656c..8f445197f08 100644
--- a/apps/files/l10n/da.json
+++ b/apps/files/l10n/da.json
@@ -90,7 +90,6 @@
"Save" : "Gem",
"Settings" : "Indstillinger",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Brug denne adresse for at <a href=\"%s\" target=\"_blank\">tilgå dine filer via WebDAV</a>",
"Cancel upload" : "Fortryd upload",
"No files in here" : "Her er ingen filer",
"Upload some content or sync with your devices!" : "Overfør indhold eller synkronisér med dine enheder!",
diff --git a/apps/files/l10n/de.js b/apps/files/l10n/de.js
index d0ee9192669..cacf45af388 100644
--- a/apps/files/l10n/de.js
+++ b/apps/files/l10n/de.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Fehlende Berechtigungen um von hier aus zu bearbeiten.",
"Settings" : "Einstellungen",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Benutze diese Adresse, um <a href=\"%s\" target=\"_blank\">über WebDAV auf Deine Dateien zuzugreifen</a>",
"Cancel upload" : "Upload abbrechen",
"No files in here" : "Keine Dateien vorhanden",
"Upload some content or sync with your devices!" : "Lade Inhalte hoch oder synchronisiere mit Deinen Geräten!",
diff --git a/apps/files/l10n/de.json b/apps/files/l10n/de.json
index 51120ebec0b..7f325e8d966 100644
--- a/apps/files/l10n/de.json
+++ b/apps/files/l10n/de.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Fehlende Berechtigungen um von hier aus zu bearbeiten.",
"Settings" : "Einstellungen",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Benutze diese Adresse, um <a href=\"%s\" target=\"_blank\">über WebDAV auf Deine Dateien zuzugreifen</a>",
"Cancel upload" : "Upload abbrechen",
"No files in here" : "Keine Dateien vorhanden",
"Upload some content or sync with your devices!" : "Lade Inhalte hoch oder synchronisiere mit Deinen Geräten!",
diff --git a/apps/files/l10n/de_DE.js b/apps/files/l10n/de_DE.js
index d8472cbc459..9505896a9c1 100644
--- a/apps/files/l10n/de_DE.js
+++ b/apps/files/l10n/de_DE.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Fehlende Berechtigungen um von hier aus zu bearbeiten.",
"Settings" : "Einstellungen",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Benutzen Sie diese Adresse, um <a href=\"%s\" target=\"_blank\">über WebDAV auf Ihre Dateien zuzugreifen</a>",
"Cancel upload" : "Upload abbrechen",
"No files in here" : "Keine Dateien vorhanden",
"Upload some content or sync with your devices!" : "Laden Sie Inhalte hoch oder synchronisieren Sie mit Ihren Geräten!",
diff --git a/apps/files/l10n/de_DE.json b/apps/files/l10n/de_DE.json
index 0ec7dea0e86..82d568bc3a8 100644
--- a/apps/files/l10n/de_DE.json
+++ b/apps/files/l10n/de_DE.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Fehlende Berechtigungen um von hier aus zu bearbeiten.",
"Settings" : "Einstellungen",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Benutzen Sie diese Adresse, um <a href=\"%s\" target=\"_blank\">über WebDAV auf Ihre Dateien zuzugreifen</a>",
"Cancel upload" : "Upload abbrechen",
"No files in here" : "Keine Dateien vorhanden",
"Upload some content or sync with your devices!" : "Laden Sie Inhalte hoch oder synchronisieren Sie mit Ihren Geräten!",
diff --git a/apps/files/l10n/el.js b/apps/files/l10n/el.js
index 20b57e415b0..7b65dbc90a6 100644
--- a/apps/files/l10n/el.js
+++ b/apps/files/l10n/el.js
@@ -101,7 +101,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Δεν υπάρχουν τα απαραίτητα δικαιώματα για να γίνει τροποποιήση σε αυτό το σημείο.",
"Settings" : "Ρυθμίσεις",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Χρησιμοποιήστε αυτήν την διεύθυνση για να αποκτήσετε <a href=\"%s\" target=\"_blank\">πρόσβαση στα αρχεία σας μέσω WebDAV</a>",
"Cancel upload" : "Ακύρωση μεταφόρτωσης",
"No files in here" : "Δεν υπάρχουν αρχεία",
"Upload some content or sync with your devices!" : "Μεταφόρτωση περιεχομένου ή συγχρονισμός με τις συσκευές σας!",
diff --git a/apps/files/l10n/el.json b/apps/files/l10n/el.json
index 849b0ee8a09..982dc0c97c9 100644
--- a/apps/files/l10n/el.json
+++ b/apps/files/l10n/el.json
@@ -99,7 +99,6 @@
"Missing permissions to edit from here." : "Δεν υπάρχουν τα απαραίτητα δικαιώματα για να γίνει τροποποιήση σε αυτό το σημείο.",
"Settings" : "Ρυθμίσεις",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Χρησιμοποιήστε αυτήν την διεύθυνση για να αποκτήσετε <a href=\"%s\" target=\"_blank\">πρόσβαση στα αρχεία σας μέσω WebDAV</a>",
"Cancel upload" : "Ακύρωση μεταφόρτωσης",
"No files in here" : "Δεν υπάρχουν αρχεία",
"Upload some content or sync with your devices!" : "Μεταφόρτωση περιεχομένου ή συγχρονισμός με τις συσκευές σας!",
diff --git a/apps/files/l10n/en_GB.js b/apps/files/l10n/en_GB.js
index f15fa7e49ad..c9fd96ea507 100644
--- a/apps/files/l10n/en_GB.js
+++ b/apps/files/l10n/en_GB.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Missing permissions to edit from here.",
"Settings" : "Settings",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>",
"Cancel upload" : "Cancel upload",
"No files in here" : "No files in here",
"Upload some content or sync with your devices!" : "Upload some content or sync with your devices!",
diff --git a/apps/files/l10n/en_GB.json b/apps/files/l10n/en_GB.json
index 5606b0c2c7f..172f49cfc38 100644
--- a/apps/files/l10n/en_GB.json
+++ b/apps/files/l10n/en_GB.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Missing permissions to edit from here.",
"Settings" : "Settings",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>",
"Cancel upload" : "Cancel upload",
"No files in here" : "No files in here",
"Upload some content or sync with your devices!" : "Upload some content or sync with your devices!",
diff --git a/apps/files/l10n/eo.js b/apps/files/l10n/eo.js
index 5125d42feda..d0463d0ac10 100644
--- a/apps/files/l10n/eo.js
+++ b/apps/files/l10n/eo.js
@@ -102,7 +102,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Mankas permesoj por redakti ekde ĉi tie.",
"Settings" : "Agordo",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Uzu ĉi tiun adreson por <a href=\"%s\" target=\"_blank\">aliri viajn Dosierojn per WebDAV</a>",
"Cancel upload" : "Nuligi alŝuton",
"No files in here" : "Neniu dosiero estas ĉi tie",
"Upload some content or sync with your devices!" : "Alŝutu iom da enhavo aŭ sinkronigu kun viaj aparatoj!",
diff --git a/apps/files/l10n/eo.json b/apps/files/l10n/eo.json
index 7328acdef42..743d146699e 100644
--- a/apps/files/l10n/eo.json
+++ b/apps/files/l10n/eo.json
@@ -100,7 +100,6 @@
"Missing permissions to edit from here." : "Mankas permesoj por redakti ekde ĉi tie.",
"Settings" : "Agordo",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Uzu ĉi tiun adreson por <a href=\"%s\" target=\"_blank\">aliri viajn Dosierojn per WebDAV</a>",
"Cancel upload" : "Nuligi alŝuton",
"No files in here" : "Neniu dosiero estas ĉi tie",
"Upload some content or sync with your devices!" : "Alŝutu iom da enhavo aŭ sinkronigu kun viaj aparatoj!",
diff --git a/apps/files/l10n/es.js b/apps/files/l10n/es.js
index f88135163c2..79f0e955d28 100644
--- a/apps/files/l10n/es.js
+++ b/apps/files/l10n/es.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Faltan permisos para poder editar desde aquí.",
"Settings" : "Ajustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Use esta URL <a href=\"%s\" target=\"_blank\">para acceder via WebDAV</a>",
"Cancel upload" : "Cancelar la subida",
"No files in here" : "Aquí no hay archivos",
"Upload some content or sync with your devices!" : "Suba contenidos o sincronice sus dispositivos.",
diff --git a/apps/files/l10n/es.json b/apps/files/l10n/es.json
index fe135f765ce..4281aa2ca2f 100644
--- a/apps/files/l10n/es.json
+++ b/apps/files/l10n/es.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Faltan permisos para poder editar desde aquí.",
"Settings" : "Ajustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Use esta URL <a href=\"%s\" target=\"_blank\">para acceder via WebDAV</a>",
"Cancel upload" : "Cancelar la subida",
"No files in here" : "Aquí no hay archivos",
"Upload some content or sync with your devices!" : "Suba contenidos o sincronice sus dispositivos.",
diff --git a/apps/files/l10n/es_AR.js b/apps/files/l10n/es_AR.js
index bd4504592f1..7a5df7542e3 100644
--- a/apps/files/l10n/es_AR.js
+++ b/apps/files/l10n/es_AR.js
@@ -70,7 +70,6 @@ OC.L10N.register(
"Save" : "Guardar",
"Settings" : "Configuración",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Usar esta dirección para <a href=\"%s\" target=\"_blank\">acceder a tus archivos vía WebDAV</a>",
"Cancel upload" : "Cancelar subida",
"Upload too large" : "El tamaño del archivo que querés subir es demasiado grande",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Los archivos que intentás subir sobrepasan el tamaño máximo ",
diff --git a/apps/files/l10n/es_AR.json b/apps/files/l10n/es_AR.json
index 81898bf489d..03a0007c477 100644
--- a/apps/files/l10n/es_AR.json
+++ b/apps/files/l10n/es_AR.json
@@ -68,7 +68,6 @@
"Save" : "Guardar",
"Settings" : "Configuración",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Usar esta dirección para <a href=\"%s\" target=\"_blank\">acceder a tus archivos vía WebDAV</a>",
"Cancel upload" : "Cancelar subida",
"Upload too large" : "El tamaño del archivo que querés subir es demasiado grande",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Los archivos que intentás subir sobrepasan el tamaño máximo ",
diff --git a/apps/files/l10n/es_MX.js b/apps/files/l10n/es_MX.js
index 780c206c622..3eb1c68b888 100644
--- a/apps/files/l10n/es_MX.js
+++ b/apps/files/l10n/es_MX.js
@@ -56,7 +56,6 @@ OC.L10N.register(
"Save" : "Guardar",
"Settings" : "Ajustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilice esta dirección para <a href=\"%s\" target=\"_blank\">acceder a sus archivos vía WebDAV</a>",
"Cancel upload" : "Cancelar subida",
"Upload too large" : "Subida demasido grande",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Los archivos que estás intentando subir sobrepasan el tamaño máximo permitido en este servidor.",
diff --git a/apps/files/l10n/es_MX.json b/apps/files/l10n/es_MX.json
index 17d5cb74e87..644ae02a3b5 100644
--- a/apps/files/l10n/es_MX.json
+++ b/apps/files/l10n/es_MX.json
@@ -54,7 +54,6 @@
"Save" : "Guardar",
"Settings" : "Ajustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilice esta dirección para <a href=\"%s\" target=\"_blank\">acceder a sus archivos vía WebDAV</a>",
"Cancel upload" : "Cancelar subida",
"Upload too large" : "Subida demasido grande",
"The files you are trying to upload exceed the maximum size for file uploads on this server." : "Los archivos que estás intentando subir sobrepasan el tamaño máximo permitido en este servidor.",
diff --git a/apps/files/l10n/et_EE.js b/apps/files/l10n/et_EE.js
index 5c59cf614b7..ab205b5ecf9 100644
--- a/apps/files/l10n/et_EE.js
+++ b/apps/files/l10n/et_EE.js
@@ -92,7 +92,6 @@ OC.L10N.register(
"Save" : "Salvesta",
"Settings" : "Seaded",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Kasuta seda aadressi <a href=\"%s\" target=\"_blank\">oma failidele ligipääsuks WebDAV kaudu</a>",
"Cancel upload" : "Tühista üleslaadimine",
"No files in here" : "Siin ei ole faile",
"Upload some content or sync with your devices!" : "Laadi sisu üles või süngi oma seadmetega!",
diff --git a/apps/files/l10n/et_EE.json b/apps/files/l10n/et_EE.json
index f438d07cdc8..15881c2a853 100644
--- a/apps/files/l10n/et_EE.json
+++ b/apps/files/l10n/et_EE.json
@@ -90,7 +90,6 @@
"Save" : "Salvesta",
"Settings" : "Seaded",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Kasuta seda aadressi <a href=\"%s\" target=\"_blank\">oma failidele ligipääsuks WebDAV kaudu</a>",
"Cancel upload" : "Tühista üleslaadimine",
"No files in here" : "Siin ei ole faile",
"Upload some content or sync with your devices!" : "Laadi sisu üles või süngi oma seadmetega!",
diff --git a/apps/files/l10n/eu.js b/apps/files/l10n/eu.js
index 16d681ebeab..cb4f4486b15 100644
--- a/apps/files/l10n/eu.js
+++ b/apps/files/l10n/eu.js
@@ -79,7 +79,6 @@ OC.L10N.register(
"Save" : "Gorde",
"Settings" : "Ezarpenak",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "<a href=\"%s\" target=\"_blank\">helbidea erabili zure fitxategiak WebDAV bidez eskuratzeko</a>",
"Cancel upload" : "Ezeztatu igoera",
"Upload some content or sync with your devices!" : "Igo edukiren bat edo sinkronizatu zure gailuekin!",
"No entries found in this folder" : "Ez da sarrerarik aurkitu karpeta honetan",
diff --git a/apps/files/l10n/eu.json b/apps/files/l10n/eu.json
index f23d06bb5db..956e25a4a91 100644
--- a/apps/files/l10n/eu.json
+++ b/apps/files/l10n/eu.json
@@ -77,7 +77,6 @@
"Save" : "Gorde",
"Settings" : "Ezarpenak",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "<a href=\"%s\" target=\"_blank\">helbidea erabili zure fitxategiak WebDAV bidez eskuratzeko</a>",
"Cancel upload" : "Ezeztatu igoera",
"Upload some content or sync with your devices!" : "Igo edukiren bat edo sinkronizatu zure gailuekin!",
"No entries found in this folder" : "Ez da sarrerarik aurkitu karpeta honetan",
diff --git a/apps/files/l10n/fa.js b/apps/files/l10n/fa.js
index 0d6086e0900..9d5e5d46c27 100644
--- a/apps/files/l10n/fa.js
+++ b/apps/files/l10n/fa.js
@@ -90,7 +90,6 @@ OC.L10N.register(
"Save" : "ذخیره",
"Settings" : "تنظیمات",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "از این آدرس استفاده کنید تا <a href=\"%s\" target=\"_blank\">بتوانید به فایل‌های خود توسط WebDAV دسترسی پیدا کنید</a>",
"Cancel upload" : "متوقف کردن بار گذاری",
"No files in here" : "هیچ فایلی اینجا وجود ندارد",
"Upload some content or sync with your devices!" : "محتوایی را آپلود کنید یا با دستگاه خود همگام‌سازی کنید!",
diff --git a/apps/files/l10n/fa.json b/apps/files/l10n/fa.json
index 109dfbdb585..53015919436 100644
--- a/apps/files/l10n/fa.json
+++ b/apps/files/l10n/fa.json
@@ -88,7 +88,6 @@
"Save" : "ذخیره",
"Settings" : "تنظیمات",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "از این آدرس استفاده کنید تا <a href=\"%s\" target=\"_blank\">بتوانید به فایل‌های خود توسط WebDAV دسترسی پیدا کنید</a>",
"Cancel upload" : "متوقف کردن بار گذاری",
"No files in here" : "هیچ فایلی اینجا وجود ندارد",
"Upload some content or sync with your devices!" : "محتوایی را آپلود کنید یا با دستگاه خود همگام‌سازی کنید!",
diff --git a/apps/files/l10n/fi_FI.js b/apps/files/l10n/fi_FI.js
index ba63b927655..7294495787f 100644
--- a/apps/files/l10n/fi_FI.js
+++ b/apps/files/l10n/fi_FI.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Käyttöoikeudet eivät riitä tätä kautta muokkaamiseen.",
"Settings" : "Asetukset",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Käytä tätä osoitetta <a href=\"%s\" target=\"_blank\">käyttääksesi tiedostojasi WebDAVin kautta</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Käytä tätä osoitetta <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">päästäksesi tiedostoihisi WebDAV-liittymän kautta</a>",
"Cancel upload" : "Peru lähetys",
"No files in here" : "Täällä ei ole tiedostoja",
"Upload some content or sync with your devices!" : "Lähetä tiedostoja tai synkronoi sisältö laitteidesi kanssa!",
diff --git a/apps/files/l10n/fi_FI.json b/apps/files/l10n/fi_FI.json
index bfcc08aaa77..429845bb4ac 100644
--- a/apps/files/l10n/fi_FI.json
+++ b/apps/files/l10n/fi_FI.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Käyttöoikeudet eivät riitä tätä kautta muokkaamiseen.",
"Settings" : "Asetukset",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Käytä tätä osoitetta <a href=\"%s\" target=\"_blank\">käyttääksesi tiedostojasi WebDAVin kautta</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Käytä tätä osoitetta <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">päästäksesi tiedostoihisi WebDAV-liittymän kautta</a>",
"Cancel upload" : "Peru lähetys",
"No files in here" : "Täällä ei ole tiedostoja",
"Upload some content or sync with your devices!" : "Lähetä tiedostoja tai synkronoi sisältö laitteidesi kanssa!",
diff --git a/apps/files/l10n/fr.js b/apps/files/l10n/fr.js
index bc88d62fb20..12497c4dbe1 100644
--- a/apps/files/l10n/fr.js
+++ b/apps/files/l10n/fr.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Manque de permissions pour éditer à partir d'ici.",
"Settings" : "Paramètres",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilisez cette adresse pour <a href=\"%s\" target=\"_blank\">accéder à vos fichiers par WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Utilisez cette adresse pour <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">accéder à vos fichiers par WebDAV</a>",
"Cancel upload" : "Annuler l'envoi",
"No files in here" : "Aucun fichier",
"Upload some content or sync with your devices!" : "Déposez du contenu ou synchronisez vos appareils !",
diff --git a/apps/files/l10n/fr.json b/apps/files/l10n/fr.json
index b3d28f92a47..679d170b2ad 100644
--- a/apps/files/l10n/fr.json
+++ b/apps/files/l10n/fr.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Manque de permissions pour éditer à partir d'ici.",
"Settings" : "Paramètres",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilisez cette adresse pour <a href=\"%s\" target=\"_blank\">accéder à vos fichiers par WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Utilisez cette adresse pour <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">accéder à vos fichiers par WebDAV</a>",
"Cancel upload" : "Annuler l'envoi",
"No files in here" : "Aucun fichier",
"Upload some content or sync with your devices!" : "Déposez du contenu ou synchronisez vos appareils !",
diff --git a/apps/files/l10n/gl.js b/apps/files/l10n/gl.js
index e463ef16b3d..e02df778102 100644
--- a/apps/files/l10n/gl.js
+++ b/apps/files/l10n/gl.js
@@ -88,7 +88,6 @@ OC.L10N.register(
"Save" : "Gardar",
"Settings" : "Axustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Empregue esta ligazón para <a href=\"%s\" target=\"_blank\">acceder aos seus ficheiros mediante WebDAV</a>",
"Cancel upload" : "Cancelar o envío",
"No files in here" : "Aquí non hai ficheiros",
"Upload some content or sync with your devices!" : "Envíe algún contido ou sincronice cos seus dispositivos!",
diff --git a/apps/files/l10n/gl.json b/apps/files/l10n/gl.json
index 418767c5167..2add4f99144 100644
--- a/apps/files/l10n/gl.json
+++ b/apps/files/l10n/gl.json
@@ -86,7 +86,6 @@
"Save" : "Gardar",
"Settings" : "Axustes",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Empregue esta ligazón para <a href=\"%s\" target=\"_blank\">acceder aos seus ficheiros mediante WebDAV</a>",
"Cancel upload" : "Cancelar o envío",
"No files in here" : "Aquí non hai ficheiros",
"Upload some content or sync with your devices!" : "Envíe algún contido ou sincronice cos seus dispositivos!",
diff --git a/apps/files/l10n/he.js b/apps/files/l10n/he.js
index 74f54deb76e..138e474f307 100644
--- a/apps/files/l10n/he.js
+++ b/apps/files/l10n/he.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "חסרות הרשאות לעריכה מכאן.",
"Settings" : "הגדרות",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "השתמש בכתובת זו לצורך <a href=\"%s\" target=\"_blank\">כניסה אל הקבצים שלך בעזרת WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "ניתן להשתמש בכתובת זו כדי <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">להכנס לקבצים שלך באמצעות WebDAV</a>",
"Cancel upload" : "ביטול ההעלאה",
"No files in here" : "אין כאן קבצים",
"Upload some content or sync with your devices!" : "יש להעלות קצת תוכן או לסנכרן עם ההתקנים שלך!",
diff --git a/apps/files/l10n/he.json b/apps/files/l10n/he.json
index 8f45d4c851b..fbe71b5bf4a 100644
--- a/apps/files/l10n/he.json
+++ b/apps/files/l10n/he.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "חסרות הרשאות לעריכה מכאן.",
"Settings" : "הגדרות",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "השתמש בכתובת זו לצורך <a href=\"%s\" target=\"_blank\">כניסה אל הקבצים שלך בעזרת WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "ניתן להשתמש בכתובת זו כדי <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">להכנס לקבצים שלך באמצעות WebDAV</a>",
"Cancel upload" : "ביטול ההעלאה",
"No files in here" : "אין כאן קבצים",
"Upload some content or sync with your devices!" : "יש להעלות קצת תוכן או לסנכרן עם ההתקנים שלך!",
diff --git a/apps/files/l10n/hr.js b/apps/files/l10n/hr.js
index 746ee8ded91..906ed19d22f 100644
--- a/apps/files/l10n/hr.js
+++ b/apps/files/l10n/hr.js
@@ -79,7 +79,6 @@ OC.L10N.register(
"Save" : "Spremite",
"Settings" : "Postavke",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Koristitet slijedeću adresu za <a href=\"%s\" target=\"_blank\">pristup vašim datotekama putem WebDAV-a</a>",
"Cancel upload" : "Prekini upload",
"Upload some content or sync with your devices!" : "Aplodujte neki sadrzaj ili sinkronizirajte sa vasim uredjajem!",
"No entries found in this folder" : "Zapis nije pronadjen u ovom direktorijumu ",
diff --git a/apps/files/l10n/hr.json b/apps/files/l10n/hr.json
index 35bc43df7e0..950dcee3471 100644
--- a/apps/files/l10n/hr.json
+++ b/apps/files/l10n/hr.json
@@ -77,7 +77,6 @@
"Save" : "Spremite",
"Settings" : "Postavke",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Koristitet slijedeću adresu za <a href=\"%s\" target=\"_blank\">pristup vašim datotekama putem WebDAV-a</a>",
"Cancel upload" : "Prekini upload",
"Upload some content or sync with your devices!" : "Aplodujte neki sadrzaj ili sinkronizirajte sa vasim uredjajem!",
"No entries found in this folder" : "Zapis nije pronadjen u ovom direktorijumu ",
diff --git a/apps/files/l10n/hu_HU.js b/apps/files/l10n/hu_HU.js
index 0ea1a02d594..304457a9f5e 100644
--- a/apps/files/l10n/hu_HU.js
+++ b/apps/files/l10n/hu_HU.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Innen nem lehet szerkeszteni hiányzó jogosultság miatt.",
"Settings" : "Beállítások",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Ezt a címet használja, ha <a href=\"%s\" target=\"_blank\">WebDAV-on keresztül szeretné elérni a fájljait</a>",
"Cancel upload" : "A feltöltés megszakítása",
"No files in here" : "Itt nincsenek fájlok",
"Upload some content or sync with your devices!" : "Tölts fel néhány tartalmat, vagy szinkronizálj az eszközöddel!",
diff --git a/apps/files/l10n/hu_HU.json b/apps/files/l10n/hu_HU.json
index 69314709c39..b39080d9cd6 100644
--- a/apps/files/l10n/hu_HU.json
+++ b/apps/files/l10n/hu_HU.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Innen nem lehet szerkeszteni hiányzó jogosultság miatt.",
"Settings" : "Beállítások",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Ezt a címet használja, ha <a href=\"%s\" target=\"_blank\">WebDAV-on keresztül szeretné elérni a fájljait</a>",
"Cancel upload" : "A feltöltés megszakítása",
"No files in here" : "Itt nincsenek fájlok",
"Upload some content or sync with your devices!" : "Tölts fel néhány tartalmat, vagy szinkronizálj az eszközöddel!",
diff --git a/apps/files/l10n/id.js b/apps/files/l10n/id.js
index c67a74e43da..fbf6df463d0 100644
--- a/apps/files/l10n/id.js
+++ b/apps/files/l10n/id.js
@@ -92,7 +92,6 @@ OC.L10N.register(
"Save" : "Simpan",
"Settings" : "Pengaturan",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Gunakan alamat ini untuk <a href=\"%s\" target=\"_blank\">mengakses Berkas via WebDAV</a>",
"Cancel upload" : "Batal unggah",
"No files in here" : "Tidak ada berkas disini",
"Upload some content or sync with your devices!" : "Unggah beberapa konten dan sinkronisasikan dengan perangkat Anda!",
diff --git a/apps/files/l10n/id.json b/apps/files/l10n/id.json
index 68f01e0393a..230c204fc67 100644
--- a/apps/files/l10n/id.json
+++ b/apps/files/l10n/id.json
@@ -90,7 +90,6 @@
"Save" : "Simpan",
"Settings" : "Pengaturan",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Gunakan alamat ini untuk <a href=\"%s\" target=\"_blank\">mengakses Berkas via WebDAV</a>",
"Cancel upload" : "Batal unggah",
"No files in here" : "Tidak ada berkas disini",
"Upload some content or sync with your devices!" : "Unggah beberapa konten dan sinkronisasikan dengan perangkat Anda!",
diff --git a/apps/files/l10n/is.js b/apps/files/l10n/is.js
index ff30045d6f7..1a2fe2dd914 100644
--- a/apps/files/l10n/is.js
+++ b/apps/files/l10n/is.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Vantar heimildir til að breyta einhverju héðan.",
"Settings" : "Stillingar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Notaðu þetta vistfang til að <a href=\"%s\" target=\"_blank\">nálgast skrárnar þínar með WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Notaðu þetta vistfang til að <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">nálgast skrárnar þínar með WebDAV</a>",
"Cancel upload" : "Hætta við innsendingu",
"No files in here" : "Engar skrár hér",
"Upload some content or sync with your devices!" : "Sendu inn eitthvað efni eða samstilltu við tækin þín!",
diff --git a/apps/files/l10n/is.json b/apps/files/l10n/is.json
index 2d7cafdf4c0..4f7c3822c0f 100644
--- a/apps/files/l10n/is.json
+++ b/apps/files/l10n/is.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Vantar heimildir til að breyta einhverju héðan.",
"Settings" : "Stillingar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Notaðu þetta vistfang til að <a href=\"%s\" target=\"_blank\">nálgast skrárnar þínar með WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Notaðu þetta vistfang til að <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">nálgast skrárnar þínar með WebDAV</a>",
"Cancel upload" : "Hætta við innsendingu",
"No files in here" : "Engar skrár hér",
"Upload some content or sync with your devices!" : "Sendu inn eitthvað efni eða samstilltu við tækin þín!",
diff --git a/apps/files/l10n/it.js b/apps/files/l10n/it.js
index e6072997b2d..8041a8c2d72 100644
--- a/apps/files/l10n/it.js
+++ b/apps/files/l10n/it.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Permessi mancanti per modificare da qui.",
"Settings" : "Impostazioni",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilizza questo indirizzo per <a href=\"%s\" target=\"_blank\">accedere ai tuoi file con WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Utilizza questo indirizzo per <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">accedere ai tuoi file con WebDAV</a>",
"Cancel upload" : "Annulla caricamento",
"No files in here" : "Qui non c'è alcun file",
"Upload some content or sync with your devices!" : "Carica alcuni contenuti o sincronizza con i tuoi dispositivi!",
diff --git a/apps/files/l10n/it.json b/apps/files/l10n/it.json
index f81affd9038..473433f853a 100644
--- a/apps/files/l10n/it.json
+++ b/apps/files/l10n/it.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Permessi mancanti per modificare da qui.",
"Settings" : "Impostazioni",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilizza questo indirizzo per <a href=\"%s\" target=\"_blank\">accedere ai tuoi file con WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Utilizza questo indirizzo per <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">accedere ai tuoi file con WebDAV</a>",
"Cancel upload" : "Annulla caricamento",
"No files in here" : "Qui non c'è alcun file",
"Upload some content or sync with your devices!" : "Carica alcuni contenuti o sincronizza con i tuoi dispositivi!",
diff --git a/apps/files/l10n/ja.js b/apps/files/l10n/ja.js
index 4280375b46e..185a5d6d121 100644
--- a/apps/files/l10n/ja.js
+++ b/apps/files/l10n/ja.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "ここから編集するための権限がありません。",
"Settings" : "設定",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "<a href=\"%s\" target=\"_blank\">WebDAV経由でのファイルアクセス</a>にはこのアドレスを利用してください",
"Cancel upload" : "アップロードをキャンセル",
"No files in here" : "ファイルがありません",
"Upload some content or sync with your devices!" : "何かコンテンツをアップロードするか、デバイスからファイルを同期してください。",
diff --git a/apps/files/l10n/ja.json b/apps/files/l10n/ja.json
index 674a3155954..129e417962b 100644
--- a/apps/files/l10n/ja.json
+++ b/apps/files/l10n/ja.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "ここから編集するための権限がありません。",
"Settings" : "設定",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "<a href=\"%s\" target=\"_blank\">WebDAV経由でのファイルアクセス</a>にはこのアドレスを利用してください",
"Cancel upload" : "アップロードをキャンセル",
"No files in here" : "ファイルがありません",
"Upload some content or sync with your devices!" : "何かコンテンツをアップロードするか、デバイスからファイルを同期してください。",
diff --git a/apps/files/l10n/ko.js b/apps/files/l10n/ko.js
index 741a71405db..38e16404c30 100644
--- a/apps/files/l10n/ko.js
+++ b/apps/files/l10n/ko.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "여기에서 편집할 권한이 없습니다.",
"Settings" : "설정",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "WebDAV로 파일에 접근하려면 <a href=\"%s\" target=\"_blank\">이 주소를 사용하십시오</a>",
"Cancel upload" : "업로드 취소",
"No files in here" : "여기에 파일 없음",
"Upload some content or sync with your devices!" : "파일을 업로드하거나 장치와 동기화하십시오!",
diff --git a/apps/files/l10n/ko.json b/apps/files/l10n/ko.json
index fa7e7f06c90..1702efc58fa 100644
--- a/apps/files/l10n/ko.json
+++ b/apps/files/l10n/ko.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "여기에서 편집할 권한이 없습니다.",
"Settings" : "설정",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "WebDAV로 파일에 접근하려면 <a href=\"%s\" target=\"_blank\">이 주소를 사용하십시오</a>",
"Cancel upload" : "업로드 취소",
"No files in here" : "여기에 파일 없음",
"Upload some content or sync with your devices!" : "파일을 업로드하거나 장치와 동기화하십시오!",
diff --git a/apps/files/l10n/lt_LT.js b/apps/files/l10n/lt_LT.js
index 6e33b1ac7cc..958cc833b96 100644
--- a/apps/files/l10n/lt_LT.js
+++ b/apps/files/l10n/lt_LT.js
@@ -105,7 +105,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Draudžiama iš čia redaguoti",
"Settings" : "Nustatymai",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Naudokite šį adresą, kad <a href=\"%s\" target=\"_blank\">pasiektumėte savo failus per WebDAV</a>",
"Cancel upload" : "Atšaukti siuntimą",
"No files in here" : "Čia nėra failų",
"Upload some content or sync with your devices!" : "Įkelkite kokį nors turinį, arba sinchronizuokite su savo įrenginiais!",
diff --git a/apps/files/l10n/lt_LT.json b/apps/files/l10n/lt_LT.json
index 0d32d1dbb2a..6613ea4e6ad 100644
--- a/apps/files/l10n/lt_LT.json
+++ b/apps/files/l10n/lt_LT.json
@@ -103,7 +103,6 @@
"Missing permissions to edit from here." : "Draudžiama iš čia redaguoti",
"Settings" : "Nustatymai",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Naudokite šį adresą, kad <a href=\"%s\" target=\"_blank\">pasiektumėte savo failus per WebDAV</a>",
"Cancel upload" : "Atšaukti siuntimą",
"No files in here" : "Čia nėra failų",
"Upload some content or sync with your devices!" : "Įkelkite kokį nors turinį, arba sinchronizuokite su savo įrenginiais!",
diff --git a/apps/files/l10n/lv.js b/apps/files/l10n/lv.js
index f5533fd8995..9efd5f087cd 100644
--- a/apps/files/l10n/lv.js
+++ b/apps/files/l10n/lv.js
@@ -81,7 +81,6 @@ OC.L10N.register(
"Save" : "Saglabāt",
"Settings" : "Iestatījumi",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Izmantojot šo adresi, <a href=\"%s\" target=\"_blank\">piekļūstiet saviem failiem, izmantojot WebDAV</a>",
"Cancel upload" : "Atcelt augšupielādi",
"Upload some content or sync with your devices!" : "Augšupielādē kaut ko vai sinhronizē saturu ar savām ierīcēm!",
"No entries found in this folder" : "Šajā mapē nekas nav atrasts",
diff --git a/apps/files/l10n/lv.json b/apps/files/l10n/lv.json
index 18189049ed8..685801c471f 100644
--- a/apps/files/l10n/lv.json
+++ b/apps/files/l10n/lv.json
@@ -79,7 +79,6 @@
"Save" : "Saglabāt",
"Settings" : "Iestatījumi",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Izmantojot šo adresi, <a href=\"%s\" target=\"_blank\">piekļūstiet saviem failiem, izmantojot WebDAV</a>",
"Cancel upload" : "Atcelt augšupielādi",
"Upload some content or sync with your devices!" : "Augšupielādē kaut ko vai sinhronizē saturu ar savām ierīcēm!",
"No entries found in this folder" : "Šajā mapē nekas nav atrasts",
diff --git a/apps/files/l10n/nb_NO.js b/apps/files/l10n/nb_NO.js
index 4b4a9e19273..f8c6ea1e648 100644
--- a/apps/files/l10n/nb_NO.js
+++ b/apps/files/l10n/nb_NO.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Manglende rettigheter til å redigere herfra.",
"Settings" : "Innstillinger",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Bruk denne adressen for å <a href=\"%s\" target=\"_blank\">få tilgang til filene dine via WebDAV</a>",
"Cancel upload" : "Avbryt opplasting",
"No files in here" : "Ingen filer her",
"Upload some content or sync with your devices!" : "Last opp noe innhold eller synkroniser med enhetene dine!",
diff --git a/apps/files/l10n/nb_NO.json b/apps/files/l10n/nb_NO.json
index f3b0021dbbf..1b70fa87ad9 100644
--- a/apps/files/l10n/nb_NO.json
+++ b/apps/files/l10n/nb_NO.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Manglende rettigheter til å redigere herfra.",
"Settings" : "Innstillinger",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Bruk denne adressen for å <a href=\"%s\" target=\"_blank\">få tilgang til filene dine via WebDAV</a>",
"Cancel upload" : "Avbryt opplasting",
"No files in here" : "Ingen filer her",
"Upload some content or sync with your devices!" : "Last opp noe innhold eller synkroniser med enhetene dine!",
diff --git a/apps/files/l10n/nl.js b/apps/files/l10n/nl.js
index 58c06acbe53..bcf2209103d 100644
--- a/apps/files/l10n/nl.js
+++ b/apps/files/l10n/nl.js
@@ -105,7 +105,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Ontbrekende rechten om vanaf hier te bewerken.",
"Settings" : "Instellingen",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Gebruik deze link <a href=\"%s\" target=\"_blank\">om uw bestanden via WebDAV te benaderen</a>",
"Cancel upload" : "Upload afbreken",
"No files in here" : "Hier geen bestanden",
"Upload some content or sync with your devices!" : "Upload bestanden of synchroniseer met uw apparaten!",
diff --git a/apps/files/l10n/nl.json b/apps/files/l10n/nl.json
index 9c94151fb4c..615bdce44cd 100644
--- a/apps/files/l10n/nl.json
+++ b/apps/files/l10n/nl.json
@@ -103,7 +103,6 @@
"Missing permissions to edit from here." : "Ontbrekende rechten om vanaf hier te bewerken.",
"Settings" : "Instellingen",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Gebruik deze link <a href=\"%s\" target=\"_blank\">om uw bestanden via WebDAV te benaderen</a>",
"Cancel upload" : "Upload afbreken",
"No files in here" : "Hier geen bestanden",
"Upload some content or sync with your devices!" : "Upload bestanden of synchroniseer met uw apparaten!",
diff --git a/apps/files/l10n/oc.js b/apps/files/l10n/oc.js
index 6fde5981b12..567e3bfa6f5 100644
--- a/apps/files/l10n/oc.js
+++ b/apps/files/l10n/oc.js
@@ -105,7 +105,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Manca de permissions per editar a partir d'aicí.",
"Settings" : "Paramètres",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilizatz aquesta adreça per <a href=\"%s\" target=\"_blank\">accedir a vòstres fichièrs per WebDAV</a>",
"Cancel upload" : "Anullar lo mandadís",
"No files in here" : "Pas cap de fichièr aicí",
"Upload some content or sync with your devices!" : "Depausatz de contengut o sincronizatz vòstres aparelhs !",
diff --git a/apps/files/l10n/oc.json b/apps/files/l10n/oc.json
index 37b2fc5f452..a6e32c220ab 100644
--- a/apps/files/l10n/oc.json
+++ b/apps/files/l10n/oc.json
@@ -103,7 +103,6 @@
"Missing permissions to edit from here." : "Manca de permissions per editar a partir d'aicí.",
"Settings" : "Paramètres",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilizatz aquesta adreça per <a href=\"%s\" target=\"_blank\">accedir a vòstres fichièrs per WebDAV</a>",
"Cancel upload" : "Anullar lo mandadís",
"No files in here" : "Pas cap de fichièr aicí",
"Upload some content or sync with your devices!" : "Depausatz de contengut o sincronizatz vòstres aparelhs !",
diff --git a/apps/files/l10n/pl.js b/apps/files/l10n/pl.js
index 91a4cf9a389..ae77a698287 100644
--- a/apps/files/l10n/pl.js
+++ b/apps/files/l10n/pl.js
@@ -85,7 +85,6 @@ OC.L10N.register(
"Save" : "Zapisz",
"Settings" : "Ustawienia",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Użyj tego adresu do <a href=\"%s\" target=\"_blank\">dostępu do twoich plików przez WebDAV</a>",
"Cancel upload" : "Anuluj wysyłanie",
"No files in here" : "Brak plików",
"No entries found in this folder" : "Brak wpisów w tym folderze",
diff --git a/apps/files/l10n/pl.json b/apps/files/l10n/pl.json
index e6f02590b5b..31eb9ac8cc4 100644
--- a/apps/files/l10n/pl.json
+++ b/apps/files/l10n/pl.json
@@ -83,7 +83,6 @@
"Save" : "Zapisz",
"Settings" : "Ustawienia",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Użyj tego adresu do <a href=\"%s\" target=\"_blank\">dostępu do twoich plików przez WebDAV</a>",
"Cancel upload" : "Anuluj wysyłanie",
"No files in here" : "Brak plików",
"No entries found in this folder" : "Brak wpisów w tym folderze",
diff --git a/apps/files/l10n/pt_BR.js b/apps/files/l10n/pt_BR.js
index 4af02942fb1..cdc6476d149 100644
--- a/apps/files/l10n/pt_BR.js
+++ b/apps/files/l10n/pt_BR.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Faltando permissões para editar a partir daqui.",
"Settings" : "Configurações",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Use este endereço <a href=\"%s\" target=\"_blank\">para ter acesso aos seus Arquivos via WebDAV</a>",
"Cancel upload" : "Cancelar envio",
"No files in here" : "Nenhum arquivo aqui",
"Upload some content or sync with your devices!" : "Carregue algum conteúdo ou sincronize com seus dispositivos!",
diff --git a/apps/files/l10n/pt_BR.json b/apps/files/l10n/pt_BR.json
index 71ca647a90d..15fa9627250 100644
--- a/apps/files/l10n/pt_BR.json
+++ b/apps/files/l10n/pt_BR.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Faltando permissões para editar a partir daqui.",
"Settings" : "Configurações",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Use este endereço <a href=\"%s\" target=\"_blank\">para ter acesso aos seus Arquivos via WebDAV</a>",
"Cancel upload" : "Cancelar envio",
"No files in here" : "Nenhum arquivo aqui",
"Upload some content or sync with your devices!" : "Carregue algum conteúdo ou sincronize com seus dispositivos!",
diff --git a/apps/files/l10n/pt_PT.js b/apps/files/l10n/pt_PT.js
index 98ecabe7e47..ae1f1a8d11d 100644
--- a/apps/files/l10n/pt_PT.js
+++ b/apps/files/l10n/pt_PT.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Faltam permissões para editar a partir daqui.",
"Settings" : "Definições",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilize esta ligação para <a href=\"%s\" target=\"_blank\">aceder aos seus ficheiros via WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Utilize esta ligação para <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">aceder aos seus ficheiros via WebDAV</a>",
"Cancel upload" : "Cancelar o envio",
"No files in here" : "Nenhuns ficheiros aqui",
"Upload some content or sync with your devices!" : "Carregue algum conteúdo ou sincronize com os seus aparelhos!",
diff --git a/apps/files/l10n/pt_PT.json b/apps/files/l10n/pt_PT.json
index 8277852b5be..345840ffa39 100644
--- a/apps/files/l10n/pt_PT.json
+++ b/apps/files/l10n/pt_PT.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Faltam permissões para editar a partir daqui.",
"Settings" : "Definições",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Utilize esta ligação para <a href=\"%s\" target=\"_blank\">aceder aos seus ficheiros via WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Utilize esta ligação para <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">aceder aos seus ficheiros via WebDAV</a>",
"Cancel upload" : "Cancelar o envio",
"No files in here" : "Nenhuns ficheiros aqui",
"Upload some content or sync with your devices!" : "Carregue algum conteúdo ou sincronize com os seus aparelhos!",
diff --git a/apps/files/l10n/ro.js b/apps/files/l10n/ro.js
index bd869ce56d6..f9cbc9542f3 100644
--- a/apps/files/l10n/ro.js
+++ b/apps/files/l10n/ro.js
@@ -76,7 +76,6 @@ OC.L10N.register(
"Save" : "Salvează",
"Settings" : "Setări",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Folosește această adresă <a href=\"%s\" target=\"_blank\">pentru acces la fișierele tale folosind WebDAV</a>",
"Cancel upload" : "Anulează încărcarea",
"Select all" : "Selectează tot",
"Upload too large" : "Fișierul încărcat este prea mare",
diff --git a/apps/files/l10n/ro.json b/apps/files/l10n/ro.json
index b842342a09a..bae42dd57b4 100644
--- a/apps/files/l10n/ro.json
+++ b/apps/files/l10n/ro.json
@@ -74,7 +74,6 @@
"Save" : "Salvează",
"Settings" : "Setări",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Folosește această adresă <a href=\"%s\" target=\"_blank\">pentru acces la fișierele tale folosind WebDAV</a>",
"Cancel upload" : "Anulează încărcarea",
"Select all" : "Selectează tot",
"Upload too large" : "Fișierul încărcat este prea mare",
diff --git a/apps/files/l10n/ru.js b/apps/files/l10n/ru.js
index d5954cc4147..183953629a2 100644
--- a/apps/files/l10n/ru.js
+++ b/apps/files/l10n/ru.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Отсутствуют права на удаление.",
"Settings" : "Настройки",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Используйте этот адрес для <a href=\"%s\" target=\"_blank\">доступа файлам через WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Используйте этот адрес для <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">для доступа к вашим файлам по WebDAV</a>",
"Cancel upload" : "Отменить загрузку",
"No files in here" : "Здесь нет файлов",
"Upload some content or sync with your devices!" : "Загрузите что-нибудь или синхронизируйте со своими устройствами!",
diff --git a/apps/files/l10n/ru.json b/apps/files/l10n/ru.json
index 9ec3788fb5e..f75736df6ba 100644
--- a/apps/files/l10n/ru.json
+++ b/apps/files/l10n/ru.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Отсутствуют права на удаление.",
"Settings" : "Настройки",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Используйте этот адрес для <a href=\"%s\" target=\"_blank\">доступа файлам через WebDAV</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Используйте этот адрес для <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">для доступа к вашим файлам по WebDAV</a>",
"Cancel upload" : "Отменить загрузку",
"No files in here" : "Здесь нет файлов",
"Upload some content or sync with your devices!" : "Загрузите что-нибудь или синхронизируйте со своими устройствами!",
diff --git a/apps/files/l10n/sk_SK.js b/apps/files/l10n/sk_SK.js
index 52711dd9c7b..3fc39663934 100644
--- a/apps/files/l10n/sk_SK.js
+++ b/apps/files/l10n/sk_SK.js
@@ -89,7 +89,6 @@ OC.L10N.register(
"Save" : "Uložiť",
"Settings" : "Nastavenia",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Použite túto linku <a href=\"%s\" target=\"_blank\">pre prístup k vašim súborom cez WebDAV</a>",
"Cancel upload" : "Zrušiť nahrávanie",
"No files in here" : "Nie sú tu žiadne súbory",
"Upload some content or sync with your devices!" : "Nahrajte nejaký obsah alebo synchronizujte zo svojimi zariadeniami!",
diff --git a/apps/files/l10n/sk_SK.json b/apps/files/l10n/sk_SK.json
index ca371eb189c..5a672616260 100644
--- a/apps/files/l10n/sk_SK.json
+++ b/apps/files/l10n/sk_SK.json
@@ -87,7 +87,6 @@
"Save" : "Uložiť",
"Settings" : "Nastavenia",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Použite túto linku <a href=\"%s\" target=\"_blank\">pre prístup k vašim súborom cez WebDAV</a>",
"Cancel upload" : "Zrušiť nahrávanie",
"No files in here" : "Nie sú tu žiadne súbory",
"Upload some content or sync with your devices!" : "Nahrajte nejaký obsah alebo synchronizujte zo svojimi zariadeniami!",
diff --git a/apps/files/l10n/sl.js b/apps/files/l10n/sl.js
index 2c6c38892b2..54beb47fbdb 100644
--- a/apps/files/l10n/sl.js
+++ b/apps/files/l10n/sl.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Ni ustreznih dovoljenj za urejanje na tej ravni.",
"Settings" : "Nastavitve",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Uporabite naslov <a href=\"%s\" target=\"_blank\"> za dostop do datotek peko sistema WebDAV</a>.",
"Cancel upload" : "Prekliči pošiljanje",
"No files in here" : "V mapi ni datotek",
"Upload some content or sync with your devices!" : "Uvozite vsebino ali pa omogočite usklajevanje z napravami!",
diff --git a/apps/files/l10n/sl.json b/apps/files/l10n/sl.json
index 8d5b4002a13..621c8385dab 100644
--- a/apps/files/l10n/sl.json
+++ b/apps/files/l10n/sl.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Ni ustreznih dovoljenj za urejanje na tej ravni.",
"Settings" : "Nastavitve",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Uporabite naslov <a href=\"%s\" target=\"_blank\"> za dostop do datotek peko sistema WebDAV</a>.",
"Cancel upload" : "Prekliči pošiljanje",
"No files in here" : "V mapi ni datotek",
"Upload some content or sync with your devices!" : "Uvozite vsebino ali pa omogočite usklajevanje z napravami!",
diff --git a/apps/files/l10n/sq.js b/apps/files/l10n/sq.js
index 0f5d5abdd42..d1c07c62025 100644
--- a/apps/files/l10n/sq.js
+++ b/apps/files/l10n/sq.js
@@ -106,7 +106,7 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Mungojnë lejet për përpunim që nga këtu.",
"Settings" : "Rregullime",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Përdorni këtë adresë për <a href=\"%s\" target=\"_blank\">të hyrë te Kartelat tuaja përmes WebDAV-it</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Përdorni këtë adresë për <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">të hyrë te Kartelat tuaja përmes WebDAV-it</a>",
"Cancel upload" : "Anuloje ngarkimin",
"No files in here" : "S’ka kartela këtu",
"Upload some content or sync with your devices!" : "Ngarkoni ca lëndë ose bëni njëkohësim me pajisjet tuaja!",
diff --git a/apps/files/l10n/sq.json b/apps/files/l10n/sq.json
index 56025d47807..40e8a3bb4ac 100644
--- a/apps/files/l10n/sq.json
+++ b/apps/files/l10n/sq.json
@@ -104,7 +104,7 @@
"Missing permissions to edit from here." : "Mungojnë lejet për përpunim që nga këtu.",
"Settings" : "Rregullime",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Përdorni këtë adresë për <a href=\"%s\" target=\"_blank\">të hyrë te Kartelat tuaja përmes WebDAV-it</a>",
+ "Use this address to <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">access your Files via WebDAV</a>" : "Përdorni këtë adresë për <a href=\"%s\" target=\"_blank\" rel=\"noreferrer\">të hyrë te Kartelat tuaja përmes WebDAV-it</a>",
"Cancel upload" : "Anuloje ngarkimin",
"No files in here" : "S’ka kartela këtu",
"Upload some content or sync with your devices!" : "Ngarkoni ca lëndë ose bëni njëkohësim me pajisjet tuaja!",
diff --git a/apps/files/l10n/sr.js b/apps/files/l10n/sr.js
index fbfa08ecf86..b906d9cdeb6 100644
--- a/apps/files/l10n/sr.js
+++ b/apps/files/l10n/sr.js
@@ -92,7 +92,6 @@ OC.L10N.register(
"Save" : "Сачувај",
"Settings" : "Поставке",
"WebDAV" : "ВебДАВ",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Користите ову адресу да <a href=\"%s\" target=\"_blank\"> приступите фајловима преко ВебДАВ-а</a>",
"Cancel upload" : "Откажи отпремање",
"No files in here" : "Овде нема фајлова",
"Upload some content or sync with your devices!" : "Отпремите неки садржај или синхронизујте са вашим уређајима!",
diff --git a/apps/files/l10n/sr.json b/apps/files/l10n/sr.json
index d231c5416c8..fa9a4b42b47 100644
--- a/apps/files/l10n/sr.json
+++ b/apps/files/l10n/sr.json
@@ -90,7 +90,6 @@
"Save" : "Сачувај",
"Settings" : "Поставке",
"WebDAV" : "ВебДАВ",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Користите ову адресу да <a href=\"%s\" target=\"_blank\"> приступите фајловима преко ВебДАВ-а</a>",
"Cancel upload" : "Откажи отпремање",
"No files in here" : "Овде нема фајлова",
"Upload some content or sync with your devices!" : "Отпремите неки садржај или синхронизујте са вашим уређајима!",
diff --git a/apps/files/l10n/sr@latin.js b/apps/files/l10n/sr@latin.js
index 7c62a464494..6d6e3dfd414 100644
--- a/apps/files/l10n/sr@latin.js
+++ b/apps/files/l10n/sr@latin.js
@@ -81,7 +81,6 @@ OC.L10N.register(
"Save" : "Sačuvaj",
"Settings" : "Postavke",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Koristite ovu adresu da <a href=\"%s\" target=\"_blank\"> pristupite fajlovima preko WebDAV-a</a>",
"Cancel upload" : "Otkaži otpremanje",
"No files in here" : "Ovde nema fajlova",
"Upload some content or sync with your devices!" : "Otpremite neki sadržaj ili sinhronizujte sa vašim uređajima!",
diff --git a/apps/files/l10n/sr@latin.json b/apps/files/l10n/sr@latin.json
index 506ae677ca4..29798adf208 100644
--- a/apps/files/l10n/sr@latin.json
+++ b/apps/files/l10n/sr@latin.json
@@ -79,7 +79,6 @@
"Save" : "Sačuvaj",
"Settings" : "Postavke",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Koristite ovu adresu da <a href=\"%s\" target=\"_blank\"> pristupite fajlovima preko WebDAV-a</a>",
"Cancel upload" : "Otkaži otpremanje",
"No files in here" : "Ovde nema fajlova",
"Upload some content or sync with your devices!" : "Otpremite neki sadržaj ili sinhronizujte sa vašim uređajima!",
diff --git a/apps/files/l10n/sv.js b/apps/files/l10n/sv.js
index 1ad6ebade5f..95bbf36253b 100644
--- a/apps/files/l10n/sv.js
+++ b/apps/files/l10n/sv.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Saknar rättigheter att ändra härifrån.",
"Settings" : "Inställningar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Använd denna adress till <a href=\"%s\" target=\"_blank\">nå dina Filer via WebDAV</a>",
"Cancel upload" : "Avbryt uppladdning",
"No files in here" : "Inga filer kunde hittas",
"Upload some content or sync with your devices!" : "Ladda upp innehåll eller synkronisera med dina enheter!",
diff --git a/apps/files/l10n/sv.json b/apps/files/l10n/sv.json
index 37d62ecd885..484d6630fa0 100644
--- a/apps/files/l10n/sv.json
+++ b/apps/files/l10n/sv.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "Saknar rättigheter att ändra härifrån.",
"Settings" : "Inställningar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Använd denna adress till <a href=\"%s\" target=\"_blank\">nå dina Filer via WebDAV</a>",
"Cancel upload" : "Avbryt uppladdning",
"No files in here" : "Inga filer kunde hittas",
"Upload some content or sync with your devices!" : "Ladda upp innehåll eller synkronisera med dina enheter!",
diff --git a/apps/files/l10n/th_TH.js b/apps/files/l10n/th_TH.js
index d4bd37cb1e7..ba1871f1682 100644
--- a/apps/files/l10n/th_TH.js
+++ b/apps/files/l10n/th_TH.js
@@ -105,7 +105,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "สิทธิ์ในการแก้ไขส่วนนี้หายไป",
"Settings" : "ตั้งค่า",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "ใช้ที่อยู่นี้เพื่อ <a href=\"%s\" target=\"_blank\">เข้าถึงไฟล์ของคุณผ่าน WebDAV</a>",
"Cancel upload" : "ยกเลิกการอัพโหลด",
"No files in here" : "ไม่มีไฟล์ที่นี่",
"Upload some content or sync with your devices!" : "อัพโหลดเนื้อหาบางส่วนหรือประสานข้อมูลกับอุปกรณ์ของคุณ! อีกครั้ง",
diff --git a/apps/files/l10n/th_TH.json b/apps/files/l10n/th_TH.json
index 03d6c6adb76..73d88b544c9 100644
--- a/apps/files/l10n/th_TH.json
+++ b/apps/files/l10n/th_TH.json
@@ -103,7 +103,6 @@
"Missing permissions to edit from here." : "สิทธิ์ในการแก้ไขส่วนนี้หายไป",
"Settings" : "ตั้งค่า",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "ใช้ที่อยู่นี้เพื่อ <a href=\"%s\" target=\"_blank\">เข้าถึงไฟล์ของคุณผ่าน WebDAV</a>",
"Cancel upload" : "ยกเลิกการอัพโหลด",
"No files in here" : "ไม่มีไฟล์ที่นี่",
"Upload some content or sync with your devices!" : "อัพโหลดเนื้อหาบางส่วนหรือประสานข้อมูลกับอุปกรณ์ของคุณ! อีกครั้ง",
diff --git a/apps/files/l10n/tr.js b/apps/files/l10n/tr.js
index 7e0b3f17327..d05c51f05ce 100644
--- a/apps/files/l10n/tr.js
+++ b/apps/files/l10n/tr.js
@@ -105,7 +105,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "Buradan düzenleme için eksik yetki.",
"Settings" : "Ayarlar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "<a href=\"%s\" target=\"_blank\">Dosyalarınıza WebDAV aracılığıyla erişmek için</a> bu adresi kullanın",
"Cancel upload" : "Yüklemeyi iptal et",
"No files in here" : "Burada hiç dosya yok",
"Upload some content or sync with your devices!" : "Bir şeyler yükleyin veya aygıtlarınızla eşitleyin!",
diff --git a/apps/files/l10n/tr.json b/apps/files/l10n/tr.json
index 87f3b063df1..1755166faff 100644
--- a/apps/files/l10n/tr.json
+++ b/apps/files/l10n/tr.json
@@ -103,7 +103,6 @@
"Missing permissions to edit from here." : "Buradan düzenleme için eksik yetki.",
"Settings" : "Ayarlar",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "<a href=\"%s\" target=\"_blank\">Dosyalarınıza WebDAV aracılığıyla erişmek için</a> bu adresi kullanın",
"Cancel upload" : "Yüklemeyi iptal et",
"No files in here" : "Burada hiç dosya yok",
"Upload some content or sync with your devices!" : "Bir şeyler yükleyin veya aygıtlarınızla eşitleyin!",
diff --git a/apps/files/l10n/uk.js b/apps/files/l10n/uk.js
index f41baa183f5..43700de436d 100644
--- a/apps/files/l10n/uk.js
+++ b/apps/files/l10n/uk.js
@@ -84,7 +84,6 @@ OC.L10N.register(
"Save" : "Зберегти",
"Settings" : "Налаштування",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Для доступу до файлів через WebDAV використовуйте <a href=\"%s\" target=\"_blank\">це посилання</a>",
"Cancel upload" : "Скасувати вивантаження",
"No files in here" : "Тут немає файлів",
"Upload some content or sync with your devices!" : "Вивантажте щось або синхронізуйте з пристроями!",
diff --git a/apps/files/l10n/uk.json b/apps/files/l10n/uk.json
index 86acf1b8b60..039cd449bfe 100644
--- a/apps/files/l10n/uk.json
+++ b/apps/files/l10n/uk.json
@@ -82,7 +82,6 @@
"Save" : "Зберегти",
"Settings" : "Налаштування",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "Для доступу до файлів через WebDAV використовуйте <a href=\"%s\" target=\"_blank\">це посилання</a>",
"Cancel upload" : "Скасувати вивантаження",
"No files in here" : "Тут немає файлів",
"Upload some content or sync with your devices!" : "Вивантажте щось або синхронізуйте з пристроями!",
diff --git a/apps/files/l10n/zh_CN.js b/apps/files/l10n/zh_CN.js
index faf803c704e..60a7a990f27 100644
--- a/apps/files/l10n/zh_CN.js
+++ b/apps/files/l10n/zh_CN.js
@@ -106,7 +106,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "没有从这里进行编辑的权限",
"Settings" : "设置",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "使用这个地址 <a href=\"%s\" target=\"_blank\">通过 WebDAV 访问您的文件</a>",
"Cancel upload" : "取消上传",
"No files in here" : "无文件",
"Upload some content or sync with your devices!" : "上传一些内容或者与设备同步!",
diff --git a/apps/files/l10n/zh_CN.json b/apps/files/l10n/zh_CN.json
index 96aa0bb6f13..30b6ad1b78d 100644
--- a/apps/files/l10n/zh_CN.json
+++ b/apps/files/l10n/zh_CN.json
@@ -104,7 +104,6 @@
"Missing permissions to edit from here." : "没有从这里进行编辑的权限",
"Settings" : "设置",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "使用这个地址 <a href=\"%s\" target=\"_blank\">通过 WebDAV 访问您的文件</a>",
"Cancel upload" : "取消上传",
"No files in here" : "无文件",
"Upload some content or sync with your devices!" : "上传一些内容或者与设备同步!",
diff --git a/apps/files/l10n/zh_TW.js b/apps/files/l10n/zh_TW.js
index 0f013be694f..9ae73b2195d 100644
--- a/apps/files/l10n/zh_TW.js
+++ b/apps/files/l10n/zh_TW.js
@@ -105,7 +105,6 @@ OC.L10N.register(
"Missing permissions to edit from here." : "您沒有在此編輯的權限",
"Settings" : "設定",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "使用這個地址<a href=\"%s\" target=\"_blank\">來透過 WebDAV 存取檔案</a>",
"Cancel upload" : "取消上傳",
"No files in here" : "沒有任何檔案",
"Upload some content or sync with your devices!" : "在您的裝置中同步或上傳一些內容",
diff --git a/apps/files/l10n/zh_TW.json b/apps/files/l10n/zh_TW.json
index 1258145c71f..1187ffa9c24 100644
--- a/apps/files/l10n/zh_TW.json
+++ b/apps/files/l10n/zh_TW.json
@@ -103,7 +103,6 @@
"Missing permissions to edit from here." : "您沒有在此編輯的權限",
"Settings" : "設定",
"WebDAV" : "WebDAV",
- "Use this address to <a href=\"%s\" target=\"_blank\">access your Files via WebDAV</a>" : "使用這個地址<a href=\"%s\" target=\"_blank\">來透過 WebDAV 存取檔案</a>",
"Cancel upload" : "取消上傳",
"No files in here" : "沒有任何檔案",
"Upload some content or sync with your devices!" : "在您的裝置中同步或上傳一些內容",
diff --git a/apps/files_external/l10n/el.js b/apps/files_external/l10n/el.js
index 5322fc65ad0..b1e09dfad18 100644
--- a/apps/files_external/l10n/el.js
+++ b/apps/files_external/l10n/el.js
@@ -34,6 +34,7 @@ OC.L10N.register(
"All users. Type to select user or group." : "Όλοι οι χρήστες. Πληκτρολογήστε για να επιλέξετε χρήστη ή ομάδα.",
"(group)" : "(ομάδα)",
"Saved" : "Αποθηκεύτηκαν",
+ "There was an error with message: " : "Υπήρξε σφάλμα στο μήνυμα:",
"External mount error" : "Σφάλμα εξωτερικής προσάρτησης",
"Username" : "Όνομα χρήστη",
"Password" : "Κωδικός πρόσβασης",
diff --git a/apps/files_external/l10n/el.json b/apps/files_external/l10n/el.json
index 84763812a40..01c0dadc171 100644
--- a/apps/files_external/l10n/el.json
+++ b/apps/files_external/l10n/el.json
@@ -32,6 +32,7 @@
"All users. Type to select user or group." : "Όλοι οι χρήστες. Πληκτρολογήστε για να επιλέξετε χρήστη ή ομάδα.",
"(group)" : "(ομάδα)",
"Saved" : "Αποθηκεύτηκαν",
+ "There was an error with message: " : "Υπήρξε σφάλμα στο μήνυμα:",
"External mount error" : "Σφάλμα εξωτερικής προσάρτησης",
"Username" : "Όνομα χρήστη",
"Password" : "Κωδικός πρόσβασης",
diff --git a/apps/files_external/l10n/is.js b/apps/files_external/l10n/is.js
index 2affa90b1cd..4ea2081014a 100644
--- a/apps/files_external/l10n/is.js
+++ b/apps/files_external/l10n/is.js
@@ -1,12 +1,24 @@
OC.L10N.register(
"files_external",
{
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Mistókst að ná í beiðniteikn (request token). Gakktu úr skugga um að forritslykill og leynilykill séu réttir.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Mistókst að ná í aðgangsteikn (access token). Gakktu úr skugga um að forritslykill og leynilykill séu réttir.",
+ "Please provide a valid app key and secret." : "Settu inn gildan forritslykil og leynilykil (secret).",
"Step 1 failed. Exception: %s" : "Skref 1 mistókst. Undantekning: %s",
"Step 2 failed. Exception: %s" : "Skref 2 mistókst. Undantekning: %s",
"External storage" : "Ytri gagnageymsla",
+ "Storage with id \"%i\" not found" : "Geymsla með auðkennið '%i' fannst ekki",
+ "Invalid backend or authentication mechanism class" : "Ógildur flokkur bakenda eða auðkenningartækni",
"Invalid mount point" : "Ógildur tengipunktur",
+ "Objectstore forbidden" : "Hlutageymsla (objectstore) bönnuð",
+ "Invalid storage backend \"%s\"" : "Ógildur geymslubakendi \"%s\"",
+ "Not permitted to use backend \"%s\"" : "Ekki leyft að nota \"%s\" bakendann",
+ "Not permitted to use authentication mechanism \"%s\"" : "Ekki leyft að nota \"%s\" auðkenningartæknina",
+ "Unsatisfied backend parameters" : "Óuppfyllt viðföng bakenda",
+ "Unsatisfied authentication mechanism parameters" : "Óuppfyllt viðföng auðkenningartækni",
"Insufficient data: %s" : "Ónóg gögn: %s",
"%s" : "%s",
+ "Storage with id \"%i\" is not user editable" : "Geymslan með auðkennið '%s' er ekki breytanleg af notanda",
"Personal" : "Einka",
"System" : "Kerfi",
"Grant access" : "Veita aðgengi",
@@ -20,24 +32,44 @@ OC.L10N.register(
"Enable sharing" : "Virkja deilingu",
"Check for changes" : "Fylgjast með breytingum",
"Never" : "Aldrei",
+ "Once every direct access" : "Einu sinni við hvern beinan aðgang",
+ "All users. Type to select user or group." : "Allir notendur. Skrifaðu til að velja notanda eða hóp.",
"(group)" : "(hópur)",
+ "Admin defined" : "Skilgreindur kerfisstjóri",
"Saved" : "Vistað",
"Empty response from the server" : "Tómt svar frá þjóni móttekið",
+ "Couldn't access. Please logout and login to activate this mount point" : "Náði ekki aðgangi. Skráðu þig út og svo aftur inn til að virkja þennan tengipunkt",
+ "Couldn't get the information from the ownCloud server: {code} {type}" : "Gat ekki lesið upplýsingar frá ownCloud-þjóninum: {code} {type}",
+ "Couldn't get the list of external mount points: {type}" : "Gat ekki fengið lista yfir fjartengda tengipunkta: {type}",
+ "There was an error with message: " : "Það kom upp villa með skilaboðunum: ",
"External mount error" : "Villa við tengingu í fjartengdu skráakerfi",
"external-storage" : "ytri-gagnageymsla",
+ "Couldn't get the list of Windows network drive mount points: empty response from the server" : "Gat ekki fengið lista yfir tengipunkta Windows-netdrifa: autt svar frá þjóni",
+ "Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Sumir uppsettir tengipunktar eru ekki tengdir í skráakerfið. Smelltu á rauðu örina/örvarnar til að fá frekari upplýsingar",
+ "Please enter the credentials for the {mount} mount" : "Settu inn auðkenni fyrir {mount} tengipunktinn",
"Username" : "Notendanafn",
"Password" : "Lykilorð",
+ "Credentials saved" : "Auðkenni vistuð",
+ "Credentials saving failed" : "Vistun auðkenna tókst ekki",
+ "Credentials required" : "Auðkenna krafist",
"Save" : "Vista",
"Access key" : "Aðgangslykill",
"Secret key" : "Leynilykill",
"Builtin" : "Innbyggt",
"None" : "Ekkert",
"OAuth1" : "OAuth1",
+ "App key" : "Lykill forrits",
+ "App secret" : "Leynilykill forrits",
"OAuth2" : "OAuth2",
+ "Client ID" : "Biðlaraauðkenni",
+ "Client secret" : "Leynilykill biðlara",
"OpenStack" : "OpenStack",
+ "Tenant name" : "Nafn handhafa (tenant)",
+ "Identity endpoint URL" : "Endapunktur auðkennisslóðar (identity endpoint URL)",
"Rackspace" : "Rackspace",
"API key" : "API-lykill",
"Username and password" : "Notandanafn og lykilorð",
+ "Log-in credentials, save in session" : "Innskráningarauðkenni, vista í setu",
"RSA public key" : "RSA-dreifilykill",
"Public key" : "Dreifilykill",
"Amazon S3" : "Amazon S3",
@@ -46,6 +78,7 @@ OC.L10N.register(
"Port" : "Gátt",
"Region" : "Svæði",
"Enable SSL" : "Virkja SSL",
+ "Enable Path Style" : "Virkja slóðastíl",
"WebDAV" : "WebDAV",
"URL" : "Slóð (URL)",
"Remote subfolder" : "Fjartengd undirmappa",
@@ -60,21 +93,33 @@ OC.L10N.register(
"ownCloud" : "ownCloud",
"SFTP" : "SFTP",
"Root" : "Rót (root)",
+ "SFTP with secret key login" : "SFTP innskráning með leynilykli",
"SMB / CIFS" : "SMB / CIFS",
"Share" : "Deila",
"Domain" : "Lén",
+ "SMB / CIFS using OC login" : "SMB / CIFS með OC-innskráningu",
"Username as share" : "Notandanafn sem sameign",
"OpenStack Object Storage" : "OpenStack Object Storage",
"Service name" : "Heiti á þjónustu",
+ "Request timeout (seconds)" : "Tímamörk á beiðni (sekúndur)",
"<b>Note:</b> " : "<b>Athugið:</b> ",
+ "<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Athugið:</b> Stuðningur við cURL í PHP er ekki virkjaður eða ekki uppsettur. Tenging %s er ekki möguleg. Biddu kerfisstjórann þinn um að setja þetta upp.",
+ "<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Athugið:</b> Stuðningur við FTP í PHP er ekki virkjaður eða ekki uppsettur. Tenging %s er ekki möguleg. Biddu kerfisstjórann þinn um að setja þetta upp.",
+ "<b>Note:</b> \"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Athugið:</b> \"%s\" ekki uppsett. Tenging %s er ekki möguleg. Biddu kerfisstjórann þinn um að setja þetta upp.",
+ "No external storage configured" : "Engin ytri-gagnageymsla stillt",
+ "You can add external storages in the personal settings" : "Þú getur bætt við ytri gagnageymslum í einkastillingunum þínum",
"Name" : "Nafn",
+ "Storage type" : "Tegund gagnageymslu",
"Scope" : "Umfang",
"External Storage" : "Ytri gagnageymsla",
"Folder name" : "Nafn möppu",
"Authentication" : "Auðkenning",
"Configuration" : "Uppsetning",
"Available for" : "Tiltækt fyrir",
+ "Add storage" : "Bæta við gagnahirslu",
"Advanced settings" : "Ítarlegri valkostir",
- "Delete" : "Eyða"
+ "Delete" : "Eyða",
+ "Allow users to mount external storage" : "Leyfa notendum að tengja ytri gagnageymslur í skráakerfi",
+ "Allow users to mount the following external storage" : "Leyfa notendum að tengja eftirfarandi ytri gagnageymslu í skráakerfi"
},
"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);");
diff --git a/apps/files_external/l10n/is.json b/apps/files_external/l10n/is.json
index c1927e674f2..bd424aca99e 100644
--- a/apps/files_external/l10n/is.json
+++ b/apps/files_external/l10n/is.json
@@ -1,10 +1,22 @@
{ "translations": {
+ "Fetching request tokens failed. Verify that your app key and secret are correct." : "Mistókst að ná í beiðniteikn (request token). Gakktu úr skugga um að forritslykill og leynilykill séu réttir.",
+ "Fetching access tokens failed. Verify that your app key and secret are correct." : "Mistókst að ná í aðgangsteikn (access token). Gakktu úr skugga um að forritslykill og leynilykill séu réttir.",
+ "Please provide a valid app key and secret." : "Settu inn gildan forritslykil og leynilykil (secret).",
"Step 1 failed. Exception: %s" : "Skref 1 mistókst. Undantekning: %s",
"Step 2 failed. Exception: %s" : "Skref 2 mistókst. Undantekning: %s",
"External storage" : "Ytri gagnageymsla",
+ "Storage with id \"%i\" not found" : "Geymsla með auðkennið '%i' fannst ekki",
+ "Invalid backend or authentication mechanism class" : "Ógildur flokkur bakenda eða auðkenningartækni",
"Invalid mount point" : "Ógildur tengipunktur",
+ "Objectstore forbidden" : "Hlutageymsla (objectstore) bönnuð",
+ "Invalid storage backend \"%s\"" : "Ógildur geymslubakendi \"%s\"",
+ "Not permitted to use backend \"%s\"" : "Ekki leyft að nota \"%s\" bakendann",
+ "Not permitted to use authentication mechanism \"%s\"" : "Ekki leyft að nota \"%s\" auðkenningartæknina",
+ "Unsatisfied backend parameters" : "Óuppfyllt viðföng bakenda",
+ "Unsatisfied authentication mechanism parameters" : "Óuppfyllt viðföng auðkenningartækni",
"Insufficient data: %s" : "Ónóg gögn: %s",
"%s" : "%s",
+ "Storage with id \"%i\" is not user editable" : "Geymslan með auðkennið '%s' er ekki breytanleg af notanda",
"Personal" : "Einka",
"System" : "Kerfi",
"Grant access" : "Veita aðgengi",
@@ -18,24 +30,44 @@
"Enable sharing" : "Virkja deilingu",
"Check for changes" : "Fylgjast með breytingum",
"Never" : "Aldrei",
+ "Once every direct access" : "Einu sinni við hvern beinan aðgang",
+ "All users. Type to select user or group." : "Allir notendur. Skrifaðu til að velja notanda eða hóp.",
"(group)" : "(hópur)",
+ "Admin defined" : "Skilgreindur kerfisstjóri",
"Saved" : "Vistað",
"Empty response from the server" : "Tómt svar frá þjóni móttekið",
+ "Couldn't access. Please logout and login to activate this mount point" : "Náði ekki aðgangi. Skráðu þig út og svo aftur inn til að virkja þennan tengipunkt",
+ "Couldn't get the information from the ownCloud server: {code} {type}" : "Gat ekki lesið upplýsingar frá ownCloud-þjóninum: {code} {type}",
+ "Couldn't get the list of external mount points: {type}" : "Gat ekki fengið lista yfir fjartengda tengipunkta: {type}",
+ "There was an error with message: " : "Það kom upp villa með skilaboðunum: ",
"External mount error" : "Villa við tengingu í fjartengdu skráakerfi",
"external-storage" : "ytri-gagnageymsla",
+ "Couldn't get the list of Windows network drive mount points: empty response from the server" : "Gat ekki fengið lista yfir tengipunkta Windows-netdrifa: autt svar frá þjóni",
+ "Some of the configured external mount points are not connected. Please click on the red row(s) for more information" : "Sumir uppsettir tengipunktar eru ekki tengdir í skráakerfið. Smelltu á rauðu örina/örvarnar til að fá frekari upplýsingar",
+ "Please enter the credentials for the {mount} mount" : "Settu inn auðkenni fyrir {mount} tengipunktinn",
"Username" : "Notendanafn",
"Password" : "Lykilorð",
+ "Credentials saved" : "Auðkenni vistuð",
+ "Credentials saving failed" : "Vistun auðkenna tókst ekki",
+ "Credentials required" : "Auðkenna krafist",
"Save" : "Vista",
"Access key" : "Aðgangslykill",
"Secret key" : "Leynilykill",
"Builtin" : "Innbyggt",
"None" : "Ekkert",
"OAuth1" : "OAuth1",
+ "App key" : "Lykill forrits",
+ "App secret" : "Leynilykill forrits",
"OAuth2" : "OAuth2",
+ "Client ID" : "Biðlaraauðkenni",
+ "Client secret" : "Leynilykill biðlara",
"OpenStack" : "OpenStack",
+ "Tenant name" : "Nafn handhafa (tenant)",
+ "Identity endpoint URL" : "Endapunktur auðkennisslóðar (identity endpoint URL)",
"Rackspace" : "Rackspace",
"API key" : "API-lykill",
"Username and password" : "Notandanafn og lykilorð",
+ "Log-in credentials, save in session" : "Innskráningarauðkenni, vista í setu",
"RSA public key" : "RSA-dreifilykill",
"Public key" : "Dreifilykill",
"Amazon S3" : "Amazon S3",
@@ -44,6 +76,7 @@
"Port" : "Gátt",
"Region" : "Svæði",
"Enable SSL" : "Virkja SSL",
+ "Enable Path Style" : "Virkja slóðastíl",
"WebDAV" : "WebDAV",
"URL" : "Slóð (URL)",
"Remote subfolder" : "Fjartengd undirmappa",
@@ -58,21 +91,33 @@
"ownCloud" : "ownCloud",
"SFTP" : "SFTP",
"Root" : "Rót (root)",
+ "SFTP with secret key login" : "SFTP innskráning með leynilykli",
"SMB / CIFS" : "SMB / CIFS",
"Share" : "Deila",
"Domain" : "Lén",
+ "SMB / CIFS using OC login" : "SMB / CIFS með OC-innskráningu",
"Username as share" : "Notandanafn sem sameign",
"OpenStack Object Storage" : "OpenStack Object Storage",
"Service name" : "Heiti á þjónustu",
+ "Request timeout (seconds)" : "Tímamörk á beiðni (sekúndur)",
"<b>Note:</b> " : "<b>Athugið:</b> ",
+ "<b>Note:</b> The cURL support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Athugið:</b> Stuðningur við cURL í PHP er ekki virkjaður eða ekki uppsettur. Tenging %s er ekki möguleg. Biddu kerfisstjórann þinn um að setja þetta upp.",
+ "<b>Note:</b> The FTP support in PHP is not enabled or installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Athugið:</b> Stuðningur við FTP í PHP er ekki virkjaður eða ekki uppsettur. Tenging %s er ekki möguleg. Biddu kerfisstjórann þinn um að setja þetta upp.",
+ "<b>Note:</b> \"%s\" is not installed. Mounting of %s is not possible. Please ask your system administrator to install it." : "<b>Athugið:</b> \"%s\" ekki uppsett. Tenging %s er ekki möguleg. Biddu kerfisstjórann þinn um að setja þetta upp.",
+ "No external storage configured" : "Engin ytri-gagnageymsla stillt",
+ "You can add external storages in the personal settings" : "Þú getur bætt við ytri gagnageymslum í einkastillingunum þínum",
"Name" : "Nafn",
+ "Storage type" : "Tegund gagnageymslu",
"Scope" : "Umfang",
"External Storage" : "Ytri gagnageymsla",
"Folder name" : "Nafn möppu",
"Authentication" : "Auðkenning",
"Configuration" : "Uppsetning",
"Available for" : "Tiltækt fyrir",
+ "Add storage" : "Bæta við gagnahirslu",
"Advanced settings" : "Ítarlegri valkostir",
- "Delete" : "Eyða"
+ "Delete" : "Eyða",
+ "Allow users to mount external storage" : "Leyfa notendum að tengja ytri gagnageymslur í skráakerfi",
+ "Allow users to mount the following external storage" : "Leyfa notendum að tengja eftirfarandi ytri gagnageymslu í skráakerfi"
},"pluralForm" :"nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);"
} \ No newline at end of file
diff --git a/apps/files_sharing/js/share.js b/apps/files_sharing/js/share.js
index 5ec7824758f..a253763389c 100644
--- a/apps/files_sharing/js/share.js
+++ b/apps/files_sharing/js/share.js
@@ -123,6 +123,8 @@
hasShares = true;
} else if (shareType === OC.Share.SHARE_TYPE_GROUP) {
hasShares = true;
+ } else if (shareType === OC.Share.SHARE_TYPE_REMOTE) {
+ hasShares = true;
}
});
OCA.Sharing.Util._updateFileActionIcon($tr, hasShares, hasLink);
diff --git a/apps/updatenotification/l10n/el.js b/apps/updatenotification/l10n/el.js
index d5ecbce6954..2ec6d67cbd5 100644
--- a/apps/updatenotification/l10n/el.js
+++ b/apps/updatenotification/l10n/el.js
@@ -5,6 +5,7 @@ OC.L10N.register(
"Updater" : "Εφαρμογή Ενημέρωσης",
"A new version is available: %s" : "Μία νέα έκδοση είναι διαθέσιμη: %s",
"Open updater" : "Άνοιγμα εφαρμογής ενημέρωσης",
+ "Your version is up to date." : "Έχετε την τελευταία έκδοση.",
"Update channel:" : "Ενημέρωση καναλιού:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Μπορείτε πάντα να περάσετε σε νεότερη / πειραματική έκδοση. Αλλά ποτέ δεν μπορείτε να γυρίσετε πίσω σε πιο σταθερό κανάλι."
},
diff --git a/apps/updatenotification/l10n/el.json b/apps/updatenotification/l10n/el.json
index de19b712dd5..a5228e7e1c9 100644
--- a/apps/updatenotification/l10n/el.json
+++ b/apps/updatenotification/l10n/el.json
@@ -3,6 +3,7 @@
"Updater" : "Εφαρμογή Ενημέρωσης",
"A new version is available: %s" : "Μία νέα έκδοση είναι διαθέσιμη: %s",
"Open updater" : "Άνοιγμα εφαρμογής ενημέρωσης",
+ "Your version is up to date." : "Έχετε την τελευταία έκδοση.",
"Update channel:" : "Ενημέρωση καναλιού:",
"You can always update to a newer version / experimental channel. But you can never downgrade to a more stable channel." : "Μπορείτε πάντα να περάσετε σε νεότερη / πειραματική έκδοση. Αλλά ποτέ δεν μπορείτε να γυρίσετε πίσω σε πιο σταθερό κανάλι."
},"pluralForm" :"nplurals=2; plural=(n != 1);"