router.get('/methods.json', (req, res) => { const {type} = req.query; const {args} = req.query; let method = 'system.listMethods'; if (type === 'help') { method = 'system.methodHelp'; } else if (type === 'signature') { method = 'system.methodSignature'; } client.listMethods(req.user, req.services, method, args, ajaxUtil.getResponseFn(res)); });
router.post('/torrents/delete', (req, res) => { const {deleteData, hash: hashes} = req.body; const callback = ajaxUtil.getResponseFn(res); req.services.clientGatewayService .removeTorrents({hashes, deleteData}) .then(callback) .catch(err => { callback(null, err); }); });
router.put('/feed-monitor/feeds/:id', (req, res) => { req.services.feedService.modifyFeed(req.params.id, req.body, ajaxUtil.getResponseFn(res)); });
router.get('/connection-test', (req, res) => { req.services.clientGatewayService .testGateway() .then(() => { res.status(200).json({isConnected: true}); }) .catch(() => { res.status(500).json({isConnected: false}); }); });
router.patch('/torrents/taxonomy', (req, res) => { client.setTaxonomy(req.user, req.services, req.body, ajaxUtil.getResponseFn(res)); });
router.post('/torrent-details', (req, res) => { client.getTorrentDetails(req.user, req.services, req.body.hash, ajaxUtil.getResponseFn(res)); });
router.post('/connection-test', (req, res) => { req.services.clientGatewayService .testGateway(req.body) .then(() => { res.status(200).json({isConnected: true}); }) .catch(() => { res.status(500).json({isConnected: false}); }); });
router.get('/feed-monitor/items', (req, res) => { req.services.feedService.getItems(req.query, ajaxUtil.getResponseFn(res)); });
router.post('/add-files', upload.array('torrents'), booleanCoerce('isBasePath'), (req, res) => { client.addFiles(req.user, req.services, req, ajaxUtil.getResponseFn(res)); });
router.delete('/feed-monitor/:id', (req, res) => { req.services.feedService.removeItem(req.params.id, ajaxUtil.getResponseFn(res)); });
router.post('/add', (req, res) => { client.addUrls(req.user, req.services, req.body, ajaxUtil.getResponseFn(res)); });
router.get('/feed-monitor/feeds', (req, res) => { req.services.feedService.getFeeds(req.body.query, ajaxUtil.getResponseFn(res)); });
router.get('/settings', (req, res) => { client.getSettings(req.user, req.services, req.query, ajaxUtil.getResponseFn(res)); });
router.post('/stop', (req, res) => { client.stopTorrent(req.user, req.services, req.body.hashes, ajaxUtil.getResponseFn(res)); });
router.post('/torrents/move', (req, res) => { client.moveTorrents(req.user, req.services, req.body, ajaxUtil.getResponseFn(res)); });