@@ -109,6 +109,15 @@ export class noderedcontribopenflowstorage {
109109 var result = await NoderedUtil . Query ( "nodered" , { _type : "credential" , nodered_id : Config . nodered_id } , null , null , 1 , 0 , null ) ;
110110 if ( result . length === 0 ) { return [ ] ; }
111111 var cred : any = result [ 0 ] . credentials ;
112+ var arr : any = result [ 0 ] . credentialsarray ;
113+ if ( arr !== null && arr !== undefined ) {
114+ cred = { } ;
115+ for ( var i = 0 ; i < arr . length ; i ++ ) {
116+ var key = arr [ i ] . key ;
117+ var value = arr [ i ] . value ;
118+ cred [ key ] = value ;
119+ }
120+ }
112121 return cred ;
113122 } catch ( error ) {
114123 if ( error . message ) { this . _logger . error ( error . message ) ; }
@@ -121,17 +130,31 @@ export class noderedcontribopenflowstorage {
121130 try {
122131 this . _logger . silly ( "noderedcontribopenflowstorage::_saveCredentials" ) ;
123132 var result = await NoderedUtil . Query ( "nodered" , { _type : "credential" , nodered_id : Config . nodered_id } , null , null , 1 , 0 , null ) ;
124- if ( result . length === 0 ) {
125- var item : any = {
126- name : "credentials for " + Config . nodered_id ,
127- credentials : credentials , _type : "credential" , nodered_id : Config . nodered_id ,
128- _encrypt : [ "credentials" ]
129- } ;
130- await NoderedUtil . InsertOne ( "nodered" , item , 1 , true , null ) ;
131- } else {
132- result [ 0 ] . credentials = credentials ;
133- await NoderedUtil . _UpdateOne ( "nodered" , null , result [ 0 ] , 1 , true , null ) ;
133+
134+ var credentialsarray = [ ] ;
135+ var orgkeys = Object . keys ( credentials ) ;
136+ for ( var i = 0 ; i < orgkeys . length ; i ++ ) {
137+ var key = orgkeys [ i ] ;
138+ var value = credentials [ key ] ;
139+ var obj = { key : key , value : value } ;
140+ credentialsarray . push ( obj ) ;
134141 }
142+ if ( credentials )
143+ if ( result . length === 0 ) {
144+ var item : any = {
145+ name : "credentials for " + Config . nodered_id ,
146+ credentials : credentials , credentialsarray : credentialsarray , _type : "credential" , nodered_id : Config . nodered_id ,
147+ _encrypt : [ "credentials" ]
148+ } ;
149+ var subresult = await NoderedUtil . InsertOne ( "nodered" , item , 1 , true , null ) ;
150+ console . log ( subresult ) ;
151+ } else {
152+ var item : any = result [ 0 ] ;
153+ item . credentials = credentials ;
154+ item . credentialsarray = credentialsarray ;
155+ var subresult = await NoderedUtil . _UpdateOne ( "nodered" , null , item , 1 , true , null ) ;
156+ console . log ( subresult ) ;
157+ }
135158 } catch ( error ) {
136159 if ( error . message ) { this . _logger . error ( error . message ) ; }
137160 else { this . _logger . error ( error ) ; }
0 commit comments