11var soap = require ( 'soap' ) ,
22 events = require ( 'events' ) ,
3- sys = require ( 'sys ' ) ;
3+ util = require ( 'util ' ) ;
44
55var API = function ( opts ) {
66 var self = this ;
77 this . auth = {
88 'UserName' : opts . username ,
99 'Password' : opts . password
1010 } ;
11- if ( opts . dev === "true" ) {
12- this . url = 'https://testsystem.globalsign.com/kb/ws/v1/' ;
13- } else {
14- this . url = 'https://system.globalsign.com/kb/ws/v1/' ;
15- }
16-
17- console . log ( this . url ) ;
11+ this . host = opts . host ;
12+ console . log ( this . host ) ;
1813
19- soap . createClient ( this . url + 'ServerSSLService?wsdl' , function ( err , client ) {
14+ soap . createClient ( this . host + 'ServerSSLService?wsdl' , function ( err , client ) {
15+ console . log ( err ) ;
2016 if ( err ) return err ;
2117 self . client = client ;
2218 self . emit ( 'ready' ) ;
2319 } ) ;
2420} ;
2521
26- sys . inherits ( API , events . EventEmitter ) ;
22+ util . inherits ( API , events . EventEmitter ) ;
2723
2824
2925/**
@@ -49,6 +45,18 @@ API.prototype.getAccountInfo = function(callback) {
4945 'message' : err
5046 }
5147 } , undefined ) ;
48+
49+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
50+ var errors = _getErrorMessage ( result . Response . QueryResponseHeader . Errors . Error ) ;
51+ return callback ( {
52+ 'status' : '500' ,
53+ 'output' : {
54+ 'result' : 'error' ,
55+ 'message' : errors
56+ }
57+ } ) ;
58+ }
59+
5260 callback ( undefined , {
5361 'status' : '200' ,
5462 'output' : {
@@ -69,10 +77,6 @@ API.prototype.getAccountInfo = function(callback) {
6977 DV - DomainSSL
7078 OV - OrganizationSSL
7179 EV - ExtendedSSL
72- DV_LOW_SHA2 - AlphaSSL SHA256
73- DV_SHA2 - DomainSSL SHA256
74- OV_SHA2 - OrganizationSSL SHA256
75- EV_SHA2 - ExtendedSSL SHA256
7680 * @param {Function } callback
7781 */
7882API . prototype . asslDecodeCSR = function ( csr , ptype , callback ) {
@@ -95,6 +99,18 @@ API.prototype.asslDecodeCSR = function(csr, ptype, callback) {
9599 'message' : err
96100 }
97101 } , undefined ) ;
102+
103+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
104+ var errors = _getErrorMessage ( result . ResponseQueryResponseHeader . Errors . Error ) ;
105+ return callback ( {
106+ 'status' : '500' ,
107+ 'output' : {
108+ 'result' : 'error' ,
109+ 'message' : errors
110+ }
111+ } ) ;
112+ }
113+
98114 callback ( undefined , {
99115 'status' : '200' ,
100116 'output' : {
@@ -131,6 +147,18 @@ API.prototype.asslGetDVApproverList = function(fqdn, callback) {
131147 'message' : err
132148 }
133149 } , undefined ) ;
150+
151+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
152+ var errors = _getErrorMessage ( result . Response . QueryResponseHeader . Errors . Error ) ;
153+ return callback ( {
154+ 'status' : '500' ,
155+ 'output' : {
156+ 'result' : 'error' ,
157+ 'message' : errors
158+ }
159+ } ) ;
160+ }
161+
134162 callback ( undefined , {
135163 'status' : '200' ,
136164 'output' : {
@@ -176,7 +204,7 @@ API.prototype.asslDVOrderEmail = function(order, wildc, callback) {
176204 'AuthToken' : this . auth ,
177205 } ,
178206 'OrderRequestParameter' : {
179- 'ProductCode' : order . pcode + '_SHA2' ,
207+ 'ProductCode' : order . pcode ,
180208 'OrderKind' : order . orderkind ,
181209 'Licenses' : order . licenses ,
182210 'ValidityPeriod' : {
@@ -210,6 +238,18 @@ API.prototype.asslDVOrderEmail = function(order, wildc, callback) {
210238 'message' : err
211239 }
212240 } , undefined ) ;
241+
242+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
243+ var errors = _getErrorMessage ( result . Response . QueryResponseHeader . Errors . Error ) ;
244+ return callback ( {
245+ 'status' : '500' ,
246+ 'output' : {
247+ 'result' : 'error' ,
248+ 'message' : errors
249+ }
250+ } ) ;
251+ }
252+
213253 callback ( undefined , {
214254 'status' : '200' ,
215255 'output' : {
@@ -255,7 +295,7 @@ API.prototype.asslDVOrderMetatag = function(order, wildc, callback) {
255295 'AuthToken' : this . auth ,
256296 } ,
257297 'OrderRequestParameter' : {
258- 'ProductCode' : order . pcode + '_URL_SHA2' ,
298+ 'ProductCode' : order . pcode ,
259299 'OrderKind' : order . orderkind ,
260300 'Licenses' : order . licenses ,
261301 'ValidityPeriod' : {
@@ -289,6 +329,18 @@ API.prototype.asslDVOrderMetatag = function(order, wildc, callback) {
289329 'message' : err
290330 }
291331 } , undefined ) ;
332+
333+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
334+ var errors = _getErrorMessage ( result . Response . QueryResponseHeader . Errors . Error ) ;
335+ return callback ( {
336+ 'status' : '500' ,
337+ 'output' : {
338+ 'result' : 'error' ,
339+ 'message' : errors
340+ }
341+ } ) ;
342+ }
343+
292344 callback ( undefined , {
293345 'status' : '200' ,
294346 'output' : {
@@ -326,6 +378,17 @@ API.prototype.URLVerificationForIssue = function(orderid, aproverurl, callback)
326378 }
327379 } , undefined ) ;
328380
381+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
382+ var errors = _getErrorMessage ( result . Response . QueryResponseHeader . Errors . Error ) ;
383+ return callback ( {
384+ 'status' : '500' ,
385+ 'output' : {
386+ 'result' : 'error' ,
387+ 'message' : errors
388+ }
389+ } ) ;
390+ }
391+
329392 callback ( undefined , {
330393 'status' : '200' ,
331394 'output' : {
@@ -361,23 +424,21 @@ API.prototype.URLVerificationForIssue = function(orderid, aproverurl, callback)
361424 * @param {Function } callback
362425 */
363426API . prototype . asslDVOrderDNS = function ( order , wildc , callback ) {
364- if ( order . pcode === 'DV' ) {
365- order . pcode = 'DV_HIGH' ;
366- }
367427 var params = {
368428 namespace : 'http://stub.order.gasapiserver.esp.globalsign.com' ,
369429 'Request' : {
370430 'OrderRequestHeader' : {
371431 'AuthToken' : this . auth ,
372432 } ,
373433 'OrderRequestParameter' : {
374- 'ProductCode' : order . pcode + '_DNS_SHA2' ,
434+ 'ProductCode' : order . pcode ,
375435 'OrderKind' : order . orderkind ,
376436 'Licenses' : order . licenses ,
377437 'ValidityPeriod' : {
378438 'Months' : order . months
379439 } ,
380- 'CSR' : order . csr
440+ 'CSR' : order . csr ,
441+ 'Options' : order . options
381442 } ,
382443 'OrderID' : order . orderid ,
383444 'ApproverEmail' : order . approveremail ,
@@ -386,14 +447,16 @@ API.prototype.asslDVOrderDNS = function(order, wildc, callback) {
386447 'LastName' : order . contacinfo . lname ,
387448 'Phone' : order . contacinfo . phone ,
388449 'Email' : order . contacinfo . email
389- } ,
390- 'SecondContactInfo' : {
391- 'FirstName' : order . contacinfo2 . fname ,
392- 'LastName' : order . contacinfo2 . lname ,
393- 'Email' : order . contacinfo2 . email
394450 }
395451 }
396452 } ;
453+ if ( order . contacinfo2 ) {
454+ params . SecondContactInfo = {
455+ 'FirstName' : order . contacinfo2 . fname ,
456+ 'LastName' : order . contacinfo2 . lname ,
457+ 'Email' : order . contacinfo2 . email
458+ } ;
459+ }
397460 if ( wildc === true ) {
398461 params . Request . OrderRequestParameter . BaseOption = 'wildcard' ;
399462 }
@@ -405,6 +468,18 @@ API.prototype.asslDVOrderDNS = function(order, wildc, callback) {
405468 'message' : err
406469 }
407470 } , undefined ) ;
471+
472+ if ( result . Response . OrderResponseHeader . SuccessCode == - 1 ) {
473+ var errors = _getErrorMessage ( result . Response . OrderResponseHeader . Errors . Error ) ;
474+ return callback ( {
475+ 'status' : '500' ,
476+ 'output' : {
477+ 'result' : 'error' ,
478+ 'message' : errors
479+ }
480+ } ) ;
481+ }
482+
408483 callback ( undefined , {
409484 'status' : '200' ,
410485 'output' : {
@@ -442,6 +517,17 @@ API.prototype.DVDNSVerificationForIssue = function(orderid, aproverfqdn, callbac
442517 }
443518 } , undefined ) ;
444519
520+ if ( result . Response . OrderResponseHeader . SuccessCode == - 1 ) {
521+ var errors = _getErrorMessage ( result . Response . OrderResponseHeader . Errors . Error ) ;
522+ return callback ( {
523+ 'status' : '500' ,
524+ 'output' : {
525+ 'result' : 'error' ,
526+ 'message' : errors
527+ }
528+ } ) ;
529+ }
530+
445531 callback ( undefined , {
446532 'status' : '200' ,
447533 'output' : {
@@ -524,6 +610,18 @@ API.prototype.orgsslDVOrder = function(order, callback) {
524610 'message' : err
525611 }
526612 } , undefined ) ;
613+
614+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
615+ var errors = _getErrorMessage ( result . Response . QueryResponseHeader . Errors . Error ) ;
616+ return callback ( {
617+ 'status' : '500' ,
618+ 'output' : {
619+ 'result' : 'error' ,
620+ 'message' : errors
621+ }
622+ } ) ;
623+ }
624+
527625 callback ( undefined , {
528626 'status' : '200' ,
529627 'output' : {
@@ -654,6 +752,18 @@ API.prototype.evsslDVOrder = function(order, callback) {
654752 'message' : err
655753 }
656754 } , undefined ) ;
755+
756+ if ( result . Response . QueryResponseHeader . SuccessCode == - 1 ) {
757+ var errors = _getErrorMessage ( result . Response . QueryResponseHeader . Errors . Error ) ;
758+ return callback ( {
759+ 'status' : '500' ,
760+ 'output' : {
761+ 'result' : 'error' ,
762+ 'message' : errors
763+ }
764+ } ) ;
765+ }
766+
657767 callback ( undefined , {
658768 'status' : '200' ,
659769 'output' : {
@@ -664,4 +774,14 @@ API.prototype.evsslDVOrder = function(order, callback) {
664774 } ) ;
665775} ;
666776
777+ var _getErrorMessage = function ( errors ) {
778+ var msg = '' ;
779+
780+ for ( var i = 0 ; i < errors . length ; i ++ ) {
781+ msg += 'Error ' + errors [ i ] . ErrorCode + ' - ' + ( errors [ i ] . ErrorField ? 'Field ' + errors [ i ] . ErrorField + ' - ' : '' ) + errors [ i ] . ErrorMessage + '\n' ;
782+ }
783+
784+ return msg ;
785+ } ;
786+
667787module . exports = API ;
0 commit comments