'); } else if (jQuery(this).attr("id") == "sortSelect"){ jQuery("#BlogComments .sortSpinner").show(); } var url = "/eatmycharlotte/archives/2009/06/30/recipe-blueberry-pound-cake"; var myStart = jQuery(this).attr("id") == "sortSelect" ? "1" : jQuery(this).attr("rel"); var showAllComments = jQuery(this).attr("id") == "showAllComments" ? "yes" : "no"; if (!myStart) var myStart = "1"; var mySort = jQuery("#sortSelect").val() || "asc"; var params = { sort: mySort, ajaxComponent: componentId, startIndex: myStart, showAll: showAllComments }; jQuery.ajax({ url: url, data: (params), success: function (data) { jQuery("#"+componentId+"_PaginationBottom").remove(); jQuery("#"+componentId+"_commentContent .brandNewComment").remove(); jQuery("#BlogComments .sortSpinner").hide(); if (myStart == "1") jQuery("#"+componentId+"_commentContent").html(data); else jQuery("#"+componentId+"_commentContent").append(data); } }); }; function removeEdit(oid){ if (oid){ var cont = jQuery("#BlogComments-comment-"+oid).closest(".brandNewComment"); cont.find(".newCommentOptions").fadeOut("fast", function(){ jQuery(this).remove(); }); } } function getComment(oid, commentLimit){ var url = "/eatmycharlotte/archives/2009/06/30/recipe-blueberry-pound-cake"; var limitMsg = commentLimit?"
\r\n\r\n \r\n \r\n Note: Since you've already made live comments to day(s)ay, this and any additional comments in this timeframe will be reviewed by our staff before being made live. Thank you for your contribution!\r\n \r\n <\/div>":''; if (oid){ var params = { ajaxComponent: componentId, commentOid: oid }; jQuery.ajax({ url: url, data: (params), success: function (data) { if (!jQuery.trim(jQuery("#"+componentId+"_commentContent").html())){ jQuery("#"+componentId+"_commentContent").append(limitMsg+data).find(".brandNewComment").fadeIn("fast"); } else { jQuery("#"+componentId+"_commentContent").children("div.comment, div.brandNewComment, div.limitMsg").filter(":last").after(limitMsg+data).parent().find(".brandNewComment").fadeIn("fast"); } var t=setTimeout(function(){removeEdit(oid)},300000); var myTotal = parseInt(jQuery("#comments_total").text(), 10); myTotal++; updateCommentTotals(false,myTotal); } }); } } function doLikeComment(e){ e.preventDefault(); if (!this.clicked){ var oid = jQuery(this).attr("data-commentOid"); jQuery("#BlogComments #"+oid+"_likeLinks a").addClass("dimmed").css("opacity","0.4").each(function(){this.clicked = true;}); var myCurrentLikes = jQuery("#"+oid+"_rating_likes").html() || 0; var myCurrentDislikes = jQuery("#"+oid+"_rating_dislikes").html() || 0; var thisRating = jQuery(this).attr("rel"); if (thisRating == "Like"){ myCurrentLikes = parseFloat(myCurrentLikes)+1; } else { myCurrentDislikes = parseFloat(myCurrentDislikes)+1; } var myNewLine = '' + myCurrentLikes + ' like'; if (myCurrentLikes != 1) { myNewLine += 's'; } myNewLine += ', ' + '' + myCurrentDislikes + ' dislike'; if (myCurrentDislikes != 1) { myNewLine += "s"; } jQuery("#"+oid+"_rating_sub").html(myNewLine); jQuery("#"+oid+"_rating_sub").show(); var params = { oid: oid, rating: thisRating }; jQuery.ajax({ url: "/gyrobase/Tools/AjaxLike", type: "POST", data: (params), success: function (data) { jQuery("#"+oid+"_rating_sub").html(data); if (thisRating == "Like"){ jQuery("#BlogComments #"+oid+"_likeLinks a.dislike").removeClass("dimmed").css("opacity","1").each(function(){this.clicked = false;}); } else { jQuery("#BlogComments #"+oid+"_likeLinks a.like").removeClass("dimmed").css("opacity","1").each(function(){this.clicked = false;}); } } }); } } function reportComment(e){ e.preventDefault(); e.stopPropagation(); var oid = jQuery(this).attr("rel"); var elem = jQuery("#"+oid+"_report"); elem.click(function(e){e.stopPropagation();}) if (!elem.is(":visible")){ jQuery("#BlogComments .reportCommentContainer").hide(); if (elem.is(":empty")){ var params = { oid: oid, ajaxComponent: "ReportComment" }; jQuery.ajax({ url: "/gyrobase/Tools/ReportComment", data: (params), success: function (data) { elem.html(data); elem.fadeIn("fast"); } }); } else { elem.fadeIn("fast"); } } // attach close event handler to the html jQuery("html").one("click", function(){ jQuery("#BlogComments .reportCommentContainer:visible").hide(); }); } function closeReport(obj){ jQuery(obj).closest(".reportCommentContainer").fadeOut("fast"); } function submitReport(e){ var params = jQuery(e).closest("form").serialize()+"&ajaxComponent=ReportComment"; jQuery.ajax({ url: "/gyrobase/Tools/ReportComment", type: "POST", data: (params), success: function (data) { jQuery(e).closest(".reportCommentContainer").html(data); } }); } (function($) { var subscribed=false; function showFollowPanel(e){ e.preventDefault(); myPanel = $(this).parent().next(".togglePanel"); myPanel.fadeIn("fast"); } function doSubscribe(obj){ var myPanel = obj.parent().next(".togglePanel"); myPanel.fadeIn("fast"); if (!subscribed){ var myLink = obj.parent(); var myLoader = myPanel.children(".loading"); var myUpdater = myPanel.children(".ajaxUpdater"); var params = { object: myPanel.attr("data-toolsoid"), macro: myPanel.attr("data-toolsajaxmacro"), url: window.location }; $.ajax({ url: "/gyrobase/Macros/ToolsAjax", data: (params), type: "POST", dataType: "html", success: function (data) { subscribed = true; if (myUpdater){ myUpdater.html(data); myLoader.fadeOut("fast", function(){ myUpdater.fadeIn("fast", function(){ setTimeout(function(){ myPanel.fadeOut("fast"); }, 3000); }); }); } else { myPanel.fadeOut("fast"); } } }); } } function activateSubscribe(e){ e.preventDefault(); var myObj = $(this); var isAuthenticated = Foundation.SessionManager.sharedSessionManager().isAuthenticated(); if (!isAuthenticated){ new Foundation.Login.Dialog({ "feelingShy": false, "callback": function(){doSubscribe(myObj);} }); return false; } else { // Proceed doSubscribe(myObj); } } function deleteComment(e){ e.preventDefault(); var thisComment = $(this); var params = { macro: "deleteComment", comment: thisComment.attr("data-comment") }; $.ajax({ url: "/gyrobase/Macros/ToolsAjax", data: (params), type: "POST", dataType: "html", success: function (data) { thisComment.closest(".brandNewComment").fadeOut("fast", function(){ $(this).remove(); var myTotal = parseInt(jQuery("#comments_total").text(), 10); myTotal--; updateCommentTotals(false,myTotal); }); } }); } function editComment(e){ e.preventDefault(); var thisComment = $(this); var commentCont = thisComment.closest(".brandNewComment").find(".description"); var commentTemp = thisComment.closest(".brandNewComment").find(".commentTemp"); var commentText = commentTemp.html(); var toolbar = thisComment.closest(".brandNewComment").find(".commentToolbar"); commentCont.next(".commentEditCont").remove(); commentCont.after('
'); toolbar.fadeOut("fast"); commentCont.fadeOut("fast", function(){ commentCont.next(".commentEditCont").fadeIn("fast", function(){ $(".brandNewComment textarea.expandableBox").autoBoxResize(); $(".brandNewComment textarea.expandableBox").focus(); }); }); } function editCommentSave(e){ e.preventDefault(); var thisComment = $(this); var editCont = thisComment.closest(".commentEditCont"); var commentTemp = thisComment.closest(".brandNewComment").find(".commentTemp"); var newText = thisComment.prevAll("textarea").val(); var toolbar = thisComment.closest(".brandNewComment").find(".commentToolbar"); var params = { macro: "editComment", comment: thisComment.attr("data-comment"), commentText: newText }; $.ajax({ url: "/gyrobase/Macros/ToolsAjax", data: (params), type: "POST", success: function (data) { if (data.error){ $(".editErrorDisplay").html("
- "+data.error+"
").fadeIn("fast"); } else if (data.result){ editCont.fadeOut("fast", function(){ $(".editErrorDisplay").hide().html("
"); editCont.prev(".description").html($.trim(data.result)); commentTemp.html(newText); editCont.prev(".description").fadeIn("fast"); toolbar.fadeIn("fast"); }); } } }); } function editCommentCancel(e){ e.preventDefault(); var editCont = $(this).closest(".commentEditCont"); var toolbar = $(this).closest(".brandNewComment").find(".commentToolbar"); editCont.fadeOut("fast", function(){ $(".editErrorDisplay").hide().html("
"); editCont.prev(".description").fadeIn("fast"); toolbar.fadeIn("fast"); editCont.remove(); }); } $("#BlogComments").on('click', ".bottomOptionBar a#doSubscribe", activateSubscribe); $("#BlogComments").on('click', ".bottomOptionBar a.togglePanelClose", function(){$(this).parent().fadeOut("fast"); return false;}); $("#BlogComments").on('click', ".brandNewComment a.commentDeleteLink", deleteComment); $("#BlogComments").on('click', ".brandNewComment a.commentEditLink", editComment); $("#BlogComments").on('click', ".brandNewComment a.doneEditLink", editCommentSave); $("#BlogComments").on('click', ".brandNewComment a.cancelEditLink", editCommentCancel); })(jQuery); jQuery(document).ready(function($){ $("#BlogComments").on('click', '#showMoreComments,#showAllComments', getMoreComments); $("#BlogComments #sortSelect").change(getMoreComments); getMoreComments(); new Foundation.PostCommentComponent(componentId); var nc = Foundation.NotificationCenter.sharedNotificationCenter(); nc.observe("comment:added", function (e) { var comment = e.data; getComment(comment.get("oid"), comment.get("commentLimit")); // clear rating if (jQuery(".commentFormRating").length!=0){ jQuery(".commentFormRating input[name='reviewRating']").val(""); jQuery(".commentFormRating .goldStarContainer").css("left", zeroPos+"px"); } }); var subscribeCheckBox = $("#BlogComments_commentSubscribe"); subscribeCheckBox.prop("checked", getCookie("subscribeToThread") === "true" ? true : false); subscribeCheckBox.change(function (e) { var subscribeToThread = $(this).prop("checked"); setCookie("subscribeToThread", subscribeToThread ? "true" : "false", 30); }); var shareFacebookBox = $("#BlogComments_postCommentToFacebook"); shareFacebookBox.prop("checked", getCookie("shareOnFacebook") === "true" ? true : false); shareFacebookBox.change(function (e) { var shareOnFacebook = $(this).prop("checked"); setCookie("shareOnFacebook", shareOnFacebook ? "true" : "false", 30); }); $("#BlogComments").on('click', 'a.likeLink', doLikeComment); $("#BlogComments").on('click', 'a.reportCommentLink', reportComment); });