diff --git a/apps/admin_audit/l10n/fi.js b/apps/admin_audit/l10n/fi.js
index 4f3e806366646ef3af5aa98192c4aae58342dbcf..4309e3a5a2018e19b538aecf1f5e9dc0bb5b21f5 100644
--- a/apps/admin_audit/l10n/fi.js
+++ b/apps/admin_audit/l10n/fi.js
@@ -1,6 +1,7 @@
 OC.L10N.register(
     "admin_audit",
     {
-    "Auditing / Logging" : "Auditointi / lokitus"
+    "Auditing / Logging" : "Auditointi / lokitus",
+    "Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Tarjoaa Nextcloudille lokin ylläpidon esimerkiksi tiedostojen käytöstä tai arkaluonteisista toiminnoista."
 },
 "nplurals=2; plural=(n != 1);");
diff --git a/apps/admin_audit/l10n/fi.json b/apps/admin_audit/l10n/fi.json
index 14ffed0a19cd9562742d1e7222cbc193bea2f13d..86491167ba8a00b0ddb810a7a22ca01ac0d96add 100644
--- a/apps/admin_audit/l10n/fi.json
+++ b/apps/admin_audit/l10n/fi.json
@@ -1,4 +1,5 @@
 { "translations": {
-    "Auditing / Logging" : "Auditointi / lokitus"
+    "Auditing / Logging" : "Auditointi / lokitus",
+    "Provides logging abilities for Nextcloud such as logging file accesses or otherwise sensitive actions." : "Tarjoaa Nextcloudille lokin ylläpidon esimerkiksi tiedostojen käytöstä tai arkaluonteisista toiminnoista."
 },"pluralForm" :"nplurals=2; plural=(n != 1);"
 }
