diff --git a/example.config.ini b/example.config.ini index 83cf31c..fe4ef8f 100644 --- a/example.config.ini +++ b/example.config.ini @@ -5,7 +5,7 @@ name = OpenAuthService port = 3000 [mail] -server = mail.stamm.me +server = mail.example.com username = test password = test port = 595 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index f1c4ce2..62dd291 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18,9 +18,9 @@ } }, "@hibas123/safe_mongo": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/@hibas123/safe_mongo/-/safe_mongo-1.3.3.tgz", - "integrity": "sha512-ekEusgpuFqKBB2rt0FH0m7u4YEq2kRpUXUM7PrJNV9onLxSRmUtuJErA59PVhMWvZPVXnSn/Z69aebScxdH+BQ==", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/@hibas123/safe_mongo/-/safe_mongo-1.3.4.tgz", + "integrity": "sha512-JX1L5XWamAcmxZ8RB+yMEurKO84rGFm06yRS3php0g7LJUbBZJlWB13yJAlNx254z9zLUfXisRaAJz+EA3E+qw==", "requires": { "@hibas123/nodelogging": "^1.3.18", "mongodb": "^3.1.8" @@ -254,7 +254,8 @@ "@types/node": { "version": "10.12.2", "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.2.tgz", - "integrity": "sha512-53ElVDSnZeFUUFIYzI8WLQ25IhWzb6vbddNp8UHlXQyU0ET2RhV5zg0NfubzU7iNMh5bBXb0htCzfvrSVNgzaQ==" + "integrity": "sha512-53ElVDSnZeFUUFIYzI8WLQ25IhWzb6vbddNp8UHlXQyU0ET2RhV5zg0NfubzU7iNMh5bBXb0htCzfvrSVNgzaQ==", + "dev": true }, "@types/node-rsa": { "version": "0.4.3", @@ -293,6 +294,7 @@ "version": "3.4.4", "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-3.4.4.tgz", "integrity": "sha512-tPIgT0GUmdJQNSHxp0X2jnpQfBSTfGxUMc/2CXBU2mnyTFVYVa2ojpoQ74w0U2yn2vw3jnC640+77lkFFpdVDw==", + "dev": true, "requires": { "@types/node": "*" } diff --git a/package.json b/package.json index 7cdaf26..b45592c 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "dependencies": { "@hibas123/nodelogging": "^1.3.21", "@hibas123/nodeloggingserver_client": "^1.1.2", - "@hibas123/safe_mongo": "^1.3.3", + "@hibas123/safe_mongo": "^1.3.4", "body-parser": "^1.18.3", "compression": "^1.7.3", "cookie-parser": "^1.4.3", @@ -51,4 +51,4 @@ "tedious": "^2.6.4", "uuid": "^3.3.2" } -} \ No newline at end of file +} diff --git a/src/api/admin/permission.ts b/src/api/admin/permission.ts index af7b972..9ee422b 100644 --- a/src/api/admin/permission.ts +++ b/src/api/admin/permission.ts @@ -5,6 +5,7 @@ import promiseMiddleware from "../../helper/promiseMiddleware"; import Permission from "../../models/permissions"; import verify, { Types } from "../middlewares/verify"; import Client from "../../models/client"; +import { ObjectID } from "bson"; const PermissionRoute: Router = Router(); PermissionRoute.use(GetUserMiddleware(true, true), (req: Request, res, next) => { @@ -15,12 +16,16 @@ PermissionRoute.use(GetUserMiddleware(true, true), (req: Request, res, next) => PermissionRoute.route("/") .get(promiseMiddleware(async (req, res) => { - let permission = await Permission.find({}); + let query = {}; + if (req.query.client) { + query = { client: new ObjectID(req.query.client) } + } + let permission = await Permission.find(query); res.json(permission); })) .post(verify({ - clientId: { - type: Types.NUMBER + client: { + type: Types.STRING }, name: { type: Types.STRING @@ -29,7 +34,7 @@ PermissionRoute.route("/") type: Types.STRING } }, true), promiseMiddleware(async (req, res) => { - let client = await Client.findById(req.body.clientId); + let client = await Client.findById(req.body.client); if (!client) { throw new RequestError("Client not found", HttpStatusCode.BAD_REQUEST); } @@ -40,6 +45,10 @@ PermissionRoute.route("/") }); await Permission.save(permission); res.json(permission); - })) + })).delete(promiseMiddleware(async (req, res) => { + let { id } = req.query; + await Permission.delete(id); + res.json({ success: true }); + })); export default PermissionRoute; \ No newline at end of file diff --git a/views/src/admin/admin.hbs b/views/src/admin/admin.hbs index a1e1b77..a7f82d5 100644 --- a/views/src/admin/admin.hbs +++ b/views/src/admin/admin.hbs @@ -164,6 +164,7 @@
+ @@ -183,8 +184,11 @@ \{{ website }} - - + + +