mirror of https://github.com/calzoneman/sync.git
Don't query the library table for live media
This commit is contained in:
parent
e415e1e1d6
commit
e830ba2d41
63
channel.js
63
channel.js
|
@ -1241,11 +1241,45 @@ Channel.prototype.addMedia = function(data, user) {
|
||||||
"custom embeds");
|
"custom embeds");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if(isLive(data.type) &&
|
||||||
|
!self.hasPermission(user, "playlistaddlive")) {
|
||||||
|
user.socket.emit("queueFail", "You don't have " +
|
||||||
|
"permission to add livestreams");
|
||||||
|
return;
|
||||||
|
}
|
||||||
data.temp = data.temp || isLive(data.type);
|
data.temp = data.temp || isLive(data.type);
|
||||||
data.queueby = user ? user.name : "";
|
data.queueby = user ? user.name : "";
|
||||||
data.maxlength = self.hasPermission(user, "exceedmaxlength")
|
data.maxlength = self.hasPermission(user, "exceedmaxlength")
|
||||||
? 0
|
? 0
|
||||||
: this.opts.maxlength;
|
: this.opts.maxlength;
|
||||||
|
|
||||||
|
var postAdd = function (item, cached) {
|
||||||
|
self.logger.log("### " + user.name + " queued " + item.media.title);
|
||||||
|
self.sendAll("queue", {
|
||||||
|
item: item.pack(),
|
||||||
|
after: item.prev ? item.prev.uid : "prepend"
|
||||||
|
});
|
||||||
|
self.broadcastPlaylistMeta();
|
||||||
|
if(!cached && !item.temp)
|
||||||
|
self.cacheMedia(item.media);
|
||||||
|
}
|
||||||
|
|
||||||
|
// No need to check library for livestreams - they aren't cached
|
||||||
|
if(isLive(data.type)) {
|
||||||
|
self.playlist.addMedia(data, function (err, data) {
|
||||||
|
if(err) {
|
||||||
|
if(err === true)
|
||||||
|
err = false;
|
||||||
|
if(user)
|
||||||
|
user.socket.emit("queueFail", err);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
postAdd(data, false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
self.server.db.getLibraryItem(self.name, data.id,
|
self.server.db.getLibraryItem(self.name, data.id,
|
||||||
function (err, item) {
|
function (err, item) {
|
||||||
if(err) {
|
if(err) {
|
||||||
|
@ -1268,24 +1302,11 @@ Channel.prototype.addMedia = function(data, user) {
|
||||||
if(user)
|
if(user)
|
||||||
user.socket.emit("queueFail", err);
|
user.socket.emit("queueFail", err);
|
||||||
return;
|
return;
|
||||||
}
|
} else {
|
||||||
else {
|
postAdd(item, true);
|
||||||
self.logger.log("### " + user.name + " queued " + item.media.title);
|
|
||||||
self.sendAll("queue", {
|
|
||||||
item: item.pack(),
|
|
||||||
after: item.prev ? item.prev.uid : "prepend"
|
|
||||||
});
|
|
||||||
self.broadcastPlaylistMeta();
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return;
|
|
||||||
} else {
|
} else {
|
||||||
if(isLive(data.type) &&
|
|
||||||
!self.hasPermission(user, "playlistaddlive")) {
|
|
||||||
user.socket.emit("queueFail", "You don't have " +
|
|
||||||
"permission to add livestreams");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
self.playlist.addMedia(data, function(err, item) {
|
self.playlist.addMedia(data, function(err, item) {
|
||||||
if(err) {
|
if(err) {
|
||||||
if(err === true)
|
if(err === true)
|
||||||
|
@ -1293,16 +1314,8 @@ Channel.prototype.addMedia = function(data, user) {
|
||||||
if(user)
|
if(user)
|
||||||
user.socket.emit("queueFail", err);
|
user.socket.emit("queueFail", err);
|
||||||
return;
|
return;
|
||||||
}
|
} else {
|
||||||
else {
|
postAdd(item, false);
|
||||||
self.logger.log("### " + user.name + " queued " + item.media.title);
|
|
||||||
self.sendAll("queue", {
|
|
||||||
item: item.pack(),
|
|
||||||
after: item.prev ? item.prev.uid : "prepend"
|
|
||||||
});
|
|
||||||
self.broadcastPlaylistMeta();
|
|
||||||
if(!item.temp)
|
|
||||||
self.cacheMedia(item.media);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,14 +39,15 @@ Database.prototype.query = function (query, sub, callback) {
|
||||||
var self = this;
|
var self = this;
|
||||||
self.pool.getConnection(function (err, conn) {
|
self.pool.getConnection(function (err, conn) {
|
||||||
if(err) {
|
if(err) {
|
||||||
|
Logger.errlog.log("! DB connection failed: " + err);
|
||||||
callback("Database failure", null);
|
callback("Database failure", null);
|
||||||
} else {
|
} else {
|
||||||
function cback(err, res) {
|
function cback(err, res) {
|
||||||
if(err) {
|
if(err) {
|
||||||
if(self.cfg["debug"]) {
|
Logger.errlog.log("! DB query failed: " + query);
|
||||||
console.log(query);
|
if(sub)
|
||||||
console.log(err);
|
Logger.errlog.log("Substitutions: " + sub);
|
||||||
}
|
Logger.errlog.log(err);
|
||||||
callback("Database failure", null);
|
callback("Database failure", null);
|
||||||
} else {
|
} else {
|
||||||
callback(null, res);
|
callback(null, res);
|
||||||
|
|
Loading…
Reference in New Issue