Skip to content

Commit c28a1b6

Browse files
committed
feat(GlpiRestClient): register user
1 parent 05c6a88 commit c28a1b6

File tree

1 file changed

+59
-0
lines changed

1 file changed

+59
-0
lines changed

src/restclient.js

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,65 @@ class GlpiRestClient {
253253
})
254254
}
255255

256+
registerUser (userToken, userData) {
257+
return new Promise((resolve, reject) => {
258+
try {
259+
if (Array.isArray(userData)) {
260+
userData.forEach(element => {
261+
if (!element.name) {
262+
reject('missing name in a user')
263+
}
264+
if (!element.realname) {
265+
reject('missing realname in a user')
266+
}
267+
if (!element.password) {
268+
reject('missing password in a user')
269+
}
270+
if (!element.password2) {
271+
reject('missing password2 in a user')
272+
}
273+
})
274+
} else {
275+
276+
if (!userData.name) {
277+
reject('missing name')
278+
}
279+
if (!userData.realname) {
280+
reject('missing realname')
281+
}
282+
if (!userData.password) {
283+
reject('missing password')
284+
}
285+
if (!userData.password2) {
286+
reject('missing password2')
287+
}
288+
}
289+
this.initSessionByUserToken(userToken)
290+
.then(res1 => {
291+
this.addItem(ITEMTYPE.User, userData)
292+
.then(res2 => {
293+
this.killSession()
294+
.then(res3 => {
295+
resolve ( res2 )
296+
})
297+
.catch(err3 => {
298+
reject(err3)
299+
})
300+
})
301+
.catch (err2 => {
302+
reject(err2)
303+
})
304+
})
305+
.catch(err1 => {
306+
reject(err1)
307+
})
308+
}
309+
catch (err) {
310+
reject(err)
311+
}
312+
})
313+
}
314+
256315
}
257316

258317
export default GlpiRestClient

0 commit comments

Comments
 (0)