ws.js 2.16 KB
Newer Older
1 2 3
'use strict'

const _ = require('lodash')
4 5

module.exports = (socket) => {
6 7
  if (!socket.request.user.logged_in) {
    return
NGPixel's avatar
NGPixel committed
8
  }
9

10
  // -----------------------------------------
11
  // SEARCH
12
  // -----------------------------------------
13 14

  socket.on('search', (data, cb) => {
15
    cb = cb || _.noop
16
    search.find(data.terms).then((results) => {
17 18 19
      return cb(results) || true
    })
  })
20

21
  // -----------------------------------------
22
  // UPLOADS
23
  // -----------------------------------------
24 25

  socket.on('uploadsGetFolders', (data, cb) => {
26
    cb = cb || _.noop
27
    upl.getUploadsFolders().then((f) => {
28 29 30
      return cb(f) || true
    })
  })
31 32

  socket.on('uploadsCreateFolder', (data, cb) => {
33
    cb = cb || _.noop
34
    upl.createUploadsFolder(data.foldername).then((f) => {
35 36 37
      return cb(f) || true
    })
  })
38 39

  socket.on('uploadsGetImages', (data, cb) => {
40
    cb = cb || _.noop
41
    upl.getUploadsFiles('image', data.folder).then((f) => {
42 43 44
      return cb(f) || true
    })
  })
45

46
  socket.on('uploadsGetFiles', (data, cb) => {
47
    cb = cb || _.noop
48
    upl.getUploadsFiles('binary', data.folder).then((f) => {
49 50 51
      return cb(f) || true
    })
  })
52

53
  socket.on('uploadsDeleteFile', (data, cb) => {
54
    cb = cb || _.noop
55
    upl.deleteUploadsFile(data.uid).then((f) => {
56 57 58
      return cb(f) || true
    })
  })
59 60

  socket.on('uploadsFetchFileFromURL', (data, cb) => {
61
    cb = cb || _.noop
62
    upl.downloadFromUrl(data.folder, data.fetchUrl).then((f) => {
63
      return cb({ ok: true }) || true
64
    }).catch((err) => {
65 66 67 68 69 70
      return cb({
        ok: false,
        msg: err.message
      }) || true
    })
  })
71

NGPixel's avatar
NGPixel committed
72
  socket.on('uploadsRenameFile', (data, cb) => {
73
    cb = cb || _.noop
NGPixel's avatar
NGPixel committed
74
    upl.moveUploadsFile(data.uid, data.folder, data.filename).then((f) => {
75
      return cb({ ok: true }) || true
NGPixel's avatar
NGPixel committed
76
    }).catch((err) => {
77 78 79 80 81 82
      return cb({
        ok: false,
        msg: err.message
      }) || true
    })
  })
NGPixel's avatar
NGPixel committed
83 84

  socket.on('uploadsMoveFile', (data, cb) => {
85
    cb = cb || _.noop
NGPixel's avatar
NGPixel committed
86
    upl.moveUploadsFile(data.uid, data.folder).then((f) => {
87
      return cb({ ok: true }) || true
NGPixel's avatar
NGPixel committed
88
    }).catch((err) => {
89 90 91 92 93 94 95
      return cb({
        ok: false,
        msg: err.message
      }) || true
    })
  })
}