var CommentObj=DUI.Class.create(RequireLogin.prototype,{executeImpl:function(){GBM.addComment()}});var AnonymousCommentObj=DUI.Class.create(GetbackBaseAction.prototype,{execute:function(){GBM.addComment()}});var topicId=null;var DeleteCommentObj=DUI.Class.create(RequireLogin.prototype,{typeId:null,id:null,commentId:null,init:function(_type,_id,_commentId){this.typeId=_type;this.id=_id;this.commentId=_commentId},executeImpl:function(){GBM.configDialog("Deleting comment...","","",false);GBM.showDialog();var url="/comment/"+this.typeId+"/"+this.id+"/"+this.commentId;this.doAjaxDelete([],url)},successFunc:function(){GBM.deletePagedComment("comment",this.me.commentId);GBM.configDialog("Comment deleted...","","",false);GBM.showDialog();setTimeout(GBM.closeDialog,1000)}});var ShowNewTopicBox=DUI.Class.create(RequireLogin.prototype,{executeImpl:function(){GBM.configDialog("Create a New Topic","",'<form name="newTopicForm" onSubmit="return false"><label for="topicTitle">Topic</label><input type="text" name="topicTitle" value="" /><label for="topicDescription">Description</label><textarea name="topicDescription" class="text-area"></textarea><button style="width: 120px; float: right; margin-top: 10px;" class="yes" value="ok" onClick="new NewTopicAction(document.newTopicForm.topicTitle.value, document.newTopicForm.topicDescription.value).execute();">Add Topic</button></form>',"OK",null);GBM.showDialog()}});var NewTopicAction=DUI.Class.create(RequireLogin.prototype,{topicTitle:"",topicDescription:"",init:function(_topicTitle,_topicDescription){this.topicTitle=_topicTitle;this.topicDescription=_topicDescription},executeImpl:function(){var data=new Object();data.title=this.topicTitle;data.description=this.topicDescription;data.entityId=$("#page_entityId").text();data.entityTypeId=$("#page_entityTypeId").text();var url="/topic/create";this.doAjax(data,url)},successFunc:function(data,status){GBM.setCommentEntity(data.id,data.type);$("#topicTitle").text(data.title);$("#topicDescription").text(data.description);GBM.closeDialog();$("#commentParent").find(".comment-item").remove();text='<p class="null">Be the first to leave a comment!</p><div class="comment-item" id="" style="display:none"><a href="" class="userHref"><img class="comment-avatar" src="http://a.getbackimages.com/w50/404.jpg" alt="" width="50" height="50" /></a><h3><a href="" class="userUrl"></a></h3><p class="commentBody"></p><ul></ul><div class="clear"></div>';document.getElementById("commentParent").innerHTML=text}});var PutAwayTopicAction=DUI.Class.create(RequireLogin.prototype,{executeImpl:function(){var data=new Object();data.topicId=topicId;GBM.setCommentEntity($("#page_entityId").text(),$("#page_entityTypeId").text());var url="/topic/putAway";this.doAjax(data,url);$("#commentParent").find(".comment-item").remove();$("#topicTitle").text("");$("#topicDescription").text("")},successFunc:function(data,status){}});if(!this.GBM){GBM={}}(function(){var cid;var icon_url;var author_url;var comment_url;var openedidx=null;GBM.openFlagBox=function(idx){$("#flag-box"+idx).slideToggle("slow");openedidx=idx};GBM.flagCallback=function(data){var idx=openedidx;$("#flag-box"+idx+" #comments").val("Thanks!");$("#flag-box"+idx).slideToggle("slow");openedidx=null};GBM.doFlagSubmit=function(formId){var obj=new Object();obj.email="flag@getback.com";obj.comments=$("#"+formId+" #comments").val();obj.description=$("#"+formId+" #comments").val();obj.type="flag";obj.offending=$("#"+formId+" #offending-comment").val();obj.entity_id=$("#"+formId+" #offending-comment-id").val();obj.entity_type_id="15";obj.url=document.location.href;obj.user_id=$.cookie("USER_ID");$("#"+formId+" #comments").val("Sending...");$.ajax({type:"POST",url:"/flag",contentType:"application/json",data:JSON.stringify(obj),processData:false,dataType:"json",success:GBM.flagCallback,error:GBM.flagCallback})};GBM.addComment=function(){var commentText=$("textarea[id='comment']").val();if(commentText==""){GBM.configDialog("Please enter something...","","",true);GBM.showDialog();setTimeout(GBM.closeDialog,1000);return}$("#commentButton").attr("disabled","disabled");GBM.configDialog("Posting comment...","","",false);GBM.showDialog();var parent_str=$("input[name='parent']").val();var parent=parseInt(parent_str!=""?parent_str:-1);var entityIdOverride=$("#page_entityId").text();var entityTypeIdOverride=$("#page_entityTypeId").text();if(topicId!=null){entityIdOverride=topicId;entityTypeIdOverride=23}var obj=new Object();obj.entity_id=entityIdOverride;obj.entity_type_id=entityTypeIdOverride;obj.comment_uri="/comment";obj.user_id=$.cookie("USER_ID");if(parent>-1){obj.parent_id=parent}obj.description=commentText;var url=obj.comment_uri+"/"+obj.entity_type_id+"/"+obj.entity_id;$.ajax({type:"POST",url:url,contentType:"application/json",data:JSON.stringify(obj),processData:false,dataType:"json",success:GBM.addCommentSuccess,error:function(data,status){}})};GBM.deletePagedComment=function(e,idx){$("#comment-"+idx).remove();total--;if(start>=total){GBM.prevPageComments()}delta=0;GBM.displayLabels()};GBM.addCommentSuccess=function(data){var ci=$(".comment-item:first").clone();var comment_text=(data.commentBody+"").replace(/([^>]?)\n/g,"$1<br />\n");$(ci).find(".comment-avatar").attr("src",data.userIcon);$(ci).find(".commentBody").html("<p>"+comment_text+"</p>");$(ci).find(".userHref").attr("href","/user/"+data.userName);$(ci).find(".userUrl").attr("href","/user/"+data.userName);$(ci).find(".userUrl").html("<h3 style='font-family: Georgia, sans-serif; color: #00AEF0;'>"+data.userName+"</h3>");ci.css("display","block");$(".null").remove();$(".comment-item:first").before('<div class="comment-item">'+ci.html()+"</div>");$(".comment-item:first").corners();$("textarea[id='comment']").val("");$("input[name='parent']").val("");GBM.configDialog("Comment submitted, thanks!","","",false);GBM.showDialog();setTimeout(GBM.closeDialog,1000)};GBM.nextPageComments=function(){if(page>(total/page_size)){return false}delta=1;return GBM.pageComments()};GBM.prevPageComments=function(){if(page<=1){return false}delta=-1;return GBM.pageComments()};GBM.pageComments=function(){var new_page=page+delta;var data="entity_id="+entity_id+"&entity_type_id="+entity_type_id+"&limit="+page_size+"&page="+new_page;$("#comment-count").html('<img src="/inc/img/loading.gif"/>');$.ajax({type:"GET",url:"/comment",contentType:"application/json",data:data,processData:false,dataType:"json",success:GBM.pagingCallback,error:GBM.pagingCallback});return false};GBM.pagingCallback=function(data){var c=$(".comment-item:first").clone();$("#commentParent").find(".comment-item").remove();for(var i=0;i<data.length;i++){var comment=data[i];ci=c.clone();$(ci).attr("id","comment-"+comment.id);$(ci).find(".comment-avatar").attr("src",comment.author.image_thumb);$(ci).find(".commentBody").html(comment.clean_description);$(ci).find(".userHref").attr("href","/user/"+comment.author.username);$(ci).find(".userUrl").attr("href","/user/"+comment.author.username);$(ci).find(".userUrl").html("<h3 style='font-family: Georgia, sans-serif; color: #00AEF0;'>"+comment.author.display_name+"</h3>");$(ci).find("h4").html("").html('<span class="commentstatus">New:</span> '+comment.created_str);$(ci).find(".comment-delete").html('<a href="javascript:void(0);" onClick="new DeleteCommentObj('+entity_type_id+", "+comment.entity_id+", "+comment.id+').execute();">Delete</a>');$(".comment-nav").before(ci)}page+=delta;GBM.displayLabels();var targetOffset=$("#commentParent").offset().top;$("html,body").animate({scrollTop:targetOffset},500)};GBM.initializeCommentPagination=function(in_entity_id,in_entity_type_id,in_count,in_page_size,in_total,in_page){entity_id=in_entity_id;entity_type_id=in_entity_type_id;count=in_count;page_size=in_page_size;total=in_total;page=in_page;var from=((page-1)*page_size)+1;var to=page*page_size;if(to>total){to=total}$("#comment-count").html(from+"-"+to+" of "+total)};var entity_id,entity_type_id,count,page_size,page,total,delta;GBM.displayLabels=function(){var from=((page-1)*page_size)+1;var to=page*page_size;if(to>total){to=total}$("#comment-count").html(from+"-"+to+" of "+total)};GBM.setCommentEntity=function(_entityId,_entityTypeId){entity_id=_entityId;entity_type_id=_entityTypeId;if(_entityTypeId==23){topicId=_entityId}else{topicId=null}}})();