aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/controllers/api/remote/pods.ts
diff options
context:
space:
mode:
authorChocobozzz <florian.bigard@gmail.com>2017-05-15 22:22:03 +0200
committerChocobozzz <florian.bigard@gmail.com>2017-05-20 09:57:40 +0200
commit65fcc3119c334b75dd13bcfdebf186afdc580a8f (patch)
tree4f2158c61a9b7c3f47cfa233d01413b946ee53c0 /server/controllers/api/remote/pods.ts
parentd5f345ed4cfac4e1fa84dcb4fce1cda4d32f9c73 (diff)
downloadPeerTube-65fcc3119c334b75dd13bcfdebf186afdc580a8f.tar.gz
PeerTube-65fcc3119c334b75dd13bcfdebf186afdc580a8f.tar.zst
PeerTube-65fcc3119c334b75dd13bcfdebf186afdc580a8f.zip
First typescript iteration
Diffstat (limited to 'server/controllers/api/remote/pods.ts')
-rw-r--r--server/controllers/api/remote/pods.ts40
1 files changed, 40 insertions, 0 deletions
diff --git a/server/controllers/api/remote/pods.ts b/server/controllers/api/remote/pods.ts
new file mode 100644
index 000000000..85ef7bb42
--- /dev/null
+++ b/server/controllers/api/remote/pods.ts
@@ -0,0 +1,40 @@
1import express = require('express')
2import { waterfall } from 'async/waterfall'
3
4const db = require('../../../initializers/database')
5import { checkSignature, signatureValidator } from '../../../middlewares'
6
7const remotePodsRouter = express.Router()
8
9// Post because this is a secured request
10remotePodsRouter.post('/remove',
11 signatureValidator,
12 checkSignature,
13 removePods
14)
15
16// ---------------------------------------------------------------------------
17
18export {
19 remotePodsRouter
20}
21
22// ---------------------------------------------------------------------------
23
24function removePods (req, res, next) {
25 const host = req.body.signature.host
26
27 waterfall([
28 function loadPod (callback) {
29 db.Pod.loadByHost(host, callback)
30 },
31
32 function deletePod (pod, callback) {
33 pod.destroy().asCallback(callback)
34 }
35 ], function (err) {
36 if (err) return next(err)
37
38 return res.type('json').status(204).end()
39 })
40}