\ No newline at end of file
diff --git a/apps/contactsinteraction/l10n/es.js b/apps/contactsinteraction/l10n/es.js
new file mode 100644
index 0000000000000000000000000000000000000000..dde6aaac947739f0dce919657d7c26d10ffcb2c6
--- /dev/null
+++ b/apps/contactsinteraction/l10n/es.js
@@ -0,0 +1,9 @@
+OC.L10N.register(
+    "contactsinteraction",
+    {
+    "Recently contacted" : "Contactados recientemente",
+    "Contacts Interaction" : "Interacción de contactos",
+    "Manages interaction between users and contacts" : "Controla la interacción entre usuarios y contactos",
+    "Collect data about user and contacts interactions and provide an address book for the data" : "Recoge datos de las interacciones entre usuarios y contactos, y provee una libreta de direcciones para esos datos"
+},
+"nplurals=2; plural=(n != 1);");
diff --git a/apps/contactsinteraction/l10n/es.json b/apps/contactsinteraction/l10n/es.json
new file mode 100644
index 0000000000000000000000000000000000000000..db72d2bafc3e684f0ce8121eeb6ba1863fa5e673
--- /dev/null
+++ b/apps/contactsinteraction/l10n/es.json
@@ -0,0 +1,7 @@
+{ "translations": {
+    "Recently contacted" : "Contactados recientemente",
+    "Contacts Interaction" : "Interacción de contactos",
+    "Manages interaction between users and contacts" : "Controla la interacción entre usuarios y contactos",
+    "Collect data about user and contacts interactions and provide an address book for the data" : "Recoge datos de las interacciones entre usuarios y contactos, y provee una libreta de direcciones para esos datos"
+},"pluralForm" :"nplurals=2; plural=(n != 1);"
+}
\ No newline at end of file
diff --git a/apps/dashboard/l10n/zh_CN.js b/apps/dashboard/l10n/zh_CN.js
new file mode 100644
index 0000000000000000000000000000000000000000..066b12d167fec04e7ac98b179a819f85c8556857
--- /dev/null
+++ b/apps/dashboard/l10n/zh_CN.js
@@ -0,0 +1,29 @@
+OC.L10N.register(
+    "dashboard",
+    {
+    "Dashboard" : "控制台",
+    "Dashboard app" : "控制台应用",
+    "Show something" : "显示信息",
+    "Customize" : "自定义",
+    "Edit widgets" : "编辑小部件",
+    "Get more widgets from the app store" : "从应用商店获取更多小部件",
+    "Change background image" : "更改背景图片",
+    "Weather service" : "天气服务",
+    "For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "为了您的隐私,天气数据由您的 Nextcloud 服务器为您获取,这样天气服务就无法获得您的个人信息。",
+    "Weather data from Met.no" : "天气数据获取自 Met.no",
+    "Weather" : "天气",
+    "Status" : "状态",
+    "Good evening, {name}" : "晚上好,{name}",
+    "Good evening" : "晚上好",
+    "Good afternoon, {name}" : "下午好,{name}",
+    "Good afternoon" : "下午好",
+    "Good morning, {name}" : "早上好,{name}",
+    "Good morning" : "早上好",
+    "Good night, {name}" : "晚上好,{name}",
+    "Good night" : "晚上好",
+    "Pick from files" : "从文件选取",
+    "Default images" : "默认图片",
+    "Plain background" : "纯色背景",
+    "Insert from {productName}" : "从 {productName} 插入"
+},
+"nplurals=1; plural=0;");
diff --git a/apps/dashboard/l10n/zh_CN.json b/apps/dashboard/l10n/zh_CN.json
new file mode 100644
index 0000000000000000000000000000000000000000..45b0c079fa7c97596e6429a402fea94caf92a5a2
--- /dev/null
+++ b/apps/dashboard/l10n/zh_CN.json
@@ -0,0 +1,27 @@
+{ "translations": {
+    "Dashboard" : "控制台",
+    "Dashboard app" : "控制台应用",
+    "Show something" : "显示信息",
+    "Customize" : "自定义",
+    "Edit widgets" : "编辑小部件",
+    "Get more widgets from the app store" : "从应用商店获取更多小部件",
+    "Change background image" : "更改背景图片",
+    "Weather service" : "天气服务",
+    "For your privacy, the weather data is requested by your Nextcloud server on your behalf so the weather service receives no personal information." : "为了您的隐私,天气数据由您的 Nextcloud 服务器为您获取,这样天气服务就无法获得您的个人信息。",
+    "Weather data from Met.no" : "天气数据获取自 Met.no",
+    "Weather" : "天气",
+    "Status" : "状态",
+    "Good evening, {name}" : "晚上好,{name}",
+    "Good evening" : "晚上好",
+    "Good afternoon, {name}" : "下午好,{name}",
+    "Good afternoon" : "下午好",
+    "Good morning, {name}" : "早上好,{name}",
+    "Good morning" : "早上好",
+    "Good night, {name}" : "晚上好,{name}",
+    "Good night" : "晚上好",
+    "Pick from files" : "从文件选取",
+    "Default images" : "默认图片",
+    "Plain background" : "纯色背景",
+    "Insert from {productName}" : "从 {productName} 插入"
+},"pluralForm" :"nplurals=1; plural=0;"
+}
\ No newline at end of file
diff --git a/apps/settings/l10n/pt_BR.js b/apps/settings/l10n/pt_BR.js
index 3f774ffae02b9401c3ea4498214b47766ce3227d..1fe3adc6ff49479385d36af3ed73098a9a6dd003 100644
--- a/apps/settings/l10n/pt_BR.js
+++ b/apps/settings/l10n/pt_BR.js
@@ -376,6 +376,7 @@ OC.L10N.register(
     "Show disclaimer text on the public link upload page (only shown when the file list is hidden)" : "Exibir o texto de aviso na página de envio do link público (somente mostrado quando a lista de arquivos está oculta).",
     "This text will be shown on the public link upload page when the file list is hidden." : "Este texto será mostrado na página de envio do link público quando a lista de arquivos está oculta.",
     "Default share permissions" : "Permissões padrão de compartilhamento",
+    "Reasons to use Nextcloud in your organization" : "Motivos para usar o Nextcloud na sua empresa.",
     "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Desenvolvido pela {communityopen}comunidade Nextcloud{linkclose}. O {githubopen}código-fonte{linkclose} é licenciado sob a {licenseopen}AGPL{linkclose}.",
     "Like our Facebook page" : "Curta nossa página no Facebook",
     "Follow us on Twitter" : "Siga-nos no Twitter",
diff --git a/apps/settings/l10n/pt_BR.json b/apps/settings/l10n/pt_BR.json
index 4fb1c1cfb493905d4b5431b4c75c5fd8079d91d7..c239f61619150e5b2b467b89e4225b5f8f344e87 100644
--- a/apps/settings/l10n/pt_BR.json
+++ b/apps/settings/l10n/pt_BR.json
@@ -374,6 +374,7 @@
     "Show disclaimer text on the public link upload page (only shown when the file list is hidden)" : "Exibir o texto de aviso na página de envio do link público (somente mostrado quando a lista de arquivos está oculta).",
     "This text will be shown on the public link upload page when the file list is hidden." : "Este texto será mostrado na página de envio do link público quando a lista de arquivos está oculta.",
     "Default share permissions" : "Permissões padrão de compartilhamento",
+    "Reasons to use Nextcloud in your organization" : "Motivos para usar o Nextcloud na sua empresa.",
     "Developed by the {communityopen}Nextcloud community{linkclose}, the {githubopen}source code{linkclose} is licensed under the {licenseopen}AGPL{linkclose}." : "Desenvolvido pela {communityopen}comunidade Nextcloud{linkclose}. O {githubopen}código-fonte{linkclose} é licenciado sob a {licenseopen}AGPL{linkclose}.",
     "Like our Facebook page" : "Curta nossa página no Facebook",
     "Follow us on Twitter" : "Siga-nos no Twitter",
diff --git a/apps/user_status/l10n/cs.js b/apps/user_status/l10n/cs.js
index a6f5caf7af67ef6fe4dbd3f16dfd175428fc2748..2310de1ee6f48a0cb7658657c81df7c5a1ee5967 100644
--- a/apps/user_status/l10n/cs.js
+++ b/apps/user_status/l10n/cs.js
@@ -12,6 +12,7 @@ OC.L10N.register(
     "What's your status?" : "Jaký je váš stav?",
     "Set status" : "Natavit stav",
     "Status message" : "Stavová zpráva",
+    "Clear status message" : "Vyčistit stavovou zprávu",
     "Set status message" : "Nastavit stavovou zprávu",
     "There was an error saving the status" : "Došlo k chybě při ukládání stavu",
     "There was an error clearing the status" : "Při čištění stavu došlo k chybě",
diff --git a/apps/user_status/l10n/cs.json b/apps/user_status/l10n/cs.json
index 93d79bb50ee026a9228f93dbe879a6489b92de77..21ae454e9ac2ea753ddf0e62988197d7e0fc1697 100644
--- a/apps/user_status/l10n/cs.json
+++ b/apps/user_status/l10n/cs.json
@@ -10,6 +10,7 @@
     "What's your status?" : "Jaký je váš stav?",
     "Set status" : "Natavit stav",
     "Status message" : "Stavová zpráva",
+    "Clear status message" : "Vyčistit stavovou zprávu",
     "Set status message" : "Nastavit stavovou zprávu",
     "There was an error saving the status" : "Došlo k chybě při ukládání stavu",
     "There was an error clearing the status" : "Při čištění stavu došlo k chybě",
diff --git a/apps/user_status/l10n/es.js b/apps/user_status/l10n/es.js
index 02ad5cd162dc0c1acb5d05fb571befddb7360326..f84eba05732c7ccf37c9e6fe9444b885a6b8845f 100644
--- a/apps/user_status/l10n/es.js
+++ b/apps/user_status/l10n/es.js
@@ -11,6 +11,7 @@ OC.L10N.register(
     "Clear status message after" : "Borrar mensaje de estado después de",
     "What's your status?" : "¿Cuál es tu estado?",
     "Set status" : "Configurar estado",
+    "Online status" : "Estado en línea",
     "Status message" : "Mensaje de estado",
     "Clear status message" : "Borrar mensaje de estado",
     "Set status message" : "Ajustar el mensaje de estado",
@@ -31,6 +32,7 @@ OC.L10N.register(
     "1 hour" : "1 hora",
     "4 hours" : "4 horas",
     "Mute all notifications" : "Silenciar todas las notificaciones",
+    "Appear offline" : "Aparecer sin conexión",
     "Clear status after" : "Eliminar el estado después de"
 },
 "nplurals=2; plural=(n != 1);");
diff --git a/apps/user_status/l10n/es.json b/apps/user_status/l10n/es.json
index 8e0149095b255c4ead596229e7ab965302fe807b..94f0fd3d786be96b5be0704d661384930a00005e 100644
--- a/apps/user_status/l10n/es.json
+++ b/apps/user_status/l10n/es.json
@@ -9,6 +9,7 @@
     "Clear status message after" : "Borrar mensaje de estado después de",
     "What's your status?" : "¿Cuál es tu estado?",
     "Set status" : "Configurar estado",
+    "Online status" : "Estado en línea",
     "Status message" : "Mensaje de estado",
     "Clear status message" : "Borrar mensaje de estado",
     "Set status message" : "Ajustar el mensaje de estado",
@@ -29,6 +30,7 @@
     "1 hour" : "1 hora",
     "4 hours" : "4 horas",
     "Mute all notifications" : "Silenciar todas las notificaciones",
+    "Appear offline" : "Aparecer sin conexión",
     "Clear status after" : "Eliminar el estado después de"
 },"pluralForm" :"nplurals=2; plural=(n != 1);"
 }
