API add methods Glue & NS

This commit is contained in:
Drew Warren 2017-04-06 15:14:17 -06:00
parent 3a805d071a
commit a4f29edf4e
1 changed files with 64 additions and 0 deletions

View File

@ -16,4 +16,68 @@ OAUTH3.api['domains.list'] = function (providerUri, opts) {
});
};
OAUTH3.api['ns.list'] = function (providerUri, opts) {
var domain = opts.domain;
var session = opts.session;
var nameArr = domain.split('.');
var reverseNameArr = nameArr.reverse();
var nameSubArr = reverseNameArr.slice(3);
var tld;
var sld;
var sub;
if (reverseNameArr[0] === 'me' && reverseNameArr[1] === 'daplie') {
tld = 'daplie.me';
sld = reverseNameArr[2];
sub = nameSubArr.reverse().join('.') || '';
} else {
tld = nameArr[0];
sld = nameArr[1];
sub = reverseNameArr.slice(2).reverse().join('.') || '';
}
return OAUTH3.request({
method: 'GET'
, url: OAUTH3.url.normalize(providerUri)
+ '/api/com.daplie.domains/accounts/' + session.token.sub + '/ns/'
+ tld + '/' + sld + '/' + sub
, session: session
}).then(function (res) {
return res.data;
});
};
OAUTH3.api['glue.list'] = function (providerUri, opts) {
var session = opts.session;
return OAUTH3.request({
method: 'GET'
, url: OAUTH3.url.normalize(providerUri)
+ '/api/com.daplie.domains/accounts/' + session.token.sub + '/glue'
, session: session
}).then(function (res) {
return res.data;
});
};
OAUTH3.api['glue.add'] = function (providerUri, opts) {
var session = opts.session;
var glueIp = opts.glueIp;
var tld = opts.tld;
var sld = opts.sld;
var sub = opts.sub;
return OAUTH3.request({
method: 'POST'
, url: OAUTH3.url.normalize(providerUri)
+ '/api/com.daplie.domains/accounts' + session.token.sub + '/glue/'
+ tld + '/' + sld + '/' + sub
, session: session
, body: { ip: glueIp }
}, {}).then(function (res) {
console.log('glue-add res: ', res);
});
};
}('undefined' !== typeof exports ? exports : window));