127.0.0.1:8000 watch-together / master server / websocket / messages / delete-video.js
master

Tree @master (Download .tar.gz)

delete-video.js @masterraw · history · blame

const utils = require('../../utils');
const ws_utils = require('../utils');
const path = require('path');

module.exports = function(user_id, video_id, respond) {
    utils.query("DELETE FROM videos WHERE video_id=? AND created_by=? AND status=?", [
        video_id, user_id, utils.status.video.ready
    ]).catch(utils.handle_err.sql(ws_utils.log)).then(function(result) {
        if (!result.affectedRows) {
            return utils.reject("Cannot delete video");
        }
        return utils.rimraf(path.join(VIDEO_ROOT, video_id)).then(function() {
            return ws_utils.broadcast_storage();
        }).then(function() {
            respond(utils.ok({
                video_id: video_id,
                reason: "deleted"
            }));
        });
    }).catch(ws_utils.handle_err.res(
        respond, "Error deleting video"
    ));
};