﻿;(function($){$.ajaxComments={currentLoading:false,options:{post:'/CommonHandlers/CommentHandler.ashx',get:'/CommonHandlers/CommentHandler.ashx',elem:undefined},ajaxOptions:{page:1},retrievedComments:{},compileOptions:function(){var options={};options.show=$.ajaxComments.options.elem.find('#CommentsShow').val();options.order=$.ajaxComments.options.elem.find('#CommentsOrder').val();options.section=$.ajaxComments.options.elem.find('#CommentsType').val();options.language=$.ajaxComments.options.elem.find('#Language').val();options.projectId=$.url.param('id');return $.extend(options,$.ajaxComments.ajaxOptions);},postComment:function(e){e.preventDefault();var text=$.ajaxComments.options.elem.find('#CommentsText').val();if(text=$.trim(text)){$.ajaxComments.options.elem.find('#CommentsText').val('');$.ajaxComments.getComments({comment:text});}},showComments:function(){var comments=arguments[0]||[];var html='<div class="comment"><span class="comment-date"></span><h4><a></a></h4><p></p></div><div class="hr"></div>';var $holder=$('#CommentsHolder');var $parent=$holder.parent();$holder.remove();$holder.html('');var count=comments.length;count--;$.each(comments,function(i){var $c=$(html).appendTo($holder);$c.find('h4 a').text(this.MemberUserName).attr({href:'/Community/CreationLab/DisplayCreationList.aspx?memberid='+this.MemberId}).toggleClass('commentModerator',this.SubmittedByModerator);$c.find('span.comment-date').text(this.TimeSinceCommentDate);$c.find('p').html(this.ProjectCommentTextHTML);if(i==count){$($c[1]).remove();}});$parent.append($holder);$row=$($.ajaxComments.options.elem).parents('.column-row');$row.trigger('columnUpdate');},getComments:function(){if($.ajaxComments.currentLoading)return;var options=$.extend($.ajaxComments.compileOptions(),(arguments[0]||{}));$.ajaxComments.currentLoading=true;$.ajax({url:$.ajaxComments.options.get,type:'POST',data:options,success:function(){var obj=arguments[0]||{};if(obj){$.ajaxComments.retrievedComments.pageCount=obj.pageCount||1;$.ajaxComments.ajaxOptions.page=options.page;if($.ajaxComments.ajaxOptions.page>$.ajaxComments.retrievedComments.pageCount){$.ajaxComments.ajaxOptions.page=$.ajaxComments.retrievedComments.pageCount;}
$.ajaxComments.options.elem.find('#CommentsPageNumber').text($.ajaxComments.ajaxOptions.page);$.ajaxComments.options.elem.find('#CommentsPageCount').text($.ajaxComments.retrievedComments.pageCount);if($.ajaxComments.ajaxOptions.page==1){$.ajaxComments.options.elem.find('#CommentsPrev').addClass('disabled');}else{$.ajaxComments.options.elem.find('#CommentsPrev').removeClass('disabled');}
if($.ajaxComments.ajaxOptions.page>=$.ajaxComments.retrievedComments.pageCount){$.ajaxComments.options.elem.find('#CommentsNext').addClass('disabled');}else{$.ajaxComments.options.elem.find('#CommentsNext').removeClass('disabled');}
if(obj.commentArray){$.ajaxComments.showComments(obj.commentArray);}
if(obj.message){alert(obj.message);}}},complete:function(){$.ajaxComments.currentLoading=false;}});},updateComments:function(e){$.ajaxComments.getComments();e.preventDefault();},previousPage:function(e){e.preventDefault();if($(this).hasClass('disabled'))return;var cPage=$.ajaxComments.ajaxOptions.page;var page=cPage-=1;if(page<1)page=1;$.ajaxComments.getComments({page:page});},nextPage:function(e){e.preventDefault();if($(this).hasClass('disabled'))return;var cPage=$.ajaxComments.ajaxOptions.page;var page=cPage+=1;if(page>($.ajaxComments.retrievedComments.pageCount||1))page=$.ajaxComments.retrievedComments.pageCount||1;$.ajaxComments.getComments({page:page});}};$().ready(function(){$comment=$('#Comments')
if($comment.length>0){$.ajaxComments.options.elem=$comment;$.ajaxComments.getComments();$comment.find('#CommentsPrev').click($.ajaxComments.previousPage);$comment.find('#CommentsNext').click($.ajaxComments.nextPage);$comment.find('select').change($.ajaxComments.updateComments);$comment.find('#CommentsDoPost').click($.ajaxComments.postComment);}});})(jQuery);
