diff --git a/oauth3.dns.js b/oauth3.dns.js index abc139e..22c92e2 100644 --- a/oauth3.dns.js +++ b/oauth3.dns.js @@ -31,15 +31,23 @@ OAUTH3.api['devices.list'] = function (providerUri, opts) { OAUTH3.api['devices.attach'] = function (providerUri, opts) { var session = opts.session; + var device = opts.device; + var tld = opts.tld; + var sld = opts.sld; + var sub = opts.sub; + var ip = opts.ip; + var ttl = opts.ttl; return OAUTH3.request({ url: OAUTH3.url.normalize(providerUri) - + '/api/com.daplie.domains/accounts/' + session.token.sub - //+ '/devices/' + device + '/' - + '/devices/' + (opts.data.uid || '_') + '/' + opts.data.device - + '/' + opts.data.tld + '/' + opts.data.sld + '/' + (opts.data.sub || '') + + '/api/com.daplie.domains/accounts/' + session.token.sub + '/devices/' + + device + '/' + tld + '/' + sld + '/' + (sub || '') , method: 'POST' , session: session + , data: { + addresses: ip + , ttl: ttl + } }, {}).then(function (res) { return res.data.devices || res.data; }); @@ -76,4 +84,35 @@ OAUTH3.api['devices.detach'] = function (providerUri, opts) { }); }; +OAUTH3.api['dns.set'] = function (providerUri, opts) { + var session = opts.session; + var tld = opts.tld; + var sld = opts.sld; + var sub = opts.sub; + var type = opts.selected; + var value = opts.value; + var ttl = opts.ttl; + var priority = (opts.priority || ''); + var weight = (opts.weight || ''); + var port = (opts.port || ''); + + return OAUTH3.request({ + url: OAUTH3.url.normalize(providerUri) + + '/api/com.daplie.domains/accounts/' + session.token.sub + + '/dns/' + tld + '/' + sld + '/' + sub + , method: 'POST' + , session: session + , data: [{ + type: type + , value: value + , ttl: ttl + , priority: priority + , weight: weight + , port: port + }] + }, {}).then(function (res) { + return res.data || res; + }); +}; + }('undefined' !== typeof exports ? exports : window)); diff --git a/oauth3.domains.js b/oauth3.domains.js index 89ff400..3db3524 100644 --- a/oauth3.domains.js +++ b/oauth3.domains.js @@ -17,9 +17,8 @@ OAUTH3.api['domains.list'] = function (providerUri, opts) { }; OAUTH3.api['ns.list'] = function (providerUri, opts) { - var domain = opts.domain; var session = opts.session; - + var domain = opts.domain; var nameArr = domain.split('.'); var reverseNameArr = nameArr.reverse(); var nameSubArr = reverseNameArr.slice(3); @@ -48,6 +47,25 @@ OAUTH3.api['ns.list'] = function (providerUri, opts) { }); }; +OAUTH3.api['ns.add'] = function (providerUri, opts) { + var session = opts.session + var server = opts.server; + 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 + '/ns/' + + tld + '/' + sld + '/' + sub + , session: session + , data: { nameservers: [server] } + }).then(function (res) { + return res; + }); +}; + OAUTH3.api['glue.list'] = function (providerUri, opts) { var session = opts.session; @@ -76,7 +94,7 @@ OAUTH3.api['glue.add'] = function (providerUri, opts) { , session: session , data: { ip: ip } }, {}).then(function (res) { - console.log('glue-add res: ', res); + return res; }); };