X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fresources%2Fstatic%2Fjavascript%2Fsone.js;h=056369cd5d4a446919ea4604ceabc6b31e0f0e6c;hb=0086dd77156fa8fa3f659c079057f49d9f14002b;hp=1341cc02d7e39ab32a9c75ad89ad53ecdb1024f4;hpb=d0ab70772ef0709c58cc493c0c7864cd35a906ea;p=Sone.git diff --git a/src/main/resources/static/javascript/sone.js b/src/main/resources/static/javascript/sone.js index 1341cc0..056369c 100644 --- a/src/main/resources/static/javascript/sone.js +++ b/src/main/resources/static/javascript/sone.js @@ -218,7 +218,8 @@ function enhanceDeletePostButton(button, postId, text) { if (data.success) { $("#sone .post#" + postId).slideUp(); } else if (data.error == "invalid-post-id") { - alert("Invalid post ID given!"); + /* pretend the post is already gone. */ + getPost(postId).slideUp(); } else if (data.error == "auth-required") { alert("You need to be logged in."); } else if (data.error == "not-authorized") { @@ -249,7 +250,8 @@ function enhanceDeleteReplyButton(button, replyId, text) { if (data.success) { $("#sone .reply#" + replyId).slideUp(); } else if (data.error == "invalid-reply-id") { - alert("Invalid reply ID given!"); + /* pretend the reply is already gone. */ + getReply(replyId).slideUp(); } else if (data.error == "auth-required") { alert("You need to be logged in."); } else if (data.error == "not-authorized") { @@ -664,7 +666,7 @@ function ajaxifySone(soneElement) { /* mark Sone as known when clicking it. */ $(soneElement).click(function() { - markSoneAsKnown(soneElement); + markSoneAsKnown(this); }); } @@ -999,6 +1001,10 @@ function getStatus() { } $(this).slideUp("normal", function() { $(this).remove(); + /* remove activity when no notifications are visible. */ + if ($("#sone #notification-area .notification").length == 0) { + resetActivity(); + } }); } }); @@ -1030,10 +1036,6 @@ function getStatus() { $.each(data.newReplies, function(index, value) { loadNewReply(value.id, value.sone, value.post, value.postSone); }); - /* remove activity when no notifications are visible. */ - if ($("#sone #notification-area .notification").length == 0) { - resetActivity(); - } /* do it again in 5 seconds. */ setTimeout(getStatus, 5000); } else { @@ -1333,9 +1335,6 @@ function updatePostTimes(postIds) { * The tooltip to show */ function updateReplyTime(replyId, timeText, refreshTime, tooltip) { - if (!getReply(replyId).is(":visible")) { - return; - } getReply(replyId).find(".reply-status-line > .time").html(timeText).attr("title", tooltip); (function(replyId, refreshTime) { setTimeout(function() { @@ -1365,6 +1364,7 @@ function resetActivity() { if (title.indexOf('(') == 0) { setTitle(title.substr(title.indexOf(' ') + 1)); } + iconBlinking = false; } function setActivity() { @@ -1403,7 +1403,7 @@ var iconBlinking = false; * showing the activity state, it is returned to normal. */ function toggleIcon() { - if (focus) { + if (focus || !iconBlinking) { if (iconActive) { changeIcon("images/icon.png"); iconActive = false;