| | |
| | | |
| | | module.exports = { |
| | | deleteUser, |
| | | deleteAllUsers, |
| | | deleteTeilnahme, |
| | | } |
| | | |
| | | ///////////////////////////////////////////////////////////////////////// |
| | | |
| | | const settings = require("../settings") |
| | | const {url} = settings.ilias |
| | | const {getObjIdFromRefId} = require("./db") |
| | | const db = require("./db") |
| | | const {url, iliastoken} = settings.ilias |
| | | |
| | | ///////////////////////////////////////////////////////////////////////// |
| | | |
| | |
| | | const sp = new URLSearchParams({ |
| | | command: "deleteUser", |
| | | obj_id, |
| | | dry : dry ? "1" : "0", |
| | | // dry: "1", |
| | | dry: dry ? "1" : "0", |
| | | token: iliastoken, |
| | | }) |
| | | let url2 = `${url}?${sp.toString()}` |
| | | console.log("libIlias.deleteUser >>>", url2) |
| | | const res = await fetch(url2, {method: "DELETE"}) |
| | | // console.log(res) |
| | | const data = await res.json() |
| | | return data |
| | | // TODO update search index |
| | | return data // |
| | | } |
| | | |
| | | async function deleteAllUsers () { |
| | | const {data: users} = await db.getUsers(0, 100000) |
| | | const res = { |
| | | command: "deleteAllUsers", |
| | | start: new Date(), |
| | | end: new Date(), |
| | | duration: null, |
| | | count: 0, |
| | | userIds: [], |
| | | } |
| | | for (const user of users) { |
| | | await deleteUser(user.usr_id) |
| | | res.count += 1 |
| | | res.userIds.push(user.usr_id) |
| | | } |
| | | res.end = new Date() |
| | | res.duration = res.end - res.start |
| | | // TODO update search index |
| | | return res |
| | | } |
| | | |
| | | async function deleteTeilnahme (ref_id, usr_id, dry = false) { |
| | | const {obj_id} = await getObjIdFromRefId(ref_id) |
| | | const sp = new URLSearchParams({ |
| | | command: "deleteTeilnahme", |
| | | obj_id, |
| | | usr_id, |
| | | dry: dry ? "1" : "0", |
| | | token: iliastoken, |
| | | }) |
| | | let url2 = `${url}?${sp.toString()}` |
| | | console.log("libIlias.deleteTeilnahme >>>", url2) |
| | | let res |
| | | try { |
| | | res = await fetch(url2, {method: "DELETE"}) |
| | | return await res.json() |
| | | } catch (ex) { |
| | | console.error(ex) |
| | | throw ex |
| | | } |
| | | } |