mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-02-02 16:29:39 +00:00
Example of potential plugin implementation
This commit is contained in:
parent
71b943f434
commit
62bd7e73f4
15 changed files with 347 additions and 7 deletions
24
server/controllers/PluginController.js
Normal file
24
server/controllers/PluginController.js
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
const { Request, Response } = require('express')
|
||||
const PluginManager = require('../managers/PluginManager')
|
||||
const Logger = require('../Logger')
|
||||
|
||||
class PluginController {
|
||||
constructor() {}
|
||||
|
||||
/**
|
||||
* POST: /api/plugins/action
|
||||
*
|
||||
* @param {Request} req
|
||||
* @param {Response} res
|
||||
*/
|
||||
handleAction(req, res) {
|
||||
const pluginSlug = req.body.pluginSlug
|
||||
const actionName = req.body.pluginAction
|
||||
const target = req.body.target
|
||||
const data = req.body.data
|
||||
Logger.info(`[PluginController] Handle plugin action ${pluginSlug} ${actionName} ${target}`, data)
|
||||
PluginManager.onAction(pluginSlug, actionName, target, data)
|
||||
res.sendStatus(200)
|
||||
}
|
||||
}
|
||||
module.exports = new PluginController()
|
||||
Loading…
Add table
Add a link
Reference in a new issue