X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fresources%2Fstatic%2Fjavascript%2Fsone.js;h=bd372c1e013404bf1869ceb7618f9f8de91aef09;hb=c2db2042b846b7a220e1b2bcbce538e42cd2de3f;hp=01f13e3c4fc73a6e1c7b4eba1156576849d4805e;hpb=ca65e4c3c3eec57227b50db1f10df0d2901fe0b0;p=Sone.git diff --git a/src/main/resources/static/javascript/sone.js b/src/main/resources/static/javascript/sone.js index 01f13e3..bd372c1 100644 --- a/src/main/resources/static/javascript/sone.js +++ b/src/main/resources/static/javascript/sone.js @@ -43,28 +43,40 @@ function addCommentLinks() { } $("#sone .post").each(function() { postId = $(this).attr("id"); - commentElement = (function(postId) { - var commentElement = $("
Comment
").addClass("show-reply-form").click(function() { - replyElement = $("#sone .post#" + postId + " .create-reply"); - replyElement.removeClass("hidden"); - replyElement.removeClass("light"); - (function(replyElement) { - replyElement.find("input.reply-input").blur(function() { - if ($(this).hasClass("default")) { - replyElement.addClass("light"); - } - }).focus(function() { - replyElement.removeClass("light"); - }); - })(replyElement); - replyElement.find("input.reply-input").focus(); - }); - return commentElement; - })(postId); - $(this).find(".create-reply").addClass("hidden"); - $(this).find(".status-line .time").each(function() { - $(this).after(commentElement.clone(true)); + addCommentLink(postId, $(this)); + }); +} + +/** + * Adds a “comment” link to all status lines contained in the given element. + * + * @param postId + * The ID of the post + * @param element + * The element to add a “comment” link to + */ +function addCommentLink(postId, element) { + commentElement = (function(postId) { + var commentElement = $("
Comment
").addClass("show-reply-form").click(function() { + replyElement = $("#sone .post#" + postId + " .create-reply"); + replyElement.removeClass("hidden"); + replyElement.removeClass("light"); + (function(replyElement) { + replyElement.find("input.reply-input").blur(function() { + if ($(this).hasClass("default")) { + replyElement.addClass("light"); + } + }).focus(function() { + replyElement.removeClass("light"); + }); + })(replyElement); + replyElement.find("input.reply-input").focus(); }); + return commentElement; + })(postId); + element.find(".create-reply").addClass("hidden"); + element.find(".status-line .time").each(function() { + $(this).after(commentElement.clone(true)); }); }