Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Z
zimbra-admin-api-js
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Public
zimbra-admin-api-js
Commits
e042fe47
Commit
e042fe47
authored
May 03, 2016
by
Patricio Bruna
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added Archiving Functions
parent
93efc869
Changes
7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
100 additions
and
3 deletions
+100
-3
README.md
README.md
+20
-0
zimbra-admin-api.js
lib/zimbra-admin-api.js
+42
-0
zimbra-admin-api.js.map
lib/zimbra-admin-api.js.map
+1
-1
package.json
package.json
+1
-1
index.js
src/index.js
+28
-0
account.js
src/zimbra/account.js
+8
-0
test.js
test/js/spec/test.js
+0
-1
No files found.
README.md
View file @
e042fe47
...
@@ -297,6 +297,26 @@ account.setPassword(password, callback);
...
@@ -297,6 +297,26 @@ account.setPassword(password, callback);
// Error if not OK
// Error if not OK
```
```
### Enable and Disable Archive
**Only Zimbra Network Edition**
`Enable`
can take the following options:
*
**create**
:
`(0|1)`
if the archive mailbox should be created. Default its 1, create.
*
**name**
: Name of the archive mailbox, if empty the template will be used.
*
**cos_id**
: Name or ID of the COS to assign to the archive mailbox.
*
**password**
: password of the archive mailbox.
*
**attributes**
.
```javascript
account.enableArchive({ cos_id: 'default' }, callback);
// {}
account.disableArchive(callback);
// {}
```
### Get Mailbox
### Get Mailbox
```
javascript
```
javascript
account
.
getMailbox
(
callback
);
account
.
getMailbox
(
callback
);
...
...
lib/zimbra-admin-api.js
View file @
e042fe47
...
@@ -123,6 +123,7 @@ return /******/ (function(modules) { // webpackBootstrap
...
@@ -123,6 +123,7 @@ return /******/ (function(modules) { // webpackBootstrap
// TODO: Eliminar dependencia de client que se pasa a todos lados
// TODO: Eliminar dependencia de client que se pasa a todos lados
request_data.client = this;
request_data.client = this;
request_data.params = this.requestParams();
request_data.params = this.requestParams();
request_data.params.params = {};
request_data.request_name = request_name;
request_data.request_name = request_name;
request_data.params.name = request_data.request_name + 'Request';
request_data.params.name = request_data.request_name + 'Request';
request_data.response_name = request_data.request_name + 'Response';
request_data.response_name = request_data.request_name + 'Response';
...
@@ -343,6 +344,37 @@ return /******/ (function(modules) { // webpackBootstrap
...
@@ -343,6 +344,37 @@ return /******/ (function(modules) { // webpackBootstrap
request_data.params.params = { id: dl_id, dlm: this.dictionary.convertToZimbraArray(members) };
request_data.params.params = { id: dl_id, dlm: this.dictionary.convertToZimbraArray(members) };
return this.performRequest(request_data);
return this.performRequest(request_data);
}
}
// Enable Archiving for an Account
// options = {create: (0|1), name: 'archive_account_name', cos: _cos_id, password:}
// Docs: https://files.zimbra.com/docs/soap_api/8.6.0/api-reference/zimbraAdmin/EnableArchive.html
}, {
key: 'enableArchive',
value: function enableArchive(account_id, options, callback) {
var request_data = this.buildRequestData('EnableArchive', callback);
request_data.parse_response = _response_parser2.default.emptyResponse;
var account = { by: this.dictionary.byIdOrName(account_id), _content: account_id };
var archive = {
create: options.archive || 1,
name: { '_content': options.name },
cos: { by: this.dictionary.byIdOrName(options.cos_id), '_content': options.cos_id },
password: { '_content': options.password },
a: this.dictionary.attributesToArray(options.attributes)
};
request_data.params.params.account = account;
request_data.params.params.archive = archive;
return this.performRequest(request_data);
}
}, {
key: 'disableArchive',
value: function disableArchive(account_id, callback) {
var request_data = this.buildRequestData('DisableArchive', callback);
request_data.parse_response = _response_parser2.default.emptyResponse;
var account = { by: this.dictionary.byIdOrName(account_id), _content: account_id };
request_data.params.params.account = account;
return this.performRequest(request_data);
}
}, {
}, {
key: 'getAccount',
key: 'getAccount',
value: function getAccount(identifier, callback) {
value: function getAccount(identifier, callback) {
...
@@ -13880,6 +13912,16 @@ return /******/ (function(modules) { // webpackBootstrap
...
@@ -13880,6 +13912,16 @@ return /******/ (function(modules) { // webpackBootstrap
return null;
return null;
}
}
}
}
}, {
key: 'enableArchive',
value: function enableArchive(options, callback) {
return this.api.enableArchive(this.id, options, callback);
}
}, {
key: 'disableArchive',
value: function disableArchive(callback) {
return this.api.disableArchive(this.id, callback);
}
}, {
}, {
key: 'setPassword',
key: 'setPassword',
value: function setPassword(password, callback) {
value: function setPassword(password, callback) {
lib/zimbra-admin-api.js.map
View file @
e042fe47
This diff is collapsed.
Click to expand it.
package.json
View file @
e042fe47
{
{
"name"
:
"zimbra-admin-api-js"
,
"name"
:
"zimbra-admin-api-js"
,
"version"
:
"0.0.2
2
"
,
"version"
:
"0.0.2
3
"
,
"private"
:
true
,
"private"
:
true
,
"main"
:
"lib/zimbra-admin-api.js"
,
"main"
:
"lib/zimbra-admin-api.js"
,
"dependencies"
:
{
"dependencies"
:
{
...
...
src/index.js
View file @
e042fe47
...
@@ -21,6 +21,7 @@ export default class ZimbraAdminApi {
...
@@ -21,6 +21,7 @@ export default class ZimbraAdminApi {
// TODO: Eliminar dependencia de client que se pasa a todos lados
// TODO: Eliminar dependencia de client que se pasa a todos lados
request_data
.
client
=
this
;
request_data
.
client
=
this
;
request_data
.
params
=
this
.
requestParams
();
request_data
.
params
=
this
.
requestParams
();
request_data
.
params
.
params
=
{};
request_data
.
request_name
=
request_name
;
request_data
.
request_name
=
request_name
;
request_data
.
params
.
name
=
`
${
request_data
.
request_name
}
Request`
;
request_data
.
params
.
name
=
`
${
request_data
.
request_name
}
Request`
;
request_data
.
response_name
=
`
${
request_data
.
request_name
}
Response`
;
request_data
.
response_name
=
`
${
request_data
.
request_name
}
Response`
;
...
@@ -219,6 +220,33 @@ export default class ZimbraAdminApi {
...
@@ -219,6 +220,33 @@ export default class ZimbraAdminApi {
return
this
.
performRequest
(
request_data
);
return
this
.
performRequest
(
request_data
);
}
}
// Enable Archiving for an Account
// options = {create: (0|1), name: 'archive_account_name', cos: _cos_id, password:}
// Docs: https://files.zimbra.com/docs/soap_api/8.6.0/api-reference/zimbraAdmin/EnableArchive.html
enableArchive
(
account_id
,
options
,
callback
)
{
const
request_data
=
this
.
buildRequestData
(
'EnableArchive'
,
callback
);
request_data
.
parse_response
=
ResponseParser
.
emptyResponse
;
const
account
=
{
by
:
this
.
dictionary
.
byIdOrName
(
account_id
),
_content
:
account_id
};
const
archive
=
{
create
:
(
options
.
archive
||
1
),
name
:
{
'_content'
:
options
.
name
},
cos
:
{
by
:
this
.
dictionary
.
byIdOrName
(
options
.
cos_id
),
'_content'
:
options
.
cos_id
},
password
:
{
'_content'
:
options
.
password
},
a
:
this
.
dictionary
.
attributesToArray
(
options
.
attributes
)
};
request_data
.
params
.
params
.
account
=
account
;
request_data
.
params
.
params
.
archive
=
archive
;
return
this
.
performRequest
(
request_data
);
}
disableArchive
(
account_id
,
callback
)
{
const
request_data
=
this
.
buildRequestData
(
'DisableArchive'
,
callback
);
request_data
.
parse_response
=
ResponseParser
.
emptyResponse
;
const
account
=
{
by
:
this
.
dictionary
.
byIdOrName
(
account_id
),
_content
:
account_id
};
request_data
.
params
.
params
.
account
=
account
;
return
this
.
performRequest
(
request_data
);
}
getAccount
(
identifier
,
callback
)
{
getAccount
(
identifier
,
callback
)
{
return
this
.
get
(
'Account'
,
identifier
,
callback
);
return
this
.
get
(
'Account'
,
identifier
,
callback
);
}
}
...
...
src/zimbra/account.js
View file @
e042fe47
...
@@ -24,6 +24,14 @@ export default class Account extends Zimbra {
...
@@ -24,6 +24,14 @@ export default class Account extends Zimbra {
}
}
}
}
enableArchive
(
options
,
callback
)
{
return
this
.
api
.
enableArchive
(
this
.
id
,
options
,
callback
);
}
disableArchive
(
callback
)
{
return
this
.
api
.
disableArchive
(
this
.
id
,
callback
);
}
setPassword
(
password
,
callback
)
{
setPassword
(
password
,
callback
)
{
this
.
api
.
setPassword
(
this
.
id
,
password
,
callback
);
this
.
api
.
setPassword
(
this
.
id
,
password
,
callback
);
}
}
...
...
test/js/spec/test.js
View file @
e042fe47
...
@@ -324,7 +324,6 @@
...
@@ -324,7 +324,6 @@
done
();
done
();
});
});
});
});
});
});
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment