var commentIdArray=[];$(function(){if(window.XMLHttpRequest){$("#jsWarning").remove()}$("#pollForNewComments").attr("checked",true);$.ajax({url:"/api/getlatestdiscussionforthread/",dataType:"json",cache:false,success:populatePage,error:function(){displayMessage("Error: Could not load page data.")}});$(".commentContent *").live("click",commentClicked);$(".commentAuthor").live("click",commentClicked);$(".postButton").live("click",postComment);$(".previewButton").live("click",previewComment);$(".uploadButton").live("click",uploadFile);$(".hrefButton").live("click",hrefSelected);$(".strongButton").live("click",boldSelected);$(".emphasisButton").live("click",italicSelected);$("#activeThread").change(activePostChanged);$("#showHidePersonalDetails").click(showHidePersonalDetails);$(".column").sortable({connectWith:".column",handle:".portlet-header"});$(".portlet").find(".portlet-header").prepend('<span class="ui-icon ui-icon-downArrow"></span>').end();$(".portlet-header .ui-icon-downArrow").click(function(){$(this).toggleClass("ui-icon-rightArrow");$(this).toggleClass("ui-icon-downArrow");$(this).parents(".portlet:first").find(".portlet-content").slideToggle("slow")});$("#calendarPane").parents(".portlet").find(".ui-icon-downArrow").toggleClass("ui-icon-downArrow").toggleClass("ui-icon-rightArrow");$("#twitterPane").parents(".portlet").find(".ui-icon-downArrow").toggleClass("ui-icon-downArrow").toggleClass("ui-icon-rightArrow");$("#calendarPane").resizable({maxWidth:527,minWidth:527,handles:"s",alsoResize:"#calendarPane > .portlet-content-pane"});$("#contentPane").resizable({maxWidth:527,minWidth:527,handles:"s",alsoResize:"#contentPane > .portlet-content-pane"});$("#commentsPane").resizable({maxWidth:527,minWidth:527,handles:"s",alsoResize:"#commentsPane > .portlet-content-pane"});$("#mainCommentPanel").html(createCommentBox());$("#calendarHeader").live("click",toggleCalendarPane)});function toggleCalendarPane(a){var b="";if($("#calendarPane").find(".portlet-content-pane").html()===""){b+='<iframe src="https://www.google.com/calendar/hosted/sidepodcast.com/embed?showTitle=0&amp;wkst=2&amp;bgcolor=%23FFFFFF&amp;showPrint=0&amp;showNav=0&amp;showTabs=0&amp;src=sidepodcast.com_c3893r6k1a12v6urv4hkg1lpe0%40group.calendar.google.com&amp;color=%23A32929&amp;src=sidepodcast.com_kj08nkbbgcos0poanjdlup46ms%40group.calendar.google.com&amp;color=%230D7813&amp;src=sidepodcast.com_b8qbobtcu3sd33u69m7182atq4%40group.calendar.google.com&amp;color=%23AB8B00&amp;src=sidepodcast.com_vbs29ake37mf1n3hser5aknt8c%40group.calendar.google.com&amp;color=%231B887A&amp;src=sidepodcast.com_7tlldtgdkcv6g3v3unnrcl3eak%40group.calendar.google.com&amp;color=%23B1440E&amp;src=sidepodcast.com_7v2hl2eak2m2tchf8k946tf34k%40group.calendar.google.com&amp;color=%235229A3&amp;ctz=Europe%2FLondon" width="100%" height="98%" frameborder="0" scrolling="no"></iframe>';$("#calendarPane").find(".portlet-content-pane").append(b)}a.preventDefault()}function showHidePersonalDetails(){$(this).toggleClass("ui-icon-plus").toggleClass("ui-icon-minus").parents().find("#personalDetails").slideToggle("slow")}function populatePage(b,a){if(b==null||b.error){displayMessage("Error: Page data could not be parsed.");return}cookieKey=b.siteUrlHash;populateUserInformation();if(parseInt(b.refreshInterval)>0){secondsToRefresh=b.refreshInterval}if(parseInt(b.sleepDelay)>0){sleepDelay=b.sleepDelay}populateLatestPosts(b.favouredThreadType,b.latestPostTitles);updateConnectionStatusDisplay(1);updatePollingDisplay();setTimeout(lifecyclePoller,secondsToRefresh*1000)}function populateUserInformation(){var c=getCookie("commentAuthor");var b=getCookie("commentAuthorEmail");var a=getCookie("commentAuthorUrl");if(c!=null&&c!="undefined"){c=c.replace(/\+/g," ");$("#author").val(c).blur(function(){setCookie("commentAuthor",$("#author").val(),365)})}if(b!=null&&b!="undefined"){$("#email").val(b).blur(function(){setCookie("commentAuthorEmail",$("#email").val(),365)})}if(a!=null&&a!="undefined"){$("#url").val(a).blur(function(){setCookie("commentAuthorUrl",$("#url").val(),365)})}}function populateLatestPosts(a,b){if(b==null||b.error){displayMessage("Post data could not be parsed.");return}var c=false;$.each(b,function(d,g){var f=g.id;var e=g.title;if(!c&&e.indexOf(a+":")==0){$("#activeThread").append('<option value="'+f+'" selected="true">'+e+"</option>");c=true}else{$("#activeThread").append('<option value="'+f+'">'+e+"</option>")}});activePostChanged()}function activePostChanged(){var postId=$("#activeThread").val();$("#postContainer").html("<p>Loading post content...</p>");$("#commentsContainer > ol").html("<li>Loading comments...</li>");$.ajax({url:"/api/getlatestdiscussionforthreadid/?postid="+postId,dataType:"json",dataFilter:function(data){if(typeof(JSON)!=="undefined"&&typeof(JSON.parse)==="function"){return JSON.parse(data)}else{return eval("("+data+")")}},success:function(json,status){displayPendingCount(0);$("#postContainer").html(""),$("#commentsContainer > ol").html(""),commentIdArray=new Array();populatePostMeta(json.post),currentPostId=postId;addCommentsToTree(json.latestComments,status,true,false)},error:function(){displayMessage("Error: Could not load post data.")}})}function populatePostMeta(c){if(c==null){clearLightBox();displayMessage("Error: Unexpected server response.");return}$("#publishedLiteral").html(formatMySqlDate(c.postDate).substring(0,19));$("#authorLiteral").html('<a href="'+c.authorPermalink+'" title="'+c.authorName+'">'+c.authorName+"</a>");$(".ratingPostId").val(c.id);$(".ratingResponse").html("");$(".ratingCount").html(c.ratingCount);var a=(c.ratingCount!==1)?"ratings":"rating";$(".ratingText").html(a);$(".ratingList").removeClass("rating1 rating2 rating3 rating4 rating5");$(".ratingList").addClass("rating"+c.rating);var d="";for(var b=0;b<c.tags.length;b++){d+='<a href="'+c.tags[b].tagPermalink+'" title="'+c.tags[b].tagName+'">'+c.tags[b].tagName+"</a>";if(b<(c.tags.length-1)){d+=", "}}$("#tagsLiteral").html(d);var e="";for(var b=0;b<c.categories.length;b++){e+='<a href="'+c.categories[b].categoryPermalink+'" title="'+c.categories[b].categoryName+'">'+c.categories[b].categoryName+"</a>";if(b<(c.categories.length-1)){e+=", "}}$("#categoryLiteral").html(e);$("#permalinkLiteral").html('<a href="'+c.permalink+'">'+c.postTitle+"</a>");$("#postContainer").html(c.postContent)}function buildCommentDisplay(e,b,c,a){var d='<li id="'+e+'" class="commentItem"><div class="commentHeader"><span class="commentAuthor">'+b+': </span><span class="commentDate">'+a+'</span></div><div class="clearBoth commentContent">'+c+'</div><div class="commentFooter"></div></li>';return d}function addCommentsToTree(f,d,a,e){if(f===null||f===undefined){return}if(f.error){displayMessage("Comment data could not be parsed.");return}var c=false;var h="";var g=$("#commentsPane").css("display")==="none"||!$("#pollForNewComments").is(":checked");var b=0;$.each(f,function(j,p){var o=p.id;var m=formatMySqlDate(p.commentDate);var k=convertSmilies(p.commentContent);var l=buildCommentDisplay(o,p.author,k,m);if(commentIdArray.indexOf(o)!==-1){return}if(p.postId!==parseInt(currentPostId)){return}commentIdArray.push(o);h+=l;if(g){b++}freshCommentCount++;c=true});if(!c){return}if(a&&($("#commentsPane").css("display")!=="none"&&$("#pollForNewComments").is(":checked"))){$("#commentsContainer > ol").html(h)}else{$(h).appendTo("#commentsContainer > ol").hide()}if($("#commentsPane").css("display")!=="none"&&$("#pollForNewComments").is(":checked")){if($("#pendingBox").length>0){$("#pendingBox").click()}else{showPendingComments();if($("#pollForNewComments").is(":checked")){$("#commentsContainer").scrollTop($("#commentsContainer")[0].scrollHeight)}}}else{if(b>0){displayPendingCount(b)}}if(freshCommentCount>0){document.title="["+freshCommentCount+" new] - "+documentTitle}if(!a&&$("#playNewCommentAlert").is(":checked")){$("#newCommentFx")[0].play()}commentIdArray.sort(sortNumber)}function lifecyclePoller(){if(readyToSleep()){clearLightBox();displaySleepInformation();return}var a=-1;if(commentIdArray.length>0){a=commentIdArray[commentIdArray.length-1]}try{$.ajax({url:"/api/getlatestdiscussionforthreadafterid/?postid="+currentPostId+"&commentid="+a,dataType:"json",success:function(c,d){updateConnectionStatusDisplay(1);addCommentsToTree(c,d,false,true)},error:function(e,c,d){if(e.status===204){updateConnectionStatusDisplay(1)}else{updateConnectionStatusDisplay(0)}}});updateConnectionStatusDisplay(1)}catch(b){displayMessage("Error: "+b+".");updateConnectionStatusDisplay(0)}updatePollingDisplay();setTimeout(lifecyclePoller,secondsToRefresh*1000)}function displaySleepInformation(){var a="";a+='<div id="overlay"></div>';a+='<div id="lightboxFrame">';a+='<img src="http://static.sidepodcast.com/images/closenegative.png" width="16" height="16" id="lightboxFrameClose" title="Close" alt="Close"/>';a+="<p>Shhhhh.... Live Commenting, Live... Thing is sleeping right now.</p>";a+='<p><img src="http://static.sidepodcast.com/images/sleeping_lclt.jpg" width="480" height="270" alt="Sleeping Panda"/></p>';a+='<p><a href="http://www.flickr.com/photos/hipnos/2345306836/" class="pictureCopyright">Photo by Hipnos</a></p>';a+='<div class="clearBoth"></div>';a+="<p>[click to wake him up]</p>";a+="</div>";$(a).appendTo("body").hide().fadeIn("slow").click(function(){document.title=documentTitle;clearLightBox();lifecyclePoller()});$("#lightboxFrame").css("top",$(window).scrollTop()+scrollTopOffset);document.title="[Sleeping] - "+documentTitle}function commentClicked(c){if($(this).is("a")){if($(this).attr("href").indexOf("drop.io/sidepodcast/asset")===-1){if(c.button===0){window.open($(this).attr("href"));return false}}return}var g="";if($(this).is("p")||$(this).is("blockquote")){g=$(this).html()}else{if($(this).is("span.commentAuthor")){g=$(this).parents("li").find(".commentContent").html()}else{g=$(this).parents("p").html()}}if(g==null){return}g=unconvertSmilies(g);g=g.replace(new RegExp("\\&amp;","g"),"&");var d=$(".comment");var h=d[0].selectionStart;var b=d[0].selectionEnd;var e=(b+startQuote.length+g.length+endQuote.length);var a=d.val().substring(0,h);var f=d.val().substring(b);d.val(a+startQuote+g+endQuote+f);d.get(0).setSelectionRange(e,e);d.focus()}function hrefSelected(){tagSelected($(this).parents(".commentPanel").find(".comment"),"a",'href=""')}function boldSelected(a){tagSelected($(this).parents(".commentPanel").find(".comment"),"strong")}function italicSelected(){tagSelected($(this).parents(".commentPanel").find(".comment"),"em")};