}
function getPostTime(element) {
- return getPostElement(element).find(".storage-time").text();
+ return getPostElement(element).find(".post-time").text();
}
function getReplyElement(element) {
}
function getReplyTime(element) {
- return getReplyElement(element).find(".storage-time").text();
+ return getReplyElement(element).find(".reply-time").text();
}
function likePost(postId) {
postReply(postId, text, function(success, error, replyId) {
if (success) {
loadNewReply(replyId);
+ markPostAsKnown(postElement);
+ markReplyAsKnown($(postElement).find(".reply"));
$("#sone .post#" + postId + " .create-reply").addClass("hidden");
} else {
alert(error);
$.getJSON("ajax/getPost.ajax", { "post" : postId }, function(data, textStatus) {
if ((data != null) && data.success) {
var firstOlderPost = null;
- $("#sone #posts .post").each(function() {
+ $("#sone .post").each(function() {
if (getPostTime(this) < data.post.time) {
firstOlderPost = $(this);
return false;
if (firstOlderPost != null) {
newPost.insertBefore(firstOlderPost);
} else {
- $("#sone #posts .post:last").after(newPost);
+ $("#sone #posts").append(newPost);
}
ajaxifyPost(newPost);
newPost.slideDown();
loadedReplies[replyId] = true;
$.getJSON("ajax/getReply.ajax", { "reply": replyId }, function(data, textStatus) {
/* find post. */
- $("#sone #posts .post#" + data.reply.postId).each(function() {
- var firstNewerReply = null;
- $(this).find(".replies .reply").each(function() {
- if (getReplyTime(this) > data.reply.time) {
- firstNewerReply = $(this);
- return false;
+ if ((data != null) && data.success) {
+ $("#sone .post#" + data.reply.postId).each(function() {
+ var firstNewerReply = null;
+ $(this).find(".replies .reply").each(function() {
+ if (getReplyTime(this) > data.reply.time) {
+ firstNewerReply = $(this);
+ return false;
+ }
+ });
+ newReply = $(data.reply.html).addClass("hidden");
+ if (firstNewerReply != null) {
+ newReply.insertBefore(firstNewerReply);
+ } else {
+ if ($(this).find(".replies .create-reply")) {
+ $(this).find(".replies .create-reply").before(newReply);
+ } else {
+ $(this).find(".replies").append(newReply);
+ }
}
+ ajaxifyReply(newReply);
+ newReply.slideDown();
});
- newReply = $(data.reply.html);
- if (firstNewerReply != null) {
- newReply.insertAfter(firstNewerReply);
- } else {
- $(this).find(".replies .reply:last").after(newReply);
- }
- ajaxifyReply(newReply);
+ }
+ });
+}
+
+function markPostAsKnown(postElements) {
+ $(postElements).each(function() {
+ postElement = this;
+ $.getJSON("ajax/markPostAsKnown.ajax", {"formPassword": getFormPassword(), "post": getPostId(postElement)}, function() {
+ $(postElement).removeClass("new");
+ });
+ });
+ markReplyAsKnown($(postElements).find(".reply"));
+}
+
+function markReplyAsKnown(replyElements) {
+ $(replyElements).each(function() {
+ replyElement = this;
+ $.getJSON("ajax/markReplyAsKnown.ajax", {"formPassword": getFormPassword(), "reply": getReplyId(replyElement)}, function() {
+ $(replyElement).removeClass("new");
});
});
}