Work on playlist items

This commit is contained in:
Calvin Montgomery 2013-06-09 18:18:27 -04:00
parent 38b2816e23
commit 161a116e59
5 changed files with 1977 additions and 1936 deletions

View File

@ -110,6 +110,10 @@ html, body {
border: 1px solid #aaaaaa; // [](/w21) border: 1px solid #aaaaaa; // [](/w21)
} }
.queue_temp {
background-image: url(../img/stripe-diagonal.png);
}
#plmeta { #plmeta {
border: 1px solid #aaaaaa; border: 1px solid #aaaaaa;
background-color: #ffffff; background-color: #ffffff;

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 B

View File

@ -526,24 +526,26 @@ Callbacks = {
}, },
setTemp: function(data) { setTemp: function(data) {
// TODO redo this when buttons are decided var li = $("#queue").children()[data.position];
var li = $("#queue").children()[data.idx];
li = $(li); li = $(li);
var buttons = li.find(".qe_btn"); if(data.temp)
if(buttons.length == 5) { li.addClass("queue_temp");
$(buttons[4]).removeClass("btn-danger btn-success"); else
$(buttons[4]).addClass(data.temp ? "btn-success" : "btn-danger"); li.removeClass("queue_temp");
} var btn = li.find(".qbtn-tmp");
btn.data("temp", data.temp);
if(data.temp) { if(data.temp) {
li.addClass("alert alert-error"); btn.html(btn.html().replace("Make Temporary",
"Make Permanent"));
} }
else { else {
li.removeClass("alert alert-error"); btn.html(btn.html().replace("Make Permanent",
"Make Temporary"));
} }
}, },
unqueue: function(data) { "delete": function(data) {
var li = $("#queue").children()[data.pos]; var li = $("#queue").children()[data.position];
$(li).remove(); $(li).remove();
}, },

View File

@ -20,7 +20,12 @@ var PLAYER = false;
var VWIDTH = $("#ytapiplayer").parent().css("width").replace("px", ""); var VWIDTH = $("#ytapiplayer").parent().css("width").replace("px", "");
var VHEIGHT = ""+parseInt(parseInt(VWIDTH) * 9 / 16); var VHEIGHT = ""+parseInt(parseInt(VWIDTH) * 9 / 16);
var POSITION = -1; var POSITION = -1;
var socket; var socket = {
emit: function() {
console.log("socket not initialized");
console.log(arguments);
}
};
var IGNORED = []; var IGNORED = [];
var CHATHIST = []; var CHATHIST = [];
var CHATHISTIDX = 0; var CHATHISTIDX = 0;

View File

@ -214,26 +214,56 @@ function makeQueueEntry(video) {
li.addClass("queue_temp"); li.addClass("queue_temp");
} }
// Add dropdown // TODO Permissions
// class="dropdown dropup" lolwut var menu = $("<div/>").addClass("btn-group").appendTo(li);
var dd = $("<div/>").addClass("dropdown dropup").appendTo(li); // Play
var menu = $("<ul/>").addClass("dropdown-menu") $("<button/>").addClass("btn btn-mini qbtn-play")
.attr("role", "menu") .html("<i class='icon-play'></i>Play")
.appendTo(dd);
var del = $("<a/>").appendTo($("<li/>").appendTo(menu))
.attr("href", "javascript:void(0)")
.attr("tabindex", "-1")
.click(function() { .click(function() {
var i = $("#queue").children().index(li);
socket.emit("jumpTo", i);
}) })
.text("Remove"); .appendTo(menu);
$("<i/>").addClass("icon-trash").prependTo(del); // Queue next
$("<button/>").addClass("btn btn-mini qbtn-next")
.html("<i class='icon-share-alt'></i>Queue Next")
.click(function() {
var i = $("#queue").children().index(li);
socket.emit("moveMedia", {
src: i,
dest: i < POSITION ? POSITION : POSITION + 1
});
})
.appendTo(menu);
// Temp/Untemp
$("<button/>").addClass("btn btn-mini qbtn-tmp")
.html("<i class='icon-flag'></i>Make Temporary")
.click(function() {
var i = $("#queue").children().index(li);
var temp = li.find(".qbtn-tmp").data("temp");
socket.emit("setTemp", {
position: i,
temp: !temp
});
})
.appendTo(menu);
// Delete
$("<button/>").addClass("btn btn-mini qbtn-delete")
.html("<i class='icon-trash'></i>Delete")
.click(function() {
var i = $("#queue").children().index(li);
socket.emit("delete", i);
})
.appendTo(menu);
menu.hide();
li.contextmenu(function(ev) { li.contextmenu(function(ev) {
ev.preventDefault(); ev.preventDefault();
if(menu.css("display") == "none") if(menu.css("display") == "none")
menu.show(); menu.show("blind");
else else
menu.hide(); menu.hide("blind");
return false; return false;
}); });