\ No newline at end of file
diff --git a/apps/user_status/l10n/pt_BR.js b/apps/user_status/l10n/pt_BR.js
new file mode 100644
index 0000000000000000000000000000000000000000..4d3e9f41a204b99a3c37d34ad3df2cc476ad58f8
--- /dev/null
+++ b/apps/user_status/l10n/pt_BR.js
@@ -0,0 +1,37 @@
+OC.L10N.register(
+    "user_status",
+    {
+    "Recent statuses" : "Status recentes",
+    "In a meeting" : "Em reunião",
+    "Out sick" : "Doente",
+    "Vacationing" : "Férias",
+    "Working remotely" : "Em trabalho remoto",
+    "User status" : "Status do usuário",
+    "Clear status message after" : "Limpar status do usuário após",
+    "What's your status?" : "Qual é o seu status?",
+    "Set status" : "Definir status",
+    "Online status" : "Status online",
+    "Status message" : "Mensagem de status",
+    "Clear status message" : "Limpar mensagem de status",
+    "Set status message" : "Definir mensagem de status",
+    "There was an error saving the status" : "Ocorreu um erro ao salvar o status",
+    "There was an error clearing the status" : "Ocorreu um erro ao limpar o status",
+    "No recent status changes" : "Sem alterações de status recentes",
+    "Away" : "Fora",
+    "Do not disturb" : "Não perturbe",
+    "{status}, {timestamp}" : "{status}, {timestamp}",
+    "Don't clear" : "Não limpar",
+    "Today" : "Hoje",
+    "This week" : "Esta semana",
+    "Online" : "Online",
+    "Invisible" : "Invisível",
+    "Offline" : "Offline",
+    "There was an error saving the new status" : "Ocorreu um erro ao salvar o novo status",
+    "30 minutes" : "30 minutos",
+    "1 hour" : "1 hora",
+    "4 hours" : "4 horas",
+    "Mute all notifications" : "Silenciar todas as notificações",
+    "Appear offline" : "Aparecer offline",
+    "Clear status after" : "Limpar status após"
+},
+"nplurals=2; plural=(n > 1);");
diff --git a/apps/user_status/l10n/pt_BR.json b/apps/user_status/l10n/pt_BR.json
new file mode 100644
index 0000000000000000000000000000000000000000..6d632c52de15efa4a1732c5353cec5f1e0739c8c
--- /dev/null
+++ b/apps/user_status/l10n/pt_BR.json
@@ -0,0 +1,35 @@
+{ "translations": {
+    "Recent statuses" : "Status recentes",
+    "In a meeting" : "Em reunião",
+    "Out sick" : "Doente",
+    "Vacationing" : "Férias",
+    "Working remotely" : "Em trabalho remoto",
+    "User status" : "Status do usuário",
+    "Clear status message after" : "Limpar status do usuário após",
+    "What's your status?" : "Qual é o seu status?",
+    "Set status" : "Definir status",
+    "Online status" : "Status online",
+    "Status message" : "Mensagem de status",
+    "Clear status message" : "Limpar mensagem de status",
+    "Set status message" : "Definir mensagem de status",
+    "There was an error saving the status" : "Ocorreu um erro ao salvar o status",
+    "There was an error clearing the status" : "Ocorreu um erro ao limpar o status",
+    "No recent status changes" : "Sem alterações de status recentes",
+    "Away" : "Fora",
+    "Do not disturb" : "Não perturbe",
+    "{status}, {timestamp}" : "{status}, {timestamp}",
+    "Don't clear" : "Não limpar",
+    "Today" : "Hoje",
+    "This week" : "Esta semana",
+    "Online" : "Online",
+    "Invisible" : "Invisível",
+    "Offline" : "Offline",
+    "There was an error saving the new status" : "Ocorreu um erro ao salvar o novo status",
+    "30 minutes" : "30 minutos",
+    "1 hour" : "1 hora",
+    "4 hours" : "4 horas",
+    "Mute all notifications" : "Silenciar todas as notificações",
+    "Appear offline" : "Aparecer offline",
+    "Clear status after" : "Limpar status após"
+},"pluralForm" :"nplurals=2; plural=(n > 1);"
+}
\ No newline at end of file
diff --git a/apps/weather_status/l10n/es.js b/apps/weather_status/l10n/es.js
index 20b48a02401ea90cc7c4df2880004dc325f71fe5..f825ea53d5b85cde6c2d21ee63d27068f0cb0673 100644
--- a/apps/weather_status/l10n/es.js
+++ b/apps/weather_status/l10n/es.js
@@ -12,6 +12,8 @@ OC.L10N.register(
     "Set custom address" : "Configurar una dirección personalizada",
     "{temperature} {unit} Clear sky at {time}" : "{temperature} {unit} Cielo despejado a las {time}",
     "{temperature} {unit} Cloudy at {time}" : "{temperature} {unit} Nublado a las {time}",
+    "{temperature} {unit} Fair day at {time}" : "{temperature} {unit} Buen día a las {time}",
+    "{temperature} {unit} Fair night at {time}" : "{temperature} {unit} Buena noche a las {time}",
     "{temperature} {unit} Partly cloudy at {time}" : "{temperature} {unit} Parcialmente nublado a las {time}",
     "{temperature} {unit} Foggy at {time}" : "{temperature} {unit} Con brumas a las {time}",
     "{temperature} {unit} Light rain at {time}" : "{temperature} {unit} Lluvia ligera a las {time}",
diff --git a/apps/weather_status/l10n/es.json b/apps/weather_status/l10n/es.json
index b178d7bc82de735f23c6ff006d87bcddea67959e..f8343a101767cc27b69374742ebc4b5fcc78a9ba 100644
--- a/apps/weather_status/l10n/es.json
+++ b/apps/weather_status/l10n/es.json
@@ -10,6 +10,8 @@
     "Set custom address" : "Configurar una dirección personalizada",
     "{temperature} {unit} Clear sky at {time}" : "{temperature} {unit} Cielo despejado a las {time}",
     "{temperature} {unit} Cloudy at {time}" : "{temperature} {unit} Nublado a las {time}",
+    "{temperature} {unit} Fair day at {time}" : "{temperature} {unit} Buen día a las {time}",
+    "{temperature} {unit} Fair night at {time}" : "{temperature} {unit} Buena noche a las {time}",
     "{temperature} {unit} Partly cloudy at {time}" : "{temperature} {unit} Parcialmente nublado a las {time}",
     "{temperature} {unit} Foggy at {time}" : "{temperature} {unit} Con brumas a las {time}",
     "{temperature} {unit} Light rain at {time}" : "{temperature} {unit} Lluvia ligera a las {time}",