]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/controllers/api/remote/pods.js
Update README
[github/Chocobozzz/PeerTube.git] / server / controllers / api / remote / pods.js
CommitLineData
34831b48
C
1'use strict'
2
3const express = require('express')
4const waterfall = require('async/waterfall')
5
6const db = require('../../../initializers/database')
7const middlewares = require('../../../middlewares')
8const checkSignature = middlewares.secure.checkSignature
9const signatureValidator = middlewares.validators.remote.signature
10
11const router = express.Router()
12
13// Post because this is a secured request
14router.post('/remove',
15 signatureValidator.signature,
16 checkSignature,
17 removePods
18)
19
20// ---------------------------------------------------------------------------
21
22module.exports = router
23
24// ---------------------------------------------------------------------------
25
26function removePods (req, res, next) {
27 const host = req.body.signature.host
28
29 waterfall([
30 function loadPod (callback) {
31 db.Pod.loadByHost(host, callback)
32 },
33
34 function deletePod (pod, callback) {
35 pod.destroy().asCallback(callback)
36 }
37 ], function (err) {
38 if (err) return next(err)
39
40 return res.type('json').status(204).end()
41 })
42}