summaryrefslogtreecommitdiff
path: root/proto.js
diff options
context:
space:
mode:
Diffstat (limited to 'proto.js')
-rw-r--r--proto.js46
1 files changed, 41 insertions, 5 deletions
diff --git a/proto.js b/proto.js
index eb63afd..9be3101 100644
--- a/proto.js
+++ b/proto.js
@@ -162,8 +162,14 @@ try {
}
if(cmd == "remove") {
- var task = document.getElementById(createId(observeid, id));
- task.parentNode.removeChild(task);
+ var task = document.getElementById(createId(observeid, id));
+ var parent = task.parentNode;
+ parent.removeChild(task);
+
+ var board = document.getElementById("board_" + observeid);
+ if(board.childNodes.length == 0) {
+ board.parentNode.removeChild(board);
+ }
}
else if(cmd == "move") {
var parent_id = msg[3];
@@ -189,12 +195,30 @@ try {
task.setAttribute("draggable", true);
task.setAttribute("ondragstart", "drag(this, event)");
task.setAttribute("title", id);
-
+
task.id = createId(observeid, id);
+ var observe_button = document.createElement("div");
+ observe_button.name = "observe_button";
+ observe_button.setAttribute("onclick", "observeMe(this, event)");
+ observe_button.setAttribute("title", id);
+ observe_button.setAttribute("style", "float: left; display: inline-box; width:14px; height: 14px; border: solid green 2px; cursor: pointer;");
+ var txt_plus = document.createTextNode("+");
+ observe_button.appendChild(txt_plus);
+ task.appendChild(observe_button);
+
+ var unobserve_button = document.createElement("div");
+ unobserve_button.name = "unobserve_button";
+ unobserve_button.setAttribute("onclick", "unobserveMe(this, event)");
+ unobserve_button.setAttribute("title", id);
+ unobserve_button.setAttribute("style", "float: left; display: inline-box; width:14px; height: 14px; border: solid red 2px; cursor: pointer;");
+ var txt_minus = document.createTextNode("-");
+ unobserve_button.appendChild(txt_minus);
+ task.appendChild(unobserve_button);
+
var txtdiv = document.createElement("div");
txtdiv.id = createId(observeid, id) + "_txt";
- var txt = document.createTextNode("");
+ var txt = document.createTextNode(id + ": (missing title)");
txtdiv.appendChild(txt);
task.appendChild(txtdiv);
@@ -214,7 +238,7 @@ try {
var txtdiv = document.getElementById(createId(observeid, id) + "_txt");
txtdiv.removeChild(txtdiv.firstChild);
- var txt = document.createTextNode(value);
+ var txt = document.createTextNode(id + ": " + value);
txtdiv.appendChild(txt);
}
if(name == "colour") {
@@ -261,6 +285,18 @@ function drop(target, e) {
socket_task.send("move " + idFromStr(id) + " " + idFromStr(target.id) + ";");
}
+function observeMe(target, e)
+{
+ e.stopPropagation();
+ socket_task.send("observe "+target.title+";");
+}
+
+function unobserveMe(target, e)
+{
+ e.stopPropagation();
+ socket_task.send("unobserve "+target.title+";");
+}
+
function showHideChildren(target, e)
{
e.stopPropagation();