diff --git a/src/translation/de.json b/src/translation/de.json
index fa1c3d361..b2665f40d 100644
--- a/src/translation/de.json
+++ b/src/translation/de.json
@@ -1320,7 +1320,7 @@
"enableRecoveryModeAction": "Wiederherstellungsmodus aktivieren",
"description": "Wenn die Anwendung nicht antwortet, bitte einen Neustart versuchen. Wenn die Anwendung aufgrund eines defekten Plugins oder einer Fehlkonfiguration ständig neu gestartet wird, die Anwendung in den Wiederherstellungsmodus bringen, um auf die Konsole zuzugreifen.\nFolgende Hinweise befolgen, um die Anwendung wieder zum Laufen zu bringen.",
"restartAction": "Anwendung neustarten",
- "disableRecoveryModeAction": "Wiederherstellungsmodus aktivieren"
+ "disableRecoveryModeAction": "Wiederherstellungsmodus deaktivieren"
},
"taskError": {
"description": "Wenn ein Konfigurations-, Aktualisierungs-, Wiederherstellungs- oder Sicherungsauftrag zu einem Fehler geführt hat, Auftrag erneut versuchen.",
diff --git a/src/translation/en.json b/src/translation/en.json
index 45947b09c..e49c5e185 100644
--- a/src/translation/en.json
+++ b/src/translation/en.json
@@ -79,7 +79,9 @@
},
"navbar": {
"users": "Users"
- }
+ },
+ "disableAction": "Disable",
+ "enableAction": "Enable"
},
"appstore": {
"title": "App Store",
@@ -667,6 +669,13 @@
"dnsblZonesInfo": "Connecting IP address is looked up in these IP blocklists",
"dnsblZonesPlaceholder": "Line separated zone names",
"title": "Change Email ACL"
+ },
+ "mailboxSharing": {
+ "title": "Mailbox Sharing",
+ "description": "When enabled, users can share their IMAP folders with other users.",
+ "enabled": "Mailbox sharing is currently enabled.",
+ "disabled": "Mailbox sharing is currently disabled.",
+ "enableAction": "Enable"
}
},
"network": {
diff --git a/src/translation/es.json b/src/translation/es.json
index c086df618..f6111a6e9 100644
--- a/src/translation/es.json
+++ b/src/translation/es.json
@@ -223,7 +223,8 @@
"groups": "Grupos",
"user": "Usuario",
"setGhostTooltip": "Suplantar",
- "invitationTooltip": "Invitar Usuario"
+ "invitationTooltip": "Invitar Usuario",
+ "mailmanagerTooltip": "Este usuario puede administrar usuarios y buzones de correo"
},
"newUserAction": "Nuevo Usuario",
"title": "Usuarios",
@@ -237,7 +238,8 @@
"owner": "Super-administrador",
"admin": "Administrador",
"usermanager": "Gestión de usuarios",
- "user": "Usuario"
+ "user": "Usuario",
+ "mailmanager": "Administrador de usuario y correo electrónico"
},
"externalLdapDialog": {
"title": "Configurar LDAP"
@@ -309,7 +311,8 @@
"title": "Crear contraseña para suplantar {{ username }}",
"description": "Establecer una contraseña temporal para iniciar sesión en nombre de este usuario en las aplicaciones o en el panel. Esta contraseña es válida por 6 horas.",
"password": "Contraseña",
- "setPassword": "Establecer contraseña"
+ "setPassword": "Establecer contraseña",
+ "generatePassword": "Generar Contraseña"
},
"setGhost": {
"password": "Contraseña"
diff --git a/src/translation/nl.json b/src/translation/nl.json
index 2c64e1ebe..336498f63 100644
--- a/src/translation/nl.json
+++ b/src/translation/nl.json
@@ -76,6 +76,9 @@
"weeksAgo": "{{ w }} weken geleden",
"monthsAgo": "{{ m }} maanden geleden",
"yearsAgo": "{{ y }} jaren geleden"
+ },
+ "navbar": {
+ "users": "Gebruikers"
}
},
"appstore": {
diff --git a/src/views/emails.html b/src/views/emails.html
index 7740beed4..0b3f0fa71 100644
--- a/src/views/emails.html
+++ b/src/views/emails.html
@@ -215,7 +215,7 @@
-
+
{{ 'emails.title' | tr }}
@@ -232,7 +232,7 @@
{{ 'emails.domains.title' | tr }}
-
+
@@ -278,11 +278,26 @@
+
+
{{ 'emails.mailboxSharing.title' | tr }}
+
+
+
+
+
+
{{ 'emails.mailboxSharing.description' | tr }}
+
{{ 'emails.mailboxSharing.enabled' | tr }}
+
{{ 'emails.mailboxSharing.disabled' | tr }}
+
+
+
+
+
{{ 'emails.settings.title' | tr }}
-
+
diff --git a/src/views/emails.js b/src/views/emails.js
index b35221d9a..9d44ed505 100644
--- a/src/views/emails.js
+++ b/src/views/emails.js
@@ -157,9 +157,7 @@ angular.module('Application').controller('EmailsController', ['$scope', '$locati
$scope.mailboxSharing = {
busy: false,
error: null,
- size: 0,
- enable: false,
- enabled: false,
+ enabled: null, // null means we have not refreshed yet
refresh: function () {
Client.getMailboxSharing(function (error, enabled) {
@@ -169,30 +167,17 @@ angular.module('Application').controller('EmailsController', ['$scope', '$locati
});
},
- show: function() {
- $scope.mailboxSharing.busy = false;
- $scope.mailboxSharing.error = null;
- $scope.mailboxSharing.enable = $scope.mailboxSharing.enabled;
-
- $scope.mailboxSharingChangeForm.$setUntouched();
- $scope.mailboxSharingChangeForm.$setPristine();
-
- $('#mailboxSharingChangeModal').modal('show');
- },
-
submit: function () {
$scope.mailboxSharing.busy = true;
- Client.setMailboxSharing($scope.mailboxSharing.enable, function (error) {
- $scope.mailboxSharing.busy = false;
-
- if (error) return console.error(error);
-
- $scope.mailboxSharing.enabled = $scope.mailboxSharing.enable;
-
- $('#mailboxSharingChangeModal').modal('hide');
+ Client.setMailboxSharing(!$scope.mailboxSharing.enabled, function (error) {
+ // give sometime for mail server to restart
+ $timeout(function () {
+ $scope.mailboxSharing.busy = false;
+ if (error) return console.error(error);
+ $scope.mailboxSharing.enabled = !$scope.mailboxSharing.enabled;
+ }, 3000);
});
-
}
};