cleaning up JQuery
This commit is contained in:
parent
d2d1dc4c5e
commit
9c4af523b0
@ -1,25 +1,13 @@
|
|||||||
function add_error(e) {
|
|
||||||
while (!e.is(".row")) {
|
|
||||||
e = e.parent();
|
|
||||||
}
|
|
||||||
e.addClass("error");
|
|
||||||
}
|
|
||||||
|
|
||||||
function remove_error(e) {
|
|
||||||
while (!e.is(".row")) {
|
|
||||||
e = e.parent();
|
|
||||||
}
|
|
||||||
e.removeClass("error");
|
|
||||||
}
|
|
||||||
|
|
||||||
function check(id) {
|
function check(id) {
|
||||||
let checkbox = $("#task-" + id);
|
let checkbox = $("#task-" + id);
|
||||||
remove_error(checkbox);
|
checkbox.parents(".row").removeClass("error");
|
||||||
|
|
||||||
let uri = "/v1/undo";
|
let uri = "/v1/undo";
|
||||||
if (checkbox.prop("checked")) {
|
if (checkbox.prop("checked")) {
|
||||||
uri = "/v1/do";
|
uri = "/v1/do";
|
||||||
// TODO hide it!
|
checkbox.parents("li").css("display", "none");
|
||||||
}
|
}
|
||||||
|
|
||||||
$.post(uri, {id: id}, function(data) {
|
$.post(uri, {id: id}, function(data) {
|
||||||
checkbox.prop("checked", data.task.done);
|
checkbox.prop("checked", data.task.done);
|
||||||
})
|
})
|
||||||
@ -29,7 +17,8 @@ function check(id) {
|
|||||||
} else {
|
} else {
|
||||||
checkbox.prop("checked", true);
|
checkbox.prop("checked", true);
|
||||||
}
|
}
|
||||||
add_error(checkbox); // TODO unhide it
|
checkbox.parents(".row").addClass("error");
|
||||||
|
checkbox.parents("li").css("display", "block");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -41,6 +30,7 @@ function get_template(id) {
|
|||||||
function new_task() {
|
function new_task() {
|
||||||
let input = $("#new-task-input");
|
let input = $("#new-task-input");
|
||||||
let template;
|
let template;
|
||||||
|
|
||||||
$.post("/v1/new", {content: input.val()}, function(data) {
|
$.post("/v1/new", {content: input.val()}, function(data) {
|
||||||
template = get_template("#task-template");
|
template = get_template("#task-template");
|
||||||
let input = $("input:checkbox", template);
|
let input = $("input:checkbox", template);
|
||||||
@ -52,7 +42,7 @@ function new_task() {
|
|||||||
})
|
})
|
||||||
.fail(function(request) {
|
.fail(function(request) {
|
||||||
template = get_template("#error-template");
|
template = get_template("#error-template");
|
||||||
$(".error-text", template).text("ERROR:" + request.responseJSON.errors.join(" "));
|
$(".error-text", template).text("ERROR: " + request.responseJSON.errors.join(" "));
|
||||||
})
|
})
|
||||||
.always(function() {
|
.always(function() {
|
||||||
$("#new-task").before(template);
|
$("#new-task").before(template);
|
||||||
@ -77,21 +67,19 @@ function new_api_key() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function delete_item(e) {
|
function delete_item(e) {
|
||||||
e = $(e);
|
e = e.parents("li");
|
||||||
while (!e.is("li")) {
|
|
||||||
e = e.parent();
|
|
||||||
}
|
|
||||||
|
|
||||||
checkbox = $("input:checkbox", e);
|
checkbox = $("input:checkbox", e);
|
||||||
if (checkbox.length) {
|
if (checkbox.length) {
|
||||||
e.css("display", "hidden");
|
e.css("display", "hidden");
|
||||||
let id = checkbox.prop("id");
|
let id = checkbox.prop("id");
|
||||||
id = Number(id.slice(id.lastIndexOf("-") + 1, id.length))
|
id = Number(id.slice(id.lastIndexOf("-") + 1, id.length));
|
||||||
|
|
||||||
$.post("/v1/delete", {id: id}, function(data) {
|
$.post("/v1/delete", {id: id}, function(data) {
|
||||||
e.remove();
|
e.remove();
|
||||||
})
|
})
|
||||||
.fail(function(request) {
|
.fail(function(request) {
|
||||||
add_error($(".row", e));
|
e.children(".row").addClass("error");
|
||||||
e.css("display", "block");
|
e.css("display", "block");
|
||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
@ -104,7 +92,7 @@ function delete_item(e) {
|
|||||||
e.remove();
|
e.remove();
|
||||||
})
|
})
|
||||||
.fail(function(request) {
|
.fail(function(request) {
|
||||||
add_error($(".row", e));
|
e.children(".row").addClass("error");
|
||||||
code.css("color", "black"); // make key still readable
|
code.css("color", "black"); // make key still readable
|
||||||
e.css("display", "block");
|
e.css("display", "block");
|
||||||
});
|
});
|
||||||
|
Loading…
Reference in New Issue
Block a user