mailboxes: be explicit about what is exported

This commit is contained in:
Girish Ramakrishnan
2022-02-16 23:10:10 -08:00
parent 9567efeb45
commit 9d8f21f78d
2 changed files with 13 additions and 2 deletions

View File

@@ -209,7 +209,7 @@
<div class="modal-body">
<div ng-show="!mailboxImport.done">
<div ng-show="!mailboxImport.busy">
<p>The import requires a specific schema for JSON. The detailed schema is described in our <a href="" target="_blank">documentation</a></p>
<p>The import requires a specific schema for JSON. The detailed schema is described in our <a href="https://cloudron.io/documentation/email/#import" target="_blank">documentation</a></p>
<input type="file" style="display: none;" id="mailboxImportFileInput" accept="application/json"/>
<button class="btn btn-primary" ng-click="mailboxImport.openFileInput()">Select JSON file</button>
<br/>

View File

@@ -449,7 +449,18 @@ angular.module('Application').controller('EmailController', ['$scope', '$locatio
return console.error('Failed to list mailboxes.', error);
}
var file = new Blob([ JSON.stringify(result, null, 2) ], { type: 'application/json' });
var content = JSON.stringify(result.map(function (mailbox) {
return {
name: mailbox.name,
domain: mailbox.domain,
ownerId: mailbox.ownerId,
ownerType: mailbox.ownerType,
active: mailbox.ative,
aliases: mailbox.aliases
};
}), null, 2);
var file = new Blob([ content ], { type: 'application/json' });
var a = document.createElement('a');
a.href = URL.createObjectURL(file);
a.download = $scope.domain.domain.replaceAll('.','_') + '-mailboxes.json';