mirror of
https://github.com/dec0dOS/zero-ui.git
synced 2025-07-14 00:53:20 -07:00
refactor: squash commits
This commit is contained in:
parent
63ebcb5915
commit
1e6e237aa3
107 changed files with 20077 additions and 0 deletions
85
backend/routes/member.js
Normal file
85
backend/routes/member.js
Normal file
|
@ -0,0 +1,85 @@
|
|||
const express = require("express");
|
||||
const router = express.Router({ mergeParams: true });
|
||||
|
||||
const auth = require("../services/auth");
|
||||
const member = require("../services/member");
|
||||
|
||||
const api = require("../utils/controller-api");
|
||||
|
||||
// get all members
|
||||
router.get("/", auth.isAuthorized, async function (req, res) {
|
||||
const nwid = req.params.nwid;
|
||||
api
|
||||
.get("controller/network/" + nwid + "/member")
|
||||
.then(async function (controllerRes) {
|
||||
const mids = Object.keys(controllerRes.data);
|
||||
const data = await member.getMembersData(nwid, mids);
|
||||
res.send(data);
|
||||
})
|
||||
.catch(function () {
|
||||
res.status(404).send({ error: "Network not found" });
|
||||
});
|
||||
});
|
||||
|
||||
// get member
|
||||
router.get("/:mid", auth.isAuthorized, async function (req, res) {
|
||||
const nwid = req.params.nwid;
|
||||
const mid = req.params.mid;
|
||||
const data = await member.getMembersData(nwid, [mid]);
|
||||
if (data[0]) {
|
||||
res.send(data[0]);
|
||||
} else {
|
||||
res.status(404).send({ error: "Member not found" });
|
||||
}
|
||||
});
|
||||
|
||||
// update member
|
||||
router.post("/:mid", auth.isAuthorized, async function (req, res) {
|
||||
const nwid = req.params.nwid;
|
||||
const mid = req.params.mid;
|
||||
member.updateMemberAdditionalData(nwid, mid, req.body);
|
||||
if (req.body.config) {
|
||||
api
|
||||
.post("controller/network/" + nwid + "/member/" + mid, req.body.config)
|
||||
.then(async function () {
|
||||
const data = await member.getMembersData(nwid, [mid]);
|
||||
res.send(data[0]);
|
||||
})
|
||||
.catch(function (err) {
|
||||
res.status(500).send({ error: err.message });
|
||||
});
|
||||
} else {
|
||||
const data = await member.getMembersData(nwid, [mid]);
|
||||
res.send(data[0]);
|
||||
}
|
||||
});
|
||||
|
||||
// delete member
|
||||
router.delete("/:mid", auth.isAuthorized, async function (req, res) {
|
||||
const nwid = req.params.nwid;
|
||||
const mid = req.params.mid;
|
||||
member.deleteMemberAdditionalData(nwid, mid);
|
||||
api
|
||||
.delete("controller/network/" + nwid + "/member/" + mid)
|
||||
.then(function () {})
|
||||
.catch(function (err) {
|
||||
res.status(500).send({ error: err.message });
|
||||
});
|
||||
// Need this to fix ZT controller bug https://github.com/zerotier/ZeroTierOne/issues/859
|
||||
const defaultConfig = {
|
||||
authorized: false,
|
||||
ipAssignments: [],
|
||||
capabilities: [],
|
||||
tags: [],
|
||||
};
|
||||
api
|
||||
.post("controller/network/" + nwid + "/member/" + mid, defaultConfig)
|
||||
.then(function (controllerRes) {
|
||||
res.status(controllerRes.status).send("");
|
||||
})
|
||||
.catch(function (err) {
|
||||
res.status(500).send({ error: err.message });
|
||||
});
|
||||
});
|
||||
|
||||
module.exports = router;
|
Loading…
Add table
Add a link
Reference in a new issue