index.js 920 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. 'use strict'
  2. const express = require('express')
  3. const router = express.Router()
  4. const paths = require('../../paths')
  5. const getUserHosts = require('../../actions/getUserHosts')
  6. const saveHosts = require('../../actions/saveHosts')
  7. const svr = require('../../svr')
  8. router.get('/list', (req, res) => {
  9. getUserHosts()
  10. .then(list => {
  11. let data = {
  12. success: true,
  13. data: list
  14. }
  15. res.end(JSON.stringify(data))
  16. })
  17. .catch(e => {
  18. res.end(e.toString())
  19. })
  20. })
  21. router.get('/toggle', (req, res) => {
  22. let id = req.param('id')
  23. getUserHosts()
  24. .then(list => {
  25. let item = list.find(i => i.id === id)
  26. if (!item) {
  27. res.end('not-found:' + id)
  28. return
  29. }
  30. item.on = !item.on
  31. saveHosts(svr, list)
  32. .then(() => {
  33. svr.broadcast('reload')
  34. res.end('toggle:' + id)
  35. })
  36. })
  37. })
  38. module.exports = router