Fix queue issues when moving videos

This commit is contained in:
calzoneman 2013-03-29 15:05:08 -05:00
parent 328b38f319
commit 6fbe2732c7
4 changed files with 31 additions and 33 deletions

View file

@ -133,9 +133,6 @@ function initCallbacks() {
});
socket.on("unqueue", function(data) {
if(data.pos == POSITION && $("#queue").children().length > POSITION + 1) {
$($("#queue").children()[POSITION+1]).addClass("alert alert-info");
}
var li = $("#queue").children()[data.pos];
//$(li).hide("blind", function() {
$(li).remove();
@ -175,11 +172,14 @@ function initCallbacks() {
});
socket.on("updatePlaylistIdx", function(data) {
var liold = $("#queue").children()[POSITION];
$(liold).removeClass("alert alert-info");
if(data.old != undefined) {
console.log("unhighlight", data.old);
var liold = $("#queue").children()[data.old];
$(liold).removeClass("alert alert-info");
}
var linew = $("#queue").children()[data.idx];
$(linew).addClass("alert alert-info");
POSITION= data.idx;
POSITION = data.idx;
});
socket.on("mediaUpdate", function(data) {

View file

@ -191,11 +191,11 @@ function addQueueButtons(li) {
var idx = $("#queue").children().index(li);
var lidx = $("#queue").children().index(GRABBEDLI);
if(idx != lidx)
moveVideo(lidx, idx);
moveVideo(lidx, idx, true);
}
});
$(li).mouseup(function() {
$(document).mouseup(function() {
if(GRABBEDLI != null) {
var idx = $("#queue").children().index(GRABBEDLI);
GRABBEDLI = null;
@ -289,24 +289,23 @@ function moveVideo(src, dest, noanim) {
else {
ul.insertBefore(li, ul.getElementsByTagName("li")[dest]);
}
return;
}
$(li).hide("blind", function() {
ul.removeChild(li);
if(dest == ul.children.length) {
ul.appendChild(li);
}
else {
ul.insertBefore(li, ul.getElementsByTagName("li")[dest]);
}
$(li).show("blind");
});
if(src < POSITION && dest > POSITION)
else {
$(li).hide("blind", function() {
ul.removeChild(li);
if(dest == ul.children.length) {
ul.appendChild(li);
}
else {
ul.insertBefore(li, ul.getElementsByTagName("li")[dest]);
}
$(li).show("blind");
});
}
if(src < POSITION && dest >= POSITION)
POSITION--;
if(src > POSITION && dest < POSITION)
POSITION++;
if(src == POSITION)
POSITION = dest;
}
// YouTube Synchronization